Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be5a1509 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

media: vicodec: fix out-of-range values when decoding



While decoding you need to make sure you do not get values < 0
or > 255. Note that since this code will also be used in userspace
utilities the clamp macro isn't used since that is kernel-only.

Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent cd12b401
Loading
Loading
Loading
Loading
+8 −2
Original line number Original line Diff line number Diff line
@@ -625,8 +625,14 @@ static void fill_decoder_block(u8 *dst, const s16 *input, int stride)
	int i, j;
	int i, j;


	for (i = 0; i < 8; i++) {
	for (i = 0; i < 8; i++) {
		for (j = 0; j < 8; j++)
		for (j = 0; j < 8; j++, input++, dst++) {
			*dst++ = *input++;
			if (*input < 0)
				*dst = 0;
			else if (*input > 255)
				*dst = 255;
			else
				*dst = *input;
		}
		dst += stride - 8;
		dst += stride - 8;
	}
	}
}
}