diff options
-rw-r--r-- | main/bridge_channel.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/main/bridge_channel.c b/main/bridge_channel.c index 3ee04db55..8ce022005 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); + } } /*! |