File no-syscall-dispatch.patch of Package wine

Make it possible to disable syscall user dispatch with an environment variable.
EAC needs it to be off. Would be better to automagically disable it for EAC.
diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c
index 7e644a6..4fa6008 100644
--- a/dlls/ntdll/unix/signal_x86_64.c
+++ b/dlls/ntdll/unix/signal_x86_64.c
@@ -2880,6 +2880,13 @@ static int libc_addr_cb( struct dl_phdr_info *info, size_t size, void *arg )
 }
 #endif
 
+void maybe_disable_syscall_dispatch(void)
+{
+    char *disable_sys_dispatch_env = getenv("WINE_NO_SYSCALL_DISPATCH");
+    if (disable_sys_dispatch_env && strcmp(disable_sys_dispatch_env, "0") != 0)
+        syscall_dispatch_enabled = FALSE;
+}
+
 /**********************************************************************
  *		signal_init_process
  */
@@ -2913,6 +2920,7 @@ void signal_init_process(void)
     }
 
 #ifdef PR_SET_SYSCALL_USER_DISPATCH
+    maybe_disable_syscall_dispatch();
     if (syscall_dispatch_enabled && !dl_iterate_phdr( libc_addr_cb, NULL ))
     {
         WARN_(seh)( "could not find libc\n" );
openSUSE Build Service is sponsored by