[asterisk-commits] mmichelson: branch 1.4 r67804 - /branches/1.4/apps/app_voicemail.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Wed Jun 6 12:26:56 MST 2007


Author: mmichelson
Date: Wed Jun  6 14:26:55 2007
New Revision: 67804

URL: http://svn.digium.com/view/asterisk?view=rev&rev=67804
Log:
Fix for Issue 9810. There was a segfault under a specific set of circumstances:

1. VoiceMailMain was configured in the dialplan with an extension as its argument
2. A message was left for this mailbox
3. Tried to call VoiceMailMain but hung up before entering password.

This was fixed by checking that a pointer was non-null prior to trying to dereference it.
(Issue 9810, reported by xmarksthespot, patched by Corydon76 with modifications by me).


Modified:
    branches/1.4/apps/app_voicemail.c

Modified: branches/1.4/apps/app_voicemail.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/apps/app_voicemail.c?view=diff&rev=67804&r1=67803&r2=67804
==============================================================================
--- branches/1.4/apps/app_voicemail.c (original)
+++ branches/1.4/apps/app_voicemail.c Wed Jun  6 14:26:55 2007
@@ -4839,11 +4839,13 @@
 	}
 	ast_unlock_path(vms->curdir);
 #else
-	for (x=0;x < vmu->maxmsg;x++) { 
-		if (vms->deleted[x]) { 
-			if(option_debug > 2)
-				ast_log(LOG_DEBUG,"IMAP delete of %d\n",x);
-			IMAP_DELETE(vms->curdir, x, vms->fn, vms);
+	if (vms->deleted) {
+		for (x=0;x < vmu->maxmsg;x++) { 
+			if (vms->deleted[x]) { 
+				if(option_debug > 2)
+					ast_log(LOG_DEBUG,"IMAP delete of %d\n",x);
+				IMAP_DELETE(vms->curdir, x, vms->fn, vms);
+			}
 		}
 	}
 #endif



More information about the asterisk-commits mailing list