Fixed the following code:
```dos
for /F "tokens=1,* delims= " %%a in (" -sdkver=10.0.22000.0 -type=MD ") do (
for /F "tokens=1,2 delims==" %%1 in ("%%a") do (
echo param: '%%1'
echo value: '%%2'
)
)
```
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3616#note_43468
This comes from behavioral study of Windows, which doesn't seem to check if the
lock is actually exclusively held, and just simply decrement the value stored
in the lock.
This fixes a dead lock which prevents WeCom from starting up.
--
v15: ntdll: An implementation of SRWLOCK that closer matches Windows'.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3504
This comes from behavioral study of Windows, which doesn't seem to check if the
lock is actually exclusively held, and just simply decrement the value stored
in the lock.
This fixes a dead lock which prevents WeCom from starting up.
--
v14: ntdll: An implementation of SRWLOCK that closer matches Windows'.
include: add atomic read/write of pointers
https://gitlab.winehq.org/wine/wine/-/merge_requests/3504
This comes from behavioral study of Windows, which doesn't seem to check if the
lock is actually exclusively held, and just simply decrement the value stored
in the lock.
This fixes a dead lock which prevents WeCom from starting up.
--
v13: ntdll: An implementation of SRWLOCK that closer matches Windows'.
include: add atomic read/write of pointers
https://gitlab.winehq.org/wine/wine/-/merge_requests/3504
On Fri Aug 25 12:44:46 2023 +0000, Huw Davies wrote:
> Once this is in, we can simplify `load_driver_devices()` by combining
> the two loops and eliminating the need to allocate `ids[]` and `guids[]`.
!3658
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3561#note_43415