summaryrefslogtreecommitdiff
path: root/emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c
diff options
context:
space:
mode:
Diffstat (limited to 'emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c')
-rw-r--r--emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c b/emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c
new file mode 100644
index 000000000000..b0f693c0909c
--- /dev/null
+++ b/emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c
@@ -0,0 +1,23 @@
+--- dlls/winevulkan/vulkan.c.orig
++++ dlls/winevulkan/vulkan.c
+@@ -30,6 +30,7 @@
+ #include <stdio.h>
+ #include <assert.h>
+ #include <limits.h>
++#include <pthread_np.h>
+ #ifdef HAVE_SYS_SYSCALL_H
+ # include <sys/syscall.h>
+ #endif
+@@ -4332,11 +4333,7 @@ signal_op_complete:
+
+ void *signaller_worker(void *arg)
+ {
+-#ifdef HAVE_SYS_SYSCALL_H
+- int unix_tid = syscall( __NR_gettid );
+-#else
+- int unix_tid = -1;
+-#endif
++ int unix_tid = pthread_getthreadid_np();
+ struct wine_device *device = arg;
+ struct wine_semaphore *sem;
+ VkSemaphoreWaitInfo wait_info = { 0 };