diff --git a/share/server/loop.js b/share/server/loop.js index 1a5cab843c..b45806ac51 100644 --- a/share/server/loop.js +++ b/share/server/loop.js @@ -135,6 +135,10 @@ var Loop = function() { "rereduce" : Views.rereduce }; function handleError(e) { + if (e == null) { + respond(["error", "unnamed_error", String(e)]); + return; + } var type = e[0]; if (type == "fatal") { e[0] = "error"; // we tell the client it was a fatal error by dying diff --git a/share/server/validate.js b/share/server/validate.js index 5b50e54732..832ee38abe 100644 --- a/share/server/validate.js +++ b/share/server/validate.js @@ -16,7 +16,7 @@ var Validate = { fun.apply(ddoc, args); respond(1); } catch (error) { - if (error.name && error.stack) { + if (error && error.name && error.stack) { throw error; } respond(error);