X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fsgidec.c;h=6f93a3059e16235e1358382a0a751e78a427b9d5;hb=851960f6f8cf1f946fe42fa36cf6598fac68072c;hp=c827ff555974ef9d03c5f78da36443f4ccdc360c;hpb=def97856de6021965db86c25a732d78689bd6bb0;p=ffmpeg diff --git a/libavcodec/sgidec.c b/libavcodec/sgidec.c index c827ff55597..6f93a3059e1 100644 --- a/libavcodec/sgidec.c +++ b/libavcodec/sgidec.c @@ -229,13 +229,13 @@ static int decode_frame(AVCodecContext *avctx, if (s->bytes_per_channel != 1 && s->bytes_per_channel != 2) { av_log(avctx, AV_LOG_ERROR, "wrong channel number\n"); - return -1; + return AVERROR(EINVAL); } /* Check for supported image dimensions. */ if (dimension != 2 && dimension != 3) { av_log(avctx, AV_LOG_ERROR, "wrong dimension number\n"); - return -1; + return AVERROR(EINVAL); } if (s->depth == SGI_GRAYSCALE) { @@ -246,16 +246,17 @@ static int decode_frame(AVCodecContext *avctx, avctx->pix_fmt = s->bytes_per_channel == 2 ? AV_PIX_FMT_RGBA64BE : AV_PIX_FMT_RGBA; } else { av_log(avctx, AV_LOG_ERROR, "wrong picture format\n"); - return -1; + return AVERROR(EINVAL); } ret = ff_set_dimensions(avctx, s->width, s->height); if (ret < 0) return ret; - if (ff_get_buffer(avctx, p, 0) < 0) { + ret = ff_get_buffer(avctx, p, 0); + if (ret < 0) { av_log(avctx, AV_LOG_ERROR, "get_buffer() failed.\n"); - return -1; + return ret; } p->pict_type = AV_PICTURE_TYPE_I;