summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node/FS.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Node/FS.py')
-rw-r--r--src/engine/SCons/Node/FS.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index 7d4d8df..7f45751 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -993,6 +993,14 @@ class FS(LocalFS):
If directory is None, and name is a relative path,
then the same applies.
"""
+ if not SCons.Util.is_String(name):
+ # This handles cases where the object is a Proxy wrapping
+ # a Node.FS.File object (e.g.). It would be good to handle
+ # this more directly some day by having the callers of this
+ # function recognize that a Proxy can be treated like the
+ # underlying object (that is, get rid of the isinstance()
+ # calls that explicitly look for a Node.FS.Base object).
+ name = str(name)
if name and name[0] == '#':
directory = self.Top
name = name[1:]