diff options
author | Kim Alvefur <zash@zash.se> | 2012-12-26 20:35:40 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2012-12-26 20:35:40 +0100 |
commit | 2fcee0e7f8872fd4357ed15e7c34cc327ec99ae1 (patch) | |
tree | 5bbd6b49aac7077d566f6bc7eaf3298a445a5d3e /net/http | |
parent | 1d1efd975193cd7d8f0bb221b9bedba3a50d9065 (diff) | |
parent | ea67b3cd4ab3813c3d0c2bb368dccd644a2a9a26 (diff) | |
download | prosody-2fcee0e7f8872fd4357ed15e7c34cc327ec99ae1.tar.gz prosody-2fcee0e7f8872fd4357ed15e7c34cc327ec99ae1.zip |
Merge 0.9->trunk
Diffstat (limited to 'net/http')
-rw-r--r-- | net/http/parser.lua | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/net/http/parser.lua b/net/http/parser.lua index c760a0a4..b53dfa4e 100644 --- a/net/http/parser.lua +++ b/net/http/parser.lua @@ -91,7 +91,14 @@ function httpstream.new(success_cb, error_cb, parser_type, options_cb) responseheaders = headers; }; else - local parsed_url = url_parse(path); + local parsed_url; + if path:byte() == 47 then -- starts with / + local _path, _query = path:match("([^?]*).?(.*)"); + if _query == "" then _query = nil; end + parsed_url = { path = _path, query = _query }; + else + parsed_url = url_parse(path); + end path = preprocess_path(parsed_url.path); headers.host = parsed_url.host or headers.host; |