From 0807f6464f7a50d43cb69329d79bfd462ad991ea Mon Sep 17 00:00:00 2001 From: Henrik Friedrichsen Date: Sun, 24 Mar 2019 13:23:45 +0100 Subject: [PATCH] bugfix: don't panic when an invalid index is to be played this can be triggered by commands or when hitting return in an empty queue view. we shouldn't crash in that case.. --- src/queue.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/queue.rs b/src/queue.rs index bfbe537..57912b8 100644 --- a/src/queue.rs +++ b/src/queue.rs @@ -106,12 +106,13 @@ impl Queue { } pub fn play(&self, index: usize) { - let track = &self.queue.read().unwrap()[index]; - self.spotify.load(&track); - let mut current = self.current_track.write().unwrap(); - current.replace(index); - self.spotify.play(); - self.spotify.update_track(); + if let Some(track) = &self.queue.read().unwrap().get(index) { + self.spotify.load(&track); + let mut current = self.current_track.write().unwrap(); + current.replace(index); + self.spotify.play(); + self.spotify.update_track(); + } } pub fn toggleplayback(&self) {