summaryrefslogtreecommitdiff
path: root/include/asterisk/stasis_system.h
diff options
context:
space:
mode:
authorGeorge Joseph <gjoseph@digium.com>2017-09-01 04:17:02 -0600
committerRichard Mudgett <rmudgett@digium.com>2017-09-06 13:00:42 -0500
commita824fcc8e88998bca12fb4043e86bbda1feeef08 (patch)
tree96e3deeacd68056063fe380bd11208cccf97400e /include/asterisk/stasis_system.h
parent3a6291b534256bd96dd7aac207d8825ae1609a7e (diff)
stasis/control: Fix possible deadlock with swap channel
If an error occurs during a bridge impart it's possible that the "bridge_after" callback might try to run before control_swap_channel_in_bridge has been signalled to continue. Since control_swap_channel_in_bridge is holding the control lock and the callback needs it, a deadlock will occur. * control_swap_channel_in_bridge now only holds the control lock while it's actually modifying the control structure and releases it while the bridge impart is running. * bridge_after_cb is now tolerant of impart failures. Change-Id: Ifd239aa93955b3eb475521f61e284fcb0da2c3b3
Diffstat (limited to 'include/asterisk/stasis_system.h')
0 files changed, 0 insertions, 0 deletions