diff options
author | starkos <none@none> | 2009-09-06 22:00:09 +0400 |
---|---|---|
committer | starkos <none@none> | 2009-09-06 22:00:09 +0400 |
commit | b539030aa5b419388e65fda45432e581a1be32b3 (patch) | |
tree | d0c6fb43e0d79492fe94af7c1139dcaee47d7465 | |
parent | d958932c2da813b72299c9303b44f6e4991e1d6a (diff) |
Fixed source paths containing ..
-rw-r--r-- | src/base/tree.lua | 16 | ||||
-rw-r--r-- | tests/base/test_tree.lua | 8 |
2 files changed, 18 insertions, 6 deletions
diff --git a/src/base/tree.lua b/src/base/tree.lua index 036a487..5c03ce4 100644 --- a/src/base/tree.lua +++ b/src/base/tree.lua @@ -43,13 +43,17 @@ -- add it if it doesn't exist already local name = path.getname(p) - local child = tr.children[name] - if not child then - child = premake.tree.new(name) - child.path = p - premake.tree.insert(tr, child) + if name ~= ".." then + local child = tr.children[name] + if not child then + child = premake.tree.new(name) + child.path = p + premake.tree.insert(tr, child) + end + return child + else + return tr end - return child end diff --git a/tests/base/test_tree.lua b/tests/base/test_tree.lua index 060ec2f..7435bd9 100644 --- a/tests/base/test_tree.lua +++ b/tests/base/test_tree.lua @@ -67,6 +67,14 @@ getresult()) end + function T.tree.SkipsDotDots() + tree.add(tr, "../MyProject/hello") + test.isequal("" + .. "MyProject" + .. ".hello", + getresult()) + end + -- -- Tests for tree.getlocalpath() |