aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDiego Nehab <diego.nehab@gmail.com>2017-11-23 13:28:25 -0200
committerGitHub <noreply@github.com>2017-11-23 13:28:25 -0200
commit88b13a825b6c514d243272d3fc598a4ba56ebe3e (patch)
treeeb03ce5ce9b0089d9728b7ea57ef35d3be374978 /src
parent5a17f79b0301f0a1b4c7f1c73388757a7e2ed309 (diff)
parent2d6a0f7bda9241f827a3edbfa738603c024a423b (diff)
downloadluasocket-88b13a825b6c514d243272d3fc598a4ba56ebe3e.tar.gz
luasocket-88b13a825b6c514d243272d3fc598a4ba56ebe3e.tar.bz2
luasocket-88b13a825b6c514d243272d3fc598a4ba56ebe3e.zip
Merge pull request #238 from hleuwer/master
Fix URL parsing of userinfo containing # character.
Diffstat (limited to 'src')
-rw-r--r--src/url.lua10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/url.lua b/src/url.lua
index d61111e..110ea94 100644
--- a/src/url.lua
+++ b/src/url.lua
@@ -131,11 +131,6 @@ function _M.parse(url, default)
131 if not url or url == "" then return nil, "invalid url" end 131 if not url or url == "" then return nil, "invalid url" end
132 -- remove whitespace 132 -- remove whitespace
133 -- url = string.gsub(url, "%s", "") 133 -- url = string.gsub(url, "%s", "")
134 -- get fragment
135 url = string.gsub(url, "#(.*)$", function(f)
136 parsed.fragment = f
137 return ""
138 end)
139 -- get scheme 134 -- get scheme
140 url = string.gsub(url, "^([%w][%w%+%-%.]*)%:", 135 url = string.gsub(url, "^([%w][%w%+%-%.]*)%:",
141 function(s) parsed.scheme = s; return "" end) 136 function(s) parsed.scheme = s; return "" end)
@@ -144,6 +139,11 @@ function _M.parse(url, default)
144 parsed.authority = n 139 parsed.authority = n
145 return "" 140 return ""
146 end) 141 end)
142 -- get fragment
143 url = string.gsub(url, "#(.*)$", function(f)
144 parsed.fragment = f
145 return ""
146 end)
147 -- get query string 147 -- get query string
148 url = string.gsub(url, "%?(.*)", function(q) 148 url = string.gsub(url, "%?(.*)", function(q)
149 parsed.query = q 149 parsed.query = q