mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-05-30 06:42:41 +02:00
* use ' rather than " as quote character in generated shell scripts
on unix platforms, so that $ is not interpreted as the start of a variable name (several jvm assembler file names include $ signs) -- note: the behaviour of that code depended and still depends on on the platform for which the compiler was compiled, instead on the platform for which the script is generated. That still needs to be fixed git-svn-id: branches/jvmbackend@19749 -
This commit is contained in:
parent
c9e6bc8d49
commit
b3cf95faf6
@ -915,9 +915,15 @@ implementation
|
||||
{$IFDEF MSWINDOWS}
|
||||
FORBIDDEN_CHARS = ['!', '@', '#', '$', '%', '^', '&', '*', '(', ')',
|
||||
'{', '}', '''', '`', '~'];
|
||||
QUOTE_CHAR = '"';
|
||||
{$ELSE}
|
||||
FORBIDDEN_CHARS = ['!', '@', '#', '$', '%', '^', '&', '*', '(', ')',
|
||||
'{', '}', '''', ':', '\', '`', '~'];
|
||||
{$ifdef unix}
|
||||
QUOTE_CHAR = '''';
|
||||
{$else}
|
||||
QUOTE_CHAR = '"';
|
||||
{$endif}
|
||||
{$ENDIF}
|
||||
var
|
||||
s1 : ansistring;
|
||||
@ -925,14 +931,14 @@ implementation
|
||||
quoted : boolean;
|
||||
begin
|
||||
quoted:=false;
|
||||
s1:='"';
|
||||
s1:=QUOTE_CHAR;
|
||||
for i:=1 to length(s) do
|
||||
begin
|
||||
case s[i] of
|
||||
'"' :
|
||||
QUOTE_CHAR :
|
||||
begin
|
||||
quoted:=true;
|
||||
s1:=s1+'\"';
|
||||
s1:=s1+('\'+QUOTE_CHAR);
|
||||
end;
|
||||
' ',
|
||||
#128..#255 :
|
||||
@ -948,7 +954,7 @@ implementation
|
||||
end;
|
||||
end;
|
||||
if quoted then
|
||||
maybequoted:=s1+'"'
|
||||
maybequoted:=s1+QUOTE_CHAR
|
||||
else
|
||||
maybequoted:=s;
|
||||
end;
|
||||
@ -959,9 +965,15 @@ implementation
|
||||
{$IFDEF MSWINDOWS}
|
||||
FORBIDDEN_CHARS = ['!', '@', '#', '$', '%', '^', '&', '*', '(', ')',
|
||||
'{', '}', '''', '`', '~'];
|
||||
QUOTE_CHAR = '"';
|
||||
{$ELSE}
|
||||
FORBIDDEN_CHARS = ['!', '@', '#', '$', '%', '^', '&', '*', '(', ')',
|
||||
'{', '}', '''', ':', '\', '`', '~'];
|
||||
'{', '}', '"', ':', '\', '`', '~'];
|
||||
{$ifdef unix}
|
||||
QUOTE_CHAR = '''';
|
||||
{$else}
|
||||
QUOTE_CHAR = '"';
|
||||
{$endif}
|
||||
{$ENDIF}
|
||||
var
|
||||
s1 : string;
|
||||
@ -969,14 +981,14 @@ implementation
|
||||
quoted : boolean;
|
||||
begin
|
||||
quoted:=false;
|
||||
s1:='"';
|
||||
s1:=QUOTE_CHAR;
|
||||
for i:=1 to length(s) do
|
||||
begin
|
||||
case s[i] of
|
||||
'"' :
|
||||
QUOTE_CHAR :
|
||||
begin
|
||||
quoted:=true;
|
||||
s1:=s1+'\"';
|
||||
s1:=s1+('\'+QUOTE_CHAR);
|
||||
end;
|
||||
' ',
|
||||
#128..#255 :
|
||||
@ -992,7 +1004,7 @@ implementation
|
||||
end;
|
||||
end;
|
||||
if quoted then
|
||||
maybequoted:=s1+'"'
|
||||
maybequoted:=s1+QUOTE_CHAR
|
||||
else
|
||||
maybequoted:=s;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user