mjpegdec: use av_fast_padded_malloc()
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 30 Jan 2012 23:35:35 +0000 (18:35 -0500)
committerJustin Ruggles <justin.ruggles@gmail.com>
Wed, 1 Feb 2012 19:37:47 +0000 (14:37 -0500)
also check for allocation failure

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
libavcodec/mjpegdec.c

index d6ed43b..48a872b 100644 (file)
@@ -1359,13 +1359,9 @@ int ff_mjpeg_find_marker(MJpegDecodeContext *s,
     int start_code;
     start_code = find_marker(buf_ptr, buf_end);
 
-    if ((buf_end - *buf_ptr) > s->buffer_size) {
-        av_free(s->buffer);
-        s->buffer_size = buf_end - *buf_ptr;
-        s->buffer      = av_malloc(s->buffer_size + FF_INPUT_BUFFER_PADDING_SIZE);
-        av_log(s->avctx, AV_LOG_DEBUG,
-               "buffer too small, expanding to %d bytes\n", s->buffer_size);
-    }
+    av_fast_padded_malloc(&s->buffer, &s->buffer_size, buf_end - *buf_ptr);
+    if (!s->buffer)
+        return AVERROR(ENOMEM);
 
     /* unescape buffer of SOS, use special treatment for JPEG-LS */
     if (start_code == SOS && !s->ls) {