[evolution-patches] patch for evolution-1.4



patch fixes the bug described in forwarded message; the To: header in the mail was 78K and camel_file_utils_decode_string() would fail if the encoded 32bit length was >65536

not sure this is the appropriate fix or not tho.

Jeff

-- 
Jeffrey Stedfast
Evolution Hacker - Ximian, Inc.
fejj ximian com  - www.ximian.com
--- Begin Message ---
Hope this is closer

- Dave

Attachment: endofmail.gz
Description: GNU Zip compressed data


--- End Message ---
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/camel/ChangeLog,v
retrieving revision 1.1836.2.23
diff -u -r1.1836.2.23 ChangeLog
--- ChangeLog	4 Feb 2004 04:41:18 -0000	1.1836.2.23
+++ ChangeLog	12 Feb 2004 21:42:33 -0000
@@ -1,3 +1,21 @@
+2004-02-12  Jeffrey Stedfast  <fejj ximian com>
+
+	* camel-file-utils.c (camel_file_util_encode_string): Since
+	decoding a string doesn't allow strings longer than 65536,
+	truncate strings that are longer than 65536 here.
+
+2003-12-05  Jeffrey Stedfast  <fejj ximian com>
+
+	* camel-gpg-context.c (gpg_ctx_op_start): Properly set the
+	O_NONBLOCK flag along with any previously set flags.
+
+	* camel-filter-search.c (run_command): Don't set O_NONBLOCK on the
+	pipe (1. we don't need to, and 2. we should have been setting
+	O_NONBLOCK|prev_flags but we weren't, and so the pipe got
+	O_RDONLY|O_NONBLOCK even tho we wanted to write to it).
+
+	* camel-filter-driver.c (pipe_to_system): Same.
+
 2004-02-03  Jeffrey Stedfast  <fejj ximian com>
 
 	* camel-vee-folder.c (folder_added_uid): 64bit fix.
Index: camel-file-utils.c
===================================================================
RCS file: /cvs/gnome/evolution/camel/camel-file-utils.c,v
retrieving revision 1.8
diff -u -r1.8 camel-file-utils.c
--- camel-file-utils.c	27 Mar 2003 15:37:46 -0000	1.8
+++ camel-file-utils.c	12 Feb 2004 21:42:33 -0000
@@ -249,8 +249,10 @@
 
 	if (str == NULL)
 		return camel_file_util_encode_uint32 (out, 1);
-
-	len = strlen (str);
+	
+	if ((len = strlen (str)) > 65536)
+		len = 65536;
+	
 	if (camel_file_util_encode_uint32 (out, len+1) == -1)
 		return -1;
 	if (len == 0 || fwrite (str, len, 1, out) == 1)


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