aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2019-12-14 20:28:44 +0100
committerKim Alvefur <zash@zash.se>2019-12-14 20:28:44 +0100
commit87d0125802ce38410e5d429c90760802dec0397c (patch)
tree0a95c01ae6126380af2c12b5fea24030106aaf0f
parentffcb8303ccdc3dc6c0cceae7c7a9ba8d2de5aa65 (diff)
downloadprosody-87d0125802ce38410e5d429c90760802dec0397c.tar.gz
prosody-87d0125802ce38410e5d429c90760802dec0397c.zip
util.error: Move default for numeric error code to net.http.server
Stanza errors can also have numbers but these are a legacy thing and rarely used, except in MUC. HTTP errors on the other hand always have a number.
-rw-r--r--net/http/server.lua2
-rw-r--r--util/error.lua2
2 files changed, 2 insertions, 2 deletions
diff --git a/net/http/server.lua b/net/http/server.lua
index 47f064a5..f4f67d18 100644
--- a/net/http/server.lua
+++ b/net/http/server.lua
@@ -191,7 +191,7 @@ local function handle_result(request, response, result)
elseif result_type == "string" then
body = result;
elseif errors.is_err(result) then
- body = events.fire_event("http-error", { request = request, response = response, code = result.code, error = result });
+ body = events.fire_event("http-error", { request = request, response = response, code = result.code or 500, error = result });
elseif promise.is_promise(result) then
result:next(function (ret)
handle_result(request, response, ret);
diff --git a/util/error.lua b/util/error.lua
index 461bf385..ca960dd9 100644
--- a/util/error.lua
+++ b/util/error.lua
@@ -21,7 +21,7 @@ local function new(e, context, registry)
type = template.type or "cancel";
condition = template.condition or "undefined-condition";
text = template.text;
- code = template.code or 500;
+ code = template.code;
context = context or template.context or { _error_id = e };
}, error_mt);