[ https://issues.apache.org/jira/browse/THRIFT-4462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James E. King III closed THRIFT-4462. ------------------------------------- > 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 > > {code:java} > 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; > {code} > If FMemo.Count = 0 then idx = -1 and string added to log. But next line > {code:java} > FMemo[idx] := FMemo[idx] + S;{code} > repeats the added string. should be > {code:java} > if idx < 0 then > begin > FMemo.Add( S ); > end else > FMemo[idx] := FMemo[idx] + S;{code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)