[FFmpeg-cvslog] mpjpegdec: don' t try to alloc an AVIOContext when probe is guaranteed to fail
James Almer
git at videolan.org
Mon Jun 8 23:27:50 CEST 2015
ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Mon Jun 8 17:39:38 2015 -0300| [1382add59df149193620ca0714ceac0929208c88] | committer: James Almer
mpjpegdec: don't try to alloc an AVIOContext when probe is guaranteed to fail
The first check is done without the AVIOContext, so alloc it only if said check succeeds
Reviewed-by: Michael Niedermayer <michaelni at gmx.at>
Signed-off-by: James Almer <jamrial at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1382add59df149193620ca0714ceac0929208c88
---
libavformat/mpjpegdec.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index 56fe159..845e95c 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -83,13 +83,13 @@ static int mpjpeg_read_probe(AVProbeData *p)
char line[128] = { 0 };
int ret = 0;
+ if (p->buf_size < 2 || p->buf[0] != '-' || p->buf[1] != '-')
+ return 0;
+
pb = avio_alloc_context(p->buf, p->buf_size, 0, NULL, NULL, NULL, NULL);
if (!pb)
return AVERROR(ENOMEM);
- if (p->buf_size < 2 || p->buf[0] != '-' || p->buf[1] != '-')
- goto end;
-
while (!pb->eof_reached) {
ret = get_line(pb, line, sizeof(line));
if (ret < 0)
@@ -101,7 +101,6 @@ static int mpjpeg_read_probe(AVProbeData *p)
break;
}
}
-end:
av_free(pb);
More information about the ffmpeg-cvslog
mailing list