Index: apps/filetree.h =================================================================== RCS file: /cvsroot/rockbox/apps/filetree.h,v retrieving revision 1.4 diff -u -r1.4 filetree.h --- apps/filetree.h 18 Jan 2005 22:50:47 -0000 1.4 +++ apps/filetree.h 4 Jul 2006 06:43:50 -0000 @@ -22,7 +22,7 @@ int ft_load(struct tree_context* c, const char* tempdir); int ft_play_filenumber(int pos, int attr); -int ft_play_dirname(int start_index); +int ft_play_dirname(int start_index, char* name); void ft_play_filename(char *dir, char *file); int ft_enter(struct tree_context* c); int ft_exit(struct tree_context* c); Index: apps/tree.c =================================================================== RCS file: /cvsroot/rockbox/apps/tree.c,v retrieving revision 1.411 diff -u -r1.411 tree.c --- apps/tree.c 2 Jul 2006 12:28:27 -0000 1.411 +++ apps/tree.c 4 Jul 2006 06:43:59 -0000 @@ -833,7 +833,7 @@ if (attr & ATTR_DIRECTORY) { DEBUGF("Playing directory thumbnail: %s", currdir); - res = ft_play_dirname(lasti); + res = ft_play_dirname(lasti, name); if (res < 0) /* failed, not existing */ { /* say the number instead, as a fallback */ talk_id(VOICE_DIR, false); @@ -1296,17 +1296,16 @@ return 1; } -int ft_play_dirname(int start_index) +int ft_play_dirname(int start_index, char* name) { int fd; char dirname_mp3_filename[MAX_PATH+1]; - struct entry *dircache = tc.dircache; if (audio_status() & AUDIO_STATUS_PLAY) return 0; snprintf(dirname_mp3_filename, sizeof(dirname_mp3_filename), "%s/%s/%s", - tc.currdir[1] ? tc.currdir : "" , dircache[start_index].name, + tc.currdir[1] ? tc.currdir : "" , name, dir_thumbnail_name); DEBUGF("Checking for %s\n", dirname_mp3_filename);