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:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user