From 30ca11fce4e023e52fe9872b959f3a4a5a1e12e2 Mon Sep 17 00:00:00 2001 From: Dan Barber Date: Sun, 3 Mar 2019 19:18:53 -0500 Subject: [PATCH] Reset the queuePos to -1 on queue change This avoids the index ever being out of range which is what was causing the crash. The queuePos gets updated straight after the queue anyway. --- Persephone/DataSources/QueueDataSource.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Persephone/DataSources/QueueDataSource.swift b/Persephone/DataSources/QueueDataSource.swift index 0158e15..e6d0038 100644 --- a/Persephone/DataSources/QueueDataSource.swift +++ b/Persephone/DataSources/QueueDataSource.swift @@ -18,6 +18,8 @@ class QueueDataSource: NSObject, NSOutlineViewDataSource { let pauseIcon = NSImage(named: "pauseButton") func updateQueue(_ queue: [MPDClient.Song]) { + queuePos = -1 + self.queue = queue.enumerated().map { index, song in SongItem(song: song, queuePos: index, isPlaying: index == queuePos) }