Commit graph

162648 commits

Author SHA1 Message Date
Hans Leidekker
9d40ac4635 winscard: Implement SCardIsValidContext(). 2023-02-22 21:14:20 +01:00
Hans Leidekker
8490c43f38 winscard: Implement SCardEstablish/ReleaseContext() on top of libpcsclite. 2023-02-22 21:14:20 +01:00
Hans Leidekker
210596600c include: Add missing smart card defines. 2023-02-22 21:14:20 +01:00
Alexandre Julliard
8670876db9 makedep: Don't add dependencies for tests of disabled dlls. 2023-02-22 21:14:20 +01:00
Paul Gofman
a97fd9f29e win32u: Expose and use ProcessEvents from drivers instead of MsgWaitForMultipleObjectsEx. 2023-02-22 18:25:29 +01:00
Ziqing Hui
13a65b849e mf/tests: Test output data for WMV decoder DMO. 2023-02-22 18:06:42 +01:00
Ziqing Hui
9d1b927924 mf/tests: Test ProcessInput and ProcessOutput for WMV decoder DMO. 2023-02-22 18:06:42 +01:00
Ziqing Hui
41288d0d70 mf/tests: Correctly initialize DMO media type. 2023-02-22 18:06:42 +01:00
Ziqing Hui
a5b5cef355 mf/tests: Add missing \n. 2023-02-22 18:06:42 +01:00
Alex Henrie
8f2df17e84 include: Annotate CommandLineToArgvW with __WINE_DEALLOC. 2023-02-22 18:06:08 +01:00
Mohamad Al-Jaf
079ff28fce include: Fix BluetoothRegisterForAuthentication prototype.
The first parameter is defined as const BLUETOOTH_DEVICE_INFO in MSDN and bluetoothapis.h.
2023-02-22 18:05:55 +01:00
Connor McAdams
ba960ed499 uiautomationcore: Implement IUIAutomationElement::get_CurrentBoundingRectangle.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00
Connor McAdams
c31e531318 uiautomationcore: Implement IUIAutomationElement::get_CurrentName.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00
Connor McAdams
0b487338f3 uiautomationcore: Implement IUIAutomationElement::get_CurrentControlType.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00
Connor McAdams
21e6fd5076 uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_ControlType GUIDs.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00
Eric Pouech
53fc157f9f kernel32/tests: Fix debugger.c:test_kill_on_exit().
As background information from Windows testings:
- the debug port event is closed upon thread regular exit.
- results are however inconsistent across Windows versions for forced
  termination (through TerminateThread and equiv).
- this is moreover crippled by most of the 32bit implementation on Windows
  (except Win8) which don't enforce the close on exit flag for wow64 debuggee:s
  (they enforce it for 64bit though)
- but, in the cases where the debuggee terminates, the debug port is
  always closed *after* the debuggee process termination.

So I adapted the tests to conform to "debug port is closed" when handling
the thread termination. Some tests had to be moved *after* debuggee
termination to ensure success.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53144
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-22 18:04:42 +01:00
Eric Pouech
3bbb2caf08 dbghelp/tests: Fix failure on Win10 1607.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54534
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-22 18:04:39 +01:00
Eric Pouech
23b082ed1d kernel32/tests: Don't let debugger tests fail on a 64bit only config.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-22 18:04:39 +01:00
Rémi Bernon
40b7c3e89a ntdll: Add a heap thread affinity and per-affinity bin group cache. 2023-02-22 18:03:55 +01:00
Rémi Bernon
889743154e ntdll: Use atomics and lock-free list for bin groups. 2023-02-22 18:03:55 +01:00
Rémi Bernon
27665f35e4 ntdll: Implement Low Fragmentation Heap frontend.
This implements the reduced fragmentation from the heap frontend, by
carving smaller blocks out of larger allocated blocks.

The super block and each sub-block are all flagged with BLOCK_FLAG_LFH.

The super-block (struct group) uses a standard struct block header, as
well as a list entry to be linked in free list, and a free bit map to
track free sub-blocks.

Sub-blocks reference their super block through the base_offset, instead
of the subheap, using the block size as radix.
2023-02-22 18:03:53 +01:00
Rémi Bernon
b4e5aa8dfc ntdll: Split heap_resize_block into heap_resize_(block|large) helpers. 2023-02-22 18:03:53 +01:00
Rémi Bernon
632b08aa5b ntdll: Count allocations and automatically enable LFH. 2023-02-22 18:03:53 +01:00
Rémi Bernon
0f6ebd0152 ntdll: Increase heap block tail_size capacity to 16 bits.
We need this for larger LFH block bin steps. Use smaller block types to
get more space, they are somewhat redundant with the block flags.
2023-02-22 18:03:51 +01:00
Rémi Bernon
7314029c90 ntdll: Implement HeapCompatibilityInformation. 2023-02-22 18:03:51 +01:00
Rémi Bernon
805247ace3 ntdll: Fix HeapWalk with empty uncommitted consecutive subheaps. 2023-02-22 18:03:49 +01:00
Max Figura
17d0806643 wined3d: Move the WINED3D_RS_SUBPIXEL stub to wined3d_device_apply_stateblock. 2023-02-21 22:03:15 +01:00
Max Figura
8422ee0fdd wined3d: Move the WINED3D_RS_ZVISIBLE stub to wined3d_device_apply_stateblock. 2023-02-21 22:03:15 +01:00
Max Figura
db5952e406 wined3d: Move the WINED3D_RS_LASTPIXEL stub to wined3d_device_apply_stateblock. 2023-02-21 22:03:15 +01:00
Max Figura
abebd41e97 wined3d: Move the WINED3D_RS_PLANEMASK stub to wined3d_device_apply_stateblock. 2023-02-21 22:03:15 +01:00
Max Figura
a9967c947a wined3d: Move the WINED3D_RS_ROP2 stub to wined3d_device_apply_stateblock. 2023-02-21 22:03:15 +01:00
Piotr Caban
48d3271f96 localspl: Ignore an empty output string.
We should probably ignore all incorrect ports. This is a minimal change
that restores 5dadeeb29d commit.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54379
2023-02-21 18:43:45 +01:00
Piotr Caban
2bfe9ce883 wineps: Remove no longer used output parameter handling from PSDRV_CreateDC.
We're storing it now in DC attributes.
2023-02-21 18:43:43 +01:00
Piotr Caban
4a8cdc2b49 winspool: Fix FILE: output handling in StartDocDlgW. 2023-02-21 18:43:43 +01:00
Alexandros Frantzis
6d2bd75c4a win32u: Reset draw_start_ticks for new window_surface.
Normally, a new window_surface has no damage so its draw_start_ticks
value is reset at the time of the first lock_surface.

However, if contents from the old window_surface are copied to the new
one when the window_surface for a window is updated, the new
window_surface will be initially damaged. We want to reset the
draw_start_ticks value in this case too, to avoid flushes occuring soon
after such updates, during the initial redraw of the window_surface.

Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
2023-02-21 11:22:47 +01:00
Alexandros Frantzis
aa72d7d42d gdi32: Track ticks since draw start per window_surface.
Track ticks since draw start per window_surface, instead of per DC as is
currently the case. This change helps reduce visual glitches caused by
badly timed flushes when drawing to the same window_surface from
multiple DCs (e.g., for child windows).

This approach is a better fit for the current heuristic for forcing
flushing, which consults the shared window_surface bounds to decide
whether this is the start of a draw in order to reset the (currently per
DC) draw start time.

The problem in the current implementation occurs when a drawing to a DC
begins with an already damaged window_surface, e.g., due to draws from
other DCs targeting that window_surface. In such a case, the DC draw
start time is not reset and refers to the start of some previous draw
sequence using this DC, thus increasing the chances that the 50ms time
flush limit will be eventually exceeded in the middle of the current
draw sequence. In other words, the state of the (shared) window_surface
damage is not a reliable indicator of the beginning (or not) of a draw
to a DC.

An example, assuming DC1 and DC2 target the same window_surface:

DC1.start_ticks = 0
DC2.start_ticks = 0
FLUSH_PERIOD = 50

0 flush
1 draw to DC1 -> DC1.start_ticks = 1
... [no flush] ...
2 draw to DC2 -> DC2.start_ticks remains 0 since surface is damaged
...
50 flush
51 draw to DC1 -> DC1.start_ticks = 51
... [no flush] ...
52 draw to DC2 -> DC2.start_ticks remains 0 since surface is damaged,
                  current - DC2.start_ticks > FLUSH_PERIOD so we are
                  forced to flush in the middle of the drawing
                  sequence => potential glitch

Tracking the draw start per window_surface ameliorates the problem
because the beginning of a draw on a DC targeting an undamaged
window_surface resets the start time for all DCs targeting that
window_surface:

...
50 flush
51 draw to DC1 -> surface.draw_ticks = 51
... [no flush] ...
52 draw to DC2 -> surface.draw_ticks remains 51 since surface is damaged,
                  but current - surface.draw_ticks < FLUSH_PERIOD, so we
                  do not flush

Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
2023-02-21 11:22:45 +01:00
Mohamad Al-Jaf
c9285f324b bluetoothapis: Add BluetoothUnregisterAuthentication stub. 2023-02-21 11:22:35 +01:00
Mohamad Al-Jaf
f74c0f4c78 bluetoothapis: Add BluetoothRegisterForAuthenticationEx stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54112
2023-02-21 11:22:34 +01:00
Mohamad Al-Jaf
5d2051eb64 include: Add BluetoothRegisterForAuthenticationEx prototype. 2023-02-21 11:22:34 +01:00
Mohamad Al-Jaf
a700b62089 bthprops.cpl: Move implementations to bluetoothapis and import them. 2023-02-21 11:22:30 +01:00
Alistair Leslie-Hughes
e5b1ddeab3 msado15: Support "Optimize" in Properties get_Item.
The Optimize property tells msado15 to create index maps
for lookups in Recordset Find.  Just store the value for
now until Find is implemented.
2023-02-21 11:21:27 +01:00
Paul Gofman
74240a3545 server: Set TCP SYN count on sockets. 2023-02-21 11:21:27 +01:00
Paul Gofman
4e6a5d62ad server: Retry socket connection on ECONNABORTED error. 2023-02-21 11:21:05 +01:00
David Gow
fe9a1403fa dxgi: Don't warn on DXGI_ALPHA_MODE_UNSPECIFIED with wined3d. 2023-02-21 11:19:28 +01:00
Alexandre Julliard
89bb2622d2 kernelbase: Set ERROR_ALREADY_EXISTS for existing pipe in CreateNamedPipeW().
Reported by Dávid Török.
2023-02-21 11:18:13 +01:00
Alexandre Julliard
1b9db99417 ntdll: Return the correct IOSB information when creating a named pipe. 2023-02-21 11:17:17 +01:00
Alexandre Julliard
d74b084e45 ntdll: Pass the NtCreateNamedPipeFile disposition to the server. 2023-02-21 10:48:16 +01:00
Francois Gouget
2436964d56 gdi32/tests: Mark a couple other D3DKMTCheckOcclusion() tests as flaky.
They also happen randomly on Windows (see commit 2d19baa6b5).

Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=51313
2023-02-20 23:00:34 +01:00
Eric Pouech
417d2c0235 include: Ensure that SymRefreshModuleList() is properly defined.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-20 23:00:33 +01:00
Eric Pouech
e138361f48 dbghelp/tests: Test that overlapped module is really unloaded.
(and not just modified in place).

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-20 23:00:33 +01:00