Compare commits

...

94 Commits
v6.5 ... v6.10

Author SHA1 Message Date
Alistair Leslie-Hughes
8a3554ad85 Release v6.10 2021-06-05 15:36:11 +10:00
Alistair Leslie-Hughes
1fc93d6e9f Added dpnet-Server-EnumServiceProviders patchset 2021-06-05 13:17:28 +10:00
Alistair Leslie-Hughes
799d451409 Added api-ms-win-core-psapi-K32GetModuleInformation patchset 2021-06-05 12:58:08 +10:00
Alistair Leslie-Hughes
a534ddb0a0 Rebase against 649385e7d47091fa25b9114668075b06d2942e2f. 2021-06-05 10:46:23 +10:00
Zebediah Figura
3e16509e0e quartz-MediaSeeking_Positions: Remove patch set.
There is no reference for an application that needs this, and a quick test
shows that it is incorrect for both the base passthrough object and for every
filter we have that uses it.
2021-06-02 23:00:52 -05:00
Alistair Leslie-Hughes
06523ed0a0 Rebase against 0807b09cfa7f2446f7a69f99ff1006e88c9de60b. 2021-06-03 08:59:40 +10:00
Alistair Leslie-Hughes
0e6e23e1f9 Removed old windows.networking.connectivity patchset 2021-06-03 08:34:55 +10:00
Zebediah Figura
8790b8780f Rebase against 96030ce738aa20f85a5138ec7c231c19a086f019. 2021-06-01 19:05:12 -05:00
Zebediah Figura
44f10effff Rebase against 211da181c9140541ab7f7fcfa479367b3f7783eb. 2021-06-01 19:05:11 -05:00
Alistair Leslie-Hughes
73c8cb1002 Added windows.networking.connectivity-new-dll patchset 2021-06-01 14:09:59 +10:00
Alistair Leslie-Hughes
356d0d750c Added wbemdisp-ISWbemObject-Invoke patchset 2021-05-30 17:21:08 +10:00
Alistair Leslie-Hughes
9efac47eec Added wscript-support-d-u-switches patchset 2021-05-29 14:24:02 +10:00
Alistair Leslie-Hughes
2ebe0e23aa Rebase against 35180d368a94156cb77b09560b24d3af428b988b. 2021-05-29 13:53:27 +10:00
Zebediah Figura
d4e9192632 Rebase against ce151dd681fe5ee80daba96dce12e37d6846e152. 2021-05-27 17:10:15 -05:00
Zebediah Figura
d97f6a5faa Rebase against 9bc7d41080f5e6805154b9d52a765f2be5d37279. 2021-05-27 00:38:35 -05:00
Alistair Leslie-Hughes
34afd80e2e Rebase against 8ddff3f51faca2c0824e204a69f69e241fb93d15. 2021-05-26 10:17:35 +10:00
Zebediah Figura
69765f438b d3d11-Deferred_Context, wined3d-CSMT_Main: Fix data size calculation for block-based formats with unaligned size.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51172
2021-05-24 23:16:59 -05:00
Zebediah Figura
99d312740b Rebase against 94eb8d36461f6eb380b95e58629ad4871e5efef4. 2021-05-24 22:39:23 -05:00
Zebediah Figura
5bbe3e47a5 wined3d-CSMT_Main: Pass the right size to wined3d_device_context_require_space().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51172
2021-05-24 11:19:48 -05:00
Alistair Leslie-Hughes
cfe44f6d5d Release v6.9 2021-05-23 12:28:21 +10:00
Zebediah Figura
88a18586d3 wined3d-CSMT_Main: Rewrite on top of d3d11-Deferred_Context. 2021-05-22 18:49:28 -05:00
Zebediah Figura
85d7293a41 nvapi-Stub_DLL: Make the depth bounds test implementation more architecturally consistent. 2021-05-22 18:48:41 -05:00
Zebediah Figura
a71e4cdf85 user32-rawinput-*: Updates from Rémi Bernon. 2021-05-22 18:35:33 -05:00
Zebediah Figura
5378adafaa d3d11-Deferred_Context: Replace with a new implementation. 2021-05-22 01:22:14 -05:00
Zebediah Figura
be3928a809 server-default_integrity: Elevate processes if the manifest requests.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51000
2021-05-21 22:11:04 -05:00
Alistair Leslie-Hughes
f308782dad Rebase against dff85646517526562644c23648d11596daeb26d0. 2021-05-21 12:07:42 +10:00
Alistair Leslie-Hughes
e3ec587726 Rebase against 44b30c42cbb231e3ea54a47f6ecc19e641e5f889. 2021-05-20 08:09:27 +10:00
Alistair Leslie-Hughes
b595359adf Updated msxml3-FreeThreadedXMLHTTP60 patchset
Thanks Gijs Vermeulen.
2021-05-19 11:33:50 +10:00
Alistair Leslie-Hughes
ab2f8734d9 Rebase against 2a667e28ba7800288f5873a4b13bc0baf6e4a857. 2021-05-19 09:54:05 +10:00
Alistair Leslie-Hughes
f7a08f5969 Merge pull request #80 from Gcenx/FUNDING
Create FUNDING.yml
2021-05-19 07:30:18 +10:00
Alistair Leslie-Hughes
f867740029 Merge pull request #79 from Gcenx/jxrlib
macOS.yml: Added jxrlib
2021-05-19 07:29:44 +10:00
Dean M Greer
667cea7592 Create FUNDING.yml
https://github.blog/2020-03-24-getting-started-with-github-sponsors/

Enable to show the "Sponsors" Button and sidebar.
2021-05-18 09:27:13 -04:00
Dean M Greer
dbdde3ad10 macOS.yml: Added jxrlib
Since 5f7694179c the formula now builds dylibs on macOS
2021-05-18 09:09:28 -04:00
Alistair Leslie-Hughes
e2875bb754 Rebase against 9172ca5baa27b0c929b14a49f60333613cc30c65. 2021-05-18 07:44:16 +10:00
Zebediah Figura
180ba8c931 server-default_integrity: Create the MSI custom action server as an elevated process. 2021-05-16 20:52:14 -05:00
Alistair Leslie-Hughes
0df3e892fb Rebase against 0a50674c6aabb0368811ece4078a2bb69d7ea1bb. 2021-05-13 09:38:12 +10:00
Zebediah Figura
234a9fe775 Rebase against c74508d22528548940db3c8ac6a350064ca445e9. 2021-05-11 21:18:28 -05:00
Zebediah Figura
7f18df4633 Rebase against 44cb53bb37d3c40ea90aec6e35a9c08326b6e848. 2021-05-11 01:01:15 -05:00
Zebediah Figura
8e5c8cc63b ntdll-Junction_Points: Updates from Erich E. Hoover.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50770
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50804
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50878
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51059
2021-05-08 15:14:02 -05:00
Zebediah Figura
7c888e7fee ntdll-DOS_Attributes: Remove a commented dependency. 2021-05-08 14:36:49 -05:00
Alistair Leslie-Hughes
0f00e37c68 Release v6.8 2021-05-08 15:34:35 +10:00
Alistair Leslie-Hughes
8c06be6529 Rebase against 99e47361a37a4bf16de131401a0c231f86214a43. 2021-05-08 13:13:58 +10:00
Zebediah Figura
50d26744b0 Rebase against a64861fb66be722f3a93ab73152c5d477ba3bd3e. 2021-05-06 18:40:21 -05:00
Alistair Leslie-Hughes
046b1ab22c Rebase against e2aa30f21def839866b09e74b5ddd843f7e70c87. 2021-05-06 08:38:36 +10:00
Zebediah Figura
1ebf4bd23f Rebase against cda4abac9859ed42c29e8cb2746201a578431a5e. 2021-05-04 18:28:59 -05:00
Zebediah Figura
b113f99f07 dxdiag-new-dlls: Remove patch set.
From the discussion in <https://bugs.winehq.org/show_bug.cgi?id=50293>, these
patches don't seem to be providing any value (all they are doing is causing
arbitrarily chosen numbers to be shown in the dialog, which don't reflect
anything about actual functionality).

A possible benefit of these patches is anticipating their need by other
programs. However, (a) most of these DLLs are internal helpers used by other
(public) DirectX APIs, (b) the case of a missing DLL is usually quite easy to
debug anyway, (c) such a stance leaves us with the maintenance burden of far
more code that will never be necessary than code that actually turns out to be
useful.

Since (1) upstream has appeared reticent to accept them, (2) a proposal for
their removal in the bug report met with no apparent objection, (3) they have
already caused at least two regressions [however easy to fix], namely bug 50395
and bug 50700, (4) they present a noticeable maintenance burden, if a trivial
one, (5) as explained they provide no real benefit, remove them.
2021-05-04 17:56:21 -05:00
Zebediah Figura
813bfa288e Rebase against 3ba4412be60dafee310b5d3c71aa762aa8846564. 2021-05-03 23:39:26 -05:00
Zebediah Figura
c814617e2c ntdll-NtAlertThreadByThreadId: Fix compilation on Mac OS. 2021-05-03 10:57:10 -05:00
Zebediah Figura
cb7a9792d7 comctl-Listview_DrawItem: Remove patch set.
This was fixed upstream by c32720349cd4a6f4c32fdcff6a4cce054fbfe33e.
2021-05-01 21:52:38 -05:00
Zebediah Figura
96a8cc2920 pdh-PdhLookupPerfNameByIndex-processor: Remove patch set.
This was written for Silverlight, but Silverlight didn't actually need this.
2021-04-30 18:39:55 -05:00
Zebediah Figura
a1a2d65488 ntdll-NtAlertThreadByThreadId: Use flat two-dimensional arrays indexed by thread ID on both the PE and Unix side.
This should be less invasive and hopefully improve performance.
2021-04-30 18:10:02 -05:00
Zebediah Figura
7d496bf02c Rebase against 2deb8c2825afcb88a9f106b73aa1f4da9253fb87. 2021-04-30 17:50:37 -05:00
Alistair Leslie-Hughes
4d8896cc35 Rebase against ca03802a456e7cf4efd834edfeddc483ac72e4b5. 2021-04-30 09:12:29 +10:00
Zebediah Figura
977e5237da winedevice-Default_Drivers: Install win32k.sys in system32 instead of trying to load it from system32\drivers. 2021-04-28 22:55:45 -05:00
Alistair Leslie-Hughes
708e63e63f Rebase against 8f8fa9182af7a2995940a5e17cf074bc849f2c0f. 2021-04-29 08:17:58 +10:00
Alistair Leslie-Hughes
921d247b6b Updated winedevice-Default_Drivers patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=51075
2021-04-29 08:15:44 +10:00
Alistair Leslie-Hughes
a918fa9a1c Updated Staging patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=50997
2021-04-28 18:38:58 +10:00
Zebediah Figura
592b9480ef Rebase against 4ccf7498aac20b2b0afa2118f8d919718e5fcbbe. 2021-04-27 20:03:45 -05:00
Alistair Leslie-Hughes
552dc36846 Updated user32-rawinput-hid patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=51054
2021-04-25 17:55:02 +10:00
Alistair Leslie-Hughes
deed76f394 Release v6.7 2021-04-24 16:11:30 +10:00
Alistair Leslie-Hughes
20e795b107 Added secur32-InitializeSecurityContextW patchset 2021-04-24 16:08:50 +10:00
Zebediah Figura
ac30cf5d62 user32-rawinput-hid: Fix rebase. 2021-04-23 20:33:04 -05:00
Alistair Leslie-Hughes
99759f003a Rebase against c0af8b73725d2670c9b018a255c503dee6912cf5. 2021-04-24 10:22:14 +10:00
Zebediah Figura
7eb07f1d50 Rebase against 5a1d836def24043b4e7afcdc8cf1342223957edf. 2021-04-22 16:49:07 -05:00
Zebediah Figura
68f87944cf wineboot-DriveSerial: Remove patch.
Fixed upstream by <50903a1504>.
2021-04-21 23:01:12 -05:00
Alistair Leslie-Hughes
0c8991562d Updated xactengine3_7-Notification patchset 2021-04-22 13:52:45 +10:00
Zebediah Figura
27fae2dc15 Rebase against 08c6114fbbdabe1873731356c51716e513a26348. 2021-04-21 19:23:54 -05:00
Alistair Leslie-Hughes
39f66ddd9f Rebase against 788fd4ee44fc9877b01888fdd3cd72b9ac88228e. 2021-04-21 11:40:13 +10:00
Zebediah Figura
33d85bda8a server-File_Permissions: Do not force user modes to be at least as permissive as group modes, or group modes as world modes.
This removes one of the two parts of this patch.

It's really splitting hairs, but this isn't clearly more correct than the
current code, and in fact it actually makes at least one contrived ACL worse
(namely: deny user, then allow all; this should deny the user on Windows and
currently already does on Wine.)
2021-04-19 18:33:20 -05:00
Zebediah Figura
ba9a7a6a74 ntdll-Activation_Context: Remove patch.
This was originally the third patch in a series, introduced by ec4e719cd6. The
first patch and the series itself was written by Mark Jansen and focused on an
incorrect handling of NULL in QueryActCtx(). It's not clear what those were
actually for, but they're upstream now.

My guess is that Sebastian noticed this "bug" while writing tests and wrote the
patch to fix it, as it's an easy one-liner. My guess is that he never submitted
it upstream either because it wasn't clearly correct (e.g. he wanted to actually
implement ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION) or because of
disagreements with upstream over project direction. As it happens there is a way
to get ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION to return valid data—pass
a NULL or empty string as the section name.

Anyway, the patch is likely to have never actually helped anything, and even if
it did, it's a one-liner with a FIXME message already attached, and so won't be
hard to debug again if necessary.
2021-04-19 18:14:44 -05:00
Zebediah Figura
85fbfed5eb Rebase against 06ab0677587fbbb83ef73efa7ed22bf85dcb6836. 2021-04-19 18:11:23 -05:00
Zebediah Figura
20303a53ec Rebase against 749f8c25e262cb049289e7c96bb390edcafa1021. 2021-04-16 17:42:09 -05:00
Zebediah Figura
30c9d5a0f8 Rebase against 39263558a2088940aaacd6eda19ca23d40b63495. 2021-04-16 00:26:25 -05:00
Zebediah Figura
425f75f839 Rebase against 092c7a09a5afde3f11b71b1816388e80d062e8ec. 2021-04-14 19:17:15 -05:00
Zebediah Figura
d805441f46 Rebase against c6393968754d64189f111e9277fb9060ec415fae. 2021-04-13 20:27:50 -05:00
Zebediah Figura
2211b6664e mfplat-streaming-support: Remove patch 0019.
This was fixed by 800103d127.
2021-04-13 16:24:27 -05:00
Zebediah Figura
a886228fbc user32-rawinput-mouse: Update from Rémi Bernon.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50969
2021-04-12 17:00:07 -05:00
Zebediah Figura
e353590528 kernel32-Processor_Group: Remove patch 0001.
This has no effect now other than to return ERROR_INVALID_PARAMETER in some cases, which is not really more correct.
2021-04-12 16:56:56 -05:00
Zebediah Figura
b582d2d018 Rebase against 4904d90870a716fda971fc12240ddbc23323475c. 2021-04-12 16:54:57 -05:00
Zebediah Figura
00aab80494 Release v6.6 2021-04-09 17:47:34 -05:00
Zebediah Figura
86424f3ac1 bcrypt-ECDHSecretAgreement: Remove a commented "Disabled: true" directive. 2021-04-09 17:40:52 -05:00
Zebediah Figura
661df7b889 user32-rawinput-*: Replace with new patches from Rémi Bernon. 2021-04-09 17:39:38 -05:00
Zebediah Figura
64ea26c0cb Rebase against a24bdfc2c69c5648cbb3df762149b2647e209a09. 2021-04-09 15:23:33 -05:00
Zebediah Figura
9319c38de2 Rebase against 3269da9b46eaec8e3ea263fc8ecfcd24d3d8b6e6. 2021-04-08 18:18:17 -05:00
Zebediah Figura
03f7334e65 Actually rebase against ac65e1540960e64ce29e40ec19e4eade8369d520. 2021-04-07 18:35:45 -05:00
Zebediah Figura
eb40bf85d6 Rebase against ac65e1540960e64ce29e40ec19e4eade8369d520. 2021-04-07 17:30:55 -05:00
Zebediah Figura
d1169e15ee Rebase against 5a8bc554ef06c4a21d8b49ea8d936299f2cb2f34. 2021-04-06 18:45:52 -05:00
Zebediah Figura
0c295023f1 Rebase against 8d076bc5e46cc11ec94db631e7c608f62d75cee2. 2021-04-06 17:41:23 -05:00
Zebediah Figura
733a420dd7 server-Key_State: Replace with new patches from Rémi Bernon.
This also serves as a rebase against 2fcc1d0ecdebc55a5f515b1390ce715303f6a6ad.
2021-04-02 20:15:01 -05:00
Zebediah Figura
545073aafa Rebase against 97b420224e767b24d89722ff5efeca38a8ecf1e2. 2021-04-01 23:03:15 -05:00
Zebediah Figura
4e2dc89043 Rebase against 29d9659095fd76e303f204050ab4c85d0a0486e4. 2021-03-31 16:49:32 -05:00
Zebediah Figura
2929606a6a msxml3-FreeThreadedXMLHTTP60: Change bug reference to reflect split upstream bug. 2021-03-31 16:04:59 -05:00
Zebediah Figura
d90a798a26 Rebase against 7c62e6b169f18f4a5d5809490f8aebdb5a9375eb. 2021-03-30 17:06:03 -05:00
Zebediah Figura
2e42e7d996 Rebase against 6ca1a92684fcbaa1c569b60411a8036b6d11dc99. 2021-03-29 17:03:49 -05:00
319 changed files with 8273 additions and 20721 deletions

13
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,13 @@
# These are supported funding model platforms
#github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
#patreon: # Replace with a single Patreon username
#open_collective: # Replace with a single Open Collective username
#ko_fi: # Replace with a single Ko-fi username
#tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
#community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
#liberapay: # Replace with a single Liberapay username
#issuehunt: # Replace with a single IssueHunt username
#otechie: # Replace with a single Otechie username
patreon: winestaging

View File

@@ -2,10 +2,7 @@ name: MacOS
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
workflow_dispatch:
jobs:
@@ -17,11 +14,13 @@ jobs:
- name: Install dependencies
run: |
brew update
brew install --cask xquartz
brew install bison \
faudio \
gphoto2 \
gst-plugins-base \
jxrlib \
little-cms2 \
mingw-w64 \
molten-vk \
@@ -77,11 +76,13 @@ jobs:
- name: Install dependencies
run: |
brew update
brew install --cask xquartz
brew install bison \
faudio \
gphoto2 \
gst-plugins-base \
jxrlib \
little-cms2 \
mingw-w64 \
molten-vk \

View File

@@ -1,15 +1,15 @@
From 0cf6433af95363c5fbba2af482b2ba50b863dfb7 Mon Sep 17 00:00:00 2001
From e51b05c3a9d03e4dd84a107a30841d95f8a519c3 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 2 Oct 2014 19:44:31 +0200
Subject: [PATCH] ntdll: Print a warning message specifying the wine-staging
branch name and version.
---
dlls/ntdll/loader.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
dlls/ntdll/loader.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index 20bc3f977d1..c2187a19397 100644
index ee453700e51..c2d4b3c2f86 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -44,6 +44,7 @@ WINE_DECLARE_DEBUG_CHANNEL(relay);
@@ -20,15 +20,15 @@ index 20bc3f977d1..c2187a19397 100644
#ifdef _WIN64
#define DEFAULT_SECURITY_COOKIE_64 (((ULONGLONG)0x00002b99 << 32) | 0x2ddfa232)
@@ -3456,6 +3457,7 @@ static void process_breakpoint(void)
__ENDTRY
@@ -3307,6 +3308,7 @@ void WINAPI LdrShutdownProcess(void)
process_detach();
}
+extern const char * CDECL wine_get_version(void);
/******************************************************************
* LdrInitializeThunk (NTDLL.@)
@@ -3465,6 +3467,9 @@ static void process_breakpoint(void)
* RtlExitUserProcess (NTDLL.@)
@@ -3673,6 +3675,9 @@ static void init_wow64(void)
*/
void WINAPI LdrInitializeThunk( CONTEXT *context, ULONG_PTR unknown2, ULONG_PTR unknown3, ULONG_PTR unknown4 )
{
@@ -38,9 +38,9 @@ index 20bc3f977d1..c2187a19397 100644
static int attach_done;
int i;
NTSTATUS status;
@@ -3483,6 +3488,16 @@ void WINAPI LdrInitializeThunk( CONTEXT *context, ULONG_PTR unknown2, ULONG_PTR
entry = (void **)&context->u.s.X0;
#endif
@@ -3753,6 +3758,17 @@ void WINAPI LdrInitializeThunk( CONTEXT *context, ULONG_PTR unknown2, ULONG_PTR
}
else wm = get_modref( NtCurrentTeb()->Peb->ImageBaseAddress );
+ RtlInitUnicodeString( &staging_event_string, L"\\__wine_staging_warn_event" );
+ InitializeObjectAttributes( &staging_event_attr, &staging_event_string, OBJ_OPENIF, NULL, NULL );
@@ -52,9 +52,10 @@ index 20bc3f977d1..c2187a19397 100644
+ else
+ WARN_(winediag)("wine-staging %s is a testing version containing experimental patches.\n", wine_get_version());
+
if (process_detaching) NtTerminateThread( GetCurrentThread(), 0 );
RtlEnterCriticalSection( &loader_section );
+
RtlAcquirePebLock();
InsertHeadList( &tls_links, &NtCurrentTeb()->TlsLinks );
RtlReleasePebLock();
--
2.28.0
2.30.2

View File

@@ -1,34 +0,0 @@
From 1941137bff72a2297812bbd05fb6f6a1578426b0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 5 Mar 2017 23:05:54 +0100
Subject: advapi32: Use TRACE for LsaOpenPolicy/LsaClose.
---
dlls/advapi32/lsa.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/advapi32/lsa.c b/dlls/advapi32/lsa.c
index e5e3b1649c0..0f2167d19ab 100644
--- a/dlls/advapi32/lsa.c
+++ b/dlls/advapi32/lsa.c
@@ -136,7 +136,7 @@ NTSTATUS WINAPI LsaAddAccountRights(
*/
NTSTATUS WINAPI LsaClose(IN LSA_HANDLE ObjectHandle)
{
- FIXME("(%p) stub\n", ObjectHandle);
+ TRACE("(%p) semi-stub\n", ObjectHandle);
return STATUS_SUCCESS;
}
@@ -687,7 +687,7 @@ NTSTATUS WINAPI LsaOpenPolicy(
IN ACCESS_MASK DesiredAccess,
IN OUT PLSA_HANDLE PolicyHandle)
{
- FIXME("(%s,%p,0x%08x,%p) stub\n",
+ TRACE("(%s,%p,0x%08x,%p) semi-stub\n",
SystemName?debugstr_w(SystemName->Buffer):"(null)",
ObjectAttributes, DesiredAccess, PolicyHandle);
--
2.11.0

View File

@@ -0,0 +1,27 @@
From ebf3df9837ac6707fe831722c7ed24ccd80f95ce Mon Sep 17 00:00:00 2001
From: Thomas Crider <gloriouseggroll@gmail.com>
Date: Sat, 29 May 2021 14:39:08 -0600
Subject: [PATCH] api-ms-win-core-psapi-l1-1-0: Add K32GetModuleBaseNameW and
K32GetModuleInformation.
Needed for Mass Effect Legendary Edition.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51199
Signed-off-by: Thomas Crider <gloriouseggroll@gmail.com>
---
.../api-ms-win-core-psapi-l1-1-0.spec | 2 ++
1 file changed, 2 insertions(+)
diff --git a/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec b/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
index c54c1077843..321fc3fe928 100644
--- a/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
+++ b/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
@@ -14,3 +14,5 @@
@ stdcall K32QueryWorkingSet(long ptr long) kernel32.K32QueryWorkingSet
@ stdcall K32QueryWorkingSetEx(long ptr long) kernel32.K32QueryWorkingSetEx
@ stdcall QueryFullProcessImageNameW(ptr long ptr ptr) kernel32.QueryFullProcessImageNameW
+@ stdcall K32GetModuleBaseNameW(long long ptr long) kernel32.K32GetModuleBaseNameW
+@ stdcall K32GetModuleInformation(long long ptr long) kernel32.K32GetModuleInformation
--
2.30.2

View File

@@ -0,0 +1,25 @@
From c96b3a0632721f8849fb1d8404272b5007c1d1b4 Mon Sep 17 00:00:00 2001
From: Thomas Crider <gloriouseggroll@gmail.com>
Date: Sat, 29 May 2021 14:39:09 -0600
Subject: [PATCH] api-ms-win-core-psapi-ansi-l1-1-0: add K32GetModuleBaseNameA
Needed for Mass Effect Legendary Edition.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51199
Signed-off-by: Thomas Crider <gloriouseggroll@gmail.com>
---
.../api-ms-win-core-psapi-ansi-l1-1-0.spec | 1 +
1 file changed, 1 insertion(+)
diff --git a/dlls/api-ms-win-core-psapi-ansi-l1-1-0/api-ms-win-core-psapi-ansi-l1-1-0.spec b/dlls/api-ms-win-core-psapi-ansi-l1-1-0/api-ms-win-core-psapi-ansi-l1-1-0.spec
index e4f758581f6..340198c6edf 100644
--- a/dlls/api-ms-win-core-psapi-ansi-l1-1-0/api-ms-win-core-psapi-ansi-l1-1-0.spec
+++ b/dlls/api-ms-win-core-psapi-ansi-l1-1-0/api-ms-win-core-psapi-ansi-l1-1-0.spec
@@ -4,3 +4,4 @@
@ stdcall K32GetMappedFileNameA(long ptr ptr long) kernel32.K32GetMappedFileNameA
@ stdcall K32GetProcessImageFileNameA(long ptr long) kernel32.K32GetProcessImageFileNameA
@ stdcall QueryFullProcessImageNameA(ptr long ptr ptr) kernel32.QueryFullProcessImageNameA
+@ stdcall K32GetModuleBaseNameA(long long ptr long) kernel32.K32GetModuleBaseNameA
--
2.30.2

View File

@@ -0,0 +1 @@
Fixes: [51199] Add missing api-ms-win-core-psapi forwards

View File

@@ -1,100 +0,0 @@
From 452c42b4855e2f6338fa9b8746377ff9fe9ee706 Mon Sep 17 00:00:00 2001
From: Qian Hong <qhong@codeweavers.com>
Date: Wed, 23 Apr 2014 04:16:53 +0800
Subject: [PATCH] atl: Implement AtlAxDialogBox[A,W]
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=32749
---
dlls/atl/atl_ax.c | 60 +++++++++++++++++++++++++++++++++++++++++++++----------
1 file changed, 50 insertions(+), 10 deletions(-)
diff --git a/dlls/atl/atl_ax.c b/dlls/atl/atl_ax.c
index 8121278..92fcb84 100644
--- a/dlls/atl/atl_ax.c
+++ b/dlls/atl/atl_ax.c
@@ -28,6 +28,7 @@
#include "winerror.h"
#include "winuser.h"
#include "wine/debug.h"
+#include "wine/heap.h"
#include "objbase.h"
#include "objidl.h"
#include "ole2.h"
@@ -1407,25 +1408,64 @@ HRESULT WINAPI AtlAxGetControl(HWND hWnd, IUnknown **pUnk)
}
/***********************************************************************
- * AtlAxDialogBoxW [atl100.35]
+ * AtlAxDialogBoxA [atl100.@]
*
*/
-INT_PTR WINAPI AtlAxDialogBoxW(HINSTANCE hInstance, LPCWSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogProc,
- LPARAM dwInitParam)
+INT_PTR WINAPI AtlAxDialogBoxA(HINSTANCE hInst, LPCSTR name, HWND owner, DLGPROC dlgProc, LPARAM param)
{
- FIXME("(%p %s %p %p %lx)\n", hInstance, debugstr_w(lpTemplateName), hWndParent, lpDialogProc, dwInitParam);
- return 0;
+ INT_PTR res = 0;
+ int length;
+ WCHAR *nameW;
+
+ if (IS_INTRESOURCE(name))
+ return AtlAxDialogBoxW( hInst, (LPCWSTR) name, owner, dlgProc, param );
+
+ length = MultiByteToWideChar( CP_ACP, 0, name, -1, NULL, 0 );
+ nameW = heap_alloc( length * sizeof(WCHAR) );
+ if (nameW)
+ {
+ MultiByteToWideChar( CP_ACP, 0, name, -1, nameW, length );
+ res = AtlAxDialogBoxW( hInst, nameW, owner, dlgProc, param );
+ heap_free( nameW );
+ }
+ return res;
}
/***********************************************************************
- * AtlAxDialogBoxA [atl100.36]
+ * AtlAxDialogBoxW [atl100.@]
*
*/
-INT_PTR WINAPI AtlAxDialogBoxA(HINSTANCE hInstance, LPCSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogProc,
- LPARAM dwInitParam)
+INT_PTR WINAPI AtlAxDialogBoxW(HINSTANCE hInst, LPCWSTR name, HWND owner, DLGPROC dlgProc, LPARAM param)
{
- FIXME("(%p %s %p %p %lx)\n", hInstance, debugstr_a(lpTemplateName), hWndParent, lpDialogProc, dwInitParam);
- return 0;
+ HRSRC hrsrc;
+ HGLOBAL hgl;
+ LPCDLGTEMPLATEW ptr;
+ LPDLGTEMPLATEW newptr;
+ INT_PTR res;
+
+ TRACE("(%p %s %p %p %lx)\n", hInst, debugstr_w(name), owner, dlgProc, param);
+
+ hrsrc = FindResourceW( hInst, name, (LPWSTR)RT_DIALOG );
+ if ( !hrsrc )
+ return 0;
+ hgl = LoadResource (hInst, hrsrc);
+ if ( !hgl )
+ return 0;
+ ptr = LockResource ( hgl );
+ if (!ptr)
+ {
+ FreeResource( hgl );
+ return 0;
+ }
+ newptr = AX_ConvertDialogTemplate( ptr );
+ if ( newptr )
+ {
+ res = DialogBoxIndirectParamW( hInst, newptr, owner, dlgProc, param );
+ heap_free( newptr );
+ } else
+ res = 0;
+ FreeResource ( hrsrc );
+ return res;
}
/***********************************************************************
--
1.9.1

View File

@@ -1 +0,0 @@
Fixes: [32749] atl: Implemented AtlAxDialogBox[A,W]

View File

@@ -1,4 +1,4 @@
From 3478a4e41c07a66e7e913c54bcf5ad52e16a8fee Mon Sep 17 00:00:00 2001
From 6d925cb20409888ada3e469a2a09b1bfc726fa79 Mon Sep 17 00:00:00 2001
From: Derek Lesho <dlesho@codeweavers.com>
Date: Fri, 2 Oct 2020 11:29:24 -0500
Subject: [PATCH] bcrypt: Allow multiple backends to coexist.
@@ -14,7 +14,7 @@ Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
create mode 100644 dlls/bcrypt/unixlib.c
diff --git a/dlls/bcrypt/Makefile.in b/dlls/bcrypt/Makefile.in
index 24803fb2d7cb..46a20d473dd7 100644
index 24803fb2d7c..46a20d473dd 100644
--- a/dlls/bcrypt/Makefile.in
+++ b/dlls/bcrypt/Makefile.in
@@ -11,6 +11,7 @@ C_SRCS = \
@@ -27,7 +27,7 @@ index 24803fb2d7cb..46a20d473dd7 100644
RC_SRCS = version.rc
diff --git a/dlls/bcrypt/bcrypt_internal.h b/dlls/bcrypt/bcrypt_internal.h
index eb1361115093..3c7110d05f84 100644
index eb136111509..3c7110d05f8 100644
--- a/dlls/bcrypt/bcrypt_internal.h
+++ b/dlls/bcrypt/bcrypt_internal.h
@@ -218,4 +218,7 @@ struct key_funcs
@@ -39,10 +39,10 @@ index eb1361115093..3c7110d05f84 100644
+
#endif /* __BCRYPT_INTERNAL_H */
diff --git a/dlls/bcrypt/gnutls.c b/dlls/bcrypt/gnutls.c
index c065ac31fba3..9490ea8612a8 100644
index 2f0c62bc6da..4a9dcf9de8a 100644
--- a/dlls/bcrypt/gnutls.c
+++ b/dlls/bcrypt/gnutls.c
@@ -371,9 +371,12 @@ fail:
@@ -372,9 +372,12 @@ fail:
static void gnutls_uninitialize(void)
{
@@ -58,7 +58,7 @@ index c065ac31fba3..9490ea8612a8 100644
}
struct buffer
@@ -1949,19 +1952,28 @@ static const struct key_funcs key_funcs =
@@ -1899,19 +1902,28 @@ static const struct key_funcs key_funcs =
key_import_rsa
};
@@ -74,7 +74,7 @@ index c065ac31fba3..9490ea8612a8 100644
+ if (!gnutls_initialize()) return NULL;
+ return &key_funcs;
case DLL_PROCESS_DETACH:
gnutls_uninitialize();
if (libgnutls_handle) gnutls_uninitialize();
- break;
}
- return STATUS_SUCCESS;
@@ -95,7 +95,7 @@ index c065ac31fba3..9490ea8612a8 100644
+}
+#endif
diff --git a/dlls/bcrypt/macos.c b/dlls/bcrypt/macos.c
index 44906519cef0..2a88aec8362c 100644
index 44906519cef..2a88aec8362 100644
--- a/dlls/bcrypt/macos.c
+++ b/dlls/bcrypt/macos.c
@@ -302,11 +302,21 @@ static const struct key_funcs key_funcs =
@@ -126,7 +126,7 @@ index 44906519cef0..2a88aec8362c 100644
#endif
diff --git a/dlls/bcrypt/unixlib.c b/dlls/bcrypt/unixlib.c
new file mode 100644
index 000000000000..9cbb25f5740c
index 00000000000..9cbb25f5740
--- /dev/null
+++ b/dlls/bcrypt/unixlib.c
@@ -0,0 +1,211 @@
@@ -342,5 +342,5 @@ index 000000000000..9cbb25f5740c
+
+#endif
--
2.29.2
2.30.2

View File

@@ -2,4 +2,3 @@ Fixes: [47699] Multiple games fail to connect to online services (missing BCrypt
# Needs to be moved to the unix lib, but that's a nontrivial amount of work, and
# using gcrypt is the wrong way forward (we should expose the missing APIs from
# gnutls instead).
#Disabled: true

View File

@@ -1,54 +0,0 @@
From 3497a2faa4ebab67b65bcf99d4ed56baa70ddf96 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 12 Jul 2014 23:58:19 +0200
Subject: [PATCH] comctl32: Preserve custom colors between subitems. (v2)
---
dlls/comctl32/listview.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index dba16d13a4c..35cab333b7b 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -1063,7 +1063,7 @@ static void prepaint_setup (const LISTVIEW_INFO *infoPtr, HDC hdc, const NMLVCUS
textcolor = cd->clrText;
/* apparently, for selected items, we have to override the returned values */
- if (!SubItem)
+ if (!SubItem || (infoPtr->dwLvExStyle & LVS_EX_FULLROWSELECT))
{
if (cd->nmcd.uItemState & CDIS_SELECTED)
{
@@ -4786,6 +4786,7 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, ITERAT
while (iterator_next(subitems))
{
DWORD subitemstage = CDRF_DODEFAULT;
+ NMLVCUSTOMDRAW temp_nmlvcd;
/* We need to query for each subitem, item's data (subitem == 0) is already here at this point */
if (subitems->nItem)
@@ -4813,13 +4814,15 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, ITERAT
if (cdsubitemmode & CDRF_NOTIFYSUBITEMDRAW)
subitemstage = notify_customdraw(infoPtr, CDDS_SUBITEM | CDDS_ITEMPREPAINT, &nmlvcd);
- if (subitems->nItem == 0 || (cdmode & CDRF_NOTIFYITEMDRAW))
- prepaint_setup(infoPtr, hdc, &nmlvcd, FALSE);
- else if (!(infoPtr->dwLvExStyle & LVS_EX_FULLROWSELECT))
- prepaint_setup(infoPtr, hdc, &nmlvcd, TRUE);
+ /*
+ * A selection should neither affect the colors in the post paint notification nor
+ * affect the colors of the next drawn subitem. Copy the structure to prevent this.
+ */
+ temp_nmlvcd = nmlvcd;
+ prepaint_setup(infoPtr, hdc, &temp_nmlvcd, subitems->nItem);
if (!(subitemstage & CDRF_SKIPDEFAULT))
- LISTVIEW_DrawItemPart(infoPtr, &lvItem, &nmlvcd, &pos);
+ LISTVIEW_DrawItemPart(infoPtr, &lvItem, &temp_nmlvcd, &pos);
if (subitemstage & CDRF_NOTIFYPOSTPAINT)
subitemstage = notify_customdraw(infoPtr, CDDS_SUBITEM | CDDS_ITEMPOSTPAINT, &nmlvcd);
--
2.27.0

View File

@@ -1 +0,0 @@
Fixes: [38941] Preserve custom colors between subitems for listview control

View File

@@ -1,174 +0,0 @@
From 881e39d338d1b8faed36440376460d498262c532 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 19 Jan 2017 16:54:42 +0100
Subject: [PATCH] wined3d: Add wined3d_resource_map_info function.
---
dlls/wined3d/buffer.c | 19 +++++++++++++++++++
dlls/wined3d/resource.c | 8 ++++++++
dlls/wined3d/texture.c | 31 +++++++++++++++++++++++++++++++
dlls/wined3d/wined3d.spec | 1 +
dlls/wined3d/wined3d_private.h | 2 ++
include/wine/wined3d.h | 9 +++++++++
6 files changed, 70 insertions(+)
diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c
index 89dab8ebfdd..5ef9a48eeb7 100644
--- a/dlls/wined3d/buffer.c
+++ b/dlls/wined3d/buffer.c
@@ -1121,6 +1121,24 @@ static HRESULT buffer_resource_sub_resource_map(struct wined3d_resource *resourc
return WINED3D_OK;
}
+static HRESULT buffer_resource_sub_resource_map_info(struct wined3d_resource *resource, unsigned int sub_resource_idx,
+ struct wined3d_map_info *info, DWORD flags)
+{
+ struct wined3d_buffer *buffer = buffer_from_resource(resource);
+
+ if (sub_resource_idx)
+ {
+ WARN("Invalid sub_resource_idx %u.\n", sub_resource_idx);
+ return E_INVALIDARG;
+ }
+
+ info->row_pitch = resource->size;
+ info->slice_pitch = resource->size;
+ info->size = buffer->resource.size;
+
+ return WINED3D_OK;
+}
+
static HRESULT buffer_resource_sub_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
{
struct wined3d_buffer *buffer = buffer_from_resource(resource);
@@ -1279,6 +1297,7 @@ static const struct wined3d_resource_ops buffer_resource_ops =
buffer_resource_preload,
buffer_resource_unload,
buffer_resource_sub_resource_map,
+ buffer_resource_sub_resource_map_info,
buffer_resource_sub_resource_unmap,
};
diff --git a/dlls/wined3d/resource.c b/dlls/wined3d/resource.c
index bba940f42cb..ff31c004b06 100644
--- a/dlls/wined3d/resource.c
+++ b/dlls/wined3d/resource.c
@@ -383,6 +383,14 @@ HRESULT CDECL wined3d_resource_map(struct wined3d_resource *resource, unsigned i
return wined3d_cs_map(resource->device->cs, resource, sub_resource_idx, map_desc, box, flags);
}
+HRESULT CDECL wined3d_resource_map_info(struct wined3d_resource *resource, unsigned int sub_resource_idx,
+ struct wined3d_map_info *info, DWORD flags)
+{
+ TRACE("resource %p, sub_resource_idx %u.\n", resource, sub_resource_idx);
+
+ return resource->resource_ops->resource_map_info(resource, sub_resource_idx, info, flags);
+}
+
HRESULT CDECL wined3d_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
{
TRACE("resource %p, sub_resource_idx %u.\n", resource, sub_resource_idx);
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
index 7c9c8298519..73e79ff25b5 100644
--- a/dlls/wined3d/texture.c
+++ b/dlls/wined3d/texture.c
@@ -3155,6 +3155,36 @@ static HRESULT texture_resource_sub_resource_map(struct wined3d_resource *resour
return WINED3D_OK;
}
+static HRESULT texture_resource_sub_resource_map_info(struct wined3d_resource *resource, unsigned int sub_resource_idx,
+ struct wined3d_map_info *info, DWORD flags)
+{
+ const struct wined3d_format *format = resource->format;
+ struct wined3d_texture_sub_resource *sub_resource;
+ unsigned int fmt_flags = resource->format_flags;
+ struct wined3d_texture *texture;
+ unsigned int texture_level;
+
+ texture = texture_from_resource(resource);
+ if (!(sub_resource = wined3d_texture_get_sub_resource(texture, sub_resource_idx)))
+ return E_INVALIDARG;
+
+ texture_level = sub_resource_idx % texture->level_count;
+
+ if (fmt_flags & WINED3DFMT_FLAG_BROKEN_PITCH)
+ {
+ info->row_pitch = wined3d_texture_get_level_width(texture, texture_level) * format->byte_count;
+ info->slice_pitch = wined3d_texture_get_level_height(texture, texture_level) * info->row_pitch;
+ }
+ else
+ {
+ wined3d_texture_get_pitch(texture, texture_level, &info->row_pitch, &info->slice_pitch);
+ }
+
+ info->size = info->slice_pitch * wined3d_texture_get_level_depth(texture, texture_level);
+
+ return WINED3D_OK;
+}
+
static HRESULT texture_resource_sub_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
{
struct wined3d_texture_sub_resource *sub_resource;
@@ -3207,6 +3237,7 @@ static const struct wined3d_resource_ops texture_resource_ops =
texture_resource_preload,
texture_resource_unload,
texture_resource_sub_resource_map,
+ texture_resource_sub_resource_map_info,
texture_resource_sub_resource_unmap,
};
diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec
index e03c57055b7..f68f8199f7e 100644
--- a/dlls/wined3d/wined3d.spec
+++ b/dlls/wined3d/wined3d.spec
@@ -218,6 +218,7 @@
@ cdecl wined3d_resource_get_parent(ptr)
@ cdecl wined3d_resource_get_priority(ptr)
@ cdecl wined3d_resource_map(ptr long ptr ptr long)
+@ cdecl wined3d_resource_map_info(ptr long ptr long)
@ cdecl wined3d_resource_preload(ptr)
@ cdecl wined3d_resource_set_parent(ptr ptr)
@ cdecl wined3d_resource_set_priority(ptr long)
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 8f9ad1ce856..c7f75d1983c 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -3368,6 +3368,8 @@ struct wined3d_resource_ops
void (*resource_unload)(struct wined3d_resource *resource);
HRESULT (*resource_sub_resource_map)(struct wined3d_resource *resource, unsigned int sub_resource_idx,
struct wined3d_map_desc *map_desc, const struct wined3d_box *box, DWORD flags);
+ HRESULT (*resource_map_info)(struct wined3d_resource *resource, unsigned int sub_resource_idx,
+ struct wined3d_map_info *info, DWORD flags);
HRESULT (*resource_sub_resource_unmap)(struct wined3d_resource *resource, unsigned int sub_resource_idx);
};
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index bafab04d3d3..ea50fb7c8d4 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -1851,6 +1851,13 @@ struct wined3d_map_desc
void *data;
};
+struct wined3d_map_info
+{
+ UINT row_pitch;
+ UINT slice_pitch;
+ UINT size;
+};
+
struct wined3d_sub_resource_data
{
const void *data;
@@ -2663,6 +2670,8 @@ void * __cdecl wined3d_resource_get_parent(const struct wined3d_resource *resour
DWORD __cdecl wined3d_resource_get_priority(const struct wined3d_resource *resource);
HRESULT __cdecl wined3d_resource_map(struct wined3d_resource *resource, unsigned int sub_resource_idx,
struct wined3d_map_desc *map_desc, const struct wined3d_box *box, DWORD flags);
+HRESULT __cdecl wined3d_resource_map_info(struct wined3d_resource *resource, unsigned int sub_resource_idx,
+ struct wined3d_map_info *info, DWORD flags);
void __cdecl wined3d_resource_preload(struct wined3d_resource *resource);
void __cdecl wined3d_resource_set_parent(struct wined3d_resource *resource, void *parent);
DWORD __cdecl wined3d_resource_set_priority(struct wined3d_resource *resource, DWORD priority);
--
2.24.0

View File

@@ -1,81 +0,0 @@
From fc3937794343611ef4bedefc4829ed06ceee8f64 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Jan 2017 04:10:12 +0100
Subject: [PATCH] d3d11: Implement CSSetShader for deferred contexts.
---
dlls/d3d11/device.c | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index 2f13e85..e54ccaf 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -40,6 +40,7 @@ enum deferred_cmd
DEFERRED_OMSETBLENDSTATE, /* blend_state_info */
DEFERRED_OMSETRENDERTARGETS, /* render_target_info */
+ DEFERRED_CSSETSHADER, /* cs_info */
DEFERRED_DSSETSHADER, /* ds_info */
DEFERRED_HSSETSHADER, /* hs_info */
DEFERRED_PSSETSHADER, /* ps_info */
@@ -120,6 +121,11 @@ struct deferred_call
} render_target_info;
struct
{
+ ID3D11ComputeShader *shader;
+ /* FIXME: add class instances */
+ } cs_info;
+ struct
+ {
ID3D11DomainShader *shader;
/* FIXME: add class instances */
} ds_info;
@@ -349,6 +355,12 @@ static void free_deferred_calls(struct list *commands)
ID3D11DepthStencilView_Release(call->render_target_info.depth_stencil);
break;
}
+ case DEFERRED_CSSETSHADER:
+ {
+ if (call->cs_info.shader)
+ ID3D11ComputeShader_Release(call->cs_info.shader);
+ break;
+ }
case DEFERRED_DSSETSHADER:
{
if (call->ds_info.shader)
@@ -491,6 +503,11 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
call->render_target_info.render_targets, call->render_target_info.depth_stencil);
break;
}
+ case DEFERRED_CSSETSHADER:
+ {
+ ID3D11DeviceContext1_CSSetShader(iface, call->cs_info.shader, NULL, 0);
+ break;
+ }
case DEFERRED_DSSETSHADER:
{
ID3D11DeviceContext1_DSSetShader(iface, call->ds_info.shader, NULL, 0);
@@ -4410,8 +4427,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(I
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceContext *iface,
ID3D11ComputeShader *shader, ID3D11ClassInstance *const *class_instances, UINT class_instance_count)
{
- FIXME("iface %p, shader %p, class_instances %p, class_instance_count %u stub!\n",
+ struct d3d11_deferred_context *context = impl_from_deferred_ID3D11DeviceContext(iface);
+ struct deferred_call *call;
+
+ TRACE("iface %p, shader %p, class_instances %p, class_instance_count %u.\n",
iface, shader, class_instances, class_instance_count);
+
+ if (!(call = add_deferred_call(context, 0)))
+ return;
+
+ call->cmd = DEFERRED_CSSETSHADER;
+ if (shader) ID3D11ComputeShader_AddRef(shader);
+ call->cs_info.shader = shader;
}
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceContext *iface,
--
1.9.1

View File

@@ -1,68 +0,0 @@
From ac4e13da593e8d6fcd868e95414eb6395fb28e44 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Jan 2017 04:21:47 +0100
Subject: [PATCH] d3d11: Implement CSSetConstantBuffers for deferred contexts.
---
dlls/d3d11/device.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index e54ccaf..8fee8cd 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -52,6 +52,7 @@ enum deferred_cmd
DEFERRED_DSSETSAMPLERS, /* samplers_info */
DEFERRED_PSSETSAMPLERS, /* samplers_info */
+ DEFERRED_CSSETCONSTANTBUFFERS, /* constant_buffers_info */
DEFERRED_DSSETCONSTANTBUFFERS, /* constant_buffers_info */
DEFERRED_HSSETCONSTANTBUFFERS, /* constant_buffers_info */
DEFERRED_PSSETCONSTANTBUFFERS, /* constant_buffers_info */
@@ -266,7 +267,7 @@ static void add_deferred_set_samplers(struct d3d11_deferred_context *context, en
}
}
-/* for DEFERRED_DSSETCONSTANTBUFFERS, DEFERRED_HSSETCONSTANTBUFFERS,
+/* for DEFERRED_CSSETCONSTANTBUFFERS. DEFERRED_DSSETCONSTANTBUFFERS, DEFERRED_HSSETCONSTANTBUFFERS,
* DEFERRED_PSSETCONSTANTBUFFERS and DEFERRED_VSSETCONSTANTBUFFERS */
static void add_deferred_set_constant_buffers(struct d3d11_deferred_context *context, enum deferred_cmd cmd,
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
@@ -405,6 +406,7 @@ static void free_deferred_calls(struct list *commands)
}
break;
}
+ case DEFERRED_CSSETCONSTANTBUFFERS:
case DEFERRED_DSSETCONSTANTBUFFERS:
case DEFERRED_HSSETCONSTANTBUFFERS:
case DEFERRED_PSSETCONSTANTBUFFERS:
@@ -552,6 +554,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
call->samplers_info.num_samplers, call->samplers_info.samplers);
break;
}
+ case DEFERRED_CSSETCONSTANTBUFFERS:
+ {
+ ID3D11DeviceContext1_CSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
+ break;
+ }
case DEFERRED_DSSETCONSTANTBUFFERS:
{
ID3D11DeviceContext1_DSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
@@ -4451,8 +4459,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceC
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetConstantBuffers(ID3D11DeviceContext *iface,
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
{
- FIXME("iface %p, start_slot %u, buffer_count %u, buffers %p stub!\n",
+ struct d3d11_deferred_context *context = impl_from_deferred_ID3D11DeviceContext(iface);
+
+ TRACE("iface %p, start_slot %u, buffer_count %u, buffers %p.\n",
iface, start_slot, buffer_count, buffers);
+
+ add_deferred_set_constant_buffers(context, DEFERRED_CSSETCONSTANTBUFFERS, start_slot, buffer_count, buffers);
}
static void STDMETHODCALLTYPE d3d11_deferred_context_VSGetConstantBuffers(ID3D11DeviceContext *iface,
--
1.9.1

View File

@@ -1,82 +0,0 @@
From 300aab481c30eddac58cbf7c9a418d3c0f7bb4e8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Jan 2017 04:29:10 +0100
Subject: [PATCH] d3d11: Implement Dispatch for deferred contexts.
---
dlls/d3d11/device.c | 30 +++++++++++++++++++++++++++++-
1 file changed, 29 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index 8fee8cd..b1f148a 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -62,6 +62,7 @@ enum deferred_cmd
DEFERRED_DRAWINDEXEDINSTANCED, /* draw_indexed_inst_info */
DEFERRED_MAP, /* map_info */
+ DEFERRED_DISPATCH, /* dispatch_info */
DEFERRED_CLEARSTATE,
};
@@ -186,6 +187,12 @@ struct deferred_call
void *buffer;
UINT size;
} map_info;
+ struct
+ {
+ UINT count_x;
+ UINT count_y;
+ UINT count_z;
+ } dispatch_info;
};
};
@@ -429,6 +436,10 @@ static void free_deferred_calls(struct list *commands)
ID3D11Resource_Release(call->map_info.resource);
break;
}
+ case DEFERRED_DISPATCH:
+ {
+ break; /* nothing to do */
+ }
case DEFERRED_CLEARSTATE:
{
break; /* nothing to do */
@@ -614,6 +625,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
break;
}
+ case DEFERRED_DISPATCH:
+ {
+ ID3D11DeviceContext1_Dispatch(iface, call->dispatch_info.count_x,
+ call->dispatch_info.count_y, call->dispatch_info.count_z);
+ break;
+ }
case DEFERRED_CLEARSTATE:
{
ID3D11DeviceContext1_ClearState(iface);
@@ -4181,8 +4198,19 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstancedIndirect(ID3D1
static void STDMETHODCALLTYPE d3d11_deferred_context_Dispatch(ID3D11DeviceContext *iface,
UINT thread_group_count_x, UINT thread_group_count_y, UINT thread_group_count_z)
{
- FIXME("iface %p, thread_group_count_x %u, thread_group_count_y %u, thread_group_count_z %u stub!\n",
+ struct d3d11_deferred_context *context = impl_from_deferred_ID3D11DeviceContext(iface);
+ struct deferred_call *call;
+
+ TRACE("iface %p, thread_group_count_x %u, thread_group_count_y %u, thread_group_count_z %u.\n",
iface, thread_group_count_x, thread_group_count_y, thread_group_count_z);
+
+ if (!(call = add_deferred_call(context, 0)))
+ return;
+
+ call->cmd = DEFERRED_DISPATCH;
+ call->dispatch_info.count_x = thread_group_count_x;
+ call->dispatch_info.count_y = thread_group_count_y;
+ call->dispatch_info.count_z = thread_group_count_z;
}
static void STDMETHODCALLTYPE d3d11_deferred_context_DispatchIndirect(ID3D11DeviceContext *iface,
--
1.9.1

View File

@@ -1,98 +0,0 @@
From 116636717ee333aff38b77530fbcb885ad46f0a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Jan 2017 04:48:56 +0100
Subject: [PATCH] d3d11: Implement CSSetUnorderedAccessViews for deferred
contexts.
---
dlls/d3d11/device.c | 45 ++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 44 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index b1f148a..3c475e7 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -58,6 +58,8 @@ enum deferred_cmd
DEFERRED_PSSETCONSTANTBUFFERS, /* constant_buffers_info */
DEFERRED_VSSETCONSTANTBUFFERS, /* constant_buffers_info */
+ DEFERRED_CSSETUNORDEREDACCESSVIEWS, /* unordered_view */
+
DEFERRED_DRAWINDEXED, /* draw_indexed_info */
DEFERRED_DRAWINDEXEDINSTANCED, /* draw_indexed_inst_info */
@@ -166,6 +168,13 @@ struct deferred_call
} constant_buffers_info;
struct
{
+ UINT start_slot;
+ UINT num_views;
+ ID3D11UnorderedAccessView **views;
+ UINT *initial_counts;
+ } unordered_view;
+ struct
+ {
UINT count;
UINT start_index;
INT base_vertex;
@@ -426,6 +435,15 @@ static void free_deferred_calls(struct list *commands)
}
break;
}
+ case DEFERRED_CSSETUNORDEREDACCESSVIEWS:
+ {
+ for (i = 0; i < call->unordered_view.num_views; i++)
+ {
+ if (call->unordered_view.views[i])
+ ID3D11UnorderedAccessView_Release(call->unordered_view.views[i]);
+ }
+ break;
+ }
case DEFERRED_DRAWINDEXED:
case DEFERRED_DRAWINDEXEDINSTANCED:
{
@@ -595,6 +613,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
break;
}
+ case DEFERRED_CSSETUNORDEREDACCESSVIEWS:
+ {
+ ID3D11DeviceContext1_CSSetUnorderedAccessViews(iface, call->unordered_view.start_slot,
+ call->unordered_view.num_views, call->unordered_view.views, call->unordered_view.initial_counts);
+ break;
+ }
case DEFERRED_DRAWINDEXED:
{
ID3D11DeviceContext1_DrawIndexed(iface, call->draw_indexed_info.count,
@@ -4456,8 +4480,27 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShaderResources(ID3D11
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(ID3D11DeviceContext *iface,
UINT start_slot, UINT view_count, ID3D11UnorderedAccessView *const *views, const UINT *initial_counts)
{
- FIXME("iface %p, start_slot %u, view_count %u, views %p, initial_counts %p stub!\n",
+ struct d3d11_deferred_context *context = impl_from_deferred_ID3D11DeviceContext(iface);
+ struct deferred_call *call;
+ int i;
+
+ TRACE("iface %p, start_slot %u, view_count %u, views %p, initial_counts %p.\n",
iface, start_slot, view_count, views, initial_counts);
+
+ if (!(call = add_deferred_call(context, view_count * (sizeof(*views) + sizeof(UINT)))))
+ return;
+
+ call->cmd = DEFERRED_CSSETUNORDEREDACCESSVIEWS;
+ call->unordered_view.start_slot = start_slot;
+ call->unordered_view.num_views = view_count;
+ call->unordered_view.views = (void *)(call + 1);
+ call->unordered_view.initial_counts = (void *)&call->unordered_view.views[view_count];
+ for (i = 0; i < view_count; i++)
+ {
+ if (views[i]) ID3D11UnorderedAccessView_AddRef(views[i]);
+ call->unordered_view.views[i] = views[i];
+ call->unordered_view.initial_counts[i] = initial_counts[i];
+ }
}
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceContext *iface,
--
1.9.1

Some files were not shown because too many files have changed in this diff Show More