diff options
-rw-r--r-- | apps/playlist_viewer.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/apps/playlist_viewer.c b/apps/playlist_viewer.c index d06a3f3df6..68fec4e153 100644 --- a/apps/playlist_viewer.c +++ b/apps/playlist_viewer.c | |||
@@ -231,7 +231,7 @@ static bool retrieve_track_metadata(struct mp3entry *id3, const char *filename, | |||
231 | #if defined(HAVE_TC_RAMCACHE) && defined(HAVE_DIRCACHE) | 231 | #if defined(HAVE_TC_RAMCACHE) && defined(HAVE_DIRCACHE) |
232 | /* try to get the id3 data from the database */ | 232 | /* try to get the id3 data from the database */ |
233 | /* the database, doesn't store frequency, file size or codec (g4470) ChrisS*/ | 233 | /* the database, doesn't store frequency, file size or codec (g4470) ChrisS*/ |
234 | if ((flags & METADATA_EXCLUDE_ID3_PATH) || !tagcache_fill_tags(id3, filename)) | 234 | if (!(flags & METADATA_EXCLUDE_ID3_PATH) || !tagcache_fill_tags(id3, filename)) |
235 | #endif | 235 | #endif |
236 | /* fall back to reading the file from disk */ | 236 | /* fall back to reading the file from disk */ |
237 | { | 237 | { |
@@ -718,10 +718,23 @@ static enum pv_onplay_result onplay_menu(int index) | |||
718 | ret = viewer.playlist ? PV_ONPLAY_UNCHANGED : PV_ONPLAY_SAVED; | 718 | ret = viewer.playlist ? PV_ONPLAY_UNCHANGED : PV_ONPLAY_SAVED; |
719 | break; | 719 | break; |
720 | case 7: | 720 | case 7: |
721 | { | ||
722 | int last_display = global_settings.playlist_viewer_track_display; | ||
721 | /* playlist viewer settings */ | 723 | /* playlist viewer settings */ |
722 | result = do_menu(&viewer_settings_menu, NULL, NULL, false); | 724 | result = do_menu(&viewer_settings_menu, NULL, NULL, false); |
723 | ret = (result == MENU_ATTACHED_USB) ? PV_ONPLAY_USB : PV_ONPLAY_UNCHANGED; | 725 | |
726 | |||
727 | if (result == MENU_ATTACHED_USB) | ||
728 | ret = PV_ONPLAY_USB; | ||
729 | else | ||
730 | { | ||
731 | if (last_display != global_settings.playlist_viewer_track_display) | ||
732 | update_playlist(true);/* reload buffer */ | ||
733 | |||
734 | ret = PV_ONPLAY_UNCHANGED; | ||
735 | } | ||
724 | break; | 736 | break; |
737 | } | ||
725 | #ifdef HAVE_TAGCACHE | 738 | #ifdef HAVE_TAGCACHE |
726 | case 8: | 739 | case 8: |
727 | ret = open_pictureflow(current_track); | 740 | ret = open_pictureflow(current_track); |