[asterisk-bugs] [JIRA] (ASTERISK-21882) Bridge API Enhancements - ensure that n-1 channels leaving a multi-party bridge ejects the last channel
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Fri Jun 7 09:07:03 CDT 2013
Matt Jordan created ASTERISK-21882:
--------------------------------------
Summary: Bridge API Enhancements - ensure that n-1 channels leaving a multi-party bridge ejects the last channel
Key: ASTERISK-21882
URL: https://issues.asterisk.org/jira/browse/ASTERISK-21882
Project: Asterisk
Issue Type: Bug
Components: Core/Bridging
Reporter: Matt Jordan
This issue is to address the BUGBUG comment in {{bridging_basic}}:
{noformat}
static int basic_hangup_hook(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
{
/* BUGBUG Race condition. If all parties but one hangup at the same time, the bridge may not be dissolved on the remaining party. */
ast_bridge_channel_lock_bridge(bridge_channel);
if (2 < bridge_channel->bridge->num_channels) {
/* Just allow this channel to leave the multi-party bridge. */
ast_bridge_change_state(bridge_channel, AST_BRIDGE_CHANNEL_STATE_HANGUP);
}
ast_bridge_unlock(bridge_channel->bridge);
return 0;
}
{noformat}
The issue here is that if the bridge is currently in a multi-party mixing state, and {{n - 1}} channels leave, we should naturally transition to a two-party bridge with a single channel it. That should eject that channel from the bridge and the bridge should be disposed of.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.asterisk.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the asterisk-bugs
mailing list