aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_queue.c
diff options
context:
space:
mode:
authormmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-07-08 19:27:26 +0000
committermmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-07-08 19:27:26 +0000
commit946b9ebe4e89c8d9fa5e1eaa2019b3f4e13ffbc8 (patch)
tree2660f67c0c837c08f88385838a4d41e0097bf823 /apps/app_queue.c
parentb93860ded864f16734faa5b57ee40b703f487d41 (diff)
Merged revisions 205350 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r205350 | mmichelson | 2009-07-08 14:26:55 -0500 (Wed, 08 Jul 2009) | 20 lines Merged revisions 205349 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r205349 | mmichelson | 2009-07-08 14:26:13 -0500 (Wed, 08 Jul 2009) | 14 lines Prevent phantom calls to queue members. If a caller were to hang up while a periodic announcement or position were being said, the return value for those functions would incorrectly indicate that the caller was still in the queue. With these changes, the problem does not occur. (closes issue #14631) Reported by: latinsud Patches: queue_announce_ghost_call2.diff uploaded by latinsud (license 745) (with small modification from me) ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@205351 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_queue.c')
-rw-r--r--apps/app_queue.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 95e7ebc15..6b6bdf910 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1941,7 +1941,8 @@ posout:
}
playout:
- if ((res > 0 && !valid_exit(qe, res)) || res < 0)
+
+ if ((res > 0 && !valid_exit(qe, res)))
res = 0;
/* Set our last_pos indicators */
@@ -2483,7 +2484,7 @@ static int say_periodic_announcement(struct queue_ent *qe, int ringing)
/* play the announcement */
res = play_file(qe->chan, qe->parent->sound_periodicannounce[qe->last_periodic_announce_sound]->str);
- if ((res > 0 && !valid_exit(qe, res)) || res < 0)
+ if (res > 0 && !valid_exit(qe, res))
res = 0;
/* Resume Music on Hold if the caller is going to stay in the queue */