[asterisk-commits] app queue: Ensure member is removed from pending when hangin... (asterisk[14])
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Dec 19 12:43:20 CST 2016
Joshua Colp has submitted this change and it was merged. ( https://gerrit.asterisk.org/4612 )
Change subject: app_queue: Ensure member is removed from pending when hanging up.
......................................................................
app_queue: Ensure member is removed from pending when hanging up.
In some cases member is added to pending_members, and the channel
is hung up before any extension state change. So the member would
stay in pending_members forever. So when we call do_hang, we
should also remove member from pending.
ASTERISK-26621 #close
Change-Id: Iae476b5c06481db18ebe0fa594b3e80fdc9a7d54
---
M apps/app_queue.c
1 file changed, 3 insertions(+), 1 deletion(-)
Approvals:
Richard Mudgett: Looks good to me, but someone else must approve
Anonymous Coward #1000019: Verified
Joshua Colp: Looks good to me, approved
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 4b05f38..0df9f05 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -2353,6 +2353,7 @@
static void pending_members_remove(struct member *mem)
{
+ ast_debug(3, "Removed %s from pending_members\n", mem->membername);
ao2_find(pending_members, mem, OBJ_POINTER | OBJ_NODATA | OBJ_UNLINK);
}
@@ -4209,6 +4210,7 @@
{
o->stillgoing = 0;
ast_hangup(o->chan);
+ pending_members_remove(o->member);
o->chan = NULL;
}
@@ -4289,6 +4291,7 @@
* If not found add it to the container so another queue
* won't attempt to call this member at the same time.
*/
+ ast_debug(3, "Add %s to pending_members\n", call->member->membername);
ao2_link(pending_members, call->member);
ao2_unlock(pending_members);
@@ -4424,7 +4427,6 @@
/* Again, keep going even if there's an error */
ast_verb(3, "Couldn't call %s\n", tmp->interface);
do_hang(tmp);
- pending_members_remove(tmp->member);
++*busies;
return 0;
}
--
To view, visit https://gerrit.asterisk.org/4612
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iae476b5c06481db18ebe0fa594b3e80fdc9a7d54
Gerrit-PatchSet: 2
Gerrit-Project: asterisk
Gerrit-Branch: 14
Gerrit-Owner: Martin Tomec <tomec.martin at gmail.com>
Gerrit-Reviewer: Anonymous Coward #1000019
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>
Gerrit-Reviewer: Matthew Fredrickson <creslin at digium.com>
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
More information about the asterisk-commits
mailing list