diff options
Diffstat (limited to 'apps/menus/playlist_menu.c')
-rw-r--r-- | apps/menus/playlist_menu.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/apps/menus/playlist_menu.c b/apps/menus/playlist_menu.c index 87ed7428ea..e527e3ebef 100644 --- a/apps/menus/playlist_menu.c +++ b/apps/menus/playlist_menu.c | |||
@@ -39,6 +39,7 @@ | |||
39 | #include "playlist_catalog.h" | 39 | #include "playlist_catalog.h" |
40 | #include "splash.h" | 40 | #include "splash.h" |
41 | #include "filetree.h" | 41 | #include "filetree.h" |
42 | #include "general.h" | ||
42 | 43 | ||
43 | /* load a screen to save the playlist passed in (or current playlist if NULL is passed) */ | 44 | /* load a screen to save the playlist passed in (or current playlist if NULL is passed) */ |
44 | int save_playlist_screen(struct playlist_info* playlist) | 45 | int save_playlist_screen(struct playlist_info* playlist) |
@@ -54,29 +55,27 @@ int save_playlist_screen(struct playlist_info* playlist) | |||
54 | char temp[MAX_PATH+1], *p; | 55 | char temp[MAX_PATH+1], *p; |
55 | int len; | 56 | int len; |
56 | 57 | ||
58 | catalog_get_directory(directoryonly, sizeof(directoryonly)); | ||
57 | playlist_get_name(playlist, temp, sizeof(temp)-1); | 59 | playlist_get_name(playlist, temp, sizeof(temp)-1); |
58 | 60 | ||
59 | len = strlen(temp); | 61 | len = strlen(temp); |
60 | 62 | ||
61 | if (len <= 1) /* root or dynamic playlist */ | 63 | if (len <= 1) /* root or dynamic playlist */ |
62 | { | 64 | create_numbered_filename(temp, directoryonly, PLAYLIST_UNTITLED_PREFIX, ".m3u8", |
63 | catalog_get_directory(temp, sizeof(temp)); | 65 | 1 IF_CNFN_NUM_(, NULL)); |
64 | strlcat(temp, DEFAULT_DYNAMIC_PLAYLIST_NAME, sizeof(temp)); | ||
65 | } | ||
66 | else if (!strcmp((temp + len - 1), "/")) /* dir playlists other than root */ | 66 | else if (!strcmp((temp + len - 1), "/")) /* dir playlists other than root */ |
67 | { | 67 | { |
68 | temp[len - 1] = '\0'; | 68 | temp[len - 1] = '\0'; |
69 | catalog_get_directory(directoryonly, sizeof(directoryonly)); | ||
70 | 69 | ||
71 | if ((p = strrchr(temp, '/'))) /* use last path component as playlist name */ | 70 | if ((p = strrchr(temp, '/'))) /* use last path component as playlist name */ |
72 | { | 71 | { |
73 | strlcat(directoryonly, p, sizeof(directoryonly)); | 72 | strlcat(directoryonly, p, sizeof(directoryonly)); |
74 | strlcat(directoryonly, ".m3u8", sizeof(directoryonly)); | 73 | strlcat(directoryonly, ".m3u8", sizeof(directoryonly)); |
74 | strmemccpy(temp, directoryonly, sizeof(temp)); | ||
75 | } | 75 | } |
76 | else | 76 | else |
77 | strlcat(directoryonly, DEFAULT_DYNAMIC_PLAYLIST_NAME, sizeof(directoryonly)); | 77 | create_numbered_filename(temp, directoryonly, PLAYLIST_UNTITLED_PREFIX, ".m3u8", |
78 | 78 | 1 IF_CNFN_NUM_(, NULL)); | |
79 | strmemccpy(temp, directoryonly, sizeof(temp)); | ||
80 | } | 79 | } |
81 | 80 | ||
82 | if (catalog_pick_new_playlist_name(temp, sizeof(temp), | 81 | if (catalog_pick_new_playlist_name(temp, sizeof(temp), |