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
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
0111d074e6 | ||
|
b4028037d9 | ||
|
e1c496b21e | ||
|
ee4ca71a7f | ||
|
3b01c6e2c5 | ||
|
98c906f843 |
@@ -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
|
||||
|
||||
|
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
|
||||
|
@@ -0,0 +1,95 @@
|
||||
From af088c1d1c1a5757466f620d981b766184b973b7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Sveinar=20S=C3=B8pler?= <cybermax@dexter.no>
|
||||
Date: Tue, 11 Jan 2022 17:25:06 +0100
|
||||
Subject: [PATCH 1/2] nvcuda: Implement cuDeviceGetUuid and cuDeviceGetLuid
|
||||
|
||||
This partially resolves #52342
|
||||
|
||||
DAZ Studio4 will fail to initialize cuda if no valid UUID and LUID
|
||||
is obtained. Linux nvCUDA does not provide a LUID, so this will be
|
||||
a "fake" LUID for now.
|
||||
---
|
||||
dlls/nvcuda/nvcuda.c | 33 +++++++++++++++++++++++++++++++++
|
||||
dlls/nvcuda/nvcuda.spec | 4 ++--
|
||||
2 files changed, 35 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/nvcuda/nvcuda.c b/dlls/nvcuda/nvcuda.c
|
||||
index 5b6bf53a1de..dde0bfa8469 100644
|
||||
--- a/dlls/nvcuda/nvcuda.c
|
||||
+++ b/dlls/nvcuda/nvcuda.c
|
||||
@@ -408,6 +408,9 @@ static CUresult (*pcuStreamQuery_ptsz)(CUstream hStream);
|
||||
static CUresult (*pcuStreamSynchronize_ptsz)(CUstream hStream);
|
||||
static CUresult (*pcuStreamWaitEvent_ptsz)(CUstream hStream, CUevent hEvent, unsigned int Flags);
|
||||
|
||||
+/* Cuda 10.0 */
|
||||
+static CUresult (*pcuDeviceGetUuid)(CUuuid *uuid, CUdevice dev);
|
||||
+static CUresult (*pcuDeviceGetLuid)(char *luid, unsigned int *deviceNodeMask, CUdevice dev);
|
||||
|
||||
static void *cuda_handle = NULL;
|
||||
|
||||
@@ -758,6 +761,10 @@ static BOOL load_functions(void)
|
||||
TRY_LOAD_FUNCPTR(cuStreamSynchronize_ptsz);
|
||||
TRY_LOAD_FUNCPTR(cuStreamWaitEvent_ptsz);
|
||||
|
||||
+ /* CUDA 10 */
|
||||
+ TRY_LOAD_FUNCPTR(cuDeviceGetUuid);
|
||||
+ TRY_LOAD_FUNCPTR(cuDeviceGetLuid);
|
||||
+
|
||||
#undef LOAD_FUNCPTR
|
||||
#undef TRY_LOAD_FUNCPTR
|
||||
|
||||
@@ -2904,6 +2911,32 @@ CUresult WINAPI wine_cuStreamWaitEvent_ptsz(CUstream hStream, CUevent hEvent, un
|
||||
return pcuStreamWaitEvent_ptsz(hStream, hEvent, Flags);
|
||||
}
|
||||
|
||||
+/*
|
||||
+ * Additions in CUDA 10.0
|
||||
+ */
|
||||
+
|
||||
+CUresult WINAPI wine_cuDeviceGetUuid(CUuuid *uuid, CUdevice dev)
|
||||
+{
|
||||
+ TRACE("(%p, %d)\n", uuid, dev);
|
||||
+ CHECK_FUNCPTR(cuDeviceGetUuid);
|
||||
+ return pcuDeviceGetUuid(uuid, dev);
|
||||
+}
|
||||
+
|
||||
+CUresult WINAPI wine_cuDeviceGetLuid(char *luid, unsigned int *deviceNodeMask, CUdevice dev)
|
||||
+{
|
||||
+ int wine_luid[] = { 0x0000000e, 0x00000000 };
|
||||
+
|
||||
+ TRACE("(%p, %p, %d)\n", luid, deviceNodeMask, dev);
|
||||
+ CHECK_FUNCPTR(cuDeviceGetLuid);
|
||||
+ /* Linux native libcuda does not provide a LUID, so we need to fake something and return a success */
|
||||
+
|
||||
+ memcpy(luid, &wine_luid, sizeof(wine_luid));
|
||||
+ FIXME("Fix this LUID: (0x%08x)\n", *luid);
|
||||
+ *deviceNodeMask = 1;
|
||||
+
|
||||
+ return CUDA_SUCCESS;
|
||||
+}
|
||||
+
|
||||
#undef CHECK_FUNCPTR
|
||||
|
||||
/*
|
||||
diff --git a/dlls/nvcuda/nvcuda.spec b/dlls/nvcuda/nvcuda.spec
|
||||
index 891920b8699..85abf5d2e63 100644
|
||||
--- a/dlls/nvcuda/nvcuda.spec
|
||||
+++ b/dlls/nvcuda/nvcuda.spec
|
||||
@@ -93,12 +93,12 @@
|
||||
@ stdcall cuDeviceGetAttribute(ptr long long) wine_cuDeviceGetAttribute
|
||||
@ stdcall cuDeviceGetByPCIBusId(ptr str) wine_cuDeviceGetByPCIBusId
|
||||
@ stdcall cuDeviceGetCount(ptr) wine_cuDeviceGetCount
|
||||
-@ stub cuDeviceGetLuid
|
||||
+@ stdcall cuDeviceGetLuid(ptr ptr long) wine_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 cuDeviceGetUuid(ptr long) wine_cuDeviceGetUuid
|
||||
@ stdcall cuDevicePrimaryCtxGetState(long ptr ptr) wine_cuDevicePrimaryCtxGetState
|
||||
@ stdcall cuDevicePrimaryCtxRelease(long) wine_cuDevicePrimaryCtxRelease
|
||||
@ stdcall cuDevicePrimaryCtxReset(long) wine_cuDevicePrimaryCtxReset
|
||||
--
|
||||
2.34.1
|
||||
|
@@ -0,0 +1,88 @@
|
||||
From c81d2443afb5c48bed31a31ad03fde29b8b7d920 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Sveinar=20S=C3=B8pler?= <cybermax@dexter.no>
|
||||
Date: Tue, 11 Jan 2022 17:30:06 +0100
|
||||
Subject: [PATCH 2/2] nvcuda: Expand the Unknown1 table
|
||||
|
||||
This partially resolve #52342
|
||||
|
||||
The table for UUID_Unknown1 needs to be expanded because
|
||||
DAZ Studio4 uses Unknown1_func5 and Unknown1_func6.
|
||||
|
||||
This also gets rid of the WARNING about "Your CUDA version supports a
|
||||
newer interface for Unknown1 then the Wine implementation" when
|
||||
using recent nVidia proprietary drivers.
|
||||
---
|
||||
dlls/nvcuda/internal.c | 36 ++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 36 insertions(+)
|
||||
|
||||
diff --git a/dlls/nvcuda/internal.c b/dlls/nvcuda/internal.c
|
||||
index 0b654a967fa..db5f1fd6710 100644
|
||||
--- a/dlls/nvcuda/internal.c
|
||||
+++ b/dlls/nvcuda/internal.c
|
||||
@@ -111,6 +111,10 @@ struct Unknown1_table
|
||||
void* (WINAPI *func2)(void *param0, void *param1);
|
||||
void* (WINAPI *func3)(void *param0, void *param1);
|
||||
void* (WINAPI *func4)(void *param0);
|
||||
+ void* (WINAPI *func5)(void *param0, void *param1);
|
||||
+ void* (WINAPI *func6)(void *param0, void *param1);
|
||||
+ void* (WINAPI *func7)(void *param0, void *param1);
|
||||
+ void* (WINAPI *func8)(void *param0, void *param1);
|
||||
};
|
||||
static const struct
|
||||
{
|
||||
@@ -120,6 +124,10 @@ static const struct
|
||||
void* (*func2)(void *param0, void *param1);
|
||||
void* (*func3)(void *param0, void *param1);
|
||||
void* (*func4)(void *param0);
|
||||
+ void* (*func5)(void *param0, void *param1);
|
||||
+ void* (*func6)(void *param0, void *param1);
|
||||
+ void* (*func7)(void *param0, void *param1);
|
||||
+ void* (*func8)(void *param0, void *param1);
|
||||
} *Unknown1_orig = NULL;
|
||||
|
||||
/*
|
||||
@@ -233,6 +241,30 @@ static void* WINAPI Unknown1_func4_relay(void *param0)
|
||||
return Unknown1_orig->func4(param0);
|
||||
}
|
||||
|
||||
+static void* WINAPI Unknown1_func5_relay(void *param0, void *param1)
|
||||
+{
|
||||
+ TRACE("(%p, %p)\n", param0, param1);
|
||||
+ return Unknown1_orig->func5(param0, param1);
|
||||
+}
|
||||
+
|
||||
+static void* WINAPI Unknown1_func6_relay(void *param0, void *param1)
|
||||
+{
|
||||
+ TRACE("(%p, %p)\n", param0, param1);
|
||||
+ return Unknown1_orig->func6(param0, param1);
|
||||
+}
|
||||
+
|
||||
+static void* WINAPI Unknown1_func7_relay(void *param0, void *param1)
|
||||
+{
|
||||
+ TRACE("(%p, %p)\n", param0, param1);
|
||||
+ return Unknown1_orig->func7(param0, param1);
|
||||
+}
|
||||
+
|
||||
+static void* WINAPI Unknown1_func8_relay(void *param0, void *param1)
|
||||
+{
|
||||
+ TRACE("(%p, %p)\n", param0, param1);
|
||||
+ return Unknown1_orig->func8(param0, param1);
|
||||
+}
|
||||
+
|
||||
struct Unknown1_table Unknown1_Impl =
|
||||
{
|
||||
sizeof(struct Unknown1_table),
|
||||
@@ -241,6 +273,10 @@ struct Unknown1_table Unknown1_Impl =
|
||||
Unknown1_func2_relay,
|
||||
Unknown1_func3_relay,
|
||||
Unknown1_func4_relay,
|
||||
+ Unknown1_func5_relay,
|
||||
+ Unknown1_func6_relay,
|
||||
+ Unknown1_func7_relay,
|
||||
+ Unknown1_func8_relay,
|
||||
};
|
||||
|
||||
static void* WINAPI Unknown2_func0_relay(void *param0, void *param1)
|
||||
--
|
||||
2.34.1
|
||||
|
@@ -51,13 +51,13 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "2318484e1e33cb30f00eb9a62cb9aa5f83e5dc99"
|
||||
echo "b2f75a026f14805888a4b91d8a2e2c60a35fc1b7"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
version()
|
||||
{
|
||||
echo "Wine Staging 7.0-rc4"
|
||||
echo "Wine Staging 7.0-rc6"
|
||||
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,9 @@ 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
|
||||
patch_apply nvcuda-CUDA_Support/0014-nvcuda-Implement-cuDeviceGetUuid-and-cuDeviceGetLuid.patch
|
||||
patch_apply nvcuda-CUDA_Support/0015-nvcuda-Expand-the-Unknown1-table.patch
|
||||
fi
|
||||
|
||||
# Patchset nvapi-Stub_DLL
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 9875a6033aaa0043a7c29926a026ecafb56382e6 Mon Sep 17 00:00:00 2001
|
||||
From c477afc32310c399f4c6a40e9943a2af69811006 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sun, 15 Mar 2015 01:05:48 +0100
|
||||
Subject: [PATCH] server: Fix handling of GetMessage after previous PeekMessage
|
||||
@@ -15,10 +15,10 @@ Changes in v3:
|
||||
2 files changed, 62 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
|
||||
index 7eaa2c67945..8f8b1b98933 100644
|
||||
index 139272a61fe..c390afd9e87 100644
|
||||
--- a/dlls/user32/tests/msg.c
|
||||
+++ b/dlls/user32/tests/msg.c
|
||||
@@ -12648,13 +12648,10 @@ static void test_PeekMessage3(void)
|
||||
@@ -12853,13 +12853,10 @@ static void test_PeekMessage3(void)
|
||||
ok(msg.message == WM_TIMER, "msg.message = %u instead of WM_TIMER\n", msg.message);
|
||||
PostMessageA(hwnd, WM_USER, 0, 0);
|
||||
ret = PeekMessageA(&msg, NULL, 0, 0, PM_NOREMOVE);
|
||||
@@ -32,7 +32,7 @@ index 7eaa2c67945..8f8b1b98933 100644
|
||||
ok(ret && msg.message == WM_USER, "msg.message = %u instead of WM_USER\n", msg.message);
|
||||
ret = PeekMessageA(&msg, NULL, 0, 0, 0);
|
||||
ok(!ret, "expected PeekMessage to return FALSE, got %u\n", ret);
|
||||
@@ -12664,10 +12661,8 @@ static void test_PeekMessage3(void)
|
||||
@@ -12869,10 +12866,8 @@ static void test_PeekMessage3(void)
|
||||
ok(msg.message == WM_TIMER, "msg.message = %u instead of WM_TIMER\n", msg.message);
|
||||
PostMessageA(hwnd, WM_USER, 0, 0);
|
||||
ret = PeekMessageA(&msg, NULL, 0, 0, PM_REMOVE);
|
||||
@@ -43,7 +43,7 @@ index 7eaa2c67945..8f8b1b98933 100644
|
||||
ok(ret && msg.message == WM_USER, "msg.message = %u instead of WM_USER\n", msg.message);
|
||||
ret = PeekMessageA(&msg, NULL, 0, 0, 0);
|
||||
ok(!ret, "expected PeekMessage to return FALSE, got %u\n", ret);
|
||||
@@ -12679,10 +12674,8 @@ static void test_PeekMessage3(void)
|
||||
@@ -12884,10 +12879,8 @@ static void test_PeekMessage3(void)
|
||||
ok(msg.message == WM_TIMER, "msg.message = %u instead of WM_TIMER\n", msg.message);
|
||||
PostMessageA(hwnd, WM_USER, 0, 0);
|
||||
ret = GetMessageA(&msg, NULL, 0, 0);
|
||||
@@ -54,7 +54,7 @@ index 7eaa2c67945..8f8b1b98933 100644
|
||||
ok(ret && msg.message == WM_USER, "msg.message = %u instead of WM_USER\n", msg.message);
|
||||
ret = PeekMessageA(&msg, NULL, 0, 0, 0);
|
||||
ok(!ret, "expected PeekMessage to return FALSE, got %u\n", ret);
|
||||
@@ -12710,14 +12703,32 @@ static void test_PeekMessage3(void)
|
||||
@@ -12915,14 +12908,32 @@ static void test_PeekMessage3(void)
|
||||
ret = GetMessageA(&msg, NULL, 0, 0);
|
||||
ok(ret && msg.message == WM_USER, "msg.message = %u instead of WM_USER\n", msg.message);
|
||||
ret = GetMessageA(&msg, NULL, 0, 0);
|
||||
@@ -90,10 +90,10 @@ index 7eaa2c67945..8f8b1b98933 100644
|
||||
* because both messages are in the same queue. */
|
||||
|
||||
diff --git a/server/queue.c b/server/queue.c
|
||||
index fce65e360d4..451aaeca008 100644
|
||||
index d79add56fba..15c4b21ea50 100644
|
||||
--- a/server/queue.c
|
||||
+++ b/server/queue.c
|
||||
@@ -143,6 +143,7 @@ struct msg_queue
|
||||
@@ -141,6 +141,7 @@ struct msg_queue
|
||||
struct hook_table *hooks; /* hook table */
|
||||
timeout_t last_get_msg; /* time of last get message call */
|
||||
int keystate_lock; /* owns an input keystate lock */
|
||||
@@ -101,7 +101,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
};
|
||||
|
||||
struct hotkey
|
||||
@@ -311,6 +312,7 @@ static struct msg_queue *create_msg_queue( struct thread *thread, struct thread_
|
||||
@@ -309,6 +310,7 @@ static struct msg_queue *create_msg_queue( struct thread *thread, struct thread_
|
||||
queue->hooks = NULL;
|
||||
queue->last_get_msg = current_time;
|
||||
queue->keystate_lock = 0;
|
||||
@@ -109,7 +109,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
list_init( &queue->send_result );
|
||||
list_init( &queue->callback_result );
|
||||
list_init( &queue->pending_timers );
|
||||
@@ -577,13 +579,21 @@ static inline struct msg_queue *get_current_queue(void)
|
||||
@@ -576,13 +578,21 @@ static inline struct msg_queue *get_current_queue(void)
|
||||
}
|
||||
|
||||
/* get a (pseudo-)unique id to tag hardware messages */
|
||||
@@ -132,7 +132,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
/* try to merge a message with the last in the list; return 1 if successful */
|
||||
static int merge_message( struct thread_input *input, const struct message *msg )
|
||||
{
|
||||
@@ -861,7 +871,7 @@ static int match_window( user_handle_t win, user_handle_t msg_win )
|
||||
@@ -860,7 +870,7 @@ static int match_window( user_handle_t win, user_handle_t msg_win )
|
||||
}
|
||||
|
||||
/* retrieve a posted message */
|
||||
@@ -141,7 +141,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
unsigned int first, unsigned int last, unsigned int flags,
|
||||
struct get_message_reply *reply )
|
||||
{
|
||||
@@ -872,6 +882,7 @@ static int get_posted_message( struct msg_queue *queue, user_handle_t win,
|
||||
@@ -871,6 +881,7 @@ static int get_posted_message( struct msg_queue *queue, user_handle_t win,
|
||||
{
|
||||
if (!match_window( win, msg->win )) continue;
|
||||
if (!check_msg_filter( msg->msg, first, last )) continue;
|
||||
@@ -149,7 +149,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
goto found; /* found one */
|
||||
}
|
||||
return 0;
|
||||
@@ -1488,6 +1499,7 @@ found:
|
||||
@@ -1487,6 +1498,7 @@ found:
|
||||
msg->msg = WM_HOTKEY;
|
||||
msg->wparam = hotkey->id;
|
||||
msg->lparam = ((hotkey->vkey & 0xffff) << 16) | modifiers;
|
||||
@@ -157,16 +157,16 @@ index fce65e360d4..451aaeca008 100644
|
||||
|
||||
free( msg->data );
|
||||
msg->data = NULL;
|
||||
@@ -2125,7 +2137,7 @@ static int get_hardware_message( struct thread *thread, unsigned int hw_id, user
|
||||
continue;
|
||||
@@ -2198,7 +2210,7 @@ static int get_hardware_message( struct thread *thread, unsigned int hw_id, user
|
||||
}
|
||||
|
||||
/* now we can return it */
|
||||
- if (!msg->unique_id) msg->unique_id = get_unique_id();
|
||||
+ if (!msg->unique_id) msg->unique_id = get_unique_hw_id();
|
||||
reply->type = MSG_HARDWARE;
|
||||
reply->win = win;
|
||||
reply->msg = msg_code;
|
||||
@@ -2231,6 +2243,7 @@ void post_message( user_handle_t win, unsigned int message, lparam_t wparam, lpa
|
||||
@@ -2304,6 +2316,7 @@ void post_message( user_handle_t win, unsigned int message, lparam_t wparam, lpa
|
||||
msg->result = NULL;
|
||||
msg->data = NULL;
|
||||
msg->data_size = 0;
|
||||
@@ -174,7 +174,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
|
||||
get_message_defaults( thread->queue, &msg->x, &msg->y, &msg->time );
|
||||
|
||||
@@ -2475,6 +2488,7 @@ DECL_HANDLER(send_message)
|
||||
@@ -2548,6 +2561,7 @@ DECL_HANDLER(send_message)
|
||||
set_queue_bits( recv_queue, QS_SENDMESSAGE );
|
||||
break;
|
||||
case MSG_POSTED:
|
||||
@@ -182,7 +182,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
list_add_tail( &recv_queue->msg_list[POST_MESSAGE], &msg->entry );
|
||||
set_queue_bits( recv_queue, QS_POSTMESSAGE|QS_ALLPOSTMESSAGE );
|
||||
if (msg->msg == WM_HOTKEY)
|
||||
@@ -2595,12 +2609,12 @@ DECL_HANDLER(get_message)
|
||||
@@ -2668,12 +2682,12 @@ DECL_HANDLER(get_message)
|
||||
|
||||
/* then check for posted messages */
|
||||
if ((filter & QS_POSTMESSAGE) &&
|
||||
@@ -197,7 +197,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
return;
|
||||
|
||||
/* only check for quit messages if not posted messages pending */
|
||||
@@ -2611,7 +2625,7 @@ DECL_HANDLER(get_message)
|
||||
@@ -2684,7 +2698,7 @@ DECL_HANDLER(get_message)
|
||||
if ((filter & QS_INPUT) &&
|
||||
filter_contains_hw_range( req->get_first, req->get_last ) &&
|
||||
get_hardware_message( current, req->hw_id, get_win, req->get_first, req->get_last, req->flags, reply ))
|
||||
@@ -206,7 +206,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
|
||||
/* now check for WM_PAINT */
|
||||
if ((filter & QS_PAINT) &&
|
||||
@@ -2624,7 +2638,7 @@ DECL_HANDLER(get_message)
|
||||
@@ -2697,7 +2711,7 @@ DECL_HANDLER(get_message)
|
||||
reply->wparam = 0;
|
||||
reply->lparam = 0;
|
||||
get_message_defaults( queue, &reply->x, &reply->y, &reply->time );
|
||||
@@ -215,7 +215,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
}
|
||||
|
||||
/* now check for timer */
|
||||
@@ -2640,13 +2654,30 @@ DECL_HANDLER(get_message)
|
||||
@@ -2713,13 +2727,30 @@ DECL_HANDLER(get_message)
|
||||
get_message_defaults( queue, &reply->x, &reply->y, &reply->time );
|
||||
if (!(req->flags & PM_NOYIELD) && current->process->idle_event)
|
||||
set_event( current->process->idle_event );
|
||||
@@ -247,7 +247,7 @@ index fce65e360d4..451aaeca008 100644
|
||||
}
|
||||
|
||||
|
||||
@@ -2664,7 +2695,10 @@ DECL_HANDLER(reply_message)
|
||||
@@ -2737,7 +2768,10 @@ DECL_HANDLER(reply_message)
|
||||
DECL_HANDLER(accept_hardware_message)
|
||||
{
|
||||
if (current->queue)
|
||||
@@ -259,5 +259,5 @@ index fce65e360d4..451aaeca008 100644
|
||||
set_error( STATUS_ACCESS_DENIED );
|
||||
}
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1 +1 @@
|
||||
Wine Staging 7.0-rc4
|
||||
Wine Staging 7.0-rc6
|
||||
|
@@ -1 +1 @@
|
||||
2318484e1e33cb30f00eb9a62cb9aa5f83e5dc99
|
||||
b2f75a026f14805888a4b91d8a2e2c60a35fc1b7
|
||||
|
Reference in New Issue
Block a user