pastojs: fixed compile with pas2js

git-svn-id: trunk@42506 -
This commit is contained in:
Mattias Gaertner 2019-07-27 11:22:10 +00:00
parent c9430a0bd7
commit 62ee766b42

View File

@ -2560,12 +2560,16 @@ begin
begin
Res:=TPasResString(ResList[i]);
aValue:=aFile.PascalResolver.Eval(Res.Expr,[refConst],False);
if aValue.Kind=revkString then
FResourceStrings.AddString(Res.Name,TResEvalString(aValue).S)
else if aValue.Kind=revkUnicodeString then
FResourceStrings.AddString(Res.Name,TJSONStringType(TResEvalUTF16(aValue).S))
case aValue.Kind of
{$IFDEF FPC_HAS_CPSTRING}
revkString:
FResourceStrings.AddString(Res.Name,TResEvalString(aValue).S);
{$ENDIF}
revkUnicodeString:
FResourceStrings.AddString(Res.Name,TJSONStringType(TResEvalUTF16(aValue).S))
else
Log.Log(mtNote,sSkipNoConstResourcestring,nSkipNoConstResourcestring,aFile.PasFileName);
end;
ReleaseEvalValue(aValue);
end;
end;
@ -2574,9 +2578,7 @@ begin
end;
end;
procedure TPas2jsCompiler.WriteResourceStrings(aFileName : String);
Var
{$IFDEF Pas2js}
buf: TJSArray;
@ -2584,7 +2586,6 @@ Var
buf: TMemoryStream;
{$ENDIF}
S : TJSONStringType;
begin
Log.LogMsg(nWritingFile,[FullFormatPath(aFilename)],'',0,0,False);
try
@ -2597,7 +2598,7 @@ begin
// Note: No UTF-8 BOM in source map, Chrome 59 gives an error
S:=FResourceStrings.AsString;
{$ifdef pas2js}
aStream.push(S);
buf.push(S);
{$else}
buf.Write(S[1],length(S));
{$endif}