aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_queue.c
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-30 21:24:01 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-30 21:24:01 +0000
commitffa7fcd44378c75d040e1bf15354b5a3244f4a0c (patch)
tree74685fb72665d0aac61f31e9dd39c476cf5c6123 /apps/app_queue.c
parentb9b374d6fcf1dc6e72c12935ea446f12aa60f126 (diff)
Merged revisions 119419 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r119419 | tilghman | 2008-05-30 16:23:14 -0500 (Fri, 30 May 2008) | 14 lines Merged revisions 119404 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r119404 | tilghman | 2008-05-30 16:17:45 -0500 (Fri, 30 May 2008) | 6 lines When joinempty=strict, it only failed on join if there were busy members. If all members were logged out OR paused, then it (incorrectly) let callers join the queue. (closes issue #12451) Reported by: davidw ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@119420 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_queue.c')
-rw-r--r--apps/app_queue.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 72236fed9..1b99734e8 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1693,9 +1693,9 @@ static int join_queue(char *queuename, struct queue_ent *qe, enum queue_result *
stat = get_member_status(q, qe->max_penalty, qe->min_penalty);
if (!q->joinempty && (stat == QUEUE_NO_MEMBERS))
*reason = QUEUE_JOINEMPTY;
- else if ((q->joinempty == QUEUE_EMPTY_STRICT) && (stat == QUEUE_NO_REACHABLE_MEMBERS || stat == QUEUE_NO_UNPAUSED_REACHABLE_MEMBERS))
+ else if ((q->joinempty == QUEUE_EMPTY_STRICT) && (stat == QUEUE_NO_REACHABLE_MEMBERS || stat == QUEUE_NO_UNPAUSED_REACHABLE_MEMBERS || stat == QUEUE_NO_MEMBERS))
*reason = QUEUE_JOINUNAVAIL;
- else if ((q->joinempty == QUEUE_EMPTY_LOOSE) && (stat == QUEUE_NO_REACHABLE_MEMBERS))
+ else if ((q->joinempty == QUEUE_EMPTY_LOOSE) && (stat == QUEUE_NO_REACHABLE_MEMBERS || stat == QUEUE_NO_MEMBERS))
*reason = QUEUE_JOINUNAVAIL;
else if (q->maxlen && (q->count >= q->maxlen))
*reason = QUEUE_FULL;