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
22 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
f5ca8f5a0c | ||
|
cafb155af5 | ||
|
b1a5648b37 | ||
|
b8a377e8d7 | ||
|
5b0e78d2c0 | ||
|
c87f47bcba | ||
|
d5e8d145c8 | ||
|
2239795e43 | ||
|
766e1ee8f8 | ||
|
95bf669895 | ||
|
2fc92f8ba6 | ||
|
0111d074e6 | ||
|
b4028037d9 | ||
|
e1c496b21e | ||
|
ee4ca71a7f | ||
|
3b01c6e2c5 | ||
|
98c906f843 | ||
|
a43d3ddd1c | ||
|
78d28293de | ||
|
440e5eee17 | ||
|
93e94fcbc0 | ||
|
fa5989b7aa |
@@ -1,18 +1,17 @@
|
||||
From b51fdc7e211f676d169c937209bf689e57252c5d Mon Sep 17 00:00:00 2001
|
||||
From 7e3c4d732bacaeaf37ab8f32a7548715825eff4d Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Tue, 22 Mar 2016 21:58:40 +0100
|
||||
Subject: [PATCH] dwrite: Avoid implicit cast of interface pointer.
|
||||
|
||||
---
|
||||
dlls/dwrite/font.c | 4 ++--
|
||||
dlls/dwrite/layout.c | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
dlls/dwrite/font.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c
|
||||
index aa51c744297..7cad015480f 100644
|
||||
index 2296c74c1e3..2b5e18aab19 100644
|
||||
--- a/dlls/dwrite/font.c
|
||||
+++ b/dlls/dwrite/font.c
|
||||
@@ -2130,7 +2130,7 @@ static struct dwrite_font *unsafe_impl_from_IDWriteFont(IDWriteFont *iface)
|
||||
@@ -2514,7 +2514,7 @@ static struct dwrite_font *unsafe_impl_from_IDWriteFont(IDWriteFont *iface)
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == (IDWriteFontVtbl*)&dwritefontvtbl);
|
||||
@@ -21,7 +20,7 @@ index aa51c744297..7cad015480f 100644
|
||||
}
|
||||
|
||||
struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
@@ -2138,7 +2138,7 @@ struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
@@ -2522,7 +2522,7 @@ struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == (IDWriteFontFaceVtbl*)&dwritefontfacevtbl);
|
||||
@@ -30,19 +29,6 @@ index aa51c744297..7cad015480f 100644
|
||||
}
|
||||
|
||||
static struct dwrite_fontfacereference *unsafe_impl_from_IDWriteFontFaceReference(IDWriteFontFaceReference *iface)
|
||||
diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c
|
||||
index 1f6201a6a93..35791d5c22e 100644
|
||||
--- a/dlls/dwrite/layout.c
|
||||
+++ b/dlls/dwrite/layout.c
|
||||
@@ -5886,7 +5886,7 @@ static const IDWriteTextFormat3Vtbl dwritetextformatvtbl =
|
||||
static struct dwrite_textformat *unsafe_impl_from_IDWriteTextFormat(IDWriteTextFormat *iface)
|
||||
{
|
||||
return (iface->lpVtbl == (IDWriteTextFormatVtbl*)&dwritetextformatvtbl) ?
|
||||
- CONTAINING_RECORD(iface, struct dwrite_textformat, IDWriteTextFormat3_iface) : NULL;
|
||||
+ CONTAINING_RECORD((IDWriteTextFormat3 *)iface, struct dwrite_textformat, IDWriteTextFormat3_iface) : NULL;
|
||||
}
|
||||
|
||||
HRESULT create_textformat(const WCHAR *family_name, IDWriteFontCollection *collection, DWRITE_FONT_WEIGHT weight,
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From a349cc8bdcc3a083ea507dbbdeba9053e3a338e4 Mon Sep 17 00:00:00 2001
|
||||
From bd6e11aee0fbe2f880f87bec8b3d145b3de15dab Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Tue, 22 Mar 2016 23:08:30 +0100
|
||||
Subject: [PATCH] include: Check element type in CONTAINING_RECORD and similar
|
||||
@@ -31,31 +31,31 @@ index b4d681fe0f3..287ad394fae 100644
|
||||
|
||||
#endif /* __WINE_SERVER_LIST_H */
|
||||
diff --git a/include/wine/rbtree.h b/include/wine/rbtree.h
|
||||
index 8aae29c8c10..330b3e8fbc9 100644
|
||||
index 4e86f3cfb84..694dc039cb1 100644
|
||||
--- a/include/wine/rbtree.h
|
||||
+++ b/include/wine/rbtree.h
|
||||
@@ -23,8 +23,14 @@
|
||||
#ifndef __WINE_WINE_RBTREE_H
|
||||
#define __WINE_WINE_RBTREE_H
|
||||
|
||||
-#define WINE_RB_ENTRY_VALUE(element, type, field) \
|
||||
-#define RB_ENTRY_VALUE(element, type, field) \
|
||||
- ((type *)((char *)(element) - offsetof(type, field)))
|
||||
+#ifdef __GNUC__
|
||||
+# define WINE_RB_ENTRY_VALUE(element, type, field) ({ \
|
||||
+# define RB_ENTRY_VALUE(element, type, field) ({ \
|
||||
+ const typeof(((type *)0)->field) *__ptr = (element); \
|
||||
+ (type *)((char *)__ptr - offsetof(type, field)); })
|
||||
+#else
|
||||
+# define WINE_RB_ENTRY_VALUE(element, type, field) \
|
||||
+# define RB_ENTRY_VALUE(element, type, field) \
|
||||
+ ((type *)((char *)(element) - offsetof(type, field)))
|
||||
+#endif
|
||||
|
||||
struct wine_rb_entry
|
||||
struct rb_entry
|
||||
{
|
||||
diff --git a/include/winnt.h b/include/winnt.h
|
||||
index 46e17c546a7..d5c65d2017b 100644
|
||||
index 9296a3dc555..c7406b8db39 100644
|
||||
--- a/include/winnt.h
|
||||
+++ b/include/winnt.h
|
||||
@@ -793,8 +793,14 @@ typedef struct _MEMORY_BASIC_INFORMATION
|
||||
@@ -840,8 +840,14 @@ typedef struct _WIN32_MEMORY_RANGE_ENTRY
|
||||
#define RTL_FIELD_SIZE(type, field) (sizeof(((type *)0)->field))
|
||||
#define RTL_SIZEOF_THROUGH_FIELD(type, field) (FIELD_OFFSET(type, field) + RTL_FIELD_SIZE(type, field))
|
||||
|
||||
@@ -73,5 +73,5 @@ index 46e17c546a7..d5c65d2017b 100644
|
||||
#define ARRAYSIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#ifdef __WINESRC__
|
||||
--
|
||||
2.26.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e3a6b75cbce69e18742135fdd8e105132d8ca9dd Mon Sep 17 00:00:00 2001
|
||||
From ea3579b5b3d701647f5c7f16de658f1cd7fe876d Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Fri, 30 Jul 2021 15:57:29 +1000
|
||||
Subject: [PATCH] d3dx11_43: Implement D3DX11GetImageInfoFromMemory
|
||||
@@ -38,7 +38,7 @@ index ccd4319ace2..6854c73ebcb 100644
|
||||
EXTRADLLFLAGS = -Wb,--prefer-native
|
||||
|
||||
diff --git a/dlls/d3dx11_43/main.c b/dlls/d3dx11_43/main.c
|
||||
index 950f6d76f5c..00c1db35e42 100644
|
||||
index 5dad027864f..00c1db35e42 100644
|
||||
--- a/dlls/d3dx11_43/main.c
|
||||
+++ b/dlls/d3dx11_43/main.c
|
||||
@@ -66,12 +66,3 @@ HRESULT WINAPI D3DX11GetImageInfoFromFileW(const WCHAR *filename, ID3DX11ThreadP
|
||||
@@ -49,13 +49,13 @@ index 950f6d76f5c..00c1db35e42 100644
|
||||
-HRESULT WINAPI D3DX11GetImageInfoFromMemory(const void *src_data, SIZE_T src_data_size, ID3DX11ThreadPump *pump,
|
||||
- D3DX11_IMAGE_INFO *img_info, HRESULT *hresult)
|
||||
-{
|
||||
- FIXME("src_data %p, src_data_size %lu, pump %p, img_info %p, hresult %p stub!\n",
|
||||
- FIXME("src_data %p, src_data_size %Iu, pump %p, img_info %p, hresult %p stub!\n",
|
||||
- src_data, src_data_size, pump, img_info, hresult);
|
||||
-
|
||||
- return E_NOTIMPL;
|
||||
-}
|
||||
diff --git a/dlls/d3dx11_43/texture.c b/dlls/d3dx11_43/texture.c
|
||||
index ee6808d76d6..8addf4f84d3 100644
|
||||
index 81ac8ee6db7..6881eec107d 100644
|
||||
--- a/dlls/d3dx11_43/texture.c
|
||||
+++ b/dlls/d3dx11_43/texture.c
|
||||
@@ -15,14 +15,190 @@
|
||||
@@ -155,7 +155,7 @@ index ee6808d76d6..8addf4f84d3 100644
|
||||
+ GUID container_format;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("src_data %p, src_data_size %lu, pump %p, img_info %p, hresult %p.\n",
|
||||
+ TRACE("src_data %p, src_data_size %Iu, pump %p, img_info %p, hresult %p.\n",
|
||||
+ src_data, src_data_size, pump, img_info, hresult);
|
||||
+
|
||||
+ if (!src_data || !src_data_size || !img_info)
|
||||
@@ -250,5 +250,5 @@ index ee6808d76d6..8addf4f84d3 100644
|
||||
SIZE_T data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
|
||||
ID3D11ShaderResourceView **view, HRESULT *hresult)
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 2f65959901f62bfc6a48c683e6eaa5d6ed5f7416 Mon Sep 17 00:00:00 2001
|
||||
From 5be34c9e347d4379179eeba742b25986152d4e4f Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Tue, 3 Aug 2021 11:13:18 +1000
|
||||
Subject: [PATCH] d3dx11_42: Implement D3DX11CreateTextureFromMemory
|
||||
@@ -9,7 +9,7 @@ Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
1 file changed, 342 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3dx11_43/texture.c b/dlls/d3dx11_43/texture.c
|
||||
index 8addf4f84d3..f47b8583c6c 100644
|
||||
index 6881eec107d..b91bd8d881a 100644
|
||||
--- a/dlls/d3dx11_43/texture.c
|
||||
+++ b/dlls/d3dx11_43/texture.c
|
||||
@@ -22,6 +22,7 @@
|
||||
@@ -239,7 +239,7 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
+ SIZE_T src_data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
|
||||
ID3D11Resource **texture, HRESULT *hresult)
|
||||
{
|
||||
- FIXME("device %p, data %p, data_size %lu, load_info %p, pump %p, texture %p, hresult %p stub.\n",
|
||||
- FIXME("device %p, data %p, data_size %Iu, load_info %p, pump %p, texture %p, hresult %p stub.\n",
|
||||
- device, data, data_size, load_info, pump, texture, hresult);
|
||||
+ unsigned int frame_count, width, height, stride, frame_size;
|
||||
+ IWICFormatConverter *converter = NULL;
|
||||
@@ -259,7 +259,7 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
+ HRESULT hr;
|
||||
|
||||
- return E_NOTIMPL;
|
||||
+ TRACE("device %p, src_data %p, src_data_size %lu, load_info %p, pump %p, texture %p, hresult %p.\n",
|
||||
+ TRACE("device %p, data %p, data_size %Iu, load_info %p, pump %p, texture %p, hresult %p.\n",
|
||||
+ device, src_data, src_data_size, load_info, pump, texture, hresult);
|
||||
+
|
||||
+ if (!src_data || !src_data_size || !texture)
|
||||
@@ -391,5 +391,5 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
|
||||
HRESULT WINAPI D3DX11SaveTextureToFileW(ID3D11DeviceContext *context, ID3D11Resource *texture,
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From b094a7cf3f804ea40e5bd05ad738c48b5464e0bb Mon Sep 17 00:00:00 2001
|
||||
From ec5d4d8435795cb193909159ed2e692d330f2f1a Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Mon, 6 Oct 2014 05:06:06 +0200
|
||||
Subject: [PATCH] dbghelp: Always check for debug symbols in BINDIR.
|
||||
@@ -9,23 +9,23 @@ Subject: [PATCH] dbghelp: Always check for debug symbols in BINDIR.
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/dbghelp/Makefile.in b/dlls/dbghelp/Makefile.in
|
||||
index 22be2612eeb..f3f31eb3671 100644
|
||||
index abb440ffbe6..d200e891c8e 100644
|
||||
--- a/dlls/dbghelp/Makefile.in
|
||||
+++ b/dlls/dbghelp/Makefile.in
|
||||
@@ -2,7 +2,7 @@ MODULE = dbghelp.dll
|
||||
IMPORTLIB = dbghelp
|
||||
IMPORTS = $(ZLIB_PE_LIBS)
|
||||
EXTRAINCL = $(ZLIB_PE_CFLAGS)
|
||||
-EXTRADEFS = -D_IMAGEHLP_SOURCE_
|
||||
+EXTRADEFS = -D_IMAGEHLP_SOURCE_ -DBINDIR="L\"${bindir}\""
|
||||
-EXTRADEFS = -DWINE_NO_LONG_TYPES -D_IMAGEHLP_SOURCE_
|
||||
+EXTRADEFS = -DWINE_NO_LONG_TYPES -D_IMAGEHLP_SOURCE_ -DBINDIR="L\"${bindir}\""
|
||||
DELAYIMPORTS = version
|
||||
|
||||
C_SRCS = \
|
||||
diff --git a/dlls/dbghelp/elf_module.c b/dlls/dbghelp/elf_module.c
|
||||
index 553b212c526..3584a27953e 100644
|
||||
index def8b444e4e..7e664f8074a 100644
|
||||
--- a/dlls/dbghelp/elf_module.c
|
||||
+++ b/dlls/dbghelp/elf_module.c
|
||||
@@ -1451,6 +1451,7 @@ static BOOL elf_search_and_load_file(struct process* pcs, const WCHAR* filename,
|
||||
@@ -1445,6 +1445,7 @@ static BOOL elf_search_and_load_file(struct process* pcs, const WCHAR* filename,
|
||||
load_elf.elf_info = elf_info;
|
||||
|
||||
ret = search_unix_path(filename, process_getenv(pcs, L"LD_LIBRARY_PATH"), elf_load_file_cb, &load_elf)
|
||||
@@ -34,5 +34,5 @@ index 553b212c526..3584a27953e 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -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 0c01c25728780e3419f37ef612b14cc7e29f65f5 Mon Sep 17 00:00:00 2001
|
||||
From 8c7187f5501fff70df81612dfbdd084e67605189 Mon Sep 17 00:00:00 2001
|
||||
From: Lucian Poston <lucianposton@pm.me>
|
||||
Date: Mon, 21 May 2018 18:13:00 -0700
|
||||
Subject: [PATCH] dwrite: Use font fallback when mapping characters
|
||||
@@ -11,10 +11,10 @@ Signed-off-by: Lucian Poston <lucianposton@pm.me>
|
||||
3 files changed, 74 insertions(+), 63 deletions(-)
|
||||
|
||||
diff --git a/dlls/dwrite/analyzer.c b/dlls/dwrite/analyzer.c
|
||||
index 7112ca71932..43f8c659bfd 100644
|
||||
index 13ccf8e4434..c535b0cf49d 100644
|
||||
--- a/dlls/dwrite/analyzer.c
|
||||
+++ b/dlls/dwrite/analyzer.c
|
||||
@@ -2088,6 +2088,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2094,6 +2094,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
IDWriteFont **mapped_font)
|
||||
{
|
||||
const struct fallback_mapping *mapping;
|
||||
@@ -22,7 +22,7 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
HRESULT hr;
|
||||
UINT32 i;
|
||||
|
||||
@@ -2099,9 +2100,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2105,9 +2106,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
weight, style, stretch, mapped_font);
|
||||
if (hr == S_OK) {
|
||||
TRACE("Created fallback font using family %s.\n", debugstr_w(mapping->families[i]));
|
||||
@@ -2158,32 +2165,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
@@ -2164,32 +2171,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
|
||||
if (basefamily && *basefamily) {
|
||||
hr = create_matching_font(basecollection, basefamily, weight, style, stretch, ret_font);
|
||||
@@ -124,10 +124,10 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
free(buff);
|
||||
return hr;
|
||||
diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c
|
||||
index f28c71082c0..9a884824b76 100644
|
||||
index d4aa49c6a6c..cda50c20777 100644
|
||||
--- a/dlls/dwrite/layout.c
|
||||
+++ b/dlls/dwrite/layout.c
|
||||
@@ -964,6 +964,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
@@ -725,6 +725,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
goto fatal;
|
||||
}
|
||||
|
||||
@@ -141,10 +141,10 @@ index f28c71082c0..9a884824b76 100644
|
||||
IDWriteFont_Release(font);
|
||||
if (FAILED(hr)) {
|
||||
diff --git a/dlls/dwrite/tests/layout.c b/dlls/dwrite/tests/layout.c
|
||||
index a1bff0d26d6..929d6ec1cc2 100644
|
||||
index 096fc554253..b622aeb4239 100644
|
||||
--- a/dlls/dwrite/tests/layout.c
|
||||
+++ b/dlls/dwrite/tests/layout.c
|
||||
@@ -3368,35 +3368,23 @@ todo_wine
|
||||
@@ -3368,35 +3368,23 @@ static void test_GetMetrics(void)
|
||||
|
||||
count = 0;
|
||||
hr = IDWriteTextLayout_GetClusterMetrics(layout, clusters, 4, &count);
|
||||
@@ -189,7 +189,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -202,7 +202,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 3, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
- IDWriteFont_Release(font);
|
||||
@@ -222,7 +222,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -239,7 +239,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -304,5 +304,5 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
IDWriteTextLayout_Release(layout);
|
||||
|
||||
--
|
||||
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
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From a1368a522fdc4e741fee7bfbd84eec632bcf4ce0 Mon Sep 17 00:00:00 2001
|
||||
From 3e714e2eb10fe17f12b747731c0ce7e18fd4b7a0 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 da972a41955..91b26d00ec0 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,16 +77,16 @@ 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
|
||||
if (!token_assign_label( process->token, security_high_label_sid ))
|
||||
@@ -741,6 +744,9 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
if (!token_assign_label( process->token, &high_label_sid ))
|
||||
goto error;
|
||||
|
||||
+ if (do_esync())
|
||||
@@ -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,4 +1,4 @@
|
||||
From 1dc7cd6e5621505199c8ff8ad8f4e67845c478e3 Mon Sep 17 00:00:00 2001
|
||||
From ba211cf9d8ca7a462c24a62334813c68d41b3fc0 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Mon, 30 Aug 2021 15:16:06 +1000
|
||||
Subject: [PATCH] ntoskrnl.exe: Add FltBuildDefaultSecurityDescriptor test
|
||||
@@ -10,10 +10,10 @@ Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
2 files changed, 66 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntoskrnl.exe/tests/Makefile.in b/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
index ab1db85adbb..9c89e44e70a 100644
|
||||
index 052a8618a81..9028a392002 100644
|
||||
--- a/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
+++ b/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
@@ -1,7 +1,7 @@
|
||||
@@ -2,7 +2,7 @@ EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
TESTDLL = ntoskrnl.exe
|
||||
IMPORTS = advapi32 crypt32 newdev setupapi user32 wintrust ws2_32 hid
|
||||
|
||||
@@ -23,7 +23,7 @@ index ab1db85adbb..9c89e44e70a 100644
|
||||
driver2_IMPORTS = winecrt0 ntoskrnl hal
|
||||
driver2_EXTRADLLFLAGS = -nodefaultlibs -nostartfiles -Wl,--subsystem,native
|
||||
diff --git a/dlls/ntoskrnl.exe/tests/driver.c b/dlls/ntoskrnl.exe/tests/driver.c
|
||||
index deccc04bc2b..90f5b0ec965 100644
|
||||
index dabb3b73f15..187f00c8bcb 100644
|
||||
--- a/dlls/ntoskrnl.exe/tests/driver.c
|
||||
+++ b/dlls/ntoskrnl.exe/tests/driver.c
|
||||
@@ -32,6 +32,7 @@
|
||||
@@ -113,5 +113,5 @@ index deccc04bc2b..90f5b0ec965 100644
|
||||
IoMarkIrpPending(irp);
|
||||
IoQueueWorkItem(work_item, main_test_task, DelayedWorkQueue, irp);
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From eee60c1777c710cfcb4283922990a306361548ba Mon Sep 17 00:00:00 2001
|
||||
From 088f9f0bf9b30749221e28d51d88d910ed458d9c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Mon, 5 Sep 2016 15:31:29 +0200
|
||||
Subject: [PATCH] inseng: Implement CIF reader and download functions.
|
||||
@@ -18,10 +18,11 @@ FIXME: Needs splitting.
|
||||
create mode 100644 dlls/inseng/inseng_private.h
|
||||
|
||||
diff --git a/dlls/inseng/Makefile.in b/dlls/inseng/Makefile.in
|
||||
index 0217203791a..ba2388c97ed 100644
|
||||
index f4b1d4b915f..79121e16c94 100644
|
||||
--- a/dlls/inseng/Makefile.in
|
||||
+++ b/dlls/inseng/Makefile.in
|
||||
@@ -1,8 +1,11 @@
|
||||
@@ -1,9 +1,12 @@
|
||||
EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
MODULE = inseng.dll
|
||||
-IMPORTS = uuid ole32 advapi32
|
||||
+IMPORTS = uuid ole32 advapi32 urlmon shlwapi
|
||||
@@ -3862,5 +3863,5 @@ index 8a3f4c4d270..82927418a99 100644
|
||||
+cpp_quote("HRESULT WINAPI GetICifFileFromFile(ICifFile **, const char *);")
|
||||
+cpp_quote("HRESULT WINAPI GetICifRWFileFromFile(ICifRWFile **, const char *);")
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,19 +1,19 @@
|
||||
From e741e408304cd80852ec392fe491f1cde403e283 Mon Sep 17 00:00:00 2001
|
||||
From dbe39014190d350ed1379569edce909fa29d69d9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 26 Feb 2016 04:04:12 +0100
|
||||
Subject: mmsystem.dll16: Translate MidiIn messages.
|
||||
Subject: [PATCH] mmsystem.dll16: Translate MidiIn messages.
|
||||
|
||||
---
|
||||
dlls/mmsystem.dll16/message16.c | 128 +++++++++++++++++++++++++++++++++++++++-
|
||||
dlls/mmsystem.dll16/message16.c | 128 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 126 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/mmsystem.dll16/message16.c b/dlls/mmsystem.dll16/message16.c
|
||||
index 26e47b2..05a1995 100644
|
||||
index c6a10f57188..08dbce26d88 100644
|
||||
--- a/dlls/mmsystem.dll16/message16.c
|
||||
+++ b/dlls/mmsystem.dll16/message16.c
|
||||
@@ -95,7 +95,78 @@ static void MMSYSTDRV_Mixer_MapCB(DWORD uMsg, DWORD_PTR* dwUser
|
||||
*/
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (UINT wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2)
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (DWORD wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2)
|
||||
{
|
||||
- return MMSYSTEM_MAP_MSGERROR;
|
||||
+ MMSYSTEM_MapType ret = MMSYSTEM_MAP_MSGERROR;
|
||||
@@ -91,9 +91,9 @@ index 26e47b2..05a1995 100644
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
@@ -103,7 +174,60 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (UINT wMsg, DWORD_PTR* lpP
|
||||
@@ -103,7 +174,60 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (DWORD wMsg, DWORD_PTR* lp
|
||||
*/
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_UnMap16To32W(UINT wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2, MMRESULT fn_ret)
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_UnMap16To32W(DWORD wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2, MMRESULT fn_ret)
|
||||
{
|
||||
- return MMSYSTEM_MAP_MSGERROR;
|
||||
+ MMSYSTEM_MapType ret = MMSYSTEM_MAP_MSGERROR;
|
||||
@@ -154,5 +154,5 @@ index 26e47b2..05a1995 100644
|
||||
|
||||
/**************************************************************************
|
||||
--
|
||||
2.7.1
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From f1500a8dcd6e90680d69fb04ff4f01c1ea4f9fae Mon Sep 17 00:00:00 2001
|
||||
From c1208e9a19cb0d0752c8d76d6a17f8b848ff0728 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 8 Sep 2020 18:43:52 +0200
|
||||
Subject: [PATCH] msxml3: Implement FreeThreadedXMLHTTP60.
|
||||
@@ -15,10 +15,11 @@ Update from Gijs Vermeulen <gijsvrm@gmail.com>
|
||||
7 files changed, 905 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/msxml3/Makefile.in b/dlls/msxml3/Makefile.in
|
||||
index 2bf789732da..e2d737599b1 100644
|
||||
index 7e3eccc0139..b14723d60fd 100644
|
||||
--- a/dlls/msxml3/Makefile.in
|
||||
+++ b/dlls/msxml3/Makefile.in
|
||||
@@ -1,5 +1,5 @@
|
||||
@@ -1,6 +1,6 @@
|
||||
EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
MODULE = msxml3.dll
|
||||
-IMPORTS = $(XSLT_PE_LIBS) $(XML2_PE_LIBS) uuid urlmon shlwapi oleaut32 ole32 user32 advapi32
|
||||
+IMPORTS = $(XSLT_PE_LIBS) $(XML2_PE_LIBS) uuid urlmon shlwapi oleaut32 ole32 user32 advapi32 rtworkq
|
||||
@@ -577,10 +578,10 @@ index 934d580064f..65232bbc8af 100644
|
||||
}
|
||||
+
|
||||
diff --git a/dlls/msxml3/msxml_private.h b/dlls/msxml3/msxml_private.h
|
||||
index 07ed09fb480..6b45cc63a9e 100644
|
||||
index 8003c1a9650..59b8c29845d 100644
|
||||
--- a/dlls/msxml3/msxml_private.h
|
||||
+++ b/dlls/msxml3/msxml_private.h
|
||||
@@ -365,6 +365,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
|
||||
@@ -367,6 +367,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT SAXXMLReader_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT SAXAttributes_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT XMLHTTPRequest_create(void **) DECLSPEC_HIDDEN;
|
||||
@@ -1065,5 +1066,5 @@ index 333d4f3d3c7..1b4f0452c5f 100644
|
||||
/*
|
||||
* Note that because of a #define in msxml2.h, we end up initializing
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e127c088e6f4cfae3066b31adcd73c4eee9008ed Mon Sep 17 00:00:00 2001
|
||||
From 0cb1d81c14522afe45b1bb5a8194efd2470efe27 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Gofman <pgofman@codeweavers.com>
|
||||
Date: Mon, 25 Nov 2019 12:19:20 +0300
|
||||
Subject: [PATCH] ntdll: Force virtual memory allocation order.
|
||||
@@ -12,14 +12,14 @@ are from higher memory than they expect.
|
||||
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48175
|
||||
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46568
|
||||
---
|
||||
dlls/ntdll/unix/virtual.c | 421 ++++++++++++++++++--------------------
|
||||
1 file changed, 204 insertions(+), 217 deletions(-)
|
||||
dlls/ntdll/unix/virtual.c | 417 ++++++++++++++++++--------------------
|
||||
1 file changed, 202 insertions(+), 215 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/unix/virtual.c b/dlls/ntdll/unix/virtual.c
|
||||
index 606e136dfaa..4899fc7b443 100644
|
||||
index 7654055f59b..e971e0523ba 100644
|
||||
--- a/dlls/ntdll/unix/virtual.c
|
||||
+++ b/dlls/ntdll/unix/virtual.c
|
||||
@@ -1217,44 +1217,6 @@ static struct file_view *find_view_range( const void *addr, size_t size )
|
||||
@@ -1202,44 +1202,6 @@ static struct file_view *find_view_range( const void *addr, size_t size )
|
||||
}
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
/***********************************************************************
|
||||
* try_map_free_area
|
||||
*
|
||||
@@ -1287,110 +1249,6 @@ static void* try_map_free_area( void *base, void *end, ptrdiff_t step,
|
||||
@@ -1272,110 +1234,6 @@ static void* try_map_free_area( void *base, void *end, ptrdiff_t step,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
- start = ROUND_ADDR( (char *)view->base - size, granularity_mask );
|
||||
- /* stop if remaining space is not large enough */
|
||||
- if (!start || start >= end || start < base) return NULL;
|
||||
- first = wine_rb_prev( first );
|
||||
- first = rb_prev( first );
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
@@ -110,7 +110,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
- start = ROUND_ADDR( (char *)view->base + view->size + granularity_mask, granularity_mask );
|
||||
- /* stop if remaining space is not large enough */
|
||||
- if (!start || start >= end || (char *)end - (char *)start < size) return NULL;
|
||||
- first = wine_rb_next( first );
|
||||
- first = rb_next( first );
|
||||
- }
|
||||
- }
|
||||
-
|
||||
@@ -175,7 +175,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
/***********************************************************************
|
||||
* add_reserved_area
|
||||
*
|
||||
@@ -1548,8 +1406,7 @@ static void delete_view( struct file_view *view ) /* [in] View */
|
||||
@@ -1533,8 +1391,7 @@ static void delete_view( struct file_view *view ) /* [in] View */
|
||||
{
|
||||
if (!(view->protect & VPROT_SYSTEM)) unmap_area( view->base, view->size );
|
||||
set_page_vprot( view->base, view->size, 0 );
|
||||
@@ -185,7 +185,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
wine_rb_remove( &views_tree, &view->entry );
|
||||
*(struct file_view **)view = next_free_view;
|
||||
next_free_view = view;
|
||||
@@ -1597,8 +1454,7 @@ static NTSTATUS create_view( struct file_view **view_ret, void *base, size_t siz
|
||||
@@ -1582,8 +1439,7 @@ static NTSTATUS create_view( struct file_view **view_ret, void *base, size_t siz
|
||||
set_page_vprot( base, size, vprot );
|
||||
|
||||
wine_rb_put( &views_tree, view->base, &view->entry );
|
||||
@@ -195,7 +195,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
|
||||
*view_ret = view;
|
||||
|
||||
@@ -1812,51 +1668,218 @@ static inline void *unmap_extra_space( void *ptr, size_t total_size, size_t want
|
||||
@@ -1797,51 +1653,218 @@ static inline void *unmap_extra_space( void *ptr, size_t total_size, size_t want
|
||||
|
||||
struct alloc_area
|
||||
{
|
||||
@@ -219,15 +219,15 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
{
|
||||
- struct alloc_area *alloc = arg;
|
||||
- void *end = (char *)start + size;
|
||||
-
|
||||
- if (start < address_space_start) start = address_space_start;
|
||||
- if (is_beyond_limit( start, size, alloc->limit )) end = alloc->limit;
|
||||
- if (start >= end) return 0;
|
||||
+ char *intersect_start, *intersect_end;
|
||||
+ char *end = (char *)start + size;
|
||||
+ struct alloc_area *area = arg;
|
||||
+ char *alloc_start;
|
||||
|
||||
- if (start < address_space_start) start = address_space_start;
|
||||
- if (is_beyond_limit( start, size, alloc->limit )) end = alloc->limit;
|
||||
- if (start >= end) return 0;
|
||||
-
|
||||
- /* make sure we don't touch the preloader reserved range */
|
||||
- if (preload_reserve_end >= start)
|
||||
+ if (area->top_down)
|
||||
@@ -250,23 +250,19 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
{
|
||||
- if (preload_reserve_start <= start) return 0; /* no space in that area */
|
||||
- if (preload_reserve_start < end) end = preload_reserve_start;
|
||||
- }
|
||||
- else if (preload_reserve_start <= start) start = preload_reserve_end;
|
||||
- else
|
||||
- {
|
||||
- /* range is split in two by the preloader reservation, try first part */
|
||||
- if ((alloc->result = find_reserved_free_area( start, preload_reserve_start, alloc->size,
|
||||
- alloc->top_down )))
|
||||
+ alloc_start = ROUND_ADDR( (char *)area->map_area_end - size, granularity_mask );
|
||||
+ if ((area->result = try_map_free_area( intersect_end, alloc_start + size, area->step,
|
||||
+ alloc_start, area->size, area->unix_prot )))
|
||||
return 1;
|
||||
- /* then fall through to try second part */
|
||||
- start = preload_reserve_end;
|
||||
+ return 1;
|
||||
}
|
||||
- else if (preload_reserve_start <= start) start = preload_reserve_end;
|
||||
- else
|
||||
+
|
||||
+ if (intersect_end - intersect_start >= area->size)
|
||||
+ {
|
||||
{
|
||||
- /* range is split in two by the preloader reservation, try first part */
|
||||
- if ((alloc->result = find_reserved_free_area( start, preload_reserve_start, alloc->size,
|
||||
- alloc->top_down )))
|
||||
+ alloc_start = ROUND_ADDR( intersect_end - area->size, granularity_mask );
|
||||
+ if ((area->result = anon_mmap_fixed( alloc_start, area->size,
|
||||
+ area->unix_prot, 0 )) != alloc_start)
|
||||
@@ -298,8 +294,10 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
+ {
|
||||
+ if ((area->result = try_map_free_area( area->map_area_start, intersect_start, area->step,
|
||||
+ area->map_area_start, area->size, area->unix_prot )))
|
||||
+ return 1;
|
||||
+ }
|
||||
return 1;
|
||||
- /* then fall through to try second part */
|
||||
- start = preload_reserve_end;
|
||||
}
|
||||
+
|
||||
+ if (intersect_end - intersect_start >= area->size)
|
||||
+ {
|
||||
@@ -445,7 +443,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
/***********************************************************************
|
||||
* map_fixed_area
|
||||
*
|
||||
@@ -1928,48 +1951,11 @@ static NTSTATUS map_view( struct file_view **view_ret, void *base, size_t size,
|
||||
@@ -1913,48 +1936,11 @@ static NTSTATUS map_view( struct file_view **view_ret, void *base, size_t size,
|
||||
if (status != STATUS_SUCCESS) return status;
|
||||
ptr = base;
|
||||
}
|
||||
@@ -497,7 +495,7 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
status = create_view( view_ret, ptr, size, vprot );
|
||||
if (status != STATUS_SUCCESS) unmap_area( ptr, size );
|
||||
return status;
|
||||
@@ -2695,6 +2681,7 @@ void virtual_init(void)
|
||||
@@ -2680,6 +2666,7 @@ void virtual_init(void)
|
||||
if (preload_reserve_start)
|
||||
address_space_start = min( address_space_start, preload_reserve_start );
|
||||
}
|
||||
@@ -506,5 +504,5 @@ index 606e136dfaa..4899fc7b443 100644
|
||||
|
||||
/* try to find space in a reserved area for the views and pages protection table */
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -184,11 +184,11 @@ index 4899fc7b443..cee739bd942 100644
|
||||
+ if (prev && (char *)prev->base >= native_mapped_end)
|
||||
+ {
|
||||
+ next = prev;
|
||||
+ prev = WINE_RB_ENTRY_VALUE( wine_rb_prev( &next->entry ), struct file_view, entry );
|
||||
+ prev = WINE_RB_ENTRY_VALUE( rb_prev( &next->entry ), struct file_view, entry );
|
||||
+ }
|
||||
+ else if (prev)
|
||||
+ {
|
||||
+ next = WINE_RB_ENTRY_VALUE( wine_rb_next( &prev->entry ), struct file_view, entry );
|
||||
+ next = WINE_RB_ENTRY_VALUE( rb_next( &prev->entry ), struct file_view, entry );
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 8250683de1ca5e4c1c975e6365f7a817b33461b4 Mon Sep 17 00:00:00 2001
|
||||
From 62e3109b6bd1b3324827063531ae0826571c751b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sun, 17 Jan 2016 00:50:50 +0100
|
||||
Subject: [PATCH] ntdll/tests: Add basic tests for RtlQueryPackageIdentity.
|
||||
@@ -9,10 +9,11 @@ Subject: [PATCH] ntdll/tests: Add basic tests for RtlQueryPackageIdentity.
|
||||
2 files changed, 81 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntdll/tests/Makefile.in b/dlls/ntdll/tests/Makefile.in
|
||||
index ed15c51339f..e4ae568532e 100644
|
||||
index 7e0272498fa..a2c716d11d4 100644
|
||||
--- a/dlls/ntdll/tests/Makefile.in
|
||||
+++ b/dlls/ntdll/tests/Makefile.in
|
||||
@@ -1,5 +1,5 @@
|
||||
@@ -1,6 +1,6 @@
|
||||
EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
TESTDLL = ntdll.dll
|
||||
-IMPORTS = user32 advapi32
|
||||
+IMPORTS = user32 ole32 advapi32
|
||||
@@ -20,7 +21,7 @@ index ed15c51339f..e4ae568532e 100644
|
||||
C_SRCS = \
|
||||
atom.c \
|
||||
diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c
|
||||
index 897be4fcd12..e7fef1a79ad 100644
|
||||
index c0168884a0a..c25a9185fad 100644
|
||||
--- a/dlls/ntdll/tests/rtl.c
|
||||
+++ b/dlls/ntdll/tests/rtl.c
|
||||
@@ -27,6 +27,9 @@
|
||||
@@ -53,7 +54,7 @@ index 897be4fcd12..e7fef1a79ad 100644
|
||||
pLdrRegisterDllNotification = (void *)GetProcAddress(hntdll, "LdrRegisterDllNotification");
|
||||
pLdrUnregisterDllNotification = (void *)GetProcAddress(hntdll, "LdrUnregisterDllNotification");
|
||||
}
|
||||
@@ -3664,6 +3673,76 @@ static void test_RtlDestroyHeap(void)
|
||||
@@ -3682,6 +3691,76 @@ static void test_RtlDestroyHeap(void)
|
||||
RtlRemoveVectoredExceptionHandler( handler );
|
||||
}
|
||||
|
||||
@@ -130,7 +131,7 @@ index 897be4fcd12..e7fef1a79ad 100644
|
||||
START_TEST(rtl)
|
||||
{
|
||||
InitFunctionPtrs();
|
||||
@@ -3702,6 +3781,7 @@ START_TEST(rtl)
|
||||
@@ -3721,6 +3800,7 @@ START_TEST(rtl)
|
||||
test_RtlInitializeCriticalSectionEx();
|
||||
test_RtlLeaveCriticalSection();
|
||||
test_LdrEnumerateLoadedModules();
|
||||
@@ -139,5 +140,5 @@ index 897be4fcd12..e7fef1a79ad 100644
|
||||
test_LdrRegisterDllNotification();
|
||||
test_DbgPrint();
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 2a1f587297f97e8c8f3d1327f2dfd3f5f1fd2300 Mon Sep 17 00:00:00 2001
|
||||
From 0b292f9ebd14638de48420184e065ce7ec9c4126 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Sat, 22 May 2021 18:05:40 -0500
|
||||
Subject: [PATCH] d3d11: Introduce a COM interface to retrieve the
|
||||
@@ -11,18 +11,18 @@ Subject: [PATCH] d3d11: Introduce a COM interface to retrieve the
|
||||
3 files changed, 112 insertions(+)
|
||||
|
||||
diff --git a/dlls/d3d11/d3d11_private.h b/dlls/d3d11/d3d11_private.h
|
||||
index f4c66ca4ce9..8dc8ecc88db 100644
|
||||
index efe26551258..6079a8ad2db 100644
|
||||
--- a/dlls/d3d11/d3d11_private.h
|
||||
+++ b/dlls/d3d11/d3d11_private.h
|
||||
@@ -545,6 +545,7 @@ struct d3d11_device_context
|
||||
{
|
||||
@@ -546,6 +546,7 @@ struct d3d11_device_context
|
||||
ID3D11DeviceContext1 ID3D11DeviceContext1_iface;
|
||||
ID3D11Multithread ID3D11Multithread_iface;
|
||||
ID3DUserDefinedAnnotation ID3DUserDefinedAnnotation_iface;
|
||||
+ IWineD3DDeviceContext IWineD3DDeviceContext_iface;
|
||||
LONG refcount;
|
||||
|
||||
D3D11_DEVICE_CONTEXT_TYPE type;
|
||||
@@ -561,6 +562,7 @@ struct d3d_device
|
||||
@@ -562,6 +563,7 @@ struct d3d_device
|
||||
ID3D11Device2 ID3D11Device2_iface;
|
||||
ID3D10Device1 ID3D10Device1_iface;
|
||||
ID3D10Multithread ID3D10Multithread_iface;
|
||||
@@ -31,10 +31,10 @@ index f4c66ca4ce9..8dc8ecc88db 100644
|
||||
IUnknown *outer_unk;
|
||||
LONG refcount;
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index b5b97c83aba..626e9d47e81 100644
|
||||
index f0cbb1741ab..82419b2a5bc 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -3223,11 +3223,67 @@ static const struct ID3D11MultithreadVtbl d3d11_multithread_vtbl =
|
||||
@@ -3191,6 +3191,61 @@ static const struct ID3D11MultithreadVtbl d3d11_multithread_vtbl =
|
||||
d3d11_multithread_GetMultithreadProtected,
|
||||
};
|
||||
|
||||
@@ -93,16 +93,18 @@ index b5b97c83aba..626e9d47e81 100644
|
||||
+ context_d3d_device_context_get_wined3d_device_context,
|
||||
+};
|
||||
+
|
||||
static void d3d11_device_context_init(struct d3d11_device_context *context, struct d3d_device *device,
|
||||
D3D11_DEVICE_CONTEXT_TYPE type)
|
||||
{
|
||||
/* ID3DUserDefinedAnnotation methods */
|
||||
|
||||
static inline struct d3d11_device_context *impl_from_ID3DUserDefinedAnnotation(ID3DUserDefinedAnnotation *iface)
|
||||
@@ -3271,6 +3326,7 @@ static void d3d11_device_context_init(struct d3d11_device_context *context, stru
|
||||
context->ID3D11DeviceContext1_iface.lpVtbl = &d3d11_device_context_vtbl;
|
||||
context->ID3D11Multithread_iface.lpVtbl = &d3d11_multithread_vtbl;
|
||||
context->ID3DUserDefinedAnnotation_iface.lpVtbl = &d3d11_user_defined_annotation_vtbl;
|
||||
+ context->IWineD3DDeviceContext_iface.lpVtbl = &context_d3d_device_context_vtbl;
|
||||
context->refcount = 1;
|
||||
context->type = type;
|
||||
|
||||
@@ -6631,6 +6687,49 @@ static const struct ID3D10MultithreadVtbl d3d10_multithread_vtbl =
|
||||
@@ -6695,6 +6751,49 @@ static const struct ID3D10MultithreadVtbl d3d10_multithread_vtbl =
|
||||
d3d10_multithread_GetMultithreadProtected,
|
||||
};
|
||||
|
||||
@@ -152,7 +154,7 @@ index b5b97c83aba..626e9d47e81 100644
|
||||
/* IWineDXGIDeviceParent IUnknown methods */
|
||||
|
||||
static inline struct d3d_device *device_from_dxgi_device_parent(IWineDXGIDeviceParent *iface)
|
||||
@@ -6834,6 +6933,7 @@ void d3d_device_init(struct d3d_device *device, void *outer_unknown)
|
||||
@@ -6898,6 +6997,7 @@ void d3d_device_init(struct d3d_device *device, void *outer_unknown)
|
||||
device->ID3D11Device2_iface.lpVtbl = &d3d11_device_vtbl;
|
||||
device->ID3D10Device1_iface.lpVtbl = &d3d10_device1_vtbl;
|
||||
device->ID3D10Multithread_iface.lpVtbl = &d3d10_multithread_vtbl;
|
||||
@@ -179,5 +181,5 @@ index 83012047ea7..3c910376cc7 100644
|
||||
+ struct wined3d_device_context *get_wined3d_device_context();
|
||||
+}
|
||||
--
|
||||
2.30.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
|
||||
|
@@ -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
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user