From 33bd2180107848d3ac9af0411cd9d5cd44dbe697 Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Sat, 6 May 2006 06:37:23 +0000 Subject: Patch #5182 by Liberman Shachar - Vertical screen scroll bug fix (inverse bar crop in vertical scroll) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9881 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/lcd-2bit-horz.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'firmware/drivers/lcd-2bit-horz.c') diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c index abe608f6b6..14bf952bb2 100644 --- a/firmware/drivers/lcd-2bit-horz.c +++ b/firmware/drivers/lcd-2bit-horz.c @@ -747,7 +747,7 @@ void lcd_puts_offset(int x, int y, const unsigned char *str, int offset) void lcd_puts_style_offset(int x, int y, const unsigned char *str, int style, int offset) { - int xpos,ypos,w,h; + int xpos,ypos,w,h,xrect; int lastmode = drawmode; /* make sure scrolling is turned off on the line we are updating */ @@ -763,7 +763,8 @@ void lcd_puts_style_offset(int x, int y, const unsigned char *str, (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; lcd_putsxyofs(xpos, ypos, offset, str); drawmode ^= DRMODE_INVERSEVID; - lcd_fillrect(xpos + w - offset, ypos, LCD_WIDTH - (xpos + w - offset), h); + xrect = xpos + MAX(w - offset, 0); + lcd_fillrect(xrect, ypos, LCD_WIDTH - xrect, h); drawmode = lastmode; } -- cgit v1.2.3