vlc | branch: master | Francois Cartegnie <[email protected]> | Fri Jul 7 15:51:35 2017 +0200| [5936f2895938051220369e76707ba888037c6702] | committer: Francois Cartegnie
sout: simplify sout_InputNew > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5936f2895938051220369e76707ba888037c6702 --- src/stream_output/stream_output.c | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/src/stream_output/stream_output.c b/src/stream_output/stream_output.c index 87f3c7b794..5e4ed47594 100644 --- a/src/stream_output/stream_output.c +++ b/src/stream_output/stream_output.c @@ -159,13 +159,14 @@ sout_packetizer_input_t *sout_InputNew( sout_instance_t *p_sout, sout_packetizer_input_t *p_input; /* *** create a packetizer input *** */ - p_input = malloc( sizeof( sout_packetizer_input_t ) ); - if( !p_input ) return NULL; + if( !p_fmt->i_codec || !(p_input = malloc(sizeof(sout_packetizer_input_t))) ) + return NULL; + p_input->p_sout = p_sout; p_input->p_fmt = p_fmt; - msg_Dbg( p_sout, "adding a new sout input (sout_input: %p)", - (void *)p_input ); + msg_Dbg( p_sout, "adding a new sout input for `%4.4s` (sout_input: %p)", + (char*) &p_fmt->i_codec, (void *)p_input ); /* *** add it to the stream chain */ vlc_mutex_lock( &p_sout->lock ); @@ -174,8 +175,10 @@ sout_packetizer_input_t *sout_InputNew( sout_instance_t *p_sout, if( p_input->id == NULL ) { + msg_Warn( p_sout, "new sout input failed (sout_input: %p)", + (void *)p_input ); free( p_input ); - return NULL; + p_input = NULL; } return( p_input ); @@ -191,12 +194,9 @@ int sout_InputDelete( sout_packetizer_input_t *p_input ) msg_Dbg( p_sout, "removing a sout input (sout_input: %p)", (void *)p_input ); - if( p_input->id ) - { - vlc_mutex_lock( &p_sout->lock ); - p_sout->p_stream->pf_del( p_sout->p_stream, p_input->id ); - vlc_mutex_unlock( &p_sout->lock ); - } + vlc_mutex_lock( &p_sout->lock ); + p_sout->p_stream->pf_del( p_sout->p_stream, p_input->id ); + vlc_mutex_unlock( &p_sout->lock ); free( p_input ); @@ -233,12 +233,6 @@ int sout_InputSendBuffer( sout_packetizer_input_t *p_input, sout_instance_t *p_sout = p_input->p_sout; int i_ret; - if( p_input->id == NULL ) - { - block_Release( p_buffer ); - return VLC_SUCCESS; - } - vlc_mutex_lock( &p_sout->lock ); i_ret = p_sout->p_stream->pf_send( p_sout->p_stream, p_input->id, p_buffer ); _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
