summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2015-08-24 17:12:06 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2015-08-24 17:12:06 -0500
commitd36c8aa0062f7b2518fcd5e6100f0a0277117696 (patch)
tree18accb2a34a4cc81316dfe907a8dcdffb64a3e21
parent3108820000ba44605f09a314c5a9d69f0114dd32 (diff)
parent98d089fb9a0a52baf6fa07c723bb74c4dd9a116c (diff)
Merge "bridge: Kick channel from bridge if hung up during action."
-rw-r--r--main/bridge_channel.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/main/bridge_channel.c b/main/bridge_channel.c
index 28dfd9ccb..be0819a5c 100644
--- a/main/bridge_channel.c
+++ b/main/bridge_channel.c
@@ -1914,6 +1914,13 @@ static void bridge_channel_handle_action(struct ast_bridge_channel *bridge_chann
default:
break;
}
+
+ /* While invoking an action it is possible for the channel to be hung up. So
+ * that the bridge respects this we check here and if hung up kick it out.
+ */
+ if (bridge_channel->chan && ast_check_hangup_locked(bridge_channel->chan)) {
+ ast_bridge_channel_kick(bridge_channel, 0);
+ }
}
/*!