1.x compat: update fun: allow docs with slash in id
diff --git a/src/chttpd_show.erl b/src/chttpd_show.erl
index d049756..787df16 100644
--- a/src/chttpd_show.erl
+++ b/src/chttpd_show.erl
@@ -99,16 +99,17 @@
% send_method_not_allowed(Req, "POST,PUT,DELETE,ETC");
handle_doc_update_req(#httpd{
- path_parts=[_, _, _, _, UpdateName, DocId]
- }=Req, Db, DDoc) ->
- Doc = maybe_open_doc(Db, DocId),
- send_doc_update_response(Req, Db, DDoc, UpdateName, Doc, DocId);
-
-handle_doc_update_req(#httpd{
path_parts=[_, _, _, _, UpdateName]
}=Req, Db, DDoc) ->
send_doc_update_response(Req, Db, DDoc, UpdateName, nil, null);
+handle_doc_update_req(#httpd{
+ path_parts=[_, _, _, _, UpdateName | DocIdParts]
+ }=Req, Db, DDoc) ->
+ DocId = ?l2b(string:join([?b2l(P) || P <- DocIdParts], "/")),
+ Doc = maybe_open_doc(Db, DocId),
+ send_doc_update_response(Req, Db, DDoc, UpdateName, Doc, DocId);
+
handle_doc_update_req(Req, _Db, _DDoc) ->
chttpd:send_error(Req, 404, <<"update_error">>, <<"Invalid path.">>).