summaryrefslogtreecommitdiff
path: root/zen/thread.cpp
diff options
context:
space:
mode:
authorB Stack <bgstack15@gmail.com>2018-10-16 17:33:51 -0400
committerB Stack <bgstack15@gmail.com>2018-10-16 17:33:51 -0400
commit878a41d3be13da2a654df74f2a35ea8b295c8a13 (patch)
tree89b2a018482c164bdd8ecac5c76b19a08f420dec /zen/thread.cpp
parentMerge branch '10.4' into 'master' (diff)
downloadFreeFileSync-878a41d3be13da2a654df74f2a35ea8b295c8a13.tar.gz
FreeFileSync-878a41d3be13da2a654df74f2a35ea8b295c8a13.tar.bz2
FreeFileSync-878a41d3be13da2a654df74f2a35ea8b295c8a13.zip
10.5
Diffstat (limited to 'zen/thread.cpp')
-rwxr-xr-xzen/thread.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/zen/thread.cpp b/zen/thread.cpp
index 8016d4a9..08bfaa25 100755
--- a/zen/thread.cpp
+++ b/zen/thread.cpp
@@ -34,10 +34,7 @@ uint64_t getThreadIdNative()
}
-struct InitMainThreadIdOnStartup
-{
- InitMainThreadIdOnStartup() { getMainThreadId(); }
-} startupInitMainThreadId;
+const uint64_t globalMainThreadId = getThreadId(); //avoid code-gen for "magic static"!
}
@@ -50,6 +47,9 @@ uint64_t zen::getThreadId()
uint64_t zen::getMainThreadId()
{
- static const uint64_t mainThreadId = getThreadId();
- return mainThreadId;
+ //don't make this a function-scope static (avoid code-gen for "magic static")
+ if (globalMainThreadId == 0) //might be called during static initialization
+ return getThreadId();
+
+ return globalMainThreadId;
}
bgstack15