summaryrefslogtreecommitdiff
path: root/firmware/drivers/lcd-2bit-horz.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers/lcd-2bit-horz.c')
-rw-r--r--firmware/drivers/lcd-2bit-horz.c5
1 files changed, 3 insertions, 2 deletions
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)
747void lcd_puts_style_offset(int x, int y, const unsigned char *str, 747void lcd_puts_style_offset(int x, int y, const unsigned char *str,
748 int style, int offset) 748 int style, int offset)
749{ 749{
750 int xpos,ypos,w,h; 750 int xpos,ypos,w,h,xrect;
751 int lastmode = drawmode; 751 int lastmode = drawmode;
752 752
753 /* make sure scrolling is turned off on the line we are updating */ 753 /* 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,
763 (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; 763 (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID;
764 lcd_putsxyofs(xpos, ypos, offset, str); 764 lcd_putsxyofs(xpos, ypos, offset, str);
765 drawmode ^= DRMODE_INVERSEVID; 765 drawmode ^= DRMODE_INVERSEVID;
766 lcd_fillrect(xpos + w - offset, ypos, LCD_WIDTH - (xpos + w - offset), h); 766 xrect = xpos + MAX(w - offset, 0);
767 lcd_fillrect(xrect, ypos, LCD_WIDTH - xrect, h);
767 drawmode = lastmode; 768 drawmode = lastmode;
768} 769}
769 770