Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 22 Mar 2012 22:16:49 +0000 (23:16 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 22 Mar 2012 22:16:49 +0000 (23:16 +0100)
* qatar/master:
  xwma: Validate channels and bits_per_coded_sample.
  mov: Do not read past the end of the ctts_data table.
  mov: Add missing terminator to mov_ch_layout_map_1ch.
  asf: reset side data elements on packet copy.
  wmavoice: fix stack overread.
  wmalossless: error out if a subframe is not used by any channel.
  vqa: check palette chunk size before reading data.
  wmalossless: reset sample pointer for each subframe.
  wmalossless: error out on invalid values for order.

Conflicts:
libavcodec/vqavideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/vqavideo.c
libavcodec/wmalosslessdec.c
libavcodec/wmavoice.c
libavformat/asfdec.c
libavformat/mov.c
libavformat/xwma.c

@@@ -401,8 -396,8 +401,8 @@@ static int vqa_decode_chunk(VqaContext 
          bytestream2_seek(&s->gb, cpl0_chunk, SEEK_SET);
          chunk_size = bytestream2_get_be32(&s->gb);
          /* sanity check the palette size */
-         if (chunk_size / 3 > 256) {
+         if (chunk_size / 3 > 256 || chunk_size > bytestream2_get_bytes_left(&s->gb)) {
 -            av_log(s->avctx, AV_LOG_ERROR, "  VQA video: problem: found a palette chunk with %d colors\n",
 +            av_log(s->avctx, AV_LOG_ERROR, "problem: found a palette chunk with %d colors\n",
                  chunk_size / 3);
              return AVERROR_INVALIDDATA;
          }
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge