diff options
Diffstat (limited to 'apps/gui')
-rw-r--r-- | apps/gui/skin_engine/skin_tokens.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/apps/gui/skin_engine/skin_tokens.c b/apps/gui/skin_engine/skin_tokens.c index e58393e19c..33ffc53a9c 100644 --- a/apps/gui/skin_engine/skin_tokens.c +++ b/apps/gui/skin_engine/skin_tokens.c | |||
@@ -254,17 +254,27 @@ const char *get_id3_token(struct wps_token *token, struct mp3entry *id3, | |||
254 | case SKIN_TOKEN_METADATA_GENRE: | 254 | case SKIN_TOKEN_METADATA_GENRE: |
255 | return id3->genre_string; | 255 | return id3->genre_string; |
256 | case SKIN_TOKEN_METADATA_DISC_NUMBER: | 256 | case SKIN_TOKEN_METADATA_DISC_NUMBER: |
257 | if (id3->disc_string) | 257 | if (id3->disc_string) { |
258 | if (intval) | ||
259 | *intval = atoi(id3->disc_string); | ||
258 | return id3->disc_string; | 260 | return id3->disc_string; |
261 | } | ||
259 | if (id3->discnum) { | 262 | if (id3->discnum) { |
263 | if (intval) | ||
264 | *intval = id3->discnum; | ||
260 | snprintf(buf, buf_size, "%d", id3->discnum); | 265 | snprintf(buf, buf_size, "%d", id3->discnum); |
261 | return buf; | 266 | return buf; |
262 | } | 267 | } |
263 | return NULL; | 268 | return NULL; |
264 | case SKIN_TOKEN_METADATA_TRACK_NUMBER: | 269 | case SKIN_TOKEN_METADATA_TRACK_NUMBER: |
265 | if (id3->track_string) | 270 | if (id3->track_string) { |
271 | if (intval) | ||
272 | *intval = atoi(id3->track_string); | ||
266 | return id3->track_string; | 273 | return id3->track_string; |
274 | } | ||
267 | if (id3->tracknum) { | 275 | if (id3->tracknum) { |
276 | if (intval) | ||
277 | *intval = id3->tracknum; | ||
268 | snprintf(buf, buf_size, "%d", id3->tracknum); | 278 | snprintf(buf, buf_size, "%d", id3->tracknum); |
269 | return buf; | 279 | return buf; |
270 | } | 280 | } |