fixes excessive newlines in testament's output (#11351)

This commit is contained in:
Andreas Rumpf 2019-05-29 15:59:11 +02:00 • committed by GitHub
commit f79b6dee33
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -146,7 +146,8 @@ proc callCompiler(cmdTemplate, filename, options: string,
var tmpl = "" var tmpl = ""
var x = newStringOfCap(120) var x = newStringOfCap(120)
result.nimout = "" result.nimout = ""
while outp.readLine(x.TaintedString) or running(p): while true:
if outp.readLine(x.TaintedString):
result.nimout.add(x & "\n") result.nimout.add(x & "\n")
if x =~ pegOfInterest: if x =~ pegOfInterest:
# `err` should contain the last error/warning message # `err` should contain the last error/warning message
@ -156,6 +157,8 @@ proc callCompiler(cmdTemplate, filename, options: string,
tmpl = x tmpl = x
elif x =~ pegSuccess: elif x =~ pegSuccess:
suc = x suc = x
elif not running(p):
break
close(p) close(p)
result.msg = "" result.msg = ""
result.file = "" result.file = ""
@ -193,8 +196,11 @@ proc callCCompiler(cmdTemplate, filename, options: string,
result.file = "" result.file = ""
result.output = "" result.output = ""
result.line = -1 result.line = -1
while outp.readLine(x.TaintedString) or running(p): while true:
if outp.readLine(x.TaintedString):
result.nimout.add(x & "\n") result.nimout.add(x & "\n")
elif not running(p):
break
close(p) close(p)
if p.peekExitCode == 0: if p.peekExitCode == 0:
result.err = reSuccess result.err = reSuccess