Commit graph

160353 commits

Author SHA1 Message Date
Rémi Bernon 9d1175a464 winebuild: Avoid calling asm_name twice in function arguments.
It returns a static buffer pointer and will free the first returned
pointer on the second call.
2022-11-04 21:53:54 +01:00
Jinoh Kang 53c4f638ef ntdll: Add CFI unwind info to __wine_syscall_dispatcher (i386).
This change is adding DWARF (CFI) unwind information to the
hand-written assembly of the `__wine_syscall_dispatcher` function.
This enables unwinding through the dispatcher from the Linux stack
into (and through) the Windows stack.

The general idea is that the `syscall_frame` struct contains the
content of the callee-save registers before the function call
(in particular the stack pointer and the return address).  At any
point of the execution, we have a pointer into the `syscall_frame`
in $ebx, $ecx, $ebp, or $esp.

For the CFI codes the general idea is that we are defining the
computations of the callee-save registers based on the
`syscall_frame` using DWARF’s `breg` instruction, rather than
relative to CFA.
2022-11-04 19:23:56 +01:00
Jinoh Kang 5aa2d45adf ntdll: Move CFI helper macros out of signal_x86_64.c. 2022-11-04 19:23:56 +01:00
Paul Gofman 81ce03dfdd windows.gaming.ui.gamebar: Add IGameBarStatics interface. 2022-11-04 19:23:56 +01:00
Paul Gofman dde251a008 windows.gaming.ui.gamebar: Add stub DLL. 2022-11-04 19:23:56 +01:00
Paul Gofman 0aacfd6861 include: Add windows.gaming.ui.idl. 2022-11-04 19:23:56 +01:00
Jinoh Kang 33617af814 server: Don't invalidate the newly exposed child region on the parent if it doesn't clip children.
This partly reverts e42eaaaf3a.

Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jinoh Kang c310e975f4 server: Redraw composited window child when its z-order changes.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53153
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jinoh Kang 17e6ef6d7e server: Correctly expose composited parent window and its child on position change.
Skip redrawing the composited child window when the window rect and
visible region stays the same, since we're taking the union of the old
and new visible regions.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53153
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jacek Caban 04576c156e winevulkan: Skip unsupported functions in a few more places. 2022-11-04 19:23:56 +01:00
Jacek Caban 692625a36a winevulkan: Don't declare host types for structs that don't need it. 2022-11-04 19:23:56 +01:00
Jacek Caban 511a8bfa09 winevulkan: Use struct conversion functions for array conversion implementations. 2022-11-04 19:23:56 +01:00
Jacek Caban a242422e95 winevulkan: Use separated classes for struct and array conversions. 2022-11-04 19:23:56 +01:00
Jacek Caban 0bfad6584f winevulkan: Drop "static_array" from conversion function names.
Static arrays need only output conversion and output conversion is the same for static and dynamic arrays.
2022-11-04 19:23:56 +01:00
Jacek Caban d44aadc527 winevulkan: Support output array conversion in _generate_array_conversion_func.
And get rid of _generate_static_array_conversion_func.
2022-11-04 19:23:55 +01:00
Jacek Caban c09a414525 winevulkan: Pass type as uint32_t to wine_vk_unwrap_handle.
Fixes -Wenum-conversion warning when VkDebugReportObjectTypeEXT is used as a type.
2022-11-04 19:23:55 +01:00
Jacek Caban e8af92ac16 winevulkan: Remove no longer used Direction.INPUT_OUTPUT. 2022-11-04 19:23:55 +01:00
Zhiyi Zhang bd8ec8f264 winex11.drv: Support _NET_WM_FULLSCREEN_MONITORS.
Support _NET_WM_FULLSCREEN_MONITORS for fullscreen windows spanning multiple monitors. This property
is used to hint window managers about which monitor a fullscreen window should cover. Window managers
make a fullscreen window spanning multiple monitors cover only one monitor when this property is missing.

Fix Project Cars 2/3 incorrect game window size when the triple-screen mode is on.
2022-11-04 19:23:55 +01:00
Zhiyi Zhang 3dd68caab3 user32/tests: Test creating a fullscreen window spanning multiple monitors. 2022-11-04 19:23:55 +01:00
Zhiyi Zhang 736ae290c9 uxtheme: Support drawing themed menu buttons. 2022-11-04 19:23:55 +01:00
Zhiyi Zhang c196d2462d user32: Hook drawing menu buttons. 2022-11-04 19:23:55 +01:00
Rémi Bernon 077c46261a opengl32: Use the unixlib interface for more WGL functions. 2022-11-04 19:23:55 +01:00
Rémi Bernon 494251add7 opengl32: Move some WGL functions to unix_wgl.c. 2022-11-04 19:23:55 +01:00
Rémi Bernon dec91f0631 opengl32: Introduce a new NtUserCallOpenGLDebugMessageCallback callback. 2022-11-04 19:23:55 +01:00
Rémi Bernon df74066f47 opengl32: Avoid using internal functions in wglUseFontOutlines. 2022-11-04 19:23:55 +01:00
Rémi Bernon c656fcf309 opengl32: Avoid using internal functions in wglUseFontBitmaps. 2022-11-04 19:23:55 +01:00
Evan Tang f181e25a47 kernel32: Null-terminate the atom names passed to NtAddAtom.
Adobe Reader XI patches NtAddAtom() and expects the name to be null-terminated

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53872
2022-11-04 19:23:55 +01:00
Ziqing Hui b558c87c50 gdi32/uniscribe: Add fallback font for Kana and CJK script.
This fixes Chinese and Japanese text display issue for
Sins of a Solar Empire: Rebellion.
2022-11-04 19:23:55 +01:00
Ziqing Hui 6f8c5195ec usp10/tests: Add Katakana shaping test. 2022-11-04 19:23:55 +01:00
Ziqing Hui 0e7415389c usp10/tests: Add Hiragana shaping test. 2022-11-04 19:23:55 +01:00
Ziqing Hui 1e07b77b51 usp10/tests: Add CJK shaping test. 2022-11-04 19:23:55 +01:00
Alex Henrie 212e319dce cmd: Use the wcsrev function instead of reimplementing it. 2022-11-04 19:23:55 +01:00
Alex Henrie 6ee8f819cf cmd: Remove inapplicable comment from WCMD_getfileowner. 2022-11-04 19:23:55 +01:00
Paul Gofman 0ba9567a56 http.sys: Use SO_EXCLUSIVEADDRUSE on listening socket. 2022-11-04 19:23:55 +01:00
Paul Gofman a9ae1e041c server: Support SO_EXCLUSIVEADDRUSE socket option. 2022-11-04 19:23:55 +01:00
Paul Gofman 003ee6202b server: Do not translate loopback addr in ipv4addr_from_v6(). 2022-11-04 19:23:55 +01:00
Paul Gofman 0328ba93f3 server: Use htonl() with INADDR_ANY in ipv4addr_from_v6(). 2022-11-04 19:23:55 +01:00
Paul Gofman 6992f2cba5 server: Set error in check_addr_usage(). 2022-11-04 19:23:55 +01:00
Paul Gofman 9163d3420f server: Use struct bound_addr as a key to bound_addresses_tree. 2022-11-04 19:23:54 +01:00
Paul Gofman 12b604926e server: Make SO_REUSEADDR and SO_EXCLUSIVEADDRUSE mutually exclusive. 2022-11-04 19:23:54 +01:00
Paul Gofman d656cb2024 ws2_32: Track SO_EXCLUSIVEADDRUSE option value. 2022-11-04 19:23:54 +01:00
Paul Gofman 1178a9dd3a ws2_32/tests: Add tests for SO_EXCLUSIVEADDRUSE. 2022-11-04 19:23:54 +01:00
Nikolay Sivov d2307e4153 vbscript: Implement PRNG functions.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53676
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-03 22:26:03 +01:00
Jacek Caban a0e34f16b1 winevulkan: Move get_conversions implementation to VkVariable. 2022-11-03 18:33:10 +01:00
Jacek Caban c13f91c7bf winevulkan: Pass direction to needs_conversion helpers.
Instead of using pre-calculated heuristics.
2022-11-03 18:33:10 +01:00
Jacek Caban f8ecbed38c winevulkan: Store returnedonly attribute in VkVariable. 2022-11-03 18:33:10 +01:00
Jacek Caban a6cd7ee257 winevulkan: Remove unneeded needs_conversion() calls. 2022-11-03 18:33:10 +01:00
Jacek Caban 844f1b1705 winevulkan: Introduce needs_host_type helper function. 2022-11-03 18:33:10 +01:00
Jacek Caban be28be1de7 winevulkan: Don't store conversion functions in VkParam. 2022-11-03 18:33:10 +01:00
Jacek Caban 67c9ff6f2e winevulkan: Don't check thunk_type in VkParam.needs_unwrapping. 2022-11-03 18:33:10 +01:00