[SCM] libav/experimental: Make faac_decode_frame return -1 on error and not 0 which avoids stalling and infinite loop. Patch by Baptiste COUDURIER <baptiste coudurier at smartjog com>

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:46:51 UTC 2013


The following commit has been merged in the experimental branch:
commit 980bbb13d653561d83619350db32ccb5e5248f95
Author: Baptiste Coudurier <baptiste.coudurier at smartjog.com>
Date:   Sun Mar 5 12:32:24 2006 +0000

    Make faac_decode_frame return -1 on error and not 0 which avoids
    stalling and infinite loop.
    Patch by Baptiste COUDURIER <baptiste coudurier at smartjog com>
    
    Originally committed as revision 5110 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/faad.c b/libavcodec/faad.c
index 15e451b..49cc789 100644
--- a/libavcodec/faad.c
+++ b/libavcodec/faad.c
@@ -164,7 +164,7 @@ static int faac_decode_frame(AVCodecContext *avctx,
         if(r < 0){
             av_log(avctx, AV_LOG_ERROR, "faac: codec init failed: %s\n",
                    s->faacDecGetErrorMessage(frame_info.error));
-            return 0;
+            return -1;
         }
         avctx->sample_rate = srate;
         avctx->channels = channels;
@@ -176,7 +176,7 @@ static int faac_decode_frame(AVCodecContext *avctx,
     if (frame_info.error > 0) {
         av_log(avctx, AV_LOG_ERROR, "faac: frame decoding failed: %s\n",
                 s->faacDecGetErrorMessage(frame_info.error));
-        return 0;
+        return -1;
     }
 
     frame_info.samples *= s->sample_size;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list