* if arguments and exename already quoted, then assume the user did it properly. Mantis #22040

git-svn-id: trunk@21436 -
This commit is contained in:
marco 2012-05-30 17:25:20 +00:00
parent 3a89544cd6
commit 0f88cfed41

View File

@ -206,6 +206,14 @@ begin
Result:=S;
end;
Function MaybeQuoteIfNotQuoted(Const S : String) : String;
begin
If (Pos(' ',S)<>0) and (pos('"',S)=0) then
Result:='"'+S+'"'
else
Result:=S;
end;
Procedure TProcess.Execute;
Var
@ -237,9 +245,9 @@ begin
PCommandLine:=Pchar(FCommandLine)
else if (Fexecutable<>'') then
begin
Cmd:=MaybeQuote(Executable);
Cmd:=MaybeQuoteIfNotQuoted(Executable);
For I:=0 to Parameters.Count-1 do
Cmd:=Cmd+' '+MaybeQuote(Parameters[i]);
Cmd:=Cmd+' '+MaybeQuoteIfNotQuoted(Parameters[i]);
PCommandLine:=PChar(Cmd);
end;
If FCurrentDirectory<>'' then