vkd3d-common: Write a thread id in the log on macOS too.

This commit is contained in:
Giovanni Mascellani 2025-01-20 21:40:28 +01:00 committed by Henri Verbeet
parent 343022cdc1
commit d36864500f
Notes: Henri Verbeet 2025-01-22 15:04:46 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1352
2 changed files with 14 additions and 0 deletions

View File

@ -173,6 +173,7 @@ VKD3D_CHECK_FUNC([HAVE_SYNC_ADD_AND_FETCH], [__sync_add_and_fetch], [__sync_add_
VKD3D_CHECK_FUNC([HAVE_SYNC_BOOL_COMPARE_AND_SWAP], [__sync_bool_compare_and_swap], [__sync_bool_compare_and_swap((int *)0, 0, 0)])
VKD3D_CHECK_FUNC([HAVE_ATOMIC_EXCHANGE_N], [__atomic_exchange_n], [__atomic_exchange_n((int *)0, 0, 0)])
AC_CHECK_FUNCS([gettid])
AC_CHECK_FUNCS([pthread_threadid_np])
dnl Makefiles
case $host_os in

View File

@ -97,6 +97,17 @@ static void vkd3d_dbg_output(const char *fmt, ...)
va_end(args);
}
#if HAVE_PTHREAD_THREADID_NP
static uint64_t get_pthread_threadid(void)
{
uint64_t thread_id;
pthread_threadid_np(NULL, &thread_id);
return thread_id;
}
#endif
void vkd3d_dbg_printf(enum vkd3d_dbg_level level, const char *function, const char *fmt, ...)
{
va_list args;
@ -108,6 +119,8 @@ void vkd3d_dbg_printf(enum vkd3d_dbg_level level, const char *function, const ch
vkd3d_dbg_output("vkd3d:%04lx:%s:%s ", GetCurrentThreadId(), debug_level_names[level], function);
#elif HAVE_GETTID
vkd3d_dbg_output("vkd3d:%u:%s:%s ", gettid(), debug_level_names[level], function);
#elif HAVE_PTHREAD_THREADID_NP
vkd3d_dbg_output("vkd3d:%"PRIu64":%s:%s ", get_pthread_threadid(), debug_level_names[level], function);
#else
vkd3d_dbg_output("vkd3d:%s:%s ", debug_level_names[level], function);
#endif