diff --git a/libmpdemux/demux_rawdv.c b/libmpdemux/demux_rawdv.c index 5decae3eca..388fe1c543 100644 --- a/libmpdemux/demux_rawdv.c +++ b/libmpdemux/demux_rawdv.c @@ -146,10 +146,13 @@ static demuxer_t* demux_open_rawdv(demuxer_t* demuxer) dv_decoder=dv_decoder_new(TRUE,TRUE,FALSE); dv_decoder->quality=DV_QUALITY_BEST; - dv_parse_header(dv_decoder, dv_frame); + if (dv_parse_header(dv_decoder, dv_frame) == -1) + return NULL; // create a new video stream header sh_video = new_sh_video(demuxer, 0); + if (!sh_video) + return NULL; // make sure the demuxer knows about the new video stream header // (even though new_sh_video() ought to take care of it)