diff options
author | Alexander Holler <holler@ahsoftware.de> | 2012-08-14 03:11:09 -0400 |
---|---|---|
committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2012-10-09 22:02:45 -0400 |
commit | b8c4321f3d194469007f5f5f2b34ec278c264a04 (patch) | |
tree | ce17b6ee47c11341bca03e1a8a44bd21db5cc710 | |
parent | ebe9f7b02590d870506ef493483fe4abdb08e967 (diff) |
video/udlfb: 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.
Cc: stable@vger.kernel.org
Signed-off-by: Alexander Holler <holler@ahsoftware.de>
Acked-by: Bernie Thompson <bernie@plugable.com>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
-rw-r--r-- | drivers/video/udlfb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/video/udlfb.c b/drivers/video/udlfb.c index 8af64148294b..38fcfff3c911 100644 --- a/drivers/video/udlfb.c +++ b/drivers/video/udlfb.c | |||
@@ -647,7 +647,7 @@ static ssize_t dlfb_ops_write(struct fb_info *info, const char __user *buf, | |||
647 | result = fb_sys_write(info, buf, count, ppos); | 647 | result = fb_sys_write(info, buf, count, ppos); |
648 | 648 | ||
649 | if (result > 0) { | 649 | if (result > 0) { |
650 | int start = max((int)(offset / info->fix.line_length) - 1, 0); | 650 | int start = max((int)(offset / info->fix.line_length), 0); |
651 | int lines = min((u32)((result / info->fix.line_length) + 1), | 651 | int lines = min((u32)((result / info->fix.line_length) + 1), |
652 | (u32)info->var.yres); | 652 | (u32)info->var.yres); |
653 | 653 | ||