summaryrefslogtreecommitdiff
path: root/Source/Core/Common/Thread.cpp
diff options
context:
space:
mode:
authordegasus <wickmarkus@web.de>2016-01-26 19:35:31 +0100
committerdegasus <wickmarkus@web.de>2016-01-27 07:23:17 +0100
commit231daa2da1f3e6d172754a19939aa0bf32f21bc0 (patch)
treed02f069cd41049335f4a5175616a72d0472fcb49 /Source/Core/Common/Thread.cpp
parenta4a2928905f3df67ed0eccba3e979f2ba6cab248 (diff)
Thread: Limit thread name to 15 bytes on linux.
Diffstat (limited to 'Source/Core/Common/Thread.cpp')
-rw-r--r--Source/Core/Common/Thread.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/Core/Common/Thread.cpp b/Source/Core/Common/Thread.cpp
index ad0436c3ae..29420dd170 100644
--- a/Source/Core/Common/Thread.cpp
+++ b/Source/Core/Common/Thread.cpp
@@ -136,7 +136,8 @@ void SetCurrentThreadName(const char* szThreadName)
#elif defined __FreeBSD__
pthread_set_name_np(pthread_self(), szThreadName);
#else
- pthread_setname_np(pthread_self(), szThreadName);
+ // linux doesn't allow to set more than 16 bytes, including \0.
+ pthread_setname_np(pthread_self(), std::string(szThreadName).substr(0, 15).c_str());
#endif
#ifdef USE_VTUNE
// VTune uses OS thread names by default but probably supports longer names when set via its own API.