Index: trunk/apps/menus/playlist_menu.c =================================================================== --- trunk.orig/apps/menus/playlist_menu.c +++ trunk/apps/menus/playlist_menu.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "config.h" #include "lang.h" #include "action.h" @@ -49,8 +50,12 @@ int save_playlist_screen(struct playlist if (len > 4 && !strcasecmp(&temp[len-4], ".m3u")) strcat(temp, "8"); - if (len <= 5 || strcasecmp(&temp[len-5], ".m3u8")) - strcpy(temp, DEFAULT_DYNAMIC_PLAYLIST_NAME); + if (len <= 5 || strcasecmp(&temp[len-5], ".m3u8")) { + char *dir = get_playlist_dir(); + if(dir) + snprintf(temp, MAX_PATH, "%s/%s", + dir, DEFAULT_DYNAMIC_PLAYLIST_NAME); + } if (!kbd_input(temp, sizeof(temp))) { Index: trunk/apps/playlist_catalog.c =================================================================== --- trunk.orig/apps/playlist_catalog.c +++ trunk/apps/playlist_catalog.c @@ -479,3 +479,10 @@ bool catalog_add_to_a_playlist(char* sel else return false; } + +char *get_playlist_dir(void) +{ + if (initialize_catalog() == -1) + return NULL; + return playlist_dir; +} Index: trunk/apps/playlist_catalog.h =================================================================== --- trunk.orig/apps/playlist_catalog.h +++ trunk/apps/playlist_catalog.h @@ -35,5 +35,6 @@ bool catalog_view_playlists(void); * ret : true if the file was successfully added */ bool catalog_add_to_a_playlist(char* sel, int sel_attr, bool new_playlist); +char *get_playlist_dir(void); #endif