summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/engine/SCons/Node/FS.py3
-rw-r--r--src/engine/SCons/Node/__init__.py5
2 files changed, 7 insertions, 1 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index 52919b0..75efc15 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -1399,6 +1399,9 @@ class RootDir(Dir):
self.path = name + os.sep
self._morph()
+ def __str__(self):
+ return self.abspath
+
def entry_abspath(self, name):
return self.abspath + name
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py
index 8754c7d..28f1c19 100644
--- a/src/engine/SCons/Node/__init__.py
+++ b/src/engine/SCons/Node/__init__.py
@@ -608,7 +608,10 @@ class Node:
return binfo
def rel_path(self, other):
- return str(other)
+ # Using other.__str__() instead of str(other) lets the Memoizer
+ # get the right method for the underlying Node object, not the
+ # __str__() method for the Memoizer wrapper object.
+ return other.__str__()
def del_cinfo(self):
try: