summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGary Oberbrunner <garyo@oberbrunner.com>2010-11-20 21:09:00 (GMT)
committerGary Oberbrunner <garyo@oberbrunner.com>2010-11-20 21:09:00 (GMT)
commit4dfe1846ccb7b528bf3cdfd157ecaa9dcd1bb99b (patch)
treecd76fc6f4275f5207a00d5767cb4ac03e42790db
parenteff3eb095d806e78dfc1bc7c9b1d81ee18594533 (diff)
downloadSCons-4dfe1846ccb7b528bf3cdfd157ecaa9dcd1bb99b.zip
SCons-4dfe1846ccb7b528bf3cdfd157ecaa9dcd1bb99b.tar.gz
SCons-4dfe1846ccb7b528bf3cdfd157ecaa9dcd1bb99b.tar.bz2
Fix for #2690: handle null __semi_deepcopy.
-rw-r--r--src/CHANGES.txt3
-rw-r--r--src/engine/SCons/Util.py2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index 39e9f9d..402b781 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -7,6 +7,9 @@
RELEASE 2.1.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE
+ From Dmitry R.:
+ - Handle Environment in case __semi_deepcopy is None
+
From Benoit Belley:
- Much improved support for Windows UNC paths (\\SERVERNAME).
diff --git a/src/engine/SCons/Util.py b/src/engine/SCons/Util.py
index 7a6cb51..2523eda 100644
--- a/src/engine/SCons/Util.py
+++ b/src/engine/SCons/Util.py
@@ -464,7 +464,7 @@ def semi_deepcopy(x):
if copier:
return copier(x)
else:
- if hasattr(x, '__semi_deepcopy__'):
+ if hasattr(x, '__semi_deepcopy__') and callable(x.__semi_deepcopy__):
return x.__semi_deepcopy__()
elif isinstance(x, UserDict):
return x.__class__(_semi_deepcopy_dict(x))