vlc | branch: master | Francois Cartegnie <fcvlc...@free.fr> | Wed Dec 13 20:22:34 2017 +0100| [59535a015e94d3b70b30dce1c2aff8c23930b656] | committer: Francois Cartegnie
demux: mp4: check handler before dereferencing sample entry > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=59535a015e94d3b70b30dce1c2aff8c23930b656 --- modules/demux/mp4/mp4.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c index 76de46b21d..4b03a1c6dd 100644 --- a/modules/demux/mp4/mp4.c +++ b/modules/demux/mp4/mp4.c @@ -2816,7 +2816,8 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, switch( p_track->fmt.i_cat ) { case VIDEO_ES: - if ( !SetupVideoES( p_demux, p_track, p_sample ) ) + if ( p_sample->i_handler != ATOM_vide || + !SetupVideoES( p_demux, p_track, p_sample ) ) return VLC_EGENERIC; /* Set frame rate */ @@ -2831,7 +2832,8 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, break; case AUDIO_ES: - if ( !SetupAudioES( p_demux, p_track, p_sample ) ) + if ( p_sample->i_handler != ATOM_soun || + !SetupAudioES( p_demux, p_track, p_sample ) ) return VLC_EGENERIC; if( p_sys->p_meta ) { @@ -2854,7 +2856,8 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, break; case SPU_ES: - if ( !SetupSpuES( p_demux, p_track, p_sample ) ) + if ( p_sample->i_handler != ATOM_text || + !SetupSpuES( p_demux, p_track, p_sample ) ) return VLC_EGENERIC; break; _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits