Fixes valgrind errors reported for FATE sample
fate-h264-conformance-frext-pph10i4_panasonic_a.
---
libavcodec/h264_cavlc.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/libavcodec/h264_cavlc.c b/libavcodec/h264_cavlc.c
index 2e5ea54..30b5411 100644
--- a/libavcodec/h264_cavlc.c
+++ b/libavcodec/h264_cavlc.c
@@ -400,6 +400,12 @@ static int decode_residual(H264Context *h, GetBitContext
*gb, DCTELEM *block, in
tprintf(h->s.avctx, "trailing:%d, total:%d\n", trailing_ones, total_coeff);
assert(total_coeff<=16);
+ if (get_bits_left(gb) < trailing_ones) {
+ av_log(h->s.avctx, AV_LOG_ERROR,
+ "corrupt MB %d %d (not enough data)\n", s->mb_x, s->mb_y);
+ return -1;
+ }
+
i = show_bits(gb, 3);
skip_bits(gb, trailing_ones);
level[0] = 1-((i&4)>>1);
--
1.7.4.4
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel