From 3f8c7c8d0d56b4763fd0cbe23ab7ce586efc337a Mon Sep 17 00:00:00 2001 From: Quantum Date: Wed, 11 Aug 2021 07:19:02 -0400 Subject: [PATCH] [client] egl: fix buffer overflow in desktop_rects module The module has been changed to support variable amount of rectangles, so we should just allocate a VLA. --- client/renderers/EGL/desktop_rects.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/renderers/EGL/desktop_rects.c b/client/renderers/EGL/desktop_rects.c index 04c5bff1..2e132453 100644 --- a/client/renderers/EGL/desktop_rects.c +++ b/client/renderers/EGL/desktop_rects.c @@ -107,7 +107,7 @@ inline static void rectToVertices(GLfloat * vertex, const FrameDamageRect * rect void egl_desktopRectsUpdate(EGL_DesktopRects * rects, const struct DamageRects * data, int width, int height) { - GLfloat vertices[KVMFR_MAX_DAMAGE_RECTS * 8]; + GLfloat vertices[(!data || data->count < 0 ? 1 : data->count) * 8]; if (!data || data->count < 0) { FrameDamageRect full = {