فهرست منبع

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 سال پیش
والد
کامیت
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;
 }