Bug 2790882: Trailing slash in path.getabsolute (really a patch by Ash Berlin)
This commit is contained in:
parent
d20ce6c62c
commit
11abed8bdd
@ -19,6 +19,7 @@
|
||||
- Bug 2550759: pchheader option has wrong type
|
||||
- Bug 1900333: Parentheses in build path
|
||||
- Bug 2790865: SharedLib on OSX fixes (Ash Berlin)
|
||||
- Bug 2790882: Trailing slash in path.getabsolute (Ash Berlin)
|
||||
|
||||
|
||||
-----
|
||||
|
@ -1,7 +1,7 @@
|
||||
--
|
||||
-- path.lua
|
||||
-- Path manipulation functions.
|
||||
-- Copyright (c) 2002-2008 Jason Perkins and the Premake project
|
||||
-- Copyright (c) 2002-2009 Jason Perkins and the Premake project
|
||||
--
|
||||
|
||||
|
||||
@ -19,8 +19,8 @@
|
||||
local result = iif (path.isabsolute(p), nil, os.getcwd())
|
||||
|
||||
-- split up the supplied relative path and tackle it bit by bit
|
||||
for _,part in ipairs(p:explode("/", true)) do
|
||||
if (part == "") then
|
||||
for n, part in ipairs(p:explode("/", true)) do
|
||||
if (part == "" and n == 1) then
|
||||
result = "/"
|
||||
elseif (part == "..") then
|
||||
result = path.getdirectory(result)
|
||||
@ -29,6 +29,9 @@
|
||||
end
|
||||
end
|
||||
|
||||
-- if I end up with a trailing slash remove it
|
||||
result = iif(result:endswith("/"), result:sub(1, -2), result)
|
||||
|
||||
return result
|
||||
end
|
||||
|
||||
|
@ -25,6 +25,11 @@
|
||||
test.isequal("/ProjectB/bin", path.getabsolute("/ProjectA/../ProjectB/bin"))
|
||||
end
|
||||
|
||||
function T.path.getabsolute_OnTrailingSlash()
|
||||
local expected = path.translate(os.getcwd(), "/") .. "/a/b/c"
|
||||
test.isequal(expected, path.getabsolute("a/b/c/"))
|
||||
end
|
||||
|
||||
|
||||
--
|
||||
-- path.getbasename() tests
|
||||
|
Reference in New Issue
Block a user