summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--server/src/3rd/lua-uri/uri/file/unix.lua2
-rw-r--r--server/src/3rd/lua-uri/uri/file/win32.lua10
2 files changed, 6 insertions, 6 deletions
diff --git a/server/src/3rd/lua-uri/uri/file/unix.lua b/server/src/3rd/lua-uri/uri/file/unix.lua
index 2ffe1504..8bd4c942 100644
--- a/server/src/3rd/lua-uri/uri/file/unix.lua
+++ b/server/src/3rd/lua-uri/uri/file/unix.lua
@@ -18,7 +18,7 @@ function M.make_file_uri (path)
error("Unix relative paths can't be converted to file URIs")
end
path = path:gsub("//+", "/")
- path = Util.uri_encode(path, "^A-Za-z0-9%-._~!$&'()*+,;=:@/")
+ path = Util.uri_encode(path, "^A-Za-z0-9%-._~!$&'()*+,;=@/")
return assert(URI:new("file://" .. path))
end
diff --git a/server/src/3rd/lua-uri/uri/file/win32.lua b/server/src/3rd/lua-uri/uri/file/win32.lua
index bdacbe15..d4e40243 100644
--- a/server/src/3rd/lua-uri/uri/file/win32.lua
+++ b/server/src/3rd/lua-uri/uri/file/win32.lua
@@ -19,13 +19,13 @@ function M.filesystem_path (uri)
end
function M.make_file_uri (path)
- if path:find("^[A-Za-z]:$") then path = path .. "\\" end
- local _, _, host, hostpath = path:find("^\\\\([A-Za-z.]+)\\(.*)$")
+ path = path:gsub("\\", "/")
+ if path:find("^[A-Za-z]:$") then path = path .. "/" end
+ local _, _, host, hostpath = path:find("^//([A-Za-z0-9.]+)/(.*)$")
host = host or ""
hostpath = hostpath or path
- hostpath = hostpath:gsub("\\", "/")
- :gsub("//+", "/")
- hostpath = Util.uri_encode(hostpath, "^A-Za-z0-9%-._~!$&'()*+,;=:@/")
+ hostpath = hostpath:gsub("//+", "/")
+ hostpath = Util.uri_encode(hostpath, "^A-Za-z0-9%-._~!$&'()*+,;=@/")
if not hostpath:find("^/") then hostpath = "/" .. hostpath end
return assert(URI:new("file://" .. host .. hostpath))
end