diff options
author | Kim Alvefur <zash@zash.se> | 2014-03-09 22:16:44 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2014-03-09 22:16:44 +0100 |
commit | f666a0d9340519bc839fa97f2f9d5e6e8cad9cdb (patch) | |
tree | 788b6ffc69ded99ea51f473e959b6b2a4f49e3c1 /plugins/mod_http_files.lua | |
parent | ebf052523ae1d616aebbc88996c9e7e5f9e7fee3 (diff) | |
download | prosody-f666a0d9340519bc839fa97f2f9d5e6e8cad9cdb.tar.gz prosody-f666a0d9340519bc839fa97f2f9d5e6e8cad9cdb.zip |
mod_http_files: Strip path separator from end of paths, was broken on Windows (thanks Junne)
Diffstat (limited to 'plugins/mod_http_files.lua')
-rw-r--r-- | plugins/mod_http_files.lua | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/mod_http_files.lua b/plugins/mod_http_files.lua index 6ab295ac..3a9368b9 100644 --- a/plugins/mod_http_files.lua +++ b/plugins/mod_http_files.lua @@ -14,6 +14,7 @@ local os_date = os.date; local open = io.open; local stat = lfs.attributes; local build_path = require"socket.url".build_path; +local path_sep = package.config:sub(1,1); local base_path = module:get_option_string("http_files_dir", module:get_option_string("http_path")); local dir_indices = module:get_option("http_index_files", { "index.html", "index.htm" }); @@ -61,7 +62,7 @@ function serve(opts) local request, response = event.request, event.response; local orig_path = request.path; local full_path = base_path .. (path and "/"..path or ""); - local attr = stat(full_path); + local attr = stat((full_path:gsub('%'..path_sep..'+$',''))); if not attr then return 404; end |