diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c index bf8c68882e..97233b19d6 100644 --- a/libavcodec/svq3.c +++ b/libavcodec/svq3.c @@ -1195,7 +1195,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); + av_frame_unref(&s->last_pic->f); ret = get_buffer(avctx, s->last_pic); if (ret < 0) return ret; @@ -1208,7 +1208,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); + av_frame_unref(&s->next_pic->f); ret = get_buffer(avctx, s->next_pic); if (ret < 0) return ret;