Commit 790f188a authored by Laurent Aimar's avatar Laurent Aimar

Fixed segfault with spdif mixer.

 The aout core use a hack to avoid useless memcpy: the buffer in which
to mix is the same as the one in the first active input fifo.
parent 81900b24
...@@ -29,6 +29,8 @@ ...@@ -29,6 +29,8 @@
# include "config.h" # include "config.h"
#endif #endif
#include <assert.h>
#include <vlc_common.h> #include <vlc_common.h>
#include <vlc_plugin.h> #include <vlc_plugin.h>
#include <vlc_aout.h> #include <vlc_aout.h>
...@@ -84,7 +86,7 @@ static void DoWork( aout_mixer_t * p_mixer, aout_buffer_t * p_buffer ) ...@@ -84,7 +86,7 @@ static void DoWork( aout_mixer_t * p_mixer, aout_buffer_t * p_buffer )
p_input = p_mixer->input[++i]; p_input = p_mixer->input[++i];
aout_buffer_t * p_old_buffer = aout_FifoPop( NULL, &p_input->fifo ); aout_buffer_t * p_old_buffer = aout_FifoPop( NULL, &p_input->fifo );
aout_BufferFree( p_old_buffer ); assert( p_old_buffer == p_buffer );
/* Empty other FIFOs to avoid a memory leak. */ /* Empty other FIFOs to avoid a memory leak. */
for ( i++; i < p_mixer->input_count; i++ ) for ( i++; i < p_mixer->input_count; i++ )
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment