Index: playlist_viewer.c =================================================================== --- playlist_viewer.c (revision 21601) +++ playlist_viewer.c (working copy) @@ -418,10 +418,18 @@ /* Reload tracks */ viewer.num_tracks = nb_tracks; if (viewer.num_tracks <= 0) + { + global_status.resume_index = -1; + global_status.resume_offset = -1; return false; + } playlist_buffer_load_entries_screen(&viewer.buffer, FORWARD); if (viewer.buffer.num_loaded <= 0) + { + global_status.resume_index = -1; + global_status.resume_offset = -1; return false; + } } return true; } @@ -457,7 +465,9 @@ if (current) { if (playlist_amount_ex(viewer.playlist) <= 0) + { audio_stop(); + } else { /* Start playing new track except if it's the lasttrack @@ -716,13 +726,15 @@ ret = true; goto exit; } - else if (ret > 0) + else if (ret_val > 0) { /* Playlist changed */ gui_synclist_del_item(&playlist_lists); update_playlist(true); if (viewer.num_tracks <= 0) + { exit = true; + } if(viewer.selected_track >= viewer.num_tracks) viewer.selected_track = viewer.num_tracks-1; }