summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node/FS.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2003-01-15 20:02:16 (GMT)
committerSteven Knight <knight@baldmt.com>2003-01-15 20:02:16 (GMT)
commit96dd44b54ee802476e86ad58dcc68a79fd757f9a (patch)
tree0537ae5ca1071def5b7c3b81eb69bfff6cc3223e /src/engine/SCons/Node/FS.py
parent284db25033af74d831c2e6c0f18c3e9415115705 (diff)
downloadSCons-96dd44b54ee802476e86ad58dcc68a79fd757f9a.zip
SCons-96dd44b54ee802476e86ad58dcc68a79fd757f9a.tar.gz
SCons-96dd44b54ee802476e86ad58dcc68a79fd757f9a.tar.bz2
Fix scanning Aliases of nodes which have scanners. (Bug reported by Jeff Petkau.)
Diffstat (limited to 'src/engine/SCons/Node/FS.py')
-rw-r--r--src/engine/SCons/Node/FS.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index ece238a..06778a5 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -870,6 +870,16 @@ class File(Entry):
try:
path = target.scanner_paths[scanner]
+ except AttributeError:
+ # The target had no scanner_paths attribute, which means
+ # it's an Alias or some other node that's not actually a
+ # file. In that case, back off and use the path for this
+ # node itself.
+ try:
+ path = self.scanner_paths[scanner]
+ except KeyError:
+ path = scanner.path(env, self.cwd)
+ self.scanner_paths[scanner] = path
except KeyError:
path = scanner.path(env, target.cwd)
target.scanner_paths[scanner] = path