From bb3b836dbbd50c8a64aff23e55f5edf487ac6b0f Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 7 Feb 2014 18:41:42 +0100 Subject: [PATCH] FileCommands: support remove database files --- src/command/FileCommands.cxx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/command/FileCommands.cxx b/src/command/FileCommands.cxx index b8480559c..e5cc9690f 100644 --- a/src/command/FileCommands.cxx +++ b/src/command/FileCommands.cxx @@ -152,14 +152,21 @@ handle_read_comments(Client &client, gcc_unused int argc, char *argv[]) #ifdef ENABLE_DATABASE } - AllocatedPath path_fs = storage->MapFS(uri); - if (path_fs.IsNull()) { - command_error(client, ACK_ERROR_NO_EXIST, - "No such file"); - return CommandResult::ERROR; + { + AllocatedPath path_fs = storage->MapFS(uri); + if (!path_fs.IsNull()) + return read_file_comments(client, path_fs); } - return read_file_comments(client, path_fs); + { + const std::string uri2 = storage->MapUTF8(uri); + if (uri_has_scheme(uri2.c_str())) + return read_stream_comments(client, + uri2.c_str()); + } + + command_error(client, ACK_ERROR_NO_EXIST, "No such file"); + return CommandResult::ERROR; #endif } else { command_error(client, ACK_ERROR_NO_EXIST, "No such file");