]> git.ipfire.org Git - thirdparty/asterisk.git/commit
app_queue: queue members can receive multiple calls 98/2698/1
authorKevin Harwell <kharwell@digium.com>
Thu, 21 Apr 2016 19:23:21 +0000 (14:23 -0500)
committerKevin Harwell <kharwell@digium.com>
Mon, 25 Apr 2016 17:40:39 +0000 (12:40 -0500)
commiteebe8b3dd3b4058be3acec82f863b408b052ba1f
tree82d8fee57c30237fe4c5f3258de541f99070960d
parent7a18ebaa0c3fa93c7bc68ed0681df0e4c8127805
app_queue: queue members can receive multiple calls

It was possible for a queue member that is a member of at least 2 or more
queues to receive mulitiple calls at the same time. This happened because
of a race between when a member was being rung and when the device state
notified the other queue(s) member object of the state change.

This patch makes it so when a queue member is being rung it gets added to
a global pool of queue members. If that same member is tried again, e.g.
from another queue, and it is found to already exist in the pending member
container then it will not ring that member.

ASTERISK-16115 #close

Change-Id: I546dd474776d158c2b6be44205353dee5bac7e48
apps/app_queue.c