evolution-data-server r9045 - trunk/camel



Author: fejj
Date: Wed Jun 25 21:58:02 2008
New Revision: 9045
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=9045&view=rev

Log:
2008-06-25  Jeffrey Stedfast  <fejj novell com>

	* camel-mime-utils.c (camel_header_decode_date): Don't crash if
	the str argument is NULL.

	* camel-folder-summary.c (message_info_new_from_header): Don't
	allow ourselves to pass NULL as the str argument to
	camel_header_decode_date().



Modified:
   trunk/camel/ChangeLog
   trunk/camel/camel-folder-summary.c
   trunk/camel/camel-mime-utils.c

Modified: trunk/camel/camel-folder-summary.c
==============================================================================
--- trunk/camel/camel-folder-summary.c	(original)
+++ trunk/camel/camel-folder-summary.c	Wed Jun 25 21:58:02 2008
@@ -1736,16 +1736,15 @@
 static CamelMessageInfo *
 message_info_new_from_header(CamelFolderSummary *s, struct _camel_header_raw *h)
 {
+	const char *received, *date, *content, *charset = NULL;
+	struct _camel_header_references *refs, *irt, *scan;
+	char *subject, *from, *to, *cc, *mlist;
+	CamelContentType *ct = NULL;
 	CamelMessageInfoBase *mi;
-	const char *received;
 	guint8 *digest;
 	gsize length;
-	struct _camel_header_references *refs, *irt, *scan;
 	char *msgid;
 	int count;
-	char *subject, *from, *to, *cc, *mlist;
-	CamelContentType *ct = NULL;
-	const char *content, *charset = NULL;
 
 	length = g_checksum_type_get_length (G_CHECKSUM_MD5);
 	digest = g_alloca (length);
@@ -1777,7 +1776,12 @@
 	
 	mi->user_flags = NULL;
 	mi->user_tags = NULL;
-	mi->date_sent = camel_header_decode_date(camel_header_raw_find(&h, "date", NULL), NULL);
+	
+	if ((date = camel_header_raw_find (&h, "date", NULL)))
+		mi->date_sent = camel_header_decode_date (date, NULL);
+	else
+		mi->date_sent = 0;
+	
 	received = camel_header_raw_find(&h, "received", NULL);
 	if (received)
 		received = strrchr(received, ';');

Modified: trunk/camel/camel-mime-utils.c
==============================================================================
--- trunk/camel/camel-mime-utils.c	(original)
+++ trunk/camel/camel-mime-utils.c	Wed Jun 25 21:58:02 2008
@@ -4175,7 +4175,7 @@
 	struct _date_token *token, *tokens;
 	time_t date;
 	
-	if (!(tokens = datetok (str))) {
+	if (!str || !(tokens = datetok (str))) {
 		if (tz_offset)
 			*tz_offset = 0;
 		



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