summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Subst.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2005-11-05 23:14:01 (GMT)
committerSteven Knight <knight@baldmt.com>2005-11-05 23:14:01 (GMT)
commit568ec0ceb00075cc9fc807b247fe39d2adc087d2 (patch)
treec825ed399d115dfa1db3e530dcb4aa1375609c84 /src/engine/SCons/Subst.py
parent25a705102da1fb1ef285d94153de052a94a358ac (diff)
downloadSCons-568ec0ceb00075cc9fc807b247fe39d2adc087d2.zip
SCons-568ec0ceb00075cc9fc807b247fe39d2adc087d2.tar.gz
SCons-568ec0ceb00075cc9fc807b247fe39d2adc087d2.tar.bz2
Fix a bug in command-line escaping. (Jan Nieuwenhuizen)
Diffstat (limited to 'src/engine/SCons/Subst.py')
-rw-r--r--src/engine/SCons/Subst.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/engine/SCons/Subst.py b/src/engine/SCons/Subst.py
index 4767403..56522a1 100644
--- a/src/engine/SCons/Subst.py
+++ b/src/engine/SCons/Subst.py
@@ -708,11 +708,21 @@ def scons_subst_list(strSubst, env, mode=SUBST_RAW, target=None, source=None, gv
self.add_new_word(x)
else:
y = current_word + x
- literal1 = self.literal(self[-1][-1])
- literal2 = self.literal(x)
+
+ # We used to treat a word appended to a literal
+ # as a literal itself, but this caused problems
+ # with interpreting quotes around space-separated
+ # targets on command lines. Removing this makes
+ # none of the "substantive" end-to-end tests fail,
+ # so we'll take this out but leave it commented
+ # for now in case there's a problem not covered
+ # by the test cases and we need to resurrect this.
+ #literal1 = self.literal(self[-1][-1])
+ #literal2 = self.literal(x)
y = self.conv(y)
if is_String(y):
- y = CmdStringHolder(y, literal1 or literal2)
+ #y = CmdStringHolder(y, literal1 or literal2)
+ y = CmdStringHolder(y, None)
self[-1][-1] = y
def add_new_word(self, x):