Commit graph

168406 commits

Author SHA1 Message Date
Rémi Bernon bfb5064f50 winevulkan: Search for debug report callback from the start of the chain. 2023-11-30 23:12:54 +01:00
Rémi Bernon 29e5b682c8 winevulkan: Use a local instance variable instead of phys_dev->instance. 2023-11-30 23:12:54 +01:00
Piotr Caban 4446db72eb gdi32: Add ETO_PDY flag support in EMFDC_ExtTextOut. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 0690851c9b ntdll: Add a machine frame to the KiUserCallbackDispatcher stack on x86-64. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 8b24139fa7 ntdll: Add a machine frame to the KiUserApcDispatcher stack on x86-64. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 061c612b5e ntdll: Add a machine frame to the KiUserExceptionDispatcher stack on x86-64. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 8164c7087f ntdll/tests: Simplify the KiUserExceptionDispatcher tests a little. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 93a3a6c03f ntdll: Allow unwind rules to override the default stack pointer assignment. 2023-11-30 23:12:54 +01:00
Alexandre Julliard 334f54c255 ntdll: Call Wow64PrepareForException directly from KiUserExceptionDispatcher.
This requires moving the stack switch to Wow64PrepareForException.

Based on a patch by Paul Gofman.
2023-11-30 23:12:43 +01:00
Piotr Caban ae32b2f452 msvcrt: Initialize writable environment block in env_set. 2023-11-30 17:53:01 +01:00
Piotr Caban 4843daaee1 wineps.drv: Fix EMR_SAVEDC record playback.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55927
2023-11-30 11:08:47 +01:00
Piotr Caban ccbf1d25b6 wineps.drv: Return error when visible rectangle is empty in get_vis_rectangles.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55950
2023-11-30 11:08:47 +01:00
Nikolay Sivov 95c87562f8 gdi32/emf: Pad EMREXTESCAPE record data. 2023-11-30 10:23:26 +01:00
Nikolay Sivov 8de0e3914d wineps: Use public definition for EMREXTESCAPE record. 2023-11-30 10:23:25 +01:00
Nikolay Sivov ba454b239f gdi32/emf: Use public definition for EMREXTESCAPE record. 2023-11-30 10:23:24 +01:00
Nikolay Sivov 7c479e797f gdi32/emf: Align and pad bitmap data in EMRSETDIBITSTODEVICE records. 2023-11-30 10:23:23 +01:00
Nikolay Sivov e63b00b1ad gdi32/emf: Align and pad bitmap data in EMRSTRETCHDIBITS records. 2023-11-30 10:23:22 +01:00
Nikolay Sivov 169a23a140 gdi32/emf: Add description field padding. 2023-11-30 10:23:20 +01:00
Nikolay Sivov 4fac4588bb gdi32/emf: Check for allocation failure in GdiComment(). 2023-11-30 10:23:19 +01:00
Nikolay Sivov 47a939e2ad gdi32/emf: Use padding helper in GdiComment(). 2023-11-30 10:23:18 +01:00
Nikolay Sivov 30be905972 gdi32/emf: Add a helper to pad variable length record data. 2023-11-30 10:23:16 +01:00
Aida Jonikienė 9cfb95964b wined3d: Add extra debug info to shader_set_limits().
This should help understand some virgl/ChromeOS-specific WineD3D
behavior better.
2023-11-30 10:22:33 +01:00
Zebediah Figura 62a979347a ntdll: Allow specifying per-process channels.
Based on a patch by Michael Müller.
2023-11-30 10:12:10 +01:00
Zebediah Figura 8c985449c3 winmm: Reimplement joystick axis mapping.
This should more closely match the algorithm used by native, discovered through
extensive manual testing.

This does not include any automated tests, both because I could not get winmm to
recognize a second plugged joystick, and (as I eventually discovered while
testing) the number of tests that would be necessary to conclusively prove this
algorithm turned out to be impractical.
2023-11-30 10:08:09 +01:00
Rémi Bernon 9d9d335716 dinput/tests: Use exotic axes ordering for winmm tests. 2023-11-30 10:08:08 +01:00
Alex Henrie 4c4eb1129c uxtheme: Use CRT allocation functions. 2023-11-30 10:02:42 +01:00
Alex Henrie 9947637469 uxtheme: Annotate UXINI_LoadINI with __WINE_DEALLOC. 2023-11-30 10:02:41 +01:00
Alex Henrie fcddf19498 cabarc: Use CRT allocation functions. 2023-11-29 23:16:39 +01:00
Alexandre Julliard 240e4387e8 include: Make strict prototypes the default. 2023-11-29 23:16:39 +01:00
Alexandre Julliard c14de4c85e include: Remove DECLSPEC_HIDDEN definition. 2023-11-29 23:16:39 +01:00
Alexandre Julliard bfeba8d2d1 winex11.drv: Remove DECLSPEC_HIDDEN usage. 2023-11-29 23:16:39 +01:00
Alexandre Julliard d18e32c869 winewayland.drv: Remove DECLSPEC_HIDDEN usage. 2023-11-29 23:16:39 +01:00
Alexandre Julliard fcd587a80e winemac.drv: Remove DECLSPEC_HIDDEN usage. 2023-11-29 23:16:39 +01:00
Alexandre Julliard 35b3ff8ad6 wineandroid.drv: Remove DECLSPEC_HIDDEN usage. 2023-11-29 23:16:39 +01:00
Alexandre Julliard ef9debff60 wineboot: Remove a noisy FIXME. 2023-11-29 23:16:39 +01:00
Paul Gofman 4c9b39964c ntdll: Implement NtQueryInformationThread(ThreadIsTerminated). 2023-11-29 20:46:55 +01:00
Brendan McGrath 72590048b2 d2d1: Acquire lock before attempt to draw to device context.
Ensures the Direct 2D lock is held before attempting to access Direct 2D
exclusive resources.

This fixes periodic crashes in PowerPoint 365
2023-11-29 20:45:23 +01:00
Brendan McGrath e6954d793b d2d1: Add test for singlethreaded draw.
Tests that Direct2D can access D2D exclusive resources whilst the
Direct 2D lock is held if the factory type is single threaded
2023-11-29 20:45:21 +01:00
Brendan McGrath de9eeba7bd d2d1: Add test for multithreaded draw.
Tests that Direct2D can not access D2D exclusive resources whilst the
Direct 2D lock is held
2023-11-29 20:45:20 +01:00
Alexandros Frantzis 7fd9c158d0 winewayland.drv: Implement vkGetPhysicalDevicePresentRectanglesKHR.
This is a simple passthrough implementation to the native Vulkan driver.
2023-11-29 20:45:00 +01:00
Alexandros Frantzis ef35ddeeb8 winewayland.drv: Implement vkGetDeviceGroupSurfacePresentModesKHR.
This is a simple passthrough implementation to the native Vulkan driver,
with the addition of a VkSurfaceKHR invalidation check.
2023-11-29 20:44:58 +01:00
Alexandros Frantzis 34f392bcfe winewayland.drv: Apply client subsurface position on creation.
We cannot depend on the main surface being committed to after
the client subsurface is created, so perform a commit to ensure
the subsurface position takes effect on creation.
2023-11-29 20:44:57 +01:00
Alexandros Frantzis dc35c8a7b9 winewayland.drv: Ensure Vulkan parent surface is mapped with proper size.
The client area subsurface (the target of Vulkan rendering) is not going
to be presented properly (or at all) by the compositor if its parent
surface is not mapped or doesn't have the right size, even though the
window may be visible from Wine's perspective. To avoid this issue,
ensure that the parent surface has up-to-date contents in terms of size,
in case these haven't been provided yet, or will never be provided
(e.g., when the Vulkan rendering is fullscreen).
2023-11-29 20:44:56 +01:00
Alexandros Frantzis d0fb8f637c winewayland.drv: Detect and report vkQueuePresentKHR errors.
If the VkSwapchainKHR extent does not match the target window client
area, report VK_ERROR_OUT_OF_DATE_KHR, to notify the app that it should
recreate the swapchain.

We also report VK_ERROR_OUT_OF_DATE_KHR if the HWND is no longer valid,
to match win32 behavior (e.g., nvidia). The application will eventually
get VK_ERROR_SURFACE_LOST_KHR during the swapchain recreation process.
2023-11-29 20:44:54 +01:00
Alexandros Frantzis 8a4e2546f5 winewayland.drv: Implement vkQueuePresentKHR. 2023-11-29 20:44:52 +01:00
Fabian Maurer dbf303b00b widl: In type_has_full_pointer recurse for pointer types as well. 2023-11-29 20:44:44 +01:00
Fabian Maurer f59807c587 widl: Prevent infinite loop when structure contains array of itself.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55115
2023-11-29 20:44:42 +01:00
Louis Lenders e83ca9b772 shell32: Add stub for SHSetTemporaryPropertyForItem.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55536
2023-11-29 20:41:38 +01:00
Piotr Caban 6a78f71f3c msvcrt: Fix string size passed to CompareString in _mbsnbcoll_l.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55959
2023-11-29 20:41:23 +01:00
Piotr Caban 244b63566a winedump: Fix EMR_EXTTEXTOUTW record dumping when ETO_PDY flag is specified. 2023-11-29 20:40:31 +01:00