diff --git a/src/main.rs b/src/main.rs index b568c22..66b27ad 100644 --- a/src/main.rs +++ b/src/main.rs @@ -169,25 +169,16 @@ fn main() -> Result<(), Error> { break 'event_loop; } Event::TrackChanged(mut metadata) => { + // we can't use the event metadata - it's incomplete ::std::thread::sleep(Duration::from_millis(250)); metadata = player.get_metadata().unwrap_or(metadata); - let mut title = metadata.title().unwrap_or(""); + let title = metadata.title().unwrap_or(""); info!("--- new track : {} ---", title); if title.is_empty() { - warn!("!!! Spotify is giving us garbage - empty metadata struct !!!"); - - ::std::thread::sleep(Duration::from_millis(250)); - metadata = player.get_metadata().unwrap_or(metadata); - title = metadata.title().unwrap_or(""); - info!("After metadata reload -> new track : {}", title); - - if title.is_empty() { - // wait for next event - warn!("Still bad"); - continue 'event_loop; - } + warn!("Empty metadata! Wait for next track..."); + continue 'event_loop; } let mut skip = !config.allow_by_default;