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
+2 -3
View File
@@ -447,9 +447,8 @@ stv5730_init (struct lcd_logical_driver *driver, char *args)
memset (driver->framebuf, 0, STV5730_WID * STV5730_HGT);
driver->cellwid = 4;
driver->cellhgt = 6; // FIXME: stv5730->cellwid always stays 5
// regardless what it is set to here. This is
// a bug but not inside this driver.
driver->cellhgt = 6;
driver->clear = stv5730_clear;
driver->string = stv5730_string;
driver->chr = stv5730_chr;