On date Monday 2014-09-01 14:34:23 +0200, Michael Niedermayer encoded: > On Mon, Sep 01, 2014 at 02:05:56PM +0200, Stefano Sabatini wrote: > > --- > > libavformat/ffmdec.c | 13 +++++++++---- > > 1 file changed, 9 insertions(+), 4 deletions(-) > > > > diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c > > index f8fee2f..d74b6cf 100644 > > --- a/libavformat/ffmdec.c > > +++ b/libavformat/ffmdec.c > > @@ -238,8 +238,12 @@ static int ffm2_read_header(AVFormatContext *s) > > AVCodecContext *codec; > > > > ffm->packet_size = avio_rb32(pb); > > - if (ffm->packet_size != FFM_PACKET_SIZE) > > + if (ffm->packet_size != FFM_PACKET_SIZE) { > > + av_log(s, AV_LOG_ERROR, "Invalid packet size %d, expected was > > %d\n", > > + ffm->packet_size, FFM_PACKET_SIZE); > > + ret = AVERROR(EINVAL); > > theres no ret variable in the function > is some hunk missing ?
Up. -- FFmpeg = Fierce & Fast Moronic Proud Extreme Gangster
>From 63f503fd2b4b9a790e6a7c358c07d90d1bcb927e Mon Sep 17 00:00:00 2001 From: Stefano Sabatini <stefa...@gmail.com> Date: Mon, 1 Sep 2014 14:04:54 +0200 Subject: [PATCH] lavf/ffmdec: return proper error code in ffm2_read_header() --- libavformat/ffmdec.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c index f8fee2f..abdd3b2 100644 --- a/libavformat/ffmdec.c +++ b/libavformat/ffmdec.c @@ -236,10 +236,16 @@ static int ffm2_read_header(AVFormatContext *s) AVStream *st; AVIOContext *pb = s->pb; AVCodecContext *codec; + int ret; ffm->packet_size = avio_rb32(pb); - if (ffm->packet_size != FFM_PACKET_SIZE) + if (ffm->packet_size != FFM_PACKET_SIZE) { + av_log(s, AV_LOG_ERROR, "Invalid packet size %d, expected was %d\n", + ffm->packet_size, FFM_PACKET_SIZE); + ret = AVERROR(EINVAL); goto fail; + } + ffm->write_index = avio_rb64(pb); /* get also filesize */ if (pb->seekable) { @@ -266,8 +272,10 @@ static int ffm2_read_header(AVFormatContext *s) break; case MKBETAG('C', 'O', 'M', 'M'): st = avformat_new_stream(s, NULL); - if (!st) + if (!st) { + ret = AVERROR(ENOMEM); goto fail; + } avpriv_set_pts_info(st, 64, 1, 1000000); @@ -359,7 +367,7 @@ static int ffm2_read_header(AVFormatContext *s) return 0; fail: ffm_close(s); - return -1; + return ret; } static int ffm_read_header(AVFormatContext *s) -- 1.8.3.2
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel