Software /
code /
prosody
File
util/paths.lua @ 8842:463505cc75d5
MUC: Revert unstable MUC commits since 0.10.1
These have caused too many issue reports to be included in
the stable branch at this time.
Affected issues: #345, #397
Reverted commits:
dcd53a565c01
6d4b0895f76d
1b10802a770e
564e897f0790
a7221ada9368
aaff40ec7001
05a3275b6873
c2b99fa134b3
8da11142fabf
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 30 May 2018 21:33:53 +0100 |
parent | 6505:2dc8dbd0940e |
child | 10197:91085371cfc5 |
line wrap: on
line source
local t_concat = table.concat; local path_sep = package.config:sub(1,1); local path_util = {} -- Helper function to resolve relative paths (needed by config) function path_util.resolve_relative_path(parent_path, path) if path then -- Some normalization parent_path = parent_path:gsub("%"..path_sep.."+$", ""); path = path:gsub("^%.%"..path_sep.."+", ""); local is_relative; if path_sep == "/" and path:sub(1,1) ~= "/" then is_relative = true; elseif path_sep == "\\" and (path:sub(1,1) ~= "/" and (path:sub(2,3) ~= ":\\" and path:sub(2,3) ~= ":/")) then is_relative = true; end if is_relative then return parent_path..path_sep..path; end end return path; end -- Helper function to convert a glob to a Lua pattern function path_util.glob_to_pattern(glob) return "^"..glob:gsub("[%p*?]", function (c) if c == "*" then return ".*"; elseif c == "?" then return "."; else return "%"..c; end end).."$"; end function path_util.join(...) return t_concat({...}, path_sep); end return path_util;