mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-21 06:49:35 +00:00
term/i386/pc/vga_text: Prevent out-of-bounds writes to VGA text buffer
Coordinates passed to screen_write_char() did not have any checks to ensure they are not out-of-bounds. This adds an if statement to prevent out-of-bounds writes to the VGA text buffer. Signed-off-by: Ryan Cohen <rcohenprogramming@gmail.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
1 parent
544fd63f0f
commit
108a3865f4
1 file changed
+2
-1
@@ -63,7 +63,8 @@ static grub_uint8_t cur_color = 0x7;
|
|||||||
static void
|
static void
|
||||||
screen_write_char (int x, int y, short c)
|
screen_write_char (int x, int y, short c)
|
||||||
{
|
{
|
||||||
VGA_TEXT_SCREEN[y * COLS + x] = grub_cpu_to_le16 (c);
|
if (x < COLS && y < ROWS && x >= 0 && y >= 0)
|
||||||
|
VGA_TEXT_SCREEN[y * COLS + x] = grub_cpu_to_le16 (c);
|
||||||
}
|
}
|
||||||
|
|
||||||
static short
|
static short
|
||||||
|
|||||||
Reference in new issue
Block a user