Commit graph

160039 commits

Author SHA1 Message Date
Alistair Leslie-Hughes c651cf190c sapi: Add default voice registry key. 2022-10-24 21:19:42 +02:00
Alistair Leslie-Hughes 490f8aaae0 sapi: Implement ISpObjectTokenEnumBuilder Next. 2022-10-24 21:19:40 +02:00
Alistair Leslie-Hughes ca3ffa655d sapi: Implement ISpObjectTokenEnumBuilder Item. 2022-10-24 21:19:39 +02:00
Alistair Leslie-Hughes ff1c963366 sapi: Store registry key to Enum builder. 2022-10-24 21:19:37 +02:00
Alistair Leslie-Hughes 2e9d351526 sapi: Move token structure before EnumTokens function. 2022-10-24 21:19:34 +02:00
Eric Pouech 5a8350120c conhost/tests: Fix some tests on input sequences.
Correctly handling keyboards (French, German...) which report right-alt
as ctrl+alt in VkKeyScan().

Splitting escape_test input tests into pure virtual keys on one hand,
and modified char key on the other.
Generating the virtual codes for the later instead of hardcoding the
results (bound to generic US keyboard).

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52980
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-10-24 18:50:36 +02:00
Eric Pouech bdad6f2c85 conhost/tests: Fix tests for some keyboard layouts.
Some keyboards (French, German and some others) report the right alt key
(which is some cases the right-shift one) as ctrl+alt.
Add proper handling for ctrl+alt return from VkKeyScan().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52980
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-10-24 18:50:29 +02:00
Bartosz Kosiorek 5b425baf92 msvcrt: Add _ismbstrail_l implementation. 2022-10-24 18:49:50 +02:00
Bartosz Kosiorek 80c97dc38b msvcrt: Add _ismbslead_l implementation. 2022-10-24 18:49:46 +02:00
Bartosz Kosiorek 927a9a5a04 msvcrt: Fix error handling for _mbscmp_l. 2022-10-24 18:49:46 +02:00
Bartosz Kosiorek eee55c3588 msvcrt: Add _mbclen_l implementation. 2022-10-24 18:49:42 +02:00
Bartosz Kosiorek beb7f9fa2d msvcrt: Add _mbsicmp_l implementation. 2022-10-24 18:49:38 +02:00
Bartosz Kosiorek fce3c3cc09 msvcrt: Add _mbschr_l implementation. 2022-10-24 18:49:34 +02:00
Gabriel Ivăncescu 0c0efd3f63 mshtml: Move the IHTMLDocument7 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu 070cd2e82a mshtml: Move the IHTMLDocument6 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu 3b14acbd7f mshtml: Move the IHTMLDocument5 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu 527c2b286d mshtml: Move the IHTMLDocument4 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu 833a7a6202 mshtml: Move the IHTMLDocument3 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu eaaae51695 mshtml: Move the IHTMLDocument2 interface out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu 0759e86527 mshtml: Move the remaining non-IHTMLDocument* interfaces out of basedoc.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Gabriel Ivăncescu c72686aec8 mshtml: Move HTMLDocumentObj implementation to oleobj.c.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-10-24 18:48:55 +02:00
Martin Storsjö 0cb2798125 win32u: Make sure that the stack buffer in set_multi_value_key is large enough.
This fixes stack overflows since
edecac8afd.

Signed-off-by: Martin Storsjö <martin@martin.st>
2022-10-24 18:48:39 +02:00
Ziqing Hui 7486c4061e win32u: Add font links for MS Mincho. 2022-10-24 18:43:13 +02:00
Ziqing Hui fa411158df win32u: Add font links for Meiryo. 2022-10-24 18:43:13 +02:00
Ziqing Hui 802c122661 win32u: Add font links for Yu Gothic UI. 2022-10-24 18:43:13 +02:00
Alexandre Julliard 25735da0de makedep: Make the extra C flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard 815e766d9d makedep: Make the delay load flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard 55e2335f64 makedep: Make the debug flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard afc286fb51 makedep: Make the target flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard 24d791e2e9 makedep: Pass a generic architecture value instead of the is_cross flag to various helpers. 2022-10-24 16:19:47 +02:00
Paul Gofman 6d9dd6e488 winmm: Use a global timeout for refreshing joystick devices. 2022-10-24 11:18:45 +02:00
Alex Henrie d6facdc0b8 shell32: Remove unused function strdupW. 2022-10-24 11:18:37 +02:00
Alex Henrie 0a66cfa9a2 shell32: Don't use strdupW or heap_* functions in shelllink.c. 2022-10-24 11:18:37 +02:00
Alex Henrie e3a74a9178 shell32: Don't use strdupW or heap_* functions in shelldispatch.c. 2022-10-24 11:18:37 +02:00
Alex Henrie e8aba9c412 shell32: Don't use strdupW or heap_* functions in shellole.c. 2022-10-24 11:18:37 +02:00
Jinoh Kang 72c0c88f2a gdiplus: Replace GpImage's busy flag with SRWLOCK.
Today, the image_unlock() helper function has a data race due to
non-atomic write to GpImage's 'busy' flag which is accessible by other
threads.  Also, it lacks a release fence, which means that other threads
can observe the unlocked (busy = 0) state too early when the current
thread unlocks the image; specifically, the write to the 'busy' field of
the GpImage can be reordered before the last read/write to any other
fields of the same GpImage.

Fix this by replacing the 'busy' field of GpImage with SRWLOCK.
2022-10-24 11:17:39 +02:00
Jinoh Kang 7abca9742a gdiplus: Avoid copying GpImage's busy flag in select_frame_wic().
The 'busy' field in GpImage is used as an atomic variable.  The C11
standard (§5.1.2.4, paragraph 25) states that two conflicting actions to
a memory location shall be both atomic operations, or otherwise properly
synchronized; otherwise, it constitutes a data race.

However, select_frame_wic() performs a non-atomic access to the 'busy'
field on a GpImage that is potentially accessible by other threads.
This happens when select_frame_wic() copies new_image to the old image
object.  Although it does attempt to preserve the value of the 'busy'
field by setting new_image->busy = image->busy first, thereby
effectively assigning an identical value to the field, it is unclear
that this does not actually constitute a theoretical, if not practical,
data race.  This also prevents replacing the busy flag with a mutex or
other synchronization primitives.

Therefore, skip the 'busy' field when copying fields from the new image
to the original image object.
2022-10-24 11:17:37 +02:00
Jinoh Kang d6b4321125 gdiplus: Avoid recursively locking image in GdipImageRotateFlip.
GdipImageRotateFlip() calls GdipBitmapLockBits() while holding the image
lock, resulting in a recursive lock.

Since GdipImageRotateFlip() uses GdipBitmapLockBits() only to obtain
Scan0 and Stride, replace them with equivalent fields from GpBitmap
itself.
2022-10-24 11:17:35 +02:00
Esme Povirk 8e73b48f34 win32u: Reject invalid length in SetWindowPlacement. 2022-10-24 11:16:06 +02:00
Esme Povirk f91eb0a9e0 user32: Test Get/SetWindowPlacement with invalid length. 2022-10-24 11:16:06 +02:00
Paul Gofman c698ba86d4 msvcrt: Display message box in abort() for specific CRT versions only. 2022-10-24 11:13:39 +02:00
Piotr Caban f943d44972 msvcrt: Fix _wputenv_s invalid argument handling. 2022-10-24 11:13:18 +02:00
Mihail Ivanchev 10e7c824e0 include: Add prototype for ReOpenFile().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53821
2022-10-24 11:13:06 +02:00
Anton Baskanov 359b4efce8 quartz/tests: Add tests for querying MPEG layer-3 decoder pin info.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:35 +02:00
Anton Baskanov 86a998e8e9 quartz/tests: Add tests for IBaseFilter_FindPin() on MPEG layer-3 decoder.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:35 +02:00
Anton Baskanov 83c2e0db27 quartz/tests: Add tests for IBaseFilter_EnumPins() on MPEG layer-3 decoder.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:35 +02:00
Anton Baskanov c7d82489ae quartz/tests: Test MPEG layer-3 decoder unconnected filter state.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:35 +02:00
Anton Baskanov ff9ef4efd4 quartz/tests: Add tests for MPEG layer-3 decoder aggregation.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:35 +02:00
Anton Baskanov 773dea79b9 quartz/tests: Add tests for MPEG layer-3 decoder interfaces.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
2022-10-24 11:12:34 +02:00
Paul Gofman 5f42c9e39d wbemprox: Fix string length in get_value_bstr(). 2022-10-24 11:12:09 +02:00