diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2019-05-16 00:06:17 +0200 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2019-05-27 00:07:29 +0200 |
commit | 1c5274b67308c10512e275d018ee18befcfb487f (patch) | |
tree | f3f5b17668ffdc16b084b22c389008feb7a692fb | |
parent | 2be6268e01a368817b27cdbbee7b2641ec1653c6 (diff) |
libinterimap: quote() the empty string as "" instead of a 0-length literal.
Compression asside, this saves 3 bytes and one round-trip on servers not
supporting non-synchronizing literals, and 4 bytes otherwise.
-rw-r--r-- | Changelog | 3 | ||||
-rw-r--r-- | lib/Net/IMAP/InterIMAP.pm | 2 |
2 files changed, 4 insertions, 1 deletions
@@ -3,6 +3,9 @@ interimap (0.5) upstream; - libinterimap: bugfix: hierarchy delimiters in LIST responses were returned as an escaped quoted special, like "\\", not as a single character (backslash in this case). + - libinterimap: quote() the empty string as "" instead of a 0-length + literal. (This saves 3 bytes + one round-trip on servers not + supporting non-synchronizing literals, and 4 bytes otherwise.) -- Guilhem Moulin <guilhem@fripost.org> Fri, 10 May 2019 00:58:14 +0200 diff --git a/lib/Net/IMAP/InterIMAP.pm b/lib/Net/IMAP/InterIMAP.pm index 37616f4..26c3712 100644 --- a/lib/Net/IMAP/InterIMAP.pm +++ b/lib/Net/IMAP/InterIMAP.pm @@ -239,7 +239,7 @@ sub quote($) { if ($str =~ qr/\A$RE_ASTRING_CHAR+\z/) { return $str; } - elsif ($str =~ qr/\A$RE_TEXT_CHAR+\z/) { + elsif ($str =~ qr/\A$RE_TEXT_CHAR*\z/) { $str =~ s/([\x22\x5C])/\\$1/g; return "\"$str\""; } |