From 469c9b5def450dbc50a71077df75f239cee7f4fa Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Fri, 12 Mar 2010 17:58:16 +0100
Subject: command: allow "update" with slash or empty path

When handle_update() was modified to use uri_safe_local(), suddently
"mpc update ''" and "mpc update '/'" stopped working, because both are
not a "safe" local URI.  This patch adds a special case for these, to
retain backwards compatibility.
---
 src/command.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

(limited to 'src')

diff --git a/src/command.c b/src/command.c
index ab1a7b0a9..a7fccbed4 100644
--- a/src/command.c
+++ b/src/command.c
@@ -1058,7 +1058,10 @@ handle_update(struct client *client, G_GNUC_UNUSED int argc, char *argv[])
 	if (argc == 2) {
 		path = argv[1];
 
-		if (!uri_safe_local(path)) {
+		if (*path == 0 || strcmp(path, "/") == 0)
+			/* backwards compatibility with MPD 0.15 */
+			path = NULL;
+		else if (!uri_safe_local(path)) {
 			command_error(client, ACK_ERROR_ARG,
 				      "Malformed path");
 			return COMMAND_RETURN_ERROR;
-- 
cgit v1.2.3