video/smscufx: fix line counting in fb_write
Line 0 and 1 were both written to line 0 (on the display) and all subsequent lines had an offset of -1. The result was that the last line on the display was never overwritten by writes to /dev/fbN. The origin of this bug seems to have been udlfb. Signed-off-by: Alexander Holler <holler@ahsoftware.de> Cc: stable@vger.kernel.org Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
This commit is contained in:
Родитель
659f675e4b
Коммит
2fe2d9f47c
|
@ -904,7 +904,7 @@ static ssize_t ufx_ops_write(struct fb_info *info, const char __user *buf,
|
|||
result = fb_sys_write(info, buf, count, ppos);
|
||||
|
||||
if (result > 0) {
|
||||
int start = max((int)(offset / info->fix.line_length) - 1, 0);
|
||||
int start = max((int)(offset / info->fix.line_length), 0);
|
||||
int lines = min((u32)((result / info->fix.line_length) + 1),
|
||||
(u32)info->var.yres);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче