diff options
Diffstat (limited to 'apps/plugins')
-rw-r--r-- | apps/plugins/puzzles/rockbox.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/plugins/puzzles/rockbox.c b/apps/plugins/puzzles/rockbox.c index 7a29f341f0..94482cec69 100644 --- a/apps/plugins/puzzles/rockbox.c +++ b/apps/plugins/puzzles/rockbox.c | |||
@@ -86,10 +86,10 @@ static void rb_clip(void *handle, int x, int y, int w, int h) | |||
86 | if(!settings.clipoff) | 86 | if(!settings.clipoff) |
87 | { | 87 | { |
88 | LOGF("rb_clip(%d %d %d %d)", x, y, w, h); | 88 | LOGF("rb_clip(%d %d %d %d)", x, y, w, h); |
89 | clip_rect.x = x; | 89 | clip_rect.x = MAX(0, x); |
90 | clip_rect.y = y; | 90 | clip_rect.y = MAX(0, y); |
91 | clip_rect.width = w; | 91 | clip_rect.width = MIN(LCD_WIDTH, w); |
92 | clip_rect.height = h; | 92 | clip_rect.height = MIN(LCD_HEIGHT, h); |
93 | clip_rect.font = FONT_UI; | 93 | clip_rect.font = FONT_UI; |
94 | clip_rect.drawmode = DRMODE_SOLID; | 94 | clip_rect.drawmode = DRMODE_SOLID; |
95 | #if LCD_DEPTH > 1 | 95 | #if LCD_DEPTH > 1 |
@@ -663,7 +663,7 @@ static void rb_end_draw(void *handle) | |||
663 | LOGF("rb_end_draw"); | 663 | LOGF("rb_end_draw"); |
664 | 664 | ||
665 | if(need_draw_update) | 665 | if(need_draw_update) |
666 | rb->lcd_update_rect(ud_l, ud_u, ud_r - ud_l, ud_d - ud_u); | 666 | rb->lcd_update_rect(MAX(0, ud_l), MAX(0, ud_u), MIN(LCD_WIDTH, ud_r - ud_l), MIN(LCD_HEIGHT, ud_d - ud_u)); |
667 | } | 667 | } |
668 | 668 | ||
669 | static char *titlebar = NULL; | 669 | static char *titlebar = NULL; |