res_stasis.c: Fix locking issues with the app_bridge_moh container.
authorRichard Mudgett <rmudgett@digium.com>
Fri, 8 Nov 2013 20:37:08 +0000 (20:37 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Fri, 8 Nov 2013 20:37:08 +0000 (20:37 +0000)
commit7323809607a08ade7e17645a0d07f41dd8daff1d
tree62a1ca4c98989d6a200e9e944206f8ffc25095da
parentbf5492abd2f0bc4edf386bf06d8728843f5eb3d3
res_stasis.c: Fix locking issues with the app_bridge_moh container.

* Fix unlinking from the app_bridges_moh container in remove_bridge_moh()
without a lock under normal circumstances.

* Made check ast_bridge_set_after_callback() return value in
bridge_moh_create() to handle failure.

* Fixed SCOPED_AO2LOCK() locking over too much scope in
stasis_app_bridge_moh_channel() and stasis_app_bridge_moh_stop().

* Fixed unusual usage of ao2_unlink_flag() in control_unlink().

* Fixed orphaned bridge from off nominal path in
stasis_app_bridge_create().

* Fixed strange construct in stasis_app_unsubscribe().  From a bad merge?

* Made load_module() cleanup on failure.

Review: https://reviewboard.asterisk.org/r/2962/
........

Merged revisions 402593 from http://svn.asterisk.org/svn/asterisk/branches/12

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
res/res_stasis.c