summaryrefslogtreecommitdiff
path: root/libavcodec/mpegpicture.c
diff options
context:
space:
mode:
authorPan Bian <bianpan2016@163.com>2017-11-27 20:41:10 +0800
committerMichael Niedermayer <michael@niedermayer.cc>2017-11-28 21:42:48 +0100
commit89f9332fdf8948daa50a29e1a9fa9488041351a3 (patch)
treefdc43b7be7880e44fc4f4d9f0174f9710a8c3769 /libavcodec/mpegpicture.c
parent96e340760824e537e2d034abf9a3b8be3e2b312c (diff)
downloadffmpeg-89f9332fdf8948daa50a29e1a9fa9488041351a3.tar.gz
avcodec: set correct return value in ff_mpeg_ref_picture
In function ff_mpeg_ref_picture(), it returns 0 on the error path that the return value of av_buffer_ref() is NULL. 0 indicates success, which seems to deviate from the fact. Set ret to AVERROR(ENOMEM) to propagate the error status to the callers. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/mpegpicture.c')
-rw-r--r--libavcodec/mpegpicture.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/mpegpicture.c b/libavcodec/mpegpicture.c
index 2b72346fb2..2be670cdbc 100644
--- a/libavcodec/mpegpicture.c
+++ b/libavcodec/mpegpicture.c
@@ -375,8 +375,10 @@ int ff_mpeg_ref_picture(AVCodecContext *avctx, Picture *dst, Picture *src)
if (src->hwaccel_picture_private) {
dst->hwaccel_priv_buf = av_buffer_ref(src->hwaccel_priv_buf);
- if (!dst->hwaccel_priv_buf)
+ if (!dst->hwaccel_priv_buf) {
+ ret = AVERROR(ENOMEM);
goto fail;
+ }
dst->hwaccel_picture_private = dst->hwaccel_priv_buf->data;
}