You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
5c5e79a817 | ||
|
3b01c6e2c5 | ||
|
98c906f843 | ||
|
a43d3ddd1c | ||
|
78d28293de | ||
|
440e5eee17 | ||
|
93e94fcbc0 | ||
|
fa5989b7aa | ||
|
8f579c4eed | ||
|
278310cf80 |
@@ -1,18 +1,18 @@
|
||||
From ef0da9342b0ced44da1ed8532941d53f48ead602 Mon Sep 17 00:00:00 2001
|
||||
From 8528d4181967d00a7711d32bdaf7ecde5fe7208f Mon Sep 17 00:00:00 2001
|
||||
From: Jetro Jormalainen <jje-wine@jv.jetro.fi>
|
||||
Date: Tue, 30 Apr 2019 09:20:54 +1000
|
||||
Subject: [PATCH] dinput: Allow empty Joystick mappings.
|
||||
|
||||
---
|
||||
dlls/dinput/device.c | 77 ++++++++++++++++++++++++++++++-------
|
||||
dlls/dinput8/tests/device.c | 50 ++++++++++++++++++++++++
|
||||
dlls/dinput/tests/device8.c | 50 ++++++++++++++++++++++++
|
||||
2 files changed, 113 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c
|
||||
index b423337c9ce..c9466655ce4 100644
|
||||
index 1dc3c311f2b..63e6abb54eb 100644
|
||||
--- a/dlls/dinput/device.c
|
||||
+++ b/dlls/dinput/device.c
|
||||
@@ -356,12 +356,26 @@ static DWORD semantic_to_obj_id( struct dinput_device *This, DWORD dwSemantic )
|
||||
@@ -357,12 +357,26 @@ static DWORD semantic_to_obj_id( struct dinput_device *This, DWORD dwSemantic )
|
||||
return type | (0x0000ff00 & (instance << 8));
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
{
|
||||
static const WCHAR *subkey = L"Software\\Wine\\DirectInput\\Mappings\\%s\\%s\\%s";
|
||||
HKEY hkey;
|
||||
@@ -372,8 +386,11 @@ static HKEY get_mapping_key(const WCHAR *device, const WCHAR *username, const WC
|
||||
@@ -373,8 +387,11 @@ static HKEY get_mapping_key(const WCHAR *device, const WCHAR *username, const WC
|
||||
swprintf( keyname, len, subkey, username, device, guid );
|
||||
|
||||
/* The key used is HKCU\Software\Wine\DirectInput\Mappings\[username]\[device]\[mapping_guid] */
|
||||
@@ -54,7 +54,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
free( keyname );
|
||||
|
||||
@@ -393,7 +410,9 @@ static HRESULT save_mapping_settings(IDirectInputDevice8W *iface, LPDIACTIONFORM
|
||||
@@ -394,7 +411,9 @@ static HRESULT save_mapping_settings(IDirectInputDevice8W *iface, LPDIACTIONFORM
|
||||
if (StringFromCLSID(&lpdiaf->guidActionMap, &guid_str) != S_OK)
|
||||
return DI_SETTINGSNOTSAVED;
|
||||
|
||||
@@ -65,7 +65,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
if (!hkey)
|
||||
{
|
||||
@@ -428,7 +447,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -429,7 +448,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
HKEY hkey;
|
||||
WCHAR *guid_str;
|
||||
DIDEVICEINSTANCEW didev;
|
||||
@@ -74,7 +74,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
didev.dwSize = sizeof(didev);
|
||||
IDirectInputDevice8_GetDeviceInfo(&This->IDirectInputDevice8W_iface, &didev);
|
||||
@@ -436,7 +455,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -437,7 +456,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
if (StringFromCLSID(&lpdiaf->guidActionMap, &guid_str) != S_OK)
|
||||
return FALSE;
|
||||
|
||||
@@ -83,7 +83,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
if (!hkey)
|
||||
{
|
||||
@@ -456,15 +475,20 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -457,15 +476,20 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
{
|
||||
lpdiaf->rgoAction[i].dwObjID = id;
|
||||
lpdiaf->rgoAction[i].guidInstance = didev.guidInstance;
|
||||
@@ -107,7 +107,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
}
|
||||
|
||||
static BOOL set_app_data( struct dinput_device *dev, int offset, UINT_PTR app_data )
|
||||
@@ -1607,13 +1631,18 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
@@ -1914,13 +1938,18 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
load_success = load_mapping_settings( impl, format, username_buf );
|
||||
}
|
||||
|
||||
@@ -130,7 +130,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
genre = format->rgoAction[i].dwSemantic & DIGENRE_ANY;
|
||||
if (devMask == genre || (devMask == DIGENRE_ANY && genre != DIMOUSE_MASK && genre != DIKEYBOARD_MASK))
|
||||
{
|
||||
@@ -1645,6 +1674,14 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
@@ -1952,6 +1981,14 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -145,7 +145,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
if (!has_actions) return DI_NOEFFECT;
|
||||
if (flags & (DIDBAM_DEFAULT|DIDBAM_PRESERVE|DIDBAM_INITIALIZE|DIDBAM_HWDEFAULTS))
|
||||
FIXME("Unimplemented flags %#x\n", flags);
|
||||
@@ -1662,6 +1699,7 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
@@ -1969,6 +2006,7 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
DIPROPSTRING dps;
|
||||
WCHAR username_buf[MAX_PATH];
|
||||
DWORD username_len = MAX_PATH;
|
||||
@@ -153,7 +153,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
int i, action = 0, num_actions = 0;
|
||||
unsigned int offset = 0;
|
||||
const DIDATAFORMAT *df;
|
||||
@@ -1694,12 +1732,23 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
@@ -2001,12 +2039,23 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
data_format.dwFlags = DIDF_RELAXIS;
|
||||
data_format.dwDataSize = format->dwDataSize;
|
||||
|
||||
@@ -178,10 +178,10 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
/* Construct the dataformat and actionmap */
|
||||
obj_df = malloc( sizeof(DIOBJECTDATAFORMAT) * num_actions );
|
||||
diff --git a/dlls/dinput8/tests/device.c b/dlls/dinput8/tests/device.c
|
||||
index 5ae9e225dc9..d3e86c68176 100644
|
||||
--- a/dlls/dinput8/tests/device.c
|
||||
+++ b/dlls/dinput8/tests/device.c
|
||||
diff --git a/dlls/dinput/tests/device8.c b/dlls/dinput/tests/device8.c
|
||||
index 817e843e33c..ad9ee1f006b 100644
|
||||
--- a/dlls/dinput/tests/device8.c
|
||||
+++ b/dlls/dinput/tests/device8.c
|
||||
@@ -48,6 +48,8 @@ struct enum_data {
|
||||
/* Dummy GUID */
|
||||
static const GUID ACTION_MAPPING_GUID = { 0x1, 0x2, 0x3, { 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb } };
|
||||
@@ -254,5 +254,5 @@ index 5ae9e225dc9..d3e86c68176 100644
|
||||
IDirectInput_Release(pDI);
|
||||
}
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 291fd879b030b16238329ff4f530ab3577ea6fc0 Mon Sep 17 00:00:00 2001
|
||||
From c204c9ed2a8504868c3cbf487e7a29c4e7254d3f Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 12:09:22 -0500
|
||||
Subject: [PATCH] ntdll: Create eventfd-based objects for semaphores.
|
||||
@@ -346,7 +346,7 @@ index 00000000000..a50a755149a
|
||||
+
|
||||
+extern int receive_fd( obj_handle_t *handle ) DECLSPEC_HIDDEN;
|
||||
diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c
|
||||
index 8f20da7eece..befa355a4fc 100644
|
||||
index 10884a7a673..28cc48e04bf 100644
|
||||
--- a/dlls/ntdll/unix/loader.c
|
||||
+++ b/dlls/ntdll/unix/loader.c
|
||||
@@ -89,6 +89,7 @@
|
||||
@@ -357,7 +357,7 @@ index 8f20da7eece..befa355a4fc 100644
|
||||
#include "wine/list.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
@@ -2081,6 +2082,7 @@ static void start_main_thread(void)
|
||||
@@ -2082,6 +2083,7 @@ static void start_main_thread(void)
|
||||
signal_init_thread( teb );
|
||||
dbg_init();
|
||||
startup_info_size = server_init_process();
|
||||
@@ -366,19 +366,19 @@ index 8f20da7eece..befa355a4fc 100644
|
||||
init_cpu_info();
|
||||
init_files();
|
||||
diff --git a/dlls/ntdll/unix/server.c b/dlls/ntdll/unix/server.c
|
||||
index a388247beb2..79b83589d81 100644
|
||||
index 6a3224d8385..de65f936a59 100644
|
||||
--- a/dlls/ntdll/unix/server.c
|
||||
+++ b/dlls/ntdll/unix/server.c
|
||||
@@ -104,7 +104,7 @@ timeout_t server_start_time = 0; /* time of server startup */
|
||||
sigset_t server_block_set; /* signals to block during server calls */
|
||||
@@ -106,7 +106,7 @@ sigset_t server_block_set; /* signals to block during server calls */
|
||||
static int fd_socket = -1; /* socket to exchange file descriptors with the server */
|
||||
static int initial_cwd = -1;
|
||||
static pid_t server_pid;
|
||||
-static pthread_mutex_t fd_cache_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
+pthread_mutex_t fd_cache_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
|
||||
/* atomically exchange a 64-bit value */
|
||||
static inline LONG64 interlocked_xchg64( LONG64 *dest, LONG64 val )
|
||||
@@ -801,7 +801,7 @@ void wine_server_send_fd( int fd )
|
||||
@@ -803,7 +803,7 @@ void wine_server_send_fd( int fd )
|
||||
*
|
||||
* Receive a file descriptor passed from the server.
|
||||
*/
|
||||
@@ -422,5 +422,5 @@ index b9dbfa322bc..99e57eca44c 100644
|
||||
int do_esync(void)
|
||||
{
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
From a1368a522fdc4e741fee7bfbd84eec632bcf4ce0 Mon Sep 17 00:00:00 2001
|
||||
From 24fa0367db3de31fdc2da7bd61c27699c091cdaa Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 15:11:12 -0500
|
||||
Subject: [PATCH] server: Create eventfd file descriptors for process objects.
|
||||
@@ -11,10 +11,10 @@ Subject: [PATCH] server: Create eventfd file descriptors for process objects.
|
||||
4 files changed, 35 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/server/esync.c b/server/esync.c
|
||||
index d61dfdcd956..e18b76bff5b 100644
|
||||
index c7b0323f204..27049ffbdb0 100644
|
||||
--- a/server/esync.c
|
||||
+++ b/server/esync.c
|
||||
@@ -297,6 +297,24 @@ struct esync *create_esync( struct object *root, const struct unicode_str *name,
|
||||
@@ -295,6 +295,24 @@ struct esync *create_esync( struct object *root, const struct unicode_str *name,
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -49,10 +49,10 @@ index 7ca4ca89394..6a0a367124d 100644
|
||||
void esync_init(void);
|
||||
+int esync_create_fd( int initval, int flags );
|
||||
diff --git a/server/process.c b/server/process.c
|
||||
index e144593445d..f9468c771d0 100644
|
||||
index ca9844c5c90..eca2f8f4bca 100644
|
||||
--- a/server/process.c
|
||||
+++ b/server/process.c
|
||||
@@ -49,6 +49,7 @@
|
||||
@@ -63,6 +63,7 @@
|
||||
#include "request.h"
|
||||
#include "user.h"
|
||||
#include "security.h"
|
||||
@@ -60,7 +60,7 @@ index e144593445d..f9468c771d0 100644
|
||||
|
||||
/* process object */
|
||||
|
||||
@@ -81,6 +82,7 @@ static struct security_descriptor *process_get_sd( struct object *obj );
|
||||
@@ -95,6 +96,7 @@ static struct security_descriptor *process_get_sd( struct object *obj );
|
||||
static void process_poll_event( struct fd *fd, int event );
|
||||
static struct list *process_get_kernel_obj_list( struct object *obj );
|
||||
static void process_destroy( struct object *obj );
|
||||
@@ -68,7 +68,7 @@ index e144593445d..f9468c771d0 100644
|
||||
static void terminate_process( struct process *process, struct thread *skip, int exit_code );
|
||||
|
||||
static const struct object_ops process_ops =
|
||||
@@ -91,7 +93,7 @@ static const struct object_ops process_ops =
|
||||
@@ -105,7 +107,7 @@ static const struct object_ops process_ops =
|
||||
add_queue, /* add_queue */
|
||||
remove_queue, /* remove_queue */
|
||||
process_signaled, /* signaled */
|
||||
@@ -77,15 +77,15 @@ index e144593445d..f9468c771d0 100644
|
||||
no_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
@@ -555,6 +557,7 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
process->trace_data = 0;
|
||||
@@ -684,6 +686,7 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
process->rawinput_mouse = NULL;
|
||||
process->rawinput_kbd = NULL;
|
||||
memset( &process->image_info, 0, sizeof(process->image_info) );
|
||||
+ process->esync_fd = -1;
|
||||
list_init( &process->kernel_object );
|
||||
list_init( &process->thread_list );
|
||||
list_init( &process->locks );
|
||||
@@ -611,6 +614,9 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
@@ -741,6 +744,9 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
if (!token_assign_label( process->token, security_high_label_sid ))
|
||||
goto error;
|
||||
|
||||
@@ -95,7 +95,7 @@ index e144593445d..f9468c771d0 100644
|
||||
set_fd_events( process->msg_fd, POLLIN ); /* start listening to events */
|
||||
return process;
|
||||
|
||||
@@ -657,6 +663,7 @@ static void process_destroy( struct object *obj )
|
||||
@@ -787,6 +793,7 @@ static void process_destroy( struct object *obj )
|
||||
if (process->token) release_object( process->token );
|
||||
free( process->dir_cache );
|
||||
free( process->image );
|
||||
@@ -103,7 +103,7 @@ index e144593445d..f9468c771d0 100644
|
||||
}
|
||||
|
||||
/* dump a process on stdout for debugging purposes */
|
||||
@@ -674,6 +681,13 @@ static int process_signaled( struct object *obj, struct wait_queue_entry *entry
|
||||
@@ -804,6 +811,13 @@ static int process_signaled( struct object *obj, struct wait_queue_entry *entry
|
||||
return !process->running_threads;
|
||||
}
|
||||
|
||||
@@ -118,17 +118,17 @@ index e144593445d..f9468c771d0 100644
|
||||
{
|
||||
access = default_map_access( obj, access );
|
||||
diff --git a/server/process.h b/server/process.h
|
||||
index 0e1a83859d9..71aae9c9494 100644
|
||||
index 632faf9c4bf..1ba69b3406e 100644
|
||||
--- a/server/process.h
|
||||
+++ b/server/process.h
|
||||
@@ -87,6 +87,7 @@ struct process
|
||||
const struct rawinput_device *rawinput_mouse; /* rawinput mouse device, if any */
|
||||
@@ -90,6 +90,7 @@ struct process
|
||||
const struct rawinput_device *rawinput_kbd; /* rawinput keyboard device, if any */
|
||||
struct list kernel_object; /* list of kernel object pointers */
|
||||
pe_image_info_t image_info; /* main exe image info */
|
||||
+ int esync_fd; /* esync file descriptor (signaled on exit) */
|
||||
};
|
||||
|
||||
/* process functions */
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,17 +1,17 @@
|
||||
From fb450637e3b533b3dbef8792aa389ca3614bedf3 Mon Sep 17 00:00:00 2001
|
||||
From fa9bbbaa8630c4b259e287437a627e226c1c34da Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Sat, 17 Oct 2020 19:13:16 -0500
|
||||
Subject: [PATCH] server: Create esync file descriptors for console servers.
|
||||
|
||||
---
|
||||
server/console.c | 22 +++++++++++++++++++++-
|
||||
1 file changed, 21 insertions(+), 1 deletion(-)
|
||||
server/console.c | 36 ++++++++++++++++++++++++++++--------
|
||||
1 file changed, 28 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/server/console.c b/server/console.c
|
||||
index dd1bf8f4119..887bba4e63c 100644
|
||||
index e7c97e99579..98ac09efc3f 100644
|
||||
--- a/server/console.c
|
||||
+++ b/server/console.c
|
||||
@@ -42,6 +42,7 @@
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "wincon.h"
|
||||
#include "winternl.h"
|
||||
#include "wine/condrv.h"
|
||||
@@ -19,10 +19,26 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
|
||||
struct screen_buffer;
|
||||
|
||||
@@ -139,11 +140,13 @@ struct console_server
|
||||
int busy; /* flag if server processing an ioctl */
|
||||
int term_fd; /* UNIX terminal fd */
|
||||
struct termios termios; /* original termios */
|
||||
@@ -131,20 +132,22 @@ struct console_host_ioctl
|
||||
|
||||
struct console_server
|
||||
{
|
||||
- struct object obj; /* object header */
|
||||
- struct fd *fd; /* pseudo-fd for ioctls */
|
||||
- struct console *console; /* attached console */
|
||||
- struct list queue; /* ioctl queue */
|
||||
- struct list read_queue; /* blocking read queue */
|
||||
+ struct object obj; /* object header */
|
||||
+ struct fd *fd; /* pseudo-fd for ioctls */
|
||||
+ struct console *console; /* attached console */
|
||||
+ struct list queue; /* ioctl queue */
|
||||
+ struct list read_queue; /* blocking read queue */
|
||||
unsigned int busy : 1; /* flag if server processing an ioctl */
|
||||
unsigned int once_input : 1; /* flag if input thread has already been requested */
|
||||
- int term_fd; /* UNIX terminal fd */
|
||||
- struct termios termios; /* original termios */
|
||||
+ int term_fd; /* UNIX terminal fd */
|
||||
+ struct termios termios; /* original termios */
|
||||
+ int esync_fd;
|
||||
};
|
||||
|
||||
@@ -33,7 +49,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
static struct fd *console_server_get_fd( struct object *obj );
|
||||
static struct object *console_server_lookup_name( struct object *obj, struct unicode_str *name,
|
||||
unsigned int attr, struct object *root );
|
||||
@@ -158,7 +161,7 @@ static const struct object_ops console_server_ops =
|
||||
@@ -159,7 +162,7 @@ static const struct object_ops console_server_ops =
|
||||
add_queue, /* add_queue */
|
||||
remove_queue, /* remove_queue */
|
||||
console_server_signaled, /* signaled */
|
||||
@@ -42,7 +58,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
no_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
console_server_get_fd, /* get_fd */
|
||||
@@ -526,6 +529,8 @@ static void disconnect_console_server( struct console_server *server )
|
||||
@@ -597,6 +600,8 @@ static void disconnect_console_server( struct console_server *server )
|
||||
list_remove( &call->entry );
|
||||
console_host_ioctl_terminate( call, STATUS_CANCELLED );
|
||||
}
|
||||
@@ -51,7 +67,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
while (!list_empty( &server->read_queue ))
|
||||
{
|
||||
struct console_host_ioctl *call = LIST_ENTRY( list_head( &server->read_queue ), struct console_host_ioctl, entry );
|
||||
@@ -844,6 +849,13 @@ static int console_server_signaled( struct object *obj, struct wait_queue_entry
|
||||
@@ -897,6 +902,13 @@ static int console_server_signaled( struct object *obj, struct wait_queue_entry
|
||||
return !server->console || !list_empty( &server->queue );
|
||||
}
|
||||
|
||||
@@ -65,7 +81,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
static struct fd *console_server_get_fd( struct object* obj )
|
||||
{
|
||||
struct console_server *server = (struct console_server*)obj;
|
||||
@@ -874,6 +886,10 @@ static struct object *create_console_server( void )
|
||||
@@ -928,6 +940,10 @@ static struct object *create_console_server( void )
|
||||
return NULL;
|
||||
}
|
||||
allow_fd_caching(server->fd);
|
||||
@@ -76,7 +92,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
|
||||
return &server->obj;
|
||||
}
|
||||
@@ -1388,6 +1404,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
@@ -1513,6 +1529,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
/* set result of previous ioctl */
|
||||
ioctl = LIST_ENTRY( list_head( &server->queue ), struct console_host_ioctl, entry );
|
||||
list_remove( &ioctl->entry );
|
||||
@@ -85,7 +101,7 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
}
|
||||
|
||||
if (ioctl)
|
||||
@@ -1486,6 +1504,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
@@ -1598,6 +1616,8 @@ DECL_HANDLER(get_next_console_request)
|
||||
{
|
||||
set_error( STATUS_PENDING );
|
||||
}
|
||||
@@ -95,5 +111,5 @@ index dd1bf8f4119..887bba4e63c 100644
|
||||
release_object( server );
|
||||
}
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
439
patches/nvcuda-CUDA_Support/0013-nvcuda-Update-spec-file.patch
Normal file
439
patches/nvcuda-CUDA_Support/0013-nvcuda-Update-spec-file.patch
Normal file
@@ -0,0 +1,439 @@
|
||||
From 30abce599e93165e426c74dd232159e030adfe28 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Wed, 5 Jan 2022 16:51:55 +1100
|
||||
Subject: [PATCH] nvcuda: Update spec file
|
||||
|
||||
---
|
||||
dlls/nvcuda/nvcuda.spec | 224 +++++++++++++++++++++++++++-------------
|
||||
1 file changed, 150 insertions(+), 74 deletions(-)
|
||||
|
||||
diff --git a/dlls/nvcuda/nvcuda.spec b/dlls/nvcuda/nvcuda.spec
|
||||
index 70bcc6db833..891920b8699 100644
|
||||
--- a/dlls/nvcuda/nvcuda.spec
|
||||
+++ b/dlls/nvcuda/nvcuda.spec
|
||||
@@ -19,6 +19,7 @@
|
||||
@ stdcall cuCtxGetCacheConfig(ptr) wine_cuCtxGetCacheConfig
|
||||
@ stdcall cuCtxGetCurrent(ptr) wine_cuCtxGetCurrent
|
||||
@ stdcall cuCtxGetDevice(ptr) wine_cuCtxGetDevice
|
||||
+@ stdcall cuCtxGetFlags(ptr) wine_cuCtxGetFlags
|
||||
@ stdcall cuCtxGetLimit(ptr long) wine_cuCtxGetLimit
|
||||
@ stdcall cuCtxGetSharedMemConfig(ptr) wine_cuCtxGetSharedMemConfig
|
||||
@ stdcall cuCtxGetStreamPriorityRange(ptr ptr) wine_cuCtxGetStreamPriorityRange
|
||||
@@ -84,15 +85,25 @@
|
||||
@ stub cuD3D9UnmapVertexBuffer
|
||||
@ stub cuD3D9UnregisterResource
|
||||
@ stub cuD3D9UnregisterVertexBuffer
|
||||
+@ stub cuDestroyExternalMemory
|
||||
+@ stub cuDestroyExternalSemaphore
|
||||
@ stdcall cuDeviceCanAccessPeer(ptr long long) wine_cuDeviceCanAccessPeer
|
||||
@ stdcall cuDeviceComputeCapability(ptr ptr long) wine_cuDeviceComputeCapability
|
||||
@ stdcall cuDeviceGet(ptr long) wine_cuDeviceGet
|
||||
@ stdcall cuDeviceGetAttribute(ptr long long) wine_cuDeviceGetAttribute
|
||||
@ stdcall cuDeviceGetByPCIBusId(ptr str) wine_cuDeviceGetByPCIBusId
|
||||
@ stdcall cuDeviceGetCount(ptr) wine_cuDeviceGetCount
|
||||
+@ stub cuDeviceGetLuid
|
||||
@ stdcall cuDeviceGetName(ptr long long) wine_cuDeviceGetName
|
||||
+@ stub cuDeviceGetP2PAttribute
|
||||
@ stdcall cuDeviceGetPCIBusId(ptr long long) wine_cuDeviceGetPCIBusId
|
||||
@ stdcall cuDeviceGetProperties(ptr long) wine_cuDeviceGetProperties
|
||||
+@ stub cuDeviceGetUuid
|
||||
+@ stdcall cuDevicePrimaryCtxGetState(long ptr ptr) wine_cuDevicePrimaryCtxGetState
|
||||
+@ stdcall cuDevicePrimaryCtxRelease(long) wine_cuDevicePrimaryCtxRelease
|
||||
+@ stdcall cuDevicePrimaryCtxReset(long) wine_cuDevicePrimaryCtxReset
|
||||
+@ stdcall cuDevicePrimaryCtxRetain(ptr long) wine_cuDevicePrimaryCtxRetain
|
||||
+@ stdcall cuDevicePrimaryCtxSetFlags(long long) wine_cuDevicePrimaryCtxSetFlags
|
||||
@ stdcall cuDeviceTotalMem(ptr long) wine_cuDeviceTotalMem
|
||||
@ stdcall cuDeviceTotalMem_v2(ptr long) wine_cuDeviceTotalMem_v2
|
||||
@ stdcall cuDriverGetVersion(ptr) wine_cuDriverGetVersion
|
||||
@@ -102,8 +113,12 @@
|
||||
@ stdcall cuEventElapsedTime(ptr ptr ptr) wine_cuEventElapsedTime
|
||||
@ stdcall cuEventQuery(ptr) wine_cuEventQuery
|
||||
@ stdcall cuEventRecord(ptr ptr) wine_cuEventRecord
|
||||
+@ stdcall cuEventRecord_ptsz(ptr ptr) wine_cuEventRecord_ptsz
|
||||
@ stdcall cuEventSynchronize(ptr) wine_cuEventSynchronize
|
||||
+@ stub cuExternalMemoryGetMappedBuffer
|
||||
+@ stub cuExternalMemoryGetMappedMipmappedArray
|
||||
@ stdcall cuFuncGetAttribute(ptr long ptr) wine_cuFuncGetAttribute
|
||||
+@ stub cuFuncSetAttribute
|
||||
@ stdcall cuFuncSetBlockShape(ptr long long long) wine_cuFuncSetBlockShape
|
||||
@ stdcall cuFuncSetCacheConfig(ptr long) wine_cuFuncSetCacheConfig
|
||||
@ stdcall cuFuncSetSharedMemConfig(ptr long) wine_cuFuncSetSharedMemConfig
|
||||
@@ -111,11 +126,14 @@
|
||||
@ stdcall cuGLCtxCreate(ptr long long) wine_cuGLCtxCreate
|
||||
@ stdcall cuGLCtxCreate_v2(ptr long long) wine_cuGLCtxCreate_v2
|
||||
@ stdcall cuGLGetDevices(ptr ptr long long) wine_cuGLGetDevices
|
||||
+@ stdcall cuGLGetDevices_v2(ptr ptr long long) wine_cuGLGetDevices_v2
|
||||
@ stdcall cuGLInit() wine_cuGLInit
|
||||
@ stdcall cuGLMapBufferObject(ptr ptr long) wine_cuGLMapBufferObject
|
||||
@ stdcall cuGLMapBufferObjectAsync(ptr ptr long ptr) wine_cuGLMapBufferObjectAsync
|
||||
@ stdcall cuGLMapBufferObjectAsync_v2(ptr ptr long ptr) wine_cuGLMapBufferObjectAsync_v2
|
||||
+@ stdcall cuGLMapBufferObjectAsync_v2_ptsz(ptr ptr long ptr) wine_cuGLMapBufferObjectAsync_v2_ptsz
|
||||
@ stdcall cuGLMapBufferObject_v2(ptr ptr long) wine_cuGLMapBufferObject_v2
|
||||
+@ stdcall cuGLMapBufferObject_v2_ptds(ptr ptr long) wine_cuGLMapBufferObject_v2_ptds
|
||||
@ stdcall cuGLRegisterBufferObject(long) wine_cuGLRegisterBufferObject
|
||||
@ stdcall cuGLSetBufferObjectMapFlags(long long) wine_cuGLSetBufferObjectMapFlags
|
||||
@ stdcall cuGLUnmapBufferObject(long) wine_cuGLUnmapBufferObject
|
||||
@@ -124,19 +142,57 @@
|
||||
@ stdcall cuGetErrorName(long ptr) wine_cuGetErrorName
|
||||
@ stdcall cuGetErrorString(long ptr) wine_cuGetErrorString
|
||||
@ stdcall cuGetExportTable(ptr ptr) wine_cuGetExportTable
|
||||
+@ stub cuGraphAddChildGraphNode
|
||||
+@ stub cuGraphAddDependencies
|
||||
+@ stub cuGraphAddEmptyNode
|
||||
+@ stub cuGraphAddHostNode
|
||||
+@ stub cuGraphAddKernelNode
|
||||
+@ stub cuGraphAddMemcpyNode
|
||||
+@ stub cuGraphAddMemsetNode
|
||||
+@ stub cuGraphChildGraphNodeGetGraph
|
||||
+@ stub cuGraphClone
|
||||
+@ stub cuGraphCreate
|
||||
+@ stub cuGraphDestroy
|
||||
+@ stub cuGraphDestroyNode
|
||||
+@ stub cuGraphExecDestroy
|
||||
+@ stub cuGraphExecKernelNodeSetParams
|
||||
+@ stub cuGraphGetEdges
|
||||
+@ stub cuGraphGetNodes
|
||||
+@ stub cuGraphGetRootNodes
|
||||
+@ stub cuGraphHostNodeGetParams
|
||||
+@ stub cuGraphHostNodeSetParams
|
||||
+@ stub cuGraphInstantiate
|
||||
+@ stub cuGraphKernelNodeGetParams
|
||||
+@ stub cuGraphKernelNodeSetParams
|
||||
+@ stub cuGraphLaunch
|
||||
+@ stub cuGraphLaunch_ptsz
|
||||
+@ stub cuGraphMemcpyNodeGetParams
|
||||
+@ stub cuGraphMemcpyNodeSetParams
|
||||
+@ stub cuGraphMemsetNodeGetParams
|
||||
+@ stub cuGraphMemsetNodeSetParams
|
||||
+@ stub cuGraphNodeFindInClone
|
||||
+@ stub cuGraphNodeGetDependencies
|
||||
+@ stub cuGraphNodeGetDependentNodes
|
||||
+@ stub cuGraphNodeGetType
|
||||
+@ stub cuGraphRemoveDependencies
|
||||
@ stub cuGraphicsD3D10RegisterResource
|
||||
@ stdcall cuGraphicsD3D11RegisterResource(ptr ptr long) wine_cuGraphicsD3D11RegisterResource
|
||||
@ stub cuGraphicsD3D9RegisterResource
|
||||
@ stdcall cuGraphicsGLRegisterBuffer(ptr long long) wine_cuGraphicsGLRegisterBuffer
|
||||
@ stdcall cuGraphicsGLRegisterImage(ptr long long long) wine_cuGraphicsGLRegisterImage
|
||||
@ stdcall cuGraphicsMapResources(long ptr ptr) wine_cuGraphicsMapResources
|
||||
+@ stdcall cuGraphicsMapResources_ptsz(long ptr ptr) wine_cuGraphicsMapResources_ptsz
|
||||
@ stdcall cuGraphicsResourceGetMappedMipmappedArray(ptr ptr) wine_cuGraphicsResourceGetMappedMipmappedArray
|
||||
@ stdcall cuGraphicsResourceGetMappedPointer(ptr ptr ptr) wine_cuGraphicsResourceGetMappedPointer
|
||||
@ stdcall cuGraphicsResourceGetMappedPointer_v2(ptr ptr ptr) wine_cuGraphicsResourceGetMappedPointer_v2
|
||||
@ stdcall cuGraphicsResourceSetMapFlags(ptr long) wine_cuGraphicsResourceSetMapFlags
|
||||
+@ stdcall cuGraphicsResourceSetMapFlags_v2(ptr long) wine_cuGraphicsResourceSetMapFlags_v2
|
||||
@ stdcall cuGraphicsSubResourceGetMappedArray(ptr ptr long long) wine_cuGraphicsSubResourceGetMappedArray
|
||||
@ stdcall cuGraphicsUnmapResources(long ptr ptr) wine_cuGraphicsUnmapResources
|
||||
+@ stdcall cuGraphicsUnmapResources_ptsz(long ptr ptr) wine_cuGraphicsUnmapResources_ptsz
|
||||
@ stdcall cuGraphicsUnregisterResource(ptr) wine_cuGraphicsUnregisterResource
|
||||
+@ stub cuImportExternalMemory
|
||||
+@ stub cuImportExternalSemaphore
|
||||
@ stdcall cuInit(long) wine_cuInit
|
||||
@ stdcall cuIpcCloseMemHandle(long) wine_cuIpcCloseMemHandle
|
||||
@ stdcall cuIpcGetEventHandle(ptr ptr) wine_cuIpcGetEventHandle
|
||||
@@ -144,14 +200,24 @@
|
||||
@ stdcall cuIpcOpenEventHandle(ptr ptr) wine_cuIpcOpenEventHandle
|
||||
@ stdcall cuIpcOpenMemHandle(ptr ptr long) wine_cuIpcOpenMemHandle
|
||||
@ stdcall cuLaunch(ptr) wine_cuLaunch
|
||||
+@ stub cuLaunchCooperativeKernel
|
||||
+@ stub cuLaunchCooperativeKernelMultiDevice
|
||||
+@ stub cuLaunchCooperativeKernel_ptsz
|
||||
@ stdcall cuLaunchGrid(ptr long long) wine_cuLaunchGrid
|
||||
@ stdcall cuLaunchGridAsync(ptr long long ptr) wine_cuLaunchGridAsync
|
||||
+@ stub cuLaunchHostFunc
|
||||
+@ stub cuLaunchHostFunc_ptsz
|
||||
@ stdcall cuLaunchKernel(ptr long long long long long long long ptr ptr ptr) wine_cuLaunchKernel
|
||||
+@ stdcall cuLaunchKernel_ptsz(ptr long long long long long long long ptr ptr ptr) wine_cuLaunchKernel_ptsz
|
||||
@ stdcall cuLinkAddData(ptr long ptr long str long ptr ptr) wine_cuLinkAddData
|
||||
+@ stdcall cuLinkAddData_v2(ptr long ptr long str long ptr ptr) wine_cuLinkAddData_v2
|
||||
@ stub cuLinkAddFile
|
||||
+@ stub cuLinkAddFile_v2
|
||||
@ stdcall cuLinkComplete(ptr ptr ptr) wine_cuLinkComplete
|
||||
@ stdcall cuLinkCreate(long ptr ptr ptr) wine_cuLinkCreate
|
||||
+@ stdcall cuLinkCreate_v2(long ptr ptr ptr) wine_cuLinkCreate_v2
|
||||
@ stdcall cuLinkDestroy(ptr) wine_cuLinkDestroy
|
||||
+@ stub cuMemAdvise
|
||||
@ stdcall cuMemAlloc(ptr long) wine_cuMemAlloc
|
||||
@ stdcall cuMemAllocHost(ptr long) wine_cuMemAllocHost
|
||||
@ stdcall cuMemAllocHost_v2(ptr long) wine_cuMemAllocHost_v2
|
||||
@@ -171,67 +237,108 @@
|
||||
@ stdcall cuMemHostGetDevicePointer_v2(ptr ptr long) wine_cuMemHostGetDevicePointer_v2
|
||||
@ stdcall cuMemHostGetFlags(ptr ptr) wine_cuMemHostGetFlags
|
||||
@ stdcall cuMemHostRegister(ptr long long) wine_cuMemHostRegister
|
||||
+@ stdcall cuMemHostRegister_v2(ptr long long) wine_cuMemHostRegister_v2
|
||||
@ stdcall cuMemHostUnregister(ptr) wine_cuMemHostUnregister
|
||||
+@ stub cuMemPrefetchAsync
|
||||
+@ stub cuMemPrefetchAsync_ptsz
|
||||
+@ stub cuMemRangeGetAttribute
|
||||
+@ stub cuMemRangeGetAttributes
|
||||
+@ stdcall cuMemcpy(long long long) wine_cuMemcpy
|
||||
@ stdcall cuMemcpy2D(ptr) wine_cuMemcpy2D
|
||||
@ stdcall cuMemcpy2DAsync(ptr ptr) wine_cuMemcpy2DAsync
|
||||
@ stdcall cuMemcpy2DAsync_v2(ptr ptr) wine_cuMemcpy2DAsync_v2
|
||||
+@ stdcall cuMemcpy2DAsync_v2_ptsz(ptr ptr) wine_cuMemcpy2DAsync_v2_ptsz
|
||||
@ stdcall cuMemcpy2DUnaligned(ptr) wine_cuMemcpy2DUnaligned
|
||||
@ stdcall cuMemcpy2DUnaligned_v2(ptr) wine_cuMemcpy2DUnaligned_v2
|
||||
+@ stdcall cuMemcpy2DUnaligned_v2_ptds(ptr) wine_cuMemcpy2DUnaligned_v2_ptds
|
||||
@ stdcall cuMemcpy2D_v2(ptr) wine_cuMemcpy2D_v2
|
||||
+@ stdcall cuMemcpy2D_v2_ptds(ptr) wine_cuMemcpy2D_v2_ptds
|
||||
@ stdcall cuMemcpy3D(ptr) wine_cuMemcpy3D
|
||||
@ stdcall cuMemcpy3DAsync(ptr ptr) wine_cuMemcpy3DAsync
|
||||
@ stdcall cuMemcpy3DAsync_v2(ptr ptr) wine_cuMemcpy3DAsync_v2
|
||||
+@ stdcall cuMemcpy3DAsync_v2_ptsz(ptr ptr) wine_cuMemcpy3DAsync_v2_ptsz
|
||||
@ stdcall cuMemcpy3DPeer(ptr) wine_cuMemcpy3DPeer
|
||||
@ stdcall cuMemcpy3DPeerAsync(ptr ptr) wine_cuMemcpy3DPeerAsync
|
||||
+@ stdcall cuMemcpy3DPeerAsync_ptsz(ptr ptr) wine_cuMemcpy3DPeerAsync_ptsz
|
||||
+@ stdcall cuMemcpy3DPeer_ptds(ptr) wine_cuMemcpy3DPeer_ptds
|
||||
@ stdcall cuMemcpy3D_v2(ptr) wine_cuMemcpy3D_v2
|
||||
-@ stdcall cuMemcpy(long long long) wine_cuMemcpy
|
||||
+@ stdcall cuMemcpy3D_v2_ptds(ptr) wine_cuMemcpy3D_v2_ptds
|
||||
@ stdcall cuMemcpyAsync(long long long ptr) wine_cuMemcpyAsync
|
||||
+@ stdcall cuMemcpyAsync_ptsz(long long long ptr) wine_cuMemcpyAsync_ptsz
|
||||
@ stdcall cuMemcpyAtoA(ptr long ptr long long) wine_cuMemcpyAtoA
|
||||
@ stdcall cuMemcpyAtoA_v2(ptr long ptr long long) wine_cuMemcpyAtoA_v2
|
||||
+@ stdcall cuMemcpyAtoA_v2_ptds(ptr long ptr long long) wine_cuMemcpyAtoA_v2_ptds
|
||||
@ stdcall cuMemcpyAtoD(long ptr long long) wine_cuMemcpyAtoD
|
||||
@ stdcall cuMemcpyAtoD_v2(long ptr long long) wine_cuMemcpyAtoD_v2
|
||||
+@ stdcall cuMemcpyAtoD_v2_ptds(long ptr long long) wine_cuMemcpyAtoD_v2_ptds
|
||||
@ stdcall cuMemcpyAtoH(ptr ptr long long) wine_cuMemcpyAtoH
|
||||
@ stdcall cuMemcpyAtoHAsync(ptr ptr long long ptr) wine_cuMemcpyAtoHAsync
|
||||
@ stdcall cuMemcpyAtoHAsync_v2(ptr ptr long long ptr) wine_cuMemcpyAtoHAsync_v2
|
||||
+@ stdcall cuMemcpyAtoHAsync_v2_ptsz(ptr ptr long long ptr) wine_cuMemcpyAtoHAsync_v2_ptsz
|
||||
@ stdcall cuMemcpyAtoH_v2(ptr ptr long long) wine_cuMemcpyAtoH_v2
|
||||
+@ stdcall cuMemcpyAtoH_v2_ptds(ptr ptr long long) wine_cuMemcpyAtoH_v2_ptds
|
||||
@ stdcall cuMemcpyDtoA(ptr long long long) wine_cuMemcpyDtoA
|
||||
@ stdcall cuMemcpyDtoA_v2(ptr long long long) wine_cuMemcpyDtoA_v2
|
||||
+@ stdcall cuMemcpyDtoA_v2_ptds(ptr long long long) wine_cuMemcpyDtoA_v2_ptds
|
||||
@ stdcall cuMemcpyDtoD(long long long) wine_cuMemcpyDtoD
|
||||
@ stdcall cuMemcpyDtoDAsync(long long long ptr) wine_cuMemcpyDtoDAsync
|
||||
@ stdcall cuMemcpyDtoDAsync_v2(long long long ptr) wine_cuMemcpyDtoDAsync_v2
|
||||
+@ stdcall cuMemcpyDtoDAsync_v2_ptsz(long long long ptr) wine_cuMemcpyDtoDAsync_v2_ptsz
|
||||
@ stdcall cuMemcpyDtoD_v2(long long long) wine_cuMemcpyDtoD_v2
|
||||
+@ stdcall cuMemcpyDtoD_v2_ptds(long long long) wine_cuMemcpyDtoD_v2_ptds
|
||||
@ stdcall cuMemcpyDtoH(ptr long long) wine_cuMemcpyDtoH
|
||||
@ stdcall cuMemcpyDtoHAsync(ptr long long ptr) wine_cuMemcpyDtoHAsync
|
||||
@ stdcall cuMemcpyDtoHAsync_v2(ptr long long ptr) wine_cuMemcpyDtoHAsync_v2
|
||||
+@ stdcall cuMemcpyDtoHAsync_v2_ptsz(ptr long long ptr) wine_cuMemcpyDtoHAsync_v2_ptsz
|
||||
@ stdcall cuMemcpyDtoH_v2(ptr long long) wine_cuMemcpyDtoH_v2
|
||||
+@ stdcall cuMemcpyDtoH_v2_ptds(ptr long long) wine_cuMemcpyDtoH_v2_ptds
|
||||
@ stdcall cuMemcpyHtoA(ptr long ptr long) wine_cuMemcpyHtoA
|
||||
@ stdcall cuMemcpyHtoAAsync(ptr long ptr long ptr) wine_cuMemcpyHtoAAsync
|
||||
@ stdcall cuMemcpyHtoAAsync_v2(ptr long ptr long ptr) wine_cuMemcpyHtoAAsync_v2
|
||||
+@ stdcall cuMemcpyHtoAAsync_v2_ptsz(ptr long ptr long ptr) wine_cuMemcpyHtoAAsync_v2_ptsz
|
||||
@ stdcall cuMemcpyHtoA_v2(ptr long ptr long) wine_cuMemcpyHtoA_v2
|
||||
+@ stdcall cuMemcpyHtoA_v2_ptds(ptr long ptr long) wine_cuMemcpyHtoA_v2_ptds
|
||||
@ stdcall cuMemcpyHtoD(long ptr long) wine_cuMemcpyHtoD
|
||||
@ stdcall cuMemcpyHtoDAsync(long ptr long ptr) wine_cuMemcpyHtoDAsync
|
||||
@ stdcall cuMemcpyHtoDAsync_v2(long ptr long ptr) wine_cuMemcpyHtoDAsync_v2
|
||||
+@ stdcall cuMemcpyHtoDAsync_v2_ptsz(long ptr long ptr) wine_cuMemcpyHtoDAsync_v2_ptsz
|
||||
@ stdcall cuMemcpyHtoD_v2(long ptr long) wine_cuMemcpyHtoD_v2
|
||||
+@ stdcall cuMemcpyHtoD_v2_ptds(long ptr long) wine_cuMemcpyHtoD_v2_ptds
|
||||
@ stdcall cuMemcpyPeer(long ptr long ptr long) wine_cuMemcpyPeer
|
||||
@ stdcall cuMemcpyPeerAsync(long ptr long ptr long ptr) wine_cuMemcpyPeerAsync
|
||||
+@ stdcall cuMemcpyPeerAsync_ptsz(long ptr long ptr long ptr) wine_cuMemcpyPeerAsync_ptsz
|
||||
+@ stdcall cuMemcpyPeer_ptds(long ptr long ptr long) wine_cuMemcpyPeer_ptds
|
||||
+@ stdcall cuMemcpy_ptds(long long long) wine_cuMemcpy_ptds
|
||||
@ stdcall cuMemsetD16(long long long) wine_cuMemsetD16
|
||||
@ stdcall cuMemsetD16Async(long long long ptr) wine_cuMemsetD16Async
|
||||
+@ stdcall cuMemsetD16Async_ptsz(long long long ptr) wine_cuMemsetD16Async_ptsz
|
||||
@ stdcall cuMemsetD16_v2(long long long) wine_cuMemsetD16_v2
|
||||
+@ stdcall cuMemsetD16_v2_ptds(long long long) wine_cuMemsetD16_v2_ptds
|
||||
@ stdcall cuMemsetD2D16(long long long long long) wine_cuMemsetD2D16
|
||||
@ stdcall cuMemsetD2D16Async(long long long long long ptr) wine_cuMemsetD2D16Async
|
||||
+@ stdcall cuMemsetD2D16Async_ptsz(long long long long long ptr) wine_cuMemsetD2D16Async_ptsz
|
||||
@ stdcall cuMemsetD2D16_v2(long long long long long) wine_cuMemsetD2D16_v2
|
||||
+@ stdcall cuMemsetD2D16_v2_ptds(long long long long long) wine_cuMemsetD2D16_v2_ptds
|
||||
@ stdcall cuMemsetD2D32(long long long long long) wine_cuMemsetD2D32
|
||||
@ stdcall cuMemsetD2D32Async(long long long long long ptr) wine_cuMemsetD2D32Async
|
||||
+@ stdcall cuMemsetD2D32Async_ptsz(long long long long long ptr) wine_cuMemsetD2D32Async_ptsz
|
||||
@ stdcall cuMemsetD2D32_v2(long long long long long) wine_cuMemsetD2D32_v2
|
||||
+@ stdcall cuMemsetD2D32_v2_ptds(long long long long long) wine_cuMemsetD2D32_v2_ptds
|
||||
@ stdcall cuMemsetD2D8(long long long long long) wine_cuMemsetD2D8
|
||||
@ stdcall cuMemsetD2D8Async(long long long long long ptr) wine_cuMemsetD2D8Async
|
||||
+@ stdcall cuMemsetD2D8Async_ptsz(long long long long long ptr) wine_cuMemsetD2D8Async_ptsz
|
||||
@ stdcall cuMemsetD2D8_v2(long long long long long) wine_cuMemsetD2D8_v2
|
||||
+@ stdcall cuMemsetD2D8_v2_ptds(long long long long long) wine_cuMemsetD2D8_v2_ptds
|
||||
@ stdcall cuMemsetD32(long long long) wine_cuMemsetD32
|
||||
@ stdcall cuMemsetD32Async(long long long ptr) wine_cuMemsetD32Async
|
||||
+@ stdcall cuMemsetD32Async_ptsz(long long long ptr) wine_cuMemsetD32Async_ptsz
|
||||
@ stdcall cuMemsetD32_v2(long long long) wine_cuMemsetD32_v2
|
||||
+@ stdcall cuMemsetD32_v2_ptds(long long long) wine_cuMemsetD32_v2_ptds
|
||||
@ stdcall cuMemsetD8(long long long) wine_cuMemsetD8
|
||||
@ stdcall cuMemsetD8Async(long long long ptr) wine_cuMemsetD8Async
|
||||
+@ stdcall cuMemsetD8Async_ptsz(long long long ptr) wine_cuMemsetD8Async_ptsz
|
||||
@ stdcall cuMemsetD8_v2(long long long) wine_cuMemsetD8_v2
|
||||
+@ stdcall cuMemsetD8_v2_ptds(long long long) wine_cuMemsetD8_v2_ptds
|
||||
@ stdcall cuMipmappedArrayCreate(ptr ptr long) wine_cuMipmappedArrayCreate
|
||||
@ stdcall cuMipmappedArrayDestroy(ptr) wine_cuMipmappedArrayDestroy
|
||||
@ stdcall cuMipmappedArrayGetLevel(ptr ptr long) wine_cuMipmappedArrayGetLevel
|
||||
@@ -245,27 +352,63 @@
|
||||
@ stdcall cuModuleLoadDataEx(ptr ptr long ptr ptr) wine_cuModuleLoadDataEx
|
||||
@ stdcall cuModuleLoadFatBinary(ptr ptr) wine_cuModuleLoadFatBinary
|
||||
@ stdcall cuModuleUnload(ptr) wine_cuModuleUnload
|
||||
+@ stdcall cuOccupancyMaxActiveBlocksPerMultiprocessor(ptr ptr long long) wine_cuOccupancyMaxActiveBlocksPerMultiprocessor
|
||||
+@ stdcall cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(ptr ptr long long long) wine_cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
|
||||
+#@ stdcall cuOccupancyMaxPotentialBlockSize(ptr ptr ptr ptr long long) wine_cuOccupancyMaxPotentialBlockSize
|
||||
+#@ stdcall cuOccupancyMaxPotentialBlockSizeWithFlags(ptr ptr ptr ptr long long long) wine_cuOccupancyMaxPotentialBlockSizeWithFlags
|
||||
@ stdcall cuParamSetSize(ptr long) wine_cuParamSetSize
|
||||
@ stdcall cuParamSetTexRef(ptr long ptr) wine_cuParamSetTexRef
|
||||
@ stdcall cuParamSetf(ptr long float) wine_cuParamSetf
|
||||
@ stdcall cuParamSeti(ptr long long) wine_cuParamSeti
|
||||
@ stdcall cuParamSetv(ptr long ptr long) wine_cuParamSetv
|
||||
@ stdcall cuPointerGetAttribute(ptr long long) wine_cuPointerGetAttribute
|
||||
+@ stdcall cuPointerGetAttributes(long ptr ptr long) wine_cuPointerGetAttributes
|
||||
@ stdcall cuPointerSetAttribute(ptr long long) wine_cuPointerSetAttribute
|
||||
@ stub cuProfilerInitialize
|
||||
@ stub cuProfilerStart
|
||||
@ stub cuProfilerStop
|
||||
+@ stub cuSignalExternalSemaphoresAsync
|
||||
+@ stub cuSignalExternalSemaphoresAsync_ptsz
|
||||
@ stdcall cuStreamAddCallback(ptr ptr ptr long) wine_cuStreamAddCallback
|
||||
+@ stdcall cuStreamAddCallback_ptsz(ptr ptr ptr long) wine_cuStreamAddCallback_ptsz
|
||||
@ stdcall cuStreamAttachMemAsync(ptr long long long) wine_cuStreamAttachMemAsync
|
||||
+@ stdcall cuStreamAttachMemAsync_ptsz(ptr long long long) wine_cuStreamAttachMemAsync_ptsz
|
||||
+@ stub cuStreamBatchMemOp
|
||||
+@ stub cuStreamBatchMemOp_ptsz
|
||||
+@ stub cuStreamBeginCapture
|
||||
+@ stub cuStreamBeginCapture_ptsz
|
||||
+@ stub cuStreamBeginCapture_v2
|
||||
+@ stub cuStreamBeginCapture_v2_ptsz
|
||||
@ stdcall cuStreamCreate(ptr long) wine_cuStreamCreate
|
||||
@ stdcall cuStreamCreateWithPriority(ptr long long) wine_cuStreamCreateWithPriority
|
||||
@ stdcall cuStreamDestroy(ptr) wine_cuStreamDestroy
|
||||
@ stdcall cuStreamDestroy_v2(ptr) wine_cuStreamDestroy
|
||||
+@ stub cuStreamEndCapture
|
||||
+@ stub cuStreamEndCapture_ptsz
|
||||
+@ stub cuStreamGetCaptureInfo
|
||||
+@ stub cuStreamGetCaptureInfo_ptsz
|
||||
+@ stub cuStreamGetCtx
|
||||
+@ stub cuStreamGetCtx_ptsz
|
||||
@ stdcall cuStreamGetFlags(ptr ptr) wine_cuStreamGetFlags
|
||||
+@ stdcall cuStreamGetFlags_ptsz(ptr ptr) wine_cuStreamGetFlags_ptsz
|
||||
@ stdcall cuStreamGetPriority(ptr ptr) wine_cuStreamGetPriority
|
||||
+@ stdcall cuStreamGetPriority_ptsz(ptr ptr) wine_cuStreamGetPriority_ptsz
|
||||
+@ stub cuStreamIsCapturing
|
||||
+@ stub cuStreamIsCapturing_ptsz
|
||||
@ stdcall cuStreamQuery(ptr) wine_cuStreamQuery
|
||||
+@ stdcall cuStreamQuery_ptsz(ptr) wine_cuStreamQuery_ptsz
|
||||
@ stdcall cuStreamSynchronize(ptr) wine_cuStreamSynchronize
|
||||
+@ stdcall cuStreamSynchronize_ptsz(ptr) wine_cuStreamSynchronize_ptsz
|
||||
@ stdcall cuStreamWaitEvent(ptr ptr long) wine_cuStreamWaitEvent
|
||||
+@ stdcall cuStreamWaitEvent_ptsz(ptr ptr long) wine_cuStreamWaitEvent_ptsz
|
||||
+@ stub cuStreamWaitValue32
|
||||
+@ stub cuStreamWaitValue32_ptsz
|
||||
+@ stub cuStreamWaitValue64
|
||||
+@ stub cuStreamWaitValue64_ptsz
|
||||
+@ stub cuStreamWriteValue32
|
||||
+@ stub cuStreamWriteValue32_ptsz
|
||||
+@ stub cuStreamWriteValue64
|
||||
+@ stub cuStreamWriteValue64_ptsz
|
||||
@ stdcall cuSurfObjectCreate(ptr ptr) wine_cuSurfObjectCreate
|
||||
@ stdcall cuSurfObjectDestroy(int64) wine_cuSurfObjectDestroy
|
||||
@ stdcall cuSurfObjectGetResourceDesc(ptr int64) wine_cuSurfObjectGetResourceDesc
|
||||
@@ -282,6 +425,7 @@
|
||||
@ stdcall cuTexRefGetAddressMode(ptr ptr long) wine_cuTexRefGetAddressMode
|
||||
@ stdcall cuTexRefGetAddress_v2(ptr ptr) wine_cuTexRefGetAddress_v2
|
||||
@ stdcall cuTexRefGetArray(ptr ptr) wine_cuTexRefGetArray
|
||||
+@ stub cuTexRefGetBorderColor
|
||||
@ stdcall cuTexRefGetFilterMode(ptr ptr) wine_cuTexRefGetFilterMode
|
||||
@ stdcall cuTexRefGetFlags(ptr ptr) wine_cuTexRefGetFlags
|
||||
@ stdcall cuTexRefGetFormat(ptr ptr ptr) wine_cuTexRefGetFormat
|
||||
@@ -290,13 +434,14 @@
|
||||
@ stdcall cuTexRefGetMipmapLevelBias(ptr ptr) wine_cuTexRefGetMipmapLevelBias
|
||||
@ stdcall cuTexRefGetMipmapLevelClamp(ptr ptr ptr) wine_cuTexRefGetMipmapLevelClamp
|
||||
@ stdcall cuTexRefGetMipmappedArray(ptr ptr) wine_cuTexRefGetMipmappedArray
|
||||
+@ stdcall cuTexRefSetAddress(ptr ptr long long) wine_cuTexRefSetAddress
|
||||
@ stdcall cuTexRefSetAddress2D(ptr ptr long long) wine_cuTexRefSetAddress2D
|
||||
@ stdcall cuTexRefSetAddress2D_v2(ptr ptr long long) wine_cuTexRefSetAddress2D_v2
|
||||
@ stdcall cuTexRefSetAddress2D_v3(ptr ptr long long) wine_cuTexRefSetAddress2D_v3
|
||||
-@ stdcall cuTexRefSetAddress(ptr ptr long long) wine_cuTexRefSetAddress
|
||||
@ stdcall cuTexRefSetAddressMode(ptr long long) wine_cuTexRefSetAddressMode
|
||||
@ stdcall cuTexRefSetAddress_v2(ptr ptr long long) wine_cuTexRefSetAddress_v2
|
||||
@ stdcall cuTexRefSetArray(ptr ptr long) wine_cuTexRefSetArray
|
||||
+@ stub cuTexRefSetBorderColor
|
||||
@ stdcall cuTexRefSetFilterMode(ptr long) wine_cuTexRefSetFilterMode
|
||||
@ stdcall cuTexRefSetFlags(ptr long) wine_cuTexRefSetFlags
|
||||
@ stdcall cuTexRefSetFormat(ptr long long) wine_cuTexRefSetFormat
|
||||
@@ -305,76 +450,7 @@
|
||||
@ stdcall cuTexRefSetMipmapLevelBias(ptr float) wine_cuTexRefSetMipmapLevelBias
|
||||
@ stdcall cuTexRefSetMipmapLevelClamp(ptr float float) wine_cuTexRefSetMipmapLevelClamp
|
||||
@ stdcall cuTexRefSetMipmappedArray(ptr ptr long) wine_cuTexRefSetMipmappedArray
|
||||
+@ stub cuThreadExchangeStreamCaptureMode
|
||||
@ stub cuWGLGetDevice
|
||||
-
|
||||
-# CUDA 6.5
|
||||
-@ stdcall cuGLGetDevices_v2(ptr ptr long long) wine_cuGLGetDevices_v2
|
||||
-@ stdcall cuGraphicsResourceSetMapFlags_v2(ptr long) wine_cuGraphicsResourceSetMapFlags_v2
|
||||
-@ stdcall cuLinkAddData_v2(ptr long ptr long str long ptr ptr) wine_cuLinkAddData_v2
|
||||
-@ stub cuLinkAddFile_v2
|
||||
-@ stdcall cuLinkCreate_v2(long ptr ptr ptr) wine_cuLinkCreate_v2
|
||||
-@ stdcall cuMemHostRegister_v2(ptr long long) wine_cuMemHostRegister_v2
|
||||
-@ stdcall cuOccupancyMaxActiveBlocksPerMultiprocessor(ptr ptr long long) wine_cuOccupancyMaxActiveBlocksPerMultiprocessor
|
||||
-@ stub cuOccupancyMaxPotentialBlockSize
|
||||
-#@ stdcall cuOccupancyMaxPotentialBlockSize(ptr ptr ptr ptr long long) wine_cuOccupancyMaxPotentialBlockSize
|
||||
-
|
||||
-# CUDA 7.0
|
||||
-@ stdcall cuCtxGetFlags(ptr) wine_cuCtxGetFlags
|
||||
-@ stdcall cuDevicePrimaryCtxGetState(long ptr ptr) wine_cuDevicePrimaryCtxGetState
|
||||
-@ stdcall cuDevicePrimaryCtxRelease(long) wine_cuDevicePrimaryCtxRelease
|
||||
-@ stdcall cuDevicePrimaryCtxReset(long) wine_cuDevicePrimaryCtxReset
|
||||
-@ stdcall cuDevicePrimaryCtxRetain(ptr long) wine_cuDevicePrimaryCtxRetain
|
||||
-@ stdcall cuDevicePrimaryCtxSetFlags(long long) wine_cuDevicePrimaryCtxSetFlags
|
||||
-@ stdcall cuEventRecord_ptsz(ptr ptr) wine_cuEventRecord_ptsz
|
||||
-@ stdcall cuGLMapBufferObjectAsync_v2_ptsz(ptr ptr long ptr) wine_cuGLMapBufferObjectAsync_v2_ptsz
|
||||
-@ stdcall cuGLMapBufferObject_v2_ptds(ptr ptr long) wine_cuGLMapBufferObject_v2_ptds
|
||||
-@ stdcall cuGraphicsMapResources_ptsz(long ptr ptr) wine_cuGraphicsMapResources_ptsz
|
||||
-@ stdcall cuGraphicsUnmapResources_ptsz(long ptr ptr) wine_cuGraphicsUnmapResources_ptsz
|
||||
-@ stdcall cuLaunchKernel_ptsz(ptr long long long long long long long ptr ptr ptr) wine_cuLaunchKernel_ptsz
|
||||
-@ stdcall cuMemcpy2DAsync_v2_ptsz(ptr ptr) wine_cuMemcpy2DAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpy2DUnaligned_v2_ptds(ptr) wine_cuMemcpy2DUnaligned_v2_ptds
|
||||
-@ stdcall cuMemcpy2D_v2_ptds(ptr) wine_cuMemcpy2D_v2_ptds
|
||||
-@ stdcall cuMemcpy3DAsync_v2_ptsz(ptr ptr) wine_cuMemcpy3DAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpy3DPeerAsync_ptsz(ptr ptr) wine_cuMemcpy3DPeerAsync_ptsz
|
||||
-@ stdcall cuMemcpy3DPeer_ptds(ptr) wine_cuMemcpy3DPeer_ptds
|
||||
-@ stdcall cuMemcpy3D_v2_ptds(ptr) wine_cuMemcpy3D_v2_ptds
|
||||
-@ stdcall cuMemcpyAsync_ptsz(long long long ptr) wine_cuMemcpyAsync_ptsz
|
||||
-@ stdcall cuMemcpyAtoA_v2_ptds(ptr long ptr long long) wine_cuMemcpyAtoA_v2_ptds
|
||||
-@ stdcall cuMemcpyAtoD_v2_ptds(long ptr long long) wine_cuMemcpyAtoD_v2_ptds
|
||||
-@ stdcall cuMemcpyAtoHAsync_v2_ptsz(ptr ptr long long ptr) wine_cuMemcpyAtoHAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpyAtoH_v2_ptds(ptr ptr long long) wine_cuMemcpyAtoH_v2_ptds
|
||||
-@ stdcall cuMemcpyDtoA_v2_ptds(ptr long long long) wine_cuMemcpyDtoA_v2_ptds
|
||||
-@ stdcall cuMemcpyDtoDAsync_v2_ptsz(long long long ptr) wine_cuMemcpyDtoDAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpyDtoD_v2_ptds(long long long) wine_cuMemcpyDtoD_v2_ptds
|
||||
-@ stdcall cuMemcpyDtoHAsync_v2_ptsz(ptr long long ptr) wine_cuMemcpyDtoHAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpyDtoH_v2_ptds(ptr long long) wine_cuMemcpyDtoH_v2_ptds
|
||||
-@ stdcall cuMemcpyHtoAAsync_v2_ptsz(ptr long ptr long ptr) wine_cuMemcpyHtoAAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpyHtoA_v2_ptds(ptr long ptr long) wine_cuMemcpyHtoA_v2_ptds
|
||||
-@ stdcall cuMemcpyHtoDAsync_v2_ptsz(long ptr long ptr) wine_cuMemcpyHtoDAsync_v2_ptsz
|
||||
-@ stdcall cuMemcpyHtoD_v2_ptds(long ptr long) wine_cuMemcpyHtoD_v2_ptds
|
||||
-@ stdcall cuMemcpyPeerAsync_ptsz(long ptr long ptr long ptr) wine_cuMemcpyPeerAsync_ptsz
|
||||
-@ stdcall cuMemcpyPeer_ptds(long ptr long ptr long) wine_cuMemcpyPeer_ptds
|
||||
-@ stdcall cuMemcpy_ptds(long long long) wine_cuMemcpy_ptds
|
||||
-@ stdcall cuMemsetD16Async_ptsz(long long long ptr) wine_cuMemsetD16Async_ptsz
|
||||
-@ stdcall cuMemsetD16_v2_ptds(long long long) wine_cuMemsetD16_v2_ptds
|
||||
-@ stdcall cuMemsetD2D16Async_ptsz(long long long long long ptr) wine_cuMemsetD2D16Async_ptsz
|
||||
-@ stdcall cuMemsetD2D16_v2_ptds(long long long long long) wine_cuMemsetD2D16_v2_ptds
|
||||
-@ stdcall cuMemsetD2D32Async_ptsz(long long long long long ptr) wine_cuMemsetD2D32Async_ptsz
|
||||
-@ stdcall cuMemsetD2D32_v2_ptds(long long long long long) wine_cuMemsetD2D32_v2_ptds
|
||||
-@ stdcall cuMemsetD2D8Async_ptsz(long long long long long ptr) wine_cuMemsetD2D8Async_ptsz
|
||||
-@ stdcall cuMemsetD2D8_v2_ptds(long long long long long) wine_cuMemsetD2D8_v2_ptds
|
||||
-@ stdcall cuMemsetD32Async_ptsz(long long long ptr) wine_cuMemsetD32Async_ptsz
|
||||
-@ stdcall cuMemsetD32_v2_ptds(long long long) wine_cuMemsetD32_v2_ptds
|
||||
-@ stdcall cuMemsetD8Async_ptsz(long long long ptr) wine_cuMemsetD8Async_ptsz
|
||||
-@ stdcall cuMemsetD8_v2_ptds(long long long) wine_cuMemsetD8_v2_ptds
|
||||
-@ stdcall cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(ptr ptr long long long) wine_cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
|
||||
-@ stub cuOccupancyMaxPotentialBlockSizeWithFlags
|
||||
-#@ stdcall cuOccupancyMaxPotentialBlockSizeWithFlags(ptr ptr ptr ptr long long long) wine_cuOccupancyMaxPotentialBlockSizeWithFlags
|
||||
-@ stdcall cuPointerGetAttributes(long ptr ptr long) wine_cuPointerGetAttributes
|
||||
-@ stdcall cuStreamAddCallback_ptsz(ptr ptr ptr long) wine_cuStreamAddCallback_ptsz
|
||||
-@ stdcall cuStreamAttachMemAsync_ptsz(ptr long long long) wine_cuStreamAttachMemAsync_ptsz
|
||||
-@ stdcall cuStreamGetFlags_ptsz(ptr ptr) wine_cuStreamGetFlags_ptsz
|
||||
-@ stdcall cuStreamGetPriority_ptsz(ptr ptr) wine_cuStreamGetPriority_ptsz
|
||||
-@ stdcall cuStreamQuery_ptsz(ptr) wine_cuStreamQuery_ptsz
|
||||
-@ stdcall cuStreamSynchronize_ptsz(ptr) wine_cuStreamSynchronize_ptsz
|
||||
-@ stdcall cuStreamWaitEvent_ptsz(ptr ptr long) wine_cuStreamWaitEvent_ptsz
|
||||
+@ stub cuWaitExternalSemaphoresAsync
|
||||
+@ stub cuWaitExternalSemaphoresAsync_ptsz
|
||||
--
|
||||
2.34.1
|
||||
|
@@ -51,13 +51,13 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "533616d23f9832596e41f839356830c7679df930"
|
||||
echo "86eaf7eeb2603d1b13d18e3fe71a615e1ee14cee"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
version()
|
||||
{
|
||||
echo "Wine Staging 7.0-rc1"
|
||||
echo "Wine Staging 7.0-rc5"
|
||||
echo "Copyright (C) 2014-2019 the Wine Staging project authors."
|
||||
echo "Copyright (C) 2018-2020 Alistair Leslie-Hughes"
|
||||
echo ""
|
||||
@@ -1732,7 +1732,7 @@ fi
|
||||
# | * [#35815] dinput: Allow remapping of joystick buttons.
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/dinput/config.c, dlls/dinput/device.c, dlls/dinput/dinput_private.h, dlls/dinput8/tests/device.c
|
||||
# | * dlls/dinput/config.c, dlls/dinput/device.c, dlls/dinput/dinput_private.h, dlls/dinput/tests/device8.c
|
||||
# |
|
||||
if test "$enable_dinput_joy_mappings" -eq 1; then
|
||||
patch_apply dinput-joy-mappings/0001-dinput-Allow-empty-Joystick-mappings.patch
|
||||
@@ -2590,6 +2590,7 @@ if test "$enable_nvcuda_CUDA_Support" -eq 1; then
|
||||
patch_apply nvcuda-CUDA_Support/0010-nvcuda-Search-for-dylib-library-on-Mac-OS-X.patch
|
||||
patch_apply nvcuda-CUDA_Support/0011-nvcuda-Add-semi-stub-for-cuD3D10GetDevice.patch
|
||||
patch_apply nvcuda-CUDA_Support/0012-nvcuda-Add-semi-stub-for-cuD3D11GetDevice-and-cuGrap.patch
|
||||
patch_apply nvcuda-CUDA_Support/0013-nvcuda-Update-spec-file.patch
|
||||
fi
|
||||
|
||||
# Patchset nvapi-Stub_DLL
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From df55865a000b3443f1948cdb8449cd33e049840b Mon Sep 17 00:00:00 2001
|
||||
From cc3472938f76b5db50ea86f854e153fd71795b6e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Mon, 25 Oct 2021 11:48:00 +0200
|
||||
Subject: [PATCH] winex11.drv: Send relative RawMotion events unprocessed.
|
||||
@@ -13,11 +13,11 @@ This does not support mixed relative/absolute X/Y axis.
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index e6a2266855a..ea561811097 100644
|
||||
index 727ba13bc31..fdf8eca93dd 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -750,12 +750,12 @@ static void map_event_coords( HWND hwnd, Window window, Window event_root, int x
|
||||
input->u.mi.dy = pt.y;
|
||||
@@ -1940,12 +1940,12 @@ static BOOL X11DRV_DeviceChanged( XGenericEventCookie *xev )
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
-static BOOL map_raw_event_coords( XIRawEvent *event, INPUT *input )
|
||||
@@ -32,7 +32,7 @@ index e6a2266855a..ea561811097 100644
|
||||
RECT virtual_rect;
|
||||
int i;
|
||||
|
||||
@@ -784,33 +784,35 @@ static BOOL map_raw_event_coords( XIRawEvent *event, INPUT *input )
|
||||
@@ -1974,33 +1974,35 @@ static BOOL map_raw_event_coords( XIRawEvent *event, INPUT *input )
|
||||
if (!XIMaskIsSet( event->valuators.mask, i )) continue;
|
||||
if (i == x->number)
|
||||
{
|
||||
@@ -74,7 +74,7 @@ index e6a2266855a..ea561811097 100644
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -2025,7 +2027,7 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
@@ -2027,7 +2029,7 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
input.u.mi.dwExtraInfo = 0;
|
||||
input.u.mi.dx = 0;
|
||||
input.u.mi.dy = 0;
|
||||
@@ -83,7 +83,7 @@ index e6a2266855a..ea561811097 100644
|
||||
|
||||
if (!thread_data->xi2_rawinput_only)
|
||||
__wine_send_input( 0, &input, NULL );
|
||||
@@ -2039,8 +2041,6 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
@@ -2041,8 +2043,6 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
rawinput.data.mouse.ulRawButtons = 0;
|
||||
rawinput.data.mouse.u.usButtonData = 0;
|
||||
rawinput.data.mouse.u.usButtonFlags = 0;
|
||||
@@ -93,5 +93,5 @@ index e6a2266855a..ea561811097 100644
|
||||
|
||||
input.type = INPUT_HARDWARE;
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
From b4d1ea44dd7f2201ba7d02eb171ee2ddb4013fe5 Mon Sep 17 00:00:00 2001
|
||||
From 05d2f03034c4bd2cc97f22c67e7bd9de3c3f710b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 17 Jan 2020 16:33:11 +0100
|
||||
Subject: [PATCH 1/8] winex11.drv: Split XInput2 thread initialization.
|
||||
Subject: [PATCH] winex11.drv: Split XInput2 thread initialization.
|
||||
|
||||
And rename the library and function loader to x11drv_xinput_load.
|
||||
---
|
||||
@@ -11,11 +11,11 @@ And rename the library and function loader to x11drv_xinput_load.
|
||||
3 files changed, 36 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index 8cc30f0736d..a299944613e 100644
|
||||
index 51a6828f10c..121f42eb541 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -279,6 +279,32 @@ static void update_relative_valuators(XIAnyClassInfo **valuators, int n_valuator
|
||||
#endif
|
||||
@@ -277,6 +277,32 @@ static void update_relative_valuators(XIAnyClassInfo **valuators, int n_valuator
|
||||
}
|
||||
|
||||
|
||||
+/***********************************************************************
|
||||
@@ -47,7 +47,7 @@ index 8cc30f0736d..a299944613e 100644
|
||||
/***********************************************************************
|
||||
* enable_xinput2
|
||||
*/
|
||||
@@ -291,19 +317,9 @@ static void enable_xinput2(void)
|
||||
@@ -288,19 +314,9 @@ static void enable_xinput2(void)
|
||||
unsigned char mask_bits[XIMaskLen(XI_LASTEVENT)];
|
||||
int count;
|
||||
|
||||
@@ -69,7 +69,7 @@ index 8cc30f0736d..a299944613e 100644
|
||||
if (!pXIGetClientPointer( data->display, None, &data->xi2_core_pointer )) return;
|
||||
|
||||
mask.mask = mask_bits;
|
||||
@@ -343,9 +359,9 @@ static void disable_xinput2(void)
|
||||
@@ -341,9 +357,9 @@ static void disable_xinput2(void)
|
||||
struct x11drv_thread_data *data = x11drv_thread_data();
|
||||
XIEventMask mask;
|
||||
|
||||
@@ -80,7 +80,7 @@ index 8cc30f0736d..a299944613e 100644
|
||||
data->xi2_state = xi_disabled;
|
||||
|
||||
mask.mask = NULL;
|
||||
@@ -1919,9 +1935,9 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
@@ -1921,9 +1937,9 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
@@ -93,10 +93,10 @@ index 8cc30f0736d..a299944613e 100644
|
||||
#if defined(SONAME_LIBXI) && defined(HAVE_X11_EXTENSIONS_XINPUT2_H)
|
||||
int event, error;
|
||||
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
|
||||
index d384a8a68c0..2f14c3f7cea 100644
|
||||
index 8bcc204db9b..3f3e386ea4a 100644
|
||||
--- a/dlls/winex11.drv/x11drv.h
|
||||
+++ b/dlls/winex11.drv/x11drv.h
|
||||
@@ -196,7 +196,8 @@ extern BOOL CDECL X11DRV_UnrealizePalette( HPALETTE hpal ) DECLSPEC_HIDDEN;
|
||||
@@ -247,7 +247,8 @@ extern void CDECL X11DRV_ThreadDetach(void) DECLSPEC_HIDDEN;
|
||||
/* X11 driver internal functions */
|
||||
|
||||
extern void X11DRV_Xcursor_Init(void) DECLSPEC_HIDDEN;
|
||||
@@ -107,10 +107,10 @@ index d384a8a68c0..2f14c3f7cea 100644
|
||||
extern DWORD copy_image_bits( BITMAPINFO *info, BOOL is_r8g8b8, XImage *image,
|
||||
const struct gdi_image_bits *src_bits, struct gdi_image_bits *dst_bits,
|
||||
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
|
||||
index bd21afc8174..98f57383bc2 100644
|
||||
index 32beb84a009..2e083e322ec 100644
|
||||
--- a/dlls/winex11.drv/x11drv_main.c
|
||||
+++ b/dlls/winex11.drv/x11drv_main.c
|
||||
@@ -623,7 +623,7 @@ static BOOL process_attach(void)
|
||||
@@ -619,7 +619,7 @@ static BOOL process_attach(void)
|
||||
#ifdef SONAME_LIBXCOMPOSITE
|
||||
X11DRV_XComposite_Init();
|
||||
#endif
|
||||
@@ -119,7 +119,7 @@ index bd21afc8174..98f57383bc2 100644
|
||||
|
||||
#ifdef HAVE_XKB
|
||||
if (use_xkb) use_xkb = XkbUseExtension( gdi_display, NULL, NULL );
|
||||
@@ -716,6 +716,8 @@ struct x11drv_thread_data *x11drv_init_thread_data(void)
|
||||
@@ -713,6 +713,8 @@ struct x11drv_thread_data *x11drv_init_thread_data(void)
|
||||
|
||||
if (use_xim) X11DRV_SetupXIM();
|
||||
|
||||
@@ -129,5 +129,5 @@ index bd21afc8174..98f57383bc2 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,8 +1,7 @@
|
||||
From ad9aab54712604c45c75262b7f7a984bc1a756cd Mon Sep 17 00:00:00 2001
|
||||
From e880574bf3be3467af6238cdb020e593878e2dca Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Thu, 23 Jan 2020 11:00:19 +0100
|
||||
Subject: [PATCH 2/8] winex11.drv: Support XInput2 events for individual
|
||||
windows.
|
||||
Subject: [PATCH] winex11.drv: Support XInput2 events for individual windows.
|
||||
|
||||
This will allow us to listen to the XInput version of several events,
|
||||
which can bring additional information.
|
||||
@@ -15,7 +14,7 @@ which can bring additional information.
|
||||
5 files changed, 65 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/dlls/winex11.drv/desktop.c b/dlls/winex11.drv/desktop.c
|
||||
index 71b3a0a5a27..f90730b9fc5 100644
|
||||
index 0ac538d06ed..482b9c2c94d 100644
|
||||
--- a/dlls/winex11.drv/desktop.c
|
||||
+++ b/dlls/winex11.drv/desktop.c
|
||||
@@ -358,6 +358,7 @@ BOOL CDECL X11DRV_create_desktop( UINT width, UINT height )
|
||||
@@ -27,10 +26,10 @@ index 71b3a0a5a27..f90730b9fc5 100644
|
||||
|
||||
X11DRV_init_desktop( win, width, height );
|
||||
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
|
||||
index 1772a27c48b..bc007bea1d6 100644
|
||||
index 170111e9c28..bbb39135d88 100644
|
||||
--- a/dlls/winex11.drv/event.c
|
||||
+++ b/dlls/winex11.drv/event.c
|
||||
@@ -245,6 +245,13 @@ static Bool filter_event( Display *display, XEvent *event, char *arg )
|
||||
@@ -238,6 +238,13 @@ static Bool filter_event( Display *display, XEvent *event, char *arg )
|
||||
return (mask & QS_MOUSEBUTTON) != 0;
|
||||
#ifdef GenericEvent
|
||||
case GenericEvent:
|
||||
@@ -45,10 +44,10 @@ index 1772a27c48b..bc007bea1d6 100644
|
||||
case MotionNotify:
|
||||
case EnterNotify:
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index a299944613e..04760ad3938 100644
|
||||
index 121f42eb541..27a1e326cc2 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -306,21 +306,33 @@ void x11drv_xinput_init(void)
|
||||
@@ -304,20 +304,32 @@ void x11drv_xinput_init(void)
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
@@ -58,7 +57,6 @@ index a299944613e..04760ad3938 100644
|
||||
-static void enable_xinput2(void)
|
||||
+void x11drv_xinput_enable( Display *display, Window window, long event_mask )
|
||||
{
|
||||
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
struct x11drv_thread_data *data = x11drv_thread_data();
|
||||
XIEventMask mask;
|
||||
XIDeviceInfo *pointer_info;
|
||||
@@ -87,7 +85,7 @@ index a299944613e..04760ad3938 100644
|
||||
|
||||
mask.mask = mask_bits;
|
||||
mask.mask_len = sizeof(mask_bits);
|
||||
@@ -330,8 +342,9 @@ static void enable_xinput2(void)
|
||||
@@ -327,8 +339,9 @@ static void enable_xinput2(void)
|
||||
XISetMask( mask_bits, XI_RawMotion );
|
||||
XISetMask( mask_bits, XI_ButtonPress );
|
||||
|
||||
@@ -98,7 +96,7 @@ index a299944613e..04760ad3938 100644
|
||||
pointer_info = pXIQueryDevice( data->display, data->xi2_core_pointer, &count );
|
||||
update_relative_valuators( pointer_info->classes, pointer_info->num_classes );
|
||||
pXIFreeDeviceInfo( pointer_info );
|
||||
@@ -340,7 +353,7 @@ static void enable_xinput2(void)
|
||||
@@ -337,7 +350,7 @@ static void enable_xinput2(void)
|
||||
* no XI_DeviceChanged events happened. If any hierarchy change occurred that
|
||||
* might be relevant here (eg. user switching mice after (un)plugging), a
|
||||
* XI_DeviceChanged event will point us to the right slave. So this list is
|
||||
@@ -107,8 +105,8 @@ index a299944613e..04760ad3938 100644
|
||||
*/
|
||||
if (data->xi2_devices) pXIFreeDeviceInfo( data->xi2_devices );
|
||||
data->xi2_devices = pXIQueryDevice( data->display, XIAllDevices, &data->xi2_device_count );
|
||||
@@ -351,24 +364,37 @@ static void enable_xinput2(void)
|
||||
}
|
||||
@@ -349,24 +362,37 @@ static void enable_xinput2(void)
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
- * disable_xinput2
|
||||
@@ -151,7 +149,7 @@ index a299944613e..04760ad3938 100644
|
||||
pXIFreeDeviceInfo( data->xi2_devices );
|
||||
data->x_valuator.number = -1;
|
||||
data->y_valuator.number = -1;
|
||||
@@ -377,6 +403,7 @@ static void disable_xinput2(void)
|
||||
@@ -375,6 +401,7 @@ static void disable_xinput2(void)
|
||||
data->xi2_devices = NULL;
|
||||
data->xi2_core_pointer = 0;
|
||||
data->xi2_current_slave = 0;
|
||||
@@ -159,7 +157,7 @@ index a299944613e..04760ad3938 100644
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -418,7 +445,7 @@ static BOOL grab_clipping_window( const RECT *clip )
|
||||
@@ -417,7 +444,7 @@ static BOOL grab_clipping_window( const RECT *clip )
|
||||
}
|
||||
|
||||
/* enable XInput2 unless we are already clipping */
|
||||
@@ -168,7 +166,7 @@ index a299944613e..04760ad3938 100644
|
||||
|
||||
if (data->xi2_state != xi_enabled)
|
||||
{
|
||||
@@ -448,7 +475,7 @@ static BOOL grab_clipping_window( const RECT *clip )
|
||||
@@ -447,7 +474,7 @@ static BOOL grab_clipping_window( const RECT *clip )
|
||||
|
||||
if (!clipping_cursor)
|
||||
{
|
||||
@@ -177,7 +175,7 @@ index a299944613e..04760ad3938 100644
|
||||
DestroyWindow( msg_hwnd );
|
||||
return FALSE;
|
||||
}
|
||||
@@ -527,7 +554,7 @@ LRESULT clip_cursor_notify( HWND hwnd, HWND prev_clip_hwnd, HWND new_clip_hwnd )
|
||||
@@ -530,7 +557,7 @@ LRESULT clip_cursor_notify( HWND hwnd, HWND prev_clip_hwnd, HWND new_clip_hwnd )
|
||||
TRACE( "clip hwnd reset from %p\n", hwnd );
|
||||
data->clip_hwnd = 0;
|
||||
data->clip_reset = GetTickCount();
|
||||
@@ -187,10 +185,10 @@ index a299944613e..04760ad3938 100644
|
||||
}
|
||||
else if (prev_clip_hwnd)
|
||||
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
|
||||
index bcb0b8044bc..0786378293a 100644
|
||||
index 29473ceba06..460e1a7983a 100644
|
||||
--- a/dlls/winex11.drv/window.c
|
||||
+++ b/dlls/winex11.drv/window.c
|
||||
@@ -378,6 +378,7 @@ static void sync_window_style( struct x11drv_win_data *data )
|
||||
@@ -375,6 +375,7 @@ static void sync_window_style( struct x11drv_win_data *data )
|
||||
int mask = get_window_attributes( data, &attr );
|
||||
|
||||
XChangeWindowAttributes( data->display, data->whole_window, mask, &attr );
|
||||
@@ -206,7 +204,7 @@ index bcb0b8044bc..0786378293a 100644
|
||||
set_initial_wm_hints( data->display, data->whole_window );
|
||||
set_wm_hints( data );
|
||||
|
||||
@@ -1900,6 +1902,7 @@ BOOL CDECL X11DRV_CreateWindow( HWND hwnd )
|
||||
@@ -1908,6 +1910,7 @@ BOOL CDECL X11DRV_CreateWindow( HWND hwnd )
|
||||
data->clip_window = XCreateWindow( data->display, root_window, 0, 0, 1, 1, 0, 0,
|
||||
InputOnly, default_visual.visual,
|
||||
CWOverrideRedirect | CWEventMask, &attr );
|
||||
@@ -215,10 +213,10 @@ index bcb0b8044bc..0786378293a 100644
|
||||
SetPropA( hwnd, clip_window_prop, (HANDLE)data->clip_window );
|
||||
X11DRV_InitClipboard();
|
||||
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
|
||||
index 2f14c3f7cea..3e9c42022b3 100644
|
||||
index 3f3e386ea4a..3eff6f23e22 100644
|
||||
--- a/dlls/winex11.drv/x11drv.h
|
||||
+++ b/dlls/winex11.drv/x11drv.h
|
||||
@@ -198,6 +198,8 @@ extern BOOL CDECL X11DRV_UnrealizePalette( HPALETTE hpal ) DECLSPEC_HIDDEN;
|
||||
@@ -249,6 +249,8 @@ extern void CDECL X11DRV_ThreadDetach(void) DECLSPEC_HIDDEN;
|
||||
extern void X11DRV_Xcursor_Init(void) DECLSPEC_HIDDEN;
|
||||
extern void x11drv_xinput_load(void) DECLSPEC_HIDDEN;
|
||||
extern void x11drv_xinput_init(void) DECLSPEC_HIDDEN;
|
||||
@@ -227,7 +225,7 @@ index 2f14c3f7cea..3e9c42022b3 100644
|
||||
|
||||
extern DWORD copy_image_bits( BITMAPINFO *info, BOOL is_r8g8b8, XImage *image,
|
||||
const struct gdi_image_bits *src_bits, struct gdi_image_bits *dst_bits,
|
||||
@@ -318,6 +320,14 @@ struct x11drv_escape_flush_gl_drawable
|
||||
@@ -370,6 +372,14 @@ struct x11drv_escape_flush_gl_drawable
|
||||
* X11 USER driver
|
||||
*/
|
||||
|
||||
@@ -242,7 +240,7 @@ index 2f14c3f7cea..3e9c42022b3 100644
|
||||
struct x11drv_thread_data
|
||||
{
|
||||
Display *display;
|
||||
@@ -333,7 +343,7 @@ struct x11drv_thread_data
|
||||
@@ -385,7 +395,7 @@ struct x11drv_thread_data
|
||||
HWND clip_hwnd; /* message window stored in desktop while clipping is active */
|
||||
DWORD clip_reset; /* time when clipping was last reset */
|
||||
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
@@ -252,5 +250,5 @@ index 2f14c3f7cea..3e9c42022b3 100644
|
||||
int xi2_device_count;
|
||||
XIValuatorClassInfo x_valuator;
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
From 7443945f500e43f507267dddd900356b8c06223e Mon Sep 17 00:00:00 2001
|
||||
From fe6fb7ca2e0dce4a023c13480293dd4860027eac Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Sun, 24 Oct 2021 22:30:56 +0200
|
||||
Subject: [PATCH 3/8] winex11.drv: Advertise XInput2 version 2.1 support.
|
||||
Subject: [PATCH] winex11.drv: Advertise XInput2 version 2.1 support.
|
||||
|
||||
Under XInput2 protocol version < 2.1, RawEvents are not supposed to be
|
||||
sent if a pointer grab is active. However slave device events are still
|
||||
@@ -22,10 +22,10 @@ device events only and get rid of slave device id tracking.
|
||||
2 files changed, 5 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index 04760ad3938..9088aada596 100644
|
||||
index 27a1e326cc2..1e3b9ad2be0 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -286,7 +286,7 @@ void x11drv_xinput_init(void)
|
||||
@@ -284,7 +284,7 @@ void x11drv_xinput_init(void)
|
||||
{
|
||||
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
struct x11drv_thread_data *data = x11drv_thread_data();
|
||||
@@ -34,7 +34,7 @@ index 04760ad3938..9088aada596 100644
|
||||
|
||||
if (data->xi2_state != xi_unknown) return;
|
||||
|
||||
@@ -299,7 +299,7 @@ void x11drv_xinput_init(void)
|
||||
@@ -297,7 +297,7 @@ void x11drv_xinput_init(void)
|
||||
else
|
||||
{
|
||||
data->xi2_state = xi_unavailable;
|
||||
@@ -43,7 +43,7 @@ index 04760ad3938..9088aada596 100644
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -336,7 +336,7 @@ void x11drv_xinput_enable( Display *display, Window window, long event_mask )
|
||||
@@ -333,7 +333,7 @@ void x11drv_xinput_enable( Display *display, Window window, long event_mask )
|
||||
|
||||
mask.mask = mask_bits;
|
||||
mask.mask_len = sizeof(mask_bits);
|
||||
@@ -52,7 +52,7 @@ index 04760ad3938..9088aada596 100644
|
||||
memset( mask_bits, 0, sizeof(mask_bits) );
|
||||
XISetMask( mask_bits, XI_DeviceChanged );
|
||||
XISetMask( mask_bits, XI_RawMotion );
|
||||
@@ -349,16 +349,6 @@ void x11drv_xinput_enable( Display *display, Window window, long event_mask )
|
||||
@@ -346,16 +346,6 @@ void x11drv_xinput_enable( Display *display, Window window, long event_mask )
|
||||
update_relative_valuators( pointer_info->classes, pointer_info->num_classes );
|
||||
pXIFreeDeviceInfo( pointer_info );
|
||||
|
||||
@@ -67,9 +67,9 @@ index 04760ad3938..9088aada596 100644
|
||||
- data->xi2_current_slave = 0;
|
||||
-
|
||||
data->xi2_state = xi_enabled;
|
||||
#endif
|
||||
}
|
||||
@@ -390,19 +380,16 @@ void x11drv_xinput_disable( Display *display, Window window, long event_mask )
|
||||
|
||||
@@ -388,19 +378,16 @@ void x11drv_xinput_disable( Display *display, Window window, long event_mask )
|
||||
|
||||
mask.mask = NULL;
|
||||
mask.mask_len = 0;
|
||||
@@ -90,7 +90,15 @@ index 04760ad3938..9088aada596 100644
|
||||
data->xi2_state = xi_disabled;
|
||||
#endif
|
||||
}
|
||||
@@ -684,25 +671,7 @@ static BOOL map_raw_event_coords( XIRawEvent *event, INPUT *input )
|
||||
@@ -1857,7 +1844,6 @@ static BOOL X11DRV_DeviceChanged( XGenericEventCookie *xev )
|
||||
if (event->reason != XISlaveSwitch) return FALSE;
|
||||
|
||||
update_relative_valuators( event->classes, event->num_classes );
|
||||
- data->xi2_current_slave = event->sourceid;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -1873,25 +1859,7 @@ static BOOL map_raw_event_coords( XIRawEvent *event, INPUT *input )
|
||||
if (x->number < 0 || y->number < 0) return FALSE;
|
||||
if (!event->valuators.mask_len) return FALSE;
|
||||
if (thread_data->xi2_state != xi_enabled) return FALSE;
|
||||
@@ -117,19 +125,11 @@ index 04760ad3938..9088aada596 100644
|
||||
|
||||
virtual_rect = get_virtual_screen_rect();
|
||||
|
||||
@@ -1927,7 +1896,6 @@ static BOOL X11DRV_DeviceChanged( XGenericEventCookie *xev )
|
||||
if (event->reason != XISlaveSwitch) return FALSE;
|
||||
|
||||
update_relative_valuators( event->classes, event->num_classes );
|
||||
- data->xi2_current_slave = event->sourceid;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
|
||||
index 3e9c42022b3..463c2027077 100644
|
||||
index 3eff6f23e22..8cddfa05904 100644
|
||||
--- a/dlls/winex11.drv/x11drv.h
|
||||
+++ b/dlls/winex11.drv/x11drv.h
|
||||
@@ -344,12 +344,9 @@ struct x11drv_thread_data
|
||||
@@ -396,12 +396,9 @@ struct x11drv_thread_data
|
||||
DWORD clip_reset; /* time when clipping was last reset */
|
||||
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
enum xi2_state xi2_state; /* XInput2 state */
|
||||
@@ -143,5 +143,5 @@ index 3e9c42022b3..463c2027077 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 4321aa370da9a3df82831cf0bcc697ce9f6af868 Mon Sep 17 00:00:00 2001
|
||||
From 5fe1a81fa6564f2d201bd3e225ac3bc4f41a2d2e Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 12:37:46 +0100
|
||||
Subject: [PATCH] winex11: Fix alpha blending in X11DRV_UpdateLayeredWindow.
|
||||
@@ -9,10 +9,10 @@ Based on a patch by Dmitry Timoshkov.
|
||||
1 file changed, 15 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
|
||||
index 6d79f06..81cb2b3 100644
|
||||
index 4dfb1bb6f76..8fb1a4a2786 100644
|
||||
--- a/dlls/winex11.drv/window.c
|
||||
+++ b/dlls/winex11.drv/window.c
|
||||
@@ -430,14 +430,11 @@ static void sync_window_region( struct x11drv_win_data *data, HRGN win_region )
|
||||
@@ -434,14 +434,11 @@ static void sync_window_region( struct x11drv_win_data *data, HRGN win_region )
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
@@ -30,7 +30,7 @@ index 6d79f06..81cb2b3 100644
|
||||
|
||||
if (opacity == 0xffffffff)
|
||||
XDeleteProperty( display, win, x11drv_atom(_NET_WM_WINDOW_OPACITY) );
|
||||
@@ -1559,7 +1556,7 @@ static void create_whole_window( struct x11drv_win_data *data )
|
||||
@@ -1608,7 +1605,7 @@ static void create_whole_window( struct x11drv_win_data *data )
|
||||
|
||||
/* set the window opacity */
|
||||
if (!GetLayeredWindowAttributes( data->hwnd, &key, &alpha, &layered_flags )) layered_flags = 0;
|
||||
@@ -39,7 +39,7 @@ index 6d79f06..81cb2b3 100644
|
||||
|
||||
XFlush( data->display ); /* make sure the window exists before we start painting to it */
|
||||
|
||||
@@ -1691,7 +1688,7 @@ void CDECL X11DRV_SetWindowStyle( HWND hwnd, INT offset, STYLESTRUCT *style )
|
||||
@@ -1740,7 +1737,7 @@ void CDECL X11DRV_SetWindowStyle( HWND hwnd, INT offset, STYLESTRUCT *style )
|
||||
{
|
||||
data->layered = FALSE;
|
||||
set_window_visual( data, &default_visual, FALSE );
|
||||
@@ -48,7 +48,7 @@ index 6d79f06..81cb2b3 100644
|
||||
if (data->surface) set_surface_color_key( data->surface, CLR_INVALID );
|
||||
}
|
||||
done:
|
||||
@@ -2570,7 +2567,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph
|
||||
@@ -2668,7 +2665,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph
|
||||
set_window_visual( data, &default_visual, FALSE );
|
||||
|
||||
if (data->whole_window)
|
||||
@@ -57,7 +57,7 @@ index 6d79f06..81cb2b3 100644
|
||||
if (data->surface)
|
||||
set_surface_color_key( data->surface, (flags & LWA_COLORKEY) ? key : CLR_INVALID );
|
||||
|
||||
@@ -2594,7 +2591,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph
|
||||
@@ -2692,7 +2689,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph
|
||||
Window win = X11DRV_get_whole_window( hwnd );
|
||||
if (win)
|
||||
{
|
||||
@@ -66,7 +66,7 @@ index 6d79f06..81cb2b3 100644
|
||||
if (flags & LWA_COLORKEY)
|
||||
FIXME( "LWA_COLORKEY not supported on foreign process window %p\n", hwnd );
|
||||
}
|
||||
@@ -2610,7 +2607,6 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
@@ -2708,7 +2705,6 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
{
|
||||
struct window_surface *surface;
|
||||
struct x11drv_win_data *data;
|
||||
@@ -74,7 +74,7 @@ index 6d79f06..81cb2b3 100644
|
||||
COLORREF color_key = (info->dwFlags & ULW_COLORKEY) ? info->crKey : CLR_INVALID;
|
||||
char buffer[FIELD_OFFSET( BITMAPINFO, bmiColors[256] )];
|
||||
BITMAPINFO *bmi = (BITMAPINFO *)buffer;
|
||||
@@ -2638,6 +2634,10 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
@@ -2736,6 +2732,10 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
}
|
||||
else set_surface_color_key( surface, color_key );
|
||||
|
||||
@@ -83,9 +83,9 @@ index 6d79f06..81cb2b3 100644
|
||||
+ (info->dwFlags & ULW_ALPHA) ? info->pblend->SourceConstantAlpha : 0xff );
|
||||
+
|
||||
if (surface) window_surface_add_ref( surface );
|
||||
mapped = data->mapped;
|
||||
release_win_data( data );
|
||||
|
||||
@@ -2661,16 +2661,15 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
@@ -2769,16 +2769,15 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
|
||||
{
|
||||
IntersectRect( &rect, &rect, info->prcDirty );
|
||||
memcpy( src_bits, dst_bits, bmi->bmiHeader.biSizeImage );
|
||||
@@ -107,5 +107,5 @@ index 6d79f06..81cb2b3 100644
|
||||
{
|
||||
memcpy( dst_bits, src_bits, bmi->bmiHeader.biSizeImage );
|
||||
--
|
||||
2.7.4
|
||||
2.34.1
|
||||
|
||||
|
@@ -1 +1 @@
|
||||
Wine Staging 7.0-rc1
|
||||
Wine Staging 7.0-rc5
|
||||
|
@@ -1 +1 @@
|
||||
533616d23f9832596e41f839356830c7679df930
|
||||
529e4154a34a5a774fe7036552ffbb060740da90
|
||||
|
Reference in New Issue
Block a user