avformat/flic: check for memory allocation failures
authorPaul B Mahol <onemda@gmail.com>
Tue, 10 Sep 2013 19:57:54 +0000 (19:57 +0000)
committerPaul B Mahol <onemda@gmail.com>
Wed, 11 Sep 2013 11:06:44 +0000 (11:06 +0000)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavformat/flic.c

index 2835cf5..e04e277 100644 (file)
@@ -125,8 +125,10 @@ static int flic_read_header(AVFormatContext *s)
     }
 
     /* send over the whole 128-byte FLIC header */
-    st->codec->extradata_size = FLIC_HEADER_SIZE;
     st->codec->extradata = av_malloc(FLIC_HEADER_SIZE);
+    if (!st->codec->extradata)
+        return AVERROR(ENOMEM);
+    st->codec->extradata_size = FLIC_HEADER_SIZE;
     memcpy(st->codec->extradata, header, FLIC_HEADER_SIZE);
 
     /* peek at the preamble to detect TFTD videos - they seem to always start with an audio chunk */
@@ -176,8 +178,10 @@ static int flic_read_header(AVFormatContext *s)
 
         /* send over abbreviated FLIC header chunk */
         av_free(st->codec->extradata);
-        st->codec->extradata_size = 12;
         st->codec->extradata = av_malloc(12);
+        if (!st->codec->extradata)
+            return AVERROR(ENOMEM);
+        st->codec->extradata_size = 12;
         memcpy(st->codec->extradata, header, 12);
 
     } else if (magic_number == FLIC_FILE_MAGIC_1) {