[asterisk-commits] app queue: Ensure member is removed from pending when hangin... (asterisk[certified/13.8])

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sun Jan 29 15:35:56 CST 2017


George Joseph has submitted this change and it was merged. ( https://gerrit.asterisk.org/4815 )

Change subject: app_queue: Ensure member is removed from pending when hanging up.
......................................................................


app_queue: Ensure member is removed from pending when hanging up.

When dialing channels it is possible that they may not ever
leave the not in use state (Local channels in particular) by
the time we cancel them. If this occurs but we know they were
dialed we explicitly remove them from the pending members
container so that subsequent call attempts occur.

ASTERISK-26299 #close

Change-Id: I6ad0d17c36480c92cebf840626228ce3f7e4bd65
(cherry picked from commit f69f5cd3c43025180b61a20cc1aa906c9cf7f4f4)
---
M apps/app_queue.c
1 file changed, 11 insertions(+), 0 deletions(-)

Approvals:
  George Joseph: Looks good to me, approved; Verified



diff --git a/apps/app_queue.c b/apps/app_queue.c
index ef8b3bd..0f7a914 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -4071,6 +4071,17 @@
 				ast_channel_hangupcause_set(outgoing->chan, AST_CAUSE_ANSWERED_ELSEWHERE);
 			}
 			ast_channel_publish_dial(qe->chan, outgoing->chan, outgoing->interface, "CANCEL");
+
+			/* When dialing channels it is possible that they may not ever
+			 * leave the not in use state (Local channels in particular) by
+			 * the time we cancel them. If this occurs but we know they were
+			 * dialed we explicitly remove them from the pending members
+			 * container so that subsequent call attempts occur.
+			 */
+			if (outgoing->member->status == AST_DEVICE_NOT_INUSE) {
+				pending_members_remove(outgoing->member);
+			}
+
 			ast_hangup(outgoing->chan);
 		}
 		oo = outgoing;

-- 
To view, visit https://gerrit.asterisk.org/4815
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I6ad0d17c36480c92cebf840626228ce3f7e4bd65
Gerrit-PatchSet: 2
Gerrit-Project: asterisk
Gerrit-Branch: certified/13.8
Gerrit-Owner: Kevin Harwell <kharwell at digium.com>
Gerrit-Reviewer: Anonymous Coward #1000019
Gerrit-Reviewer: George Joseph <gjoseph at digium.com>
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>



More information about the asterisk-commits mailing list