mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-06 12:36:58 +00:00
app_queue: Member stuck as pending after forwarding previous call from queue
Queue member will get stuck in pending_members if queue calls a device that is different from the one observed for state changes. This patch removes members from pending_members as a result of channel stasis events such as blind or attended transfers and hangup. ASTERISK-26862 #close Change-Id: I8bf6df487b9bb35726c08049ff25cdad5e357727
This commit is contained in:
committed by
Kevin Harwell
parent
732367e806
commit
79069f8ccb
@@ -5574,6 +5574,13 @@ static int update_queue(struct call_queue *q, struct member *member, int callcom
|
||||
member->membername, (long)member->lastcall);
|
||||
ao2_unlock(q);
|
||||
}
|
||||
/* Member might never experience any direct status change (local
|
||||
* channel with forwarding in particular). If that's the case,
|
||||
* this is the last chance to remove it from pending or subsequent
|
||||
* calls will not occur.
|
||||
*/
|
||||
pending_members_remove(member);
|
||||
|
||||
ao2_lock(q);
|
||||
q->callscompleted++;
|
||||
if (callcompletedinsl) {
|
||||
|
Reference in New Issue
Block a user