[
https://issues.apache.org/jira/browse/THRIFT-4462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer resolved THRIFT-4462.
--------------------------------
Resolution: Fixed
Fix Version/s: 0.12.0
Committed, thanks!
> First line in Console duplicated
> --------------------------------
>
> Key: THRIFT-4462
> URL: https://issues.apache.org/jira/browse/THRIFT-4462
> Project: Thrift
> Issue Type: Bug
> Components: Delphi - Library
> Affects Versions: 0.11.0
> Reporter: Anton Shchyrov
> Assignee: Jens Geyer
> Priority: Minor
> Fix For: 0.12.0
>
> Attachments: Thrift.Console.patch
>
>
> Method Console.Write/WriteLine in class TGUIConsole after called method
> *Write* and clear log duplicates current message
> {{ChangeConsole(TGUIConsole.Create(Memo1.Lines));}}
> {{Console.Write('String'); // Set internal FLineBreak to False}}
> {{Memo1.Lines.Clear;}}
> {{Console.Write('Some String'); // Log have "Some StringSome String"}}
> Reason in method
> {{procedure TGUIConsole.InternalWrite(const S: string; bWriteLine: Boolean);}}
> {{var}}
> {{ idx : Integer;}}
> {{begin}}
> {{ if FLineBreak then}}
> {{ begin}}
> {{ FMemo.Add( S );}}
> {{ end else}}
> {{ begin}}
> {{ idx := FMemo.Count - 1;}}
> {{ if idx < 0 then}}
> {{ begin}}
> {{ FMemo.Add( S );}}
> {{ end;}}
> {{ FMemo[idx] := FMemo[idx] + S;}}
> {{ end;}}
> {{ FLineBreak := bWriteLine;}}
> {{end;}}
> If FMemo.Count = 0 then idx = -1 and string added to log. But next line
> {{FMemo[idx] := FMemo[idx] + S;}}
> repeats the added string. should be
> if idx < 0 then
> begin
> FMemo.Add( S );
> end *else*
> FMemo[idx] := FMemo[idx] + S;
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)