aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-30 21:17:45 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-30 21:17:45 +0000
commit263a061f6b5978400df5b83d5cd19a9f972b2577 (patch)
treea48e1e1ae33ddd1e658f1789242008617ed859a5
parentdc1df0f35c1bd8bd527984263753bff92e0c4c20 (diff)
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.4@119404 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--apps/app_queue.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index ce74c3f38..6830745d7 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1422,7 +1422,7 @@ static int join_queue(char *queuename, struct queue_ent *qe, enum queue_result *
stat = get_member_status(q, qe->max_penalty);
if (!q->joinempty && (stat == QUEUE_NO_MEMBERS))
*reason = QUEUE_JOINEMPTY;
- else if ((q->joinempty == QUEUE_EMPTY_STRICT) && (stat == QUEUE_NO_REACHABLE_MEMBERS))
+ else if ((q->joinempty == QUEUE_EMPTY_STRICT) && (stat == QUEUE_NO_REACHABLE_MEMBERS || stat == QUEUE_NO_MEMBERS))
*reason = QUEUE_JOINUNAVAIL;
else if (q->maxlen && (q->count >= q->maxlen))
*reason = QUEUE_FULL;