]> git.sesse.net Git - vlc/blobdiff - src/audio_output/mixer.c
Ignore unmute if volume hasn't been set or muted. fixes #3636
[vlc] / src / audio_output / mixer.c
index 502833e30c09dc7f1843f7d961ff48eea6bc3499..108e815a112148acd97fc86bdda6704bfe9f0100 100644 (file)
@@ -65,7 +65,6 @@ int aout_MixerNew( aout_instance_t * p_aout )
     if( !p_mixer->module )
     {
         msg_Err( p_aout, "no suitable audio mixer" );
-        vlc_object_detach( p_mixer );
         free( p_mixer->input );
         vlc_object_release( p_mixer );
         return VLC_EGENERIC;
@@ -86,8 +85,6 @@ void aout_MixerDelete( aout_instance_t * p_aout )
     if( !p_aout->p_mixer )
         return;
 
-    vlc_object_detach( p_aout->p_mixer );
-
     module_unneed( p_aout->p_mixer, p_aout->p_mixer->module );
 
     free( p_aout->p_mixer->input );
@@ -130,8 +127,8 @@ static int MixBuffer( aout_instance_t * p_aout )
     }
 
 
-    aout_lock_output_fifo( p_aout );
     aout_lock_input_fifos( p_aout );
+    aout_lock_output_fifo( p_aout );
 
     /* Retrieve the date of the next buffer. */
     exact_start_date = p_aout->output.fifo.end_date;