vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Thu May 3 11:47:45 2018 +0300| [6302901cc68acd906a37c2cc358d6ea8ef762b2f] | committer: Rémi Denis-Courmont
aiff: use vlc_obj_calloc() > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6302901cc68acd906a37c2cc358d6ea8ef762b2f --- modules/demux/aiff.c | 33 ++++++++------------------------- 1 file changed, 8 insertions(+), 25 deletions(-) diff --git a/modules/demux/aiff.c b/modules/demux/aiff.c index 3689016a5e..0090ef059a 100644 --- a/modules/demux/aiff.c +++ b/modules/demux/aiff.c @@ -42,14 +42,13 @@ * Module descriptor *****************************************************************************/ static int Open ( vlc_object_t * ); -static void Close ( vlc_object_t * ); vlc_module_begin () set_category( CAT_INPUT ) set_subcategory( SUBCAT_INPUT_DEMUX ) set_description( N_("AIFF demuxer" ) ) set_capability( "demux", 10 ) - set_callbacks( Open, Close ) + set_callbacks( Open, NULL ) add_shortcut( "aiff" ) vlc_module_end () @@ -117,7 +116,7 @@ static int Open( vlc_object_t *p_this ) return VLC_EGENERIC; /* Fill p_demux field */ - demux_sys_t *p_sys = calloc( 1, sizeof (*p_sys) ); + demux_sys_t *p_sys = vlc_obj_calloc( p_this, 1, sizeof (*p_sys) ); es_format_Init( &p_sys->fmt, AUDIO_ES, VLC_FOURCC( 't', 'w', 'o', 's' ) ); p_sys->i_time = 0; p_sys->i_ssnd_pos = -1; @@ -125,7 +124,7 @@ static int Open( vlc_object_t *p_this ) for( ;; ) { if( vlc_stream_Peek( p_demux->s, &p_peek, 8 ) < 8 ) - goto error; + return VLC_EGENERIC; uint32_t i_data_size = GetDWBE( &p_peek[4] ); uint64_t i_chunk_size = UINT64_C( 8 ) + i_data_size + ( i_data_size & 1 ); @@ -136,7 +135,7 @@ static int Open( vlc_object_t *p_this ) if( !memcmp( p_peek, "COMM", 4 ) ) { if( vlc_stream_Peek( p_demux->s, &p_peek, 18+8 ) < 18+8 ) - goto error; + return VLC_EGENERIC; p_sys->fmt.audio.i_channels = GetWBE( &p_peek[8] ); p_sys->fmt.audio.i_bitspersample = GetWBE( &p_peek[14] ); @@ -149,7 +148,7 @@ static int Open( vlc_object_t *p_this ) else if( !memcmp( p_peek, "SSND", 4 ) ) { if( vlc_stream_Peek( p_demux->s, &p_peek, 8+8 ) < 8+8 ) - goto error; + return VLC_EGENERIC; p_sys->i_ssnd_pos = vlc_stream_Tell( p_demux->s ); p_sys->i_ssnd_size = i_data_size; @@ -176,7 +175,7 @@ static int Open( vlc_object_t *p_this ) if( vlc_stream_Read( p_demux->s, NULL, i_req ) != i_req ) { msg_Warn( p_demux, "incomplete file" ); - goto error; + return VLC_EGENERIC; } } } @@ -190,7 +189,7 @@ static int Open( vlc_object_t *p_this ) if( p_sys->i_ssnd_fsize <= 0 || p_sys->fmt.audio.i_rate == 0 ) { msg_Err( p_demux, "invalid audio parameters" ); - goto error; + return VLC_EGENERIC; } if( p_sys->i_ssnd_size <= 0 ) @@ -203,7 +202,7 @@ static int Open( vlc_object_t *p_this ) if( vlc_stream_Seek( p_demux->s, p_sys->i_ssnd_start ) ) { msg_Err( p_demux, "cannot seek to data chunk" ); - goto error; + return VLC_EGENERIC; } /* */ @@ -214,25 +213,9 @@ static int Open( vlc_object_t *p_this ) p_demux->p_sys = p_sys; return VLC_SUCCESS; - -error: - free( p_sys ); - return VLC_EGENERIC; } /***************************************************************************** - * Close - *****************************************************************************/ -static void Close( vlc_object_t *p_this ) -{ - demux_t *p_demux = (demux_t*)p_this; - demux_sys_t *p_sys = p_demux->p_sys; - - free( p_sys ); -} - - -/***************************************************************************** * Demux: *****************************************************************************/ static int Demux( demux_t *p_demux ) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
