Hi devel,

Here's a little patch that fixes up a crash in exchange2mbox in the odd case
where PR_SENT_REPRESENTING_NAME is not available.

Cheers,
Davidm

-- 
David McCullough,      [email protected],  Ph:+61 734352815
McAfee - SnapGear      http://www.mcafee.com         http://www.uCdot.org
Index: utils/exchange2mbox.c
===================================================================
--- utils/exchange2mbox.c	(revision 2854)
+++ utils/exchange2mbox.c	(working copy)
@@ -570,8 +570,6 @@
 	int body_count = 0;
 
 	has_attach = (const uint8_t *) octool_get_propval(aRow, PR_HASATTACH);
-	if (from == NULL)
-		from = "unknown";
 	to = (const char *) octool_get_propval(aRow, PR_DISPLAY_TO);
 	cc = (const char *) octool_get_propval(aRow, PR_DISPLAY_CC);
 	bcc = (const char *) octool_get_propval(aRow, PR_DISPLAY_BCC);
@@ -585,6 +583,9 @@
 
 
 	from = (const char *) octool_get_propval(aRow, PR_SENT_REPRESENTING_NAME);
+	if (from == NULL)
+		from = "unknown";
+
 	subject_prefix = (const char *) octool_get_propval(aRow, PR_SUBJECT_PREFIX);
 	normalizedsubject = (const char *) octool_get_propval(aRow, PR_NORMALIZED_SUBJECT);
 	subject = (const char*) octool_get_propval(aRow, PR_SUBJECT);
@@ -600,7 +601,7 @@
 		char *f, *p;
 		f = talloc_strdup(mem_ctx, from);
 		/* strip out all '"'s, ugly but works */
-		for (p = f; *p; ) {
+		for (p = f; p && *p; ) {
 			if (*p == '"') {
 				memmove(p, p+1, strlen(p)); /* gets NUL */
 				continue;
_______________________________________________
devel mailing list
[email protected]
http://mailman.openchange.org/listinfo/devel

Reply via email to