[PATCH] fbsplash: use virtual y size in mmap size calculations
Timo Teräs
timo.teras at iki.fi
Wed Jul 22 12:17:54 UTC 2015
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.
But use it only if set, seems it is not set if virtual area is not
allocated (though, often fbcon allocates some scrollback area).
Signed-off-by: Timo Teräs <timo.teras at 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..e05ab3b 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_var.yres) * G.scr_fix.line_length,
PROT_WRITE, MAP_SHARED, fbfd, 0);
if (G.addr == MAP_FAILED)
bb_perror_msg_and_die("mmap");
--
2.2.0
More information about the busybox
mailing list