diff options
| author | Steven Knight <knight@baldmt.com> | 2002-08-28 02:16:46 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2002-08-28 02:16:46 (GMT) |
| commit | b45eadaa5d2bbc5bed324aabf2d19c5d458fcd1a (patch) | |
| tree | 51cf986a11c4bf543eab05bbabd5d1d37b5130ac /src/engine/SCons | |
| parent | bcf8b965b4a711d5f5d8a672aeb4943b433db11d (diff) | |
| download | SCons-b45eadaa5d2bbc5bed324aabf2d19c5d458fcd1a.zip SCons-b45eadaa5d2bbc5bed324aabf2d19c5d458fcd1a.tar.gz SCons-b45eadaa5d2bbc5bed324aabf2d19c5d458fcd1a.tar.bz2 | |
Don't remove source files specified on the command line!
Diffstat (limited to 'src/engine/SCons')
| -rw-r--r-- | src/engine/SCons/Node/FS.py | 2 | ||||
| -rw-r--r-- | src/engine/SCons/Node/FSTests.py | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py index 5d01314..96381e3 100644 --- a/src/engine/SCons/Node/FS.py +++ b/src/engine/SCons/Node/FS.py @@ -773,7 +773,7 @@ class File(Entry): def prepare(self): """Prepare for this file to be created.""" if self.exists(): - if not self.precious: + if self.builder and not self.precious: os.unlink(self.path) if hasattr(self, '_exists'): delattr(self, '_exists') diff --git a/src/engine/SCons/Node/FSTests.py b/src/engine/SCons/Node/FSTests.py index 24a508b..3bba3f4 100644 --- a/src/engine/SCons/Node/FSTests.py +++ b/src/engine/SCons/Node/FSTests.py @@ -493,9 +493,16 @@ class FSTestCase(unittest.TestCase): nonexistent(fs.Dir, 'nonexistent') nonexistent(fs.Dir, 'nonexistent/foo') + test.write("preserve_me", "\n") + assert os.path.exists(test.workpath("preserve_me")) + f1 = fs.File(test.workpath("preserve_me")) + f1.prepare() + assert os.path.exists(test.workpath("preserve_me")) + test.write("remove_me", "\n") assert os.path.exists(test.workpath("remove_me")) f1 = fs.File(test.workpath("remove_me")) + f1.builder = 1 f1.prepare() assert not os.path.exists(test.workpath("remove_me")) |
