lcl: LRSObjectTextToBinary: write convert list of components

git-svn-id: trunk@37637 -
This commit is contained in:
mattias 2012-06-13 15:30:32 +00:00
parent 65ea827862
commit ef5a5438ab

View File

@ -2913,13 +2913,11 @@ var
begin begin
if parser.TokenSymbolIs('OBJECT') then if parser.TokenSymbolIs('OBJECT') then
Flags :=0 { IsInherited := False } Flags :=0 { IsInherited := False }
else if parser.TokenSymbolIs('INHERITED') then
Flags := 1 { IsInherited := True; }
else begin else begin
if parser.TokenSymbolIs('INHERITED') then parser.CheckTokenSymbol('INLINE');
Flags := 1 { IsInherited := True; } Flags := 4;
else begin
parser.CheckTokenSymbol('INLINE');
Flags := 4;
end;
end; end;
ParserNextToken; ParserNextToken;
parser.CheckToken(toSymbol); parser.CheckToken(toSymbol);
@ -2969,6 +2967,8 @@ var
Output.WriteByte(0); // Terminate property list Output.WriteByte(0); // Terminate property list
end; end;
var
Count: Integer;
begin begin
if Links<>nil then begin if Links<>nil then begin
// sort links for LFM positions // sort links for LFM positions
@ -2980,8 +2980,14 @@ begin
OldThousandSeparator:=DefaultFormatSettings.ThousandSeparator; OldThousandSeparator:=DefaultFormatSettings.ThousandSeparator;
DefaultFormatSettings.ThousandSeparator:=','; DefaultFormatSettings.ThousandSeparator:=',';
try try
Output.Write(FilerSignature[1], length(FilerSignature)); Count:=0;
ProcessObject; repeat
Output.Write(FilerSignature[1], length(FilerSignature));
ProcessObject;
inc(Count);
until parser.TokenString='';
if Count>1 then
Output.WriteByte(0); // Terminate object list
finally finally
parser.Free; parser.Free;
DefaultFormatSettings.DecimalSeparator:=OldDecimalSeparator; DefaultFormatSettings.DecimalSeparator:=OldDecimalSeparator;