Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 28 Jun 2013 08:08:43 +0000 (10:08 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 28 Jun 2013 08:08:43 +0000 (10:08 +0200)
* qatar/master:
  aac: return meaningful errors

Conflicts:
libavcodec/aacdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/aacdec.c

@@@ -725,8 -686,8 +725,8 @@@ static int decode_pce(AVCodecContext *a
      /* comment field, first byte is length */
      comment_len = get_bits(gb, 8) * 8;
      if (get_bits_left(gb) < comment_len) {
 -        av_log(avctx, AV_LOG_ERROR, overread_err);
 +        av_log(avctx, AV_LOG_ERROR, "decode_pce: " overread_err);
-         return -1;
+         return AVERROR_INVALIDDATA;
      }
      skip_bits_long(gb, comment_len);
      return tags;
@@@ -821,16 -782,14 +821,15 @@@ static int decode_audio_specific_config
                                          int sync_extension)
  {
      GetBitContext gb;
-     int i;
-     int ret;
+     int i, ret;
  
 -    av_dlog(avctx, "extradata size %d\n", avctx->extradata_size);
 -    for (i = 0; i < avctx->extradata_size; i++)
 -        av_dlog(avctx, "%02x ", avctx->extradata[i]);
 +    av_dlog(avctx, "audio specific config size %d\n", bit_size >> 3);
 +    for (i = 0; i < bit_size >> 3; i++)
 +        av_dlog(avctx, "%02x ", data[i]);
      av_dlog(avctx, "\n");
  
 -    init_get_bits(&gb, data, bit_size);
 +    if ((ret = init_get_bits(&gb, data, bit_size)) < 0)
 +        return ret;
  
      if ((i = avpriv_mpeg4audio_get_config(m4ac, data, bit_size,
                                            sync_extension)) < 0)
@@@ -1040,8 -993,8 +1042,8 @@@ static int skip_data_stream_element(AAC
          align_get_bits(gb);
  
      if (get_bits_left(gb) < 8 * count) {
 -        av_log(ac->avctx, AV_LOG_ERROR, overread_err);
 +        av_log(ac->avctx, AV_LOG_ERROR, "skip_data_stream_element: "overread_err);
-         return -1;
+         return AVERROR_INVALIDDATA;
      }
      skip_bits_long(gb, 8 * count);
      return 0;
@@@ -1178,8 -1128,8 +1180,8 @@@ static int decode_band_types(AACContex
                  sect_len_incr = get_bits(gb, bits);
                  sect_end += sect_len_incr;
                  if (get_bits_left(gb) < 0) {
 -                    av_log(ac->avctx, AV_LOG_ERROR, overread_err);
 +                    av_log(ac->avctx, AV_LOG_ERROR, "decode_band_types: "overread_err);
-                     return -1;
+                     return AVERROR_INVALIDDATA;
                  }
                  if (sect_end > ics->max_sfb) {
                      av_log(ac->avctx, AV_LOG_ERROR,