Browse Source

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 năm trước cách đây
mục cha
commit
7c2767ef3b
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  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;
 }