Commit c741c175 authored by Rémi Duraffort's avatar Rémi Duraffort

Use asprintf instead of malloc+sprintf, check the return value and remove unneeded FREENULL.

parent 6a0fc815
...@@ -224,17 +224,17 @@ static int DemuxGenre( demux_t *p_demux ) ...@@ -224,17 +224,17 @@ static int DemuxGenre( demux_t *p_demux )
if( !psz_eltname ) return -1; if( !psz_eltname ) return -1;
if( !strcmp( psz_eltname, "genre" ) ) if( !strcmp( psz_eltname, "genre" ) )
{ {
char *psz_mrl = malloc( strlen( SHOUTCAST_BASE_URL ) char* psz_mrl;
+ strlen( "?genre=" ) + strlen( psz_name ) + 1 ); if( asprintf( &psz_mrl, SHOUTCAST_BASE_URL "?genre=%s",
sprintf( psz_mrl, SHOUTCAST_BASE_URL "?genre=%s", psz_name ) != -1 )
psz_name ); {
p_input = input_item_NewExt( p_demux, psz_mrl, p_input = input_ItemNewExt( p_demux, psz_mrl,
psz_name, 0, NULL, -1 ); psz_name, 0, NULL, -1 );
input_item_CopyOptions( p_sys->p_current_input, input_ItemCopyOptions( p_sys->p_current_input, p_input );
p_input ); free( psz_mrl );
free( psz_mrl ); input_ItemAddSubItem( p_sys->p_current_input, p_input );
input_item_AddSubItem( p_sys->p_current_input, p_input ); vlc_gc_decref( p_input );
vlc_gc_decref( p_input ); }
FREENULL( psz_name ); FREENULL( psz_name );
} }
FREENULL( psz_eltname ); FREENULL( psz_eltname );
...@@ -318,9 +318,9 @@ static int DemuxStation( demux_t *p_demux ) ...@@ -318,9 +318,9 @@ static int DemuxStation( demux_t *p_demux )
xml_ReaderValue( p_sys->p_xml_reader ); xml_ReaderValue( p_sys->p_xml_reader );
if( !psz_attrname || !psz_attrvalue ) if( !psz_attrname || !psz_attrvalue )
{ {
free(psz_eltname); free( psz_eltname );
FREENULL(psz_attrname); free( psz_attrname );
FREENULL(psz_attrvalue); free( psz_attrvalue );
return -1; return -1;
} }
...@@ -344,9 +344,9 @@ static int DemuxStation( demux_t *p_demux ) ...@@ -344,9 +344,9 @@ static int DemuxStation( demux_t *p_demux )
xml_ReaderValue( p_sys->p_xml_reader ); xml_ReaderValue( p_sys->p_xml_reader );
if( !psz_attrname || !psz_attrvalue ) if( !psz_attrname || !psz_attrvalue )
{ {
free(psz_eltname); free( psz_eltname );
FREENULL(psz_attrname); free( psz_attrname );
FREENULL(psz_attrvalue); free( psz_attrvalue );
return -1; return -1;
} }
...@@ -369,7 +369,7 @@ static int DemuxStation( demux_t *p_demux ) ...@@ -369,7 +369,7 @@ static int DemuxStation( demux_t *p_demux )
free( psz_attrvalue ); free( psz_attrvalue );
} }
} }
free(psz_eltname); free( psz_eltname );
break; break;
case XML_READER_TEXT: case XML_READER_TEXT:
......
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