Commit Graph

5616 Commits

Author SHA1 Message Date
Alistair Leslie-Hughes
813a5dd246 Disabled Compiler_Warnings patchset 2024-06-17 21:17:31 +10:00
Alistair Leslie-Hughes
5a586ba5cb Added odbccp32-SQLWritePrivateProfileStringW patchset 2024-06-15 14:38:32 +10:00
Alistair Leslie-Hughes
d776fcfa06 Added oledb32-mode-property patchset 2024-06-15 14:03:49 +10:00
Alistair Leslie-Hughes
b8b2c3a701 Updated vkd3d-latest patchset 2024-06-15 13:57:32 +10:00
Alistair Leslie-Hughes
5c6c431443 Updated odbc-remove-unixodbc patchset
Thanks Steve Fawcett.
2024-06-12 09:45:18 +10:00
Alistair Leslie-Hughes
a7f3224a3a Updated vkd3d-latest patchset 2024-06-12 07:50:59 +10:00
Alistair Leslie-Hughes
d2f75e3101 Rebase against 0bc571657e63b478fb5913b90343a8ec39443b82. 2024-06-12 07:49:09 +10:00
Alistair Leslie-Hughes
cdcfae0a00 Updated odbc-remove-unixodbc patchset
Update SQLDriverConnectW to record the driver ODBC version it supports.
Fixup SQLColAttribute/W return SQL_COLUMN_TYPE column type when driver v2.0 and ODBC 3.0 request.
2024-06-11 19:21:37 +10:00
Alistair Leslie-Hughes
8a93e0c0ef Rebase against 8ba51a6f711c5466e060a5958cc15c31b2b2ac7d. 2024-06-11 08:14:51 +10:00
Alistair Leslie-Hughes
1977f6c82a Updated odbc-remove-unixodbc patchset
Add fallback for SQLSetStmtAttr/W to support ODBC 2.0.

SQLGetDiagField/W return SQL_NO_DATA as default.
2024-06-10 21:47:45 +10:00
Alistair Leslie-Hughes
9e8e2ae892 Updated odbc-remove-unixodbc patchset
Use fallback for SQLColAttributeW for ODBC v2.0 drivers.
Use fallback for SQLGetDiagRecW for ODBC v2.0 drivers
Thanks Steve Fawcett

Use fallback for SQLBindParameter for ODBC v2.0 drivers.
Use fallback for SQLGetConnectAttr/W for ODBC v2.0 drivers.
Use fallback for SQLSetConnectAttr/W for ODBC v2.0 drivers.

Forward SQLSetConnectAttr onto driver.
Forward SQLError/W onto driver (new patch).
2024-06-10 08:50:35 +10:00
Alistair Leslie-Hughes
87a5dcecb7 Rebase against 7eb72b7bb3d3ea771efddcb5273e8a69456548ff. 2024-06-08 08:26:32 +10:00
Alistair Leslie-Hughes
88e86a23c0 Updated odbc-remove-unixodbc patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=56786

Add support for "Driver=" argument in connection string.
2024-06-07 17:05:06 +10:00
Alistair Leslie-Hughes
87cf242f01 Rebase against 9f6e44fd9ca7d39258f2772c3f44013142702ca4. 2024-06-07 10:12:09 +10:00
Alistair Leslie-Hughes
2f712afe77 Rebase against 6a512200f4719ea6b0be6de83cac632112a38b36. 2024-06-06 09:21:53 +10:00
Alistair Leslie-Hughes
6e641992a3 Rebase against b89c9c60d50cf21650331d1528ff965c319a1217. 2024-06-05 09:04:45 +10:00
Alistair Leslie-Hughes
03c0de0368 Updated shell32-IconCache patchset
Fixed compile warning.
2024-06-04 08:30:50 +10:00
Alistair Leslie-Hughes
52d70e2ee4 Updated vkd3d-latest patchset
Fixes compile warnings.
2024-06-04 07:59:05 +10:00
Alistair Leslie-Hughes
6c033276e3 Rebase against b6abacbb7b0ed2fb3557d23f716878214b156c8c. 2024-06-04 07:58:31 +10:00
Alistair Leslie-Hughes
7f80904f89 Rebase against 951e0e27a743e52c75c7fedc0b1eaa9eb77e6bb6. 2024-06-01 12:28:56 +10:00
Alistair Leslie-Hughes
c084f2e153 Updated vkd3d-latest patchset 2024-05-31 07:40:33 +10:00
Alistair Leslie-Hughes
4ff6ecc4ac Rebase against b6eada5e2f9e3c86c18df118cddd20e6212f64de. 2024-05-31 07:38:53 +10:00
Alistair Leslie-Hughes
123aed11ee Updated vkd3d-latest patchset 2024-05-28 07:43:02 +10:00
Alistair Leslie-Hughes
0ebc680f8f Rebase against 5f7b9a5b837a77a85754b3b55b974e39e199f817. 2024-05-28 07:40:19 +10:00
Alistair Leslie-Hughes
68925c8f61 Rebase against d41a1f0183f5686fa3ed1b42c4de07e393833925. 2024-05-22 07:49:58 +10:00
Alistair Leslie-Hughes
791a70faf0 Updated Compiler_Warnings patchset
Hoepfully fixes the macos compile error.
2024-05-19 14:50:23 +10:00
Alistair Leslie-Hughes
3ab6d734c0 Updated vkd3d-latest patchset 2024-05-19 13:40:18 +10:00
Alistair Leslie-Hughes
31a5df0839 Updated Compiler_Warnings patchset 2024-05-19 13:39:33 +10:00
Alistair Leslie-Hughes
7adaca8b1b Updated Compiler_Warnings patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=56692
2024-05-19 09:23:01 +10:00
Alistair Leslie-Hughes
a78e9f3998 Updated vkd3d-latest patchset
Squashed for release.
2024-05-18 13:09:43 +10:00
Alistair Leslie-Hughes
05c875caa5 Updated vkd3d-latest patchset 2024-05-16 11:58:46 +10:00
Alistair Leslie-Hughes
a2170c577b Rebase against 849baece66e326bce255dfea0d6fb10df888bc55. 2024-05-16 08:29:53 +10:00
Alistair Leslie-Hughes
d8260944be Rebase against 6a31983779479b42e0c2e5320a1dfa962767c28e. 2024-05-15 08:24:14 +10:00
Alistair Leslie-Hughes
f76ea979db Updated vkd3d-latest patchset 2024-05-13 09:30:19 +10:00
Alistair Leslie-Hughes
e4078c26a2 Rebase against 040b2a9c75666527af6ca79d9146095c8ed6a3cf. 2024-05-13 09:28:53 +10:00
Alistair Leslie-Hughes
b0595d928b Updated ntdll-Junction_Points patchset
Fixes: https://bugs.winehq.org/show_bug.cgi?id=56647
2024-05-11 11:29:05 +10:00
Alistair Leslie-Hughes
56d40e2349 Updated ddraw-GetPickRecords patchset
Correct rebase.

Fixes: https://bugs.winehq.org/show_bug.cgi?id=56529
2024-05-04 07:54:31 +10:00
Alistair Leslie-Hughes
2f18b0cd6d Updated odbc-remove-unixodbc patchset
Functions SQLDataSources*/SQLDrivers* are local to this DLL and not forwards onto the driver DLL.
Hense the Environment handle being passed as the first parameter.

Said functions need to return SQL_NO_DATA to state we have no data instead of an SQL_ERROR.

Fixes: https://bugs.winehq.org/show_bug.cgi?id=56616

Allows it to run now, more work will be required to make it fully functional.
2024-05-03 14:16:52 +10:00
Alistair Leslie-Hughes
0d13d81503 Updated vkd3d-latest patchset 2024-05-03 07:37:38 +10:00
Alistair Leslie-Hughes
a4b239f15e Rebase against 013f54af1f721dce651c85f87a5339ba3cb9d4a1. 2024-05-03 07:32:40 +10:00
Zebediah Figura
0f06925bd9 widl-SLTG_Typelib_Support: Reënable.
There are no more build conflicts.
2024-04-28 20:32:56 -05:00
Zebediah Figura
cd8789cb1f user32-LoadKeyboardLayoutEx: Remove isolated definition file. 2024-04-28 20:12:42 -05:00
Zebediah Figura
3dd9038110 winex11-XEMBED: Remove patch.
This was for Pipelight. See the parent commit for justification on removal.
2024-04-28 19:00:04 -05:00
Zebediah Figura
a051432871 Pipelight: Remove patch set.
Even if one asserts that Silverlight is worth supporting in any capacity (which
I am not for the moment taking any position on), Pipelight is unusable without
downgrading Firefox. As Erich put it to me, "the point of Pipelight was to not
have to run the entire browser in Wine," but now a user would have to go to at
least such an extent anyway.

And, of course, nothing here is useful outside of Pipelight, or if it is, we
want to explicitly know about it so that we can document and properly support
those knobs.
2024-04-28 18:56:38 -05:00
Zebediah Figura
6919d12eba ntdll-CriticalSection: Remove patch set.
This patch set is currently broken, as the RtlEnterCriticalSection()
implementation has changed without corresponding changes to the inline version.

More broadly, it is very surprising, and never really substantiated, that
inlining helps significantly. There is no record of why the patches were
written, but my guess is that they were written in an attempt to optimize heap
allocation, and my further guess is that targeting critical sections in
particular was motivated by perf traces.

Besides the fact that perf traces are unreliable on the best days, and that
anything that spins or uses atomics like our CS implementation is going to be
overrepresented especially relative to the practical impact, the heap
implementation was optimized for cases that matter with the introduction of the
LFH, and crucially, the LFH is lock free.

As for threadpools, I suspect that Sebastian took note of them as the only other
user of locking in ntdll, and that the inline version was used there because
there was no real reason not to.

At the end of the day, these patches are incorrect, probably help nothing, and
even if we did find they helped something we'd want to do a lot more
investigation and probably solve the problem a different way. Remove them.
2024-04-28 18:46:00 -05:00
Alistair Leslie-Hughes
804145a02a Rebase against 25c58e6887647a223aa74f7e7d0402abb4a2a2b8. 2024-04-27 08:23:43 +10:00
Zebediah Figura
b682f11906 Rebase against c81c6fca50fcbd93fb54f4a3417630bb081578ff. 2024-04-25 16:57:40 -05:00
Zebediah Figura
c5ff81413f widl-SLTG_Typelib_Support: Remove patch 0019.
Folded into 62223ed995c897f4af759800fafad7c82e963258 upstream.
2024-04-23 18:55:33 -05:00
Alistair Leslie-Hughes
58ef511299 Updated vkd3d-latest patchset 2024-04-24 09:06:04 +10:00
Alistair Leslie-Hughes
a9bf69097e Rebase against d07019e4d174fd1b5d8b74ff2a36e900c07d96d7. 2024-04-24 07:57:47 +10:00
Alistair Leslie-Hughes
0c32c319e2 Updated vkd3d-latest patchset
Squash to latest.
2024-04-23 08:02:24 +10:00
Alistair Leslie-Hughes
c33355e3b7 Added patchset d3dx9_SetRawValue 2024-04-23 07:48:05 +10:00
Alistair Leslie-Hughes
054ecfb60a Updated kernel32-CopyFileEx patchset
https://bugs.winehq.org/show_bug.cgi?id=56573
2024-04-20 13:18:16 +10:00
Alistair Leslie-Hughes
85146f009d Updated vkd3d-latest patchset 2024-04-19 07:53:37 +10:00
Alistair Leslie-Hughes
8fc0710def Rebase against b87589757b82b36a8a58ca26f6dcabb550826ceb. 2024-04-19 07:51:57 +10:00
Alistair Leslie-Hughes
e84e5d31e9 Updated vkd3d-latest patchset 2024-04-17 09:21:44 +10:00
Zebediah Figura
1f578b2d53 Rebase against 04b829e81b3da1e98964dee4df0be4c876745f00. 2024-04-16 18:04:01 -05:00
Zebediah Figura
164a792cb2 Rebase against 00198c4084a61f65f18574d16833d945e50c0614. 2024-04-09 19:36:41 -05:00
Alistair Leslie-Hughes
6839d5b534 Updated vkd3d-latest patchset 2024-04-05 10:27:32 +11:00
Alistair Leslie-Hughes
9d59c4b21a Updated ntdll-WRITECOPY patchset
This extra patch allows Battle.net once again.
2024-04-05 10:27:32 +11:00
Alistair Leslie-Hughes
ac31c3f5c5 Updated vkd3d-latest patchset 2024-04-05 10:27:32 +11:00
Zebediah Figura
a1057e16a6 widl-SLTG_Typelib_Support: Delete upstreamed patches. 2024-04-04 13:21:17 -05:00
Alistair Leslie-Hughes
bcf38efc5b Rebase against a2c20d0e93290b3f998ad78c7aeaed8028aee2da. 2024-03-30 05:37:35 +11:00
Alistair Leslie-Hughes
320847e6f5 Updated vkd3d-latest patchset
Squashed to previous wine-staging release
Add latest changes.
2024-03-28 10:43:34 +11:00
Zebediah Figura
5d8ef8d881 Rebase against e01cb2b9156f808acc279a1b4753a48de0fda327. 2024-03-27 18:08:14 -05:00
Zebediah Figura
fdd0f9a334 mfplat-streaming-support: Remove patch 0055.
Addressed upstream by ea4b9bafb2f18ae0805c166e49bbb03641fc066c.
2024-03-27 13:53:01 -05:00
Alistair Leslie-Hughes
3ed5b91e33 Rebase against 4573910acc2783a3f678a428aa313377b09a04e8. 2024-03-27 11:44:08 +11:00
Alistair Leslie-Hughes
1219be1be0 Updated windows.networking.connectivity-new-dll patchset
Registry all the interfaces
2024-03-25 08:50:14 +11:00
Alistair Leslie-Hughes
9dc6767d18 Updated windows.networking.connectivity-new-dll patchset
Correctly append the .dll onto the filename.

Ref: https://bugs.winehq.org/show_bug.cgi?id=46534
2024-03-24 08:16:31 +11:00
Alistair Leslie-Hughes
126e7db0e0 Rebase against 7c5b9304a62b794ba07110e15eef6aec3a46ef0a. 2024-03-23 17:27:34 +11:00
Alistair Leslie-Hughes
5a1e1cb2e0 Updated vkd3d-latest patchset 2024-03-22 17:43:13 +11:00
Alistair Leslie-Hughes
9160b38ad3 Updated vkd3d-latest patchset 2024-03-22 17:43:13 +11:00
Zebediah Figura
e1966ac26e ntdll-Threading: Remove patch.
This has sat here for a long time pending careful review, because the logic is
not easy to follow. Fortunately I think I understand it now.

The described race is pretty much accurate. When a thread called
RtlExitUserThread() in 1.7.38, it first decremented nb_threads. If it was the
last thread, it would call exit() with the thread exit status; if not, it would
mask off signals [the order here is important] and then call pthread_exit() with
the status.

When a thread called RtlExitUserProcess(), this happened:

  * The caller does a terminate_process() request to the server, which sends
    SIGQUIT to every thread *but* the caller.

  * The SIGQUIT handler calls terminate_thread() with a zero status.
    terminate_thread() masks off signals, then decrements nb_threads. If the
    aborting thread is the last thread, it would call _exit(), otherwise, it'd
    again just pthread_exit().

  * Finally, the original thread would call exit(), with the intended status
    code.

[All of the intermediate function calls and helpers are skipped for brevity and
clarity].

The problem happens if both of these happen at the same time in different
threads. In this case the RtlExitUserThread() thread could decrement nb_threads,
then get interrupted by SIGQUIT and decrement nb_threads again. The end result
is that, instead of the RtlExitUserProcess() thread exiting with the intended
status, instead one of the SIGQUIT threads will be the "last" thread, and exit
with the status that SIGQUIT uses, which is zero as described.

A more serious race than this can be constructed if a thread is terminated by
another thread while already exiting. In this case nb_threads would be executed
twice, but the consequence would be that the *penultimate* thread to exit,
later, would end up killing the process, since it thinks it's the ultimate
thread.

2334f4e64582a518e4d5a7627472a0d817b147ef changed this. Now a thread calling
RtlExitUserThread() does not decrement nb_threads, but instead asks the server
if it's the last thread, and if so exit the whole process [at the time via
exit(); later via RtlExitUserProcess().] If not the last thread, the threads
mask off signals and then call pthread_exit() as before.

This avoided the race, but added a different one, essentially the opposite
problem: if two threads exit cleanly at the same time, neither one of them will
think they're the last thread, then both will exit without calling exit().
Apparently (from IRC logs) this would leave the thread in a weird state where
it'd still be running somehow, although it's not really clear how.

In any case, this problem was fixed by fac1aabbef3753afc53a4ea4f933b3d0516fd302
upstream. Now if two threads call NtTerminateThread() on themselves at the same
time, they really will exit cleanly and one will terminate the process.
Critically, this is now safe from the original race, because decrementing
nb_threads is done after masking off signals.
2024-03-22 00:12:27 -05:00
Zebediah Figura
a5a28003b4 Rebase against b053e924e8e13b3637f2a5a8ffe88d84c2d17075. 2024-03-21 19:29:09 -05:00
Zebediah Figura
621740283c Add documentation to a couple more patches.
Thanks Erich for elucidating these.
2024-03-21 19:15:54 -05:00
Zebediah Figura
761fef8d70 ws2_32-TransmitFile: Remove patches.
Erich can't remember the purpose of these, and suspects that it was incidental
to the other patches for TransmitFile (which used to be in the same Wine-Staging
patch set); those were for WineHQ bug 5048.

Moreover, these aren't correct, and a correct implementation would take a lot of
work, and wouldn't really be able to use anything from these patches as a
reference.

Hence, they're not providing any value to anyone, so remove them.
2024-03-21 19:03:46 -05:00
Zebediah Figura
63300ffaad Rebase against 86557b9e0ba8a783f1b0d0918b1ddec7e0a7749e. 2024-03-19 18:42:11 -05:00
Zebediah Figura
badfcbc451 Rebase against 9e639ff1f6c2b913518501b3f99ca085c4eed6c7. 2024-03-18 18:41:32 -05:00
Zebediah Figura
6a314e5994 Rebase against 65864f92f22f6d4668c1c06ed6ef3fe49bfdcfa7. 2024-03-14 17:50:23 -05:00
Alistair Leslie-Hughes
435e01412e Rebase against 174bb7776d3971e1ed91d57a47a7599b14c6eb45. 2024-03-13 15:56:53 +11:00
Alistair Leslie-Hughes
410820a918 Updated wined3d-bindless-texture definition file
List games that are reported to require/not working with this patchset
2024-03-11 07:48:12 +11:00
Alistair Leslie-Hughes
a604ca1f6d Updated wined3d-bindless-texture patchset
If ctx_data->glsl_program is null use the 0 location.

Fixes crash
https://bugs.winehq.org/show_bug.cgi?id=56370
2024-03-10 22:03:35 +11:00
Alistair Leslie-Hughes
50bad5b9af Updated user32-rawinput-mouse patchset
https://bugs.winehq.org/show_bug.cgi?id=56410
https://bugs.winehq.org/show_bug.cgi?id=56413
2024-03-10 07:38:53 +11:00
Alistair Leslie-Hughes
680ab2f323 Updated user32-msgbox-Support-WM_COPY-mesg patchset
Sync to latest PR
2024-03-09 11:53:27 +11:00
Alistair Leslie-Hughes
9a4fd0b9b0 Updated vkd3d-latest patchset 2024-03-09 11:53:27 +11:00
Alistair Leslie-Hughes
aa8b27c396 Updated user32-rawinput-mouse patchset
This update supersede user32-rawinput-mouse-experimental, removing.
2024-03-09 11:53:27 +11:00
Zebediah Figura
daf7cb4cb9 ntdll-WRITECOPY: Trigger write watches on the "info" pointer in SystemInterruptInformation.
This goes through a buffer in advapi32, so it's not obviously visible to the application; however, it means that a call to getrandom() will return EFAULT and won't actually fill the buffer.
2024-03-08 18:35:53 -06:00
Zebediah Figura
9e265ac738 Rebase against 1719aef8cbc99994ec93848ae6e9e29e5c4beb78. 2024-03-08 17:40:23 -06:00
Zebediah Figura
ec3dd19d45 ntdll-Junction_Points: Use debugstr_a() in two places.
From Aida Jonikienė.
2024-03-07 23:34:34 -06:00
Zebediah Figura
1ba0c55d0d kernel32-CopyFileEx: Rebase and reënable.
Rebased by Aida Jonikienė.
2024-03-07 23:29:47 -06:00
Zebediah Figura
7d2ceeab63 Rebase against 934cfb86b5e2b485b4b90e1eeac4021733559591. 2024-03-07 22:02:49 -06:00
Alistair Leslie-Hughes
445ab8ff01 Updated vkd3d-latest patchset 2024-03-07 10:54:09 +11:00
Zebediah Figura
64f5451ac7 Rebase against 83476e3d4ab0a0c7b1eca392e363591ba550440c. 2024-03-06 17:53:08 -06:00
Alistair Leslie-Hughes
0b083c6f73 Updated vkd3d-latest patchset
Squashed patchset.

Updated to vkd3d-1.11.
2024-03-06 16:04:05 +11:00
Alistair Leslie-Hughes
d999a6d250 Updated vkd3d-latest patchset 2024-03-06 16:04:05 +11:00
Zebediah Figura
6a02ba0240 mscoree-CorValidateImage: Remove patch set.
This was implemented upstream in e.g. 52e09e823e2a2b65f1f993145c0a65ab1d84713d and 926dd780697852b375ec0a193c762e7723a3f5e6, albeit in ntdll instead of mscoree.
2024-03-05 22:45:33 -06:00
Zebediah Figura
ff5fc9c0fa Rebase against c1b8db0c28ac5b7a14567bfb6df2c0af364de6a2. 2024-03-04 16:41:59 -06:00
Zebediah Figura
21b92f9611 server-File_Permissions: Remove patch 0001.
This patch concerns the case where we successfully create a read-only directory
with FILE_DELETE_ON_CLOSE. Currently we return STATUS_CANNOT_DELETE (having
cleared O_CREAT). This patch would change that to return success.

However, tests show that this is incorrect. Actually FILE_DELETE_ON_CLOSE should
always fail on a read-only file, including when that file is created by the same
call.
2024-03-01 23:50:11 -06:00
Zebediah Figura
3d69e00892 server-File_Permissions: Remove patches for Cygwin unlink().
These were committed without any explanation, but they do seem to fix Cygwin
unlink(), and it's been observed that many patches in Wine-Staging, whether
labeled or not, were specifically for Cygwin.

The relevant functionality was fixed a different way upstream, namely:

91e442b060
2024-03-01 23:50:11 -06:00
Zebediah Figura
6d50e5c435 wine.inf-Dummy_CA_Certificate: Add link to bug report. 2024-03-01 19:37:39 -06:00