aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Holler <holler@ahsoftware.de>2012-04-21 00:11:07 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-08-15 08:10:08 -0700
commit8b0331a46c6aa9f853e1208b0ce137c4d1d4fc1a (patch)
treeb99052ec326569a53678b9ba43486de85522e810
parentfb060f3d95d29c385063151c8a09faa4d1a02f2f (diff)
downloadparrot-8b0331a46c6aa9f853e1208b0ce137c4d1d4fc1a.tar.gz
video/smscufx: fix line counting in fb_write
commit 2fe2d9f47cfe1a3e66e7d087368b3d7155b04c15 upstream. 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> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/video/smscufx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/video/smscufx.c b/drivers/video/smscufx.c
index ccbfef5e828f3..1e1e2d267f4c3 100644
--- a/drivers/video/smscufx.c
+++ b/drivers/video/smscufx.c
@@ -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);