On Thu, 29 May 2014 13:44:34 +0200, Dirk Ausserhaus <[email protected]> 
wrote:
> diff --git a/libavcodec/ivi_common.c b/libavcodec/ivi_common.c
> index cf4df18..ef4df10 100644
> --- a/libavcodec/ivi_common.c
> +++ b/libavcodec/ivi_common.c
> @@ -968,6 +968,21 @@ int ff_ivi_decode_frame(AVCodecContext *avctx, void 
> *data, int *got_frame,
>      if (ctx->gop_invalid)
>          return AVERROR_INVALIDDATA;
>  
> +    if (avctx->codec_id == AV_CODEC_ID_INDEO4 &&
> +        ctx->frame_type == IVI4_FRAMETYPE_NULL_LAST) {
> +        if (ctx->got_p_frame) {
> +            if ((result = av_frame_ref(data, ctx->p_frame)) < 0)
> +                return result;
> +            av_frame_free(&ctx->p_frame);
> +            ctx->p_frame = av_frame_alloc();

The above 4 lines should be replaced with av_frame_move_ref(data, ctx->p_frame)

The rest looks fine to me.

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to