aacdec: don't return frames without data from aac_decode_er_frame
authorAndreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Mon, 9 Nov 2015 21:16:01 +0000 (22:16 +0100)
committerRostislav Pehlivanov <atomnuker@gmail.com>
Tue, 10 Nov 2015 02:12:38 +0000 (02:12 +0000)
This is similar to commit ec38a1b for aac_decode_frame_int.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/aacdec_template.c

index c279510..70cffe6 100644 (file)
@@ -2901,6 +2901,11 @@ static int aac_decode_er_frame(AVCodecContext *avctx, void *data,
 
     spectral_to_sample(ac, samples);
 
+    if (!ac->frame->data[0] && samples) {
+        av_log(avctx, AV_LOG_ERROR, "no frame data found\n");
+        return AVERROR_INVALIDDATA;
+    }
+
     ac->frame->nb_samples = samples;
     ac->frame->sample_rate = avctx->sample_rate;
     *got_frame_ptr = 1;