瀏覽代碼

Don't panic when no autoplay uri is obtained

For example from Liked Songs (`spotify:user:xxx:collection`)
ashthespy 4 年之前
父節點
當前提交
6c6ba88590
共有 1 個文件被更改,包括 8 次插入4 次删除
  1. 8 4
      connect/src/spirc.rs

+ 8 - 4
connect/src/spirc.rs

@@ -795,10 +795,14 @@ impl SpircTask {
         let query_uri = format!("hm://autoplay-enabled/query?uri={}", uri);
         let request = self.session.mercury().get(query_uri);
         Box::new(request.and_then(move |response| {
-            let data = response.payload.first().expect("Empty autoplay uri").to_vec();
-            let autoplay_uri = String::from_utf8(data).unwrap();
-
-            Ok(autoplay_uri)
+            if response.status_code == 200 {
+                let data = response.payload.first().expect("Empty autoplay uri").to_vec();
+                let autoplay_uri = String::from_utf8(data).unwrap();
+                Ok(autoplay_uri)
+            } else {
+                warn!("No autoplay_uri found");
+                Err(MercuryError)
+            }
         }))
     }