Fixed major bug: drivers that accepted size arguments could wind

up with more than 80 characters (20x4) in their display, and thus
overwrite memory outside of the allocated 80 characterwframebuffer.

For example, using a 20x6 screen would do this.

All drivers now either ignore a missing framebuffer, or allocate it
themselves - the latter is prefered.
This commit is contained in:
ddouthitt
2001-09-27 23:46:55 +00:00
parent 71c3035611
commit 74153173c1
9 changed files with 16 additions and 57 deletions
-5
View File
@@ -148,11 +148,6 @@ sli_init (lcd_logical_driver * driver, char *args)
out[1] = 0x001; /* Clear LCD, not sure if this belongs here */
write (fd, out, 2);
if (!driver->framebuf) {
fprintf (stderr, "sli_init: No frame buffer.\n");
sli_close ();
return -1;
}
// Set LCD parameters (I use a 16x2 LCD) -- small but still useful
// Its also much cheaper than the higher quality Matrix Orbital modules
// Currently, $30 for interface kit and 16x2 non-backlit LCD...