avformat/xwma: Use ff_alloc_extradata()
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 1 Apr 2015 16:17:20 +0000 (18:17 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 1 Apr 2015 16:25:34 +0000 (18:25 +0200)
This prevents the fields from potentially becoming inconsistent in case of errors

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/xwma.c

index 075a85a..a1f2dc2 100644 (file)
@@ -104,11 +104,10 @@ static int xwma_read_header(AVFormatContext *s)
             avpriv_request_sample(s, "Unexpected extradata (%d bytes)",
                                   st->codec->extradata_size);
         } else {
-            st->codec->extradata_size = 6;
-            st->codec->extradata      = av_mallocz(6 + FF_INPUT_BUFFER_PADDING_SIZE);
-            if (!st->codec->extradata)
+            if (ff_alloc_extradata(st->codec, 6))
                 return AVERROR(ENOMEM);
 
+            memset(st->codec->extradata, 0, st->codec->extradata_size);
             /* setup extradata with our experimentally obtained value */
             st->codec->extradata[4] = 31;
         }