media: vicodec: fix memchr() kernel oops
The size passed to memchr is too large as it assumes the search starts at the start of the buffer, but it can start at an offset. Cc: <stable@vger.kernel.org> # for v4.19 and up Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
Родитель
0408b205f1
Коммит
cb3b2ffb75
|
@ -304,7 +304,8 @@ restart:
|
|||
for (; p < p_out + sz; p++) {
|
||||
u32 copy;
|
||||
|
||||
p = memchr(p, magic[ctx->comp_magic_cnt], sz);
|
||||
p = memchr(p, magic[ctx->comp_magic_cnt],
|
||||
p_out + sz - p);
|
||||
if (!p) {
|
||||
ctx->comp_magic_cnt = 0;
|
||||
break;
|
||||
|
|
Загрузка…
Ссылка в новой задаче