From: Martin Pycko Date: Mon, 22 Dec 2003 16:35:48 +0000 (+0000) Subject: Don't free the user structure before reading the next pointer X-Git-Tag: 0.7.0~138 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f1676593d0dd2e77858f140f78218fb2fdb6f983;p=thirdparty%2Fasterisk.git Don't free the user structure before reading the next pointer git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1874 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index ced94c6393..68b8154678 100755 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -2166,7 +2166,7 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i char fn[256]; char callerid[512]; int res = 0, cmd = 0; - struct ast_vm_user *receiver, *extensions = NULL, *vmtmp = NULL; + struct ast_vm_user *receiver, *extensions = NULL, *vmtmp = NULL, *vmfree; char tmp[256]; char *stringp, *s; int saved_messages = 0, found = 0; @@ -2270,9 +2270,10 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i /* Leave voicemail for someone */ manager_event(EVENT_FLAG_CALL, "MessageWaiting", "Mailbox: %s\r\nWaiting: %d\r\n", vmtmp->mailbox, ast_app_has_voicemail(vmtmp->mailbox)); - free_user(vmtmp); saved_messages++; + vmfree = vmtmp; vmtmp = vmtmp->next; + free_user(vmfree); } if (saved_messages > 0) { /* give confirmatopm that the message was saved */