From 0edfa79b23163be51d3ee1678f5ff87b5207f636 Mon Sep 17 00:00:00 2001 From: Stefano Sabatini Date: Sat, 13 Mar 2010 19:19:40 +0000 Subject: [PATCH] Make iff.c:decode_init return the value returned by avctx->get_buffer() in case of error, rather than AVERROR_UNKNOWN which is deprecated, and mark AVERROR_UNKNOWN for deletion at the next major bump. Originally committed as revision 22512 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/iff.c | 5 +++-- libavutil/error.h | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/iff.c b/libavcodec/iff.c index 490d347ec0..19671d767f 100644 --- a/libavcodec/iff.c +++ b/libavcodec/iff.c @@ -61,6 +61,7 @@ int ff_cmap_read_palette(AVCodecContext *avctx, uint32_t *pal) static av_cold int decode_init(AVCodecContext *avctx) { IffContext *s = avctx->priv_data; + int err; if (avctx->bits_per_coded_sample <= 8) { avctx->pix_fmt = PIX_FMT_PAL8; @@ -76,9 +77,9 @@ static av_cold int decode_init(AVCodecContext *avctx) return AVERROR(ENOMEM); s->frame.reference = 1; - if (avctx->get_buffer(avctx, &s->frame) < 0) { + if ((err = avctx->get_buffer(avctx, &s->frame) < 0)) { av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); - return AVERROR_UNKNOWN; + return err; } return avctx->bits_per_coded_sample <= 8 ? diff --git a/libavutil/error.h b/libavutil/error.h index a386c1f651..51c613c56d 100644 --- a/libavutil/error.h +++ b/libavutil/error.h @@ -33,7 +33,11 @@ #define AVERROR(e) (e) #define AVUNERROR(e) (e) #endif + +#if LIBAVUTIL_VERSION_MAJOR < 51 #define AVERROR_UNKNOWN AVERROR(EINVAL) /**< unknown error */ +#endif + #define AVERROR_IO AVERROR(EIO) /**< I/O error */ #define AVERROR_NUMEXPECTED AVERROR(EDOM) /**< Number syntax expected in filename. */ #define AVERROR_INVALIDDATA AVERROR(EINVAL) /**< invalid data found */