[libFuzzer] in fork mode, make sure the child stats are always collected. This should fix the flakiness in fork-ubsan.test

llvm-svn: 358726
GitOrigin-RevId: bbb8522bdeff73488b772bcf71c450559b9d5626
diff --git a/FuzzerFork.cpp b/FuzzerFork.cpp
index 3d85beb..9d338aa 100644
--- a/FuzzerFork.cpp
+++ b/FuzzerFork.cpp
@@ -150,6 +150,9 @@
   }
 
   void RunOneMergeJob(FuzzJob *Job) {
+    auto Stats = ParseFinalStatsFromLog(Job->LogPath);
+    NumRuns += Stats.number_of_executed_units;
+
     Vector<SizedFile> TempFiles, MergeCandidates;
     // Read all newly created inputs and their feature sets.
     // Choose only those inputs that have new features.
@@ -189,8 +192,6 @@
           PrintPC("  NEW_FUNC: %p %F %L\n", "",
                   TPC.GetNextInstructionPc(TE->PC));
 
-    auto Stats = ParseFinalStatsFromLog(Job->LogPath);
-    NumRuns += Stats.number_of_executed_units;
     if (!FilesToAdd.empty() || Job->ExitCode != 0)
       Printf("#%zd: cov: %zd ft: %zd corp: %zd exec/s %zd "
              "oom/timeout/crash: %zd/%zd/%zd time: %zds\n", NumRuns,