dovecot-2.2: istream-base64-encoder: Minor fix to require only 3...

dovecot at dovecot.org dovecot at dovecot.org
Fri Aug 10 06:51:22 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/f31916c173d1
changeset: 14843:f31916c173d1
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Aug 10 05:55:13 2012 +0300
description:
istream-base64-encoder: Minor fix to require only 3 bytes instead of 4 per input block.
Base64 encoder reads 3 bytes and outputs 4 bytes, so it's ok to read only 3
bytes.

diffstat:

 src/lib/istream-base64-encoder.c |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (21 lines):

diff -r 17fb07dea309 -r f31916c173d1 src/lib/istream-base64-encoder.c
--- a/src/lib/istream-base64-encoder.c	Fri Aug 10 05:34:35 2012 +0300
+++ b/src/lib/istream-base64-encoder.c	Fri Aug 10 05:55:13 2012 +0300
@@ -22,7 +22,7 @@
 	ssize_t ret;
 
 	size = i_stream_get_data_size(stream->parent);
-	if (size >= 4)
+	if (size >= 3)
 		return 1;
 
 	/* we have less than one base64 block.
@@ -104,7 +104,7 @@
 		if (ret <= 0)
 			return ret;
 		size = i_stream_get_data_size(stream->parent);
-	} while (size < 4 && !stream->parent->eof);
+	} while (size < 3 && !stream->parent->eof);
 
 	/* encode as many lines as fits into destination buffer */
 	pre_count = stream->pos - stream->skip;


More information about the dovecot-cvs mailing list