mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-16 09:39:09 +02:00
lcl: fixed LRSObjectTextToBinary toWString, issue #19650
git-svn-id: trunk@37642 -
This commit is contained in:
parent
68d9311e48
commit
95989934cf
@ -2675,6 +2675,13 @@ var
|
|||||||
Output.Write(s[1], Length(s));
|
Output.Write(s[1], Length(s));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure WriteWideString(const s: WideString);
|
||||||
|
begin
|
||||||
|
WriteLRSInteger(Output,Length(s));
|
||||||
|
if Length(s) > 0 then
|
||||||
|
Output.Write(s[1], Length(s)*2);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure WriteInteger(value: LongInt);
|
procedure WriteInteger(value: LongInt);
|
||||||
begin
|
begin
|
||||||
if (value >= -128) and (value <= 127) then begin
|
if (value >= -128) and (value <= 127) then begin
|
||||||
@ -2779,7 +2786,7 @@ var
|
|||||||
WriteLRSExtended(Output,flt);
|
WriteLRSExtended(Output,flt);
|
||||||
ParserNextToken;
|
ParserNextToken;
|
||||||
end;
|
end;
|
||||||
toString,toWString:
|
toString:
|
||||||
begin
|
begin
|
||||||
toStringBuf := parser.TokenString;
|
toStringBuf := parser.TokenString;
|
||||||
//DebugLn(['ProcessValue toStringBuf="',toStringBuf,'" ',dbgstr(toStringBuf)]);
|
//DebugLn(['ProcessValue toStringBuf="',toStringBuf,'" ',dbgstr(toStringBuf)]);
|
||||||
@ -2800,6 +2807,20 @@ var
|
|||||||
WriteLongString(toStringBuf);
|
WriteLongString(toStringBuf);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
toWString:
|
||||||
|
begin
|
||||||
|
toStringBuf := parser.TokenString;
|
||||||
|
//DebugLn(['ProcessValue toStringBuf="',toStringBuf,'" ',dbgstr(toStringBuf)]);
|
||||||
|
while ParserNextToken = '+' do
|
||||||
|
begin
|
||||||
|
ParserNextToken; // Get next string fragment
|
||||||
|
if not (parser.Token in [toString,toWString]) then
|
||||||
|
parser.CheckToken(toString);
|
||||||
|
toStringBuf := toStringBuf + parser.TokenString;
|
||||||
|
end;
|
||||||
|
Output.WriteByte(Ord(vaWString));
|
||||||
|
WriteWideString(UTF8Decode(toStringBuf));
|
||||||
|
end;
|
||||||
toSymbol:
|
toSymbol:
|
||||||
begin
|
begin
|
||||||
if CompareText(parser.TokenString, 'True') = 0 then
|
if CompareText(parser.TokenString, 'True') = 0 then
|
||||||
@ -5754,3 +5775,5 @@ finalization
|
|||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user