[FFmpeg-devel] [PATCH] lavc/utils: propagate or return meaningful error codes in avcodec_open2()

Stefano Sabatini stefasab at gmail.com
Sat Oct 20 12:14:03 CEST 2012


On date Tuesday 2012-10-16 13:37:20 +0200, Stefano Sabatini encoded:
> ---
>  libavcodec/utils.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/utils.c b/libavcodec/utils.c
> index 0b0bf9e..6292005 100644
> --- a/libavcodec/utils.c
> +++ b/libavcodec/utils.c
> @@ -826,14 +826,14 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code
>  
>      /* If there is a user-supplied mutex locking routine, call it. */
>      if (ff_lockmgr_cb) {
> -        if ((*ff_lockmgr_cb)(&codec_mutex, AV_LOCK_OBTAIN))
> -            return -1;
> +        if ((ret = (*ff_lockmgr_cb)(&codec_mutex, AV_LOCK_OBTAIN)) < 0)
> +            return ret;
>      }
>  
>      entangled_thread_counter++;
>      if (entangled_thread_counter != 1) {
>          av_log(avctx, AV_LOG_ERROR, "Insufficient thread locking around avcodec_open/close()\n");
> -        ret = -1;
> +        ret = AVERROR(EINVAL);
>          goto end;
>      }
>  
> @@ -868,7 +868,7 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code
>              av_log(avctx, AV_LOG_ERROR,
>                     "Codec %s is experimental but experimental codecs are not enabled, try -strict -2\n",
>                     avctx->codec->name);
> -            ret = -1;
> +            ret = AVERROR(EINVAL);
>              goto free_and_end;
>          }

Ping.
-- 
FFmpeg = Fanciful & Free Magnificient Ponderous Extroverse Guru


More information about the ffmpeg-devel mailing list