aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbweschke <bweschke@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-03 17:13:38 +0000
committerbweschke <bweschke@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-03 17:13:38 +0000
commitdb7cbaa1b78123102554b61ffbbd0429edb904b6 (patch)
tree3a0f7478b2cae35fc0ad30957836370b32e373fd
parent36e925fd847200e660b478e220c1a49bf3054f10 (diff)
Don't keep trying the same member in certain strategies when members of the queue are unavailable (#7278 - diLLec reported and patched) - This should have been patched here first and then merged into /trunk. My bad!
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@41880 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--apps/app_queue.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index ffd2c7f2e..a03dd8522 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1518,6 +1518,11 @@ static int ring_entry(struct queue_ent *qe, struct localuser *tmp, int *busies)
ast_cdr_busy(qe->chan->cdr);
tmp->stillgoing = 0;
update_dial_status(qe->parent, tmp->member, status);
+
+ ast_mutex_lock(&qe->parent->lock);
+ qe->parent->rrpos++;
+ ast_mutex_unlock(&qe->parent->lock);
+
(*busies)++;
return 0;
} else if (status != tmp->oldstatus)