diff options
author | Kyle Edwards <kyle.edwards@kitware.com> | 2018-01-25 19:04:12 (GMT) |
---|---|---|
committer | Kyle Edwards <kyle.edwards@kitware.com> | 2018-01-26 14:27:22 (GMT) |
commit | 74092d92bffa26b0e17da638dabcbc462c3f407a (patch) | |
tree | f12f7c866e358a25094acd17c41d11e9e75804bd /Source/cmCTest.cxx | |
parent | 7c30a3a3c321575ee8f3bd82b9e617456c2a7396 (diff) | |
download | CMake-74092d92bffa26b0e17da638dabcbc462c3f407a.zip CMake-74092d92bffa26b0e17da638dabcbc462c3f407a.tar.gz CMake-74092d92bffa26b0e17da638dabcbc462c3f407a.tar.bz2 |
cmCTestScriptHandler: Add new field ShouldRunCurrentScript
This is to avoid scope issues with CTEST_RUN_CURRENT_SCRIPT. If
ctest_start() is called within a function scope, the value of
CTEST_RUN_CURRENT_SCRIPT that it sets doesn't make it to the global
scope. With this change, ctest_start() no longer sets
CTEST_RUN_CURRENT_SCRIPT, and instead sets a field directly in
cmCTestScriptHandler. The old behavior of CTEST_RUN_CURRENT_SCRIPT
has also been kept for projects and tests that rely on setting it.
Diffstat (limited to 'Source/cmCTest.cxx')
-rw-r--r-- | Source/cmCTest.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx index fd7c5e8..25e0bd0 100644 --- a/Source/cmCTest.cxx +++ b/Source/cmCTest.cxx @@ -2805,6 +2805,14 @@ std::chrono::duration<double> cmCTest::MaxDuration() return std::chrono::duration<double>(1.0e7); } +void cmCTest::SetRunCurrentScript(bool value) +{ + cmCTestScriptHandler* ch = + static_cast<cmCTestScriptHandler*>(this->GetHandler("script")); + + ch->SetRunCurrentScript(value); +} + void cmCTest::OutputTestErrors(std::vector<char> const& process_output) { std::string test_outputs("\n*** Test Failed:\n"); |