dovecot-2.2: lib-charset: Removed unnecessary buffer size increa...

dovecot at dovecot.org dovecot at dovecot.org
Fri Aug 10 05:24:41 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/cbd2b321a68f
changeset: 14810:cbd2b321a68f
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Jul 28 19:33:14 2012 +0300
description:
lib-charset: Removed unnecessary buffer size increases, which only caused out-of-memory errors.

diffstat:

 src/lib-charset/charset-iconv.c |  13 +------------
 1 files changed, 1 insertions(+), 12 deletions(-)

diffs (31 lines):

diff -r 4b505b1c4c5b -r cbd2b321a68f src/lib-charset/charset-iconv.c
--- a/src/lib-charset/charset-iconv.c	Wed Jul 25 15:39:14 2012 +0300
+++ b/src/lib-charset/charset-iconv.c	Sat Jul 28 19:33:14 2012 +0300
@@ -120,9 +120,8 @@
 charset_to_utf8(struct charset_translation *t,
 		const unsigned char *src, size_t *src_size, buffer_t *dest)
 {
-	bool dtcase = (t->flags & CHARSET_FLAG_DECOMP_TITLECASE) != 0;
 	enum charset_result result;
-	size_t pos, used, size, prev_pos = 0, prev_used = 0;
+	size_t pos, size;
 	size_t prev_invalid_pos = (size_t)-1;
 	bool ret;
 
@@ -141,16 +140,6 @@
 				prev_invalid_pos = dest->used;
 			}
 			pos++;
-		} else if (!dtcase) {
-			/* force buffer to grow */
-			used = dest->used;
-			size = buffer_get_size(dest) - used + 1;
-			(void)buffer_append_space_unsafe(dest, size);
-			buffer_set_used_size(dest, used);
-		} else {
-			i_assert(dest->used != prev_used || pos != prev_pos);
-			prev_pos = pos;
-			prev_used = dest->used;
 		}
 	}
 


More information about the dovecot-cvs mailing list