avcodec/iff: Fix invalid pointer intermediates in decode_deep_rle32()

Reviewed-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2020-04-21 00:03:39 +02:00
parent 64b80cb04b
commit bc41a29a5a

View File

@ -715,7 +715,7 @@ static void decode_deep_rle32(uint8_t *dst, const uint8_t *src, int src_size, in
{
const uint8_t *src_end = src + src_size;
int x = 0, y = 0, i;
while (src + 5 <= src_end) {
while (src_end - src >= 5) {
int opcode;
opcode = *(int8_t *)src++;
if (opcode >= 0) {