]> git.seodisparate.com - mpd_info_screen/commitdiff
WIP actually use "error_text" in MPDHandler
authorStephen Seo <seo.disparate@gmail.com>
Tue, 14 Dec 2021 10:15:23 +0000 (19:15 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Tue, 14 Dec 2021 10:15:23 +0000 (19:15 +0900)
src/mpd_handler.rs

index 546f7c2dd9391e9c90ddec50dfbcb0749c84ed83..7369a8a292cca51b74ce6d5392fa5b227ac5965e 100644 (file)
@@ -424,20 +424,25 @@ impl MPDHandler {
                         PollState::Password => {
                             write_handle.can_authenticate = false;
                             write_handle.dirty_flag.store(true, Ordering::Relaxed);
+                            write_handle.error_text = "Failed to authenticate to MPD".into();
                         }
                         PollState::CurrentSong | PollState::Status => {
                             write_handle.can_get_status = false;
                             write_handle.dirty_flag.store(true, Ordering::Relaxed);
+                            write_handle.error_text = "Failed to get MPD status".into();
                         }
                         PollState::ReadPicture => {
                             write_handle.can_get_album_art = false;
                             write_handle.dirty_flag.store(true, Ordering::Relaxed);
                             println!("Failed to get readpicture");
+                            // Not setting error_text here since
+                            // ReadPictureInDir is tried next
                         }
                         PollState::ReadPictureInDir => {
                             write_handle.can_get_album_art_in_dir = false;
                             write_handle.dirty_flag.store(true, Ordering::Relaxed);
                             println!("Failed to get albumart");
+                            write_handle.error_text = "Failed to get album art from MPD".into();
                         }
                         _ => (),
                     }
@@ -456,6 +461,7 @@ impl MPDHandler {
                         write_handle.current_song_position = 0.0;
                         write_handle.did_check_overtime = false;
                         write_handle.force_get_status = true;
+                        write_handle.error_text.clear();
                     }
                     write_handle.dirty_flag.store(true, Ordering::Relaxed);
                     write_handle.song_title_get_time = Instant::now();