[PATCH 3/3] 2d-primitives: check dimensions in __illuminate
Bastian Stender
bst at pengutronix.de
Thu Feb 23 08:45:27 PST 2017
gl_draw_circle draws outside of the screen if the resolution is too low.
This lead to memory corruption. Check the dimensions before drawing.
Signed-off-by: Bastian Stender <bst at pengutronix.de>
---
lib/gui/2d-primitives.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/gui/2d-primitives.c b/lib/gui/2d-primitives.c
index f3814eea44..0f29b32bab 100644
--- a/lib/gui/2d-primitives.c
+++ b/lib/gui/2d-primitives.c
@@ -13,6 +13,9 @@ static void __illuminate(struct fb_info *info,
{
void *pixel;
+ if (x < 0 || y < 0 || x >= info->xres || y >= info->yres)
+ return;
+
pixel = fb_get_screen_base(info);
pixel += y * info->line_length + x * (info->bits_per_pixel >> 3);
--
2.11.0
More information about the barebox
mailing list