[evolution-patches] #53355, camel, fix for canonicalisation filter




pretty straightforward, it was handling the "^F...\n" case incorrectly, where '...' is 1-4 characters long.

--
Michael Zucchi <notzed ximian com>
"born to die, live to work, it's all downhill from here"
Novell's Evolution and Free Software Developer
Index: camel/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/camel/ChangeLog,v
retrieving revision 1.2221
diff -u -3 -r1.2221 ChangeLog
--- camel/ChangeLog	19 Jul 2004 02:11:31 -0000	1.2221
+++ camel/ChangeLog	19 Jul 2004 02:59:38 -0000
@@ -1,3 +1,9 @@
+2004-07-19  Not Zed  <NotZed Ximian com>
+
+	* camel-mime-filter-canon.c (filter): only copy 5 chars after the
+	F if we actually have "From ", otherwise we might have F.{,4}\n
+	instead and break eol canonicalisation.  For #53355.
+
 2004-07-16  Not Zed  <NotZed Ximian com>
 
 	* camel-gpg-context.c: Added some debug stuff.
Index: camel/camel-mime-filter-canon.c
===================================================================
RCS file: /cvs/gnome/evolution/camel/camel-mime-filter-canon.c,v
retrieving revision 1.4
diff -u -3 -r1.4 camel-mime-filter-canon.c
--- camel/camel-mime-filter-canon.c	27 Feb 2003 23:35:58 -0000	1.4
+++ camel/camel-mime-filter-canon.c	19 Jul 2004 02:59:38 -0000
@@ -103,18 +103,12 @@
 			inptr++;
 			if (inptr < inend-4) {
 				if (strncmp(inptr, "rom ", 4) == 0) {
-					*o++ = '=';
-					*o++ = '4';
-					*o++ = '6';
+					strcpy(o, "=46rom ");
+					o+= 7;
 				} else
 					*o++ = 'F';
-				*o++ = *inptr++;
-				*o++ = *inptr++;
-				*o++ = *inptr++;
-				*o++ = *inptr++;
-			} else {
+			} else
 				break;
-			}
 		}
 
 		/* now scan for end of line */


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]