diff options
author | Gordon <gordon@gordonite.tech> | 2020-07-26 17:18:25 +0100 |
---|---|---|
committer | RevoluPowered <gordon@gordonite.tech> | 2020-07-26 18:24:52 +0100 |
commit | 968bfdb72ab443317cfc105c18183977891134e1 (patch) | |
tree | 652feb4ab8b3219cd483ce8b7e5a0d10452d7b40 | |
parent | 3842e8c465b286247eb11263dde6353bf62bf2e2 (diff) |
Crash when debugging tests by disabling thread_local in /MT context
-rw-r--r-- | tests/SCsub | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/SCsub b/tests/SCsub index 9c32eb8ec3..84c9fc1ffe 100644 --- a/tests/SCsub +++ b/tests/SCsub @@ -9,6 +9,13 @@ env_tests = env.Clone() # Enable test framework and inform it of configuration method. env_tests.Append(CPPDEFINES=["DOCTEST_CONFIG_IMPLEMENT"]) +# We must disable the THREAD_LOCAL entirely in doctest to prevent crashes on debugging +# Since we link with /MT thread_local is always expired when the header is used +# So the debugger crashes the engine and it causes weird errors +# Explained in https://github.com/onqtam/doctest/issues/401 +if env_tests["platform"] == "windows": + env_tests.Append(CPPDEFINES=[("DOCTEST_THREAD_LOCAL", "")]) + env_tests.add_source_files(env.tests_sources, "*.cpp") lib = env_tests.add_library("tests", env.tests_sources) |