[FFmpeg-devel] [PATCH 2/3] avcodec/libx264: check for param allocation failure error code

James Almer jamrial at gmail.com
Sat Jul 11 03:41:00 EEST 2020


On 7/10/2020 7:26 PM, Carl Eugen Hoyos wrote:
> Am Fr., 10. Juli 2020 um 23:02 Uhr schrieb James Almer <jamrial at gmail.com>:
>>
>> And return the proper AVERROR value.
>>
>> Signed-off-by: James Almer <jamrial at gmail.com>
>> ---
>>  libavcodec/libx264.c | 11 ++++++++++-
>>  1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
>> index 4a82e1ba25..b39b89b565 100644
>> --- a/libavcodec/libx264.c
>> +++ b/libavcodec/libx264.c
>> @@ -529,6 +529,12 @@ static int parse_opts(AVCodecContext *avctx, const char *opt, const char *param)
>>              av_log(avctx, AV_LOG_ERROR,
>>                     "bad option '%s': '%s'\n", opt, param);
>>              ret = AVERROR(EINVAL);
>> +#if X264_BUILD >= 161
>> +        } else if (ret == X264_PARAM_ALLOC_FAILED) {
> 
> Why are these lines not merged?

If you mean adding the X264_BUILD check inside the if, because
X264_PARAM_ALLOC_FAILED is not defined in x264.h before the commit that
bumped X264_BUILD to 161.

if (X264_BUILD >= 161 && ret == X264_PARAM_ALLOC_FAILED)

Does not compile with old libx264 headers.

If it's not that, then not sure what you mean.

> 
>> +            av_log(avctx, AV_LOG_ERROR,
>> +                   "out of memory parsing option '%s': '%s'\n", opt, param);
>> +            ret = AVERROR(ENOMEM);
>> +#endif
> 
> Carl Eugen
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> 



More information about the ffmpeg-devel mailing list