mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-24 03:59:43 +00:00
avcodec/interplayvideo: fix dead-lock
Fixes #6499. Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
parent
613ccdaaac
commit
ed782bebf5
@ -1044,7 +1044,7 @@ static void ipvideo_decode_format_10_opcodes(IpvideoContext *s, AVFrame *frame)
|
||||
for (x = 0; x < s->avctx->width; x += 8) {
|
||||
s->pixel_ptr = s->cur_decode_frame->data[0] + x + y * s->cur_decode_frame->linesize[0];
|
||||
|
||||
while (skip <= 0) {
|
||||
while (skip <= 0 && bytestream2_get_bytes_left(&decoding_map_ptr) > 1) {
|
||||
if (skip != -0x8000 && skip) {
|
||||
opcode = bytestream2_get_le16(&decoding_map_ptr);
|
||||
ipvideo_format_10_passes[pass](s, frame, opcode);
|
||||
@ -1069,6 +1069,8 @@ static void ipvideo_decode_format_10_opcodes(IpvideoContext *s, AVFrame *frame)
|
||||
changed_block = 1;
|
||||
break;
|
||||
}
|
||||
if (bytestream2_get_bytes_left(&skip_map_ptr) < 2)
|
||||
return AVERROR_INVALIDDATA;
|
||||
skip = bytestream2_get_le16(&skip_map_ptr);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user