]> git.ipfire.org Git - thirdparty/asterisk.git/commit
app_queue: queue members can receive multiple calls 79/2679/2
authorKevin Harwell <kharwell@digium.com>
Thu, 21 Apr 2016 20:35:26 +0000 (15:35 -0500)
committerKevin Harwell <kharwell@digium.com>
Mon, 25 Apr 2016 17:39:25 +0000 (12:39 -0500)
commit79d7284b8b74b488e80f729814fa97e92998b008
tree4cdab93d6fb5f77eebe5d7a6b98d745cd49e9400
parent0cc0839f491ba576d37cee597ac150cc1e9c851d
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: Ice45a1c95b9f6f15d8a9fa709c5e5c84ffd29780
apps/app_queue.c