diff options
author | Steven Knight <knight@baldmt.com> | 2003-03-27 17:41:13 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2003-03-27 17:41:13 (GMT) |
commit | f63429682eca0f75ba22c2e01f155bb8d986bd85 (patch) | |
tree | b504040aa79775f8aa732b82cefb5c5001ff67d3 /src/engine/SCons/Script/SConscript.py | |
parent | c3cc4f04d2abb93c746ab467e07e2ca11dd0e54e (diff) | |
download | SCons-f63429682eca0f75ba22c2e01f155bb8d986bd85.zip SCons-f63429682eca0f75ba22c2e01f155bb8d986bd85.tar.gz SCons-f63429682eca0f75ba22c2e01f155bb8d986bd85.tar.bz2 |
Fix a side effect of chdir to SConscript directory.
Diffstat (limited to 'src/engine/SCons/Script/SConscript.py')
-rw-r--r-- | src/engine/SCons/Script/SConscript.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py index 0fe0d64..df86853 100644 --- a/src/engine/SCons/Script/SConscript.py +++ b/src/engine/SCons/Script/SConscript.py @@ -265,7 +265,13 @@ def SConscript(*ls, **kw): frame = stack.pop() default_fs.chdir(frame.prev_dir) if old_dir: - default_fs.chdir(old_dir, change_os_dir=sconscript_chdir) + try: + default_fs.chdir(old_dir, change_os_dir=sconscript_chdir) + except OSError: + # There was no local directory, so chdir to the + # Repository directory. Like above, we do this + # directly. + os.chdir(old_dir.rdir().abspath) results.append(frame.retval) |