summaryrefslogtreecommitdiff
path: root/libavcodec/qtrle.c
diff options
context:
space:
mode:
authorLaurent Aimar <fenrir@videolan.org>2011-10-08 23:01:33 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-10-09 03:08:03 +0200
commita4ed7c3fe9f99b89f86b65710d8855dc572f1a25 (patch)
tree9a54bbdbb1d9843460ab80282b0fb1441f3b7885 /libavcodec/qtrle.c
parent6d45702f7f257c1cfcd3ce3287bf258854528a4a (diff)
qtrle: check for invalid line offset
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/qtrle.c')
-rw-r--r--libavcodec/qtrle.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/qtrle.c b/libavcodec/qtrle.c
index 752bbc1323..7383cf2dc3 100644
--- a/libavcodec/qtrle.c
+++ b/libavcodec/qtrle.c
@@ -464,6 +464,8 @@ static int qtrle_decode_frame(AVCodecContext *avctx,
stream_ptr += 4;
height = AV_RB16(&s->buf[stream_ptr]);
stream_ptr += 4;
+ if (height > s->avctx->height - start_line)
+ goto done;
} else {
start_line = 0;
height = s->avctx->height;