aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-06-26 16:06:19 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-06-26 16:06:19 +0000
commitceb8d2ba47de92710bf062a3e3cdfc4798cb31c6 (patch)
treed6c49794af08c7d3d175fcc70509c27465c6615f
parenta47f8fb39e6421537defe513089d1c95d919cb91 (diff)
Don't repeat option 3 (bug #1910)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3316 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xapps/app_voicemail.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index d1183ff79..f68e934c2 100755
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -3235,7 +3235,7 @@ static int vm_intro_pt(struct ast_channel *chan,struct vm_state *vms)
return res;
}
-static int vm_instructions(struct ast_channel *chan, struct vm_state *vms)
+static int vm_instructions(struct ast_channel *chan, struct vm_state *vms, int skipadvanced)
{
int res = 0;
/* Play instructions and wait for new command */
@@ -3260,7 +3260,7 @@ static int vm_instructions(struct ast_channel *chan, struct vm_state *vms)
} else {
if (vms->curmsg)
res = play_and_wait(chan, "vm-prev");
- if (!res)
+ if (!res && !skipadvanced)
res = play_and_wait(chan, "vm-advopts");
if (!res)
res = play_and_wait(chan, "vm-repeat");
@@ -3810,6 +3810,8 @@ static int vm_execmain(struct ast_channel *chan, void *data)
}
if (!cmd)
cmd = play_and_wait(chan, "vm-opts");
+ if (!cmd)
+ cmd = vm_instructions(chan, &vms, 1);
} else
cmd = 0;
break;
@@ -3819,7 +3821,7 @@ static int vm_execmain(struct ast_channel *chan, void *data)
adsi_status(chan, vms.newmessages, vms.oldmessages, vms.lastmsg);
break;
default: /* Nothing */
- cmd = vm_instructions(chan, &vms);
+ cmd = vm_instructions(chan, &vms, 0);
break;
}
}