libobs: Truncate thread names on Linux
The pthread_setname_np manpage states: The thread name is a meaningful C language string, whose length is restricted to 16 characters, including the terminating null byte ('\0').
This commit is contained in:
parent
b4d179461e
commit
5fe5027630
@ -253,6 +253,12 @@ void os_set_thread_name(const char *name)
|
|||||||
#elif defined(__FreeBSD__)
|
#elif defined(__FreeBSD__)
|
||||||
pthread_set_name_np(pthread_self(), name);
|
pthread_set_name_np(pthread_self(), name);
|
||||||
#elif defined(__GLIBC__) && !defined(__MINGW32__)
|
#elif defined(__GLIBC__) && !defined(__MINGW32__)
|
||||||
|
if (strlen(name) <= 15) {
|
||||||
pthread_setname_np(pthread_self(), name);
|
pthread_setname_np(pthread_self(), name);
|
||||||
|
} else {
|
||||||
|
char *thread_name = bstrdup_n(name, 15);
|
||||||
|
pthread_setname_np(pthread_self(), thread_name);
|
||||||
|
bfree(thread_name);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user