summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/wps-display.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/apps/wps-display.c b/apps/wps-display.c
index 630546d455..5d6290d244 100644
--- a/apps/wps-display.c
+++ b/apps/wps-display.c
@@ -338,16 +338,13 @@ static char* get_tag(struct mp3entry* id3,
338 break; 338 break;
339 339
340 case 'd': /* Directory path information */ 340 case 'd': /* Directory path information */
341 switch(tag[1])
342 { 341 {
343 case '1': /* Parent folder */ 342 int level = tag[1] - '0';
344 return get_dir(buf, buf_size, id3->path, 1); 343 /* d1 through d9 */
345 344 if ((0 < level) && (9 > level))
346 case '2': /* Parent of parent */ 345 {
347 return get_dir(buf, buf_size, id3->path, 2); 346 return get_dir(buf, buf_size, id3->path, level);
348 347 }
349 case '3': /* Parent of parent of parent */
350 return get_dir(buf, buf_size, id3->path, 3);
351 } 348 }
352 break; 349 break;
353 } 350 }