[Bf-blender-cvs] [3d7235fc878] blender2.8: MSVC 2013 Compile Fix/Workaround for "static thread_local" vars
Joshua Leung
noreply at git.blender.org
Tue Feb 27 11:23:41 CET 2018
Commit: 3d7235fc8787c8f63ead313f0a891600dbc4d6fa
Author: Joshua Leung
Date: Thu Feb 22 19:22:50 2018 +1300
Branches: blender2.8
https://developer.blender.org/rB3d7235fc8787c8f63ead313f0a891600dbc4d6fa
MSVC 2013 Compile Fix/Workaround for "static thread_local" vars
Apparently MSVC 2013 has trouble with stuff that's been declared
"static thread_local" (and/or maybe even the "thread_local" keyword).
https://stackoverflow.com/questions/29399494/what-is-the-current-state-of-support-for-thread-local-across-platforms
===================================================================
M intern/gawain/src/gwn_vertex_array_id.cpp
===================================================================
diff --git a/intern/gawain/src/gwn_vertex_array_id.cpp b/intern/gawain/src/gwn_vertex_array_id.cpp
index f0233dd0ef9..90a2b42ab67 100644
--- a/intern/gawain/src/gwn_vertex_array_id.cpp
+++ b/intern/gawain/src/gwn_vertex_array_id.cpp
@@ -46,7 +46,12 @@ struct Gwn_Context {
#endif
};
+#if defined(_MSC_VER) && (_MSC_VER == 1800)
+#define thread_local __declspec(thread)
+thread_local Gwn_Context* active_ctx = NULL;
+#else
static thread_local Gwn_Context* active_ctx = NULL;
+#endif
static void clear_orphans(Gwn_Context* ctx)
{
More information about the Bf-blender-cvs
mailing list