Author: mmichelson
Date: Fri Aug 22 11:56:18 2014
New Revision: 421882

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=421882
Log:
Fix a locking inversion in MixMonitor.

We need to unlock the audiohook before trying to lock
the channel, since the correct locking order is channel
then audiohook.


Modified:
    branches/13/apps/app_mixmonitor.c

Modified: branches/13/apps/app_mixmonitor.c
URL: 
http://svnview.digium.com/svn/asterisk/branches/13/apps/app_mixmonitor.c?view=diff&rev=421882&r1=421881&r2=421882
==============================================================================
--- branches/13/apps/app_mixmonitor.c (original)
+++ branches/13/apps/app_mixmonitor.c Fri Aug 22 11:56:18 2014
@@ -743,13 +743,14 @@
                                                                        "File: 
%s\r\n",
                                                                        
ast_channel_name(mixmonitor->autochan->chan),
                                                                        
mixmonitor->filename);
+
+       ast_audiohook_unlock(&mixmonitor->audiohook);
+
        ast_channel_lock(mixmonitor->autochan->chan);
        if (ast_test_flag(mixmonitor, MUXFLAG_BEEP_STOP)) {
                ast_stream_and_wait(mixmonitor->autochan->chan, "beep", "");
        }
        ast_channel_unlock(mixmonitor->autochan->chan);
-
-       ast_audiohook_unlock(&mixmonitor->audiohook);
 
        ast_autochan_destroy(mixmonitor->autochan);
 


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

svn-commits mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/svn-commits

Reply via email to