diff options
author | Matthew Wild <mwild1@gmail.com> | 2013-03-31 13:45:04 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2013-03-31 13:45:04 +0100 |
commit | 322e1308a21fdbe140e9a7f36c2a3b5f83f90e6f (patch) | |
tree | 8489a8021f2b588ab24e593e63f44b4a63eeb207 /net/http | |
parent | 472b42260ae2a550e586db4c75e81a53c37b698d (diff) | |
download | prosody-322e1308a21fdbe140e9a7f36c2a3b5f83f90e6f.tar.gz prosody-322e1308a21fdbe140e9a7f36c2a3b5f83f90e6f.zip |
net.http.server: Don't overwrite existing response.headers when returning a response object from a HTTP handler (waqas says it's wrong)
Diffstat (limited to 'net/http')
-rw-r--r-- | net/http/server.lua | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/net/http/server.lua b/net/http/server.lua index 87d82418..20c2da3e 100644 --- a/net/http/server.lua +++ b/net/http/server.lua @@ -219,7 +219,13 @@ function handle_request(conn, request, finish_cb) body = result; elseif result_type == "table" then for k, v in pairs(result) do - response[k] = v; + if k ~= "headers" then + response[k] = v; + else + for header_name, header_value in pairs(v) do + response.headers[header_name] = header_value; + end + end end end response:send(body); |