summaryrefslogtreecommitdiff
path: root/libavcodec/mdec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-05-19 05:12:45 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-05-19 06:00:31 +0200
commit75a37b57a59f6701d9443c5f7a0ceec108b27a18 (patch)
tree1eea866003f3d7385261dea40b5b8063e87f9b8a /libavcodec/mdec.c
parent8529f9b36b7c1b8f2cb36ba2709983517c4b6458 (diff)
parent41e21e4db623ebd77f431a6f30cf21d62d9e1f33 (diff)
downloadffmpeg-75a37b57a59f6701d9443c5f7a0ceec108b27a18.tar.gz
Merge remote-tracking branch 'qatar/master'
* qatar/master: APIchanges: fill in date and commit for request_sample_fmt Add floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders. Add support for request_sample_format in ffmpeg and ffplay. Add APIchanges entry for request_sample_fmt. Add request_sample_fmt field to AVCodecContext. Add float_interleave() to FmtConvertContext with x86-optimized versions. Remove unused make variable SEEK_REFFILE fate: remove redundant aref and vref references fate: remove do_ffmpeg_nocheck function fate: do not collect -benchmark output mpegaudiodec: remove decode_end() function fate: run aref and vref as regular tests mpegaudio: sanitise compute_antialias_* names mpeg12: add slice-threading checks to slice-threading initializers. h264: copy pixel_shift between slice threading contexts. mdec: enable frame-level multithreading. mdec.c: fix overread. Conflicts: libavcodec/aacdec.c libavcodec/ac3dec.c libavcodec/avcodec.h libavcodec/dca.c libavcodec/h264.c libavcodec/mdec.c libavcodec/mpeg12.c libavcodec/options.c libavcodec/version.h libavcodec/vorbisdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/mdec.c')
-rw-r--r--libavcodec/mdec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c
index 30cd3ab176..5f540f05f2 100644
--- a/libavcodec/mdec.c
+++ b/libavcodec/mdec.c
@@ -126,7 +126,8 @@ static inline int decode_mb(MDECContext *a, DCTELEM block[6][64]){
a->dsp.clear_blocks(block[0]);
for(i=0; i<6; i++){
- if( mdec_decode_block_intra(a, block[ block_index[i] ], block_index[i]) < 0)
+ if( mdec_decode_block_intra(a, block[ block_index[i] ], block_index[i]) < 0 ||
+ get_bits_left(&a->gb) < 0)
return -1;
}
return 0;
@@ -252,6 +253,7 @@ static av_cold int decode_init_thread_copy(AVCodecContext *avctx){
return 0;
}
+
static av_cold int decode_end(AVCodecContext *avctx){
MDECContext * const a = avctx->priv_data;