diff --git a/NEWS b/NEWS
index a15642e22..0bc2471eb 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,5 @@
 ver 0.21.10 (not yet released)
+* fix crash bug (0.21.9 regression)
 
 ver 0.21.9 (2019/05/20)
 * input
diff --git a/src/player/Thread.cxx b/src/player/Thread.cxx
index 7d81011f6..028842b61 100644
--- a/src/player/Thread.cxx
+++ b/src/player/Thread.cxx
@@ -996,7 +996,7 @@ Player::Run() noexcept
 			}
 		}
 
-		if (dc.IsIdle() && queued) {
+		if (dc.IsIdle() && queued && IsDecoderAtCurrentSong()) {
 			/* the decoder has finished the current song;
 			   make it decode the next song */