dcd integration, fix possible failure when answer is huge

This commit is contained in:
Basile Burg 2016-11-15 10:16:02 +01:00
parent c5c9fd1d2b
commit 65373d0b8f
No known key found for this signature in database
GPG Key ID: 1868039F415CB8CF
1 changed files with 10 additions and 5 deletions

View File

@ -404,7 +404,8 @@ begin
fClient.Execute; fClient.Execute;
writeSourceToInput; writeSourceToInput;
// //
fTempLines.LoadFromStream(fClient.Output); fTempLines.Clear;
processOutputToStrings(fClient, fTempLines);
while fClient.Running do ; while fClient.Running do ;
if fTempLines.Count = 0 then if fTempLines.Count = 0 then
begin begin
@ -455,7 +456,8 @@ begin
fClient.Execute; fClient.Execute;
writeSourceToInput; writeSourceToInput;
// //
fTempLines.LoadFromStream(fClient.Output); fTempLines.Clear;
processOutputToStrings(fClient, fTempLines);
while fClient.Running do ; while fClient.Running do ;
if fTempLines.Count = 0 then if fTempLines.Count = 0 then
begin begin
@ -519,7 +521,8 @@ begin
writeSourceToInput; writeSourceToInput;
// //
comment := ''; comment := '';
fTempLines.LoadFromStream(fClient.Output); fTempLines.Clear;
processOutputToStrings(fClient, fTempLines);
while fClient.Running do ; while fClient.Running do ;
len := fTempLines.Count-1; len := fTempLines.Count-1;
if len = -1 then if len = -1 then
@ -564,7 +567,8 @@ begin
fClient.Execute; fClient.Execute;
writeSourceToInput; writeSourceToInput;
// //
fTempLines.LoadFromStream(fClient.Output); fTempLines.Clear;
processOutputToStrings(fClient, fTempLines);
while fClient.Running do ; while fClient.Running do ;
if fTempLines.Count > 0 then if fTempLines.Count > 0 then
begin begin
@ -602,7 +606,8 @@ begin
writeSourceToInput; writeSourceToInput;
// //
setLength(locs, 0); setLength(locs, 0);
fTempLines.LoadFromStream(fClient.Output); fTempLines.Clear;
processOutputToStrings(fClient, fTempLines);
while fClient.Running do ; while fClient.Running do ;
if fTempLines.Count < 2 then if fTempLines.Count < 2 then
exit; exit;