]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Do not swallow frames on channels leaving bridges. 07/1307/1
authorMark Michelson <mmichelson@digium.com>
Thu, 24 Sep 2015 19:49:46 +0000 (14:49 -0500)
committerMark Michelson <mmichelson@digium.com>
Thu, 24 Sep 2015 20:00:18 +0000 (15:00 -0500)
commit7a4581a41b3de0285a31007915f89b8b03c505b6
tree05dcae9990668a437f38927ab5d4f6670e7e1015
parent86eee104beebba4468791a2a15b78abc27f3f93a
Do not swallow frames on channels leaving bridges.

When leaving a bridge, indications on a channel could be swallowed by
the internal indication logic because it appears that the channel is on
its way to be hung up anyway. One such situation where this is
detrimental is when channels on hold are redirected out of a bridge. The
AST_CONTROL_UNHOLD indication from the bridging code is swallowed,
leaving the channel in question to still appear to be on hold.

The fix here is to modify the logic inside ast_indicate_data() to not
drop the indication if the channel is simply leaving a bridge. This way,
channels on hold redirected out of a bridge revert to their expected "in
use" state after the redirection.

ASTERISK-25418 #close
Reported by Mark Michelson

Change-Id: If6115204dfa0551c050974ee138fabd15f978949
main/channel.c