[FFmpeg-cvslog] avcodec/libxvid: check for av_malloc*() failures

Michael Niedermayer git at videolan.org
Sun Jan 4 00:10:25 CET 2015


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sat Jan  3 23:42:34 2015 +0100| [5c95de150f3b18f2e76fed670d6ea579feab1206] | committer: Michael Niedermayer

avcodec/libxvid: check for av_malloc*() failures

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5c95de150f3b18f2e76fed670d6ea579feab1206
---

 libavcodec/libxvid.c |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavcodec/libxvid.c b/libavcodec/libxvid.c
index 64572da..7669fee 100644
--- a/libavcodec/libxvid.c
+++ b/libavcodec/libxvid.c
@@ -287,6 +287,8 @@ static int xvid_strip_vol_header(AVCodecContext *avctx, AVPacket *pkt,
         /* We need to store the header, so extract it */
         if (!avctx->extradata) {
             avctx->extradata = av_malloc(vo_len);
+            if (!avctx->extradata)
+                return AVERROR(ENOMEM);
             memcpy(avctx->extradata, pkt->data, vo_len);
             avctx->extradata_size = vo_len;
         }
@@ -625,11 +627,19 @@ static av_cold int xvid_encode_init(AVCodecContext *avctx)
         if (avctx->intra_matrix) {
             intra           = avctx->intra_matrix;
             x->intra_matrix = av_malloc(sizeof(unsigned char) * 64);
+            if (!x->intra_matrix) {
+                ret = AVERROR(ENOMEM);
+                goto fail;
+            }
         } else
             intra = NULL;
         if (avctx->inter_matrix) {
             inter           = avctx->inter_matrix;
             x->inter_matrix = av_malloc(sizeof(unsigned char) * 64);
+            if (!x->inter_matrix) {
+                ret = AVERROR(ENOMEM);
+                goto fail;
+            }
         } else
             inter = NULL;
 



More information about the ffmpeg-cvslog mailing list