diff options
author | Nico Weber <nicolasweber@gmx.de> | 2013-04-09 04:14:29 (GMT) |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2013-04-09 04:14:29 (GMT) |
commit | f872a912c57879767a7715094790aa4380badce2 (patch) | |
tree | 48a39563504b5890e6ce6f61bc448887c19c3b81 /src/build.cc | |
parent | 7920d7032a8833004fc281fb5b090787888d0fd0 (diff) | |
download | Ninja-f872a912c57879767a7715094790aa4380badce2.zip Ninja-f872a912c57879767a7715094790aa4380badce2.tar.gz Ninja-f872a912c57879767a7715094790aa4380badce2.tar.bz2 |
move printing of new lines into LinePrinter.
Diffstat (limited to 'src/build.cc')
-rw-r--r-- | src/build.cc | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/src/build.cc b/src/build.cc index efa4559..4ed586f 100644 --- a/src/build.cc +++ b/src/build.cc @@ -115,19 +115,11 @@ void BuildStatus::BuildEdgeFinished(Edge* edge, if (printer_.smart_terminal_) PrintStatus(edge); - if (!success) { - if (!printer_.have_blank_line_) - printf("\n"); - - // Print the command that is spewing before printing its output. - printf("FAILED: %s\n", edge->EvaluateCommand().c_str()); - printer_.have_blank_line_ = true; - } + // Print the command that is spewing before printing its output. + if (!success) + printer_.PrintOnNewLine("FAILED: " + edge->EvaluateCommand() + "\n"); if (!output.empty()) { - if (!printer_.have_blank_line_) - printf("\n"); - // ninja sets stdout and stderr of subprocesses to a pipe, to be able to // check if the output is empty. Some compilers, e.g. clang, check // isatty(stderr) to decide if they should print colored output. @@ -145,18 +137,12 @@ void BuildStatus::BuildEdgeFinished(Edge* edge, final_output = StripAnsiEscapeCodes(output); else final_output = output; - - if (!final_output.empty()) { - printf("%s", final_output.c_str()); - if (*final_output.rbegin() == '\n') - printer_.have_blank_line_ = true; - } + printer_.PrintOnNewLine(final_output); } } void BuildStatus::BuildFinished() { - if (printer_.smart_terminal_ && !printer_.have_blank_line_) - printf("\n"); + printer_.PrintOnNewLine(""); } string BuildStatus::FormatProgressStatus( |