From 3cbbc6770a62d89603a2426d9168f504eb7ae714 Mon Sep 17 00:00:00 2001
From: Matthieu Schaller <schaller@strw.leidenuniv.nl>
Date: Tue, 31 Mar 2020 20:05:56 +0200
Subject: [PATCH] Do not report the task times when rebuilding after a
 repartiton. Do so before dumping the task array in engine_repartition()

---
 src/engine.c    | 6 +++++-
 src/scheduler.c | 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/engine.c b/src/engine.c
index dbb66869bc..45ed57f872 100644
--- a/src/engine.c
+++ b/src/engine.c
@@ -210,6 +210,9 @@ void engine_repartition(struct engine *e) {
   /* Sorting indices. */
   if (e->s->cells_top != NULL) space_free_cells(e->s);
 
+  /* Report the time spent in the different task categories */
+  if (e->verbose) scheduler_report_task_times(&e->sched, e->nr_threads);
+
   /* Task arrays. */
   scheduler_free_tasks(&e->sched);
 
@@ -1671,7 +1674,8 @@ void engine_rebuild(struct engine *e, const int repartitioned,
   e->restarting = 0;
 
   /* Report the time spent in the different task categories */
-  if (e->verbose) scheduler_report_task_times(&e->sched, e->nr_threads);
+  if (e->verbose && !repartitioned)
+    scheduler_report_task_times(&e->sched, e->nr_threads);
 
   /* Give some breathing space */
   scheduler_free_tasks(&e->sched);
diff --git a/src/scheduler.c b/src/scheduler.c
index d7fe3fb465..14d3627f0e 100644
--- a/src/scheduler.c
+++ b/src/scheduler.c
@@ -2286,6 +2286,7 @@ void scheduler_free_tasks(struct scheduler *s) {
     s->tid_active = NULL;
   }
   s->size = 0;
+  s->nr_tasks = 0;
 }
 
 /**
-- 
GitLab