summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2008-09-14 17:23:48 (GMT)
committerSteven Knight <knight@baldmt.com>2008-09-14 17:23:48 (GMT)
commitc0537e222d7c63fbbca5d1bab3920247b60d1399 (patch)
tree7263417780764289330713a6436d29b7507f00b0 /src
parentdf1eb6e4b45b70ebf88105a880e2a166f3f04ff4 (diff)
downloadSCons-c0537e222d7c63fbbca5d1bab3920247b60d1399.zip
SCons-c0537e222d7c63fbbca5d1bab3920247b60d1399.tar.gz
SCons-c0537e222d7c63fbbca5d1bab3920247b60d1399.tar.bz2
Issue 2106: Don't match a directory that matches the name of a
#include file. (John Gozde)
Diffstat (limited to 'src')
-rw-r--r--src/CHANGES.txt5
-rw-r--r--src/engine/SCons/Node/FS.py7
2 files changed, 9 insertions, 3 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index 8dbe8d5..618c9e2 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -21,6 +21,11 @@ RELEASE 1.X - XXX
- Reorder MSVC compilation arguments so the /Fo is first.
+ From John Gozde:
+
+ - When scanning for a #include file, don't use a directory that
+ has the same name as the file.
+
From Jared Grubb:
- Fix VariantDir duplication of #included files in subdirectories.
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index b8762dc..02dcdbf 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -2014,13 +2014,14 @@ class RootDir(Dir):
dir_name, file_name = os.path.split(p)
dir_node = self._lookup_abs(dir_name, Dir)
result = klass(file_name, dir_node, self.fs)
- self._lookupDict[k] = result
- dir_node.entries[_my_normcase(file_name)] = result
- dir_node.implicit = None
# Double-check on disk (as configured) that the Node we
# created matches whatever is out there in the real world.
result.diskcheck_match()
+
+ self._lookupDict[k] = result
+ dir_node.entries[_my_normcase(file_name)] = result
+ dir_node.implicit = None
else:
# There is already a Node for this path name. Allow it to
# complain if we were looking for an inappropriate type.