Commit graph

165089 commits

Author SHA1 Message Date
Paul Gofman 073c23940b crypt32/tests: Test ECC message signature verification. 2023-06-30 17:34:49 +02:00
Paul Gofman e6f7e3a0cb crypt32/tests: Add test for CryptVerifyCertificateSignature() with ECC public key. 2023-06-30 17:34:49 +02:00
Davide Beatrici fdab5056a9 winepulse: Refactor get_device_name_from_guid() to allocate memory dynamically. 2023-06-30 17:33:27 +02:00
Davide Beatrici 8876a7ac04 wineoss: Refactor get_device_name_from_guid() to allocate memory dynamically. 2023-06-30 17:33:27 +02:00
Davide Beatrici ec3929f936 winecoreaudio: Refactor get_device_name_from_guid() to allocate memory dynamically. 2023-06-30 17:33:27 +02:00
Davide Beatrici 5d90ada506 winealsa: Refactor get_device_name_from_guid() to allocate memory dynamically. 2023-06-30 17:33:27 +02:00
Davide Beatrici 32775c875f winepulse: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. 2023-06-30 17:33:27 +02:00
Davide Beatrici 63874db740 wineoss: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. 2023-06-30 17:33:27 +02:00
Davide Beatrici 357350e74f winecoreaudio: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. 2023-06-30 17:33:27 +02:00
Davide Beatrici 2ea43e6f59 winepulse: Move AudioClient's vtable into mmdevapi. 2023-06-30 17:33:25 +02:00
Alistair Leslie-Hughes 3d28f9d362 dmloader: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes cc59b78316 dmime: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes 860c575e7a dswave: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes 90244981e7 dmscript: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes 82c895fec3 dmusic: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes abd3a04221 dmcompos: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes 63d3eb77e0 dmband: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes 5a18153fcd dmstyle: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Alistair Leslie-Hughes b1a69eab12 dmsynth: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Rémi Bernon a0cd5e053b win32u: Update the display cache when virtual desktop mode changes.
We update the cache in NtUserCreateDesktopEx, as it may change existing
thread desktop flags, but we need to do it as well when a new desktop is
created while still detached, then attached to a thread through
NtUserSetThreadDesktop.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55146
2023-06-29 21:28:38 +02:00
Evan Tang 05b2175595 winemac.drv: Fix compile on macOS 10.14.
Fixes: 731f06d97f
2023-06-29 21:06:49 +02:00
Alexandre Julliard 9bdd08579e ntdll/tests: Add some tests for NtQueryVirtualMemory(MemoryImageInformation). 2023-06-29 21:06:49 +02:00
Alex Henrie 3d383c468b regedit: Fix memory leak on error path in RenameKey (scan-build).
parentPath is allocated before parentKey.
2023-06-29 13:57:39 +02:00
Georg Lehmann 267ee07ded winevulkan: Keep deferred operation function params alive.
The Vulkan spec says:
Parameters to the command requesting a deferred operation may be accessed by the implementation at any time until the deferred operation enters the
complete state. Pointer parameters must not be modified (e.g. reallocated/freed).

This fixes a regression in Doom Eternal with ray tracing enabled with drivers
that actually support deferred operations (e.g. nvidia, amdvlk).
2023-06-29 13:57:04 +02:00
Alexandros Frantzis fc8570a1a6 winewayland.drv: Do not commit buffers to unconfigured surfaces.
The xdg-shell protocol disallows buffer commits to a wl_surface with an
xdg_surface based role before we ack the first configure event. Failing
to adhere to this requirement will get our client disconnected by the
compositor with a protocol error.
2023-06-29 13:57:04 +02:00
Alexandros Frantzis 6b0a84c8d9 winewayland.drv: Implement a simple window_surface flush.
Flush a window_surface to a Wayland surface by creating a wl_shm buffer
matching the window size, copying the whole window contents to that
buffer and attaching it to the corresponding Wayland surface.
2023-06-29 13:57:04 +02:00
Alexandros Frantzis d53cb7206d winewayland.drv: Introduce window_surface for Wayland. 2023-06-29 13:57:04 +02:00
Alexandros Frantzis a7ec328fa8 winewayland.drv: Ensure Wayland surface handlers don't access invalid data.
In our setup with a dedicated event dispatch thread, libwayland ensures
that object proxies associated with an event handler remain valid (or
NULL) while the handler is executing. However, no such guarantees are
given for the proxy user data. It is thus possible for the user data to
become invalid (e.g., its memory freed from a different thread) right
after the event handler is entered.

This is an issue for wayland_surface associated proxies since they may
receive unsolicited events from the compositor at any time (e.g.,
xdg_surface.configure), even while we are destroying the
wayland_surface.

To avoid the problem, we introduce a lock that protects access
to xdg_surface user data and ensures that the associated wayland_surface
remains valid for the duration of the handler.

Co-authored-by: Rémi Bernon <rbernon@codeweavers.com>
2023-06-29 13:57:04 +02:00
Alexandros Frantzis 285c47d15d winewayland.drv: Basic Wayland toplevel surface support.
Use the xdg-shell Wayland protocol to create Wayland xdg_surface
xdg_toplevel surfaces for non-child windows.
2023-06-29 13:57:04 +02:00
Alexandros Frantzis 0066379200 winewayland.drv: Introduce per-window driver data.
Create and manage an internal driver data structure for each non-desktop,
non-message window.
2023-06-29 13:57:04 +02:00
Rémi Bernon 6942d7a035 winegstreamer: Move stream length query to BeginCreateObject. 2023-06-29 12:04:46 +02:00
Rémi Bernon 5b1a2014a1 winegstreamer: Move byte stream caps checks to BeginCreateObject. 2023-06-29 12:04:46 +02:00
Rémi Bernon 9258d7abe8 winegstreamer: Pass the object context to media_source_create. 2023-06-29 12:04:46 +02:00
Rémi Bernon cea4c8469d winegstreamer: Use a helper to create object_context. 2023-06-29 12:04:46 +02:00
Rémi Bernon 70daeb5280 winegstreamer: Move struct object_context around. 2023-06-29 12:04:46 +02:00
Zebediah Figura 221f110bbd wined3d: Remove no longer used arguments from wined3d_texture_update_desc().
Limit it to updating user memory and pitch.
2023-06-29 12:04:37 +02:00
Zebediah Figura ebaa0a9426 wined3d: Recreate swapchain textures in wined3d_swapchain_resize_buffers().
Instead of using wined3d_texture_update_desc(). This is safe, because:

* ddraw never exposes wined3d textures directly, and always retrieves them
  directly from wined3d when rendering.

* d3d8 and d3d9 (non-extended) will only resize buffers during a reset, and
  resetting is forbidden if the application holds any references to the
  backbuffers. RTVs are also replaced during a reset, so there is no concern
  about retrieving the old RTVs from the device state.

* d3d9ex allows resetting while holding references to the backbuffers, but tests
  (fixed by this patch) show that the backbuffers should in fact be recreated.

* dxgi forbids holding references to back buffers during ResizeBuffers(),
  including indirect references via command lists or device contexts.
2023-06-29 12:04:35 +02:00
Zebediah Figura 037be380b2 wined3d: Factor out a swapchain_create_texture() helper. 2023-06-29 12:04:35 +02:00
Zebediah Figura 0dc7de15e0 dxgi: Do not create a d3d11 swapchain object for the implicit swapchain.
This swapchain is never actually exposed, and effectively only exists due to
implementation constraints. When it was introduced, it was necessary or simplest
to create a dxgi swapchain object, but currently that's no longer necessary, and
avoiding that allows some code to be simplified.
2023-06-29 12:04:33 +02:00
Rémi Bernon 467201a85b explorer: Fix command-line parameter parsing.
Fixes: 5b11157ecf
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55141
2023-06-29 12:04:07 +02:00
Fabian Maurer fca833678f windowscodecs: Fake success in SetMetadataByName.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55101
2023-06-28 22:50:10 +02:00
Evan Tang 731f06d97f winemac.drv: Give Apple GPUs device IDs. 2023-06-28 21:01:19 +02:00
Alex Henrie aec014fe8f winegstreamer: Fix double free on error path in media_source_constructor (scan-build). 2023-06-28 21:01:08 +02:00
Alistair Leslie-Hughes 654b970be1 dsdmo: Add Flanger effect stub. 2023-06-28 18:58:58 +02:00
Alistair Leslie-Hughes e2258279e0 dsdmo: Add Chorus effect stub. 2023-06-28 18:58:57 +02:00
Rémi Bernon 7255f63a65 explorer: Set virtual desktop primary adapter display settings.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55146
2023-06-28 18:58:39 +02:00
Rémi Bernon 99ef2dc4e1 explorer: Rename initialize_display_settings local variable.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55146
2023-06-28 18:58:39 +02:00
Rémi Bernon 0e5b847f85 explorer: Use debugstr_devmodew helper to trace display mode.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55146
2023-06-28 18:58:39 +02:00
Alistair Leslie-Hughes 8073c6be3f inetcomm: Remove DECLSPEC_HIDDEN usage. 2023-06-28 18:58:04 +02:00
Alistair Leslie-Hughes 19659409ac sapi: Remove DECLSPEC_HIDDEN usage. 2023-06-28 18:58:03 +02:00