Просмотр исходного кода

cmCTestMultiProcessHandler: Explain testRun ownership in comments

The ownership semantics of the 'testRun' variable are subtle and
may fool static analysers.  Add comments explaining them for now.
Later some refactoring could be done to clarify the code.

Issue: #19610
Brad King 6 лет назад
Родитель
Сommit
7c2767ef3b
1 измененных файлов с 3 добавлено и 0 удалено
  1. 3 0
      Source/CTest/cmCTestMultiProcessHandler.cxx

+ 3 - 0
Source/CTest/cmCTestMultiProcessHandler.cxx

@@ -189,10 +189,13 @@ bool cmCTestMultiProcessHandler::StartTestProcess(int test)
                           std::strerror(workdir.GetLastResult()));
   } else {
     if (testRun->StartTest(this->Completed, this->Total)) {
+      // Ownership of 'testRun' has moved to another structure.
+      // When the test finishes, FinishTestProcess will be called.
       return true;
     }
   }
 
+  // Pass ownership of 'testRun'.
   this->FinishTestProcess(testRun, false);
   return false;
 }