Commit graph

158719 commits

Author SHA1 Message Date
Alexandre Julliard f937ad5a6d tiff: Import upstream release 4.4.0. 2022-08-03 17:37:00 +02:00
Alexandre Julliard be227979b0 mpg123: Import upstream release 1.30.2. 2022-08-03 17:27:11 +02:00
Alexandre Julliard ce0a985f1b faudio: Import upstream release 22.08. 2022-08-03 17:13:51 +02:00
Nikolay Sivov 2dd903885b dwrite: Fix stretch value validation in CreateTextFormat().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:09:02 +02:00
Santino Mazza 27cdb54bd8 ncrypt: Initial implementation for NCryptEncrypt.
Signed-off-by: Santino Mazza <mazzasantino1206@gmail.com>
2022-08-03 15:09:02 +02:00
Santino Mazza dd61c5638a bcrypt: Initial RSA encryption implementation.
Signed-off-by: Santino Mazza <mazzasantino1206@gmail.com>
2022-08-03 15:09:02 +02:00
Santino Mazza 4a395899ea bcrypt/tests: Test for BCryptEncrypt with RSA keys.
Signed-off-by: Santino Mazza <mazzasantino1206@gmail.com>
2022-08-03 15:09:02 +02:00
Santino Mazza 68f6d6ba9e ncrypt/tests: Test for NCryptEncrypt with RSA and PKCS1 padding.
Signed-off-by: Santino Mazza <mazzasantino1206@gmail.com>
2022-08-03 15:09:02 +02:00
Shaun Ren ac90bc1e16 webservices: Support faults in error.
Signed-off-by: Shaun Ren <sren@codeweavers.com>
2022-08-03 15:09:02 +02:00
Shaun Ren da77cc8cfd webservices: Implement error strings.
Signed-off-by: Shaun Ren <sren@codeweavers.com>
2022-08-03 15:08:00 +02:00
Nikolay Sivov 3d54031236 d2d1/commandlist: Update text rendering params on DrawGlyphRun().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:49 +02:00
Nikolay Sivov 9a87e7dedd d2d1: Add a helper for DrawGlyphRun().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:49 +02:00
Nikolay Sivov 6722d3ad7f d2d1/commandlist: Implement FillMesh() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:47 +02:00
Nikolay Sivov da9eabd64d d2d1/commandlist: Implement DrawBitmap() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:46 +02:00
Nikolay Sivov 40e353a6a6 d2d1/commandlist: Implement DrawGlyphRun() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:44 +02:00
Nikolay Sivov c9d36114e6 d2d1/commandlist: Handle recording in RestoreDrawingState().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:43 +02:00
Nikolay Sivov 3aeff98f60 d2d1/commandlist: Implement SetTextRenderingParams() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:41 +02:00
Nikolay Sivov 0e9f8babaf d2d1/commandlist: Implement FillRectangle() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:40 +02:00
Nikolay Sivov 7441cd0c11 d2d1/commandlist: Implement FillGeometry() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:38 +02:00
Nikolay Sivov d1dafde4ed d2d1/commandlist: Implement DrawRectangle() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:37 +02:00
Nikolay Sivov 3ec96c9b80 d2d1/commandlist: Implement DrawGeometry() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:35 +02:00
Nikolay Sivov ffe196abd9 d2d1/commandlist: Implement DrawLine() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:33 +02:00
Nikolay Sivov ccfdeec3a1 d2d1/commandlist: Implement Clear() command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:32 +02:00
Nikolay Sivov eba21e7502 d2d1/commandlist: Implement clipping commands recording.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:30 +02:00
Nikolay Sivov 94c51a83f2 d2d1/commandlist: Implement basic state recording commands.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:28 +02:00
Nikolay Sivov f01852756d include: Fix ID2D1CommandSink definition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:27 +02:00
Nikolay Sivov fdd6a07a0b d2d1: Allow setting command list as a target.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:27 +02:00
Nikolay Sivov 753ae1d0a5 d2d1: Add a command list object stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:27 +02:00
Nikolay Sivov 56b50f158d d2d1/tests: Use test context for command list test.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-08-03 15:07:24 +02:00
Shaun Ren a8d7d1e06f webservices: Write the correct headers when a request message is addressed.
Signed-off-by: Shaun Ren <sren@codeweavers.com>
2022-08-02 21:50:04 +02:00
Shaun Ren 86895f07a0 webservices: Handle in/out parameters properly in WsCall.
Signed-off-by: Shaun Ren <sren@codeweavers.com>
2022-08-02 21:49:59 +02:00
Zebediah Figura 5b1bb09bbd include: Print "test succeeded" messages in colour. 2022-08-02 21:49:55 +02:00
Zebediah Figura 2bf75f9106 include: Print "test skipped" messages in colour. 2022-08-02 21:49:55 +02:00
Zebediah Figura 90cdc49d26 include: Print "test marked todo" messages in colour. 2022-08-02 21:49:54 +02:00
Zebediah Figura 05386fd0ac include: Print "succeeded inside todo block" messages in colour. 2022-08-02 21:49:54 +02:00
Rafał Harabień 549969a6fb include: Allow printing test failure messages in bright red.
Colours are disabled by default, and can be enabled using WINETEST_COLOR=1.
2022-08-02 21:49:54 +02:00
Dmitry Timoshkov 9d9b564e4b ntdll/tests: Add a bunch of tests for creating kernel objects with the names containing '\0'.
As the tests show after creating a kernel object with name "wine_test\0"
it's possible to only open it as "wine_test\0", an attempt opening it
as "wine_test" fails with STATUS_OBJECT_NAME_NOT_FOUND, and vice versa.
Also the tests show that "wine\0test" is a valid kernel object name.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-08-02 21:49:54 +02:00
Dmitry Timoshkov bfec2a6637 ntdll/tests: Fix compilation with PSDK.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-08-02 21:49:54 +02:00
Zebediah Figura a43da37637 wined3d: Build the device list only once in wined3d_output_find_closest_matching_mode(). 2022-08-02 21:49:54 +02:00
Zebediah Figura a601930a91 dxgi: Build the device list only once in dxgi_output_get_display_mode_list(). 2022-08-02 21:49:54 +02:00
Zebediah Figura b42aa9b87b d3d8: Cache the output mode list. 2022-08-02 21:49:54 +02:00
Zebediah Figura 0ee74e9f81 d3d9: Cache the output mode list.
Garou: Mark of the Wolves calls IDirect3D9::GetAdapterModeCount() on every
frame. This results in calling EnumDisplaySettingsExW() once per available mode,
which is a very slow operation, both on Windows and Wine.

Manual testing shows that Windows caches the mode list (as well as the adapter
list, which is already cached in Wine) in Direct3D 9 and lower. Calls to
GetAdapterModeCount() and EnumAdapterDisplayModes() are fast, and they also do
not change if monitors are added or removed.

DXGI behaves differently, however. The list of outputs attached to an adapter is
cached—that is, calls to IDXGIAdapter::EnumOutputs() are fast, and return stale
data. However, at least some other calls are slow and do not seem to be cached,
including IDXGIOutput::GetDisplayModeList() and IDXGIOutput::GetDesc().

ddraw is also slow and uncached. Since all testing was done on Windows 10 (for
lack of available older hardware to test with) it is not unlikely that ddraw was
reimplemented over dxgi on newer Windows, and that older Windows versions would
be fast and cached, but this is speculation. In any case I have not included
patches to cache ddraw modes.

Tests were done on Windows 10 21H2, both on real hardware with NVidia drivers
and on software drivers via qemu/KVM. In the latter case only speed could be
tested, but this was consistent with the results from the NVidia machine.
2022-08-02 21:49:54 +02:00
Zebediah Figura 95352c096f wined3d: Build a list of wined3d_display_mode structures in wined3d_output_get_mode[_count](). 2022-08-02 21:49:54 +02:00
Zebediah Figura 9f79a79e95 wined3d: Factor out mode_matches_filter(). 2022-08-02 21:49:54 +02:00
Brendan Shanks eb64d4a9ad ntdll: Use correct mcontext struct on macOS under Wow64. 2022-08-02 12:02:36 +02:00
Stefan Dösinger 7fa1259823 ddraw/tests: Add some video memory accounting tests. 2022-08-02 11:59:03 +02:00
Stefan Dösinger 8bddb9808e ddraw: Don't account video memory for sysmem surfaces' draw textures.
Star Trek Starfleet Academy does not like it when available video memory
goes down after creating a system memory resource. It destroys all its
textures and recreates them, and in some sitations forgets to recreate
one or another texture, resulting in rendering bugs.

I suspect the game is trying to detect focus loss by monitoring for
unexpected video memory changes.
2022-08-02 11:58:59 +02:00
Rémi Bernon d7457fd32e winex11.drv: Constify set_current_mode DEVMODEW parameter. 2022-08-02 11:56:37 +02:00
Rémi Bernon 395273d6e1 winex11.drv: Iterate display settings using dmDriverExtra. 2022-08-02 11:56:36 +02:00
Rémi Bernon 581b30d318 winex11.drv: Use DEVMODEW instead of x11drv_display_setting.
Keeping the id in the dmDriverExtra bytes.
2022-08-02 11:56:35 +02:00