From 1a31dff9370b4732c91df5cb1ca4b39f2cb3050e Mon Sep 17 00:00:00 2001
From: Anton Khirnov <anton@khirnov.net>
Date: Mon, 19 Nov 2012 18:43:40 +0100
Subject: [PATCH] loco: return meaningful error codes.

---
 libavcodec/loco.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/libavcodec/loco.c b/libavcodec/loco.c
index 6f49992a619..e9ce4825338 100644
--- a/libavcodec/loco.c
+++ b/libavcodec/loco.c
@@ -165,15 +165,15 @@ static int decode_frame(AVCodecContext *avctx,
     int buf_size = avpkt->size;
     LOCOContext * const l = avctx->priv_data;
     AVFrame * const p = &l->pic;
-    int decoded;
+    int decoded, ret;
 
     if(p->data[0])
         avctx->release_buffer(avctx, p);
 
     p->reference = 0;
-    if(ff_get_buffer(avctx, p) < 0){
+    if ((ret = ff_get_buffer(avctx, p)) < 0) {
         av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
-        return -1;
+        return ret;
     }
     p->key_frame = 1;
 
@@ -237,7 +237,7 @@ static av_cold int decode_init(AVCodecContext *avctx){
     if (avctx->extradata_size < 12) {
         av_log(avctx, AV_LOG_ERROR, "Extradata size must be >= 12 instead of %i\n",
                avctx->extradata_size);
-        return -1;
+        return AVERROR_INVALIDDATA;
     }
     version = AV_RL32(avctx->extradata);
     switch(version) {
@@ -268,7 +268,7 @@ static av_cold int decode_init(AVCodecContext *avctx){
         break;
     default:
         av_log(avctx, AV_LOG_INFO, "Unknown colorspace, index = %i\n", l->mode);
-        return -1;
+        return AVERROR_INVALIDDATA;
     }
     if(avctx->debug & FF_DEBUG_PICT_INFO)
         av_log(avctx, AV_LOG_INFO, "lossy:%i, version:%i, mode: %i\n", l->lossy, version, l->mode);
-- 
GitLab