summaryrefslogtreecommitdiff
path: root/apps/gui
diff options
context:
space:
mode:
authorMagnus Holmgren <magnushol@gmail.com>2010-08-15 07:08:23 +0000
committerMagnus Holmgren <magnushol@gmail.com>2010-08-15 07:08:23 +0000
commitac2c69ccae5db7d5e22acf976910cdf3be84fe5a (patch)
tree55ca852431d91fe3a6c8e6ac9f3c8e8dc15802f0 /apps/gui
parentb413169b2ef5d94b2574afe0122c476ad703f4ff (diff)
Allow 'long' labels with single-argument %xd too. The label need to be at least 3 chars long (2 chars are treated as a single-letter-label image with a subimage).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27820 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui')
-rw-r--r--apps/gui/skin_engine/skin_parser.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index 8fca8724f6..68cb01470c 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -228,14 +228,15 @@ static int parse_image_display(struct skin_element *element,
struct wps_data *wps_data)
{
char *label = element->params[0].data.text;
- char sublabel = label[1];
+ char sublabel = '\0';
int subimage;
struct gui_img *img;
struct image_display *id = skin_buffer_alloc(sizeof(struct image_display));
- if (element->params_count == 1)
+ if (element->params_count == 1 && strlen(label) <= 2)
{
/* backwards compatability. Allow %xd(Aa) to still work */
+ sublabel = label[1];
label[1] = '\0';
}
/* sanity check */