diff options
Diffstat (limited to 'firmware/drivers/lcd-bitmap-common.c')
-rw-r--r-- | firmware/drivers/lcd-bitmap-common.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c index afb7662638..586c74578f 100644 --- a/firmware/drivers/lcd-bitmap-common.c +++ b/firmware/drivers/lcd-bitmap-common.c | |||
@@ -254,7 +254,8 @@ static void LCDFN(putsxyofs_style)(int xpos, int ypos, | |||
254 | current_vp->drawmode = (style & STYLE_INVERT) ? | 254 | current_vp->drawmode = (style & STYLE_INVERT) ? |
255 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; | 255 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; |
256 | } | 256 | } |
257 | lcd_putsxyofs(xpos, ypos, offset, str); | 257 | if (str[0]) |
258 | lcd_putsxyofs(xpos, ypos, offset, str); | ||
258 | current_vp->fg_pattern = oldfgcolor; | 259 | current_vp->fg_pattern = oldfgcolor; |
259 | current_vp->bg_pattern = oldbgcolor; | 260 | current_vp->bg_pattern = oldbgcolor; |
260 | #else | 261 | #else |
@@ -262,7 +263,8 @@ static void LCDFN(putsxyofs_style)(int xpos, int ypos, | |||
262 | 0 : DRMODE_INVERSEVID); | 263 | 0 : DRMODE_INVERSEVID); |
263 | LCDFN(fillrect)(x, ypos, current_vp->width - xrect, h); | 264 | LCDFN(fillrect)(x, ypos, current_vp->width - xrect, h); |
264 | current_vp->drawmode ^= DRMODE_INVERSEVID; | 265 | current_vp->drawmode ^= DRMODE_INVERSEVID; |
265 | LCDFN(putsxyofs)(xpos, ypos, offset, str); | 266 | if (str[0]) |
267 | LCDFN(putsxyofs)(xpos, ypos, offset, str); | ||
266 | #endif | 268 | #endif |
267 | current_vp->drawmode = lastmode; | 269 | current_vp->drawmode = lastmode; |
268 | } | 270 | } |
@@ -275,7 +277,7 @@ void LCDFN(puts_style_offset)(int x, int y, const unsigned char *str, | |||
275 | { | 277 | { |
276 | int xpos, ypos, w, h; | 278 | int xpos, ypos, w, h; |
277 | LCDFN(scroll_stop_line)(current_vp, y); | 279 | LCDFN(scroll_stop_line)(current_vp, y); |
278 | if(!str || !str[0]) | 280 | if(!str) |
279 | return; | 281 | return; |
280 | 282 | ||
281 | LCDFN(getstringsize)(str, &w, &h); | 283 | LCDFN(getstringsize)(str, &w, &h); |
@@ -323,7 +325,7 @@ void LCDFN(puts_scroll_style_offset)(int x, int y, const unsigned char *string, | |||
323 | return; | 325 | return; |
324 | 326 | ||
325 | /* remove any previously scrolling line at the same location */ | 327 | /* remove any previously scrolling line at the same location */ |
326 | lcd_scroll_stop_line(current_vp, y); | 328 | LCDFN(scroll_stop_line)(current_vp, y); |
327 | 329 | ||
328 | if (LCDFN(scroll_info).lines >= LCDM(SCROLLABLE_LINES)) return; | 330 | if (LCDFN(scroll_info).lines >= LCDM(SCROLLABLE_LINES)) return; |
329 | if (!string) | 331 | if (!string) |