diff options
author | John Christopher Anderson <jchris@apache.org> | 2009-03-16 22:13:19 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2009-03-16 22:13:19 +0000 |
commit | 3b2787badaf54be2b6b5353dbd1b0af5ccff1db4 (patch) | |
tree | 9afc847e7a5bcc21ddeb8fcdb99a1b64da8668e9 | |
parent | d475be6b00e0b57d704c4cf36e657a3dbe8c3c78 (diff) |
sensible error message if doc._rev is null or a number
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@755023 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | etc/couchdb/local_dev.ini | 5 | ||||
-rw-r--r-- | src/couchdb/couch_doc.erl | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/etc/couchdb/local_dev.ini b/etc/couchdb/local_dev.ini index 13cfb494..78d268a7 100644 --- a/etc/couchdb/local_dev.ini +++ b/etc/couchdb/local_dev.ini @@ -8,7 +8,7 @@ ;max_document_size = 4294967296 ; bytes [httpd] -;port = 5984 +; port = 5985 ;bind_address = 127.0.0.1 [log] @@ -16,3 +16,6 @@ [update_notification] ;unique notifier name=/full/path/to/exe -with "cmd line arg" + +; [admins] +; jchris = -hashed-2431cc2e25f79c94e260383875a0efb615f4a7a6,15dc1c40afed7b0c9b23a06b76e17a08
\ No newline at end of file diff --git a/src/couchdb/couch_doc.erl b/src/couchdb/couch_doc.erl index 3c4fd98c..03cc8906 100644 --- a/src/couchdb/couch_doc.erl +++ b/src/couchdb/couch_doc.erl @@ -128,12 +128,14 @@ from_json_obj(_Other) -> parse_rev(Rev) when is_binary(Rev) -> parse_rev(?b2l(Rev)); -parse_rev(Rev) -> +parse_rev(Rev) when is_list(Rev) -> SplitRev = lists:splitwith(fun($-) -> false; (_) -> true end, Rev), case SplitRev of {Pos, [$- | RevId]} -> {list_to_integer(Pos), ?l2b(RevId)}; _Else -> throw({bad_request, <<"Invalid rev format">>}) - end. + end; +parse_rev(_BadRev) -> + throw({bad_request, <<"Invalid rev format">>}). parse_revs([]) -> []; |