aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_queue.c
diff options
context:
space:
mode:
authorbweschke <bweschke@f38db490-d61c-443f-a65b-d21fe96a405b>2006-05-08 13:11:32 +0000
committerbweschke <bweschke@f38db490-d61c-443f-a65b-d21fe96a405b>2006-05-08 13:11:32 +0000
commit97237b251c4b0244e02b4ce477ad1c8b5c5a9614 (patch)
tree23a05bbdd608cd6410fb5320ace1fc66790587c3 /apps/app_queue.c
parentbdf3f5f7e781b67fbb568d79001042d7293f8060 (diff)
Don't recheck valid_exit() after getting the result from say_position (which already checks it). Should prevent another loop if the caller hits digits during the position announcement. #6776 (tgj reporting)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@25518 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_queue.c')
-rw-r--r--apps/app_queue.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 763febfa1..bd6102136 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1184,7 +1184,9 @@ static int say_position(struct queue_ent *qe)
/* Set our last_pos indicators */
qe->last_pos = now;
qe->last_pos_said = qe->pos;
- ast_moh_start(qe->chan, qe->moh);
+ /* Don't restart music on hold if we're about to exit the caller from the queue */
+ if (!res)
+ ast_moh_start(qe->chan, qe->moh);
return res;
}
@@ -2989,7 +2991,7 @@ check_turns:
/* Make a position announcement, if enabled */
if (qe.parent->announcefrequency && !ringing)
res = say_position(&qe);
- if (res && valid_exit(&qe, res)) {
+ if (res) {
ast_queue_log(queuename, chan->uniqueid, "NONE", "EXITWITHKEY", "%s|%d", qe.digits, qe.pos);
break;
}