OSDN Git Service

avcodec/svq3: set last/next frames to defaults before use
authorMichael Niedermayer <michaelni@gmx.at>
Tue, 17 Dec 2013 13:54:29 +0000 (14:54 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 17 Dec 2013 14:45:24 +0000 (15:45 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/svq3.c

index f24f2e4..e1d2588 100644 (file)
@@ -1187,6 +1187,7 @@ static int svq3_decode_frame(AVCodecContext *avctx, void *data,
     if (h->pict_type != AV_PICTURE_TYPE_I) {
         if (!s->last_pic->f.data[0]) {
             av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
+            av_frame_unref(s->last_pic);
             ret = get_buffer(avctx, s->last_pic);
             if (ret < 0)
                 return ret;
@@ -1199,6 +1200,7 @@ static int svq3_decode_frame(AVCodecContext *avctx, void *data,
 
         if (h->pict_type == AV_PICTURE_TYPE_B && !s->next_pic->f.data[0]) {
             av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
+            av_frame_unref(s->next_pic);
             ret = get_buffer(avctx, s->next_pic);
             if (ret < 0)
                 return ret;