From: Alec L Davis Date: Fri, 1 Apr 2011 11:02:26 +0000 (+0000) Subject: app_voicemail: leave_vociemail doesn't use last_message_index to store next message X-Git-Tag: 1.4.42-rc1~30 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e7597d55df9dfff34decf287a27aab04513263b6;p=thirdparty%2Fasterisk.git app_voicemail: leave_vociemail doesn't use last_message_index to store next message trivial change to bring inline with 1.6.2 1.8 and trunk. The symptom was if msg0000 was missing, and the last was msg0004, the next msgnum would be msg0000 when it should have been msg0005 (issue #18998) Reported by: tootai Patches: bug18998.diff2.txt uploaded by alecdavis (license 585) Tested by: alecdavis git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@312290 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 6b482e2101..58e2d55aae 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -4534,12 +4534,10 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_ ast_unlock_path(dir); inprocess_count(vmu->mailbox, vmu->context, -1); } else { - for (;;) { - make_file(fn, sizeof(fn), dir, msgnum); - if (!EXISTS(dir, msgnum, fn, NULL)) - break; - msgnum++; - } +#ifndef IMAP_STORAGE + msgnum = last_message_index(vmu, dir) + 1; +#endif + make_file(fn, sizeof(fn), dir, msgnum); /* assign a variable with the name of the voicemail file */ #ifndef IMAP_STORAGE