From f6b5608dd05db1f10faaa6b426659dfcb84e22e4 Mon Sep 17 00:00:00 2001 From: Christopher Lenz Date: Wed, 4 Jun 2008 10:41:46 +0000 Subject: Enable the use of an unencoded slash in the URL of design documents. Closes COUCHDB-49. Thanks to Paul Davis for the patch. git-svn-id: https://svn.apache.org/repos/asf/incubator/couchdb/trunk@663055 13f79535-47bb-0310-9956-ffa450edef68 --- THANKS | 1 + src/couchdb/couch_httpd.erl | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/THANKS b/THANKS index e05741f0..f5270508 100644 --- a/THANKS +++ b/THANKS @@ -9,6 +9,7 @@ changes. A list of these people is included below. * Chris Anderson * William Beh * Benoit Chesneau + * Paul Joseph Davis * Till Klampaeckel * Roger Leigh * Jim Lindley diff --git a/src/couchdb/couch_httpd.erl b/src/couchdb/couch_httpd.erl index 27bc385c..d22ea2b1 100644 --- a/src/couchdb/couch_httpd.erl +++ b/src/couchdb/couch_httpd.erl @@ -432,6 +432,12 @@ handle_db_request(_Req, _Method, {_DbName, _Db, ["_temp_view"]}) -> % Document request handlers +handle_db_request(Req, Method, {DbName, Db, ["_design", DesignName]}) -> + % Special case to enable using an unencoded in the URL of design docs, as + % slashes in document IDs must otherwise be URL encoded + DocId = mochiweb_util:join(["_design", DesignName], "/"), + handle_db_request(Req, Method, {DbName, Db, [DocId]}); + handle_db_request(Req, Method, {DbName, Db, [DocId]}) -> UnquotedDocId = mochiweb_util:unquote(DocId), handle_doc_request(Req, Method, DbName, Db, UnquotedDocId); -- cgit v1.2.3