blob: ddfeb7f967a64273cd8970cb5b4433d415a5df22 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
From 7f70f194ae135bd1e856c2dc811b8fa4a56296ea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Thu, 20 Sep 2012 09:41:56 +0300
Subject: [PATCH] fbsplash: use virtual y size in mmap size calculations
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The virtual y can be larger - and we can be even writing there since
we are taking into account the y offset. Avoids possible crash.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
---
miscutils/fbsplash.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/miscutils/fbsplash.c b/miscutils/fbsplash.c
index 7b695b2..58e491d 100644
--- a/miscutils/fbsplash.c
+++ b/miscutils/fbsplash.c
@@ -150,7 +150,7 @@ static void fb_open(const char *strfb_device)
// map the device in memory
G.addr = mmap(NULL,
- G.scr_var.yres * G.scr_fix.line_length,
+ G.scr_var.yres_virtual * G.scr_fix.line_length,
PROT_WRITE, MAP_SHARED, fbfd, 0);
if (G.addr == MAP_FAILED)
bb_perror_msg_and_die("mmap");
--
2.1.3
|