diff options
Diffstat (limited to 'src/engine/SCons/Node/__init__.py')
-rw-r--r-- | src/engine/SCons/Node/__init__.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index 66e1420..24c70b8 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -549,15 +549,15 @@ class Node: def calc_csig(self, calc): try: - self.binfo - except: - self.binfo = self.new_binfo() + binfo = self.binfo + except AttributeError: + binfo = self.binfo = self.new_binfo() try: - return self.binfo.csig + return binfo.csig except AttributeError: - self.binfo.csig = calc.module.signature(self) - self.store_info(self.binfo) - return self.binfo.csig + binfo.csig = calc.module.signature(self) + self.store_info(binfo) + return binfo.csig def store_info(self, obj): """Make the build signature permanent (that is, store it in the @@ -930,6 +930,7 @@ class Walker: parent = None self.eval_func(node, parent) return node + return None def is_done(self): return not self.stack |