dovecot-1.2: rfc2231 parser: Fixed parsing "key*".

dovecot at dovecot.org dovecot at dovecot.org
Thu Nov 12 19:43:18 EET 2009


details:   http://hg.dovecot.org/dovecot-1.2/rev/96b5d6d8dd2c
changeset: 9477:96b5d6d8dd2c
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Nov 12 12:43:13 2009 -0500
description:
rfc2231 parser: Fixed parsing "key*".

diffstat:

1 file changed, 8 insertions(+), 5 deletions(-)
src/lib-mail/rfc2231-parser.c |   13 ++++++++-----

diffs (23 lines):

diff -r bf2fb1679cb4 -r 96b5d6d8dd2c src/lib-mail/rfc2231-parser.c
--- a/src/lib-mail/rfc2231-parser.c	Mon Nov 09 21:21:55 2009 -0500
+++ b/src/lib-mail/rfc2231-parser.c	Thu Nov 12 12:43:13 2009 -0500
@@ -66,11 +66,14 @@ int rfc2231_parse(struct rfc822_parser_c
 		}
 		p = strchr(key, '*');
 		if (p != NULL) {
-			p2 = p++;
-			rfc2231_param.idx = 0;
-			for (; *p >= '0' && *p <= '9'; p++) {
-				rfc2231_param.idx =
-					rfc2231_param.idx*10 + *p - '0';
+			p2 = p;
+			if (p[1] != '\0') {
+				p++;
+				rfc2231_param.idx = 0;
+				for (; *p >= '0' && *p <= '9'; p++) {
+					rfc2231_param.idx =
+						rfc2231_param.idx*10 + *p - '0';
+				}
 			}
 			if (*p != '*')
 				rfc2231_param.extended = FALSE;


More information about the dovecot-cvs mailing list