summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2010-06-22 09:44:55 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2010-06-22 09:44:55 +0000
commit7de980cd7a06475a645d4586b53fbe662e844624 (patch)
treee7400417bb7eed7a8f71cfe6f1855edc06fe79f4 /apps
parent5a44e43870d6f172aebb9d659cec5427d587f587 (diff)
downloadrockbox-7de980cd7a06475a645d4586b53fbe662e844624.zip
rockbox-7de980cd7a06475a645d4586b53fbe662e844624.tar.gz
rockbox-7de980cd7a06475a645d4586b53fbe662e844624.tar.bz2
rockbox-7de980cd7a06475a645d4586b53fbe662e844624.tar.xz
fiddle with the code a bit so gcc doesnt optimise out a struct viewport causeing crashes in text_viewer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27045 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/statusbar.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/apps/gui/statusbar.c b/apps/gui/statusbar.c
index 901615d..dfd6cb3 100644
--- a/apps/gui/statusbar.c
+++ b/apps/gui/statusbar.c
@@ -278,16 +278,7 @@ void gui_statusbar_draw(struct gui_statusbar * bar, bool force_redraw, struct vi
#endif
memcmp(&(bar->info), &(bar->lastinfo), sizeof(struct status_info)))
{
- if (vp == NULL)
- {
- struct viewport viewport;
- GET_RECT(viewport,statusbar_position(display->screen_type),display);
- display->set_viewport(&viewport);
- }
- else
- {
- display->set_viewport(vp);
- }
+ display->set_viewport(vp);
display->set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID);
display->fillrect(0, 0, display->getwidth(), STATUSBAR_HEIGHT);
display->set_drawmode(DRMODE_SOLID);
@@ -829,8 +820,10 @@ void gui_syncstatusbar_draw(struct gui_syncstatusbar * bars,
return;
#endif /* HAVE_LCD_BITMAP */
int i;
+ struct viewport viewport;
FOR_NB_SCREENS(i) {
- gui_statusbar_draw( &(bars->statusbars[i]), force_redraw, NULL );
+ GET_RECT(viewport,statusbar_position(i),&screens[i]);
+ gui_statusbar_draw( &(bars->statusbars[i]), force_redraw, &viewport );
}
}