diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-07-16 01:05:24 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-07-16 01:05:24 +0000 |
commit | bb236ce89c82478a589d68d2cc83c5b145758d12 (patch) | |
tree | f0a6708308aca4c7e302591769ce41ecf0dc7857 /apps/gui | |
parent | 765c4f1a97a0fbe080e1d6c9f8c253bfb0f1b46a (diff) | |
download | rockbox-bb236ce89c82478a589d68d2cc83c5b145758d12.tar.gz rockbox-bb236ce89c82478a589d68d2cc83c5b145758d12.zip |
prevent the parser crashing if a font fails to load and is refresencd in more than one viewport
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27443 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui')
-rw-r--r-- | apps/gui/skin_engine/skin_parser.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c index cca2c956b7..886aeaed56 100644 --- a/apps/gui/skin_engine/skin_parser.c +++ b/apps/gui/skin_engine/skin_parser.c | |||
@@ -2219,7 +2219,10 @@ static bool skin_load_fonts(struct wps_data *data) | |||
2219 | struct skin_font *font = &skinfonts[font_id-FONT_FIRSTUSERFONT]; | 2219 | struct skin_font *font = &skinfonts[font_id-FONT_FIRSTUSERFONT]; |
2220 | if (!font->name) | 2220 | if (!font->name) |
2221 | { | 2221 | { |
2222 | DEBUGF("font %d not specified\n", font_id); | 2222 | if (success) |
2223 | { | ||
2224 | DEBUGF("font %d not specified\n", font_id); | ||
2225 | } | ||
2223 | success = false; | 2226 | success = false; |
2224 | continue; | 2227 | continue; |
2225 | } | 2228 | } |
@@ -2238,6 +2241,7 @@ static bool skin_load_fonts(struct wps_data *data) | |||
2238 | DEBUGF("Unable to load font %d: '%s.fnt'\n", | 2241 | DEBUGF("Unable to load font %d: '%s.fnt'\n", |
2239 | font_id, font->name); | 2242 | font_id, font->name); |
2240 | success = false; | 2243 | success = false; |
2244 | font->name = NULL; | ||
2241 | continue; | 2245 | continue; |
2242 | } | 2246 | } |
2243 | 2247 | ||