mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-14 02:27:39 -04:00
Playlist Catalogue: fix: "Save Current Playlist" may fail silently
- After rebooting, unless the current playlist had been manually resumed already, the "Save Current Playlist" option in the root menu's/ playlist catalogue's context menu failed to work. - Eliminate error message attempting to view current playlist when no control file present. Change-Id: I58f1d3dc6f256fcee106ff5a17f69fa46d67b2e4
This commit is contained in:
parent
897a96996b
commit
e5c9846cb4
3 changed files with 17 additions and 1 deletions
|
@ -48,6 +48,21 @@ int save_playlist_screen(struct playlist_info* playlist)
|
|||
|
||||
char temp[MAX_PATH+1], *p;
|
||||
int len;
|
||||
bool audio_stopped = !(audio_status() & AUDIO_STATUS_PLAY);
|
||||
|
||||
/* After a reboot, we may need to resume the playlist
|
||||
first, or it will not contain any indices when
|
||||
user selects "Save Current Playlist" from playlist
|
||||
catalogue's context menu in root menu */
|
||||
if (!playlist && audio_stopped && !playlist_get_current()->started)
|
||||
{
|
||||
if (!file_exists(PLAYLIST_CONTROL_FILE) || playlist_resume() == -1)
|
||||
{
|
||||
splash(HZ, ID2P(LANG_CATALOG_NO_PLAYLISTS));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
catalog_get_directory(directoryonly, sizeof(directoryonly));
|
||||
playlist_get_name(playlist, temp, sizeof(temp)-1);
|
||||
|
|
|
@ -2048,6 +2048,7 @@ struct playlist_info* playlist_load(const char* dir, const char* file,
|
|||
{
|
||||
playlist->max_playlist_size = current_playlist.max_playlist_size;
|
||||
playlist->indices = current_playlist.indices;
|
||||
current_playlist.started = false;
|
||||
}
|
||||
|
||||
new_playlist_unlocked(playlist, dir, file);
|
||||
|
|
|
@ -387,7 +387,7 @@ static bool playlist_viewer_init(struct playlist_viewer * viewer,
|
|||
if (!filename && !is_playing)
|
||||
{
|
||||
/* Try to restore the list from control file */
|
||||
if (playlist_resume() == -1)
|
||||
if (!file_exists(PLAYLIST_CONTROL_FILE) || playlist_resume() == -1)
|
||||
{
|
||||
/* Nothing to view, exit */
|
||||
splash(HZ, ID2P(LANG_CATALOG_NO_PLAYLISTS));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue