diff --git a/modules/demux/mp4/libmp4.c b/modules/demux/mp4/libmp4.c index 25daa2ea8ca19db18f2a9c6a941055b3428c0b2d..5c43fbfee8753933401b3eb54a21d2fab996e4a1 100644 --- a/modules/demux/mp4/libmp4.c +++ b/modules/demux/mp4/libmp4.c @@ -4664,7 +4664,12 @@ MP4_Box_t *MP4_BoxGetNextChunk( stream_t *s ) MP4_ReadBoxContainerChildren( s, p_fakeroot, stoplist ); p_tmp_box = p_fakeroot->p_first; - while( p_tmp_box ) + if( p_tmp_box == NULL ) + { + MP4_BoxFree( p_fakeroot ); + return NULL; + } + else while( p_tmp_box ) { p_fakeroot->i_size += p_tmp_box->i_size; p_tmp_box = p_tmp_box->p_next;