aac: propagate error return values for AV_LOG_ERROR-triggering events
authorDustin Brody <libav@parsoma.net>
Fri, 5 Aug 2011 02:32:09 +0000 (22:32 -0400)
committerAlex Converse <alex.converse@gmail.com>
Fri, 5 Aug 2011 19:35:49 +0000 (12:35 -0700)
libavcodec/aacdec.c

index 783bf99..5740d6c 100644 (file)
@@ -589,7 +589,9 @@ static av_cold int aac_decode_init(AVCodecContext *avctx)
         ac->m4ac.chan_config = i;
 
         if (ac->m4ac.chan_config) {
-            set_default_channel_config(avctx, new_che_pos, 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);
         }
     }