vlc | branch: master | Francois Cartegnie <[email protected]> | Sun Dec 25 21:38:15 2016 +0100| [9e2543f50dbdb036cf80ca39a3690b037c416663] | committer: Francois Cartegnie
demux: libasf: fix unchecked allocs/charset conversion > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e2543f50dbdb036cf80ca39a3690b037c416663 --- modules/demux/asf/libasf.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/modules/demux/asf/libasf.c b/modules/demux/asf/libasf.c index c5213ce..803effd 100644 --- a/modules/demux/asf/libasf.c +++ b/modules/demux/asf/libasf.c @@ -400,15 +400,18 @@ static int ASF_ReadObject_metadata( stream_t *s, asf_object_t *p_obj ) if( p_record->i_type == ASF_METADATA_TYPE_STRING ) { p_record->p_data = (uint8_t *)ASF_READS( i_data ); - p_record->i_data = i_data/2; /* FIXME Is that needed ? */ + if( p_record->p_data ) + p_record->i_data = i_data/2; /* FIXME Is that needed ? */ } else if( p_record->i_type == ASF_METADATA_TYPE_BYTE ) { p_record->p_data = malloc( i_data ); - p_record->i_data = i_data; - if( p_record->p_data && i_data > 0 ) - memcpy( p_record->p_data, p_data, i_data ); - + if( p_record->p_data ) + { + p_record->i_data = i_data; + if( p_record->p_data && i_data > 0 ) + memcpy( p_record->p_data, p_data, i_data ); + } p_data += i_data; } else if( p_record->i_type == ASF_METADATA_TYPE_QWORD ) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
