summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2010-08-01 11:37:02 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2010-08-01 11:37:02 +0000
commit9e2cd39d52c57783ab1bae10daa0ff79f8335e6a (patch)
tree8cab4536cf5af3f0d45eff7dcadf1af7cbc975fb
parentbefffc877d41652963052312912a5ee86a5f3b6a (diff)
downloadrockbox-9e2cd39d52c57783ab1bae10daa0ff79f8335e6a.tar.gz
rockbox-9e2cd39d52c57783ab1bae10daa0ff79f8335e6a.zip
Fix FS#11508 - remote LCD targets crash because the remote wps fails to load
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27653 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/gui/skin_engine/skin_parser.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index 5048b27f8e..e5c89ab2b1 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -194,6 +194,12 @@ static int parse_statusbar_tags(struct skin_element* element,
194 { 194 {
195 viewport_set_fullscreen(&default_vp->vp, curr_screen); 195 viewport_set_fullscreen(&default_vp->vp, curr_screen);
196 } 196 }
197#ifdef HAVE_REMOTE_LCD
198 /* viewport_set_defaults() sets the font to FONT_UI+curr_screen.
199 * This parser requires font 1 to always be the UI font,
200 * so force it back to FONT_UI and handle the screen number at the end */
201 default_vp->vp.font = FONT_UI;
202#endif
197 } 203 }
198 return 0; 204 return 0;
199} 205}
@@ -991,6 +997,11 @@ static bool load_skin_bitmaps(struct wps_data *wps_data, char *bmpdir)
991 */ 997 */
992 if (wps_data->backdrop) 998 if (wps_data->backdrop)
993 { 999 {
1000 if (screens[curr_screen].depth == 1)
1001 {
1002 wps_data->backdrop = NULL;
1003 return retval;
1004 }
994 bool needed = wps_data->backdrop[0] != '-'; 1005 bool needed = wps_data->backdrop[0] != '-';
995 wps_data->backdrop = skin_backdrop_load(wps_data->backdrop, 1006 wps_data->backdrop = skin_backdrop_load(wps_data->backdrop,
996 bmpdir, curr_screen); 1007 bmpdir, curr_screen);
@@ -1081,6 +1092,12 @@ static int convert_viewport(struct wps_data *data, struct skin_element* element)
1081 curr_viewport_element = element; 1092 curr_viewport_element = element;
1082 1093
1083 viewport_set_defaults(&skin_vp->vp, curr_screen); 1094 viewport_set_defaults(&skin_vp->vp, curr_screen);
1095#ifdef HAVE_REMOTE_LCD
1096 /* viewport_set_defaults() sets the font to FONT_UI+curr_screen.
1097 * This parser requires font 1 to always be the UI font,
1098 * so force it back to FONT_UI and handle the screen number at the end */
1099 skin_vp->vp.font = FONT_UI;
1100#endif
1084 1101
1085#if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) 1102#if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1086 skin_vp->start_fgcolour = skin_vp->vp.fg_pattern; 1103 skin_vp->start_fgcolour = skin_vp->vp.fg_pattern;