Commit graph

170841 commits

Author SHA1 Message Date
Elizabeth Figura b01b5c70ea d3d9/tests: Clarify and expand point size tests. 2024-05-12 16:54:13 +02:00
Georg Lehmann 6d896d9be0 winevulkan: Update to VK spec version 1.3.285. 2024-05-12 16:33:19 +02:00
Esme Povirk c6abeee9f0 gdiplus: Fix background key. 2024-05-12 16:33:14 +02:00
Esme Povirk 7b300bae8a gdiplus: Accept an HDC in get_gdi_transform. 2024-05-12 16:33:14 +02:00
Esme Povirk b95a40a28f gdiplus: Do not use hdc directly in get_graphics_bounds. 2024-05-12 16:33:14 +02:00
Esme Povirk 8cc552a123 gdiplus: Bracket HDC use in trace_path. 2024-05-12 16:33:14 +02:00
Esme Povirk 96a65cbfd1 gdiplus: Bracket HDC use in draw_poly. 2024-05-12 16:33:14 +02:00
Yuxuan Shui cf24381899 rtworkq: Release cancelled work items.
Usually the threadpool holds a reference to the `work_item`, which is released when the `work_item`'s
callback is invoked. On the other hand, `queue_cancel_item` closes the threadpool object without
releasing the `work_item`. So if the callbacks don't get a chance to run - which is not guaranteed -
the `work_item` will be leaked.

The fix is not as simple as adding a `IUnknown_Release` to `queue_cancel_item`, because the
`work_item`'s callback can still be called after CloseThreadpoolTimer/Wait has returned. In fact its
callback might currently be running. In which case the callback will access freed memory if
`queue_cancel_item` frees the `work_item`.

We have to stop any further callbacks to be queued, wait for any currently running callbacks to
finish, then finally we can release the `work_item` if it hasn't already been freed during the wait.
2024-05-12 16:32:53 +02:00
Yuxuan Shui a40c1bc01e mfplat/tests: Validate MFCancelWorkItem releases the callback. 2024-05-12 16:32:53 +02:00
Yuxuan Shui aa963129d9 rtworkq: Avoid use-after-free.
queue_release_pending_item releases the work_item reference but later
accesses `item->queue`, which is a potential use-after-free.
2024-05-12 16:32:49 +02:00
Rémi Bernon bf64ae2627 mfplat: Implement MFCreateVideoMediaType. 2024-05-12 16:32:25 +02:00
Rémi Bernon 9fac589765 mfplat: Implement MFInitMediaTypeFromMPEG2VideoInfo. 2024-05-12 16:32:24 +02:00
Rémi Bernon 8c77a1a099 mfplat: Implement MFInitMediaTypeFromMPEG1VideoInfo. 2024-05-12 16:32:23 +02:00
Rémi Bernon ec0455b97a mfplat: Implement FORMAT_MPEG2Video for MFInitAMMediaTypeFromMFMediaType. 2024-05-12 16:32:23 +02:00
Rémi Bernon dce8d8b552 mfplat: Implement FORMAT_MPEGVideo for MFInitAMMediaTypeFromMFMediaType. 2024-05-12 16:32:23 +02:00
Rémi Bernon 0b5c04c517 mfplat: Set AM_MEDIA_TYPE bTemporalCompression and bFixedSizeSamples. 2024-05-12 16:32:23 +02:00
Rémi Bernon 772ad6e8a9 mfplat: Factor AM_MEDIA_TYPE video format allocation. 2024-05-12 16:32:23 +02:00
Rémi Bernon 00758a2e20 mfplat: Use media_type_get_uint32 in more places. 2024-05-12 16:32:23 +02:00
Rémi Bernon 704c510045 mfplat: Introduce a new init_video_info_header helper. 2024-05-12 16:32:23 +02:00
Rémi Bernon 3404de3075 mfplat: Use IMFMediaType_GetBlobSize instead of IMFMediaType_GetBlob. 2024-05-12 16:32:23 +02:00
Rémi Bernon 551d047ae4 mfplat: Fix MFCreateMFVideoFormatFromMFMediaType videoInfo.VideoFlags masks. 2024-05-12 16:32:23 +02:00
Paul Gofman 0884b503c9 win32u: Update last message time in NtUserGetRawInputBuffer(). 2024-05-12 16:31:50 +02:00
Brendan McGrath f6791f59c3 winex11.drv: Increment mode_idx in {xrandr10,xf86vm}_get_modes.
This fixes a regression introduced in f74900ad1a.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56655
2024-05-12 16:27:10 +02:00
Daniel Lehman 243a014123 msvcrt/tests: Add tests for _wcsicmp_l. 2024-05-12 16:26:51 +02:00
Nikolay Sivov a1dadf3683 d2d1/effect: Fix GetImageLocalBounds() prototype.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-12 16:26:17 +02:00
Nikolay Sivov 3e3e347ed0 d2d1/tests: Add a test for effect output image interface query.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-12 16:26:17 +02:00
Alexandros Frantzis 51b13e776e win32u: Enable dibdrv wglDescribePixelFormat through p_get_pixel_formats. 2024-05-12 16:26:09 +02:00
Elizabeth Figura ba1ddc62ef wined3d: Remove the no longer used Y correction variable. 2024-05-12 16:25:55 +02:00
Elizabeth Figura d1ce00e429 wined3d: Remove the no longer used render_offscreen field from struct ds_compile_args. 2024-05-12 16:25:55 +02:00
Elizabeth Figura ba2f78922f wined3d: Remove no longer used support for drawing to an onscreen render target.
Now that we require ORM_FBO, wined3d backbuffers are always offscreen (and we
never draw directly to the frontbuffer, which is the only truly onscreen
surface).

We could reintroduce support for drawing directly to the backbuffer, and this
would presumably improve performance by avoiding a blit from the wined3d
backbuffer to the real GL backbuffer.

However, this is not always possible or performant due to mismatching
dimensions, or the need to use a depth buffer which is also used with offscreen
RTVs, and for d3d1-9 it may not be possible at all due to issues related to
preserving invariance between flipped and non-flipped geometry.

It *may* be possible to identify situations where we can render directly to the
backbuffer for d3d10+, but at that point we can rely on the Vulkan backend to
work, and given other unfixable performance problems with the GL backend (most
notably the inability to properly stream index buffer data) it does not really
make much sense to go out of our way to perform such a minor optimization there.
2024-05-12 16:25:54 +02:00
Elizabeth Figura 4ad68d4e04 wined3d: Use wined3d_resource_is_offscreen() directly in ffp_blitter_clear_rendertargets().
This is the only user of context->render_offscreen that is not related to draw
state.

The use here is synonymous with using wined3d_resource_is_offscreen() on the
actual colour target.
2024-05-12 16:25:51 +02:00
Elizabeth Figura d2f13e5d8c wined3d: Remove the offscreen_rendering_mode setting. 2024-05-12 16:25:51 +02:00
Paul Gofman 61fdd99b0f bcrypt: Support RSA/PKCS1 signatures with unspecified hash algorithm. 2024-05-12 16:24:16 +02:00
Brendan Shanks e7118b7502 winemac.drv: Fix warning in macdrv_get_pixel_formats. 2024-05-12 16:24:05 +02:00
Eric Pouech ae9bdbda3b cmd: Use CRT's popen instead of rewriting it.
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-05-08 22:39:44 +02:00
Eric Pouech 93354bbd88 cmd: Introduce xrealloc helper.
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-05-08 22:39:44 +02:00
Eric Pouech 76237079d1 cmd: No longer keep track of last element in command list.
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-05-08 22:39:44 +02:00
Eric Pouech 371eda6c4c cmd: Consistenly use the same variable to identify current command.
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-05-08 22:39:44 +02:00
Dmitry Timoshkov fdc2caf678 user32/tests: Offset child CS_PARENTDC window from parent to make more bugs visible.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
2024-05-08 22:39:44 +02:00
Elizabeth Figura 06cb24bb65 maintainers: Change the full form of my name.
And update to a more reliable email address.
2024-05-08 22:39:44 +02:00
Daniel Lehman 218c4ac115 msvcrt/tests: Add result for Turkish_Türkiye.1254. 2024-05-08 20:41:15 +02:00
Ziqing Hui 08478473b7 winegstreamer/video_decoder: Make output_plane_align specific to h264.
If we set output align to wmv decoder, it will fail at copy_video_buffer().
The output size will larger than the sample we provided due to alignment.
2024-05-08 20:41:15 +02:00
Rémi Bernon 067d4f0472 winegstreamer: Introduce a new check_video_transform_support helper. 2024-05-08 20:41:15 +02:00
Rémi Bernon cc82780c22 winegstreamer: Introduce a new check_audio_transform_support helper. 2024-05-08 20:41:15 +02:00
Rémi Bernon c1158337ab winegstreamer: Introduce a new wg_transform_create_mf helper. 2024-05-08 20:41:15 +02:00
Rémi Bernon 11c47925f0 mfreadwrite/reader: Pass the device manager to the stream transforms. 2024-05-08 20:41:15 +02:00
Rémi Bernon cf3134a841 winegstreamer/video_processor: Implement D3D awareness. 2024-05-08 20:41:15 +02:00
Rémi Bernon c4fb3900bc mf/tests: Test video processor D3D11 awareness. 2024-05-08 20:41:15 +02:00
Rémi Bernon 54ff5bdf85 mfreadwrite/tests: Add some source reader D3D11 awareness tests. 2024-05-08 20:41:15 +02:00
Billy Laws a2b4924db5 ntdll: Don't restore PC from LR after unwinding through frame switches.
Fixes unwinds from within a consolidation callback on ARM64EC, as the
context frame could be x64 with UNWOUND_TO_CALL set, in which case LR
contains garbage.

See: 71abc26cf8/src/coreclr/unwinder/arm64/unwinder.cpp (L2334)
2024-05-08 20:41:15 +02:00