ZusiDisplay sometimes loads the same font file into two different
PrivateFontCollections using two threads, so there is a race condition
when the file is opened without the FILE_SHARE_READ sharing mode. The
second call to GdipPrivateAddFontFile() might fail if the first one
hasn't closed the file handle yet.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2302
On Tue Feb 28 14:37:01 2023 +0000, Henri Verbeet wrote:
> It's probably worth pointing out that this has quite some potential for
> causing regressions in performance. swapchain_blit_gdi() is not fast,
> and ideally we'd work on reducing the number of cases where it's needed.
!2217 should avoid most of those cases I think, it probably makes sense to wait for that one to go in first.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2299#note_25759
--
v4: dxgi: Reset the back buffer index to zero on ResizeBuffers().
dxgi/tests: Test that ResizeBuffers() resets the back buffer index to zero.
dxgi: Always assume that a D3D12 swapchain always uses user images.
dxgi: Immediately error out when creating a D3D12 swapchain on a non-immediate queue.
dxgi/tests: Test that D3D12 swapchains can only be created on direct command queues.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2296
On Tue Feb 28 10:26:07 2023 +0000, Matteo Bruni wrote:
> I guess we could add a WARN("Using pixel format %u already set on DC
> %p.\n", current, dc); or something.
Actually the WARN() in wined3d_context_gl_set_gl_context() is probably enough already, so disregard this.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2299#note_25755
Normalise the incoming vkd3d_shader_instruction IR to the shader model 6 pattern where only one patch constant function is emitted. This allows generation of a single patch constant function in SPIR-V.
--
v13: vkd3d-shader/spirv: Declare the phase SPIR-V function in spirv_compiler_enter_shader_phase().
vkd3d-shader/spirv: Remove the hull shader phase array.
vkd3d-shader/trace: Trace the normalised instruction array after tracing the input.
vkd3d-shader/ir: Merge all shader IR fork and join phases into a single phase.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/84
--
v5: vkd3d: Do not keep the CS queue locked while processing it.
vkd3d: Always enqueue CS operations, even if they can be executed right away.
vkd3d: Hold the queue mutex when adding the queue to a blocked list.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/94
Otherwise it's not clear which clauses in vkd3d_shader_compile() really
apply to other functions. For example, many of the functions currently
refering to vkd3d_shader_compile() don't even take a vkd3d_shader_compile_info
parameter.
--
v3: vkd3d-shader: Make documentation for "messages" parameters self contained.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/110
--
v3: vkd3d-shader/hlsl: Get rid of the check_invalid_matrix_modifiers() helper.
vkd3d-shader/hlsl: Apply latent majority modifiers to typedefs as well.
vkd3d-shader/hlsl: Do not set an initial latent matrix majority.
vkd3d-shader/hlsl: Store the matrix majority as a type modifiers bitmask.
vkd3d-shader/hlsl: Apply latent type modifiers to matrix array typedefs.
tests: Add more tests for pack_matrix pragmas.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/102