diff options
Diffstat (limited to 'src/build.cc')
-rw-r--r-- | src/build.cc | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/build.cc b/src/build.cc index 7792016..b806fb5 100644 --- a/src/build.cc +++ b/src/build.cc @@ -110,11 +110,6 @@ void BuildStatus::BuildEdgeFinished(Edge* edge, int* end_time) { int64_t now = GetTimeMillis(); - if (finished_edges_ == 0) { - overall_rate_.Restart(); - current_rate_.Restart(); - } - ++finished_edges_; RunningEdgeMap::iterator i = running_edges_.find(edge); @@ -164,6 +159,11 @@ void BuildStatus::BuildEdgeFinished(Edge* edge, } } +void BuildStatus::BuildStarted() { + overall_rate_.Restart(); + current_rate_.Restart(); +} + void BuildStatus::BuildFinished() { printer_.SetConsoleLocked(false); printer_.PrintOnNewLine(""); @@ -650,6 +650,9 @@ bool Builder::Build(string* err) { command_runner_.reset(new RealCommandRunner(config_)); } + // We are about to start the build process. + status_->BuildStarted(); + // This main loop runs the entire build process. // It is structured like this: // First, we attempt to start as many commands as allowed by the |