---
 libavcodec/aacdec.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
index 5740d6c..0cae155 100644
--- a/libavcodec/aacdec.c
+++ b/libavcodec/aacdec.c
@@ -589,10 +589,11 @@ static av_cold int aac_decode_init(AVCodecContext *avctx)
         ac->m4ac.chan_config = i;
 
         if (ac->m4ac.chan_config) {
-            if (set_default_channel_config(avctx, new_che_pos, 
ac->m4ac.chan_config) < 0 &&
-                avctx->error_recognition >= FF_ER_EXPLODE)
-              return AVERROR_INVALIDDATA;
-            output_configure(ac, ac->che_pos, new_che_pos, 
ac->m4ac.chan_config, OC_GLOBAL_HDR);
+            int ret = set_default_channel_config(avctx, new_che_pos, 
ac->m4ac.chan_config);
+            if (!ret)
+                output_configure(ac, ac->che_pos, new_che_pos, 
ac->m4ac.chan_config, OC_GLOBAL_HDR);
+            else if (avctx->error_recognition >= FF_ER_EXPLODE)
+                return AVERROR_INVALIDDATA;
         }
     }
 
-- 
1.7.3.1

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to