diff --git a/NEWS b/NEWS
index 7d87ee243..b302870dc 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,7 @@
 ver 0.17.5 (not yet released)
 * protocol:
   - fix "playlistadd" with URI
+  - fix "move" relative to current when there is no current song
 * configure.ac:
   - detect system "ar"
 
diff --git a/src/playlist_edit.c b/src/playlist_edit.c
index d10f49451..8042f2f76 100644
--- a/src/playlist_edit.c
+++ b/src/playlist_edit.c
@@ -396,7 +396,12 @@ playlist_move_range(struct playlist *playlist, struct player_control *pc,
 		? (int)queue_order_to_position(&playlist->queue,
 					      playlist->current)
 		: -1;
-	if (to < 0 && playlist->current >= 0) {
+	if (to < 0) {
+		if (currentSong < 0)
+			/* can't move relative to current song,
+			   because there is no current song */
+			return PLAYLIST_RESULT_BAD_RANGE;
+
 		if (start <= (unsigned)currentSong && (unsigned)currentSong < end)
 			/* no-op, can't be moved to offset of itself */
 			return PLAYLIST_RESULT_SUCCESS;