summaryrefslogtreecommitdiff
path: root/libavcodec/indeo3.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-11-25 17:47:17 +0100
committerMichael Niedermayer <michaelni@gmx.at>2011-11-25 17:55:23 +0100
commite9e642cbfbf36285f60d1dba00103f068b077940 (patch)
tree7ee513e8be75b7068e45e7bc7422334ce9cc3d00 /libavcodec/indeo3.c
parenta7cfef2994d3ceeafb056050533addcd45c32b6a (diff)
indeo3: Check remaining bits in parse_bintree()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/indeo3.c')
-rw-r--r--libavcodec/indeo3.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/indeo3.c b/libavcodec/indeo3.c
index 22984db66e..b20c3fc676 100644
--- a/libavcodec/indeo3.c
+++ b/libavcodec/indeo3.c
@@ -736,7 +736,7 @@ static int parse_bintree(Indeo3DecodeContext *ctx, AVCodecContext *avctx,
ref_cell->width -= curr_cell.width;
}
- while (1) { /* loop until return */
+ while (get_bits_left(&ctx->gb) >= 2) { /* loop until return */
RESYNC_BITSTREAM;
switch (code = get_bits(&ctx->gb, 2)) {
case H_SPLIT:
@@ -789,7 +789,7 @@ static int parse_bintree(Indeo3DecodeContext *ctx, AVCodecContext *avctx,
}
}//while
- return 0;
+ return AVERROR_INVALIDDATA;
}