Wine-Releases
By message
wine-releases@list.winehq.org
By month
Threads by month
- ----- 2026 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- 1 participants
- 645 discussions
The Wine development release 10.18 is now available.
What's new in this release:
- OpenGL memory mapping using Vulkan in WoW64 mode.
- Synchronization barriers API.
- Support for WinRT exceptions.
- SCSI pass-through in WoW64 mode.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.18.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.18/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.18 (total 30):
- #10349 Yukon Trail installer crashes at the end during DDE communication with Progman
- #24466 Sid Meier's Pirates! frequent hiccups, temporary lock-ups
- #33492 Yukon Trail installer fails to install its font
- #48027 cmd pipe | not triggering ReadFile EOF
- #48787 WineD3D C&C Generals Zero Hour takes a lot time to load or maximize
- #55981 GL applications (and d3d applications using the GL backend) are slow in new wow64
- #56209 winetricks vb5run fails
- #56915 Autodesk Fusion requires GetUserLanguages which is not implemented
- #57259 Keepass 2 automatic update dialog is broken (uses Taskdialog) EnableVisualStyles() from WinForms evidently doesn't work
- #57376 Permission denied vs No such file or directory when opening folders with trailing backslash
- #58229 _SH_SECURE sharing flag is not supported and causing _wfsopen to fail
- #58257 CD Manipulator cannot detect the drive model name in experimental wow64 mode.
- #58331 Wait cursor does not display
- #58391 Exact Audio Copy: Unable to interface with DVD drive on WoW64
- #58598 Realterm_2.0.0.70 / Crashes on start
- #58611 Nightshade crashes: err:seh:NtRaiseException Unhandled exception code c0000409 (native vcruntime140 works around the crash)
- #58697 Jolly Rover hangs upon starting with 100% cpu usage
- #58747 Directory opus fails start.
- #58749 Delayed startup of wine processes in Wine-10.16 when winemenubuilder.exe is disabled
- #58752 assembly:Z:\usr\share\wine\mono\wine-mono-10.2.0\lib\mono\4.5\mscorlib.dll type:DllNotFoundException
- #58791 MDk 2 games windows
- #58794 Multiple applications crash with assertion failure in cache_inproc_sync()
- #58795 The Witcher 2 crashes on start
- #58804 Incorrect ConfigureNotify processing in xfce
- #58812 PlayOnline Viewer: Application runs and works otherwise, but only shows a black screen.
- #58816 macOS: Window focus / activation issue
- #58828 Configure (build) fails since commit db2e157, if autoreconf needs to be applied before
- #58837 getCurrentThreadID error when enabling speedhack in Cheat Engine
- #58839 kernel32.timeGetTime error when enabling speedhack in Cheat Engine
- #58852 Minimised applications are restored with -4 vertical pixels (redux).
### Changes since 10.17:
```
Adam Markowski (1):
wine.desktop: Add Polish translation.
Akihiro Sagawa (9):
ntdll: Drop unused raw SCSI command support for NetBSD.
ntdll: Remove useless request_sense type check.
ntdll: Separate the I/O buffers in IOCTL_SCSI_PASS_THROUGH.
ntdll: Add wow64 support for IOCTL_SCSI_PASS_THROUGH.
kernel32/tests: Add IOCTL_SCSI_PASS_THROUGH tests for optical drives.
ntdll: Remove redundant definitions for Linux.
ntdll: Separate the I/O buffers in IOCTL_SCSI_PASS_THROUGH_DIRECT.
ntdll: Add wow64 support for IOCTL_SCSI_PASS_THROUGH_DIRECT.
kernel32/tests: Add IOCTL_SCSI_PASS_THROUGH_DIRECT tests for optical drives.
Alex Henrie (2):
kernel32: Move some time functions from winmm.
advpack: Ignore lines that begin with '@' in (Un)RegisterOCXs sections.
Alexandre Julliard (19):
server: Only use the export name for builtin modules.
winebuild: Always output an export directory for fake dlls.
server: Also use the export name for fake dlls.
configure: Work around install-sh requirement in autoconf <= 2.69.
makedep: Only output install rules at the top level.
makedep: Generate the uninstall files list directly from the install commands.
makedep: Store install command line arguments in the command list.
makedep: Make the output_rm_filenames helper more generic.
makedep: Install multiple files at once when possible.
ntdll: Don't map the PE header as executable.
gitlab: Fix regexp to extract dll name for Windows tests.
kernel32/tests: Use CRT allocation functions.
comctl32/tests: Use CRT allocation functions.
kernelbase: Fix error returned for paths with a trailing backslash.
mountmgr.sys: Only create serial and parallel keys when needed.
include: Add a couple of reparse point definitions.
ws2_32/tests: Add some tests for AF_UNIX sockets.
kernelbase: Reject all-space paths in SearchPath().
kernelbase: Reject empty command lines in CreateProcess().
Alexandros Frantzis (1):
winewayland: Pass through mouse events for transparent, layered windows.
Alistair Leslie-Hughes (2):
bcrypt: Add missing breaks.
include: Correct STACKFRAME for 64bits in imagehlp.h.
Anton Baskanov (8):
fluidsynth: Import upstream release 2.4.2.
fluidsynth: Calculate the inverted value explicitly in fluid_mod_transform_source_value().
fluidsynth: Invert relative to the max value instead of 1.0 in fluid_mod_transform_source_value().
dmusic/tests: Add tests for GUID_DMUS_PROP_Volume.
dmusic: Set volume when creating a synth.
dmusic: Handle GUID_DMUS_PROP_Volume.
dmime: Set master volume when adding a port.
dmime: Update master volume when GUID_PerfMasterVolume is set.
Bernd Herd (3):
sane.ds: Fix native TWAIN transfer mode for 64-bit.
gphoto2.ds: Decrease the number of remaining pending data transfers after every transfer.
gphoto2.ds: Return the DIB as a GlobalAlloc handle according to TWAIN spec instead of a HBITMAP.
Brendan Shanks (4):
winemac.drv: Include Carbon.h in macdrv_cocoa.h and remove duplicate definitions.
include: Implement C_ASSERT() using the C23 static_assert() if available.
ntdll: Avoid mmap() failures and Gatekeeper warnings when mapping files with PROT_EXEC.
configure: Only run checks in WINE_(MINGW_)PACKAGE_FLAGS when CFLAGS or LIBS is non-empty.
Byeong-Sik Jeon (2):
winemac: Use event handle to detect macdrv ime processing done.
win32u: Fix typo.
Conor McCarthy (8):
mf/tests: Skip the scheme resolver tests if network connectivity is unavailable.
mf/tests: Fix occasional hangs in test_media_session_source_shutdown().
mf/tests: Skip some tests invalid on current Windows 11.
mf/tests: Fix a scheme resolver test failure on current Windows 11.
mf/tests: Test H.264 sink media type height alignment.
mf/tests: Test H.264 decoder alignment.
mfmediaengine/tests: Test TransferVideoFrame() to IWICBitmap.
mfmediaengine: Support TransferVideoFrame() to IWICBitmap.
Dmitry Timoshkov (5):
wine.inf: Create [fonts] section in win.ini for 16-bit apps.
user32/tests: Add more tests for PackDDElParam/UnpackDDElParam(WM_DDE_ACK).
user.exe: Use larger buffer size for checking atom name.
user.exe: Add special handling for WM_DDE_ACK in response to WM_DDE_INITIATE.
wldap32/tests: Add one more check for an unreachable server.
Elizabeth Figura (9):
kernelbase: Remove an unused NtQueryInformationFile() from MoveFileWithProgress().
ntdll: Call cache_inproc_sync() inside the lock.
ntdll/tests: Add more reparse point tests.
ntdll/tests: Test NtQueryAttributesFile() with a root directory.
shell32/tests: Fix test failures in test_GetAttributesOf().
include: Pass a PROCESS_INFORMATION to winetest_wait_child_process().
user32: Implement CascadeWindows().
user32: Implement TileWindows().
winex11: Null-terminate a string used with RTL_CONSTANT_STRING().
Eric Pouech (9):
cmd: Fix lexer on input redirection.
cmd: Show file size greater than 4G in DIR command.
cmd: Initialize a local variable.
cmd: Fix a potential out of bounds access.
cmd: Fixed an invalid memory access spotted by SAST.
dbghelp: Use Unicode for some pathnames.
dbghelp: Remove useless process parameters.
dbghelp: Rewrite debug format search & load logic.
dbghelp: {dwarf} Keep .eh_frame mapped when no CU are present.
Felix Hädicke (3):
wbemprox/tests: Use check_property function in test_MSSMBios_RawSMBiosTables.
wbemprox/tests: Add tests for MSSMBios_RawSMBiosTables properties.
wbemprox: Implement more MSSMBios_RawSMBiosTables properties.
Gabriel Ivăncescu (15):
mshtml: Use a common object implementation for HTMLElementCollection enumerator.
mshtml: Use the common object implementation for HTMLDOMChildrenCollection enumerator.
mshtml: Use the common object implementation for HTMLFormElement enumerator.
mshtml: Use the common object implementation for HTMLSelectElement enumerator.
mshtml: Use the common object implementation for HTMLRectCollection enumerator.
mshtml: Use the common object implementation for HTMLStyleSheetsCollection enumerator.
mshtml: Use the common object implementation for HTMLAttributeCollection enumerator.
mshtml: Add private stub interfaces for validating form elements.
mshtml: Add private stub interfaces for validating input elements.
mshtml: Add private stub interfaces for validating button elements.
mshtml: Add private stub interfaces for validating object elements.
mshtml: Add private stub interfaces for validating select elements.
mshtml: Add private stub interfaces for validating text area elements.
mshtml: Implement checkValidity for HTMLInputElement.
mshtml: Implement enctype for HTMLFormElement.
Gerald Pfeifer (1):
winebus: Don't define hidraw_device_read_report unless used.
Ivan Lyugaev (1):
sane.ds: Adding saving scanner settings to the registry.
Jacek Caban (16):
gitlab: Update to llvm-mingw 20251007.
opengl32: Update to the current OpenGL spec.
opengl32: Include legacy aliases in the extension registry.
opengl32: Factor out make_context_current.
opengl32: Use the actual context GL version in is_extension_supported.
opengl32: Use stored GL version in check_extension_support.
opengl32: Hide GL versions larger than 4.3 on wow64 in make_context_current.
opengl32: Use stored context GL version in get_integer.
opengl32: Use stored GL version in wrap_glGetString.
opengl32: Split extensions by null bytes in the registry.
opengl32: Compute supported extensions in make_context_current.
opengl32: Use stored extension list in is_extension_supported.
opengl32: Use stored extensions in filter_extensions.
opengl32: Wrap buffer storage functions.
opengl32: Support wow64 buffer storage and persistent memory mapping using Vulkan.
urlmon/tests: Fix PersistentZoneIdentifier tests on some Windows versions.
Louis Lenders (1):
uxtheme: Add stub for GetThemeStream.
Marc-Aurel Zent (2):
ntdll: Do not set main thread QoS class on macOS.
ntdll: Remove unused parameter from linux_query_event_obj().
Michael Müller (1):
wineboot: Ensure that the ProxyEnable value is created.
Nikolay Sivov (39):
oleaut32/tests: Enable more tests for VarAdd().
oleaut32/tests: Enable more tests for VarOr().
oleaut32/tests: Enable more tests for VarXor().
oleaut32/tests: Enable more tests for VarCmp().
d2d1/tests: Add some tests for resulting format of the WIC target.
d2d1: Set alpha mode correctly for the WIC target.
d2d1: Implement Tessellate() for path geometries.
d2d1: Implement Tessellate() for ellipse geometries.
d2d1: Implement Tessellate() for rectangle geometries.
d2d1: Implement Tessellate() for rounded rectangle geometries.
d2d1/tests: Add a ComputeArea() test for the path geometry.
d2d1: Implement ComputeArea() for path geometries.
include: Remove some msxml6 types from msxml2.idl.
msxml3/tests: Remove duplicated test.
include: Remove more coclass entries from msxml2.idl.
d2d1: Implement ComputeArea() for ellipse geometries.
d2d1: Implement ComputeArea() for rounded rectangle geometries.
d2d1: Implement Tessellate() for transformed geometries.
d2d1/tests: Reduce test run count for some tests.
msxml6/tests: Move remaining tests for SAXXMLReader60.
include: Remove SAXXMLReader60 from msxml2.idl.
d2d1/tests: Extend test geometry sink.
d2d1/tests: Add a basic test for geometry streaming.
d2d1: Track specific failure reason during geometry population.
d2d1: Set more appropriate error code on geometry population.
d2d1: Handle invalid segment flags in SetSegmentFlags().
msxml6/tests: Add a leading whitespace test.
msxml3/tests: Add some SAX tests for PI nodes.
msxml3/sax: Add processing instructions callback.
msxml3/sax: Add basic support for startDTD()/endDTD().
msxml3/tests: Add some tests for IXMLDocument::get_charset().
msxml3/tests: Add some tests for "xmldecl-encoding".
msxml3/tests: Add more tests for document properties.
msxml3/tests: Add more tests for supported interfaces.
d2d1/tests: Add some property tests for the Gaussian Blur effect.
d2d1/tests: Add some property tests for the Point Specular effect.
d2d1/tests: Add some property tests for the Arithmetic Composite effect.
msxml3: Update to IXMLDocument2.
msxml3: Return static string from get_version().
Paul Gofman (9):
user32: Move GetWindowDisplayAffinity() stub to win32u.
kernel32: Avoid RBP-based frame in BaseThreadInitThunk() on x64.
ntdll: Add synchronization barrier stubs.
ntdll: Implement synchronization barrier functions.
kernelbase: Implement synchronization barrier functions.
tdh: Add semi-stub for TdhEnumerateProviders().
server: Use process_vm_readv() for other process memory read when available.
ntdll: Get written size from server in NtWriteVirtualMemory().
server: Use process_vm_writev() for other process memory write when available.
Piotr Caban (17):
d3d11: Fix wait_child_process() related test failures.
dinput: Fix wait_child_process() related test failures.
imm32: Fix wait_child_process() related test failures.
kernel32: Fix wait_child_process() related test failures.
mfplat: Fix wait_child_process() related test failures.
user32: Fix wait_child_process() related test failures.
win32u: Fix wait_child_process() related test failures.
windowscodecs: Fix wait_child_process() related test failures.
timeout: Fix wait_child_process() related test failures.
msvcrt: Deduplicate exception copying code.
msvcrt: Handle IUnknown exceptions in __DestructExceptionObject().
msvcrt: Handle IUnknown exceptions in copy_exception helper.
msvcrt: Call __DestructExceptionObject() in __ExceptionPtrDestroy.
ucrtbase: Fix wait_child_process crash.
msado15/tests: Test rowset queried interfaces instead of tracing them.
msado15: Mark recordset open in ADORecordsetConstruction:put_Rowset.
msvcrt: Rename exception *IUNKNOWN flags to *WINRT.
Robert Wilhelm (1):
scrrun: Implement MoveFolder().
Rémi Bernon (40):
server: Don't set QS_HARDWARE for every hardware message.
win32u: Only return from NtWaitForMultipleObjects if signaled.
win32u: Restore queue masks after processing driver events.
opengl32: Use a buffer map for gl(Draw|Read)Buffer(s).
opengl32: Implement front buffer rendering emulation.
win32u: Reset internal pixel format when pixel format is set.
win32u: Use floats for map_monitor_rect computation.
win32u: Stub NtGdiDdDDI(Acquire|Release)KeyedMutex(2) syscalls.
win32u/tests: Test acquire / release of D3DKMT keyed mutexes.
win32u: Set the process idle event from the client side.
winex11: Give colormap ownership to the surface after it's allocated.
ntdll: Fix (Nt|Zw)WaitForMultipleObjects signature.
win32u: Process driver events and internal hardware messages in NtUserSetCursor.
winegcc: Support subsystem version number in link.exe-style cmdline.
winegcc: Consistently use the subsystem option with Clang and MinGW.
comctl32/tests: Force console subsystem version 5.2.
dxgi/tests: Force console subsystem version 5.2.
quartz/tests: Force console subsystem version 5.2.
user32/tests: Force console subsystem version 5.2.
winegcc: Set the default console and windows subsystems version to 6.0.
win32u: Use a dedicated struct for D3DKMT mutex objects.
server: Use a dedicated struct for D3DKMT mutex objects.
win32u: Pass D3DKMT keyed mutex initial value on creation.
win32u: Implement acquire / release of D3DKMT keyed mutexes.
winex11: Move state change checks to window_update_client_state.
winex11: Remove now unnecessary SC_MOVE command handling.
win32u: Update the window config before its state, as internal config.
win32u: Fix incorrect resource allocation object type.
win32u: Call d3dkmt_destroy_sync from NtGdiDdDDIDestroySynchronizationObject.
win32u: Simplify some vulkan resource cleanup calls.
win32u: Query resource runtime data in d3dkmt_open_resource.
win32u: Open resource keyed mutex and sync object on import.
winevulkan: Require timeline semaphores for VK_KHR_win32_keyed_mutex.
win32u/tests: Test vulkan / D3DKMT keyed mutex interop.
win32u: Create timeline semaphores for resources keyed mutexes.
win32u: Grow vkQueueSubmit buffers to allow for keyed mutex semaphores.
win32u: Reserve an array of timeline semaphore submit structs.
win32u: Implement keyed mutex acquire / release with timeline semaphores.
winex11: Don't keep track of the minimized window rects.
winex11: Use window rects for minimization in virtual desktop mode.
Tim Clem (2):
winemac.drv: Never set a zero backing size for a GL context.
winemac.drv: Explicitly track the shape layer used for letter/pillarboxes.
Vibhav Pant (14):
rometadata: Implement IMetaDataTables::{Get{String,Blob,Guid,UserString}HeapSize, GetNumTables}.
rometadata: Implement IMetaDataTables::GetTableInfo.
rometadata: Implement IMetaDataTables::GetRow.
rometadata: Implement IMetaDataTables::Get{String,Blob,Guid}.
rometadata/tests: Add tests for IMetaDataTables::{GetColumnInfo, GetColumn}.
rometadata: Implement IMetaDataTables::{GetColumn, GetColumnInfo}.
kernelbase: Release console_section in case of an allocation failure in alloc_console.
vccorlib140: Add AllocateException and FreeException stubs.
vccorlib140: Add AllocateExceptionWithWeakRef stub.
vccorlib140: Add stubs for exceptions-related functions.
vccorlib140: Add tests for exceptions-related functions.
vccorlib140: Add stubs for Exception constructors.
vccorlib140: Implement AllocateException(WithWeakRef), FreeException.
msvcrt: Update WinRT exception type info in _CxxThrowException.
Yuxuan Shui (4):
wmvcore/tests: Check what happens to a WMSyncReader when its allocator fails.
winegstreamer: Return NS_E_NO_MORE_SAMPLES from WMSyncReader if sample fails to read.
user32/tests: Make sure testtext has enough null bytes at the end.
reg: Fix out-of-bound read when string is empty.
Zhengyong Chen (1):
server: Fix incorrect key modification in rename_key function.
Zhiyi Zhang (27):
windows.ui.core.textinput: Add stub DLL.
windows.ui.core.textinput: Add ICoreInputViewStatics stub.
windows.ui.core.textinput: Add core_input_view_statics_GetForCurrentView() stub.
windows.ui.core.textinput: Add core_input_view_GetCoreInputViewOcclusions() stub.
windows.ui.core.textinput: Add core_input_view_add_OcclusionsChanged() stub.
windows.ui.core.textinput: Implement IWeakReferenceSource for ICoreInputView.
comctl32: Move uxtheme headers to comctl32.h.
comctl32: Add a helper to open theme for a window.
comctl32: Add a helper to close the theme for a window.
comctl32: Add a helper to handle WM_THEMECHANGED.
comctl32: Add a helper to handle WM_NCPAINT messages.
comctl32/datetime: Add a helper to draw the background.
comctl32/datetime: Remove theming for comctl32 v5.
uxtheme: Add a stub at ordinal 49.
comctl32/header: Add a helper to check if theme is enabled.
comctl32/header: Add a helper to get the item text rect.
comctl32/header: Add a helper to draw the item text.
comctl32/header: Add a helper to draw the rest of the background.
comctl32/header: Remove theming for comctl32 v5.
comctl32/hotkey: Remove theming for comctl32 v5.
comctl32/ipaddress: Add a helper to get the theme text state.
comctl32/ipaddress: Add a helper to get the text colors.
comctl32/ipaddress: Add a helper to draw the background.
comctl32/ipaddress: Add a helper to draw the dots.
comctl32/ipaddress: Remove theming for comctl32 v5.
comctl32/listview: Remove theming for comctl32 v5.
comctl32/monthcal: Remove theming for comctl32 v5.
Ziqing Hui (8):
mfreadwrite: Add attributes member to writer struct.
mfreadwrite: Add converter transform to stream.
mfreadwrite: Implement IMFSinkWriterEx.
mfreadwrite: Implement sink_writer_SetInputMediaType.
mfreadwrite/tests: Test getting transform for a writer without converter.
qasf: Implement seeking for asf reader.
qasf: Add asf_reader_stop_stream helper.
qasf: Add asf_reader_start_stream helper.
```
1
0
The Wine development release 10.17 is now available.
What's new in this release:
- Mono engine updated to version 10.3.0.
- EGL renderer used by default for OpenGL.
- COMCTL32 split into separate v5 and v6 modules.
- Better support for ANSI ODBC drivers.
- Improved CPU info on FreeBSD.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.17.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.17/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.17 (total 17):
- #16214 Copy command does not support CON or CON:
- #38987 tlReader 10.x crashes when searching dictionary (wxWidgets 2.9.4 questionable theming support detection via comctl32 v6 version resource)
- #46603 Metro 2033 crashes on exit
- #46823 in wcmd.exe, trailing slash in "if exist SomeDir/" cause always false
- #51119 INSIDE ground is black rendered with OpenGL renderer
- #52633 Some buttons from Free Virtual Keyboard's setting dialog are unthemed, needs comctl32 version 6.
- #56157 create_logical_proc_info (Stub) : Applications can not spawn multiple threads
- #56381 "type" does not support binary files
- #56391 So Blonde: very long loading times
- #57448 Erratic mouse movement with waylanddriver in Throne and Liberty
- #57574 Wine 9.20: Application window positioning regression on laptop with multi monitor display setup
- #57691 wine-mono: ASan gets triggered in mono_path_canonicalize with strcpy-param-overlap.
- #58726 "Roon" music player only shows a blank white screen but buttons (that aren't displayed) technically work
- #58737 Download of large file via WinHTTP fails with WSATIMEDOUT
- #58755 16-bit applications crash under new wow64 on some processors
- #58770 Unable to Compile 10.16
- #58796 Wine configuration window doesn't appear after prefix creation
### Changes since 10.16:
```
Alexandre Julliard (37):
winebuild: Add support for stripping files before setting the builtin flag.
makedep: Use winebuild to strip installed files.
tools: Add an STRARRAY_FOR_EACH macro to iterate an strarray.
makedep: Use the STRARRAY_FOR_EACH macro.
widl: Use the STRARRAY_FOR_EACH macro.
wine: Use the STRARRAY_FOR_EACH macro.
winebuild: Use the STRARRAY_FOR_EACH macro.
winegcc: Use the STRARRAY_FOR_EACH macro.
wrc: Use the STRARRAY_FOR_EACH macro.
server: Consistently use STATUS_TOO_MANY_OPENED_FILES when running out of file descriptors.
gitlab: Use the release keyword to create a release.
winedump: Rename struct array to str_array.
tools: Add a generic array type.
makedep: Use a generic array for dependencies.
makedep: Use a generic array for include files.
makedep: Add an array of install commands instead of abusing strarrays.
makedep: Build the installed file name when registering the install command.
configure: Fix syntax error in hwloc check.
windows.devices.enumeration: Fix the build with older Bison.
ntdll: Don't assume that the NT name is null-terminated in get_load_order().
ntdll: Build the NT name string directly in get_mapping_info().
server: Return the module export name with the mapping info.
ntdll: Use the export name if any to find the corresponding builtin.
setupapi: Use the actual source name when registering a manifest.
makedep: Include maintainer-generated files from the parent source directory.
makedep: Use normal installation rules when symlinks are not supported.
comctl32: Move version resource to a separate file.
makefiles: List headers in the makefile if they shadow a global header.
setupapi: Only use the actual source name for the first file in the manifest.
msi/tests: Clear the export directory on copied dll to prevent loading the builtin.
tools: Move the fatal_perror function to the shared header.
tools: Add a shared helper to create a directory.
tools: Add an install tool.
makedep: Use the new install tool.
shell32: Move ShellMessageBox implementation to shlwapi.
configure: Remove a couple of unnecessary checks.
makedep: Don't use LDFLAGS for special programs like the preloader.
Bernhard Übelacker (1):
winegcc: Forward large address aware flag with platform windows.
Brendan Shanks (2):
winemac: Draw black letter/pillarboxes around full-screen content.
winemac: Remove the no-longer-needed macdrv_dll.h.
Connor McAdams (10):
d3dx10/tests: Use readback functions from d3d10core tests for resource readback.
d3dx10/tests: Add tests for the D3DX10_IMAGE_LOAD_INFO structure argument.
d3dx10: Fill pSrcInfo structure in D3DX10_IMAGE_LOAD_INFO if passed in.
d3dx10: Create 3D textures for images representing 3D textures.
d3dx10: Add support for custom texture dimension arguments in D3DX10_IMAGE_LOAD_INFO.
d3dx10: Add support for handling the format field in D3DX10_IMAGE_LOAD_INFO.
d3dx10: Handle filter value passed in via D3DX10_IMAGE_LOAD_INFO.
d3dx10: Add support for generating mipmaps to load_texture_data().
d3dx10: Handle FirstMipLevel argument in load_texture_data().
d3dx10: Pass D3DX10_IMAGE_LOAD_INFO texture creation arguments through in load_texture_data().
Damjan Jovanovic (1):
ntdll: Implement create_logical_proc_info on FreeBSD.
Dmitry Timoshkov (20):
include: Properly declare IADsPathname interface.
adsldp: Properly declare IADs and IADsADSystemInfo interfaces.
include: Add declarations for IADsDNWithString and IADsDNWithBinary interfaces.
activeds: Add IADsDNWithBinary class implementation.
adsldp: Use correct DN in IDirectorySearch::ExecuteSearch().
adsldp: Reimplement IADs::GetInfoEx() on top of IDirectorySearch interface.
adsldp: Implement IADs::GetEx().
adsldp/tests: Add some tests for IADs::GetEx().
adsldp: Implement IADs::get_Schema().
adsldp: Fail to create IADs if it doesn't have an associated schema attribute.
activeds: Retry without ADS_SECURE_AUTHENTICATION for an AD path.
adsldp/tests: Add some tests for IADs::get_Schema().
adsldp: Accept virtual objects in IADsOpenDSObject::OpenDSObject().
adsldp/tests: Add a test for opening schema as an ADs object.
activeds: Add registration of IADsDNWithString and IADsDNWithBinary objects.
adsldp: Add IADsObjectOptions stub implementation.
adsldp: Add support for IADsObjectOptions::GetOption(ADS_OPTION_SERVERNAME).
adsldp: Add support for IADsObjectOptions::GetOption(ADS_OPTION_ACCUMULATIVE_MODIFICATION).
adsldp: Return success for IADsObjectOptions::SetOption(ADS_OPTION_ACCUMULATIVE_MODIFICATION) stub.
activeds: Remove misleading comments.
Elizabeth Figura (9):
ddraw/tests: Fix some tests on modern Windows.
ddraw/tests: Expand and fix tests for EnumDevices().
ddraw: Expose the RGB device for version 1.
ddraw: Reorder ddraw7 enumeration.
ddraw: Rename the RGB device to "RGB Emulation".
ddraw: Fix the size for d3d1 and d3d2 EnumDevices().
user32/tests: Inline process helpers into test_child_process().
ntdll: Also fix up invalid gsbase in the syscall and unix call dispatchers.
shell32/tests: Expand attributes tests.
Eric Pouech (13):
wineconsole: Ensure conhost gets the expected title.
conhost: Support the close-on-exit configuration option.
winedbg: No longer expect a startup sequence in auto mode.
cmd/tests: Add some tests when using "complex" commands in pipes.
cmd: Introduce a new node for describing blocks.
cmd: Refactor run_external_full_path().
cmd: Introduce helper for handling pipe commands.
cmd: Run single commands in pipe in external cmd instance.
cmd: Rewrite binary operations for pipes.
cmd: Add support for IF commands in rewrite.
cmd: Rewrite FOR commands for pipe.
cmd: Rewrite explicit blocks for pipe.
cmd: Remove transition helpers for pipe commands.
Esme Povirk (3):
winbrand: Add stub dll.
winbrand: Partially implement BrandingFormatString.
mscoree: Update Wine Mono to 10.3.0.
Felix Hädicke (1):
winhttp: Type UINT64 for variables content_length and content_read.
Gabriel Ivăncescu (11):
mshtml: Factor out XMLHttpRequest creation.
mshtml: Factor out XMLHttpRequest constructor init.
mshtml: Separate the ifaces and the other XHR fields.
mshtml: Factor out XMLHttpRequest's get_responseText.
mshtml: Factor out XMLHttpRequest's abort.
mshtml: Factor out XMLHttpRequest's open.
mshtml: Factor out XMLHttpRequest's send.
mshtml: Add XDomainRequest factory implementation.
mshtml: Implement XDomainRequest.open().
mshtml: Implement timeout for XDomainRequest.
mshtml: Implement contentType for XDomainRequest.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.329.
Giovanni Mascellani (22):
mmdevapi/tests: Test after sleeping with read_packets().
mmdevapi/tests: Move GetBufferSize() checks to the beginning of the test.
mmdevapi/tests: Move checking the current padding out of read_packets().
mmdevapi/tests: Test after overrunning buffer with read_packets().
mmdevapi/tests: Test after stopping and restarting the client with read_packets().
mmdevapi/tests: Test after stopping, resetting and restarting the client with read_packets().
mmdevapi/tests: Iterate independently on sampling rates, channel counts and sample formats when rendering.
mmdevapi/tests: Tweak the lists of audio format to test.
mmdevapi/tests: Simplify checking IsFormatSupported() result when rendering.
mmdevapi/tests: Check that Initialize() matches IsFormatSupported() when rendering.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_RATEADJUST when rendering.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM when rendering.
mmdevapi/tests: Test extensible wave formats when rendering.
dsound: Remove dead lead-in logic.
dsound: Simplify a condition in DSOUND_MixInBuffer().
mmdevapi/tests: Iterate independently on sampling rates, channel counts and sample formats when capturing.
mmdevapi/tests: Tweak the lists of audio format to test when capturing.
mmdevapi/tests: Simplify checking IsFormatSupported() result when capturing.
mmdevapi/tests: Check that Initialize() matches IsFormatSupported() when capturing.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_RATEADJUST when capturing.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM when capturing.
mmdevapi/tests: Test extensible wave formats when capturing.
Hans Leidekker (1):
bcrypt: Support import/export for generic ECDH/ECDSA algorithms.
Jacek Caban (4):
mshtml: Reset event handlers in document.open.
win32u: Wrap vkGetPhysicalDeviceProperties2[KHR].
win32u: Move LUID handling from winevulkan.
winevulkan: Use generated PE thunks for vkGetPhysicalDeviceProperties2[KHR].
James McDonnell (3):
shell32: Add shield icon.
shell32: Map stock icons to shell32 resource id.
shell32/tests: Add a test for stock icons.
Jiangyi Chen (2):
user32/tests: Add some tests for uiLengthDrawn calculation in DrawTextExW().
user32: Fix uiLengthDrawn calculation in DrawTextExW().
Jinoh Kang (1):
ntdll: Use ReadPointerAcquire to get pointer value in RtlRunOnceComplete.
Louis Lenders (2):
gdi32: Add stub for GetEnhMetaFilePixelFormat.
uxtheme: Add stub for GetThemeBitmap.
Luca Bacci (1):
ntdll: Use ReadPointerAcquire to get pointer value in RtlRunOnceBeginInitialize.
Marc-Aurel Zent (4):
server: Add get_effective_thread_priority() helper.
server: Add set_thread_disable_boost() helper.
server: Boost main thread priority.
ntdll: Switch to CLOCK_BOOTTIME for monotonic counters when available.
Matteo Bruni (6):
d3dx9: Handle inverse transposed matrix in UpdateSkinnedMesh().
d3dx9/tests: Skip ID3DXRenderToSurface tests if BeginScene() fails.
d3dx9/tests: Increase tolerance in test_D3DXSHEvalDirectionalLight().
d3dx9/tests: Add some fallback formats in the texture tests.
d3dx10/tests: Disable size validation test.
d3dx11/tests: Disable size validation test.
Michael Müller (1):
shell32: Set SFGAO_HASSUBFOLDER correctly for normal shellfolders.
Michael Stefaniuc (11):
dmstyle: Move the parsing of the style bands to a helper.
dmstyle: Avoid Hungarian notation in a private struct.
dmstyle: Simplify the load_band() helper.
dmstyle: Move the IStream resetting to the load_band() helper.
dmstyle: Use load_band() for the pattern band too.
dmstyle: Simplify the style IPersistStream_Load method.
dmstyle: Remove no longer needed helpers.
dmstyle: Issue a FIXME for unhandled references to chormaps in a style.
dmscript: Move the loading of the container to a helper.
dmscript: Reimplement the loading of a script.
dmscript: Get rid of the IDirectMusicScriptImpl typedef.
Nikolay Sivov (32):
odbc32: Implement SQLSpecialColumnsW() for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_SEARCH_PATTERN_ESCAPE) for ANSI win32 drivers.
odbc32: Implement SQLColumnsW() for ANSI win32 drivers.
oledb32/tests: Add some more tests for the error object.
oledb32: Rename error object creation helper.
oledb32/error: Store a dynamic id for each error record.
oledb32/errorinfo: Add a helper to access records by index.
oledb32/errorinfo: Return 0-record info with GetGUID().
oledb32/errorinfo: Rename a helper.
oledb32/errorinfo: Return stub error info objects from GetErrorInfo().
oledb32/errorinfo: Reference error object for each returned IErrorInfo instance.
oledb32/errorinfo: Implement GetSource() using error lookup service.
oledb32/errorinfo: Release dynamic error information on cleanup.
oledb32/errorinfo: Implement GetDescription() using error lookup service.
oledb32/errorinfo: Implement GetHelpFile() using error lookup service.
oledb32/errorinfo: Implement GetHelpContext() using error lookup service.
oledb32/errorinfo: Implement IErrorInfo methods of the error object.
oledb32/errorinfo: Implement GetGUID().
oledb32: Consider requested interface in DllGetClassObject().
oledb32: Use public symbol for the Error Object CLSID.
dwrite: Update script information with Unicode 16.0 additions.
dwrite: Explicitly check scripts for "complexity" property.
mfplat/tests: Fix a crash on some Windows systems.
ole32: Move CoTreatAsClass() to combase.
combase: Check for null arguments in CoTreatAsClass().
combase: Remove unreachable failure path in CoTreatAsClass().
ole32: Move CoIsOle1Class() stub to combase.
oleaut32/tests: Enable more tests for VarMul().
oleaut32/tests: Enable more tests for VarEqv().
oleaut32/tests: Enable more tests for VarXor().
oleaut32/tests: Enable more tests for VarAnd().
bcp47langs/tests: Fix a crash when running on Wine.
Owen Rudge (3):
taskschd: Only release ITaskDefinition if creation of RegisteredTask fails.
taskschd/tests: Add test for ITaskDefinition Data property.
taskschd: Implement ITaskDefinition Data property.
Paul Gofman (12):
server: Support NULL job handle in get_job_info().
shell32: Add Screenshots known folder.
win32u: Bump GPU internal driver versions to a future version.
ntdll: Add a stub for EtwEventWriteEx().
advapi32: Add a stub for EnumerateTraceGuidsEx().
windows.media.speech: Add stub IRandomAccessStream interface to SpeechSynthesisStream class.
windows.media.speech: Add stub IInputStream interface to SpeechSynthesisStream class.
windows.media.speech: Add semi-stub for synthesis_stream_input_ReadAsync().
windows.media.speech: Return semi-stub IAsyncInfo from async_with_progress_uint32_QueryInterface().
ntdll/tests: Add more tests for nested exceptions on x64.
ntdll: Make nested_exception_handler() arch specific.
ntdll: Clear nested exception flag at correct frame on x64.
Piotr Caban (17):
odbc32: Add SQLDriverConnectA() implementation.
odbc32: Handle SQL_C_WCHAR conversion in SQLGetData for ANSI drivers.
odbc32: Implement SQLStatisticsW() for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_STRING_FUNCTIONS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_NUMERIC_FUNCTIONS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_TIMEDATE_FUNCTIONS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_SYSTEM_FUNCTIONS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_CONVERT_*) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_CONCAT_NULL_BEHAVIOR) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_EXPRESSIONS_IN_ORDERBY) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_ORDER_BY_COLUMNS_IN_SELECT) for ANSI win32 drivers.
odbc32: Remove prepare_con() helper.
odbc32: Support SQLGetInfo(SQL_OJ_CAPABILITIES) in older drivers.
odbc32: Remove debugstr_sqllen() helper.
odbc32: Remove debugstr_sqlulen() helper.
msvcrt: Optimize _ismbcspace_l for ASCII range.
msvcrt: Support anonymous namespace in __unDName().
Ratchanan Srirattanamet (1):
msi: Record feature in assembly publication when package has 2+ features.
Reinhold Gschweicher (1):
msxml3/element: Implement removeAttributeNode function.
Rémi Bernon (76):
gitlab: Install mesa-vulkan-drivers packages.
server: Move class info to the shared memory object.
win32u: Read class info from the shared memory object.
server: Allocate shared memory objects with dynamic size.
server: Move extra class info to the shared memory object.
win32u: Read extra class info from the shared memory object.
win32u: Ensure D3DKMTQueryVideoMemoryInfo usage is smaller than budget.
winevulkan: Treat LPCWSTR and HANDLE as pointer sized types.
win32u: Pass the name of the extension to replace to get_host_extension.
win32u: Swap VK_KHR_external_memory_win32 with the matching host extension.
win32u: Create D3DKMT global resources for exported Vulkan memory.
win32u: Implement Vulkan memory D3DKMT NT shared handle export.
win32u: Implement Vulkan memory D3DKMT global / shared handle import.
win32u: Implement Vulkan memory D3DKMT handle import from name.
maintainers: Assume maintainership of the GL / VK / D3DKMT areas.
opengl32: Remove deprecated WGL_RENDERER_ID_WINE constant.
win32u: Enumerate and initialize EGL devices as separate platforms.
win32u: Initialize some renderer properties with EGL devices.
win32u: Check maximum context versions with EGL devices.
win32u: Check renderer version and video memory from EGL devices.
winevulkan: Swap VK_KHR_external_semaphore_win32 with the host extension.
win32u: Swap handle types in vkGetPhysicalDeviceExternalSemaphoreProperties.
win32u: Implement export of semaphores as D3DKMT global handles.
win32u: Implement import of semaphores from D3DKMT global handles.
win32u: Implement export of semaphores as D3DKMT shared handles.
win32u: Implement import of semaphores from D3DKMT shared handles.
win32u: Implement import of semaphores from D3DKMT object names.
server: Use the object runtime data size for the reply.
server: Don't crash in d3dkmt_share_objects if attributes are invalid.
win32u: Fix swapped security / root object attributes.
win32u: Introduce a new D3DKMT_ESCAPE_UPDATE_RESOURCE_WINE code.
winevulkan: Swap VK_KHR_external_fence_win32 with the host extension.
win32u: Swap handle types in vkGetPhysicalDeviceExternalFenceProperties.
win32u: Implement export of fences as D3DKMT global handles.
win32u: Implement import of fences from D3DKMT global handles.
win32u: Implement export of fences as D3DKMT shared handles.
win32u: Implement import of fences from D3DKMT shared handles.
win32u: Implement import of fences from D3DKMT object names.
winex11: Flush the thread display after processing every event.
winex11: Remove some arguably unnecessary XFlush calls.
win32u: Check QS_DRIVER bit before calling ProcessEvents.
win32u: Pass the caller class name to NtUserCreateWindowEx.
win32u: Use the caller class name in CREATESTRUCT lpszClass.
win32u: Set CREATESTRUCT lpszClass to the base class name.
winex11: Move colormap ownership to x11drv_client_surface.
winex11: Use the visual depth when creating the client window.
winex11: Lookup visual from EGL config EGL_NATIVE_VISUAL_ID.
win32u: Move fetching window icon out of the drivers.
winex11: Clear WS_VISIBLE to delay showing layered windows.
winex11: Remove unnecessary calls to map_window helper.
winex11: Call window_set_wm_state instead of map_window.
win32u: Use an absolute wait timeout in wait_message.
win32u: Keep waiting on the queue until it gets signaled.
server: Clear QS_RAWINPUT | QS_HARDWARE in get_rawinput_buffer.
win32u: Process internal hardware messages while waiting.
server: Don't set QS_RAWINPUT for internal hardware messages.
winevulkan: Move physical device extension checks around.
winevulkan: Require VK_EXT_map_memory_placed for WOW64 memory export.
winevulkan: Handle WOW64 conversion of SECURITY_ATTRIBUTES.
ntdll: Export wine_server_send_fd to other unix libs.
win32u: Export host memory unix file descriptor.
win32u: Send D3DKMT object fd to wineserver on creation.
win32u: Import vulkan memory from the D3DKMT object fd.
win32u/tests: Avoid closing invalid handle after OpenSharedHandleByName.
win32u: Use local handles in D3DKMT_ESCAPE_UPDATE_RESOURCE_WINE.
win32u: Fix incorrect D3DKMT exported name length.
winex11: Use EGL by default for OpenGL rendering.
server: Target the default or foreground window for internal hardware messages.
winex11: Avoid freeing default colormap.
win32u: Keep exported semaphore fd with the global D3DKMT object.
win32u: Import Vulkan semaphore from the D3DKMT object fd.
win32u: Keep exported fence fd with the D3DKMT global object.
win32u: Import Vulkan fence from the D3DKMT object fd.
winex11: Update WM_HINTS and NET_WM_STATE when WM_STATE isn't.
winex11: Simplify the logic to reset cursor clipping.
winex11: Remove unnecessary extra window hiding condition.
Sven Baars (3):
ntdll: Cast tv_sec to ULONGLONG before multiplying.
mmdevapi/tests: Use %I64u instead of %llu.
winhttp: Use %I64u instead of %llu.
Ugur Sari (1):
netapi32: Add stubs for NetValidatePasswordPolicy and NetValidatePasswordPolicyFree.
Vasiliy Stelmachenok (5):
opengl32: Fix incorrect wglQueryCurrentRendererStringWINE call.
opengl32: Generate entry points for EGL_EXT_device_drm extension.
win32u: Stub WGL_WINE_query_renderer when EGL devices are supported.
win32u: Implement wglQueryCurrentRenderer* with wglQueryRenderer*.
win32u: Implement wglQueryRendererStringWINE with EGL devices.
Vibhav Pant (7):
makedep: Support including generated WinRT metadata in resource files.
cfgmgr32/tests: Add tests to ensure DevGetObjects(Ex) does not de-duplicate requested properties.
windows.devices.enumeration/tests: Add tests for device properties for IDeviceInformation objects.
windows.devices.enumeration/tests: Add tests for IDeviceInformationStatics::FindAllAsyncAqsFilterAndAdditionalProperties.
windows.devices.enumeration: Implement IDeviceInformation::get_Properties.
windows.devices.enumeration: Implement IDeviceInformationStatics::{FindAllAsyncAqsFilterAndAdditionalProperties, CreateWatcherAqsFilterAndAdditionalProperties}.
rometadata: Add stub for IMetaDataTables.
Vijay Kiran Kamuju (1):
bcp47langs: Add stub for GetUserLanguages.
Yuxuan Shui (4):
windows.devices.enumeration: Fix use-after-realloc in devpropcompkeys_append_names.
windows.devices.enumeration: Don't leave dangling pointers if devpropcompkeys_append_names fails.
iphlpapi: Give GetBestRoute2 a SOCKETADDR_INET.
include: Add atomic read/write of pointers.
Zhengyong Chen (1):
imm32: Do not overwrite input context window with GetFocus() in ime_ui_update_window.
Zhiyi Zhang (26):
comctl32/tests: Fix a window leak.
user32: Load version for comctl32 v6 window classes.
comctl32/tests: Add version tests.
comctl32: Separate v5 and v6.
comctl32/tests: Add RegisterClassNameW() tests.
comctl32: Remove user32 control copies in comctl32 v5.
comctl32/tests: Test v6 only exports.
comctl32: Remove taskdialog from comctl32 v5.
comctl32: Remove syslink from comctl32 v5.
comctl32: Remove v6 only exports.
comctl32/tests: Add CCM_SETVERSION tests.
comctl32/toolbar: Don't change Unicode format when handling CCM_SETVERSION.
comctl32/listview: Fix CCM_{GET,SET}VERSION handling.
comctl32/rebar: Fix CCM_{GET,SET}VERSION handling.
comctl32/toolbar: Fix CCM_{GET,SET}VERSION handling.
include: Bump COMCTL32_VERSION to 6.
comctl32/tests: Move toolbar Unicode format tests.
comctl32: Add a helper to handle CCM_SETVERSION messages.
user32/tests: Remove some broken() for older systems in test_comctl32_class().
wintypes: Fix a memory leak.
wintypes: Restore a pointer check in property_value_statics_CreateString().
wintypes: Increase string reference count when property_value_GetString() succeeds.
wintypes: Create a copy for string arrays for property_value_statics_CreateStringArray().
wintypes: Increase string reference count when property_value_GetStringArray() succeeds.
winex11.drv: Ignore fullscreen window config changes.
win32u: Correct a comment.
```
1
0
The Wine development release 10.16 is now available.
What's new in this release:
- Fast synchronization support using NTSync.
- 16-bit apps supported in new WoW64 mode.
- Initial support for D3DKMT objects.
- WinMD (Windows Metadata) files generated and installed.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.16.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.16/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.16 (total 34):
- #7115 Need for Speed III installer fails in Win9X mode, reporting "Could not get 'HardWareKey' value" (active PnP device keys in 'HKEY_DYN_DATA\\Config Manager\\Enum' missing)
- #21855 Lotus Word Pro 9.8: Windows pull down does not show file names
- #27002 Shadow Company: Left for Dead fails with "No usable 3D Devices installed".
- #32572 Multiple games have no character animation (Alpha Polaris, Face Noir, A Stroke of Fate series)
- #38142 Approach fields box only show 3/4 of one line
- #43124 Overwatch loses focus on respawn
- #44817 Some software protection schemes need ntdll.NtSetLdtEntries to modify reserved LDT entries
- #49195 Multiple 4k demoscene OpenGL demos crash on startup (failure to lookup atom 0xC019 'static' from global atom tables)
- #49905 VbsEdit runs wscript.exe with unsupported switches /d and /u
- #50210 Multiple games need D3DX11GetImageInfoFromMemory implementation (S.T.A.L.K.E.R.: Call of Pripyat, Metro 2033, Project CARS)
- #53767 vbscript fails to handle ReDim when variable is not yet created
- #54670 16-bit applications fail in wow64 mode
- #55151 PC crashes after endlessly eating up memory
- #57877 CMD: Parsing issue: Mismatch in parentheses provoked by trailing tab
- #58156 Star Wars: Jedi Knight - Dark Forces II Demo & other games: won't launch, "smackw32.DLL" failed to initialize (macOS)
- #58204 Winecfg Audio tab doesn't enumerate drivers or show output devices, but test button works.
- #58458 Wolfenstein: The Old Blood (Wolfenstein: The New Order) fails to start with EGL opengl backend
- #58480 winebuild ASLR breaks older DLLs
- #58491 Flickering on video-surveilance-app is back
- #58515 Street Chaves only displays a black screen
- #58534 Grand Theft Auto: Vice City intros play with a black screen
- #58602 Screen Issue in Colin McRae Rally 2
- #58637 SimCity 2000 Windows 95 edition doesn't launch in WoW64 mode
- #58651 Legacy of Kain: Blood Omen black screen on startup but with sound using Verok's patch
- #58666 wine 10.14 fails to build in alpine linux x86
- #58688 Regression: Xenia Canary crashes with STATUS_CONFLICTING_ADDRESSES when starting a game on Wine 10.13+ (works on 10.12)
- #58699 Profi cash 12 user interface is rendered mostly black
- #58700 Regression: Direct3D applications show a blank screen under wined3d in 10.15
- #58705 Wolfenstein: The New Order (Wolfenstein: Old Blood) - the screen is black
- #58710 wmic now also prints system properties since 3c8a072b52f2159e68bfd4e471faf284309201ed
- #58716 Camerabag Pro 2025.2 crashes with unhandled exception (unimplemented function propsys.dll.PropVariantToFileTime) on loading a JPEG
- #58730 Images in iTunes have a white background (see picture)
- #58742 winedbg: Internal crash at 00006FFFFF8CB5E5 (pe_load_msc_debug_info)
- #58744 Missing Type on get_type within dlls/msi/suminfo.c
### Changes since 10.15:
```
Adam Markowski (2):
po: Update Polish translation.
po: Update Polish translation.
Alexandre Julliard (43):
ntdll: Delay first thread initialization until process init.
ntdll: Use a separate bitmap to keep track of allocated LDT entries.
ntdll: Use the virtual mutex to protect the LDT data.
include: Use latest definitions for PEB fields to replace the old Fls fields.
ntdll: Store the ldt_copy pointer in the PEB and access it from the client side.
server: Remove the server-side LDT support.
ntdll: Replace LDT flags by explicit bit fields.
krnl386: Replace LDT flags by explicit bit fields.
ntdll: Store LDT limit and bits in the same word.
krnl386: Fetch the ldt copy pointer from the PEB.
winebuild: Fetch the ldt copy pointer from the PEB.
ntdll: Allocate the LDT copy only when needed.
ntdll: Handle return length from ThreadDescriptorTableEntry in the common code.
ntdll: Support NtQueryInformationThread(ThreadDescriptorTableEntry) in new wow64 mode.
ntdll: Support setting LDT entries in new wow64 mode.
ntdll: Keep the DOS area clear in new wow64 mode.
tiff: Import upstream release 4.7.1.
ntdll: Restore the macOS RLIMIT_NOFILE workaround.
ntdll/tests: Always restore the APC dispatcher.
ntdll: Clear alignment flag on signal entry also on x86-64.
ntdll: Consistently output one loaddll trace per module.
ntdll: Only return 32-bit PEB for 32-bit process.
win32u/tests: Avoid reading uninitialized data.
wow64cpu: Store the actual segment registers in the wow64 context.
wow64cpu: Store the 32-bit segment registers in the context when entering 32-bit mode.
wow64cpu: Store the 32-bit segment registers in the context on syscalls.
ntdll: Store the actual segment registers in the wow64 context.
ntdll: Trace some segment registers in 64-bit mode.
makedep: Add rules to build winmd files.
wow64cpu: Store the 32-bit segment registers in the context also on Unix calls.
wow64: Support exceptions happening in 16-bit mode.
ntdll: Support exceptions happening in 16-bit mode.
shell: Fix crash in ShellAbout16() when no icon is specified.
makedep: Don't add a trailing slash to installation directories.
makedep: Add a helper to install a data file.
makedep: Add a helper to install a data file from the source dir.
makedep: Add a helper to install a header file.
makedep: Add a helper to install a program.
makedep: Add a helper to install a script.
makedep: Add a helper to install a tool.
makedep: Add a helper to install a symlink.
makedep: Build the install destination string in the common helper.
makefiles: Install winmd files.
Alistair Leslie-Hughes (5):
comdlg32: Correct show parameter passed to ShowWindow.
cryptui: Correct show parameter passed to ShowWindow.
wordpad: Correct show parameter passed to ShowWindow.
include: Add TABLET_DISABLE_PRESSANDHOLD define.
include: Add TOUCH_COORD_TO_PIXEL define.
Anton Baskanov (10):
dmsynth/tests: Check IDirectMusicSynth::Open() default parameter values.
dmsynth/tests: Actually set parameters to zero before calling IDirectMusicSynth::Open().
dmsynth: Remove special handling of zero parameter values in IDirectMusicSynth::Open().
dmsynth: Don't force enable DMUS_EFFECT_REVERB.
winecfg: Allow configuring default MIDI device.
dmsynth/tests: Add tests for GUID_DMUS_PROP_Volume.
dmsynth: Set gain to 6 dB.
dmsynth: Handle GUID_DMUS_PROP_Volume.
fluidsynth: Disable IIR filter resonance hump compensation.
dmsynth: Pre-attenuate voices by center pan attenuation.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Kölbl (2):
make_unicode: Add some halfwidth mapping exceptions.
mf: Handle start request when session is already running.
Billy Laws (4):
ntdll/tests: Skip broken process suspend test under ARM64 WOW64.
ntdll/tests: Test THREAD_CREATE_FLAGS_SKIP_LOADER_INIT flag.
ntdll: Add a default pBaseThreadInitThunk implementation.
ntdll: Support THREAD_CREATE_FLAGS_SKIP_LOADER_INIT flag.
Christian Costa (1):
d3dx9: Add an initial implementation of UpdateSkinnedMesh().
Connor McAdams (15):
d3dx9/tests: Add tests for D3DFMT_CxV8U8.
d3dx9: Add support for D3DFMT_CxV8U8.
d3dx9: Replace D3DFMT_CxV8U8 with D3DFMT_X8L8V8U8 when creating textures.
d3dx9/tests: Add tests for ATI{1,2} DDS files.
d3dx9/tests: Add a test for DDS_PF_FOURCC flag handling.
d3dx9: Ignore all other DDS pixel format flags if DDS_PF_FOURCC is set.
d3dx10/tests: Add more DDS pixel format tests.
d3dx11/tests: Add more DDS pixel format tests.
d3dx9: Add a tweak to stb_dxt to more closely match native output.
d3dx10: Use shared code in load_texture_data() when possible.
d3dx10: Ignore alpha channel values for WICPixelFormat32bppBGR BMP images.
d3dx10: Add support for decompressing BC4 and BC5 formats.
d3dx10: Add support for compressing BC4 and BC5 formats.
d3dx10: Exclusively use shared code to load DDS files in load_texture_data().
d3dx10: Exclusively use shared code in load_texture_data().
David Kahurani (4):
xmllite/writer: Implement WriteNmToken().
xmllite/writer: Implement WriteQualifiedName().
xmllite/writer: Implement WriteEntityRef().
xmllite/writer: Implement WriteName().
Dmitry Kislyuk (1):
wscript: Ignore /d and /u.
Dmitry Timoshkov (15):
winex11.drv: Remove a no longer valid assert().
ntdll/tests: Add some tests for NtSetLdtEntries.
comdlg32: Properly translate Flags and PageRanges to PRINTDLGEX.
runas: Add initial implementation.
ws2_32/tests: Add a simple test for WSAProviderConfigChange().
ws2_32: Return a socket from WSAProviderConfigChange() stub.
ole32/tests: Add a test for IPropertySetStorage::Open() with STGM_TRANSACTED flag.
ole32: Ignore STGM_TRANSACTED in IPropertySetStorage::Open().
ole32: Print correct entry name in a trace when reading storage dictionary.
ole32: Write padding to a dictionary entry only when necessary.
ole32: Clear dirty flag in IPropertyStorage::Commit().
gdiplus: Handle PixelFormatPAlpha separately in alpha_blend_hdc_pixels().
secur32: Add QuerySecurityContextToken() stub implementation to the LSA wrapper.
d2d1: Implement D2D1CreateDeviceContext().
d2d1: Add a test for D2D1CreateDeviceContext().
Elizabeth Figura (23):
user32/tests: Test MDI menu updating when window titles are changed.
user32: Always refresh the MDI menu on WM_MDISETMENU.
setupapi/tests: Test SetupGetBinaryField().
setupapi: Parse a 0x prefix in SetupGetBinaryField().
ntdll: Check inproc sync signal rights in signal and wait.
wined3d: Use malloc() for the private store.
user32/tests: Test integral resizing of listboxes.
comctl32/tests: Test integral resizing of listboxes.
comctl32/listbox: Ignore the horizontal scrollbar when setting integral height.
ntdll: Introduce a helper to wait on a server-side sync object.
ddraw/tests: Use ANSI versions of user32 functions.
winebth.sys: Silently pass down IRP_MN_QUERY_ID to the PDO.
winebus.sys: Silently pass down IRP_MN_QUERY_ID to the PDO.
wineusb.sys: Silently pass down IRP_MN_QUERY_ID to the PDO.
ntoskrnl.exe: Create keys for devices in HKEY_DYN_DATA\Config Manager\Enum.
ddraw/tests: Do not validate that vidmem D32 is not supported.
ddraw/tests: Fix test_caps() on Windows 98.
ddraw/tests: Test dwZBufferBitDepths.
ddraw: Fill dwZBufferBitDepths.
server: Create an inproc sync for user APC signaling.
ntdll: Validate expected inproc sync type in get_inproc_sync.
ntdll: Use in-process synchronization objects.
ntdll: Cache in-process synchronization objects.
Eric Pouech (22):
certutil: Implement -decodehex command.
cmd: Generate binary files with certutil.
cmd: Only set console's default color when provided.
cmd: Fix some initial env variables setup.
cmd: Fix context detection in cmd /c.
cmd: Don't use page mode for stderr.
cmd: Introduce helper to push/pop i/o handles for redirections.
cmd: Ensure that all output to STD_OUTPUT go through WCMD_output_asis.
cmd: Let WCMD_fgets() work properly when reading from a pipe.
cmd: Use a global input handle for console.
cmd: Let WCMD_ask_confirm Use WCMD_fgets().
cmd: Let WCMD_setshow_date() use WCMD_fgets().
cmd: Let WCMD_setshow_env() use WCMD_fgets().
cmd: Let WCMD_label() use WCMD_fgets().
cmd: Add tests showing that MORE outputs to CONOUT$ not stdout.
cmd: Clean up and enhance MORE command implementation.
cmd: Let WCMD_setshow_time() use WCMD_fgets().
cmd: Let WCMD_wait_for_input() no longer use WCMD_ReadFile().
cmd: Get rid of WCMD_ReadFile.
winedbg: Simplify fetching module name.
dbghelp: Add public symbols out of export table when no debug info is present.
dbghelp: Don't crash on stripped image without DEBUG directories.
Francis De Brabandere (1):
vbscript: Allow redim without a prior dim.
Giovanni Mascellani (15):
mmdevapi/tests: Remove a flaky test.
mmdevapi/tests: Introduce a helper to read many packets when capturing.
mmdevapi/tests: Check that GetBuffer() fails when no packet is available.
mmdevapi/tests: Check that GetBuffer() returns a packet of the expected size.
mmdevapi/tests: Check that the received packet isn't larger than the padding.
mmdevapi/tests: Test releasing a buffer without consuming it and getting it again.
mmdevapi/tests: Check that releasing a buffer of the wrong size fails.
mmdevapi/tests: Test acquiring and releasing the buffer out of order.
mmdevapi/tests: Check that captured packets are consecutive.
mmdevapi/tests: Test calling GetNextPacketSize() after GetBuffer().
mmdevapi/tests: Replace a few tests with read_packets().
mmdevapi/tests: Check discontinuities after having started capturing.
mmdevapi/tests: Check that the capture buffer is empty after processing packets.
mmdevapi/tests: Sleep for 600 ms to guarantee a buffer overrun.
mmdevapi/tests: Remove a wrong test about packet sizes.
Hans Leidekker (8):
wbemprox: Support WBEM_FLAG_NONSYSTEM_ONLY in class_object_Next().
wmic: Only list non-system properties.
bcrypt: Add support for named curves.
msi: Support PID_EDITTIME in MsiSummaryInfoSetProperty().
wbemprox: Implement Win32_LocalTime.
widl: Add metadata support for imported types.
widl: Store name and namespace string index.
widl: Fix order of exclusiveto attribute.
Jacek Caban (2):
winebuild: Use .rdata section instead of .rodata on PE targets.
opengl32: Propagate GL errors from wow64 wrappers.
Jiangyi Chen (2):
ole32/tests: Add tests for StgOpenStorageOnILockBytes().
ole32: Fix the return value for StgOpenStorageOnILockBytes().
Jinoh Kang (10):
fluidsynth: Fix g_atomic_int_add() return value.
fluidsynth: Fix data race in g_get_monotonic_time().
fluidsynth: Fix g_mutex_init() and g_cond_init().
fluidsynth: Fix double close of thread handle in g_thread_unref().
fluidsynth: Use full memory barrier in g_atomic_int_get().
fluidsynth: Round up sleep duration in g_usleep().
fluidsynth: Fix argument flag handling in g_file_test().
fluidsynth: Fix definition of g_atomic_int_dec_and_test().
fluidsynth: Return thread return value from g_thread_join().
fluidsynth: Use InterlockedExchangeAdd() in g_atomic_int_add().
Joe Souza (5):
cmd/tests: Add test to check for TYPE truncation in binary mode.
cmd: Refactor WCMD_copy_loop out of WCMD_ManualCopy, and stop copy loop at EOF for /a mode.
cmd: Fix TYPE behavior (now uses WCMD_copy_loop).
cmd/tests: Test that DIR /Oxxx at the command line overrides DIRCMD=/Oyyy set in the environment.
cmd: Allow DIR /Oxxx at the command line to override DIRCMD=/Oyyy set in the environment.
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (4):
wmic: Add "qfe" alias.
wbemprox: Add two hotfixid's for Windows 7 to Win32_QuickFixEngineering.
wmic: Add a basic help option "/?".
shell32: Add explicit ordinal for SHMultiFileProperties.
Maotong Zhang (1):
ole32/tests: Add some tests for "CurVer" handling.
Michael Müller (1):
user32/listbox: Ignore the horizontal scrollbar when setting integral height.
Nikolay Sivov (65):
dwrite: Always initialize 'contours' flag.
dwrite/layout: Always initialize effective run bounding box.
dwrite/layout: Do not shadow output parameter.
dwrite/opentype: Use mask shifts only for non-zero masks.
win32u/tests: Fix missing test message context pop.
dwrite/tests: Add some more tests for ConvertFontToLOGFONT().
dwrite: Check against local file loader in ConvertFontToLOGFONT().
dwrite: Remove system collection marker.
dwrite: Mark system font sets.
dwrite: Create both WWS and typographic system collections using system font set.
dwrite: Create custom collections using font sets.
dwrite: Simplify collection initialization helper.
dwrite: Remove nested structures in fontset entries.
dwrite: Cache set elements for returned system sets.
dwrite/tests: Add a small test for EUDC collection.
dwrite: Reuse font set entries to return set instances for collections.
xmllite/tests: Add some more tests for WriteNmToken().
mf: Implement MFTranscodeGetAudioOutputAvailableTypes().
dwrite/tests: Add more tests for CreateFontFileReference().
dwrite: Use uppercase paths for local file loader keys.
dwrite: Fail file reference creation when timestamp is inaccessible.
dwrite/tests: Add another CreateFontFaceReference() test with inaccessible file.
xmllite/tests: Add some more implicit flushing tests.
xmllite/write: Improve error handling in WriteCharEntity().
xmllite/writer: Improve error handling in WriteNmToken().
xmllite/writer: Improve error handling in WriteWhitespace().
xmllite/writer: Improve error handling in WriteSurrogateCharEntity().
xmllite/writer: Improve error handling in WriteStartDocument().
xmllite/writer: Improve error handling in WriteCData().
xmllite/writer: Improve error handling in WriteComment().
xmllite/writer: Improve error handling in WriteProcessingInstruction().
xmllite/writer: Remove duplicate check for whitespaces.
xmllite/writer: Improve error handling WriteDocType().
xmllite/writer: Improve error handling in WriteEndElement().
xmllite/writer: Improve error handling in WriteEndDocument().
propsys: Add PropVariantToFileTime() semi-stub.
propsys: Add PropVariantToUInt32Vector() semi-stub.
xmllite/writer: Improve error handling in WriteChars().
xmllite/writer: Improve error handling in WriteString().
xmllite/writer: Improve error handling in WriteFullEndElement().
xmllite/writer: Improve error handling in WriteElementString().
xmllite/writer: Improve error handling in WriteRaw().
xmllite/tests: Add a few more tests for WriteDocType().
xmllite/writer: Improve error handling in WriteAttributeString().
xmllite/writer: Improve error handling when writing namespace defitions.
xmllite/writer: Improve error handling in WriteStartElement().
xmllite/writer: Handle empty names in WriteStartElement().
xmllite/tests: Add more tests for name validation when writing.
xmllite/writer: Improve NCName validation.
xmllite/writer: Remove now unnecessary helper.
xmllite/writer: Output element stack on release.
xmllite/writer: Output element stack on SetOutput().
windowscodecs: Remove IWICWineDecoder interface.
odbc32: Implement SQLErrorW() for ANSI win32 drivers.
odbc32: Add some fixmes for SQLError() on top of driver's SQLGetDiagRec().
odbc32: Implement SQLDriverConnectW() for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_ODBC_API_CONFORMANCE) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_ACTIVE_STATEMENTS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_ACTIVE_CONNECTIONS) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_DRIVER_NAME) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_TXN_CAPABLE) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_DBMS_NAME) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_DATA_SOURCE_READ_ONLY) for ANSI win32 drivers.
odbc32: Implement SQLGetInfoW(SQL_IDENTIFIER_QUOTE_CHAR) for ANSI win32 drivers.
odbc32: Implement SQLExecDirectW() for ANSI win32 drivers.
Patrick Hibbs (1):
inf: Add Windows Media Player related registry keys.
Paul Gofman (24):
iphlpapi/tests: Add more tests for GetBestRoute().
nsi/tests: Add test for ipv4 loopback routes presence.
nsiproxy.sys: Explicitly add loopback entries to ipv4 forward table on Linux.
nsi: Match struct nsi_tcp_conn_dynamic size to up to date Win11.
nsiproxy.sys: Only enumerate active routes in ipv6_forward_enumerate_all() on Linux.
nsiproxy.sys: Improve loopback detection in ipv6_forward_enumerate_all() on Linux.
iphlpapi: Fully zero init address in unicast_row_fill().
iphlpapi: Implement GetBestRoute2().
iphlpapi: Reimplement GetBestInterfaceEx() on top of GetBestRoute2().
iphlpapi/tests: Add tests for best routes.
iphlpapi: Try to disambiguate addresses in GetBestRoute2() by probing system assigned ones.
user32/tests: Add test for CB size after setting font.
user32/combo: Don't update item height on WM_SETFONT for owner drawn CB.
comctl32/tests: Also call test_combo_setfont() with CBS_OWNERDRAWFIXED.
comctl32/combo: Don't update item height on WM_SETFONT for owner drawn CB.
ntdll: Initialize segments registers in the frame in call_user_mode_callback().
ntdll: Handle invalid FP state in usr1_handler() on x86-64.
ntdll: Handle invalid FP state in usr1_handler() on i386.
win32u: Implement NtUserDisplayConfigGetDeviceInfo( DISPLAYCONFIG_DEVICE_INFO_GET_ADAPTER_NAME ).
user32/tests: Add test for (no) messages during TrackMouseEvent() call.
win32u: Use internal message to handle NtUserTrackMouseEvent() for other thread window.
win32u: Move mouse tracking info into per-thread data.
win32u: Track mouse events based on last mouse message data.
user32/tests: Don't leak thread handle in test_TrackMouseEvent().
Ratchanan Srirattanamet (1):
msi: Fix MsiEnumFeatures[AW]() by make it look at the correct registry.
Reinhold Gschweicher (1):
msxml3/tests: Add test for IXMLDOMElement_removeAttributeNode.
Rémi Bernon (68):
server: Create a shared object for window classes.
server: Write class name to the shared memory object.
win32u: Use NtUserGetClass(Long|Name)W in needs_ime_window.
server: Keep a class object locator in the window shared object.
win32u: Read class name from the shared memory object.
win32u: Validate the drawable surface window before reusing.
wineandroid: Keep the client ANativeWindow with the window data.
wineandroid: Use detach_client_surfaces to invalidate drawables.
winex11: Always notify the surface that it has been presented.
server: Use a specific type for internal inproc event syncs.
ntdll: Remove workaround for macOS RLIMIT_NOFILE.
wineserver: Request RLIMIT_NOFILE maximum allowed value.
server: Rename queue is_signaled to get_queue_status.
server: Do not clear queue masks in msg_queue_satisfied.
server: Remove skip_wait flag from set_queue_mask.
win32u: Use a specific opengl_drawable function for context changes.
win32u: Avoid swapping / flushing drawables with destroyed windows.
server: Return early if there's no queue in queue requests.
server: Move hooks_count to the end of the queue_shm_t struct.
win32u: Move the message queue access time to shared memory.
server: Use monotonic_time as queue access time base.
win32u: Check the queue access time from the shared memory.
winex11: Avoid presenting invalid offscreen window rects.
win32u/tests: Test that global d3dkmt handles aren't leaked.
win32u: Use array indexes for d3dkmt handles.
server: Create server-side global D3DKMT objects.
server: Allocate global D3DKMT handles for objects.
win32u: Implement creation of D3DKMT sync objects.
win32u: Implement creation of D3DKMT resource objects.
win32u: Pass D3DKMT object runtime data to wineserver.
win32u: Implement NtGdiDdDDIQueryResourceInfo.
server: Update queue access time in set_queue_mask request.
win32u: Check the queue access time before skipping set_queue_mask.
server: Use the access time and signal state to detect hung queue.
server: Remove the now unnecessary queue waiting flag.
cfgmgr32: Call devprop_filters_validate recursively.
cfgmgr32: Pass filter ranges to helper functions.
win32u: Implement opening of D3DKMT global handles.
win32u: Implement NT sharing of D3DKMT sync objects.
win32u: Implement sharing of D3DKMT resource objects.
win32u: Implement querying D3DKMT objects from shared handles.
win32u: Implement opening D3DKMT objects from shared handles.
win32u: Implement opening D3DKMT shared handles from names.
server: Introduce an internal queue bits field.
server: Use the internal bits to signal the queue sync.
win32u: Process all driver events when waiting on queue.
win32u: Wrap ProcessEvents calls in process_driver_events helper.
win32u: Avoid a crash when unsetting current context.
server: Use a dedicated internal bit for queued hardware messages.
win32u: Check for pending hardware messages after processing events.
win32u: Return TRUE from ProcessEvents after emptying the event queue.
win32u: Notify wineserver after processing every driver event.
server: Continuously poll on queue fd for driver events.
server: Remove mostly unnecessary thread own queue check.
server: Use an internal event sync for message queues.
win32u/tests: Test creating shared resources with D3D9Ex.
win32u/tests: Test importing shared resources into D3D9Ex.
win32u/tests: Test importing shared resources into OpenGL.
win32u/tests: Test creating shared resources with D3D10.
win32u/tests: Test creating shared resources with D3D11.
win32u/tests: Test creating shared resources with D3D12.
win32u/tests: Test creating shared resources with Vulkan.
win32u/tests: Test importing shared resources into Vulkan.
server: Use a separate helper to create internal event syncs.
server: Explicitly create an internal server sync for debug events.
server: Signal event server / inproc syncs using the signal op.
server: Use struct object pointers for object syncs.
ntdll: Receive the user apc inproc sync fd on alertable waits.
Sebastian Lackner (1):
user32: Refresh MDI menus when DefMDIChildProc(WM_SETTEXT) is called.
Stian Low (2):
ntdll: Implement NtSetEventBoostPriority().
ntdll/tests: Add tests for NtSetEventBoostPriority().
Tim Clem (1):
wbemprox: Use setupapi to enumerate video controllers.
Vasiliy Stelmachenok (1):
win32u: Handle errors when creating EGL context.
Vibhav Pant (9):
cfgmgr32: Always check the DEVPROP_OPERATOR_EQUALS mask while evaluating comparison filters.
propsys: Use VT_LPWSTR as the property type for System.Devices.DeviceInstanceId.
windows.devices.enumeration/tests: Add tests for IDeviceInformationStatics::{FindAllAsyncAqsFilter, CreateWatcherAqsFilter}.
windows.devices.enumeration: Support parsing AQS filters in IDeviceInformationStatics::{FindAllAsyncAqsFilter, CreateWatcherAqsFilter}.
maintainers: Add a section for Windows.Devices.Enumeration.
windows.devices.enumeration: Ensure that all AQS logical operators bind left to right.
cfgmgr32/tests: Add additional tests for device query filters.
cfgmgr32: Implement support for logical operators in DEVPROP_FILTER_EXPRESSION.
vccorlib140: Emit RTTI for Platform::Type.
Yuxuan Shui (1):
mf: Add a SUBMITTED command state to avoid multiple submission of the same op.
Zhengyong Chen (1):
imm32: Ensure HIMC is unlocked in ImmGenerateMessage.
```
1
0
The Wine development release 10.15 is now available.
What's new in this release:
- Unicode character tables updated to Unicode 17.0.0.
- Zip64 support in Packaging services.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.15.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.15/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.15 (total 16):
- #51345 Regression: Visual Studio 2005 "package load failure"
- #56278 wayland: dropdowns is rendered as toplevel
- #57192 X11DRV_SetCursorPos breaks when xinput "Coordinate Transformation Matrix" is customized
- #57444 Multiple games crashes with new wow64 ("pop gs" behaves differently in 64bit compatibility mode) (Exertus darkness, Claw, Bloodrayne Demo)
- #57478 Sims 2 black-screen when running with Nvidia 470.256.02 and dxvk 1.10.3
- #57912 cmd: not every ( is a command grouping
- #57913 cmd: echo(abc is misparsed
- #58027 trivial use of Win32 GNU make fails
- #58335 Wine can fail if avx is not available
- #58503 Resource leak in wayland_pointer_set_cursor_shape can cause mouse cursor to dissappear after exhausting gdi handles
- #58513 Wine 10.9 completely broke (LGA775 Core2Quad)
- #58585 unnamed keymap layout leads to null pointer dereference in find_xkb_layout_variant
- #58614 wine cmd prints "::" style comments
- #58619 Steam fails to launch
- #58635 CapCut crashes upon launch, needs unimplemented function IPHLPAPI.DLL.SetPerTcp6ConnectionEStats
- #58636 CapCut installer fails: CreateFileW with FILE_ATTRIBUTE_DIRECTORY | FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_POSIX_SEMANTICS should create a directory instesd of a file.
### Changes since 10.14:
```
Alex Henrie (1):
wineboot: Fix a memory leak in create_computer_name_keys.
Alexandre Julliard (15):
faudio: Import upstream release 25.09.
png: Import upstream release 1.6.50.
tools: Upgrade the config.guess/config.sub scripts.
makedep: Build tool names once at startup.
ntdll: Swap the mxcsr register value between PE and Unix.
gitlab: Merge the platform docker files back into a single file.
gitlab: Install the conflicting i386 gstreamer packages manually.
ntdll: Save mxcsr explicitly in the xsavec code path.
maintainers: List gitlab usernames.
gitlab: Add CI job to trigger winehq-bot processing.
ntdll: Move some LDT definitions to the private header.
ntdll: Add a helper to update the LDT copy.
ntdll: Add helpers to build some specific LDT entries.
ntdll: Always use 32-bit LDT base addresses.
nls: Update character tables to Unicode 17.0.0.
Alexandros Frantzis (1):
winewayland: Fix GDI object leak.
Alfred Agrell (1):
preloader: Make thread_ldt reference position independent.
Alistair Leslie-Hughes (2):
winmm: Always call MCI_UnmapMsgAtoW in mciSendCommandA.
winmm: MCI_MapMsgAtoW return error code directly instead of a tri-value.
Bartosz Kosiorek (1):
gdi32: From Windows 2000 FixBrushOrgEx() is a NOP.
Bernhard Übelacker (1):
winedbg: Reserve more memory for symbol value (ASan).
Billy Laws (2):
ntdll/tests: Add THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH test.
ntdll: Support THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH flag.
Brendan Shanks (4):
crypt32: Avoid syscall fault in process_detach() if GnuTLS failed to load.
secur32: Avoid syscall fault in process_detach() if GnuTLS failed to load.
ntdll: Fix crash in check_invalid_gsbase() on macOS.
dbghelp: Don't try to load 64-bit ELF/Mach-O debug info in a Wow64 process.
Carlo Bramini (1):
winmm: WaveOutGetID: Return correct id for WAVE_MAPPER.
Christian Tinauer (1):
crypt32: Accept PKCS12_ALWAYS_CNG_KSP flag and fall back to standard import.
Connor McAdams (12):
d3dx10/tests: Add more DDS file DXGI format mapping tests.
d3dx10/tests: Add more DDS file header handling tests.
d3dx10: Add support for parsing DXT10 DDS headers to shared code.
d3dx10: Only validate header size for DDS files in d3dx10.
d3dx10: Add support for DXGI formats in d3dx_helpers.
d3dx10: Exclusively use shared code for parsing DDS files in get_image_info().
d3dx10: Add support for d3dx10+ image file formats in shared code.
d3dx10: Exclusively use shared code for parsing all files in get_image_info().
d3dx11_42: Don't share source with d3dx11_43.
d3dx11/tests: Add a helper function for checking image info structure values.
d3dx11/tests: Import more image info tests from d3dx10.
d3dx11: Implement D3DX11GetImageInfoFromMemory() using shared code.
Dmitry Timoshkov (1):
gdiplus: Manually blend to white background if the device doesn't support alpha blending.
Elizabeth Figura (7):
ntdll: Add some traces to synchronization methods.
ntdll: Add stub functions for in-process synchronization.
ntdll: Retrieve and cache an ntsync device on process init.
server: Create inproc sync events for message queues.
server: Add a request to retrieve the inproc sync fds.
ntdll: Check inproc sync handle access rights on wait.
quartz/tests: Fix a failing test in test_video_window_owner().
Eric Pouech (14):
cmd/tests: Add tests about opening/closing parenthesis.
cmd: Don't create binary node with NULL RHS.
cmd: Simplify builtin ECHO implementation.
cmd: Fix handling of '(' in echo commands.
cmd: Fix unmatched closing parenthesis handling.
cmd/tests: Add more tests about ERASE builtin command.
cmd: Fix return code for ERASE builtin command.
cmd/tests: Add tests about (not) echoing labels.
cmd: Don't display labels when echo mode is ON.
cmd: Simplify setting console colors.
cmd: Reuse exiting execution related helpers in wmain().
cmd: Finish moving command line handling in dedicated helpers.
cmd: cmd /c or /k shall handle ctrl-c events properly.
cmd: No longer reformat output according to console width.
Gabriel Ivăncescu (13):
mshtml: Implement DOMParser constructor and instance object.
mshtml: Move document dispex info initialization to create_document_node.
mshtml: Use Gecko's responseXML to create the XML document in IE10 and up.
mshtml: Fallback to text/xml for unknown content types ending with +xml in get_mimeType.
mshtml: Implement anchors prop for XML documents.
mshtml: Implement DOMParser's parseFromString.
mshtml: Use actual prop name after looking it up case insensitively on window.
mshtml: Set non-HTML elements' prototype to ElementPrototype.
mshtml: Expose toJSON only in IE9+ modes.
mshtml: Don't expose toString from Performance* objects' prototypes in IE9+ modes.
mshtml: Implement toJSON() for PerformanceTiming.
mshtml: Implement toJSON() for PerformanceNavigation.
mshtml: Implement toJSON() for Performance.
Gerald Pfeifer (1):
ntdll: Fix the build of check_invalid_gsbase() on FreeBSD.
Hans Leidekker (15):
include: Comment references to undefined member interfaces.
include: Define IContentTypeProvider, IInputStream and IInputStreamReference.
include: Define IUser.
include: Define IAcceleratorKeyEventArgs and ICoreAcceleratorKeys.
include: Define IKeyCredential and related types.
include: Define IRfcommServiceId.
msi: Allow pre-2.0 assemblies to be installed using 2.0 fusion.
include: Define more USB interfaces.
include: Define IImageDisplayProperties and IVideoDisplayProperties.
include: Define IMediaEncodingProperties and IAudioEncodingPropertiesWithFormatUserData.
include: Define IHolographicCamera and related types.
include: Define IOnlineIdServiceTicket and IOnlineIdSystemIdentity.
include: Add missing parameterized interface declarations.
widl: Require member interfaces to be defined.
widl: Support additional deprecated declarations.
Haoyang Chen (1):
ntdll: Fix a buffer overflow in wcsncpy.
Jacek Caban (8):
opengl32/tests: Add memory mapping tests.
opengl32: Simplify wow64 memory mapping error handling.
opengl32: Implement wrap_wglCreateContext on top of wrap_wglCreateContextAttribsARB.
opengl32: Factor out free_context.
opengl32: Introduce a wow64 buffer wrapper.
opengl32: Move copy buffer allocation to Unix lib.
opengl32: Use generated PE thunks for memory mapping functions.
opengl32: Use generated PE thunks for memory unmapping functions.
Joe Souza (1):
cmd: Treat COPY from CON or CON: as ASCII operation.
Kevin Puetz (1):
oleaut32: Fix UDT record block leak in VariantClear().
Louis Lenders (2):
iphlpapi: Add stub for SetPerTcp6ConnectionEStats.
iphlpapi: Add stub for GetPerTcp6ConnectionEStats.
Matteo Bruni (7):
hidclass: Set Status for pending IRPs of removed devices to STATUS_DEVICE_NOT_CONNECTED.
hidclass: Fix check for early IRP cancellation.
nsiproxy: Fix check for early IRP cancellation.
dinput/tests: Fix check for early IRP cancellation.
http.sys: Fix check for early IRP cancellation.
winetest: Print Windows revision (UBR).
d3dx10_33/tests: Enable tests.
Mohamad Al-Jaf (12):
include: Add windows.media.playback.idl.
windows.media.playback.backgroundmediaplayer: Add stub dll.
windows.media.playback.backgroundmediaplayer: Add IBackgroundMediaPlayerStatics stub.
windows.media.playback.mediaplayer: Implement IActivationFactory::ActivateInstance().
windows.media.mediacontrol: Stub ISystemMediaTransportControls::add/remove_ButtonPressed().
windows.media.mediacontrol: Stub ISystemMediaTransportControlsDisplayUpdater::ClearAll().
windows.media.mediacontrol: Implement ISystemMediaTransportControls::put/get_IsStopEnabled().
windows.media.mediacontrol: Stub ISystemMediaTransportControlsDisplayUpdater::put/get_Thumbnail().
windows.media.playback.backgroundmediaplayer: Implement IBackgroundMediaPlayerStatics::get_Current().
include: Add IMediaPlayer2 definition.
windows.media.playback.mediaplayer: Add IMediaPlayer2 stub.
windows.media.playback.mediaplayer: Implement IMediaPlayer2::get_SystemMediaTransportControls().
Nikolay Sivov (17):
opcservices/tests: Use wide-char strings.
opcservices/tests: Remove Vista workarounds.
opcservices/tests: Use stricter return values checks.
opcservices: Fix MoveNext() at the collection end.
opcservices/tests: Add more tests for MovePrevious().
opcservice: Fix iteration with MovePrevious().
opcservices/tests: Use message context in some tests.
opcservices: Make it clear which structures are specific to zip32.
opcservices: Use 64-bit file sizes.
opcservices: Add support for writing Zip64 packages.
opcservices: Improve error handling when writing archives.
opcservices: Use stdint types for the file header.
opcservices: Set compression method according to part's compression options.
opcservices: Use explicit field for the part name.
combase/tests: Suppress trace messages from the test dll.
opcservices: Remove separate part name allocation.
vccorlib: Fix out of bounds access in debug helper (Coverity).
Patrick Hibbs (2):
mmdevapi: Set DEVPKEY_Device_Driver during MMDevice_Create().
winecfg: Fix audio tab by fetching the default device's audio driver.
Paul Gofman (15):
ntdll: Zero aligned size in initialize_block().
winevulkan: Handle NULL buffer pointer in vkFreeCommandBuffers().
nsiproxy.sys: Use a separate critical section to sync icmp echo IRP cancel.
iphlpapi: Use IOCP callback for echo async completion.
win32u: Bump AMD internal driver version.
kernel32/tests: Add tests for UnhandledExceptionFilter().
kernelbase: Avoid recursive top exception filter invocation for nested exceptions.
kernelbase: Return EXCEPTION_CONTINUE_SEARCH from UnhandledExceptionFilter() for nested exceptions.
dbghelp: Use GetCurrentProcess() special handle in EnumerateLoadedModulesW64() if possible.
wbemprox: Fix CIM_UINT16 handling in to_safearray().
wbemprox: Add MSFT_PhysicalDisk table.
wbemprox: Return an error from class_object_Next() for non-zero flags.
wbemprox: Enumerate system properties in class_object_Next().
iphlpapi: Fix ipforward_row_cmp().
iphlpapi: Fix udp_row_cmp().
Rémi Bernon (90):
dataexchange: Register runtimeclasses explicitly.
geolocation: Register runtimeclasses explicitly.
graphicscapture: Register runtimeclasses explicitly.
hvsimanagementapi: Register runtimeclasses explicitly.
iertutil: Register runtimeclasses explicitly.
threadpoolwinrt: Register runtimeclasses explicitly.
windows.devices.bluetooth: Register runtimeclasses explicitly.
windows.devices.enumeration: Register runtimeclasses explicitly.
windows.devices.usb: Register runtimeclasses explicitly.
windows.gaming.input: Register runtimeclasses explicitly.
win32u: Pass struct vulkan_physical_device pointer to drivers.
winevulkan: Simplify VkDefine and typedefs generation.
winevulkan: Generate structs and pointers for wayland platform.
winevulkan: Generate structs and pointers for macos platform.
winevulkan: Generate structs and pointers for xlib platform.
winevulkan: Simplify function pointer generation.
winevulkan: Simplify struct generation ordering.
windows.gaming.ui.gamebar: Register runtimeclasses explicitly.
windows.media.devices: Register runtimeclasses explicitly.
windows.media.mediacontrol: Register runtimeclasses explicitly.
windows.media.speech: Register runtimeclasses explicitly.
windows.media: Register runtimeclasses explicitly.
windows.networking.connectivity: Register runtimeclasses explicitly.
windows.networking.hostname: Register runtimeclasses explicitly.
windows.perception.stub: Register runtimeclasses explicitly.
windows.security.authentication.onlineid: Register runtimeclasses explicitly.
windows.security.credentials.ui.userconsentverifier: Register runtimeclasses explicitly.
windows.web: Register runtimeclasses explicitly.
include: Remove now unnecessary DO_NO_IMPORTS ifdefs.
winevulkan: Move physical_device memory properties to vulkan_driver.h.
winevulkan: Move extensions to struct vulkan_physical_device.
winevulkan: Get rid of struct wine_vk_phys_dev.
winevulkan: Move physical device pointers to struct vulkan_instance.
win32u: Move device memory object wrapper from winevulkan.
win32u: Move external host memory allocation to a separate helper.
include: Add declarations for some d3dkmt functions.
win32u: Stub NtGdiDdDDICheckOcclusion syscall.
win32u/tests: Move d3dkmt tests from gdi32.
win32u/tests: Check D3DKMT local handle allocation.
win32u: Implement d3dkmt local handle allocation.
winevulkan: Order the win32 structs as other structs.
winevulkan: Simplify struct conversion enumeration.
winevulkan: Build the struct extension list lazily.
winevulkan: Enumerate struct extensions with the registry structs.
winevulkan: Avoid converting unexposed extensions structs.
winevulkan: Generate structs for external memory fds.
winevulkan: Force copy some memory, buffer and image struct chains.
win32u: Strip unsupported structs from vkAllocateMemory chain.
win32u: Strip unsupported structs from vkCreateBuffer chain.
win32u: Strip unsupported structs from vkCreateImage chain.
win32u: Hook VK_KHR_external_memory_win32 functions.
winevulkan: Remove leftover external image functions moved to win32u.
win32u: Pass memory type flags to allocate_external_host_memory.
win32u: Fix missing NULL initialization of NtAllocateVirtualMemory parameter.
wintypes/tests: Check IAgileObject interface on map objects.
wintypes: Introduce a generic IMap stub implementation.
wintypes: Implement a generic IMap<HSTRING, IInspectable>.
wintypes: Introduce a locked IMap<HSTRING, IInspectable> implementation.
winevulkan: Force copying wrapped handle arrays.
winevulkan: Force copying the VkSubmitInfo(2) struct chains.
winevulkan: Move command buffer wrapper to vulkan_driver.h.
win32u: Hook vkQueueSubmit and vkQueueSubmit2 functions.
win32u: Hook VK_KHR_win32_keyed_mutex related functions.
win32u: Hook VK_KHR_external_semaphore_win32 related functions.
win32u: Hook VK_KHR_external_fence_win32 related functions.
winebus: Match match gamepad dpad buttons with XUSB / GIP.
win32u: Stub NtGdiDdDDIOpenNtHandleFromName.
wow64win: Initialize output NtGdiDdDDI* parameters too.
wow64win: Fix NtGdiDdDDICreateAllocation* output conversion.
win32u/tests: Test D3DKMT synchronization object creation.
win32u/tests: Test D3DKMT keyed mutex object creation.
win32u/tests: Test D3DKMT allocation object creation.
win32u/tests: Test D3DKMT objects NT handle sharing.
winevulkan: Simplify device enabled extension conversion.
winevulkan: Check surface_maintenance1 before using swapchain_maintenance1.
win32u: Assume the VkPresentInfoKHR struct is copied in the thunks.
winevulkan: Force copy of the VkSemaphoreSubmitInfo struct chain.
win32u: Wrap vulkan semaphore objects.
win32u: Wrap vulkan fence objects.
d3d8/tests: Flag some tests as todo_wine.
d3d9/tests: Flag some tests as todo_wine.
opengl32/tests: Test that window back buffers are shared.
include: Use the client pointer in debugstr_opengl_drawable.
win32u: Move memory DC pbuffer handling out of context_sync_drawables.
win32u: Use context->draw directly when flushing context.
win32u: Swap the last window drawable if there's no context.
win32u: Introduce an context_exchange_drawables helper.
win32u: Rename window opengl drawable to current_drawable.
win32u: Keep a separate pointer for unused opengl drawable.
win32u: Don't store the window OpenGL drawables on the DCs.
Santino Mazza (2):
dinput: Set per monitor aware DPI awareness in the worker thread.
win32u: Map raw coordinates to virtual screen in low-level hooks.
Spencer Wallace (1):
msxml3: Correct looping of Document Element properties.
Tim Clem (1):
dxcore: Use a static structure for the adapter factory.
Tyson Whitehead (2):
winebus: Unspecified condition blocks are full strength.
joy.cpl: Play condition effects on indicated axis too.
Vibhav Pant (15):
opcservices/tests: Add tests for ReadPackageFromStream.
opcservices/tests: Add some more tests for MoveNext().
windows.applicationmodel/tests: Add tests for exposing inproc WinRT classes through the manifest.
opcservices: Mark entries according to compression mode.
wintypes: Make a copy of the passed string in IPropertyValueStatics::CreateString.
combase: Add stubs for HSTRING_User{Size, Marshal, Unmarshal, Free}.
combase/tests: Add tests for HSTRING marshaling methods.
combase: Implement HSTRING_UserSize.
combase: Implement HSTRING_UserMarshal.
combase: Implement HSTRING_User{Unmarshal, Free}.
combase/tests: Add RoGetAgileReference tests with agile objects.
combase: Don't marshal objects that implement IAgileObject in RoGetAgileReference.
wintypes/tests: Add tests for PropertySet::{Insert, Lookup, HasKey}.
wintypes/tests: Add tests for IMapView.
wintypes: Introduce a serial to track IMap state changes.
Yuxuan Shui (2):
opcservices: IOpcPart::GetContentType takes LPWSTR, not BSTR.
winegstreamer: Free stream buffers before wg_parser_disconnect.
Zhiyi Zhang (4):
gdi32: Use the maximum number of colours when biClrUsed is zero.
gdi32/tests: Test recording StretchDIBits() for bitmaps with zero biClrUsed field in EMFs.
gdi32/tests: Test recording SetDIBitsToDevice() for bitmaps with zero biClrUsed field in EMFs.
Revert "wineps: Use the correct colours when a monochrome bitmap without a colour table is the source.".
Ziqing Hui (2):
mf/tests: Test GetOutputStatus for video processor.
winegstreamer: Add semi-stub implementation for video_processor_GetOutputStatus.
Zowie van Dillen (2):
opengl32/tests: Add 16-bit bitmap rendering tests.
winex11: Check pbuffer bit instead of pixmap bit for bitmap rendering.
```
1
0
The Wine development release 10.14 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 1.17.
- Mono engine updated to version 10.2.0.
- Support for ping on IPv6.
- Gitlab CI now running on Debian Trixie.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.14.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.14/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.14 (total 19):
- #18233 Approach underscore bar inactive with multiple database open
- #27974 warn:winsock:wsaErrno errno 115, (Operation now in progress).
- #35622 VemsTune: program crashes on switching view modes
- #55557 wpcap:wpcap crashes on macOS
- #56639 Phantasy Star Online: Blue Burst: various missing/black textures
- #57027 GetFinalPathNameByHandleW does not handle paths exceeding MAX_PATH (260 chars)
- #57835 ROCS Show Ready crashes on unimplemented function msvcp140_atomic_wait.dll.__std_tzdb_get_time_zones
- #57946 Multiple games need maxAnisotropy values handling (GreedFall, Mafia III: Definitive Edition)
- #58141 [MDK] [WOW64] Stack overflow
- #58169 Trae installer fails: "Failed to expand shell folder constant userpf"
- #58334 ShowStopper crashes on unimplemented function ntdll.dll.RtlQueryProcessHeapInformation
- #58403 Death to Spies: intro videos show black screen (audio works)
- #58482 Roblox Studio installer crashes on unimplemented function api-ms-win-core-memory-l1-1-3.dll.VirtualProtectFromApp
- #58531 MemoryRegionInformation incorrectly returns STATUS_SUCCESS for freed memory regions
- #58574 Multiple applications require gameinput.dll (Fritz Chess Coach, Le Mans Ultimate)
- #58577 MsiGetComponentPath/MsiLocateComponent doesn't resolve a reference to .NET GAC
- #58600 Command line tab completion works improperly with files/directories containing delimiter characters
- #58608 SCardTransmit should work with pioSendPci=NULL
- #58615 winepath changes behaviour and strips ending path separator now
### Changes since 10.13:
```
Adam Markowski (2):
po: Update Polish translation.
po: Update Polish translation.
Alexandre Julliard (39):
tapi32: Move registry keys out of wine.inf.
win32u: Add NtGdiCancelDC() stub.
win32u: Implement NtUserGetCursorPos().
win32u: Implement NtGdiGet/SetMiterLimit().
server: Add a helper to check a process wow64 status.
include: Always use Unicode string constants for the PE build.
server: Use LIST_FOR_EACH_ENTRY in more places.
cabinet: Use the correct structure for DllGetVersion().
rsaenh: Don't reset key when nothing was encrypted.
winebuild: Only allow thiscall functions on i386.
server: Fix get_next_hook return value when no hook is found.
kernel32: Preserve trailing slash for existing paths in wine_get_dos_file_name().
kernel32: Preserve trailing slash for existing paths in wine_get_unix_file_name().
win32u: Define all stubs as syscalls.
vkd3d: Import upstream release 1.17.
sxs: Add support for language in manifest names.
sxs: Support XML escaping in manifest names.
sxs: Take manifest language into account when building the file name.
sxs: Install policy files the same way as normal manifests.
win32u: Disable some unused code when EGL is missing.
gitlab: Update CI image to debian trixie.
setupapi: Use SetupDiGetActualSectionToInstallW instead of duplicating that logic.
setupapi: Add support for Include directive.
setupapi: Add support for Needs directive.
wine.inf: Use Needs directive to reduce duplication.
winedump: Remove const from a member that is written to.
kernel32/tests: Clear FPU status flags before checking control word.
ntdll/tests: Also test mxcsr register in user callbacks.
ntdll/tests: Use a direct syscall to test xmm registers.
gdi32/tests: Remove some workarounds for NT4.
gdi32: Handle the default color profile on the GDI side.
gdi32: Handle the ICM\mntr key on the GDI side.
winex11: Create the ICM profile file at startup.
win32u: Remove the __wine_get_icm_profile() syscall.
win32u: Remove the GetICMProfile driver entry point.
amstream/tests: Use nameless unions/structs.
qcap: Use nameless unions/structs.
qedit: Use nameless unions/structs.
winegstreamer: Use nameless unions/structs.
Alexandros Frantzis (2):
winewayland: Mark only windows with per-pixel alpha as layered.
winewayland: Handle NULL values for xkb layout name and description.
Anders Kjersem (1):
advpack: Support ADN_DEL_IF_EMPTY flag in DelNode().
Attila Fidan (1):
winegstreamer/wma_decoder: Return S_OK from AllocateStreamingResources().
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Bernhard Übelacker (8):
ntdll/tests: Mark test as broken with old Windows versions.
ntdll: Fix XState data initialisation with non-AVX CPUs.
kernel32/tests: Test paths in GetFinalPathNameByHandleW exceeding MAX_PATH.
kernel32: Handle paths in GetFinalPathNameByHandleW exceeding MAX_PATH.
bluetoothapis/tests: Avoid crash in gatt tests with some Windows versions.
kernelbase/tests: Fix test failing with old Windows 10.
ntdll/tests: Add check for len and avoid CommitSize with old Windows.
propsys/tests: Skip tests of properties not supported by old Windows.
Brendan McGrath (1):
winegstreamer: Only add the capsfilter for avdec_h264.
Brendan Shanks (1):
ntdll: Implement NtGetCurrentProcessorNumber() with pthread_cpu_number_np() when available on macOS.
Connor McAdams (8):
ntoskrnl/tests: Add tests for getting IRP_MN_QUERY_DEVICE_TEXT based device properties.
ntoskrnl: Set DEVPKEY_Device_BusReportedDeviceDesc from driver.
winebus: Handle IRP_MN_QUERY_DEVICE_TEXT.
hidclass: Print a warning for unhandled IRP_MN_QUERY_DEVICE_TEXT text types.
winebth.sys: Print a warning for unhandled IRP_MN_QUERY_DEVICE_TEXT text types.
wineusb.sys: Print a warning for unhandled IRP_MN_QUERY_DEVICE_TEXT text types.
winebus: Generate unique container IDs when adding devices.
winebus: Override device instance enumerator string if bus type is known.
Conor McCarthy (1):
winegstreamer: Use a stride alignment of 2 for NV12 in align_video_info_planes().
Dmitry Timoshkov (3):
comdlg32: PRINTDLG_UpdatePrintDlgW() should update dmCopies field in DEVMODE.
kernel32/tests: Test FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_POSIX_SEMANTICS | FILE_ATTRIBUTE_DIRECTORY.
kernelbase: For FILE_FLAG_BACKUP_SEMANTICS also handle FILE_ATTRIBUTE_DIRECTORY in CreateFile.
Elizabeth Figura (3):
qcap/tests: Test subtype validation in QueryAccept() and SetFormat().
quartz/tests: Add more tests for video window style.
quartz: Preserve the current visibility in IVideoWindow::put_Style().
Esme Povirk (1):
mscoree: Update Wine Mono to 10.2.0.
Gabriel Ivăncescu (4):
jscript: Allow objects that expose "length" prop for Function.apply under certain conditions.
jscript: Return proper error when passing wrong type to Function.apply.
jscript: Fallback to Object's toString for Arrays when 'this' isn't an array in ES5 mode.
jscript: Fix error value when passing non-string 'this' to String's toString.
Georg Lehmann (3):
winevulkan: Reorder bitmasks to handle aliases correctly.
winevulkan: Disable h265 extensions.
winevulkan: Update to VK spec version 1.4.325.
Gerald Pfeifer (1):
winebus.sys: Use uint16_t instead of __u16.
Hans Leidekker (11):
msi: Make assembly caches global.
msi: Handle .NET assemblies in MSI_GetComponentPath().
rsaenh: Use TomCrypt for hash implementations.
include: Comment references to undefined static interfaces.
include: Define IRandomAccessStreamStatics.
include: Define ISystemMediaTransportControlsStatics.
widl: Require static interfaces to be defined.
widl: Require activation interfaces to be defined.
widl: Require composition interfaces to be defined.
widl: Require runtimeclass contracts to be defined.
winscard: Handle NULL send parameter in SCardTransmit().
Haoyang Chen (1):
qcap/vfwcapture: Validate the subtype in find_caps().
Henri Verbeet (4):
d3d11/tests: Test that sampler states with anisotropic filtering and zero MaxAnisotropy can be created.
d3d10core/tests: Test that sampler states with anisotropic filtering and zero MaxAnisotropy can be created.
d3d11: Disable anisotropic filtering for sampler states with zero MaxAnisotropy.
wined3d: Disable anisotropic filtering for zero max_anisotropy in sampler_desc_from_sampler_states().
Ignacy Kuchciński (1):
windows.storage: Split ApplicationData.
Jacob Czekalla (6):
hhctrl.ocx: Check for a NULL web_browser before QueryInterface.
wininet/tests: Add more http time test strings.
wininet: Fix parsing order of http times.
wininet: Fix year parsing to include millennium.
comctl32/treeview: Return from TREEVIEW_LButtonDown when the treeview handle is invalid.
comctl32/tests: Add a test for treeview deletion during NM_CLICK in LBUTTONDOWN.
Jiangyi Chen (1):
opengl32: Perform cAccumBits filtering if specified in wglChoosePixelFormat().
Joe Souza (1):
cmd: Treat most delimiters as literals if user specified quotes.
Keigo Okamoto (3):
winealsa: Send All Notes Off and Reset Controllers.
winecoreaudio: Send All Notes Off and Reset Controllers.
wineoss: Send All Notes Off and Reset Controllers.
Marc-Aurel Zent (5):
ntdll: Implement ProcessPriorityBoost class in NtQueryInformationProcess.
ntdll: Implement ProcessPriorityBoost class in NtSetInformationProcess.
kernelbase: Implement GetProcessPriorityBoost.
kernelbase: Implement SetProcessPriorityBoost.
kernel32/tests: Add tests for GetProcessPriorityBoost/SetProcessPriorityBoost.
Mike Kozelkov (1):
winbio: Add stub DLL.
Mohamad Al-Jaf (9):
cryptxml: Add stub dll.
include: Add cryptxml.h.
cryptxml: Implement CryptXmlOpenToDecode() stub.
cryptxml: Implement CryptXmlClose().
cryptxml: Implement CryptXmlGetDocContext().
cryptxml: Implement CryptXmlGetSignature().
cryptxml: Implement CryptXmlVerifySignature() stub.
cryptxml: Implement CryptXmlGetStatus().
cryptxml/tests: Add some signature verification tests.
Nikolay Sivov (5):
d2d1: Add some helpers for geometry figure manipulation.
d2d1: Implement ellipse geometry simplification.
d2d1: Implement rounded rectangle geometry simplification.
fonts: Fix "O" glyph in Tahoma Bold bitmap strikes.
d3d10/tests: Compile more test effects from sources.
Paul Gofman (35):
ntdll: Factor out chksum_add() function.
ntdll: Support SOCK_RAW / IPPROTO_ICMPV6 fallback over SOCK_DGRAM.
ws2_32/tests: Test ICMPv6 ping.
ntdll/tests: Add more tests for NtQueryVirtualMemory( MemoryRegionInformation ).
ntdll: Factor out get_memory_region_size() function.
ntdll: Reimplement get_memory_region_info() on top of get_memory_region_size().
ntdll: Add semi-stub for NtQueueApcThreadEx2().
ntdll: Validate reserve handle in NtQueueApcThreadEx2().
ntdll: Pass user APC flags to call_user_apc_dispatcher().
server: Do not allow queueing special APCs to wow64 threads.
ntdll: Implement QUEUE_USER_APC_CALLBACK_DATA_CONTEXT in NtQueueApcThreadEx2() on x64.
ntdll: Use NtContinueEx in KiUserApcDispatcher on x64.
kernelbase: Implement QueueUserAPC2().
server: Check thread and call parameters in queue_apc() for APC_USER.
msvcp140_atomic_wait: Semi-stub __std_tzdb_get_time_zones() / __std_tzdb_delete_time_zones().
msvcp140_atomic_wait: Semi-stub __std_tzdb_get_current_zone() / __std_tzdb_delete_current_zone().
msvcp140_atomic_wait: Stub __std_tzdb_get_leap_seconds() / __std_tzdb_delete_leap_seconds().
kernelbase: Preserve last error in OutputDebugStringA().
kernel32: Preserve last error in OutputDebugStringA().
kernel32/tests: Test last error preservation in OutputDebugString().
ntdll/tests: Test last error preservation in OutputDebugString() with debugger.
winex11.drv: Only create dummy parent when needed in create_client_window().
win32u: Avoid calling server in NtUserGetKeyState() when input keystate is in sync.
nsiproxy.sys: Get rid of echo request thread.
nsiproxy.sys: Bind to source address in icmp_send_echo().
nsiproxy.sys: Store socket type in struct icmp_data.
iphlpapi: Factor out icmp_send_echo() function.
iphlpapi/tests: Refactor APC testing in testIcmpSendEcho().
iphlpapi: Only supply APC routine if no event in icmp_send_echo().
iphlpapi: Implement Icmp6ParseReplies().
iphlpapi: Implement Icmp6CreateFile().
nsiproxy.sys: Don't try to check for original packet for ping socket.
iphlpapi: Implement Icmp6SendEcho2().
iphlpapi/tests: Add tests for Icmp6SendEcho2().
iphlpapi: Avoid leaking APC context in icmp_send_echo().
Rémi Bernon (69):
widl: Wrap strappend parameters in a new struct strbuf.
widl: Introduce a new append_basic_type helper.
widl: Remove unnecessary recursion for TYPE_BITFIELD.
widl: Move some type name construction out of write_type_left.
joy.cpl: Read the device state when getting selected effect.
winetest: Set winetest_mute_threshold to 4 when running tests.
user32: Use init_class_name(_ansi) in FindWindowEx(A|W).
win32u: Drop unnecessary NtUserCreateWindowEx version strings.
win32u: Add a helper to add atom / strings to server requests.
server: Simplify create_class atom validation check.
server: Unify reading class atom / name from requests.
widl: Introduce a new write_record_type_definition helper.
widl: Cleanup indentation and variables in write_type_left.
widl: Split write_type_left into a write_type_definition_left helper.
widl: Introduce a new append_type_left helper.
win32u: Move nulldrv client surface code from vulkan.c.
win32u: Introduce a new framebuffer object GL surface.
win32u: Create render buffers for double / stereo buffering.
win32u: Create depth attachments for the FBO surface.
widl: Remove now unnecessary write_callconv argument.
widl: Cleanup indentation and variables in write_type_right.
widl: Inline write_args into write_type_right.
widl: Introduce a new append_declspec helper.
opengl32: Hook glGet(Booleanv|Doublev|Floatv|Integer64v).
opengl32: Share wgl_context structure definition with win32u.
opengl32: Keep track of draw/read framebuffer binding.
opengl32: Return the tracked FBOs when using FBO surfaces.
include: Add gameinput.idl.
gameinput: Introduce new DLL.
dinput/tests: Add some gameinput tests.
winebus: Generate unique serial numbers when adding devices.
user32/tests: Add more GetClassInfo tests.
win32u: Forbid setting GCW_ATOM class info.
win32u: Introduce helpers to check desktop and message class.
user32: Implement integral class name versioning support.
win32u: Remove now unnecessary integral atom specific handling.
server: Return the class base atom from create_class.
opengl32: Keep track of default FBO read/draw buffers.
opengl32: Return the tracked FBO buffers when using FBO surfaces.
opengl32: Remap read / draw FBO buffers when using FBO surfaces.
opengl32: Redirect default framebuffer when using FBO surfaces.
wine.inf: Fix section name for DefaultInstall.ntx86 services.
win32u: Simplify setting extra class info in set_class_long.
win32u: Use set_class_long_size for NtUserSetClassWord.
win32u: Use get_class_long_size for get_class_word.
server: Split get_class_info request from set_class_info.
server: Get rid of set_class_info request flags.
widl: Keep track of statements source locations.
widl: Allow explicit registration by referencing runtimeclasses.
windows.storage.applicationdata: Register runtimeclasses explicitly.
windows.storage: Register runtimeclasses explicitly.
wintypes: Register runtimeclasses explicitly.
include: Remove now unnecessary registration ifdefs.
opengl32: Initialize viewport when using FBO surface.
win32u: Create a separate draw FBO for multisampled formats.
opengl32: Resolve multisample draw buffer when using FBO surfaces.
win32u: Remove unnecessary HDC parameter from client_surface_present.
win32u: Remove unnecessary HDC parameter from p_surface_create.
winex11: Remove unnecessary members from struct gl_drawable.
windows.ui: Register runtimeclasses explicitly.
windows.ui.xaml: Register runtimeclasses explicitly.
coremessaging: Register runtimeclasses explicitly.
twinapi.appcore: Register runtimeclasses explicitly.
windows.applicationmodel: Register runtimeclasses explicitly.
windows.system.profile.systemid: Register runtimeclasses explicitly.
windows.system.profile.systemmanufacturers: Register runtimeclasses explicitly.
windows.globalization: Register runtimeclasses explicitly.
appxdeploymentclient: Register runtimeclasses explicitly.
cryptowinrt: Register runtimeclasses explicitly.
Tim Clem (3):
ntdll: Initialize return value in fork_and_exec.
ntdll: Zero the process and thread handles when creating a Unix process.
kernelbase: Zero the RTL_USER_PROCESS_PARAMETERS in CreateProcessInternalW.
Tingzhong Luo (1):
shell32: Support the UserProgramFiles folder.
Tres Finocchiaro (1):
winebuild: Add flag to disable dynamicbase/aslr.
Tyson Whitehead (9):
joy.cpl: Use correct interface for effect AddRef call.
joy.cpl: Remove needless device caps retrieval.
joy.cpl: Remove incorrect DIEP_TYPESPECIFICPARAMS flag usage.
joy.cpl: Cleanup selected device Acquire / Unacquire logic.
joy.cpl: Fix effect axes / direction in SetParameters call.
joy.cpl: Avoid restarting effect while button is pressed.
joy.cpl: Turn off autocenter for every device on creation.
joy.cpl: Add specific parameters based on type and not effect GUID.
winebus: SDL backend FF effect angle requires 32 bits.
Vibhav Pant (9):
vccorlib140: Add semi-stub for Platform::Details::Heap::{Allocate, Free}.
vccorlib140: Add stub for Platform::Details::{Allocate(ptrdiff_t, size_t), ControlBlock::ReleaseTarget}.
vccorlib140: Implement Platform::Details::{Allocate(ptrdiff_t, size_t), ControlBlock::ReleaseTarget}.
vccorlib140: Add stub for __abi_make_type_id, Platform::Type{Equals, GetTypeCode, ToString, FullName::get}.
vccorlib140: Implement __abi_make_type_id.
vccorlib140: Implement Platform::Type::{Equals, GetTypeCode, ToString, FullName::get}.
vccorlib140: Add stub for Platform::Details::CreateValue.
vccorlib140: Implement Platform::Details::CreateValue.
vccorlib140: Use the correct symbol name for InitControlBlock on i386 and arm.
William Horvath (2):
ntdll: Check for invalid gs_base in the 64-bit segv_handler.
ntdll/tests: Re-enable a previously crashing test.
Yuxuan Shui (6):
include: Make sure to null terminate string in wine_dbg_vsprintf.
server: Fix use-after-free of handle entry.
makefiles: Don't delete Makefile if makedep is interrupted.
dmime: Fix use-after-free after performance_CloseDown.
msi/tests: Fix wrong character counts passed to RegSetValueExA.
ole32: Don't get metafile extent if there is no metafile.
Zhiyi Zhang (2):
user32/tests: Add more SendMessageCallbackA/W() tests with NULL callback.
win32u: Put the message in the queue when the callback pointer is NULL and the callback data is 1.
Ziqing Hui (1):
dwrite: Add fallback for Dingbats.
```
1
0
The Wine development release 10.13 is now available.
What's new in this release:
- Windows.Gaming.Input configuration tab in the Joystick Control Panel.
- ECDSA_P521 and ECDH_P521 algorithms in BCrypt.
- OpenGL WoW64 thunks are all generated.
- Still more support for Windows Runtime metadata in WIDL.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.13.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.13/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.13 (total 32):
- #21864 Default paper size A4 instead of my printers default
- #32334 Microsoft SQL Server Management Studio Express 2005: Connection window is too narrow
- #44066 mintty/msys2 doesn't work since wine 2.5.0 (named pipes)
- #50174 Microsoft Office 365 login page for activating Office is blank
- #52844 Multiple games stuck/crash with a black screen after/before intro (Call of Duty: Black Ops II, Nioh 2 - The Complete Edition)
- #54157 dir command of cmd fails on Z: on Ubuntu under WSL
- #56246 Regarding the color depth of BMP in the SavePicture method: the value is unstable.
- #56697 _kbhit ignores the last event in the queue
- #56754 Amazing Adventures 2 CD: bundled demo launchers fail to launch game
- #56883 DualSense bumpers registering as two buttons on wine 9.9 and later
- #57115 CEF sample application "Draggable" test fails
- #57116 Crash during codecs test on CEF sample application in 64-bit wineprefix (widevinecdm)
- #57130 CEF sample application WebGL test fails
- #57131 Info and profile buttons in CEF sample application instantly close
- #57458 FL Studio logo appears on the top left of the screen and with a black background
- #57648 Wrong Cursor on Wayland
- #57783 Approach will not run in a virgin 10.0 wineprefix
- #58122 WSAENOTSOCK error when calling winsock.Send() on duplicated socket
- #58389 Wrong path, app fails to start (regression): err:environ:init_peb starting L"\\\\?\\unix\\home\\user\\krita-x64-5.2.9-setup.exe
- #58393 FlexiPDFfails to run in wine-10.10
- #58396 virtual terminal captures mouse
- #58425 video/x-h264 alignment=au caps causes artifacts and crashes with streams that have NALUs split across buffers
- #58448 Metasequoia 3.1.6 OpenGL regression
- #58459 Doom 3: BFG Edition fails to start
- #58477 Some VST plugins fail
- #58488 Bejeweled 3: black screen on start
- #58493 Gothic and Gothic II crash with Access Violation
- #58497 Strings are a confusing mix of US and British English
- #58500 64-bit "Plain Vanilla Compiling" fails
- #58528 CRYPT_AcquirePrivateKeyFromProvInfo does not check machine store for private key
- #58549 Call of Duty: Black Ops II has no sound
- #58571 On NetBSD, the case-insensitive mechanism for filenames appears to be broken
### Changes since 10.12:
```
Adam Markowski (2):
po: Update Polish translation.
po: Update Polish translation.
Akihiro Sagawa (1):
ntdll: Remove redundant fusefs detection for NetBSD.
Alexandre Julliard (39):
winebrowser: Use wine_get_unix_file_name() instead of wine_nt_to_unix_file_name().
makefiles: Don't try to install symlinks for programs if not supported.
ntdll: Share more filename string constants.
ntdll: Move the helper to build NT pathnames to file.c.
ntdll: Add a ntdll_get_unix_file_name() helper.
win32u: Use the ntdll_get_unix_file_name() helper.
winemac.drv: Use the ntdll_get_unix_file_name() helper.
winex11.drv: Use the ntdll_get_unix_file_name() helper.
winspool: Use the ntdll_get_unix_file_name() helper.
mountmgr: Perform the filename conversion to the Unix side when setting shell folders.
mountmgr: Perform the filename conversion to the Unix side when querying shell folders.
ntdll: Add a private info class in NtQueryInformationFile() to return the Unix file name.
kernel32: Reimplement wine_get_unix_file_name() using WineFileUnixNameInformation.
kernel32: Remove leftover debug traces.
ntdll: Get rid of the wine_nt_to_unix_file_name syscall.
ntdll: Remove some commented stubs that no longer exist in recent Windows.
ntdll: Add NtAccessCheckByTypeAndAuditAlarm() and NtCloseObjectAuditAlarm() stubs.
ntdll: Add more LPC stubs.
kernel32/tests: Fix a couple of test failures.
winebuild: Unify the get_stub_name() and get_link_name() helpers.
winebuild: Support -syscall flag for stubs.
ntdll: Add stubs for some syscalls that need explicit ids.
kernel32/tests: Fix some test failures on Windows.
msvcrt: Remove __GNUC__ checks.
vcomp: Remove __GNUC__ checks.
krnl386: Remove __i386__ checks.
mmsystem: Remove __i386__ checks.
system.drv: Remove __i386__ checks.
win87em: Remove __i386__ checks.
ntdll: Remove trailing backslashes from NT names.
kernelbase: Get the CPU count from SYSTEM_CPU_INFORMATION.
light.msstyles: Update generated bitmaps.
joy.cpl: Use aligned double type to avoid compiler warnings.
server: Add a helper to check if a thread is suspended.
wbemprox: Get the CPU count from the PEB.
taskmgr: Get the CPU count from the PEB.
ntdll/tests: Get the CPU count from the PEB.
kernel32/tests: Get the CPU count from the PEB.
cmd/tests: Fix cleanup of created files.
Alfred Agrell (2):
dsound/tests: Add tests for IDirectSoundBuffer_Lock.
dsound: Improve IDirectSoundBufferImpl_Lock handling of invalid arguments.
Alistair Leslie-Hughes (7):
msado15: Support all Fields interfaces.
msado15: Support all Field interfaces.
msado15: Support all Connection interfaces.
msdasql/tests: Allow database tests to run as normal user.
msado15/tests: Check return value (Coverity).
msado15: Implement ADOConnectionConstruction15::get_DSO.
msado15/tests: Fixup error return values for the ConnectionPoint tests.
Ally Sommers (1):
ws2_32: Add afunix.h header.
Andrey Gusev (1):
wined3d: Add NVIDIA GeForce RTX 4060 Mobile.
Arkadiusz Hiler (2):
winebus: Add Logitech G920 mapping to the SDL backend.
winebus: Don't consider wheels / flight sticks as gamepads.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (1):
cfgmgr32/tests: Load imports dynamically to allow execution on Windows 7.
Billy Laws (2):
ntdll/tests: Add THREAD_CREATE_FLAGS_BYPASS_PROCESS_FREEZE test.
ntdll: Support THREAD_CREATE_FLAGS_BYPASS_PROCESS_FREEZE flag.
Brendan McGrath (9):
mf/tests: Test when SAR requests a new sample.
mf/tests: Test sequence of calls during a Pause and Seek.
mf: Restart transforms and sinks on seek.
mf: Don't send MFT_MESSAGE_NOTIFY_START_OF_STREAM when seeking.
mfmediaengine: Don't perform implicit flush on state change.
mfmediaengine: Request sample if we are seeking.
mf/tests: Test H264 decoder when duration and time are zero.
mf/tests: Test WMV decoder when duration and time are zero.
winegstreamer: Correct duration if provided value is zero.
Brendan Shanks (6):
win32u: Remove Mac suitcase/resource-fork font support.
xinput1_3: Correctly handle a NULL GUID parameter in XInputGetDSoundAudioDeviceGuids().
xinput9_1_0: Implement by dynamically loading and calling xinput1_4.dll.
ntdll: Ensure %cs is correct in sigcontext on x86_64 macOS.
winevulkan: Enable VK_EXT_swapchain_maintenance1 when available.
win32u: Create Vulkan swapchains with VkSwapchainPresentScalingCreateInfoEXT when the surface will be scaled.
Connor McAdams (7):
d3dx9: Replace D3DFORMAT constants with enum d3dx_pixel_format_id constants.
d3dx9: Introduce d3dx_resource_type enumeration.
d3dx9: Introduce d3dx_image_file_format enumeration.
d3dx9: Move functions intended for code sharing into a separate source file.
d3dx9: Get rid of ID3DXBuffer usage in d3dx_helpers.
d3dx9: Don't include d3dx9 header in d3dx_helpers.
d3dx10: Use shared d3dx code in get_image_info when possible.
Conor McCarthy (3):
mfplat/tests: Add NV12 650 x 850 to image_size_tests.
mf/tests: Add a video processor NV12 test with a width alignment of 2.
winegstreamer: Do not pass a sample size to wg_transform_read_mf().
Csányi István (1):
winebus.sys: Fix DualSense BT quirk.
Daniel Lehman (4):
ucrtbase/tests: Move cexp tests from msvcr120.
ucrtbase: Add carg implementation.
ucrtbase: Add cargf implementation.
msvcp140_atomic_wait: Add __std_execution_* functions.
Dmitry Timoshkov (1):
windowscodecs: Propagate ::CopyPixels() return value.
Elizabeth Figura (18):
quartz/tests: Create separate IEnumPins instances.
qasf/tests: Test AllocateStreamingResources() error propagation.
mf/tests: Test IMediaObject::AllocateStreamingResources().
winegstreamer: Return S_OK from AllocateStreamingResources().
wined3d/glsl: Transpose the bump environment matrix.
Revert "wined3d/glsl: Transpose the bump environment matrix.".
d3d9/tests: Add comprehensive D3DTSS_TEXTURETRANSFORMFLAGS tests.
wined3d: Handle all invalid values in compute_texture_matrix().
wined3d: Pass the attribute coordinate count to get_texture_matrix().
wined3d: Pass 3 as the attribute count for generated texcoords.
wined3d: Alter the texture matrix even for non-projected textures.
wined3d: Copy the projective divisor in the FFP vertex pipeline.
wined3d: Initialize all remaining FFP texture coordinates to zero.
wined3d: Always divide 1.x projected textures by W for shaders.
wined3d: Always divide 1.x projected textures by W in the FFP.
dxcore: Reset the factory object on destruction.
dxcore: Separate a dxcore_adapter_create() helper.
maintainers: Add dxcore to the D3D section.
Eric Pouech (7):
winedump: Fix crash while dumping CLR blobs.
cmd/tests: Add a couple of tests about return code propagation.
cmd: Fix exit code when run with /C command line option.
cmd: Factorize some code.
cmd: Use a context when handling input from command line (/c, /k).
cmd: Separate command file handling from external commands.
cmd: Fix exit code in cmd /c when leaving nested command files.
Esme Povirk (9):
comctl32/tests: Add general tests for OBJID_QUERYCLASSNAMEIDX.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for Animate controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for hotkey controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for listviews.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for tooltips.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for trackbar controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for treeviews.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for updown controls.
comctl32/tests: Remove individual OBJID_QUERYCLASSNAMEIDX tests.
Gabriel Ivăncescu (40):
mshtml: Use HasAttribute instead of GetAttributeNode when checking if specified attribute.
mshtml: Clone name properly from attached attribute nodes.
mshtml: Use a BSTR to store the detached attribute's name.
mshtml: Use a helper function to find an attribute in the collection's list.
mshtml: Detach attribute nodes when removing the attribute from the element.
mshtml: Implement 'specified' for detached attributes.
mshtml/tests: Add tests for more element prototype props.
mshtml/tests: Test frame and iframe element props.
mshtml: Only allow a specific set of builtin props as attributes for elements.
mshtml: Only allow a specific set of builtin props as attributes for button elements.
mshtml: Only allow a specific set of builtin props as attributes for form elements.
mshtml: Only allow a specific set of builtin props as attributes for frame elements.
mshtml: Only allow a specific set of builtin props as attributes for iframe elements.
mshtml: Only allow a specific set of builtin props as attributes for img elements.
mshtml: Only allow a specific set of builtin props as attributes for input elements.
mshtml: Only allow a specific set of builtin props as attributes for label elements.
mshtml: Only allow a specific set of builtin props as attributes for link elements.
mshtml: Only allow a specific set of builtin props as attributes for meta elements.
mshtml: Only allow a specific set of builtin props as attributes for object elements.
mshtml: Only allow a specific set of builtin props as attributes for option elements.
mshtml: Only allow a specific set of builtin props as attributes for script elements.
mshtml: Only allow a specific set of builtin props as attributes for select elements.
mshtml: Only allow a specific set of builtin props as attributes for style elements.
mshtml: Only allow a specific set of builtin props as attributes for table elements.
mshtml: Only allow a specific set of builtin props as attributes for table data cell elements.
mshtml: Only allow a specific set of builtin props as attributes for table row elements.
mshtml: Only allow a specific set of builtin props as attributes for text area elements.
mshtml: Handle NULL inputs in node's replaceChild.
mshtml: Handle NULL input in node's removeChild.
mshtml: Handle NULL input in node's appendChild.
mshtml: Handle NULL input in node's insertBefore.
mshtml/tests: Test IHTMLElement6::getAttributeNode in legacy modes.
mshtml/tests: Test mixing attribute nodes and collections across modes.
mshtml/tests: Test node hierarchy for attribute nodes in IE9+ modes.
mshtml/tests: Don't create global variable due to typo.
mshtml: Fix expando for IE9 attr nodes.
mshtml: Fix gecko element leak when retrieving ownerElement.
mshtml: Traverse the node on attribute nodes.
mshtml: Allow custom set attributes with same name as builtin methods in legacy modes.
mshtml: Fix 'expando' and 'specified' for attributes in legacy modes.
Giovanni Mascellani (10):
mmdevapi/tests: Check that incompatible formats are rejected by IsFormatSupported().
mmdevapi/tests: Remove workaround for Wine < 1.3.28.
mmdevapi/tests: Test rendering with floating point formats.
mmdevapi/tests: Test supported formats for capturing.
mmdevapi: Error out if the channel count or sampling rate doesn't match the mix format.
Revert "mmdevapi: Error out if the channel count or sampling rate doesn't match the mix format.".
mmdevapi/tests: Mark a wrong error code by IsFormatSupported() as todo.
mmdevapi/tests: Do not test QueryInterface() with a NULL output pointer.
winepulse.drv: Allow 32-bit PCM audio samples.
winecoreaudio.drv: Do not spam fixmes for unknown channels.
Hans Leidekker (20):
crypt32: Retry with CRYPT_MACHINE_KEYSET in CRYPT_AcquirePrivateKeyFromProvInfo().
windows.gaming.input: Turn put_Parameters() into a regular method.
widl: Truncate identifiers that exceed the 255 character limit.
widl: Check that retval parameters also have an out attribute.
widl: Check eventadd method parameters.
widl: Check eventremove method parameters.
widl: Check propget method parameters.
widl: Check propput method parameters.
include: Comment reference to undefined activation interface.
widl: Check activation method parameters.
widl: Check composition method parameters.
include: Add missing runtimeclass contract attributes.
widl: Require runtimeclass contract or version attribute.
widl: Use a structure for the version attribute.
widl: Fix version attribute value.
widl: Skip array size parameters.
widl: Fix encoding of array parameters.
widl: Only use 32-bit integers in row structures.
widl: Add an implicit apicontract attribute.
widl: Always store member references in attributes.
Haoyang Chen (2):
explorer: Ignore command line character case.
explorer: Allow /n to be followed by other arguments.
Henri Verbeet (1):
wined3d: Add GPU information for AMD NAVI44.
Huw D. M. Davies (1):
winemac: Define missing status variable.
Jacek Caban (78):
krnl386: Remove __GNUC__ check.
ntdll: Remove __GNUC__ checks.
ntdll/tests: Remove __GNUC__ checks.
ntoskrnl: Remove __GNUC__ check.
oleaut32: Remove __GNUC__ check.
advapi32: Initialize temp variable in test_incorrect_api_usage.
crypt32/tests: Use dummySubject in CryptSIPLoad invalid parameter test.
kernel32/tests: Initialize stackvar in test_IsBadReadPtr test.
ole32/tests: Initialize rect in OleDraw invalid parameter test.
shlwapi/tests: Initialize cookie before passing it to add_call.
webservices/tests: Use valid url for WsEncodeUrl invalid argument tests.
d3dx9/tests: Fix identity_matrix initialization.
d3dx10/tests: Initialize data in test_D3DX10CreateAsyncMemoryLoader.
d3dx11/tests: Initialize data in test_D3DX11CreateAsyncMemoryLoader.
uxtheme/tests: Initialize rect in test_DrawThemeEdge.
ntoskrnl/tests: Use initialized client dispatch in WskSocket call.
quartz/tests: Initialize mt in test_connect_direct.
d3d10core/tests: Initialize box in test_copy_subresource_region.
d3d11/tests: Initialize box in test_copy_subresource_region.
msvcp60/tests: Don't use const pointers for thiscall thunks.
msvcp90/tests: Don't use const pointers for thiscall thunks.
msvcr90/tests: Initialize key value in test_bsearch_s.
include: Add _callnewh declaration.
user32/tests: Use switch statement in test_keyboard_layout.
opengl32: Move manual wow64 thunks declarations to generated header.
opengl32: Move thunks declarations to generated header.
opengl32: Use generated header for all thunk declarations.
opengl32: Use generated header wrapper declarations.
include: Add IHTMLAttributeCollection4 declaration.
mshtml: Add IHTMLAttributeCollection4 stub implementation.
opengl32: Move static keyword logic to generate_unix_thunk.
opengl32: Use generate_unix_thunk for wow64 wgl thunks.
opengl32: Use generate_unix_thunk for wow64 gl thunks.
opengl32: Use generate_unix_thunk for wow64 ext thunks.
opengl32: Remove no longer used get_func_args arguments.
mshtml: Add create_node fallback to cloneNode.
mshtml: Add DOM attribute node implementation.
mshtml: Implement HTMLAttributeCollection4::get_length.
mshtml: Implement IHTMLAttributeCollection4::item.
mshtml: Implement IHTMLAttributeCollection4::getNamedItem.
mshtml: Properly expose Attr and NamedNodeMap properties.
mshtml/tests: Add more attribute nodes tests.
opengl32: Use generated wow64 thunk for wglMakeCurrent.
opengl32: Use generated wow64 thunk for wglMakeContextCurrentARB.
opengl32: Use generated wow64 thunk for wglDeleteContext.
opengl32: Use manual_win_functions for wglGetCurrentReadDCARB.
opengl32: Avoid unneeded wrapper return type casts.
opengl32: Use generated wow64 thunk for wglCreateContext.
opengl32: Use generated wow64 thunk for wglCreateContextAttribsARB.
opengl32: Don't generate wrapper declarations for functions implemented on PE side.
opengl32: Introduce wow64 wrappers and use it for glClientWaitSync implementation.
opengl32: Use wow64 wrapper for glFenceSync implementation.
opengl32: Use wow64 wrapper for glDeleteSync implementation.
opengl32: Use wow64 wrapper for glGetSynciv implementation.
opengl32: Use wow64 wrapper for glIsSync implementation.
opengl32: Use wow64 wrapper for glWaitSync implementation.
opengl32: Factor out return_wow64_string.
opengl32: Use generated thunk for glGetString.
opengl32: Use generated thunk for glGetStringi.
opengl32: Use generated thunk for wglGetExtensionsStringARB.
opengl32: Use generated thunk for wglGetExtensionsStringEXT.
opengl32: Use generated thunk for wglQueryCurrentRendererStringWINE.
opengl32: Use generated thunk for wglQueryRendererStringWINE.
opengl32: Improve whitespaces in wrapper declarations.
opengl32: Use extra unix call argument to pass client buffer from glUnmapBuffer.
opengl32: Use extra unix call argument to pass client buffer from glUnmapNamedBuffer.
opengl32: Use wow64 wrappers for glMapBuffer and glMapBufferARB implementations.
opengl32: Use wow64 wrappers for glMapBufferRange.
opengl32: Use wow64 wrappers for glMapNamedBuffer and glMapNamedBufferEXT.
opengl32: Use wow64 wrappers for glMapNamedBufferRange and glMapNamedBufferRangeEXT.
opengl32: Use wow64 wrappers for glGetBufferPointerv and glGetBufferPointervARB.
opengl32: Use wow64 wrappers for glGetNamedBufferPointerv and glGetNamedBufferPointervEXT.
opengl32: Pass array arguments as pointers in unix calls.
opengl32: Use generated thunk for glPathGlyphIndexRangeNV.
opengl32: Pass type as a string to get_wow64_arg_type.
opengl32: Use generated thunk for wglCreatePbufferARB.
opengl32: Use generated thunk for wglGetPbufferDCARB.
opengl32: Use generated thunk for wglGetProcAddress.
Jacob Czekalla (5):
hhctrl.ocx: Add a search button to the search tab.
hhctrl.ocx: Selection of treeview items in the content tab should reflect web browser page.
mshtml/tests: Add call stacking to htmldoc test framework.
mshtml/tests: Add iframe event tests in htmldoc.c.
mshtml: Fire BeforeNavigate2 for documents in async_open.
Jake Coppinger (1):
ntdll: Add a stub for RtlQueryProcessHeapInformation().
Jan Sikorski (1):
maintainers: Remove myself as d3d maintainer.
Joe Souza (1):
conhost: Implement F1 and F3 support for history retrieval.
Kareem Aladli (4):
kernelbase: Implement VirtualProtectFromApp.
kernelbase/tests: Add tests for VirtualProtectFromApp.
ntdll: Set old_prot to PAGE_NOACCESS in NtProtectVirtualMemory() if the range is not mapped or committed.
ntdll/tests: Add tests for NtProtectVirtualMemory().
Ken Sharp (3):
configure: Do not hardcode "gcc" in message.
po: Standardise source strings to English (United States).
po: Update English (Default) resource.
Maotong Zhang (2):
comdlg32/tests: Fix file type combo box selection in file dialogs.
comdlg32: Display filter specs in itemdlg File Type combo box.
Marc-Aurel Zent (2):
ntdll: Implement ThreadPriorityBoost class in NtQueryInformationThread.
ntdll: Implement ThreadPriorityBoost class in NtSetInformationThread.
Michael Stefaniuc (8):
dmcompos: Return E_NOTIMPL from the stub SignPost track Clone() method.
dmcompos/tests: Fix the expected value in an ok() message.
dmcompos: Simplify the DMChordMap IPersistStream_Load() method.
include: Tag the DMUS_IO_* structs that changed between DX versions.
dmstyle: Handle DX7 versions of 'note' and 'crve' chunks.
dmusic: Don't open code debugstr_chunk in dmobject.c.
dmusic: Add a helper to deal with different versions / sizes of a chunk.
dmstyle: Support loading the DX7 version of the Style form.
Michael Stopa (2):
kernel32/tests: SetFileInfo should accept FileRenameInfoEx.
kernelbase: Pass FileRenameInfoEx to NtSetInformationFile.
Mike Kozelkov (2):
urlmon: Add PersistentZoneIdentifier semi-stubs.
urlmon/tests: Add PersistentZoneIdentifier test cases.
Mohamad Al-Jaf (5):
include: Add windows.media.core.idl.
include: Add windows.media.mediaproperties.idl.
include: Add windows.media.transcoding.idl.
windows.media: Implement IActivationFactory::ActivateInstance() for IMediaTranscoder.
cryptowinrt: Implement ICryptographicBufferStatics::EncodeToBase64String().
Nikolay Sivov (33):
d3d9/tests: Fix use-after-free (ASan).
kernel32/tests: Fix double free of mutex handle.
d3dx10/tests: Add a test for effect compiler behavior.
windowscodecs/converter: Add 16bppGrayHalf -> 128bppRGBFloat conversion path.
windowscodecs/converter: Add 16bppGrayHalf -> 32bppBGRA conversion path.
windowscodecs/converter: Propagate source failure in 24bppBGR -> 128bppRGBAFloat conversion.
windowscodecs/converter: Propagate source failure in 32bppBGRA -> 128bppRGBAFloat conversion.
windowscodecs/converter: Propagate source failure in 48bppRGB -> 128bppRGBFloat conversion.
windowscodecs/converter: Propagate source failure in 96bppRGBFloat -> 128bppRGBFloat conversion.
windowscodecs/converter: Propagate source failure in 48bppRGBHalf -> 128bppRGBFloat conversion.
d3d11: Make sure that index buffer is set for indexed draws.
d3d11: Make sure that index buffer is set for instanced indexed draws.
wined3d: Fix reference_graphics_pipeline_resources() argument type to match callers.
d3d12/tests: Add a test for creating a device from dxcore adapters.
d2d1: Implement mesh population methods.
d2d1: Add a stub for geometry realization object.
d2d1: Add initial implementation of CopyFromRenderTarget().
d2d1: Improve bitmap methods traces.
d2d1: Implement ComputeArea() for rectangles.
d2d1: Implement ComputeArea() for transformed geometries.
dxcore/tests: Add positive interface checks.
dxcore/tests: Move GetProperty() tests to a separate function.
dxcore/tests: Add some tests for InstanceLuid property.
dxcore: Add support for InstanceLuid property.
dxcore: Fix property size check in GetProperty().
dxcore: Implement GetPropertySize().
dxcore/tests: Add some tests for IsHardware property.
dxcore: Return stub value for IsHardware property.
dxcore/tests: Add some GetAdapterByLuid() tests.
dxcore: Implement GetAdapterByLuid().
d3d12: Support creating devices using dxcore adapters.
dxcore: Add support for DriverDescription property.
dxcore: Add support for DriverVersion property.
Paul Gofman (17):
kernelbase: Duplicate GetOverlappedResult() implementation instead of calling GetOverlappedResultEx().
kernelbase: Always set last error in GetOverlappedResult[Ex]().
kernelbase: Wait in GetOverlappedResultEx() even if IOSB status is not pending.
d2d1: Implement D2D1ComputeMaximumScaleFactor().
opengl32: Map glCompressedTexImage2DARB to glCompressedTexImage2D if ARB_texture_compression is missing.
shell32: Add AccountPictures known folder.
nsiproxy.sys: Implement IP interface table.
iphlpapi: Implement GetIpInterfaceTable().
nsi/tests: Add tests for IP interface table.
iphlpapi: Implement GetIpInterfaceEntry().
bcrypt: Factor out len_from_bitlen() function.
bcrypt: Use bit length instead of key size in key_import_pair().
bcrypt: Handle importing ECDSA_P384 private blob.
bcrypt: Support ECDSA_P521 algorithm.
bcrypt/tests: Test ECDH_384 same way as ECDH_256.
bcrypt: Support ECDH_P521 algorithm.
bcrypt: Check output size early in key_asymmetric_encrypt() for RSA.
Piotr Caban (9):
msado15/tests: Test functions called in ADORecordsetConstruction_put_Rowset.
msado15/tests: Check recordset state in ADORecordsetConstruction tests.
msado15/tests: Don't check count before running ADORecordsetConstruction field tests.
msado15/tests: Add initial _Recordset_MoveNext tests.
msado15/tests: Add _Recordset_get_RecordCount test.
msado15/tests: Test IRowsetExactScroll interface in put_Rowset tests.
vccorlib140: Add stub dll.
vccorlib140: Add Platform::Details::InitializeData semi-stub.
combase: Fix initialization flags in RoInitialize.
Ratchanan Srirattanamet (1):
msi: Fix .NET assembly-related functionalities due to missed string copy.
Roman Pišl (2):
ole32/tests: Test that cursor is preserved in DoDragDrop.
ole32: Preserve cursor in DoDragDrop.
Rémi Bernon (56):
win32u: Only update the window GL drawable when making one current.
win32u: Move window drawable query out of DC drawable helpers.
win32u: Update DC OpenGL drawable when it is acquired.
winebus.sys: Prefer hidraw for all Virpil (VID 3344) devices.
win32u: Also flush the GL drawable if the client surface is offscreen.
win32u: Clear DC opengl drawable when releasing cached dce.
joy.cpl: Initialize size before calling RegGetValueW.
winebus: Use a single global structure for bus options.
winebus: Support per-device/vendor hidraw registry option.
windows.gaming.input: Forward get_NonRoamableId to Wine provider.
windows.gaming.input: Forward get_DisplayName to Wine provider.
joy.cpl: Use XInputGetStateEx to get guide button.
joy.cpl: Add a new windows.gaming.input test tab.
joy.cpl: List windows.gaming.input device interfaces.
joy.cpl: Read windows.gaming.input device interface state.
joy.cpl: Draw windows.gaming.input gamepad device.
joy.cpl: Draw windows.gaming.input raw game controller.
winemac: Create new client views with each VK/GL surface.
winemac: Use the new client surface views for GL rendering.
winemac: Get rid of now unnecessary child cocoa views.
winemac: Sync current context when drawable was updated.
win32u: Call opengl_drawable_flush even if drawables didn't change.
winebus: Better separate hidraw from evdev in udev_add_device.
winebus: Read evdev device info and feature bits on creation.
winebus: Fill device mapping before report descriptor creation.
winebus: Force the ordering of some common evdev gamepad buttons.
winedmo: Avoid seeking past the end of stream.
winedmo: Avoid reading past the end of stream.
winedmo: Use the stream context to cache stream chunks.
winedmo: Return container duration if no stream duration is found.
winedmo: Return an integer from wave_format_tag_from_codec_id.
winedmo: Seek to keyframes, using avformat_seek_file.
widl: Get the version attribute from the typelib.
winebus: Return error status if SDL is disabled.
winebus: Introduce a new set_abs_axis_value helper.
winebus: Emulate some gamepad buttons in the evdev backend.
winebus: Introduce a new hid_device_add_gamepad helper.
winebus: Use hid_device_add_gamepad in the evdev backend.
win32u: Move nulldrv pixel format array inline.
win32u: Allocate a global pixel formats array on the unix side.
win32u: Keep pbuffer internal context on the wgl_context struct.
win32u: Use eglGetConfigs rather than eglChooseConfig.
win32u: Use surfaceless EGL platform for nulldrv.
widl: Fix parsing of contract version.
widl: Fix ATTR_CONTRACTVERSION output in header files.
widl: Fix ATTR_CONTRACTVERSION in metadata files.
widl: Write deprecated version in metadata files.
windows.gaming.input: Only create Gamepad instances for XInput devices.
winebus: Improve gamepad report compatibility with XUSB / GIP.
windows.gaming.input: Use a generic dinput device data format.
winebus: Use a vendor specific usage for gamepad guide buttons.
winebus: Don't try to create rumble effect on device startup.
winebus: Create dedicated threads to write evdev haptics output reports.
win32u: Release the previous context drawables when changing contexts.
win32u: Flush the new drawables after successful make_current.
win32u: Notify the opengl drawables when they are (un)made current.
Shaun Ren (4):
sapi/stream: Remove the FIXME message for unknown ISpStream interfaces.
sapi/tests: Test resampler support in ISpVoice.
sapi/tts: Implement TTS engine audio output resampler.
sapi/tts: Support allow_format_changes in ISpVoice::SetOutput.
Thibault Payet (1):
server: Always use the thread Unix id in ptrace for FreeBSD.
Tim Clem (4):
wow64cpu: In Unix calls, always return the status from the non-Wow dispatcher.
winebus: Quiet a log message about ignored HID devices.
win32u: Fix an uninitialized variable warning.
win32u: Remove a log message in get_shared_window.
Tomasz Pakuła (1):
winebus: Do not touch autocenter on device init and device reset.
Vibhav Pant (55):
bluetoothapis: Fix resource leak in bluetooth_auth_wizard_ask_response.
include/ddk: Use the correct parameter types for ZwCreateEvent.
setupapi/tests: Add tests for built-in device properties.
ntoskrnl.exe/tests: Add tests for built-in properties for PnP device instances.
setupapi: Support built-in properties in SetupDiGetDevicePropertyW and CM_Get_DevNode_Property_ExW.
propsys/tests: Add conformance tests for getting PropertyDescriptions from PropertySystem.
propsys/tests: Add conformance tests for PSGetPropertyKeyFromName.
include: Add declaration for PSGetPropertySystem.
propsys: Add stubs for PropertySystem.
propsys: Add stubs for PSGetNameFromPropertyKey.
propsys/tests: Add conformance tests for PSGetNameFromPropertyKey.
propsys: Add IPropertyDescription stub for system defined properties.
propsys: Implement IPropertyDescription for several known system properties.
propsys/tests: Add some tests for PropVariantChangeType(VT_CLSID).
propsys: Implement PropVariantChangeType(VT_CLSID) for string types.
propsys/tests: Add test for PropVariantToGUID with VT_ARRAY | VT_UI1 values.
winebth.sys: Only set properties for radio devices after they have been started.
include: Add Windows.Foundation.Collections.PropertySet runtime class.
wintypes/tests: Add conformance tests for Windows.Foundation.Collections.PropertySet.
wintypes: Add stubs for Windows.Foundation.Collections.PropertySet.
wintypes: Add stubs for IObservableMap<HSTRING, IInspectable *> to PropertySet.
wintypes: Add stubs for IMap<HSTRING, IInspectable *> to PropertySet.
wintypes: Add stubs for IIterable<IKeyValuePair<HSTRING, IInspectable *>> to PropertySet.
windows.devices.enumeration: Implement DeviceInformationStatics::FindAllAsync using DevGetObjects.
windows.devices.enumeration/tests: Add weak reference tests for DeviceWatcher.
windows.devices.enumeration: Implement IWeakReferenceSource for DeviceWatcher.
windows.devices.enumeration: Implement DeviceInformationStatics::DeviceWatcher using DevCreateObjectQuery.
cfgmgr32: Add stubs for DevGetObjectProperties(Ex).
cfgmgr32: Implement DevFreeObjectProperties.
cfgmgr32: Implement DevGetObjectProperties for device interfaces.
ntoskrnl.exe/tests: Add tests for device updates in DevCreateObjectQuery.
cfgmgr32: Implement device updates for DevCreateObjectQuery.
widl: Fix crash while replacing type parameters for arrays.
cfgmgr32: Fix crash when CM_Register_Notification is called with a NULL filter.
cfgmgr32: Add stub for DevFindProperty.
cfgmgr32: Implement DevFindProperty.
cfgmgr32/tests: Add some tests for calling DevGetObjects with filters.
cfgmgr32: Validate DEVPROP_FILTER_EXPRESSION values passed to Dev{GetObjects, CreateObjectQueryEx}.
cfgmgr32: Implement support for basic filter expressions in DevGetObjects.
vccorlib140: Add stub for GetActivationFactoryByPCWSTR.
vccorlib140: Implement GetActivationFactoryByPCWSTR.
vccorlib140: Add stub for GetIidsFn.
vccorlib140: Implement GetIidsFn.
include: Add windows.devices.bluetooth.advertisement.idl.
windows.devices.bluetooth/tests: Add tests for IBluetoothLEAdvertisementWatcher.
windows.devices.bluetooth: Add stubs for BluetoothLEAdvertisementWatcher.
windows.devices.bluetooth: Implement BluetoothLEAdvertisementWatcher::get_{Min, Max}SamplingInterval.
windows.devices.bluetooth: Implement BluetoothLEAdvertisementWatcher::get_{Min, Max}OutOfRangeTimeout.
winebth.sys: Remove GATT service entries when they are removed from the Unix Bluetooth service.
winebth.sys: Enumerate and store GATT characteristics for each LE device.
winebth.sys: Implement IOCTL_WINEBTH_LE_DEVICE_GET_GATT_CHARACTERISTICS.
winebth.sys: Remove GATT characteristic entries when they are removed from the Unix Bluetooth service.
bluetoothapis: Implement BluetoothGATTGetCharacteristics.
bluetoothapis/tests: Implement tests for BluetoothGATTGetCharacteristics.
winebth.sys: Set additional properties for remote Bluetooth devices.
Yeshun Ye (2):
dsound: Check if 'cbPropData' for DSPROPERTY_Description1 is large enough.
dsound/tests: Add test for DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1.
Yongjie Yao (1):
wbemprox: Add Status property in Win32_DesktopMonitor.
Yuxuan Shui (10):
ntdll/tests: Check the context of a user callback.
ntdll: Also restore rbp before calling user mode callback.
cmd: Fix out-of-bound access when handling tilde modifiers.
d2d1: Fix out-of-bound array access.
cfgmgr32: Fix double-free of property buffers.
server: Fix use-after-free in screen_buffer_destroy.
urlmon/tests: Fix test_PersistentZoneIdentifier freeing the wrong thing.
urlmon/tests: Fix out-of-bound write into tmp_dir.
ntdll: Fix inconsistency in LFH block size calculation during realloc.
rpcrt4: Don't read past the end of params in client_do_args.
Zhao Yi (1):
wined3d: Return error code when Vulkan swapchain creation fails.
Zhiyi Zhang (23):
user32/tests: Test WM_PRINT with an invisible parent.
win32u: Allow PRF_CHILDREN to paint even though child windows have an invisible parent.
include: Add windows.ui.windowmanagement.idl.
include: Add Windows.UI.ViewManagement.ApplicationView runtime class.
twinapi.appcore: Register some Windows.UI.ViewManagement.ApplicationView runtime classes.
twinapi.appcore: Register Windows.UI.ViewManagement.UIViewSettings runtime classes.
twinapi.appcore/tests: Add Windows.UI.ViewManagement.ApplicationView runtime class tests.
twinapi.appcore: Add Windows.UI.ViewManagement.ApplicationView runtime class stub.
include: Add AccessibilitySettings runtime class.
windows.ui/tests: Add IAccessibilitySettings tests.
windows.ui: Add IAccessibilitySettings stub.
windows.ui: Implement accessibilitysettings_get_HighContrast().
dwrite/tests: Add IDWriteFontDownloadQueue tests.
dwrite: Implement dwritefactory3_GetFontDownloadQueue().
d3d11: Return S_OK for d3d11_device_RegisterDeviceRemovedEvent().
light.msstyles: Make toolbar button background transparent at the center.
winemac.drv: Use a window level higher than kCGDockWindowLevel for WS_EX_TOPMOST windows.
windows.globalization/tests: Add IApplicationLanguagesStatics tests.
windows.globalization: Add IApplicationLanguagesStatics stub.
windows.globalization/tests: Add ILanguage2 tests.
windows.globalization: Implement ILanguage2.
windows.applicationmodel/tests: Add Windows.ApplicationModel.DesignMode tests.
windows.applicationmodel: Add Windows.ApplicationModel.DesignMode runtime class stub.
Ziqing Hui (10):
fonts: Make numbers bold for WineTahomaBold.
comctl32/tests: Check RGB value in test_alpha.
comctl32/tests: Test image bitmap bits in test_alpha.
comctl32/tests: Test adding 32bpp images with alpha to 24bpp image list.
comctl32/tests: Use winetest_{push,pop}_context in test_alpha.
comctl32/tests: Test image flags in test_alpha.
comctl32/tests: Also test v5 with test_alpha().
fonts: Make special ASCII characters bold for WineTahomaBold.
fonts: Make uppercase ASCII letters bold for WineTahomaBold.
fonts: Make lowercase ASCII letters bold for WineTahomaBold.
```
1
0
The Wine development release 10.12 is now available.
What's new in this release:
- Optional EGL backend in the X11 driver.
- Support for Bluetooth Low Energy services.
- More support for generating Windows Runtime metadata in WIDL.
- ARM64 builds enabled in Gitlab CI.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.12.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.12/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.12 (total 17):
- #19561 Very large memory leak when doing overlapped reads
- #38337 clang compiling warnings
- #42882 HDX server software: rs232 port access not working
- #52720 Speed up cmd.exe:batch in Wine
- #55776 Some game use video as intro will stock after video is finished
- #57204 after enable winedmo, Little Witch Nobeta video wont play anymore
- #57244 Train capacity 300% 2 will crash after enable the winedmo
- #57489 GetPointerPenInfo not located in USER32.dll when attempting to run Clip Studio Paint 3.0
- #57790 FindVUK doesn't show drive details
- #58263 Wine Internet Settings crashes on unimplemented function shdocvw.dll.ParseURLFromOutsideSourceW
- #58422 Soldier of Fortune II crashes on start
- #58423 Flickering in games using dxvk/vkd3d-proton on sway
- #58429 Betfair Poker setup never gets past the splash screen
- #58435 winepath -w conversion outputs wrong filenames
- #58436 x11, kotor keeps minimizing
- #58437 Total Commander 11.55 complains "Access denied" for EVERY file >= 1 MB in "Compare files by content"
- #58475 Wine Mono corlib tests cause wineserver to assert
### Changes since 10.11:
```
Adam Markowski (1):
po: Update Polish translation.
Akihiro Sagawa (1):
po: Update Japanese translation.
Alex Henrie (3):
ntdll: Don't skip synchronous read when serial read timeout is infinite.
inetcpl: Restore parse_url_from_outside implementation.
ntdll: Detect the optical disc type on Linux using a SCSI command.
Alexandre Julliard (16):
server: Always use the thread Unix id in ptrace().
rpcrt4: Silence compiler warnings about pointer wraparound.
gitlab: Build an arm64 image.
ntdll: Remove duplicate backslashes in get_unix_full_path().
winevulkan: Skip a couple of unneeded conversion functions.
gitlab: Add an ARM64 build.
faudio: Import upstream release 25.07.
gitlab: Update sarif-converter URL.
ntdll: Get rid of the wine_unix_to_nt_file_name syscall.
ntdll: Unify the Unix to NT path conversion helpers.
gitlab: Add a daily test run for new wow64 mode.
winetest: Use compiler macros to generate the compiler version info.
winex11: Disable more wintab code when support is missing.
oleaut32: Use DOUBLE type where appropriate to match the PSDK.
include: Use aligned int64 types where possible.
setupapi/tests: Don't test an uninitialized value.
Alexandros Frantzis (2):
winewayland: Use system cursor shapes when possible.
winewayland: Support layered windows with per-pixel alpha.
Alfred Agrell (1):
include: Enable __uuidof(IUnknown).
Alistair Leslie-Hughes (2):
shell32: Avoid closing a handle twice.
msado15: Implement _Connection::get_version.
Anton Baskanov (1):
quartz: Decommit the allocator before entering the streaming CS in AVIDec.
Arkadiusz Hiler (1):
cfgmgr32: Preserve registry casing when getting device interface list.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (1):
dxcore/tests: Skip tests when there is no display available.
Brendan McGrath (3):
winegstreamer: Remove 'au' alignment for h264.
winegstreamer: Signal eos on disconnect.
winegstreamer: Don't hold lock during wg_parser_stream_get_buffer.
Connor McAdams (2):
d3dx9: Replace txc_fetch_dxtn with bcdec.
d3dx9: Replace txc_compress_dxtn with stb_dxt.
Daniel Lehman (3):
ucrtbase/tests: Add tests for expf.
ucrtbase/tests: Move exp tests from msvcr120.
include: Add _wcstod_l declaration.
Dmitry Timoshkov (1):
ntdll: Initialization of XState features should not depend on AVX support.
Elizabeth Figura (5):
kernel32/tests: Test opening a directory with ReOpenFile().
kernelbase: Use FILE_NON_DIRECTORY_FILE in ReOpenFile().
ntdll/tests: Add comprehensive reparse point tests.
kernel32/tests: Test CreateSymbolicLink().
xaudio2: Do not register classes from xapofx or x3daudio dlls.
Eric Pouech (7):
cmd: Introduce struct batch_file to hold information about a .cmd file.
cmd: Add a cache for the labels lookup.
cmd/tests: Add tests about .cmd file alteration while executing it.
widl: Fix segfault when inheriting from an incomplete interface.
widl: Remove unneeded condition.
widl: Ensure inherited interface is declared before using it.
include: Remove duplicated declarations in .idl files.
Esme Povirk (3):
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for status controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for toolbars.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for progress bars.
Gabriel Ivăncescu (4):
mshtml: Clear the document before opening it for writing.
mshtml: Implement document.linkColor.
mshtml: Implement document.vLinkColor.
mshtml: Don't add HTMLDOMNode props to the NodeList.
Hans Leidekker (16):
widl: Add rows for the static attribute.
widl: Add TYPE_ATTR_ABSTRACT flag if a runtime class has no member interfaces.
widl: Add rows for the default attribute.
widl: Add rows for the activatable attribute.
widl: Add rows for the threading attribute.
widl: Add rows for the marshalingbehavior attribute.
widl: Relax check on runtimeclass definitions.
widl: Store a variable pointer instead of a declaration in expressions.
widl: Store the runtimeclass for constructor interfaces.
widl: Factor out an add_member_interfaces() helper.
widl: Add rows for static interfaces.
widl: Include version in activatable attribute value.
widl: Add rows for activation interfaces.
widl: Add rows for the composable attribute.
widl: Add rows for composition interfaces.
widl: Skip writing metadata if winrt_mode is not set.
Huw D. M. Davies (1):
kernel32: Use the correct buffer length.
Jacek Caban (8):
webservices: Don't assume that enum is unsigned in WsInitializeMessage.
dmime/tests: Use ceil instead of round.
configure: Build PEs with -ffp-exception-behavior=maytrap.
d3dcompiler: Don't assume that enum is unsigned in d3dcompiler_get_blob_part.
d3dcompiler: Handle all D3D_BLOB_PART values in d3dcompiler_get_blob_part validation.
d3dcompiler: Use __WINE_CRT_PRINTF_ATTR.
wined3d: Use __WINE_CRT_PRINTF_ATTR.
widl: Rename metadata stream type enum values to avoid conflict with Cygwin limits.h.
Joe Souza (3):
cmd: COPY should output file names as they are copied.
cmd/tests: Add tests to verify COPY command output.
cmd: Allow '+' as delimiter for tab-completion, e.g. 'copy file+file2'.
Mike Kozelkov (1):
urlmon: Add PersistentZoneIdentifier COM object stubs.
Nikolay Sivov (2):
kernel32: Add a stub for CreateBoundaryDescriptorA().
include: Remove duplicated CreateBoundaryDescriptorW() definition.
Owen Rudge (1):
mshtml: Implement document.aLinkColor.
Paul Gofman (5):
user32/tests: Add tests for STARTF_USESHOWWINDOW.
win32u: Respect STARTF_USESHOWWINDOW in show_window().
winepulse.drv: Avoid hangs on exit when pulse main loop thread gets killed.
winebus.sys: Check for udev_device_get_subsystem() error in udev_add_device().
winebus.sys: Close fd if device is not handled in udev_add_device().
Ryan Houdek (1):
wineboot: Detect TSC frequency on Arm64.
Rémi Bernon (64):
winex11: Release the GL drawable on creation failure.
win32u: Keep window GL drawables in a global linked list.
win32u: Notify the drivers when GL drawables are detached.
win32u: Update opengl drawables with window state.
win32u: Update the window state in more places.
winewayland: Drop now unnecessary GL drawable tracking.
winex11: Remove now unnecessary drawable tracking.
winewayland: Remove unnecessary context config.
wineandroid: Remove unnecessary context config.
win32u: Move EGL context creation out of the drivers.
winewayland: Only detach/attach client surface if it is different.
opengl32: Do not filter legacy extensions.
opengl32: Add a helper to read OpenGL registry options.
opengl32: Add an EnabledExtensions registry option.
user32: Init class name outside of get_versioned_name.
user32: Move user32_module default out of get_class_info.
user32: Load class module in get_class_version.
user32: Move get_class_version out of get_class_info.
comctl32: Fix class name case in manifest.
user32: Always copy class names to a temporary buffer.
win32u: Add traces to wglGetExtensionsString*.
win32u: Add an EGLSurface pointer to opengl_drawable struct.
win32u: Move EGL make_current context function out of the drivers.
winex11: Remove now unnecessary x11drv_context structure.
winex11: Add an option to use the new EGL OpenGL backend.
winemac: Remove now unnecessary pbuffer tracking.
win32u: Avoid calling detach, flush or swap on pbuffer drawables.
win32u: Avoid releasing opengl drawable within drawables_lock.
win32u: Implement generic EGL driver pbuffer surface.
winewayland: Use a distinct wayland_pbuffer struct for pbuffers.
win32u: Remove now unnecessary opengl_drawable hdc member.
win32u: Remove VkResult from surface_presented functions.
win32u: Introduce a new client_surface struct for vulkan surfaces.
win32u: Keep client surfaces in a global list.
win32u: Update client surfaces when window state changes.
win32u: Present client surfaces through the vtable.
mf/session: Clarify internal states from session states separation.
mf/session: Move internal states to a separate command_state enum.
mf/session: Remove unnecessary SESSION_FLAG_PENDING_COMMAND flag.
mf/session: Replace SESSION_FLAG_FINALIZE_SINKS with dedicated states.
mf/session: Replace SESSION_FLAG_END_OF_PRESENTATION with dedicated states.
mf/session: Introduce a SESSION_FLAG_SOURCE_SHUTDOWN presentation flag.
mf/session: Simplify the media session shutdown event handling.
win32u: Fix incorrect length in font extension check.
winegstreamer: Force h264parse to output 'au' aligned byte-stream.
mp3dmod: Fix some media type leaks.
mp3dmod: Avoid uninitialized variable access.
winegstreamer: Fix some video decoder media type leaks.
mf/tests: Fix some leaks in transform tests.
mf/tests: Avoid leaking D3D resources through IMFTrackedSample.
mf/tests: Skip memory-hungry H264 encoder tests on 32bit.
mfplat/tests: Add more tests for event queue shutdown.
mfsrcsnk: Queue an event before shutting down the event queues.
winegstreamer: Queue an event before shutting down the event queues.
mf/session: Handle an optional MEError event from sources on shutdown.
winegstreamer: Remove now unnecessary IMFMediaShutdownNotify.
mf/session: Remove now unnecessary IMFMediaShutdownNotify.
include: Remove now unnecessary IMFMediaShutdownNotify interface.
winewayland: Clear the current client surface on vulkan detach.
winewayland: Merge the vulkan client surface with wayland_client_surface.
winex11: Move client surface code out of vulkan ifdef.
winex11: Create client surfaces for opengl drawables.
win32u: Replace opengl drawables tracking with client surfaces.
server: Keep owned mutex syncs alive until abandoned.
Shaun Ren (11):
sapi/tests: Copy SPVTEXTFRAG list into a contiguous array.
sapi/tests: Introduce simulate_output option in tts.
sapi/tests: Add some SSML tests in tts.
sapi/tts: Support XML-related flags in ISpVoice::Speak.
sapi/xml: Add a stub SSML parser.
sapi/xml: Parse the <speak> SSML root element.
sapi/xml: Implement add_sapi_text_fragement().
sapi/xml: Parse the <p> and <s> SSML elements.
sapi/xml: Parse the rate attribute in the SSML <prosody> element.
sapi/xml: Parse the volume attribute in the <prosody> SSML element.
sapi/xml: Parse the pitch attribute in the <prosody> SSML element.
Vibhav Pant (17):
include: Add devquerydef.h.
include: Add devfiltertypes.h.
include: Add devquery.h.
cfgmgr32/tests: Add tests for DevGetObjects.
cfgmgr32: Add a basic implementation for DevGetObjects(Ex) for device interface objects.
ntoskrnl.exe/tests: Add tests for Io{Get,Set}DeviceInterfacePropertyData.
ntoskrnl.exe: Implement IoGetDeviceInterfacePropertyData.
ntoskrnl.exe: Implement IoSetDeviceInterfacePropertyData.
cfgmgr32/tests: Add tests for fetching specific properties in DevGetObjects.
cfgmgr32: Stub DevCreateObjectQuery(Ex) functions.
cfgmgr32: Implement initial device enumeration for DevCreateObjectQuery.
cfgmgr32: Support fetching properties for device objects in Dev{GetObjects, CreateObjectQueryEx}.
winebth.sys: Create PDOs for remote Bluetooth devices.
winebth.sys: Store a list of GATT services discovered on LE devices.
winebth.sys: Implement IOCTL_WINEBTH_LE_DEVICE_GET_GATT_SERVICES.
bluetoothapis: Implement BluetoothGATTGetServices.
bluetoothapis/tests: Add tests for BluetoothGATTGetServices.
Yuxuan Shui (11):
mscoree/tests: Fix string lengths passed to RegSetKeyValueA.
msvcp90: Fix vector_base_v4 allocation sizes.
msvcp90: Fix calculation of segment addresses in vector.
msvcrt: Don't release io memory during process shutdown.
wined3d: Fix missing data/resource type bounds check.
dxgi/tests: Fix out-of-bound in test_cursor_clipping.
ddraw/tests: Release device after ddraw.
d3dx9/tests: Fix volume test boxes.
wined3d: Fix double-free when shader_set_function fails.
quartz/tests: Fix out-of-bound use of video_types in test_connect_pin.
dsound: Make sure to null-terminate strings for callbacks.
Zhiyi Zhang (10):
comctl32/listview: Test WM_PAINT with a subclassed header that paints without validating update regions.
comctl32/listview: Validate header region after painting it.
bcp47langs: Add GetFontFallbackLanguageList() stub.
gdiplus/tests: Test drawing indexed bitmaps with a palette that has alpha.
gdiplus: Fix drawing indexed bitmaps with a palette that has alpha.
gdiplus: Don't zero out allocated memory in GdipAlloc().
win32u: Limit the work area to the monitor rect.
user32/tests: Add some tests for DefWindowProc() WM_PRINT message handling.
win32u: Fix the return value for WM_PRINT handling in DefWindowProc().
win32u: Support PRF_CHILDREN when handling WM_PRINT for DefWindowProc().
Ziqing Hui (1):
shell32: Rework FO_MOVE operation for SHFileOperationW.
```
1
0
The Wine development release 10.11 is now available.
What's new in this release:
- Preparation work for NTSync support.
- More support for generating Windows Runtime metadata in WIDL.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.11.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.11/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.11 (total 25):
- #31212 Some VST instruments crash when reloaded in Mixcraft
- #37131 Clang Static Analyzer: Division by zero
- #42033 Fallout 3: Radio music not playing
- #50278 Diggles: The Myth of Fenris (GOG version) crashes on launch
- #50577 Saya no Uta: hangs on RtlpWaitForCriticalSection
- #55019 kernel32:process - Accents cause test_Environment() to fail on Windows
- #56086 C&C Generals Zero Hour has graphic errors in menu
- #56128 Genshin Impact: after changing to another window and back, input does not work anymore
- #56517 osu!: Does not launch since 9.3
- #57020 Anritsu Software Toolbox doesn't install properly
- #57656 CryptMsgGetParam() with CMSG_SIGNER_AUTH_ATTR_PARAM/CMSG_SIGNER_UNAUTH_ATTR_PARAM returns success with 0 buffer size
- #57802 WordPro's "view Settings" not saving properly
- #58321 Purple Place exits
- #58343 Multiple games have rendering errors after d0fd9e87c (Kathy Rain 2, Among Us, Green Hell)
- #58344 Magic The Gathering Arena: Black screen in wine-10.9
- #58345 Far File Manager 3 x86-64's product features during installation cannot be configured/are missing
- #58356 Doom I & II Enhanced (2019 re-release based on Unity engine) crashes after the intro videos
- #58363 Thief II crashes
- #58364 Pegasus Email draws incorrectly
- #58372 EZNEC pro2+ 7.0 runs, but calculations have errornous exponential values
- #58373 Bejeweled 3 runs but the screen is black
- #58381 "musl: Use __builtin_rint if available" breaks clang builds (except aarch64)
- #58384 Sid Meier's Civilization III becomes unresponsive
- #58402 Sid Meier's Civilization III: severe discoloration
- #58412 winedbg recursively forks until the memory is exhausted
### Changes since 10.10:
```
Alexandre Julliard (36):
winebuild: Refuse to do non-PE builds on platforms that don't support it.
winegcc: Refuse to do non-PE builds on platforms that don't support it.
ntdll: Use NtOpenFile to open nls files in the system directory.
ntdll: Use UNICODE_STRINGs in the main image loading helpers.
ntdll: Pass the full image NT path through the server startup information.
ntdll: Move resolving the initial image name to the get_full_path() helper.
ntdll: Add a helper to return both NT and Unix names to open a file.
ntdll: Make get_redirect() static.
ntdll: Try to build a proper NT name when opening files with \??\unix.
server: Return the NT file name in ObjectNameInformation for file objects.
winecrt0: Add a default implementation for DllGetVersion().
resources: Generate version strings from the corresponding version number.
mountmgr: Use the \\?\unix prefix to open device files.
appwiz.cpl: Store the registry key name in Unicode.
appwiz.cpl: Use GetFinalPathNameByHandleW to get the DOS path of the package to install.
user32: Add a macro to define the list of user callbacks.
mscoree: Use GetFinalPathNameByHandleW to get the DOS path of the Mono directory.
mshtml: Use GetFinalPathNameByHandleW to get the DOS path of the Gecko directory.
start: Use GetFinalPathNameByHandleW to get the DOS path of a Unix file.
kernelbase: Convert slashes in Unix paths in GetFinalPathNameByHandleW.
wineps.drv: Use \\?\unix paths to load the AFM files.
winemenubuilder: Use \\?\unix paths to load the link files.
kernel32: Reimplement conversion to DOS name using GetFinalPathNameByHandleW.
ntdll: Reimplement the RtlGetFullPathName_U Unix path heuristic using ObjectNameInformation.
ntdll: Restrict some Unixlib helpers to Wine internal usage.
ntdll: Add a private helper to retrieve a DOS file name.
ntdll: Return NT paths in the get build/data dir helpers.
ntdll: Fix get_core_id_regs_arm64() prototype for non-Linux platforms.
ntdll: Pass the Unix prot flags to the map_fixed_area() helper.
ntdll: Don't set VPROT_WRITEWATCH flag on pages when using kernel write watches.
win32u: Add a helper to convert file names to NT format consistently.
ntdll: Only reset the reported write watch range in NtGetWriteWatch.
ntdll: Correctly report execute faults on ARM64.
ntdll: Correctly report execute faults on ARM.
makefiles: Support specifying the PE architecture as "none".
makefiles: Fix program installation for Windows builds.
Bernhard Kölbl (1):
mfmediaengine: Enable XVP for playback topology.
Bernhard Übelacker (10):
msvcrt/tests: Add broken to new j modifier tests.
oleaut32: In VarFormat do not count '#' in exponent into fractional digits.
msi: Use LRESULT to store return value from CallWindowProcW.
winetest: Fail only if output_size exceeds the limit.
gitlab: Derive the windows tests from a common .wine-test-windows.
gitlab: Remove name containing CI environment variables in windows tests.
comctl32: Use LRESULT to store return value from CallWindowProcW.
comdlg32: Use LRESULT/INT_PTR to store return value from CallWindowProcA.
winetest: Use LRESULT to return value from CallWindowProcA.
gitlab: Remove other user controlled CI environment variables.
Bradan Fleming (1):
winemenubuilder: Quote Exec arguments in desktop entries.
Brendan McGrath (3):
mfmediaengine: Only forward the most recent seek time.
mfreadwrite/tests: Check DEFAULT_STRIDE is not always present.
mfreadwrite: Fix media type output when video processor is used.
Charlotte Pabst (9):
mf: Clear pending MFT stream requests when flushing.
Revert "mf: Release pending items when sample grabber is stopped.".
ntdll: Treat Rbp as CONTEXT_INTEGER register.
mf/tests: Rename test_source to test_stub_source.
mf/tests: Rename test_seek_source to test_source.
mf/tests: Move some functions.
mf/tests: Add tests for thinning.
mf: Don't forward thinning to clock.
mf: Handle thinning in media session.
Connor McAdams (4):
comctl32/tests: Add tests for iImage value for listview subitems.
comctl32/listview: Don't touch iImage value for subitems if LVS_EX_SUBITEMIMAGES is not set.
comctl32/tests: Add item state value tests for LVS_OWNERDATA controls.
comctl32/listview: Properly handle item state value for LVS_OWNERDATA controls.
Conor McCarthy (4):
rtworkq/tests: Test closing a timer or event handle after submission.
ntdll/tests: Test early closure of handles used for threadpool waits.
ntdll: Initialise waitable handles with NULL.
ntdll: Duplicate handles for thread pool waits.
Dylan Donnell (1):
kernelbase: Allocate a new buffer for the module name in LoadLibraryExA.
Elizabeth Figura (34):
qasf/tests: Test AllocateStreamingResources()/FreeStreamingResources() calls.
qasf/dmowrapper: Fail Pause() if there is no DMO.
qasf/dmowrapper: Call AllocateStreamingResources() and FreeStreamingResources().
qasf/dmowrapper: Handle a NULL output buffer in GetBufferAndLength().
ir50_32/tests: Add tests.
ir50_32/tests: Move compression and decompression tests from mf:transform.
ir50_32: Use case-insensitive comparison for the compression fourcc.
ir50_32: Do not handle a NULL input pointer in ICM_DECOMPRESS_GET_FORMAT.
ir50_32: Return ICERR_OK from ICM_DECOMPRESS_END.
ir50_32: Suggest 24-bit RGB.
ir50_32: Do not validate biPlanes.
ir50_32: Explicitly fill the whole BITMAPINFOHEADER in ICM_DECOMPRESS_GET_FORMAT.
ir50_32: Fix the return value of ICM_DECOMPRESS_GET_FORMAT.
ir50_32: Fix the error value for mismatching dimensions.
ir50_32: Support decoding to RGB565.
qasf/tests: Test dynamic format change on the DMO wrapper.
qasf/dmowrapper: Delay SetActualDataLength().
qasf/dmowrapper: Handle dynamic format change.
quartz/tests: Port test_source_allocator() to avidec.
quartz/avidec: Don't set the data length to 0.
quartz/tests: Test dynamic format change on the AVI decoder.
quartz: Add a copy_bitmap_header() helper.
quartz/avidec: Correctly calculate the BITMAPINFOHEADER size for BI_BITFIELDS.
quartz/avidec: Handle dynamic format change.
winegstreamer: Support the Indeo 5.0 format in DirectShow.
server: Use an event sync for thread objects.
server: Use an event sync for job objects.
server: Use an event sync for process objects.
server: Use an event sync for debug objects.
server: Use an event sync for device manager objects.
server: Use an event sync for completion port objects.
server: Use an event sync for timer objects.
server: Use an event sync for console objects.
server: Use an event sync for console server objects.
Esme Povirk (10):
gdiplus: Account for gdi32 clipping in GdipFillRegion.
gdiplus: Don't clip the HRGN passed to alpha_blend_pixels_hrgn.
comctl32: Implement MSAA events for updown controls.
gdiplus/tests: Region hit-testing is done in device coordinates.
gdiplus: Use graphics transform in GdipIsVisibleRegionPoint.
gdiplus: Do not create HRGN in GdipIsVisibleRegionPoint.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for list boxes.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for static controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for edit controls.
comctl32: Implement OBJID_QUERYCLASSNAMEIDX for combo boxes.
Hans Leidekker (19):
widl: Add rows for the delegate type.
widl: Handle NULL type name.
widl: Add rows for propget methods.
widl: Add rows for propput methods.
widl: Add rows for eventadd methods.
widl: Add rows for eventremove methods.
widl: Add rows for regular methods.
widl: Use a define for maximum name length.
widl: Add rows for the overload attribute.
widl: Add rows for the default_overload attribute.
widl: Add rows for the deprecated attribute.
widl: Correct element type for interface signature.
widl: Don't sort the property and event tables.
widl: Add a helper to build the method name.
widl: Add a helper to retrieve method attributes and flags.
widl: Store EventRegistrationToken reference in the real type.
widl: Add separate property rows for interfaces and classes.
widl: Add separate event rows for interfaces and classes.
widl: Add rows for the runtimeclass type.
Ignacy Kuchciński (4):
user32: Add GetPointerPenInfo stub.
user32: Add GetPointerDeviceProperties stub.
user32: Add GetPointerDeviceRects stub.
user32: Add GetRawPointerDeviceData stub.
Julius Bettin (1):
kernelbase: Implement HeapSummary.
Nikolay Sivov (9):
bluetoothapis: Fix typo in a format string (Coverity).
version/tests: Fix a typo (Coverity).
amstream/tests: Add a few return value checks (Coverity).
widl: Always use NdrClientCall2() for interpreted stubs.
widl: Do not write "const" modifiers for _PARAM_STRUCT fields.
mfmediaengine: Simplify state -> event mapping.
kernel32/tests: Use ViewShare value instead of a literal constant.
ntdll/tests: Add a test for automatically resizing a mapped disk file.
ntdll/tests: Tweak mapped file test to better match actual use case.
Paul Gofman (4):
avifil32/tests: Test creating AVI file with OF_CREATE but without access mode.
avifil32: Assume OF_WRITE for OF_CREATE in AVIFileOpenW().
avifil32: Fix dwLength counting for fixed size samples.
user32: Reserve more space in the kernel callback table.
Piotr Caban (10):
musl: Reimplement rint so it doesn't depend on floating point operations precision.
musl: Use __builtin_rint if available.
msvcrt: Use rint() from the bundled musl library.
msvcrt: Fix allocated buffer size in _getcwd.
include: Add errlup.idl.
musl: Don't use __builtin_rint in clang builds.
musl: Optimize rint when floating point operations use 53-bit precision.
msvcrt: Fix allocated buffer size in _getdcwd.
ucrtbase/tests: Cleanup temporary files in _sopen_s tests.
msvcrt: Support _SH_SECURE in _wsopen_dispatch().
Rémi Bernon (80):
winex11: Update GL drawable offscreen status instead of recreating.
winex11: Update every window GL drawable on resize / reparent.
winex11: Update drawable size and offscreen when presenting.
winex11: Drop pixmap-based child window workaround.
winex11: Rename context drawables to draw / read.
winex11: Remove unnecessary glx_pixel_format pointers.
winex11: Remove unnecessary hdc context member.
win32u: Introduce an opengl_drawable base struct.
win32u: Return an opengl_drawable from pbuffer_create.
wineandroid: Add a refcount to struct gl_drawable.
win32u: Add a refcount to struct opengl_drawable.
include: Add APP_LOCAL_DEVICE_ID definition.
opengl32: Hook and flush context on glClear.
winewayland: Update the drawable size on context_flush.
winex11: Use a separate drawable vtable for pbuffers.
win32u: Use the drawable vtable to destroy pbuffers.
win32u: Allocate GL drawables on behalf of the drivers.
winewayland: Switch client surfaces when presenting.
win32u: Keep a reference to the GL drawables in the windows.
win32u: Keep a reference to the pbuffer drawables in the DCs.
win32u: Track and update opengl drawables in the contexts.
wineandroid: Remove now unnecessary context sync.
winemac: Remove now unnecessary context sync.
winewayland: Remove now unnecessary context sync.
win32u: Avoid reading GL data past the end of the memory DC bitmap.
server: Move object grab/release out of (add|remove)_queue.
server: Add an operation to retrieve an object sync.
server: Redirect fd-based objects sync to the fd.
server: Introduce a new event sync object.
server: Use an event sync for fd objects.
user32/tests: Cleanup window class versioning tests.
user32/tests: Test window class versioned name with integer atom.
user32/tests: Test that window class atom cannot be changed.
win32u/tests: Test window class name with integer atom.
win32u: Use the right pointer when destroying window.
user32/tests: Call flush_event after SetForegroundWindow calls.
server: Use an event sync for thread apc objects.
server: Use an event sync for context objects.
server: Use an event sync for startup info objects.
ntdll/tests: Link atom functions directly.
ntdll/tests: Add more integral atom tests.
ntdll: Set returned atom to 0 when we should.
ntdll: Allow deleting integral atoms from tables.
user32: Clamp atom to MAXINTATOM in get_int_atom_value.
win32u: Clamp atom to MAXINTATOM in get_int_atom_value.
winemac: Drop the SkipSingleBufferFlushes option.
win32u: Use the drawable vtable for flush and swap.
win32u: Add a flags parameter to opengl_drawable flush.
win32u: Pass opengl_drawable pointers to make_current.
win32u: Use the DC opengl drawable for the memory DC surface.
win32u: Keep track of the most recent window GL drawable.
opengl32: Ignore RGB565 pixel formats with memory DCs.
server: Use an event sync for file lock objects.
server: Use an event sync for debug event objects.
server: Use a static array for atom table atoms.
server: Use a count instead of last atom index.
server: Forbid using string atom 0xc000.
server: Use a static array for atom table hash.
server: Keep computed atom hash in local variables.
server: Remove unused atom pinned member.
winex11: Avoid requesting CWStackMode alone with managed windows.
server: Use the console sync for screen buffers objects.
server: Use the console sync for console input objects.
server: Use the console sync for console output objects.
server: Get rid of the console signaled flag.
server: Create a global atom table on startup.
server: Remove now unnecessary global table checks.
server: Pass atom table parameter to atom functions.
server: Introduce a new get_user_atom_name request.
server: Introduce a new add_user_atom request.
server: Move some checks inside of mutex do_release.
server: Split mutex to a dedicated sync object.
server: Split semaphore to a dedicated sync object.
server: Use a flag to keep track of message queue waits.
server: Use a signaled flag for message queue sync.
win32u/tests: Test that window properties are global atoms.
user32: Implement GetClipboardFormatNameA with NtUserGetClipboardFormatName.
win32u: Implement NtUserGetClipboardFormatName using NtUserGetAtomName.
server: Create and use a user atom table for class names.
server: Initialize global and user tables with some atoms.
Santino Mazza (1):
winex11.drv: Add programmer dvorak layout.
Vibhav Pant (17):
include: Add definitions for IBluetoothDeviceId, BluetoothError.
include: Add windows.devices.bluetooth.genericattributeprofile.idl.
include: Add definitions for IBluetoothLEDevice.
include: Add definitions for IGattDeviceService2.
windows.devices.bluetooth/tests: Add tests for BluetoothLEDeviceStatics.
windows.devices.bluetooth: Add stubs for BluetoothLEDeviceStatics.
setupapi/tests: Add tests for SetupDi{Set,Get}DeviceInterfacePropertyW.
setupapi: Implement SetupDiSetDeviceInterfacePropertyW.
setupapi: Implement SetupDiGetDeviceInterfacePropertyW.
ntoskrnl.exe/tests: Add tests for SetupDiGetDeviceInterfacePropertyW with enabled interfaces.
setupapi/tests: Add tests for SetupDiGetDeviceInterfacePropertyKeys.
setupapi: Implement SetupDiGetDeviceInterfacePropertyKeys.
setupapi: Implement additional built-in properties in SetupDiGetDeviceInterfacePropertyW.
setupapi/tests: Add additional tests for device instance properties DEVPKEY_{DeviceInterface_ClassGuid, Device_InstanceId}.
cfgmgr32: Implement CM_Get_Device_Interface_PropertyW for all property keys.
cfgmgr32/tests: Add additional tests for CM_Get_Device_Interface_PropertyW.
setupapi: Return built-in property keys for device interfaces even when the Properties subkey for the interface doesn't exist.
William Horvath (1):
wow64win: Fix UNICODE_STRING thunking in wow64_NtUserRegisterWindowMessage.
Yuxuan Shui (23):
msvcirt/tests: Fix use-after-free in test_ifstream.
msvcirt/tests: Avoid out-of-bound access in test_strstreambuf.
mshtml: Fix misuse of IWinInetHttpInfo_QueryInfo.
shell32: Fix use-after-free in ShellView_WndProc.
shell32/tests: Add missing double null termination in shlfileop.
kernelbase: Handle short urls in UrlIsA.
uiautomationcore/tests: Fix missing terminators in some nav_seqs.
wintrust: Fix data length mix-up in asn decoder.
gdi32: Fix missing terminator element in Devanagari_consonants.
xcopy: Fix out-of-bound access when parsing arguments.
usp10/tests: Avoid out-of-bound use of glyphItems when nGlyphs mismatches.
rpcrt4/tests: Fix out-of-bound write in test_pointer_marshal.
wininet: Fix handling of empty strings in urlcache_hash_key.
wininet: Use BYTE instead of char for hash calculation.
crypt32: Fix missing size check in CSignedEncodeMsg_Open.
crypt32: Handle missing attributes in CDecodeSignedMsg_GetParam.
crypt32/tests: Add signed message CryptMsgGetParam tests with > 1 signers.
crypt32: Fix creating signed message with > 1 signers.
gdiplus/tests: Fix out-of-bound use of expected in ok_path_fudge.
hid/tests: Fix out-of-bound use of nodes in test_device_info.
crypt32: Don't release context in CSignedEncodeMsg_Open.
find/tests: Fix out-of-bound access to input in mangle_text.
kernelbase: Fix array underflow when checking for trailing spaces.
Zhiyi Zhang (10):
include: Fix dcomp.idl method name and order.
user32: Add ScheduleDispatchNotification() stub.
ntdll: Use explicit ACTIVATION_CONTEXT type instead of HANDLE.
kernel32/tests: Add tests for normal activation context stack frame flags.
ntdll: Set and check 0x8 flag for activation context stack frames.
ntdll: Implement RtlActivateActivationContextUnsafeFast().
ntdll: Implement RtlDeactivateActivationContextUnsafeFast().
kernel32/tests: Add tests for RtlActivateActivationContextUnsafe() and RtlDeactivateActivationContextUnsafeFast().
comctl32/tests: Test listview background mix mode.
comctl32/listview: Set the initial background mix mode to TRANSPARENT.
```
1
0
The Wine development release 10.10 is now available.
What's new in this release:
- Mono engine updated to version 10.1.0.
- OSMesa library no longer needed.
- More support for generating Windows Runtime metadata in WIDL.
- Locale data updated to Unicode CLDR 47.
- P010 format support in Media Foundation.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.10.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.10/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.10 (total 38):
- #17614 Rise of Nations: Both mouse keys required for single left-click
- #19226 Braid: Both Shift keys needed to move puzzle pieces
- #19662 Lotus Freelance Graphics 2.1 hangs at the splash screen
- #21369 HTML-Kit 292's tab bar isn't fully visible without scrolling at 96 DPI
- #24026 Tab completion for cmd
- #24209 Burger Shop is shifted to the top left corner in full screen mode
- #33302 regedit: binary values editor layout is broken
- #35103 Baofeng5-5.31.1128's Welcome window crash on start
- #40144 Installing Canon printer driver does not work
- #44120 Steam Big Picture mode fails to display content, it shows a black screen (d3d10)
- #44453 Noteworthy Composer crashes in winealsa
- #50450 Ricoh Digital Camera Utility 5 crashes when switching from Browser to Laboratory and vise versa
- #51350 Horizon Chase freezes on startup
- #53002 Wondershare Uniconverter 13 not displaying characters
- #53071 AVCLabs Video Enhancer AI crashes on start
- #53401 regedit does not import .reg files
- #55593 F.E.A.R crashes with "Out of memory" error when starting a new game
- #55985 S.T.A.L.K.E.R. Anomaly: Crashes when loading into save file.
- #57230 F.E.A.R Combat black screen at startup due to out of memory error
- #58000 New thread stack uses too much memory
- #58001 "Eador. Masters of the Broken World" bad map textures after starting game
- #58064 Unreal 2 hangs with a black screen when switching to 1440X900 resolution
- #58078 StarCraft Remastered: game is not started with wine-10.5
- #58107 PlayOnline Viewer: Window not activated when restoring from a minimised state.
- #58182 Virtual desktop corked in 10.6
- #58190 secur32:ntlm tests fail on Windows 11 24H2
- #58196 d3d9:device WM_WINDOWPOSCHANGED test fails consistently on Linux since Wine 10.5
- #58233 gitlab-ci shows occasional crashes in tests dmsynth, dmusic, winmm:midi
- #58246 HP Prime Virtual Calculator: crashes on start
- #58253 Multiple games have a beeping noise on exit (The Fidelio Incident, Vampyr)
- #58259 Qt Installer for Windows doesn't work
- #58275 Wrong "range" selection logic using SHIFT
- #58286 Cannot create a 64-bit wineprefix with old wow64
- #58293 Regression caused by switch to realloc which doesn't zero added memory
- #58328 "msvcrt: Use RVAs in rtti and exception data on all platforms except i386" breaks RTTI on arm32
- #58329 Smartsuite 3.1 installer crashes
- #58340 dbghelp: symt_add_func_line, possible use after free.
- #58349 Build failure with clang for x86_64 target due to recent RTTI changes
### Changes since 10.9:
```
Alexandre Julliard (29):
configure: Always check for a valid 64-bit libdir.
configure: Don't use the 64-bit tools if --enable-tools is specified.
configure: Cache the results of the MTLDevice check.
winebuild: Extend the -syscall flag to allow specifying the syscall number.
tools: Support explicit syscall numbers in make_specfiles.
ntdll: Add explicit ids to a number of syscalls.
msvcrt: Add macros to wrap RTTI initialization functions.
msvcrt: Always define full type data for exception types.
msvcrt: Use RVAs for exception data but not RTTI on 32-bit ARM.
msvcrt: Use varargs macros to define C++ exception types.
msvcrt: Always define full RTTI data.
msvcrt: Use varargs macros to define RTTI data.
msvcrt/tests: Simplify the RTTI macros.
kernelbase: Flesh out RaiseFailFastException() implementation.
msvcrt: Define C++ type info as an array to avoid & operator.
msvcrt: Define C++ type info using RVAs for PE builds.
msvcrt: Define RTTI base descriptor as an array to avoid & operator.
msvcrt: Define RTTI data using RVAs for PE builds.
faudio: Import upstream release 25.06.
mpg123: Import upstream release 1.33.0.
png: Import upstream release 1.6.48.
xslt: Import upstream release 1.1.43.
nls: Update locale data to CLDR version 47.
msvcrt: Use old-style gcc varargs macros for RTTI data.
ntdll: Only clear 64K of the initial thread stack.
ntdll: Handle FileNetworkOpenInformation directly in fill_file_info().
ntdll: Use ObjectNameInformation to retrieve file name for FileNameInformation.
msvcrt: Point to the correct type info entry in the PE build macros.
server: Return the correct status depending on object type for ObjectNameInformation.
Alexandros Frantzis (2):
winewayland: Improve cleanup of text-input pending state.
winewayland: Ignore text-input "done" events that don't modify state.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (8):
taskschd/tests: Fix test failure on Windows 7.
shell32/tests: Avoid hang in test_rename.
d3d10: Return S_OK from parse_fx10_annotations instead of variable hr.
mmdevapi: Avoid race between main and notify thread.
d2d1/tests: Skip tests when device creation fails.
dbghelp: Avoid use after free by moving assignment before vector_add (ASan).
kernel32/tests: Don't call pNtCompareObjects in Windows 8.
kernel32/tests: Re-enable console handle test in Windows 8 with broken.
Brendan McGrath (4):
mfplat/tests: Add image size tests for P010.
mfplat: Add support for the P010 format.
winegstreamer: Add support for the P010 format.
winedmo: Add support for the P010 format.
Brendan Shanks (3):
winemac: Remove additional pre-macOS 10.12 workarounds.
configure: Remove unnecessary METAL_LIBS variable.
winemac: Remove #defines for conflicting macOS function names.
Daniel Lehman (2):
msvcr120/tests: Clear math error callback after test.
musl: Set EDOM in exp for NAN.
Dmitry Timoshkov (6):
kerberos: Add support for SECBUFFER_STREAM to SpUnsealMessage().
ldap: Avoid code duplication between sasl_client_start() and sasl_client_step().
Revert "combase: Find correct apartment in ClientRpcChannelBuffer_SendReceive()."
msv1_0: Perform NULL check before looking for a buffer of particular type.
kerberos: EncryptMessage() should fail if context doesn't support confidentiality.
kerberos: When requested confidentiality InitializeSecurityContext() should also add integrity.
Elizabeth Figura (11):
dxgi: Do not print a FIXME for DXGI_PRESENT_ALLOW_TEARING.
amstream/tests: Test reconnection done by CreateSample().
amstream: Don't bother calling SetFormat() if a NULL surface was passed.
amstream: Call SetFormat() before creating the sample.
amstream: Unblock GetBuffer() in Decommit().
amstream: Add more traces.
wined3d/spirv: Limit parameters to the relevant shader versions.
wined3d/vk: Use the XY11 fixup for SNORM formats only for legacy d3d.
amstream/tests: Avoid creating a ddraw RGB24 surface.
amstream/tests: Avoid calling GetAllocatorRequirements() from DecideAllocator().
d3d11: Implement CreateRasterizerState2().
Eric Pouech (5):
dbghelp: Speed up global symbols at startup.
dbghelp: Get fpo stream information directly in new PDB reader.
dbghelp: Simplify signature of PDB unwinders.
dbghelp: Rename declarations for old PBD backend.
dbghelp: Let new PDB reader exist independently of the old one.
Esme Povirk (1):
mscoree: Update Wine Mono to 10.1.0.
Gabriel Ivăncescu (4):
mshtml/tests: Test mixed charset encodings for document and text resources.
mshtml: Try to guess the script encoding when there's no BOM.
mshtml: Remove outdated FIXME comment.
urlmon: Skip fragment part when checking filenames for file protocol.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.318.
Hans Leidekker (21):
widl: Add typeref rows for enums.
widl: Add typedef, field and constant rows for enums.
widl: Add rows for the flags attribute.
widl: Add rows for the contract attribute.
widl: Add rows for the version attribute.
msv1_0: Pass a SecBuffer to create_signature() instead of an index.
msv1_0: Pass a SecBuffer to verify_signature() instead of an index.
msv1_0: Support SECBUFFER_STREAM in ntlm_SpUnsealMessage().
kerberos: Fix the wow64 thunk for unseal_message().
kerberos: Avoid buffer copy in kerberos_SpUnsealMessage().
ldap: Use SECBUFFER_STREAM in sasl_decode().
widl: Add rows for the apicontract type.
widl: Add rows for the contractversion attribute.
widl: Add rows for the apicontract attribute.
widl: Add rows for the struct type.
widl: Add rows for the interface type.
widl: Add rows for the uuid attribute.
widl: Add rows for the exclusiveto attribute.
widl: Add rows for the requires keyword.
find: Support /c switch.
secur32/tests: Fix test failure on Windows 11.
Jacek Caban (3):
winegcc: Allow specifying multiple debug files.
makedep: Introduce output_debug_files helper.
configure: Support generating both DWARF and PDB debug info in a single build.
Jacob Czekalla (8):
taskschd/tests: Adds a test for IRegisteredTaskCollection get_Item and get_Count.
taskschd: Implements IRegisteredTaskCollection get_Item().
taskschd: Implements IRegisteredTaskCollection get_Count().
comdlg32/tests: Add tests for changing devmode properties in the hook procedure for PrintDlgW.
comdlg32: Don't use a shadow devmode structure in PrintDlgW.
comdlg32/tests: Add tests for changing devmode properties in the hook procedure for PrintDlgA.
comdlg32: Don't use a shadow devmode structure in PrintDlgA.
comdlg32/tests: Remove tests in printer_properties_hook_proc for A and W versions.
Joe Souza (2):
include: Fix mistitled field in CONSOLE_READCONSOLE_CONTROL.
cmd: Implement tab completion for command line entry.
Lorenzo Ferrillo (1):
shell32: Create an internal IDropSource in SHDoDragDrop if it wasn't passed by the caller.
Matteo Bruni (1):
d3dcompiler/tests: Avoid precision issues in the trigonometry tests.
Nikolay Sivov (3):
d3d10/tests: Check d3d buffer sizes in effects tests.
include: Add GetCurrentThreadStackLimits() prototype.
d3dx9/tests: Add a few tests for technique/pass access with the effect compiler API.
Paul Gofman (11):
crypt32: Duplicate provided root store in CRYPT_CreateChainEngine().
msvcrt: Print FIXME when WideCharToMultiByte() fails in create_locinfo().
msvcrt: Support j modifier in scanf.
wbemprox: Pass current directory correctly to CreateProcessW() in process_create().
kernel32/tests: Test loading dll as resource or datafile with wow64 FS redirection disabled.
version/tests: Test GetFileVersionInfoW() with wow64 FS redirection.
msi/tests: Test installing 64 bit library loaded into wow64 installer process.
msi: Allocate buffer in msi_get_file_version_info().
msi: Get system directory just once.
msi: Fix getting version info for library loaded into wow64 process.
xaudio2/tests: Add some tests for XAudio2 refcounting.
Piotr Caban (3):
ucrtbase: Fix CP_UTF8 handling in _toupper_l.
ucrtbase: Fix CP_UTF8 handling in _tolower_l.
ucrtbase: Fix case mapping and ctype1 tables for utf8 locale.
Ralf Habacker (1):
ws2_32: Keep parameters in traces for bind() synchronized with connect().
Rémi Bernon (52):
opengl32: Simplify wglMake(Context)Current control flow.
opengl32: Cache context creation attributes.
opengl32: Use cached attributes to detect legacy contexts.
opengl32: Generate args loading / locking for wrapped functions.
opengl32/tests: Test wglShareLists with modified contexts.
opengl32: Track current context attributes changes.
opengl32: Track a subset of the context attributes.
opengl32: Implement wglCopyContext with tracked attributes.
opengl32/tests: Add more tests with wglCopyContext after usage.
win32u: Drop now unused wglCopyContext entry points.
opengl32: Implement wglShareLists by copying after recreation.
win32u: Drop now unused wglShareLists entry points.
win32u: Avoid closing NULL egl_handle on dlopen failure.
win32u: Return hwnd from get_full_window_handle when invalid.
ole32/tests: Add an test with implicit MTA creation.
ole32/tests: Add more tests with RPC from the wrong thread.
ole32/tests: Check calling a proxy after re-creating the STA.
winex11: Flag offscreen formats as bitmap compatible if possible.
winex11: Check XVisualInfo vs GLXFBConfig depth to avoid BadMatch.
opengl32: Expose every pixel format on memory DCs.
opengl32/tests: Relax memory DC pixel format selection.
windows.devices.enumeration: Return S_OK from IDeviceWatcher::Start with unsupported filter.
win32u: Remove unnecessary window_entry member.
winex11: Remove unnecessary gl3_context context member.
winex11: Remove old window drawable lookup and check.
server: Fix shared object offset when additional blocks are allocated.
win32u: Remove unnecessary shared object lock reset.
server: Allocate shared memory objects for windows.
server: Move window dpi_context to the shared memory.
win32u: Pass id and offset separately to find_shared_session_object.
win32u: Read window dpi_context from the shared memory.
opengl32: Move glFlush / glFinish hooking from win32u.
winex11: Use opengl_funcs for glFlush / glFinish.
winemac: Use opengl_funcs for glFlush.
win32u: Pass the window instance to create_window request.
server: Introduce a dedicated init_window_info request.
server: Get rid of set_window_info request flags.
win32u: Use a separate variable for windows free_list iteration.
win32u: Use a dedicated struct for window destroy entries.
win32u: Fix copy of vulkan surfaces list on window destruction.
opengl32: Flush the contexts on gl(Draw|Read)Pixels and glViewport.
win32u: Use a pbuffer to implement GL on memory DCs.
win32u: Drop now unnecessary OSMesa dependency.
win32u: Remove now unnecessary context and pbuffer funcs.
widl: Write apicontracts macros before they are used.
widl: Skip writing type definition if already written.
widl: Always write WinRT enum type definitions.
win32u: Implement NtUserRegisterWindowMessage.
win32u/tests: Test that user atoms are not a global atoms.
win32u/tests: Test some pinned global and user atoms.
user32: Implement RegisterWindowMessage(A|W) using NtUserRegisterWindowMessage.
user32: Implement RegisterClipboardFormat(A|W) using NtUserRegisterWindowMessage.
Stefan Dösinger (2):
d3d9/tests: Relax the focus==device window reactivate WM_WINDOWPOSCHANGED test.
d3d9/tests: Make the reactivate_messages_filtered test more meaningful on Windows.
Tim Clem (3):
gitlab: Switch to a Sequoia-based VM for the macOS CI build.
vcruntime140_1: Add a version resource.
msvcp140_2: Add a version resource.
Topi-Matti Ritala (1):
po: Update Finnish translation.
Vibhav Pant (6):
bluetoothapis: Return the correct error value in BluetoothAuthenticateDeviceEx.
include: Add windows.networking.sockets.idl.
include: Add windows.devices.bluetooth.rfcomm.idl.
include: Add definitions for Windows.Devices.Bluetooth.BluetoothDevice.
windows.devices.bluetooth/tests: Add tests for BluetoothDeviceStatics.
windows.devices.bluetooth: Add stub for IBluetoothDeviceStatics.
Vitaly Lipatov (1):
wine.inf: Add subkey Parameters for Tcpip6 and Dnscache services.
Yuxuan Shui (24):
amstream: Remove sample from update queue when releasing it.
msctf: Fix read of invalid memory in SINK_FOR_EACH.
cmd: Fix out-of-bound access when parsing commands that start with >.
cmd: Don't check for quotes past the start of the command.
hid/tests: Fix stack use-after-return in test_read_device.
gdiplus/tests: Use correctly formatted description.
gdiplus/tests: Make sure stride is correct for GdipCreateBitmapFromScan0.
inetmib1: Fix table emptiness check.
iphlpapi: Fix use-after-free of apc context.
kernel32/tests: Cancel IO before returning from function.
server: Fix leak of object name in device_open_file.
d3dx9_36/tests: Use correct row pitch for D3DXLoadSurfaceFromMemory.
kernel32/tests: Fix the string argument to WritePrivateProfileSectionA.
kernelbase/tests: Make sure buffer is big enough for test paths.
mshtml: Fix buffer underflow in range_to_string.
d3dx9: Set shared parameters pointer to NULL when freeing it.
mfreadwrite/tests: Fix missing terminator in attribute_desc.
nsiproxy.sys: Fix size mismatch writing into ipstatlist.
kernel32/tests: Fix out-of-bound read in test_CreateFileA.
msi/tests: Fix out-of-bound memcmp.
oleaut32: Fix out-of-bound read in OleLoadPicturePath when szURLorPath is empty.
propsys/tests: Use correct length for debugstr_wn in test_PropVariantToBSTR.
setupapi/tests: Fix double close of HSPFILEQ.
shell32/tests: Make sure to use the right type of strings.
Zhiyi Zhang (14):
d3d11/tests: Test d3d11 device context interfaces.
d3d11: Add ID3D11DeviceContext2 stub.
d3d11: Add ID3D11DeviceContext3 stub.
d3d11: Add ID3D11DeviceContext4 stub.
kernelbase: Silence a noisy FIXME in AppPolicyGetWindowingModel().
comctl32/taskdialog: Fix layout when there is no button.
ntdll: Implement RtlQueryInformationActiveActivationContext().
include: Add errhandlingapi.h.
combase: Add RoFailFastWithErrorContextInternal2() stub.
combase: Add RoGetErrorReportingFlags() stub.
combase: Add RoReportUnhandledError() stub.
combase: Add an error message when class is not found.
d3dcompiler_47: Implement D3DCreateLinker().
d3dcompiler_47: Implement D3DCreateFunctionLinkingGraph().
```
1
0
The Wine development release 10.9 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 1.16.
- Initial support for generating Windows Runtime metadata in WIDL.
- Support for compiler-based exception handling with Clang.
- EGL library support available to all graphics drivers.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.9.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.9/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.9 (total 34):
- #10853 Code::Blocks 8.02 IDE: some toolbar strips are too long
- #10941 Wine does not print in a new allocated console window using AllocConsole()
- #21666 Heavy Metal Pro fails to print Record Sheet
- #22018 No MIDI music in Alonix
- #26017 3D Pinball - Space Cadet: fullscreen does not work properly
- #34331 Toolbar buttons can be activated without a proper click
- #35882 Empire Earth 1.x display artifacts
- #46750 MS Office 2010 on Windows 7 crash
- #47281 wineserver uses a full CPU core with Ableton Live 10.0.6 and a custom Wine version
- #51386 ln.exe needs KERNEL32.dll.FindFirstFileNameW
- #51644 Implementation of wsplitpath_s required for The Legend of Heroes: Trails of Cold Steel
- #51945 property "Size" from win32_logicaldisk gives bogus results
- #52239 Partially invisible URL in TurnFlash's About window
- #54899 EA app launcher problem with text display
- #55254 Dyson Sphere Program (Steam): white artefact on opening scene
- #55255 Dyson Sphere Program (Steam): mouse ignored if switching windows
- #55304 Kerberos authentication stopped to work after PE wldap32 conversion
- #55928 NtQuerySystemInformation SystemProcessInformation result misaligned
- #56068 No "Timeout" command
- #56186 The 32-bit dmusic:dmusic fails in a 64-bit wineprefix
- #56859 Can't install photoshop CS6 through wine
- #57105 Steam GPU process crash loop with 64-bit wineprefix
- #57178 toolbar control doesn't forward WM_NOTIFY to it's original parent (affects 7-zip file manager)
- #57387 Sega Rally Championship Demo crashes at startup if Direct3d/renderer set to GDI
- #57613 Calling 'iphlpapi.GetIpNetTable' with a large number of network interfaces present crashes Wine builtin NSI proxy service
- #58060 Zafehouse: Diaries demo crashes in d3dx_initialize_image_from_wic with unsupported pixel format {6fddc324-4e03-4bfe-b185-3d77768dc902}
- #58133 Gigapixel ai no longer starts 8.3.3
- #58203 PL/SQL Developer: All system memory gets eaten
- #58217 The Journeyman Project 3 doesn't work in virtual desktop mode
- #58243 Geekbench 6 crashes at start.
- #58255 Player2 crashes
- #58269 Build regression in wine 10.7 using clang on aarch64 (error in backend: Invalid register name "x18")
- #58277 Virtual desktop doesn't resize correctly
- #58285 Crystal of Atlan - Hard crash after server selection
### Changes since 10.8:
```
Adam Markowski (1):
po: Update Polish translation.
Alanas Tebuev (4):
comctl32/tests: Test WM_NOTIFY CBEN_ENDEDITW conversion and forwarding in toolbar.
comctl32: Rewrite COMCTL32_array_reserve (was PAGER_AdjustBuffer).
comctl32: Move WM_NOTIFY unicode to ansi conversion code from pager.c to commctrl.c.
comctl32/toolbar: Forward WM_NOTIFY CBEN_ENDEDITW and CBEN_ENDEDITA.
Alex Henrie (1):
wintrust: Initialize all cert fields in WINTRUST_AddCert.
Alexandre Julliard (33):
configure: Correctly override DLLEXT for ARM builds.
include: Output the name label directly in the __ASM_GLOBL macro.
include: Add a macro to define a pointer variable in assembly.
ntdll: Call the syscall dispatcher from assembly on thread init.
ntdll: Set registers directly when calling __wine_syscall_dispatcher_return() on syscall fault.
ntdll: Use %r13 to store the TEB in the syscall dispatcher.
ntdll: Move the syscall frame and syscall table to the ntdll thread data.
ntdll: Share is_inside_syscall() helper across platforms.
winedump: Dump syscall numbers.
ntdll: Add tracing for syscall entry/exit.
ntdll: Add tracing for user callback entry/exit.
wineps: Use the correct metrics count in generated font data.
dbghelp: Use the __cpuid() intrinsic.
vkd3d: Import upstream release 1.16.
ntdll: Pre-compute the syscall frame and XState data size.
ntdll: Only create logical processor information when needed.
ntdll: Perform some shared data initialization before starting wineboot.
ntdll: Perform CPU features initialization before starting wineboot.
ntdll: Perform XState data initialization before starting wineboot.
ntdll: Fetch the XState supported features mask from the user shared data.
ntdll: Fetch the XState features mask from the user shared data.
ntdll: Fetch the XState features size from the user shared data.
ntdll: Fetch the XState compaction flag from the user shared data.
ntdll: Fetch the XState features offsets from the user shared data.
ntdll: Check processor features from the user shared data.
ntdll: Get rid of the cached cpu_info structure.
ntdll: Generate the CPU features bits from the user shared data.
ntdll: Don't bother checking for cpuid availability.
ntdll: Check directly for valid %fs register instead of using a syscall flag.
ntdll: Check for wrfsbase availability from the user shared data.
ntdll: Check for xsavec availability from the user shared data.
ntdll: Check for fxsave availability from the user shared data.
ntdll: Check for xsave availability from the user shared data.
Alfred Agrell (1):
kernel32/tests: Don't import NtCompareObjects before Windows 10.
Bernhard Kölbl (2):
setupapi/tests: Add display enum tests.
win32u: Provide more gpu device properties.
Bernhard Übelacker (6):
ucrtbase/tests: Avoid reading behind buffer in test_swprintf (ASan).
timeout/tests: Move the ctrl-c tests to an intermediate process.
nsiproxy: Avoid buffer overflow in ipv4_neighbour_enumerate_all.
dmusic: Only extract name in EnumInstrument when the valid flag is set.
ntdll: Align records retrieved by SystemProcessInformation.
gdiplus: Add check of type parameter to be positive (ASan).
Brendan McGrath (5):
mf/tests: Add negative timestamp tests for h264.
winegstreamer: Use provided PTS and duration in video_decoder.
winegstreamer: Avoid rounding errors when generating timestamps.
winegstreamer: Don't generate sample timestamps for the WMV decoder.
winegstreamer: Fixup negative input timestamps.
Brendan Shanks (1):
ntdll: Don't swap GSBASE on macOS in user_mode_callback_return().
Charlotte Pabst (1):
mf: Release pending items when sample grabber is stopped.
Connor McAdams (3):
d3dx9/tests: Add tests for {1,2,4}bpp indexed PNG files.
d3dx9: Properly handle indexed pixel formats smaller than 8bpp.
d3dx9: Add support for decoding 2bpp indexed PNG files.
Conor McCarthy (1):
user32: Restore the previous thread DPI awareness context before leaving CalcChildScroll().
Daniel Lehman (3):
msvcr120/tests: Test exp.
musl: Pass math_error callback to exp.
msvcr120: Add cexp() implementation.
David Kahurani (1):
xmllite/tests: Add more writer tests.
Dmitry Timoshkov (4):
ldap: When initializing security context ask for mutual authentication.
ldap: Sasl_encode()/sasl_decode() should treat encrypted buffer as data + token for Kerberos.
ldap: Add support for missing ISC_RET_CONFIDENTIALITY in the server response.
ldap: Save server attributes also on 2nd authentication step.
Elizabeth Figura (23):
wined3d: Move the remainder of the table fog flag to wined3d_extra_vs_args.
wined3d: Move the remainder of the shade mode flag to wined3d_extra_vs_args.
wined3d: Move the ortho_fog flag to wined3d_extra_vs_args.
wined3d: Remove no longer used transforms from wined3d_state.
wined3d: Feed point size clamping constants through a push constant buffer.
amstream/tests: Add more tests for the ddraw stream allocator.
amstream: Avoid shadowing in ddraw_meminput_Receive().
amstream: Rename "busy" to "pending".
amstream: Implement the custom ddraw stream allocator.
amstream: Fix allocator pitch tests.
amstream: Allocate the media type in set_mt_from_desc().
amstream/tests: Add more format tests.
amstream: Handle 8-bit RGB in set_mt_from_desc().
amstream: Fill the whole AM_MEDIA_TYPE in set_mt_from_desc().
amstream: Use set_mt_from_desc() in IMediaSample::GetMediaType().
amstream: Do not alter the current media type in SetFormat().
amstream: Take the actual ddraw pitch into account in GetMediaType().
amstream: Fill the source and target rects in set_mt_from_desc().
amstream: Report a top-down DIB in set_mt_from_desc().
wined3d/vk: Use an XY11 fixup for 2-channel SNORM formats.
wined3d/spirv: Implement clip planes.
wined3d/spirv: Implement point size.
wined3d/spirv: Implement point sprite.
Eric Pouech (4):
dbghelp: Don't dupe some exports on 64bit compilation.
kernel32/tests: Test closing of std handles when closing console.
wineconsole: Create child with unbound console handles.
kernelbase: Don't close handles in FreeConsole() for a Unix console.
Esme Povirk (5):
gdiplus: Remove repeated points before widening paths.
comctl32: Add tests for trackbar MSAA events.
comctl32: Implement EVENT_OBJECT_VALUECHANGE for trackbars.
comctl32/tests: Fix childid in trackbar statechange event.
gdiplus: Unify region rasterization in GdipFillRegion.
Gabriel Ivăncescu (5):
include: Add IHTMLDOMAttribute3 interface.
mshtml: Expose ownerElement from attribute nodes in IE8+ modes.
mshtml: Implement ownerElement prop for attribute nodes.
mshtml: Introduce dispex_builtin_prop_name that returns static string for builtins.
mshtml: Finish the nsAString in element_has_attribute.
Hans Leidekker (12):
secur32: Reset function tables in nego_SpInitLsaModeContext() and nego_SpAcceptLsaModeContext().
widl: Initial support for generating Windows Runtime metadata.
widl: Write the string stream.
widl: Write the user string stream.
widl: Write the blob stream.
widl: Write the guid stream.
winedump: Also dump the Culture column of the Assembly table.
widl: Write the table stream.
widl: Implement the Module table.
widl: Implement the TypeDef table.
widl: Implement the Assembly table.
widl: Implement the AssemblyRef table.
Huw D. M. Davies (1):
winemac: Ensure pglGetString is initialized before calling init_gl_info().
Jacek Caban (7):
msvcrt: Add empty block for __EXCEPT_PAGE_FAULT.
include: Use ULONG for RpcExceptionCode macro.
ntdll: Pass exception code to exception handlers in __C_specific_handler.
ntdll: Mark IsBadStringPtr functions as noinline.
configure: Enable -fasync-exceptions when supported.
include: Enable compiler exceptions on Clang for 64-bit MSVC targets.
ntdll/tests: Register runtime function in test___C_specific_handler.
Jinoh Kang (2):
server: Add `nested` parameter to redraw_window().
server: Remove unused parameter `frame` from redraw_window().
Louis Lenders (4):
wbemprox: Return the SMBIOSTableData[] when querying SMBiosData.
user32: Add stub for SetProcessLaunchForegroundPolicy.
pdh: Add stub for PdhEnumObjects{A,W}.
pdh: Add stub for PdhGetRawCounterArrayW{A,W}.
Makarenko Oleg (1):
winebus: Fix detection of devices with no axis.
Michael Stefaniuc (4):
dmime: Handle (skip over) text MIDI meta events.
dmime: Print the MIDI meta event type for unhandled messages.
dmime: Support the MIDI meta end of track event.
dmime: Parse and ignore MIDI key signature meta events.
Mohamad Al-Jaf (10):
include: Add dxcore C interface macros.
dxcore/tests: Add DXCoreCreateAdapterFactory() tests.
dxcore: Implement DXCoreCreateAdapterFactory().
dxcore/tests: Add IDXCoreAdapterFactory::CreateAdapterList() tests.
dxcore: Partially implement IDXCoreAdapterFactory::CreateAdapterList().
dxcore: Implement IDXCoreAdapterList::GetAdapterCount().
dxcore/tests: Add IDXCoreAdapterList::GetAdapter() tests.
dxcore: Implement IDXCoreAdapterList::GetAdapter().
dxcore/tests: Add IDXCoreAdapter::GetProperty() tests.
dxcore: Implement IDXCoreAdapter::GetProperty(HardwareID).
Nikolay Sivov (14):
comctl32/taskdialog: Protect WM_COMMAND handler from partially initialized dialog.
dwrite: Update script information with Unicode 14-16 additions.
odbc32: Ignore SQL_ATTR_CONNECTION_POOLING on global environment.
odbc32: Improve string attribute detection in SQLSetStmtAttr().
odbc32: Fix data buffer size handling when forwarding SQLGetInfo -> SQLGetInfoW.
windowscodecs/tiff: Remove remaining endianess compiler checks.
windowscodecs/metadata: Remove remaining endianess compiler checks.
windowscodecs/tiff: Fix source buffer size for 16bpp format (ASan).
odbc32: Destroy child objects automatically on successful SQLDisconnect().
comctl32/listview: Fix lbutton item selection with Shift+Ctrl.
comctl32/listview: Do not consider key state when navigating with alphanumeric keys.
d3dx9/tests: Add an effect compiler test for accessing functions.
mf/samplegrabber: Initialize state -> event map in a more robust way.
mf/clock: Initialize state -> notification map in a more robust way.
Panayiotis Talianos (1):
wined3d: Swap wined3d_resource.heap_pointer on swapchain present.
Paul Gofman (4):
wbemprox: Only use IOCTL_DISK_GET_DRIVE_GEOMETRY_EX if GetDiskFreeSpaceExW() fails.
mountmgr.sys: Fill DiskNumber and ExtentLength for IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS.
win32u: Implement NtGdiDdDDIOpenAdapterFromDeviceName().
ntdll: Avoid excessive committed range scan in NtProtectVirtualMemory().
Piotr Caban (24):
oledb32: Remove leading whitespaces from property name in datainit_GetDataSource.
msado15: Don't clear VARIANT in _Record_get_ActiveConnection.
msado15: Don't store active connection as variant.
msado15: Add _Recordset_putref_ActiveConnection implementation.
msado15: Add _Recordset_put_ActiveConnection implementation.
msado15: Use _Recordset_put_ActiveConnection in recordset_Open implementation.
msado15: Don't overwrite data in resize_recordset.
msado15: Avoid unneeded data copy in load_all_recordset_data.
msado15: Set recordset index in load_all_recordset_data.
msado15: Handle rowsets with unknown number of rows in load_all_recordset_data.
msado15: Add support for obtaining base tables and views in _Recordset_Open.
include: Define DBSCHEMA_* GUIDs.
include: Add dbsrst.idl.
msado15: Return error in recordset_MoveNext when there are no more records.
msado15: Skip columns without name in create_bindings.
msado15: Handle DBTYPE_VARIANT in load_all_recordset_data.
msado15: Pass DBCOLUMNINFO to append_field helper.
msado15: Add Field_put_Precision implementation.
msado15: Add Field_get_Precision implementation.
msado15: Add Field_put_NumericScale implementation.
msado15: Add Field_get_NumericScale implementation.
msado15: Handle DBTYPE_DATE in load_all_recordset_data.
msado15: Add connection_OpenSchema implementation.
include: Add DBBOOKMARK enum.
Rémi Bernon (39):
winex11: Remove unnecessary mutable_pf member.
opengl32: Move legacy extensions fixup from winex11.
winex11: Focus the desktop window when _NET_ACTIVE_WINDOW is None.
winex11: Don't activate/update foreground in virtual desktop mode.
win32u: Pass opengl_funcs pointer to init_wgl_extensions.
win32u: Initialize opengl_funcs tables even on failure.
win32u: Move the opengl_funcs tables out of the drivers.
include: Generate EGL prototypes and ALL_EGL_FUNCS macro.
win32u: Load EGL and expose functions in opengl_funcs.
winewayland: Use the EGL functions loaded from win32u.
wineandroid: Use the EGL functions loaded from win32u.
Revert "winex11: Focus the desktop window when _NET_ACTIVE_WINDOW is None."
winex11: Track _MOTIF_WM_HINTS property in the window state.
winex11: Avoid unnecessary _NET_WM_FULLSCREEN_MONITORS requests.
winex11: Trace more window change request serials.
winex11: Move managed window check to window_set_net_wm_state.
winex11: Update the current window state when ignoring events.
win32u: Open and initialize an EGL platform display.
wineandroid: Use the EGL display opened from win32u.
winewayland: Use the EGL display opened from win32u.
win32u: Introduce an EGL opengl_driver_function table.
win32u: Implement OpenGL pixel formats over EGL configs.
wineandroid: Use win32u for EGL display and pixel formats.
winewayland: Use win32u for EGL display and pixel formats.
winex11: Keep track of xinerama fullscreen monitors generation.
winex11: Continue requesting desired window state on no-op event.
winex11: Serialize individual _NET_WM_STATE bit changes.
winex11: Track window pending config position / size independently.
winex11: Keep track of the last config above flag used.
winex11: Serialize managed window config change requests.
winex11: Serialize window config requests with some other requests.
winex11: Don't set _MOTIF_WM_HINTS / _NET_WM_STATE for embedded windows.
winex11: Avoid requesting impossible state changes over and over.
winex11: Don't delay config requests for embedded windows.
winex11: Don't expect an event from config requests while window is unmapped.
winex11: Wait for decoration change side effects before changing focus.
user32/tests: Flush events before changing foreground.
user32/tests: Make test_foregroundwindow test more reliable.
winex11: Listen for ConfigureNotify events on the virtual desktop.
Santino Mazza (3):
amstream: Call QueryAccept with the new media type.
amstream/tests: Test how the ddraw allocator properties change.
amstream: Return error when calling SetFormat with allocated samples.
Steven Flint (1):
ntdll: Implement RtlCreateServiceSid.
Vibhav Pant (6):
winebth.sys: Implement IOCTL_WINEBTH_RADIO_START_AUTH.
bluetoothapis: Implement BluetoothAuthenticateDeviceEx.
bluetoothapis: Use a wizard GUI to respond to pairing requests if an authentication callback is not registered.
bluetoothapis/tests: Add tests for BluetoothAuthenticateDeviceEx.
winebth.sys: Don't decrement the reference count for the DBusPendingCall received by bluez_device_pair_callback.
bluetoothapis: Fix a potential handle leak in BluetoothAuthenticateDeviceEx.
Yuxuan Shui (4):
wineps.drv: Avoid double destroy of PSDRV_Heap.
ntdll: Fix out-of-bound read in RtlIpv6AddressToStringExA.
xmllite/tests: Fix out-of-bound read.
crypt32: Fix invalid access of list head.
Zhiyi Zhang (26):
include: Avoid a C++ keyword.
windows.ui: Return a newer IUISettings5 interface.
windows.ui: Use helpers to implement IWeakReference.
geolocation: Use helpers to implement IWeakReference.
wintypes/tests: Use defined constants.
wintypes: Implement IReference<UINT32>.
wintypes: Implement IReference<BYTE>.
wintypes: Implement IReference<FLOAT>.
wintypes: Implement IReference<GUID>.
wintypes: Implement IReference<INT16>.
wintypes: Implement IReference<INT32>.
wintypes: Implement IReference<INT64>.
wintypes: Implement IReference<UINT64>.
wintypes: Implement IReference<DateTime>.
wintypes: Implement IReference<Point>.
wintypes: Implement IReference<Rect>.
wintypes: Implement IReference<Size>.
wintypes: Implement IReference<TimeSpan>.
d3d11/tests: Test newer device interfaces.
d3d11: Add ID3D11Device3 stub.
d3d11: Add ID3D11Device4 stub.
d3d11: Add ID3D11Device5 stub.
dxgi: Add IDXGIResource1 stub.
dxgi: Add IDXGISurface2 stub.
dxgi/tests: Add tests for subresource surfaces.
dxgi: Implement subresource surface support.
```
1
0
The Wine development release 10.8 is now available.
What's new in this release:
- User handles in shared memory for better performance.
- Improvements to TIFF image support.
- More work on the new PDB backend.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.8.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.8/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.8 (total 18):
- #37813 Defiance fails to connect to login Server
- #51248 UrlGetPart produces different results from Windows
- #54995 msys2-64/cygwin64: git clone fails with 'Socket operation on non-socket'
- #56723 Vegas Pro 14: crash upon creating the main window
- #56983 UI: Application using ModernWPF crashes, Windows.UI.ViewManagement.UISettings not implemented
- #57148 cmd,for: ghidraRun.bat shows: Syntax error: unexpected IN
- #57397 Apps hang when trying to show tooltip
- #57424 msys2-64/cygwin64: mintty.exe not able to show bash.exe output.
- #57575 dmsynth: incorrect condition for buffer underrun in synthsink.c:synth_sink_write_data
- #57805 Wine CoreMIDI: Extra program change event on sending program change through MIDI Output from winmm
- #57941 Build broken with libglvnd <=1.3.3
- #57986 Final Fantasy XI Online window borders and content behave strangely
- #58067 comctl32/edit: Unable to enter values in Adobe Lightroom Classic 10.4
- #58085 foobar2000. Columns UI user interface error listing fonts using DirectWrite
- #58185 Country Siblings: EXCEPTION_ACCESS_VIOLATION related with D3D11
- #58191 dwrite tests fail to compile with mingw-gcc 15 due to attempt to link to truncf
- #58207 Caret gets broken in Edit (incl Combobox) when using long texts
- #58212 boost::interprocess::named_mutex does not work
### Changes since 10.7:
```
Adam Markowski (1):
po: Update Polish translation.
Akihiro Sagawa (5):
d2d1: Fix a crash in Clear method if no target is set.
d2d1: Fix a crash in DrawBitmap method family if no target is set.
d2d1: Fix a crash in DrawGeometry method family if no target is set.
d2d1: Fix a crash in FillGeometry method family if no target is set.
d2d1: Fix a crash in DrawGlyphRun method family if no target is set.
Alex Henrie (5):
dsound/tests: Allocate right amount of memory in test_secondary8 (ASan).
opcservices: Fix string comparison in opc_part_uri_get_rels_uri.
mfmediaengine/tests: Mark a refcount test in test_SetCurrentTime as flaky.
quartz: Clamp MediaSeeking_GetCurrentPosition to the stop position.
quartz/tests: Increase the timeout of a pause test in test_media_event.
Alexandre Julliard (16):
shell32/tests: Remove leftover file that hides succeeding tests.
tools: Add support for syscalls with a custom entry point.
ntdll: Define NtQueryInformationProcess as a custom syscall.
ntdll: Don't require syscall flag on Zw functions.
ntdll/tests: Add a test for syscall numbering.
dbghelp: Fix wrong variable used in EX case.
mountmgr: Remove redundant casts.
odbc32: Remove redundant casts.
opengl32: Remove redundant casts.
winebth.sys: Remove redundant casts.
winegstreamer: Remove redundant casts.
wineps: Remove redundant casts.
winedmo: Remove redundant casts.
ntdll: Use the appropriate type for the xstate_features_size variable.
include: Add some fields to the user shared data.
include: Fix the name of the user shared data structure.
Alexandros Frantzis (2):
winewayland: Use ARGB buffers for shaped windows.
winex11: Initialize ex_style_mask output parameter.
Alfred Agrell (9):
ntdll: Fix RtlUTF8ToUnicodeN for expected output ending with a surrogate pair that doesn't fit.
include: Fix a typoed vtable call macro.
include: Fix some typoed vtable call macros.
include: Fix a typoed vtable call macro.
include: Fix a typoed vtable call macro.
include: Fix some typoed vtable call macros.
include: Fix some typoed comments.
include: Fix some typoed vtable call macros.
include: Fix some typoed vtable call macros.
Alistair Leslie-Hughes (6):
odbc32: SQLColAttributesW accept field id SQL_COLUMN_NAME.
include: Add ApplicationRecoveryInProgress/Finished prototype.
include: Add InitNetworkAddressControl prototype.
include: Add some SHARD_* defines.
include: Add some ENDSESSION_* defines.
include: Add IHTMLOptionButtonElement interface.
Andrew Nguyen (1):
wine.inf: Add BootId value for Session Manager\Memory Management\PrefetchParameters key.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (1):
server: Improve returned value in member WriteQuotaAvailable.
Brendan McGrath (3):
winegstreamer: Only align the first plane in gst_video_info_align.
winegstreamer: Allow decodebin to eliminate caps that don't use system memory.
mfreadwrite: Use stream_index from ASYNC_SAMPLE_READY command.
Brendan Shanks (5):
winemac: Set the OpenGL backbuffer size to the size in window DPI.
winhttp: Use GlobalAlloc for the result of WinHttpDetectAutoProxyConfigUrl.
winhttp: Add a cache to WinHttpDetectAutoProxyConfigUrl().
nsiproxy: Set the name of internal threads.
nsiproxy: Implement change notifications for NSI_IP_UNICAST_TABLE on macOS.
Connor McAdams (6):
d3dx9: Make functions for pixel copying/conversion/filtering static.
d3dx9: Move code for format conversion of a single pixel into a common helper function.
d3dx9/tests: Add some color key tests.
d3dx9: Set all color channels to zero when color keying.
d3dx9: Calculate a range of color key channel values in d3dx_load_pixels_from_pixels() if necessary.
d3dx9: Don't color key compressed pixel formats on 32-bit d3dx9.
Dmitry Timoshkov (3):
combase: Find correct apartment in ClientRpcChannelBuffer_SendReceive().
user32/tests: Add a message test for listbox redrawing after LB_SETCOUNT.
ldap: Use correct SPN when authenticating to Kerberos DC.
Eric Pouech (17):
dbghelp: Introduce a cache for loading blocks in new PDB reader.
winedump: Dump some symbols for managed code.
dbghelp: Silence symbol for managed code.
dbghelp: Silence FIXME when dealing with empty hash table.
dbghelp: Fix using Start parameter in TI_FINDCHILDREN request.
dbghelp: Get rid of code quality warning.
dbghelp: Return method_result from pdb_reader_request_cv_typeid.
dbghelp: Load global symbols from DBI.
dbghelp: Beef up reading compiland header helper.
dbghelp: Build compiland table for new PDB reader.
dbghelp: Create all symt* from new PDB reader.
dbghelp: Workaround SAST false positive.
dbghelp: Skip compilands without MSF stream (new PDB).
dbghelp: Add method to query backend for symbol by address.
dbghelp: Add method to query symbols by name.
dbghelp: Add method to enumerate symbols.
dbghelp: Load compilands on demand (new PDB).
Gabriel Ivăncescu (29):
mshtml: Ignore setting non-writable external props.
mshtml: Don't redefine deleted props in dispex_define_property.
jscript: Properly fill the builtin props.
mshtml: Expose "arguments" from host functions in IE9+ modes.
mshtml: Expose "caller" from host functions in IE9+ modes.
mshtml: Expose "arguments" and "caller" from host constructors in IE9+ modes.
mshtml: Get rid of useless "iter" member in the attribute collection enum.
mshtml/tests: Test iframe window navigation resetting props.
mshtml: Fill the props in the host method instead of enumerating next prop.
mshtml: Only fill the external props once, unless they are volatile.
mshtml: Properly fill the prototype's "constructor" prop.
mshtml: Properly fill the constructor's "prototype" prop.
mshtml: Properly fill the window's constructors.
mshtml: Properly fill the window's script vars.
mshtml: Enumerate all own custom props if requested.
mshtml: Implement nodeType prop for attributes.
mshtml: Implement attributes prop for attributes.
mshtml: Implement ownerDocument prop for attributes.
mshtml: Implement cloneNode for attributes.
mshtml: Implement appendChild for attributes.
mshtml: Implement insertBefore for attributes.
mshtml: Implement hasChildNodes for attributes.
mshtml: Implement childNodes prop for attributes.
mshtml: Implement firstChild prop for attributes.
mshtml: Implement lastChild prop for attributes.
mshtml: Implement previousSibling prop for attributes.
mshtml: Implement nextSibling prop for attributes.
mshtml: Implement replaceChild for attributes.
mshtml: Implement removeChild for attributes.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.315.
Hans Leidekker (2):
winedump: Improve formatting of CLR metadata.
wldap32: Don't map errors from ldap_set_optionW().
Jacek Caban (2):
mshtml: Add CSSStyleDeclaration::content property implementation.
ntdll/tests: Initialize out buffer in threadpool tests.
Jinoh Kang (2):
include: Fix ARM64EC acq/rel barrier to match ARM64.
user32/tests: Test BeginPaint() clipbox of cropped window with CS_PARENTDC.
Mike Swanson (1):
notepad: Restructure menus and make hot-keys unique.
Mohamad Al-Jaf (6):
windows.ui: Implement IUISettings4 stub.
windows.ui: Implement IUISettings5 stub.
coremessaging: Add IDispatcherQueueControllerStatics stub.
coremessaging/tests: Add IDispatcherQueueControllerStatics::CreateOnDedicatedThread() tests.
coremessaging/tests: Add CreateDispatcherQueueController() tests.
coremessaging: Partially implement CreateDispatcherQueueController().
Nikolay Sivov (17):
windowscodecs/tests: Use wide-char literals in tests.
windowscodecs/converter: Add 48bppRGBHalf -> 32bppBGRA conversion path.
windowscodecs/converter: Add 48bppRGBHalf -> 128bppRGBFloat conversion path.
windowscodecs/tests: Add a test for 24bpp TIFF with separate sample planes.
windowscodecs/tiff: Add support for files with separate planes.
windowscodecs: Fix information strings for the Ico decoder.
windowscodecs: Fix information strings for the Jpeg decoder.
windowscodecs: Fix information strings for the Tiff decoder.
libs: Enable JPEG codec in libtiff.
windowscodecs/tiff: Use libjpeg for colorspace conversion YCbCr -> RGB.
windowscodecs/tests: Add some tests for multi-frame tiffs vs SUBFILETYPE tag.
windowscodecs/tiff: Skip frames marked with SUBFILETYPE(0x1).
comctl32/edit: Remove change notifications on Ctrl+A selections.
user32/edit: Reset internal capture state on WM_CAPTURECHANGED.
comctl32/edit: Reset internal capture state on WM_CAPTURECHANGED.
windowscodecs/tiff: Zero-initialize decoder structure.
gdi32/uniscribe: Do not limit the number of items in ScriptStringAnalyse().
Paul Gofman (10):
win32u: Don't redraw window in expose_window_surface() if window has surface.
win32u: Don't inflate rect in expose_window_surface().
shell32: Avoid writing past end of xlpFile or lpResult in SHELL_FindExecutable().
ntdll: Bump current build number to 19045 (Win10 22H2).
services: Create ImagePath registry value with REG_EXPAND_SZ type.
ntdll: Allocate output string if needed for REG_EXPAND_SZ in RTL_ReportRegistryValue().
user32: Add stub for IsWindowArranged().
msvcp: Use _beginthreadex() in _Thrd_start().
kernel32/tests: Add test for removing completion port association with job.
server: Support removing completion port association with job.
Piotr Caban (12):
netapi32: Validate bufptr argument before accessing it.
netapi32: Fix WOW64 server_getinfo thunk.
netapi32: Fix WOW64 share_add thunk.
netapi32: Fix WOW64 wksta_getinfo thunk.
netapi32: Use correct allocators for buffers returned by NetServerGetInfo and NetWkstaGetInfo.
netapi32: Add NetShareGetInfo implementation for remote machines.
ntdsapi: Add DsMakeSpnA implementation.
ntdsapi: Fix referrer handling in DsMakeSpnW function.
msado15: Don't return early in _Recordset_Open if there are no columns.
msado15: Initialize columns in ADORecordsetConstruction_put_Rowset.
msado15: Fix Fields object refcounting.
msado15/tests: Fix some memory leaks.
Rémi Bernon (37):
winebus: Ignore mouse / keyboard hidraw devices by default.
server: Remove const qualifier from shared memory pointers.
include: Implement ReadAcquire64.
server: Use NTUSER_OBJ constants for user object types.
server: Allocate a session shared memory header structure.
server: Move the user object handle table to the shared memory.
win32u: Use the session shared object to implement is_window.
win32u: Use the session shared object for user handle entries.
winewayland: Implement window surface shape and color keying.
windows.gaming.input: Move async impl interfaces to a dedicated IDL.
windows.media.speech: Sync async impl with windows.gaming.input.
cryptowinrt: Sync async impl with windows.gaming.input.
windows.devices.enumeration: Sync async impl with windows.gaming.input.
windows.security.credentials.ui.userconsentverifier: Sync async impl with windows.gaming.input.
server: Remove unused get_window_info atom reply parameter.
win32u: Read the windows full handle from the shared memory.
win32u: Use the session user entries for is_current_thread_window.
win32u: Use the session user entries for is_current_process_window.
win32u: Read window tid / pid from the session shared memory.
wineandroid: Get rid of now unnecessary function loading.
winex11: Get rid of now unnecessary function loading.
winemac: Get rid of now unnecessary function loading.
winewayland: Get rid of now unnecessary function loading.
win32u: Pass thread id to next_process_user_handle_ptr.
win32u: Get rid of struct WND tid member.
win32u: Get rid of struct user_object.
gitlab: Run ntoskrnl tests with win64 architecture.
windows.devices.enumeration: Factor DeviceWatcher creation in a device_watcher_create helper.
windows.devices.enumeration: Implement DeviceWatcher::get_Status.
windows.devices.enumeration: Implement DeviceWatcher async state changes.
windows.devices.enumeration: Split setupapi device enumeration to a separate helper.
windows.media.speech/tests: Make refcount tests results deterministic.
win32u: Don't load the display drivers in service processes.
win32u: Rename set_window_style to set_window_style_bits.
win32u: Add NtUserAlterWindowStyle syscall stub.
win32u: Implement and use NtUserAlterWindowStyle.
winebus: Skip device stop if it wasn't started.
Tim Clem (2):
ntdll: Treat TokenElevationTypeDefault tokens in the admin group as elevated.
advapi32/tests: Skip a token elevation test if OpenProcess fails.
Vibhav Pant (8):
windows.devices.enumeration/tests: Add conformance tests for FindAllAsync().
windows.devices.enumeration: Add a stubbed implementation for FindAllAsync() and DeviceInformationCollection.
windows.devices.enumeration: Add a stubbed IDeviceInformation implementation for device interfaces.
windows.devices.enumeration: Create IDeviceInformation objects from all present device interfaces.
windows.devices.enumeration: Add tests for initial device enumeration in DeviceWatcher.
windows.devices.enumeration: Implement IDeviceInformationStatics::CreateWatcher.
windows.devices.enumeration: Implement EnumerationCompleted handler for DeviceWatcher.
windows.devices.enumeration: Implement initial device enumeration for DeviceWatcher::Start().
Yeshun Ye (3):
dssenh: Add 'CRYPT_VERIFYCONTEXT | CRYPT_NEWKEYSET' support for CPAcquireContext.
dssenh/tests: Add test for CryptAcquireContextA.
find: Support switch /i or /I.
Yuxuan Shui (3):
win32u: Fix potential use of uninitialized variables.
msvcrt: Use _LDOUBLE type in exported functions.
ntdll: Also relocate entry point for builtin modules.
Zhiyi Zhang (4):
windows.ui: Implement IWeakReferenceSource for IUISettings.
windows.ui: Implement weak_reference_source_GetWeakReference().
include: Add windows.ui.viewmanagement.core.idl.
include: Add ID3D11FunctionLinkingGraph.
Ziqing Hui (11):
shell32/tests: More use of check_file_operation helper in test_copy.
shell32: Fail if wildcards are in target file names.
shell32: Introduce file_entry_{init,destroy} helpers.
shell32: Remove a useless index variable in parse_file_list.
shell32: Rework FO_COPY operation.
shell32: Remove useless bFromRelative member.
shell32: Add overwrite confirmation for FO_COPY.
shell32/tests: Add more wildcard target tests.
shell32: Introduce has_wildcard helper.
shell32: Handle invalid parameter correctly for SHFileOperationW.
shell32: Introduce parse_target_file_list helper.
```
1
0
The Wine development release 10.7 is now available.
What's new in this release:
- User fault fd support to improve write watches performance.
- Support for Float format conversions in WindowsCodecs.
- More work on the new PDB backend.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.7.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.7/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.7 (total 14):
- #18803 PokerStars windows disappear on alert
- #18926 In Winamp, the "send to..." submenu in the playlist menu does not appear
- #20172 Button "Alt Gr" triggers access violation in Teach2000
- #31775 Misaligned icons in icon bar
- #33624 winhelp: Popups appear with bogus scrollbars which disappear when you click them
- #37706 ScrollWindowEx() returns ERROR if the window is not visible (in the Windows API sense); real Windows returns NULLREGION
- #38379 Barnham Junction fails to start "Cannot create file C\users\username\Temp\BBC*.tmp\Sim Resources\Barnham Junction\Nameboard.bmp"
- #48792 HeidiSQL: some icons completely grayed out
- #50226 Native Access 1.13.5 Setup PC.exe Installer installs infinitely
- #50851 The procedure entry point RasClearConnectionStatistics could not be located in the dynamic link library RASAPI32.dll
- #56107 Comdlg32/Color - Cross not painted
- #57684 Games do not receive keyboard input in virtual desktop mode
- #58072 LVSCW_AUTOSIZE does not include the size of the state imagelist
- #58082 Race condition in GlobalMemoryStatusEx() implementation
### Changes since 10.6:
```
Adam Markowski (1):
po: Update Polish translation.
Akihiro Sagawa (3):
cmd: Use the OEM code page if GetConsoleOutputCP fails.
cmd/tests: Add updated code page test in batch file.
cmd: Use the console output code page to read batch files.
Alex Henrie (2):
gdi32: Limit source string length in logfont_AtoW (ASan).
gdi32: Ensure null termination in logfont_AtoW.
Alexander Morozov (3):
ntoskrnl.exe/tests: Test some Io functions with FDO and PDO.
ntoskrnl.exe/tests: Test that calling some Io functions does not result in receiving IRP_MN_QUERY_ID.
ntoskrnl.exe: Fix getting DevicePropertyEnumeratorName.
Alexandre Julliard (25):
ntdll: Round the virtual heap size to a page boundary.
kernel32/tests: Don't use _ReadWriteBarrier on ARM platforms.
configure: Default to MSVC mode with LLVM cross-compilers.
configure: Move cross-compiler checks before header checks.
configure: Make the missing PE compiler notice a warning.
configure: Use a standard pkg-config check for Alsa.
include: Use pragma push/pop.
tools: Use pragma push/pop.
dlls: Use pragma push/pop.
programs: Use pragma push/pop.
configure: Re-enable pragma pack warnings.
urlmon/tests: Run the ftp tests against test.winehq.org.
wininet/tests: Run the ftp tests against test.winehq.org.
include: Avoid long types on the Unix side.
ntdll: Remove redundant casts.
win32u: Remove redundant casts.
winex11: Remove redundant casts.
winemac: Remove redundant casts.
wineandroid: Remove redundant casts.
winewayland: Remove redundant casts.
tools: Fix tracing of empty strarray.
tools: Use booleans where appropriate.
tools: Generate syscall macros directly with the right offset.
tools: Add a platform-independent name for the ALL_SYSCALLS macros.
ntdll: Add a test for invalid syscall numbers.
Alexandros Frantzis (3):
winewayland: Support building with older EGL headers.
winewayland: Always check the role to determine whether a surface is a toplevel.
winewayland: Introduce helper to check whether a surface is toplevel.
Attila Fidan (1):
winewayland: Require wl_pointer for pointer constraints.
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Bernhard Übelacker (4):
ntoskrnl.exe/tests: Remove unused function pointers.
spoolss: Avoid buffer-overflow when setting numentries (ASan).
d3d11/tests: Add broken to test_nv12.
gdi32/tests: Remove one test for NtGdiMakeFontDir.
Billy Laws (2):
ntdll: Allow mem{cpy,move} optimisation now -fno-builtins is used.
ntdll: Check arm64ec TEB frames are valid before popping them.
Brendan McGrath (3):
mf: Update state and start clock for both paused and stopped.
mf: Reset audio client on flush.
winegstreamer: Handle the Stream Group Done event.
Brendan Shanks (2):
win32u: Enter font_lock in NtGdiMakeFontDir.
win32u: Raise realized font handle limit to 5000.
Charlotte Pabst (1):
mfplat/tests: Don't assume video processor MFT can provide samples.
Dmitry Timoshkov (3):
user32/tests: Add more ScrollWindowEx() tests.
win32u: Fix return value of ScrollWindowEx() for invisible windows.
windowscodecs: Also initialize FlipRotator.bpp field.
Elizabeth Figura (4):
wined3d/glsl: Move clip distance enabling to shader_glsl_apply_draw_state().
wined3d/glsl: Move GL_FRAMEBUFFER_SRGB application to shader_glsl_apply_draw_state().
wined3d: Move SRGB write enable to wined3d_extra_ps_args.
wined3d: Move the clip plane mask to wined3d_extra_vs_args.
Eric Pouech (9):
dbghelp: Move typedef handling to the new PDB backend.
dbghelp: Add user field to function and inline sites.
dbghelp: Move reading inlinee line number information to PDB backend.
dbghelp: Directly store compiland's name in symt_compiland.
dbghelp: Use symref_t to describe a symbol's container.
cmd: Factor out code_page when searching for a label.
conhost: Add support for ESC in win32 edit mode.
conhost: Handle ctrl-break unconditionally.
conhost: Handle ctrl-c from unix console in ReadConsoleW + control.
Esme Povirk (7):
oleaut32: Use apartment-less WIC.
oleaut32: Copy palette from WIC source for indexed formats.
gdiplus: Limit clip region calculation to device rectangle.
gdiplus: Don't trace old values in GdipSetMatrixElements.
appwiz.cpl: Report addon download failures.
comctl32: Implement EVENT_OBJECT_STATECHANGE for progress control.
comctl32: Implement EVENT_OBJECT_VALUECHANGE for progress bars.
Francisco Casas (1):
d2d1: Compile shaders on device creation instead of device context creation.
Gabriel Ivăncescu (9):
mshtml: Rename struct constructor to stub_constructor.
mshtml: Consolidate the functional constructors into a common struct implementation.
mshtml: Define the constructor's prototype on mshtml side.
mshtml: Define "create" from XMLHttpRequest constructor as a jscript prop in IE9+ modes.
mshtml: Return proper string from functional constructors' toString in IE9+ modes.
mshtml: Store the object_id of the last object in the prototype chain that contains the needed prop.
mshtml: Validate builtin host functions in IE9+ using prototype_id rather than tid where possible.
mshtml: Use designated initializers for the Location dispex data.
mshtml: Remove unused struct mutation_observer_ctor.
Hans Leidekker (3):
odbc32: Fix replicating unixODBC data sources.
include: Fix typos in exclusiveto attributes.
msv1_0: Drop the ntlm_auth check.
Jinoh Kang (4):
Revert "kernel32/tests: Don't use _ReadWriteBarrier on ARM platforms."
kernel32/tests: Don't use _ReadWriteBarrier() on clang.
kernel32/tests: Run store_buffer_litmus_test() in a single-iteration loop.
kernel32/tests: Shorten time for negative half of litmus test for FlushProcessWriteBuffers().
Keno Fischer (1):
ntdll: Make server requests robust to spurious short writes.
Louis Lenders (1):
combase: Add stub for RoOriginateErrorW.
Marc-Aurel Zent (4):
server: Store process base priority separately.
server: Use process base priority in set_thread_base_priority.
ntdll: Implement ProcessBasePriority class in NtSetInformationProcess.
ntdll/tests: Add tests for setting process base priority.
Michael Stefaniuc (2):
maintainers: Remove myself as the Stable maintainer.
dmsynth: Don't report an underrun when current equals write position.
Mohamad Al-Jaf (4):
windows.media.mediacontrol: Fix a memory leak.
windows.devices.enumeration: Guard against WindowsDuplicateString() failure.
windows.system.profile.systemid/tests: Add ISystemIdentificationInfo::get_Id() tests.
windows.system.profile.systemid: Implement ISystemIdentificationInfo::get_Id().
Nikolay Sivov (23):
include: Add newer winhttp option constants.
comctl32/tests: Add a column width test for LVSCW_AUTOSIZE with a state imagelist.
comctl32/listview: Use state icon width when autosizing columns.
winedump: Fix a crash in 'dump' command.
include: Change the schannel.h guard name.
include: Add WINHTTP_SECURITY_INFO type.
windowscodecs/tests: Remove A->W test data conversion.
windowscodecs/tests: Add some tests for encoder info.
windowscodecs: Fix JPEG encoder information strings.
windowscodecs: Fix TIFF encoder information strings.
shell32: Simplify error handling when FolderItemVerbs object is created.
shell32: Fix use-after-free at FolderItemVerbs creation (ASan).
windows.ui/tests: Remove tests for exact color values.
uiautomationcore: Fix BSTR buffer overrun (ASan).
comdlg32/colordlg: Fix color picker cursor painting.
windowscodecs/png: Fix byte-swapping mode usage in the encoder.
windowscodecs/tests: Add a test for big-endian TIFF image data handling.
windowscodecs/tiff: Remove unnecessary image data byte-swaping.
windowscodecs/converter: Add 24bppBGR -> 128bppRGBAFloat conversion path.
windowscodecs/converter: Add 32bppBGRA - > 128bppRGBAFloat conversion path.
windowscodecs/converter: Add 128bppRGBAFloat -> 32bppBGRA conversion path.
windowscodecs/converter: Add 96bppRGBFloat -> 128bppRGBFloat conversion path.
windowscodecs/converter: Add 96bppRGBFloat -> 32bppBGRA conversion path.
Pali Rohár (2):
win87em: Fix __FPMATH symbol name.
krnl386: Set carry flag for unimplemented DPMI 0800h call (Physical Address Mapping).
Paul Gofman (6):
opengl32: Don't distinguish WGL_SWAP_EXCHANGE_ARB and WGL_SWAP_UNDEFINED_ARB when filtering in wglChoosePixelFormatARB().
kernel32/tests: Add more tests for write watches.
ntdll: Use UFFD for write watches support if available.
wbemprox: Implement Win32_CacheMemory table.
netapi32: Fix service names in NetStatisticsGet().
ntdll: Make sure NT flag is not set before iretq in wine_syscall_dispatcher_return on x86-64.
Piotr Caban (18):
msvcr110/tests: Link to msvcr110.
msvcr70/tests: Link to msvcr70.
msvcr71/tests: Link to msvcr71.
include: Add _FCbuild() declaration.
include: Add vsscanf declaration.
include: Add function declarations used in msvcr120 tests.
msvcr120/tests: Link to msvcr120.
msvcrt: Fix memory leaks in create_locinfo.
makefiles: Use -fno-builtin for CRT tests.
msvcr80/tests: Link to msvcr80.
include: Add functions used by msvcr90 tests.
msvcr90/tests: Link to msvcr90.
msvcrt: Avoid dynamic allocation when storing locale name.
msvcrt: Use LC_MAX constant in create_locinfo.
secur32/tests: Make NTLM server challenge blob human-readable.
secur32/tests: Use one copy of server challenge reply in NTLM tests.
secur32/tests: Fix NTLM tests on Windows 11 by accepting NTLMv2 in test server response.
secur32/tests: Don't accept NTLMv1 type 3 message in NTLM tests.
Rastislav Stanik (1):
kernelbase: Fix race condition in GlobalMemoryStatusEx().
Rémi Bernon (12):
d3d9/tests: Skip some d3d12 tests instead of crashing.
win32u: Use the driver_funcs interface for osmesa pixel formats.
win32u: Add an opengl_driver_funcs entry to implement wglGetProcAddress.
opengl32: Generate error messages in null functions.
opengl32: Pass null GL funcs to __wine_get_wgl_driver.
win32u: Add procedure loading to generic OpenGL code.
win32u: Add a generic wglSwapBuffers implementation.
wineandroid: Use the generic wglSwapBuffers implementation.
winemac: Use the generic wglSwapBuffers implementation.
winewayland: Use the generic wglSwapBuffers implementation.
winex11: Use the generic wglSwapBuffers implementation.
win32u: Add nulldrv swap_buffers implementation.
Stefan Dösinger (3):
odbc32: Don't call wcslen in debugstr_sqlwstr.
odbc32: Retlen may be NULL in SQLGetData.
msvcrt: Add truncf to the import library.
Tim Clem (1):
comctl32: Track initial taskdialog layout on a per-dialog basis.
Yuxuan Shui (1):
winegstreamer: Make sure WMSyncReader never reads in the background.
```
1
0
The Wine development release 10.6 is now available.
What's new in this release:
- New lexer in Command Processor.
- PBKDF2 algorithm in Bcrypt.
- More support for image metadata in WindowsCodecs.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.6.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.6/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.6 (total 27):
- #6682 IrfanView's 4.44 Help -> About window is missing a picture on the left
- #13884 No music in Blue Wish Resurrection Plus
- #29912 No parent button in file selection dialog
- #31701 Alan Wake crashes on start without native d3dx9_36
- #35652 Multiple MMORPH game launchers crash on startup or apps fail to update initial window content ('DIALOG_CreateIndirect' needs to trigger WM_PAINT)(Aeria Games 'Aura Kingdom', STOnline)
- #39453 Graphs not rendering using gdiplus
- #41729 2GIS 3.0 application crashes on exit.
- #44978 Text in WC3 World Editor isn't colored properly
- #45460 Running EVE Online keeps locking up after a few hours
- #48121 Unity games do not fire OnApplicationFocus/OnApplicationPause events on focus regain
- #51053 Alan Wake Crashes After Intro Cut Scene
- #51378 Failures with `DetourCreateProcessWithDllEx` for Microsoft's Detours Library
- #51546 Xenos 2.3.2 dll injector crashes
- #51575 Texconv fails with mipmap error unless "-nowic" is supplied to disable WIC use
- #51584 Zafehouse: Diaries demo needs support for pixel format DXT5 in D3DXSaveSurfaceToFileInMemory
- #52553 Resource Hacker 5.1.8 fails to render tree view on left, shows white screen
- #55819 when alt+tab out and in again, the input no longer working
- #56073 Some Unity games don't receive keyboard input when using virtual desktop
- #57283 The Queen of Heart 99 SE : corrupted visuals on KO screen
- #57492 Players can't join Astroneer dedicated server with enabled encryption because BCryptExportKey encryption of key not yet supported
- #57665 The Medium game launcher has no background image
- #57738 Title of "Select Topic" window in hh.exe is not translatable
- #57951 Ultrakill: level 1-1 has invisible tree leaves on WINED3D, works fine on DXVK
- #57998 ClickOnce apps don't start after installing winetricks dotnet472
- #58057 Certificate import wizard does not give visual confirmation when a specific certificate store is selected
- #58061 [FL Studio] When holding CTRL to zoom in the playlist, it also scrolls vertically - possible regression
- #58066 Virtual desktop doesn't resize correctly (missing window border) when VD size = desktop size
### Changes since 10.5:
```
Akihiro Sagawa (1):
server: Fix the accumulation method when merging WM_MOUSEWHEEL message.
Alex Henrie (1):
cryptui: Copy localized name of selected store to textbox.
Alexander Morozov (1):
ntoskrnl.exe/tests: Fix a test failure on 32-bit Windows 7.
Alexandre Julliard (37):
winegcc: Set default section alignment to 64k on ARM64.
winegcc: Add a boolean flag for the -marm64x option.
winebuild: Align sections to 64k on ARM64.
ntdll: Move a bit more work into the open_builtin_so_file() helper function.
ntdll: Add a helper function to open the main image as .so file.
ntdll: Move some code around to group together all functions related to .so dlls.
ntdll: Don't build support for .so dlls on platforms that don't have them.
win32u: Implement NtGdiMakeFontDir().
gdi32/tests: Add a test for NtGdiMakeFontDir().
gdi32: Use NtGdiMakeFontDir() to implement CreateScalableFontResourceW().
win32u: Remove the __wine_get_file_outline_text_metric() syscall.
win32u: Implement NtUserGetProcessDefaultLayout().
win32u: Implement NtUserBeginDeferWindowPos().
win32u: Implement NtUserSetForegroundWindow().
win32u: Implement NtUserKillSystemTimer().
cng.sys: Use the native subsystem.
hidclass.sys: Use the native subsystem.
hidparse.sys: Use the native subsystem.
wmilib.sys: Use the native subsystem.
mouhid.sys: Remove unneeded spec file.
makefiles: Require .sys modules to use the native subsystem.
mmdevapi: Move the device GUID cache to the common code.
mmdevapi: Move the registry device name lookup to the common code.
mmdevapi: Move assigning a device GUID to the common code.
mmdevapi: Forward driver entry points to the loaded driver.
winmm: Always load mmdevapi as audio driver.
mmdevapi: Get rid of the Wine info device.
mmdevapi: Move the auxMessage() implementation to the common code.
mmdevapi: Unload the driver module on process detach.
mmdevapi: Allow audio drivers to defer MIDI support to a different driver.
mmdevapi: Move the DriverProc implementation to the common code.
mmdevapi: Move the mid/modMessage implementations to the common code.
mmdevapi: Merge mmdevdrv.h into mmdevapi_private.h.
makefiles: Make spec files optional for driver modules.
ntdll: Add a stub for NtCreateSectionEx().
kernelbase: Implement CreateFileMapping2().
cmd/tests: Fix the NUL device name.
Bernhard Übelacker (7):
ws2_32/tests: Add broken to test_WSAAddressToString.
propsys/tests: Add broken to test_PropVariantChangeType_R8.
psapi/tests: Add broken to test_GetModuleFileNameEx.
winhttp/tests: Add broken to test_redirect.
setupapi/tests: Add broken to test_SetupDiOpenDeviceInterface.
advapi32/tests: Avoid crash in test_LsaLookupNames2 by setting len to zero.
ntdll/tests: Make single step test succeed for 32-bit systems.
Brendan McGrath (1):
winegstreamer: Push flush event when flushing.
Byeong-Sik Jeon (9):
win32u: Preserve result string from multiple WINE_IME_POST_UPDATE calls during ImeProcessKey.
win32u: Support WM_IME_KEYDOWN message during ImeProcessKey.
imm32: Fix the WM_IME_COMPOSITION messages to be between the WM_IME_{START|END}COMPOSITION message.
winewayland: Use an empty string to clear the composition string.
win32u: Add more CompAttr, CompClause implementation using cursor_begin, cursor_end concept.
winewayland: Extend cursor_pos using cursor_begin, cursor_end.
winemac: Extend cursor_pos using cursor_begin, cursor_end.
winex11: Extend cursor_pos using cursor_begin, cursor_end.
winex11: Update only when caret pos changed in xic_preedit_caret.
Charlotte Pabst (2):
mfplat/tests: Add test for MF_XVP_PLAYBACK_MODE.
winegstreamer: Allow caller to allocate samples in MF_XVP_PLAYBACK_MODE.
Conor McCarthy (1):
server: Do not call setpriority() if it cannot be used safely.
Daniel Lehman (3):
oleaut32/tests: Test for bpp.
oleaut32/tests: Add some test bmps.
oleaut32: Handle more pixel formats in OleLoadPicture.
Daniel Martin (1):
activeds: Implement ADsBuildVarArrayInt.
Dmitry Timoshkov (8):
sane.ds: Fix DC leak.
sane.ds: Change return type of sane_categorize_value() to void.
sane.ds: Clarify how SANE mode names map to ICAP_PIXELTYPE values.
sane.ds: Use sizeof() instead of hard-coded values, avoid zero initializing local variables when not necessary.
bcrypt/tests: Add a test for exporting/importing AES wrapped blob with different key sizes.
bcrypt: Add support for exporting AES wrapped blob for a 256-bit key.
bcrypt: Add support for importing AES wrapped blob for a 256-bit key.
cryptext: Implement CryptExtOpenCER.
Elizabeth Figura (12):
user32/tests: Test messages when creating a visible modeless dialog.
wined3d: Partially move fog mode to wined3d_extra_ps_args.
wined3d: Move alpha test func to wined3d_extra_ps_args.
wined3d: Partially move texture index and transform flags to wined3d_extra_ps_args.
wined3d: Make ffp_vertex_update_clip_plane_constants() static.
wined3d: Feed clip planes through a push constant buffer.
wined3d: Add support for a layered DPB.
ddraw/tests: Test a stretched blit to self with overlap.
wined3d: Fix a bit of logic around identical fog start/end.
ws2_32/tests: Add tests for socket handle validity checks in send functions.
ntdll: Validate fd type in IOCTL_AFD_WINE_COMPLETE_ASYNC.
ws2_32: Allow using duplicated socket handles in WS2_sendto().
Eric Pouech (31):
cmd/tests: Add more lexer related tests.
cmd: Rely on node_builder to get lexer state.
cmd: Check command buffer instead of keeping whitespace state.
cmd: Factorize end-of-line conditions.
cmd: Handle directly commands til eol.
dbghelp: Fix line number when multiple entries have same offset.
dbghelp: Always reset all the fields for local scope enumeration.
dbghelp: Don't report local symbols when they are not present.
dbghelp: Use new pdb reader for DEFRANGE based local variables.
dbghelp: Introduce helper to query info from index.
cmd: Rewrite string handling in lexer.
cmd: Remove unneeded variable 'thisChar' in lexer.
cmd: Removed acceptCommand variable.
cmd: Remove lastWasRedirect variable in lexer.
cmd: Fix infinite loop in FOR /L.
dbghelp: Add SYMFLAG_NULL for out of scope local variables.
dbghelp: Rename ptr <> index conversion helpers.
dbghelp: Introduce an opaque type to store type of data & function.
dbghelp: Use opaque symref_t inside typedef symbol.
dbghelp: Introduce helpers to discrimate symref_t owner.
dbghelp: Now returning PDB basic types as a symref_t.
dbghelp: Advertize old PDB reader types into new reader.
dbghelp: Add method for search type by name.
dbghelp: Add enum_types debug-info method.
dbghelp: Move pointer type handle to PDB backend.
dbghelp: Move array type handling to PDB backend.
dbghelp: Move function signature type handling to PDB backend.
dbghelp: Move enumeration type to PDB backend.
dbghelp: Move UDT type handling to PDB backend.
dbghelp: No longer preload the types from PDB.
dbghelp: Optimize request to codeview types.
Esme Povirk (13):
comctl32: Implement MSAA events for header controls.
gdiplus: Implement path to region conversion without gdi32.
gdiplus/tests: Test rounding of region rectangles.
advapi32: Return success from TreeSetNamedSecurityInfoW.
comctl32: Implement MSAA events for listbox.
comctl32/tests: Test MSAA events for listbox.
comctl32/tests: Add more MSAA event tests for listbox.
gdiplus: Limit path rasterization to region bounding box.
comctl32: Implement MSAA events for listview controls.
comctl32/tests: Test listview MSAA events.
comctl32/tests: Add test for MSAA event on listview setview.
gdiplus: Rename a misleading variable.
gdiplus: Simplify rect region conversion to HRGN.
Etaash Mathamsetty (2):
winewayland.drv: Implement support for xdg-toplevel-icon.
winewayland: Implement relative motion accumulator.
Fabian Maurer (2):
gdiplus/tests: Add test for loading .ico.
gdiplus: Use correct format guid for .ico files.
Gabriel Ivăncescu (5):
mshtml: Don't expose "create" from Image constructor in IE9+ modes.
mshtml: Don't expose "create" from Option constructor in IE9+ modes.
mshtml: Use own window property for Image constructor.
mshtml: Use own window property for Option constructor.
mshtml: Use get_constructor in window's get_XMLHttpRequest.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.312.
Gerald Pfeifer (2):
ntdll: Fix build on platforms without getauxval.
winemaker: Account for FreeBSD.
Giovanni Mascellani (1):
dxgi/tests: Do not request a frame latency waitable on D3D10.
Hans Leidekker (1):
rsaenh/tests: Get rid of workarounds for old Windows versions.
Jacek Caban (1):
mshtml: Rename prototype_id to object_id.
Joachim Priesner (1):
msvcrt: Concurrency: Fix signed/unsigned comparison.
John Szakmeister (1):
ntdll: Correctly detect the NUL device under macOS.
Lorenzo Ferrillo (7):
kernelbase: Factor out common functionality for performance counter functions.
kernelbase: Add implementation of PerfSetULongCounterValue.
kernelbase: Add implementation for PerfSetULongLongCounterValue.
advapi32/tests: Create tests for PerfSetULongCounterValue.
advapi32/tests: Add test For PerfSetULongLongCounterValue.
kernelbase: Check for PERF_ATTRIB_BY_REFERENCE attribute in PerfSetCounterRefValue.
kernelbase: Check for PERF_SIZE_LARGE in PerfSetULongLongCounterValue and PerfSetULongCounterValue.
Marcus Meissner (1):
configure: Avoid problems with -Werror=return-type in check.
Matteo Bruni (2):
d3dx9/tests: Clean up D3DXSaveTextureToFileInMemory tests.
d3dxof/tests: Get rid of test_dump().
Nikolay Sivov (33):
windowscodecs/tests: Add some tests for initial metadata readers content.
windowscodecs/tests: Add more tests for the item id handling.
windowscodecs/tests: Add some tests for bKGD chunk.
windowscodecs/tests: Add line context to the metadata comparison helper.
windowscodecs/tests: Remove redundant string length check for VT_LPSTR metadata value.
windowscodecs/tests: Use wide-char literals in metadata tests.
msvcirt/tests: Fix buffer overrun with a terminating null (ASan).
uiautomationcore/tests: Fix use-after-free (ASan).
windowscodecs/tests: Add another test case for 4bps tiff.
windowscodecs/tiff: Fix stride value for 4bps RGBA.
propsys/tests: Add more tests for PropVariantToDouble().
propsys/tests: Add some tests for PropVariantChangeType(VT_R8).
propsys/tests: Use correct members to initialize PropVariantToDouble() test input.
propsys: Fix PropVariantToDouble() for float input.
propsys: Implement PropVariantChangeType(VT_R8).
windowscodecs/tests: Add a PNG encoder test with 64bppRGBA format.
windowscodecs/tests: Add some tests for metadata handlers component info.
windowscodecs/tests: Add some more tests for creating metadata readers.
windowscodecs/tests: Add some tests for GetMetadataHandlerInfo().
windowscodecs/metadatahandler: Remove unused internal vtable entries.
windowscodecs/metadata: Pass handler pointer to the loader implementation.
windowscodecs/metadata: Make it possible to populate default items at creation time.
windowscodecs/metadata: Create default item for the gAMA reader.
windowscodecs/metadata: Create default items for the cHRM handler.
windowscodecs/metadata: Create default item for the hIST handler.
windowscodecs/metadata: Create default items for the tIME handler.
windowscodecs/tests: Add more tests for initial reader contents.
windowscodecs/metadata: Add default item for the GifComment handler.
windowscodecs/metadata: Implement bKGD chunk reader.
dwrite: Implement GetFontSet() for collections.
windowscodecs/metadata: Add a stub for bKGD writer.
windowscodecs/metadata: Add a stub for tIME writer.
combase: Add a stub for SetRestrictedErrorInfo().
Paul Gofman (2):
ntdll: Do not mark first stack guard page as committed.
ntdll: Add some specifics for NtQueryInformationProcess( ProcessDebugObjectHandle ) parameters handling.
Piotr Caban (16):
conhost: Allow raster fonts.
conhost: Merge validate_font and validate_font_metric helpers.
conhost: Imrove best matching font selection in set_first_font.
conhost: Prioritize font charset when selecting initial font.
advapi32: Make username and domain match case insensite.
include: Add some PBKDF2 related definitions.
bcrypt: Fix BcryptDeriveKeyPBKDF2 with NULL salt.
bcrypt: Add PBKDF2 algorithm provider.
bcrypt: Handle PBKDF2 in BCryptGetProperty.
bcrypt: Handle PBKDF2 in BCryptGenerateSymmetricKey.
bcrypt: Reorganize hash_handle_from_desc helper so it can be reused.
bcrypt: Add BCryptKeyDerivation partial implementation (PBKDF2 algorithm).
include: Add _[w]dupenv_s declaration.
include: Add _aligned_msize() declaration.
include: Add wmemmove_s declaration.
msvcr100/tests: Link to msvcr100.
Rémi Bernon (36):
winemac: Get DC pixel format from winemac-internal objects.
winex11: Trace XReconfigureWMWindow requests mask.
winex11: Send _NET_WM_STATE requests to X root window.
winex11: Only set NET_WM_STATE_FULLSCREEN for the desktop.
user32/tests: Add more SW_SHOWNA / SetFocus tests.
win32u: Set window foreground when setting focus.
kernel32/tests: Use the public PROCESS_BASIC_INFORMATION definition.
ntdll/tests: Use the public PROCESS_BASIC_INFORMATION definition.
winex11: Avoid sending WM_MOUSEACTIVATE on WM_TAKE_FOCUS.
winemac: Avoid sending WM_MOUSEACTIVATE on WM_TAKE_FOCUS.
explorer: Paint the desktop even without RDW_ERASE.
winex11: Avoid setting RDW_ERASE on expose events.
dbghelp/tests: Remove now succeeding todo_wine.
psapi/tests: Remove now succeeding todo_wine.
cfgmgr32/tests: Add Windows 7 broken result.
activeds: Use VT_I4 instead of VT_UI4.
inetmib1/tests: Avoid printing large number of failures on macOS.
kernel32/tests: Avoid printing large number of failures on macOS.
dbghelp/tests: Remove now succeeding todo_wine.
win32u: Handle some pixel format initialization.
opengl32/tests: Avoid leaking contexts.
opengl32/tests: Add more WGL_ARB_pbuffer tests.
opengl32/tests: Add more WGL_ARB_render_texture tests.
win32u: Introduce a generic pbuffer implementation from winex11.
winewayland: Use the generic pbuffer implementation.
winemac: Use the generic pbuffer implementation.
win32u: Add a nulldrv pbuffer stub implementation.
win32u: Introduce opengl_driver_funcs for memory DCs.
win32u: Pass pixel format to osmesa_create_context.
win32u: Implement generic context functions.
win32u: Check the DC internal pixel formats against the context format.
wineandroid: Use the generic context functions.
winemac: Use the generic context functions.
winewayland: Use the generic context functions.
winex11: Use the generic context functions.
win32u: Add nulldrv context functions.
Santino Mazza (5):
amstream: Implement IMemAllocator stub for ddraw stream.
amstream/tests: Test for custom allocator in ddraw stream.
amstream: Implement custom allocator for ddraw stream.
amstream/tests: Test for dynamic formats in ddraw stream.
amstream: Implement dynamic formats in ddraw stream.
Sebastian Lackner (1):
user32: Call UpdateWindow() after showing a dialog.
Stefan Dösinger (1):
odbc32: Call the driver's SQLGetInfoW after a->w conversion.
Sven Baars (8):
win32u: Fix a string leak (Valgrind).
ntdll/tests: Fix a leak on error path (Coverity).
ntdll/tests: Fix a string leak (Valgrind).
ntdll: Empty the atom table before destroying it (Valgrind).
ntdll/tests: Fix some string leaks (Valgrind).
ntdll/tests: Don't trace invalid pointers (Valgrind).
ntdll/tests: Fix some uninitialized variable warnings (Valgrind).
ntdll: Avoid evaluating a possibly uninitialized variable in RtlExpandEnvironmentStrings(). (Valgrind).
Tim Clem (1):
winemac.drv: Only send key down events to the window's inputContext.
Tobias Gruetzmacher (4):
wininet: Handle HTTP status code 308 (Permanent Redirect).
winhttp: Handle HTTP status code 308 (Permanent Redirect).
urlmon: Handle HTTP status code 308 (Permanent Redirect).
rsaenh: Ignore reserved field in import_key.
Vibhav Pant (10):
winebth.sys: Fix use-after-free in dispatch_auth (Coverity).
winebth.sys: Broadcast PnP event after updating properties for remote devices.
winebth.sys: Broadcast PnP event when remote devices are removed/lost.
winebth.sys: Broadcast GUID_BLUETOOTH_RADIO_IN_RANGE events for newly discovered remote devices as well.
ws2_32/tests: Allow socket() for Bluetooth RFCOMM sockets to fail with WSAEPROTONOSUPPORT.
winebth.sys: Implement IOCTL_BTH_DISCONNECT_DEVICE.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_REMOVE_DEVICE.
bluetoothapis: Add stub for BluetoothRemoveDevice.
bluetoothapis: Implement BluetoothRemoveDevice.
bluetoothapis/tests: Add tests for BluetoothRemoveDevice.
Yuri Hérouard (1):
wined3d: Use temporary buffer when stretching a surface to itself with cpu blit.
Zhiyi Zhang (7):
user32/tests: Properly test ShowWindow(SW_MAXIMIZE) regarding WS_CAPTION.
win32u: Fix incorrect work area for maximized windows.
user32/tests: Add more window placement maximized position tests.
win32u: Check against the monitor work area in update_maximized_pos().
win32u: Use a more fitting name for a helper function.
win32u: Properly scale monitor work area when emulate_modeset is enabled.
win32u: Support windows spanning multiple monitors in map_window_rects_virt_to_raw().
Ziqing Hui (6):
shell32/tests: Add more tests to test_rename.
shell32/tests: Test NULL and empty file name for SHFileOperation.
shell32/tests: Avoid showing UI when testing.
shell32: Rework add_file_entry, add more parameters.
shell32: Don't parse wildcard for rename operation.
shell32: Rework rename_files.
```
1
0
The Wine stable release 9.0.1 is now available.
What's new in this release:
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/9.0/wine-9.0.1.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-9.0.1/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 9.0.1 (total 74):
- #25207 SHFileOperation does not create new directory on FO_MOVE
- #33050 FDM (Free Download Manager) crashes with page fault when any remote FTP directory opened
- #44863 Performance regression in Prince of Persia 3D
- #46070 Basemark Web 3.0 Desktop Launcher crashes
- #46074 Visio 2013 crashes with unimplemented function msvcr100.dll.??0_ReaderWriterLock(a)details@Concurrency@@QAE(a)XZ
- #48110 Multiple .NET 4.x applications need TaskService::ConnectedUser property (Toad for MySQL Freeware 7.x, Microsoft Toolkit from MS Office 2013)
- #49089 nProtect Anti-Virus/Spyware 4.0 'tkpl2k64.sys' crashes on unimplemented function 'fltmgr.sys.FltBuildDefaultSecurityDescriptor'
- #49703 Ghost Recon fails to start
- #49877 Minecraft Education Edition shows error during install: Fails to create scheduled task
- #51285 The bmpcoreimage test in user32:cursoricon fails on most Windows versions
- #51599 cmd.exe incorrectly parses an all-whitespace line followed by a closing parenthesis
- #51813 python fatal error redirecting stdout to file
- #51957 Program started via HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths should also be started if extension ".exe" is missing
- #52399 SIMATIC WinCC V15.1 Runtime installer: SeCon tool fails with error 5 while trying to create 'C:\\windows\Security\\SecurityController' (needs '%windir%\\security')
- #52622 windows-rs 'lib' test crashes on unimplemented function d3dcompiler_47.dll.D3DCreateLinker
- #52879 ESET SysInspector 1.4.2.0 crashes on unimplemented function wevtapi.dll.EvtCreateRenderContext
- #53934 __unDName fails to demangle a name
- #54759 Notepad++: slider of vertical scrollbar is too small for long files
- #55000 wineserver crashes below save_all_subkeys after RegUnLoadKey
- #55268 user32:cursoricon - LoadImageA() fails in test_monochrome_icon() on Windows 8+
- #55282 Flutter SDK can't find "aapt" program (where.exe is a stub)
- #55421 Fallout Tactics launcher has graphics glitches
- #55619 VOCALOID AI Shared Editor v.6.1.0 crashes with System.Management.ManagementObject object construction
- #55724 mfmediaengine:mfmediaengine sometimes gets a threadpool assertion in Wine
- #55765 The 32-bit d2d1:d2d1 frequently crashes on the GitLab CI
- #55810 Finding Nemo (Steam): window borders gone missing (virtual desktop)
- #55876 Acrom Controller Updater broken due to oleaut32 install
- #55883 SpeedWave can't draw Window, needs oleaut32.OleLoadPictureFile().
- #55897 cpython 3.12.0 crashes due to unimplemented CopyFile2
- #55945 KakaoTalk crashes when opening certain profiles after calling GdipDrawImageFX stub
- #55997 Dolphin Emulator crashes from 5.0-17264
- #56054 Microsoft Safety Scanner crashes on exit on unimplemented function tbs.dll.GetDeviceIDString
- #56062 unimplemented function mgmtapi.dll.SnmpMgrOpen
- #56078 LibreOffice 7.6.4 crashes on unimplemented function msvcp140_2.dll.__std_smf_hypot3
- #56093 msys/pacman: fails with "fixup_mmaps_after_fork: VirtualQueryEx failed"
- #56122 LANCommander won't start, prints "error code 0x8007046C" (ERROR_MAPPED_ALIGNMENT)
- #56133 explorer.exe: Font leak when painting
- #56135 Dictionnaire Hachette Multimédia Encyclopédique 98 crashes on start
- #56139 scrrun: Dictionary does not allow storing at key Undefined
- #56168 dbghelp hits assertion in stabs_pts_read_type_def
- #56174 Forza Horizon 4 crashes with concrt140.dll.?_Confirm_cancel(a)_Cancellation_beacon@details(a)Concurrency@@QEAA_NXZ
- #56195 Device name inconsistent casing between GetRawInputDeviceInfo and PnP
- #56223 winedbg: crashes after loading gecko debug information
- #56235 Windows Sysinternals Process Explorer 17.05 crashes showing Threads property page.
- #56243 ShowSystray registry key was removed without alternative
- #56244 SplashTop RMM client for Atera crashes on unimplemented function shcore.dll.RegisterScaleChangeNotifications
- #56256 Windows Sysinternals Process Explorer 17.05 shows incomplete user interface (32-bit).
- #56265 Epic Games Launcher 15.21.0 calls unimplemented function cfgmgr32.dll.CM_Get_Device_Interface_PropertyW
- #56271 Free Download Manager no longer works after it updated (stuck at 100% CPU, no visible window)
- #56309 Across Lite doesn't show the letters properly when typing
- #56334 Page fault when querying dinput8_a_EnumDevices
- #56357 Zero sized writes using WriteProcessMemory succeed on Windows, but fail on Wine.
- #56361 Geovision Parashara's Light (PL9.exe) still crashes in wine
- #56367 Tomb Raider 3 GOG crashes at start
- #56369 Advanced IP Scanner crashes on unimplemented function netapi32.dll.NetRemoteTOD
- #56372 musl based exp2() gives very inaccurate results on i686
- #56400 SSPI authentication does not work when connecting to sql server
- #56434 WScript.Network does not implement UserName, ComputerName, and UserDomain properties
- #56493 PresentationFontCache.exe crashes during .Net 3.51 SP1 installation
- #56498 Incorrect substring expansion for magic variables
- #56503 CryptStringToBinary doesn't adds CR before pad bytes in some cases
- #56554 ON1 photo raw installs but wont run the application
- #56579 Setupapi fails to read correct class GUID and name from INF file containing %strkey% tokens
- #56582 vb3 combobox regression: single click scrolls twice
- #56598 Calling [vararg] method via ITypeLib without arguments via IDispatch fails
- #56599 HWMonitor 1.53 needs unimplemented function pdh.dll.PdhConnectMachineA
- #56609 vcrun2008 fails to install
- #56653 GetLogicalProcessorInformation can be missing Cache information
- #56666 BExAnalyzer from SAP 7.30 does not work correctly
- #56730 Access violation in riched20.dll when running EditPad
- #56755 White textures in EverQuest (Unsupported Conversion in windowscodec/convert.c)
- #56763 Firefox 126.0.1 crashes on startup
- #56781 srcrrun: Dictionary setting item to object fails
- #56871 The 32-bit wpcap program is working abnormally
### Changes since 9.0:
```
Alex Henrie (10):
tbs: Add GetDeviceIDString stub.
include: Add mgmtapi.h and LPSNMP_MGR_SESSION.
mgmtapi: AddSnmpMgrOpen stub.
msvcp140_2: Implement __std_smf_hypot3.
where: Implement search with default options.
explorer: Fix font handle leaks in virtual desktop.
pdh: Add PdhConnectMachineA stub.
ntdll/tests: Delete the WineTest registry key when the tests finish.
ntdll/tests: Rewrite the RtlQueryRegistryValues tests and add more of them.
ntdll: Succeed in RtlQueryRegistryValues on direct query of nonexistent value.
Alexandre Julliard (16):
configure: Add /usr/share/pkgconfig to the pkg-config path.
winsta: Start time is an input parameter in WinStationGetProcessSid.
oleaut32: Fix IDispatch::Invoke for vararg functions with empty varargs.
ntdll: Add default values for cache parameters.
secur32/tests: Update count for new winehq.org certificate.
gitlab: Add 'build' tag on Linux build jobs.
gitlab: Remove make -j options.
dnsapi/tests: Update tests for winehq.org DNS changes.
urlmon/tests: Fix a test that fails after WineHQ updates.
wininet/tests: Update issuer check for winehq.org certificate.
urlmon/tests: Skip test if ftp connection fails.
user32/tests: Fix some sysparams results on recent Windows.
dnsapi/tests: Update DNS names for the new test.winehq.org server.
wininet/tests: Update certificate for the new test.winehq.org server.
secur32/tests: Update expected results for the new test.winehq.org server.
winhttp/tests: Allow some more notifications for the new test.winehq.org server.
Alistair Leslie-Hughes (3):
fltmgr.sys: Implement FltBuildDefaultSecurityDescriptor.
fltmgr.sys: Create import library.
ntoskrnl/tests: Add FltBuildDefaultSecurityDescriptor test.
Andrew Nguyen (2):
oleaut32: Bump version resource to Windows 10.
ddraw: Reserve extra space in the reference device description buffer.
Bartosz Kosiorek (2):
gdiplus/tests: Add GdipDrawImageFX tests except effects or attributes.
gdiplus: Partially implement GdipDrawImageFX.
Benjamin Mayes (1):
windowscodecs: Add conversions from PixelFormat32bppBGRA->PixelFormat16bppBGRA5551.
Bernhard Übelacker (10):
server: Avoid unloading of HKU .Default registry branch.
server: Allow VirtualQueryEx on "limited" handle.
wing32: Add tests.
wing32: Avoid crash in WinGGetDIBPointer when called with NULL bitmap info.
dbghelp: Return early if HeapAlloc failed.
ntdll: Fix structure layout in RtlQueryProcessDebugInformation for 64-bit.
wininet: Add missing assignment of return value.
wininet: Avoid crash in InternetCreateUrl with scheme unknown.
cmd: Handle lines with just spaces in bracket blocks.
cmd: Avoid execution if block misses closing brackets.
Dmitry Timoshkov (4):
oleaut32: Do not reimplement OleLoadPicture in OleLoadPicturePath.
oleaut32: Factor out stream creation from OleLoadPicturePath.
oleaut32: Implement OleLoadPictureFile.
kerberos: Allocate memory for the output token if requested.
Eric Pouech (4):
dbghelp: Support redefinition of a range statement.
server: Allow 0-write length in WriteProcessMemory().
cmd: Add test for substring handling in 'magic' variable expansion.
cmd: Fix substring expansion for 'magic' variables.
Esme Povirk (1):
gdiplus: Prefer Tahoma for generic sans serif font.
Fabian Maurer (11):
win32u: Factor out scroll timer handling.
win32u: Only set scroll timer if it's not running.
oleaut32: Add test for invoking a dispatch get-only property with DISPATCH_PROPERTYPUT.
oleaut32: Handle cases where invoking a get-only property with INVOKE_PROPERTYPUT returns DISP_E_BADPARAMCOUNT.
riched20: In para_set_fmt protect against out of bound cTabStop values.
mmdevapi/tests: Add tests for IAudioSessionControl2 GetDisplayName / SetDisplayName.
mmdevapi/tests: Add tests for IAudioSessionControl2 GetIconPath / SetIconPath.
mmdevapi/tests: Add tests for IAudioSessionControl2 GetGroupingParam / SetGroupingParam.
mmdevapi: Implement IAudioSessionControl2 GetDisplayName / SetDisplayName.
mmdevapi: Implement IAudioSessionControl2 GetIconPath / SetIconPath.
mmdevapi: Implement IAudioSessionControl2 GetGroupingParam SetGroupingParam.
Felix Münchhalfen (2):
ntdll: Use pagesize alignment if MEM_REPLACE_PLACEHOLDER is set in flags of NtMapViewOfSection(Ex).
kernelbase/tests: Add a test for MapViewOfFile3 with MEM_REPLACE_PLACEHOLDER.
Hans Leidekker (13):
wbemprox: Protect tables with a critical section.
wbemprox: Handle implicit property in object path.
netprofm: Support NLM_ENUM_NETWORK flags.
netprofm: Set return pointer to NULL in networks_enum_Next().
msi: Install global assemblies before running deferred custom actions.
msi: Install global assemblies after install custom actions and before commit custom actions.
wpcap: Handle different layout of the native packet header structure on 32-bit.
winhttp/tests: Fix test failures introduced by the server upgrade.
secur32: Handle GNUTLS_MAC_AEAD.
secur32/tests: Switch to TLS 1.2 for connections to test.winehq.org.
secur32/tests: Mark some test results as broken on old Windows versions.
crypt32/tests: Fix a test failure.
wbemprox: Use separate critical sections for tables and table list.
Helix Graziani (1):
cfgmgr32: Add CM_Get_Device_Interface_PropertyW stub.
Jinoh Kang (4):
include: Add definition for FILE_STAT_INFORMATION.
ntdll/tests: Add tests for NtQueryInformationFile FileStatInformation.
ntdll: Implement NtQueryInformationFile FileStatInformation.
kernelbase: Replace FileAllInformation with FileStatInformation in GetFileInformationByHandle().
Kartavya Vashishtha (1):
kernelbase: Implement CopyFile2().
Louis Lenders (3):
shcore: Add stub for RegisterScaleChangeNotifications.
shell32: Try appending .exe when looking up an App Paths key.
wmic: Support interactive mode and piped commands.
Martin Storsjö (1):
musl: Fix limiting the float precision in intermediates.
Michael Stefaniuc (2):
gitlab: Do not run the build script on each commit.
tools: Get the ANNOUNCE bug list from the stable-notes git notes.
Nicholas Tay (1):
win32u: Preserve rawinput device instance ID case in add_device().
Nikolay Sivov (10):
scrrun/dictionary: Add support for hashing VT_EMPTY keys.
scrrun/dictionary: Add support for hashing VT_NULL keys.
scrrun/dictionary: Handle VT_EMPTY/VT_NULL keys.
wshom/network: Use TRACE() for implemented method.
wshom/network: Implement GetTypeInfo().
wshom/network: Implement ComputerName() property.
wshom/network: Check pointer argument in get_UserName().
wshom/network: Implement UserDomain property.
d2d1: Fix a double free on error path (Valgrind).
scrrun/dictionary: Implement putref_Item() method.
Paul Gofman (5):
explorer: Don't pop start menu on "minimize all windows" systray command.
explorer: Don't pop start menu on "undo minimize all windows" systray command.
winhttp: Always return result at once if available in WinHttpQueryDataAvailable().
winhttp: Always return result at once if available in WinHttpReadData().
kernel32/tests: Add tests for critical section debug info presence.
Peter Johnson (1):
wined3d: Added missing GTX 3080 & 1070M.
Piotr Caban (5):
msvcp140_2: Fix i386 export names.
msvcp140_2: Implement __std_smf_hypot3f.
msvcp140_t/tests: Add __std_smf_hypot3 tests.
concrt140: Add _Cancellation_beacon::_Confirm_cancel() implementation.
msvcrt: Store _unDName function parameter backreferences in parsed_symbol structure.
Roland Häder (1):
wined3d: Added missing GTX 1650.
Rémi Bernon (9):
dinput/tests: Add some IRawGameController2 interface tests.
windows.gaming.input: Stub IRawGameController2 interface.
explorer: Restore a per-desktop ShowSystray registry setting.
secur32/tests: Update the tests to expect HTTP/2 headers.
imm32/tests: Add todo_himc to some ImmTranslateMessage expected calls.
urlmon/tests: Expect "Upgrade, Keep-Alive" connection string.
user32/tests: Add flaky_wine to some SetActiveWindow tests.
wininet: Parse multi-token Connection strings for Keep-Alive.
user32/tests: Fix cursoricon tests on recent Windows versions.
Sam Joan Roque-Worcel (1):
win32u: Make SCROLL_MIN_THUMB larger.
Santino Mazza (1):
crypt32: Fix CryptBinaryToString not adding a separator.
Tim Clem (1):
gitlab: Update configuration for the new Mac runner.
Tuomas Räsänen (2):
setupapi/tests: Add tests for reading INF class with %strkey% tokens.
setupapi: Use INF parser to read class GUID and class name.
Vijay Kiran Kamuju (10):
msvcr100: Add _ReaderWriterLock constructor implementation.
wine.inf: Create security directory.
concrt140: Add stub for _Cancellation_beacon::_Confirm_cancel().
taskschd: Implement ITaskService_get_ConnectedUser.
taskschd: Return success from Principal_put_RunLevel.
taskschd: Implement TaskService_get_ConnectedDomain.
d3dcompiler: Add D3DCreateLinker stub.
netapi32: Add NetRemoteTOD stub.
mscms: Add stub for WcsGetDefaultColorProfile.
wevtapi: Add stub EvtCreateRenderContext().
Zebediah Figura (4):
shell32/tests: Remove obsolete workarounds from test_move().
ddraw: Use system memory for version 4 vertex buffers.
ddraw: Upload only the used range of indices in d3d_device7_DrawIndexedPrimitive().
ddraw/tests: Test GetVertexBufferDesc().
Zhenbo Li (1):
shell32: Create nonexistent destination directories in FO_MOVE.
Zhiyi Zhang (6):
include: Rename DF_WINE_CREATE_DESKTOP to DF_WINE_VIRTUAL_DESKTOP.
server: Inherit internal desktop flags when creating desktops.
rtworkq: Avoid closing a thread pool object while its callbacks are running.
rtworkq: Avoid possible scenarios that an async callback could be called twice.
user32/tests: Add some ReleaseCapture() tests.
win32u: Only send mouse input in ReleaseCapture() when a window is captured.
```
1
0
The Wine development release 10.5 is now available.
What's new in this release:
- Support for larger page sizes on ARM64.
- Mono engine updated to version 10.0.0.
- Pairing support in the Bluetooth driver.
- Vulkan H.264 decoding.
- %GS register swapping on macOS.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.5.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.5/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.5 (total 22):
- #2155 Failure of SetFocus, SetActiveWindow and SetForegroundWindow
- #52715 wine segfaults on asahi linux due to 16k pages (apple M1 hardware, linux kernel/userland)
- #56377 Microsoft Edge freezes almost immediately after launching
- #56479 Shrift 2 Translation Patch 1.3Gamev2.07: could not load file or assembly. access denied.
- #56837 Bad file pointer after a file write in appending mode
- #57010 Pantheon - error during installation
- #57406 Brothers - A Tale of Two Sons launcher fails to launch
- #57784 Video modes are broken
- #57919 Rally Trophy: Keyboard key is not configurable anymore, regression
- #57920 Rally Trophy: Input device configuration doesn't show mapped keys anymore, regression
- #57940 ntoskrnl.exe tests can trigger BSOD
- #57948 Listview / LVM_GETORIGIN returns wrong coordinates
- #57973 Listbox selected items are rendered even with LBS_NOSEL
- #57987 The Queen of Heart 99 SE : Config.exe crashes just before saving and quitting
- #57996 PS Core installer crashes (regression)
- #58006 winegcc seg-faults in wine 10.4
- #58008 wine-10.4 hangs on macOS (Rosetta 2)
- #58022 mscoree:comtest and mscoree:mscoree fail
- #58024 Listview does not handle WM_VSCROLL(SB_BOTTOM)
- #58038 Keyboard input lost after alt-tabbing in virtual desktop
- #58050 Game Controllers panel crashes on exit
- #58052 TipTap launcher for OverField crashes: Call to unimplemented function USER32.dll.IsTopLevelWindow
### Changes since 10.4:
```
Alex Henrie (4):
ntdll: Correct NtAllocateReserveObject arguments in specfile.
ntdll: Implement querying StorageDeviceProperty for optical discs.
cryptui: Use wide character string literal for L"".
shell32/tests: Use wide character string literals.
Alexandre Julliard (48):
winegcc: Store the output name in a global variable.
winegcc: Use -nostdlib for MSVC builds.
winegcc: Always add strip flag to the linker args explicitly.
winegcc: Validate the target option after all arguments have been handled.
winegcc: Always pass the -x option through the files list.
winegcc: Store the linking options in global variables.
winegcc: Store the files arguments in a global variable.
ntdll: Limit the header mapping size to the size of the file.
ntdll: Don't use private writable mappings on macOS.
ntdll: Retrieve the host page size on the Unix side on ARM64.
ntdll: Align virtual memory allocations to the host page size.
ntdll: Align virtual memory deallocations to the host page size.
ntdll: Apply virtual page protections to the entire host page.
ntdll: Align file mappings to the host page size.
ntdll: Align stack guard pages to the host page size.
ntdll: Align to the host page size when calling mlock/munlock/msync.
server: Support the host page size being different from the Windows page size.
widl: Preserve pragma pack() statements in header files.
widl: Use pragma pack in generated files.
include: Use pragma pack in idl files.
ntdll: Round the size of the .so NT header to the file alignment.
winegcc: Don't forward -v to the compiler by default.
winegcc: Only pass explicit linker arguments with -print-libgcc-file-name.
winegcc: Set the entry point option in get_link_args().
winegcc: Add a helper function to read options from a file.
include: Move InitializeObjectAttributes definition to ntdef.h.
ntdll: Use the InitializeObjectAttributes macro in more places.
ntdll/tests: Use the InitializeObjectAttributes macro in more places.
kernelbase: Use the InitializeObjectAttributes macro in more places.
wine.inf: Add list of known dlls.
wineboot: Fetch the list of supported machines once at startup.
wineboot: Create section objects for known dlls.
advapi32: Delay import cryptsp.
comctl32: Delay import oleacc.
comdlg32: Delay import winspool
gdiplus: Delay import mlang.
imagehlp: Delay import dbghelp.
wldap32: Delay import some libraries.
ntdll: Only enable redirection around the calls that access the file system.
ntdll: Add a helper to build an NT name from the system directory.
ntdll: Try to open dll mappings from the KnownDlls directory first.
ntdll: Only check HAVE_PTHREAD_TEB when setting %fs on Linux.
wineps.drv: Delay import winspool.
kernelbase: Redirect system32 paths manually for delayed file moves.
setupapi: Don't print an error when failing to replace a native dll.
setupapi: Delay fake dll installation until reboot for files in use.
makefiles: Handle the makefile disable flags directly in configure.
makefiles: Skip building some programs that are only useful for the host architecture.
Alfred Agrell (1):
server: Fall back to epoll_wait if epoll_pwait2 doesn't work.
Anders Kjersem (1):
setupapi: Don't add backslash on empty folder.
André Zwing (2):
bluetoothapis/tests: Don't test function directly when reporting GetLastError().
kernel32/tests: Don't test function directly when reporting GetLastError().
Attila Fidan (1):
winewayland: Don't use a destroyed surface in text input.
Bartosz Kosiorek (4):
gdiplus/test: Add GdipReversePath test for Path Pie.
gdiplus: Fix GdipReversePath for mixed Bezier and Line points in subpath.
gdiplus/tests: Add tests for GdipGetPathWorldBounds with single point.
gdiplus: Add single point support for GdipGetPathWorldBounds.
Bernhard Übelacker (1):
joy.cpl: Set devnotify to NULL after it got unregistered (ASan).
Brendan McGrath (5):
mfplat/tests: Fix crash in MFShutdown on Windows.
mfplat/tests: Fix leak of media events.
mfplat/tests: Fix leak of media source.
winegstreamer: Allow NULL for time_format.
mfsrcsnk: Allow NULL for time_format.
Brendan Shanks (6):
ntdll: Remove ugly fallback method for getting a thread's GSBASE on macOS.
ntdll: Ensure init_handler runs in signal handlers before any compiler-generated memset calls.
ntdll: Don't access the TEB through %gs when using the kernel stack in x86_64 syscall dispatcher.
ntdll: Set %rsp to be inside syscall_frame before accessing %gs in x86_64 syscall dispatcher.
ntdll: On macOS x86_64, swap GSBASE between the TEB and macOS TSD when entering/leaving PE code.
ntdll: Remove x86_64 Mac-specific TEB access workarounds that are no longer needed.
Connor McAdams (5):
d3dx9/tests: Add a test for reading back a texture saved as D3DXIFF_JPG.
d3dx9/tests: Add more tests for saving textures to DDS files.
d3dx9: Add support for saving IDirect3DTexture9 textures to DDS files in D3DXSaveTextureToFileInMemory().
d3dx9: Add support for saving IDirect3DCubeTexture9 textures to DDS files in D3DXSaveTextureToFileInMemory().
d3dx9: Add support for saving IDirect3DVolumeTexture9 textures to DDS files in D3DXSaveTextureToFileInMemory().
Dmitry Timoshkov (1):
bcrypt/tests: Add some tests for export/import of BCRYPT_AES_WRAP_KEY_BLOB.
Elizabeth Figura (18):
wined3d: Feed fog constants through a push constant buffer.
wined3d: Introduce a separate wined3d_extra_ps_args state for point sprite enable.
wined3d/glsl: Move legacy shade mode to shader_glsl_apply_draw_state().
wined3d: Partially move shade mode to wined3d_extra_ps_args.
kernel32/tests: Add more tests for orphaned console handles.
server: Fail to create an unbound input/output when there is no console.
server: Use a list of screen buffers per console.
server: Allow waiting on an orphaned screen buffer.
server: Track unbound input signaled state based on its original console.
server: Track unbound output signaled state based on its original console.
d3d11: Plumb SubmitDecoderBuffers() through wined3d.
wined3d: Create and submit video decode command buffers.
wined3d: Call vkQueueSubmit() if there are semaphores.
wined3d: Add a "next" pointer to wined3d_context_vk_create_image().
wined3d: Implement Vulkan H.264 decoding.
d3d11/tests: Add tests for H.264 decoding.
wined3d: Invert gl_FragCoord w.
wined3d: Use VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV_READ_FORMAT_UNKNOWN if possible.
Eric Pouech (11):
dbghelp: Fix order of non-commutative binary op:s in PDB/FPO unwinder.
dbghelp: Introduce new PDB reader, use it for unwinding FPO frames.
dbghelp: Don't keep PDB files mapped after parsing is done.
dbghelp: Introduce a vtable per module_format.
dbghelp: Rename struct internal_line into lineinfo.
dbghelp: Always copy the source file string.
dbghelp: Introduce interface for line info access.
dbghelp: Introduce method to get next/prev line information.
dbghelp: Introduce method to enumerate line numbers.
dbghelp: Add method to enumerate source files.
dbghelp: No longer store line information from old PDB reader.
Eric Tian (1):
gdiplus: Avoid storing NULL in gdip_font_link_section.
Esme Povirk (9):
comctl32: Implement EVENT_OBJECT_VALUECHANGE for edit controls.
comctl32/tests: Test MSAA events for edit controls.
mscoree: Update Wine Mono to 10.0.0.
win32u: Implement EVENT_OBJECT_NAMECHANGE.
comctl32/tests: Add test for SysLink accDoDefaultAction.
comctl32: Implement accDoDefaultAction for SysLink controls.
comctl32/tests: Test accLocation values on SysLink control.
comctl32/tests: Test SetWindowText and LM_GETITEM for SysLink.
comctl32/tests: Test MSAA events for SysLink.
Francisco Casas (1):
d2d1: Add [loop] attribute in sample_gradient() shader function.
Gabriel Ivăncescu (8):
mshtml: Keep the link from the inner window to the outer window even when detached.
jscript: Obtain the jsdisp for host objects in other contexts.
mshtml: Make sure manually created document dispex info is initialized in IE9+ modes.
mshtml: Release the node if there's no script global when handling events.
jscript: Get rid of the funcprot argument.
mshtml: Don't mess with the outer window if we're already detached.
jscript: Don't leak when popping (u)int values off the stack.
jscript: Don't leak when return value of host constructor is not used.
Hans Leidekker (7):
adsldp/tests: Fix test failures.
wbemprox: Get rid of unused imports.
wbemprox: Get rid of the per-table lock.
bcrypt: Make secret parameter to create_symmetric_key()/generate_symmetric_key() const.
bcrypt: Only print a fixme if a vector has been set.
bcrypt: Add support for BCRYPT_AES_WRAP_KEY_BLOB in BCryptExportKey().
bcrypt: Add support for BCRYPT_AES_WRAP_KEY_BLOB in BCryptImportKey().
Kevin Martinez (2):
shell32: Added stub for IEnumObjects interface.
shell32: Added stub for IObjectCollection interface.
Kostin Mikhail (1):
regsvr32: Ignore obsolete flag /c.
Louis Lenders (3):
win32u: Add stub for NtUserSetAdditionalForegroundBoostProcesses.
powrprof: Add stub for PowerRegisterForEffectivePowerModeNotifications.
dwmapi: Do not prefer native dll.
Marc-Aurel Zent (5):
server: Implement ThreadPriority class in NtSetInformationThread.
server: Move last thread information to get_thread_info flags.
server: Return the correct base/actual thread priorities.
kernelbase: Use ProcessPriorityClass info class in GetPriorityClass.
server: Return the correct base/actual process priority.
Nikolay Sivov (13):
user32/tests: Add some tests for current selection with LBS_NOSEL.
comctl32/tests: Add some tests for current selection with LBS_NOSEL.
user32/listbox: Do not paint item selection with LBS_NOSEL.
comctl32/listbox: Do not paint item selection with LBS_NOSEL.
libtiff: Provide zlib allocation functions.
windowscodecs/metadata: Always initialize handler pointer.
windowscodecs/jpeg: Add support for App1 metadata blocks in the decoder.
windowscodecs/tests: Add some tests for the App0 reader.
comctl32/listview: Handle WM_VSCROLL(SB_BOTTOM).
windowscodecs/converter: Implement BW -> 24BGR conversion.
windowscodecs/converter: Implement 48bppRGB -> 128bppRGBFloat conversion.
wmphoto: Use CRT allocation functions.
d3d10/effect: Fix constant buffer overrun when updating expression constants (ASan).
Paul Gofman (11):
wintrust: Don't set desktop window when initializing provider data.
kernel32/tests: Add tests for known dlls load specifics.
ntdll/tests: Fix a test failure on Windows wow64.
msvcp140: Implement codecvt_char16 ctors and dtor.
msvcp140: Implement codecvt_char16_do_out().
msvcp140: Implement codecvt_char16_do_in().
msvcp: Fix output size check in codecvt_wchar_do_out().
setupapi/tests: Add a test for SetupDiOpenDeviceInterface().
cfgmgr32: Implement CM_Get_Device_Interface_List[_Size][_Ex]W().
cfgmgr32: Implement CM_Get_Device_Interface_List[_Size][_Ex]A().
cfgmgr32: Implement CM_Get_Device_Interface_PropertyW() for DEVPKEY_Device_InstanceId.
Piotr Caban (1):
msvcrt: Update file position in _flsbuf() in append mode.
Robert Lippmann (1):
server: Use INOTIFY_CFLAGS.
Rémi Bernon (54):
winex11: Use the current state when deciding how to reply to WM_TAKE_FOCUS.
winex11: Use the state tracker for the desktop window _NET_WM_STATE.
opengl32: Remove unused type parameter.
opengl32: Remove unnecessary interlocked exchange.
opengl32: Use an explicit GLsync pointer in the union.
opengl32: Introduce an opengl_context_from_handle helper.
opengl32: Introduce a wgl_pbuffer_from_handle helper.
winex11: Introduce a new handle_state_change helper.
winex11: Track _NET_ACTIVE_WINDOW property changes.
dinput/tests: Load cfgmgr32 dynamically.
dinput/tests: Add more EnumDevicesBySemantics tests.
dinput: Fix EnumDeviceBySemantics user checks.
dinput: Fix keyboard / mouse semantics matching.
dinput: Only load mappings that have not yet been set.
dinput: Avoid overriding app-configured action map controls.
winex11: Get rid of now unnecessary unmap_window helper.
winex11: Keep _NET_WM_USER_TIME on individual toplevel windows.
winex11: Avoid stealing focus during foreground window mapping.
win32u: Introduce a new opengl_driver_funcs structure.
win32u: Implement opt-in WGL_(ARB|EXT)_extensions_string support.
wineandroid: Use win32u for WGL_(ARB|EXT)_extensions_string support.
winemac: Use win32u for WGL_(ARB|EXT)_extensions_string support.
winewayland: Use win32u for WGL_(ARB|EXT)_extensions_string support.
winex11: Use win32u for WGL_(ARB|EXT)_extensions_string support.
win32u: Add a nulldrv init_wgl_extensions implementation.
cfgmgr32/tests: Load some functions dynamically.
winemac: Use the default wglGetPixelFormatAttribivARB implementation.
winemac: Remove the driver wglChoosePixelFormatARB implementation.
win32u: Implement opt-in generic wgl(Get|Set)PixelFormat(WINE).
wineandroid: Use win32u generic wgl(Get|Set)PixelFormat(WINE).
winewayland: Use win32u generic wgl(Get|Set)PixelFormat(WINE).
winex11: Use win32u generic wgl(Get|Set)PixelFormat(WINE).
winemac: Use win32u generic wgl(Get|Set)PixelFormat(WINE).
win32u: Add a null driver set_pixel_format implementation.
winex11: Only set focus_time_prop for managed windows.
winex11: Keep track of whether mapped window needs activation.
winex11: Refactor X11DRV_GetWindowStateUpdates control flow.
win32u: Return foreground window changes from GetWindowStateUpdates.
win32u: Call ActivateWindow callback when foreground window changes.
winex11: Use _NET_ACTIVE_WINDOW to request/track window activation.
win32u: Move WGL_ARB_pixel_format extension registration.
winex11: Ignore GL drawable creation failure on reparent.
win32u: Remove unnecessary win32u_(get|set)_window_pixel_format exports.
setupapi: Implement SetupDiOpenDeviceInterface(A|W).
winex11: Cleanup code style in X11DRV_wglCreatePbufferARB.
winex11: Cleanup code style in X11DRV_wglQueryPbufferARB.
winex11: Cleanup code style in X11DRV_wglBindTexImageARB.
winex11: Compute texture binding enum from the texture target.
winex11: Remove some pbuffer related dead code.
opengl32/tests: Cleanup memory DC rendering tests.
opengl32/tests: Update memory DC pixel format tests.
opengl32/tests: Update memory DC drawing tests.
gdi32/tests: Test selecting bitmap on a D3DKMT memory DC.
opengl32/tests: Test GL rendering on D3DKMT memory DCs.
Sven Baars (9):
dmime/tests: Use wine_dbgstr_longlong.
win32u: Store window styles in a DWORD (Coverity).
win32u: Always set DriverVersion.
makedep: Fix a compilation warning.
d3dxof: Fix a memory leak on error path (Coverity).
d3dxof/tests: Fix a memory leak on error path (Coverity).
adsldp: Fix a leak on error path in search_ExecuteSearch() (Valgrind).
adsldp: Free ber in search_GetNextRow() (Valgrind).
adsldp/tests: Fix a name leak (Valgrind).
Tim Clem (1):
imm32: Add a stub for CtfImmRestoreToolbarWnd.
Tomasz Pakuła (4):
dinput/tests: Add tests for 6-axis force feedback joystick.
include: Define the max number of supported HID PID axes.
winebus: Support creation of dynamic number of PID axes.
winebus: Get the number of haptic axes from SDL.
Vibhav Pant (16):
ws2_32/tests: Add tests for creating Bluetooth RFCOMM sockets.
server: Add support for creating Bluetooth RFCOMM sockets.
ws2_32: Add bind tests for Bluetooth RFCOMM sockets.
ws2_32: Support bind for Bluetooth RFCOMM addresses.
winebth.sys: Register a pairing agent with BlueZ during startup.
winebth.sys: Broadcast a WINEBTH_AUTHENTICATION_REQUEST PnP event on receiving a RequestConfirmation request from BlueZ.
winebth.sys: Implement IOCTL_WINEBTH_AUTH_REGISTER.
bluetoothapis: Implement BluetoothRegisterForAuthenticationEx and BluetoothUnregisterForAuthentication.
bluetoothapis/tests: Add tests for BluetoothRegisterForAuthenticationEx and BluetoothUnregisterAuthentication.
winebth.sys: Support cancellation of pairing sessions via BlueZ.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_SEND_AUTH_RESPONSE.
bluetoothapis: Add stub for BluetoothSendAuthenticationResponseEx.
bluetoothapis: Implement BluetoothSendAuthenticationResponseEx.
bluetoothapis/tests: Add tests for BluetoothSendAuthenticationResponseEx.
winebth.sys: Allow service auth requests from BlueZ for authenticated devices.
ws2_32/tests: Check for WSAEAFNOSUPPORT or WSAEPROTONOSUPPORT if socket() fails for AF_BTH.
Vitaly Lipatov (1):
wow64: Skip memcpy for null pointer.
Yongjie Yao (1):
wmp: Check the return value of IOleClientSite_QueryInterface().
Yuri Hérouard (1):
comctl32: Avoid segfault in PROPSHEET_DoCommand when psInfo is NULL.
Ziqing Hui (7):
shell32/tests: Remove old windows tests for test_copy.
shell32/tests: Add more tests to test_copy.
shell32/tests: Introduce check_file_operation helper.
shell32/tests: Use more check_file_operation.
shell32/tests: Use check_file_operation in test_rename.
shell32/tests: Use check_file_operation in test_delete.
shell32/tests: Use check_file_operation in test_move.
```
1
0
The Wine development release 10.4 is now available.
What's new in this release:
- Improvements to PDB support in DbgHelp.
- More Vulkan video decoder support in WineD3D.
- Accessibility support in the SysLink control.
- More progress on the Bluetooth driver.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.4.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.4/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.4 (total 28):
- #33770 Strong Bad's Episode 1 - Homestar Ruiner Demo crashes without d3dx9_27 (purist)
- #33943 Battle.net client dropdowns do not appear until you hover its options
- #42117 Multiple applications have windows with double caption/title bars (Chessmaster 9000, Steam when Windows >= Vista)
- #44795 Need for Speed: Shift demo main menu has messed up rendering (needs ID3DXEffect::SetRawValue implementation)
- #46012 Command & Conquer 3: Kane's Wrath (1.03) Invisible units and tiberium
- #46662 absolute value of unsigned type 'unsigned int' has no effect
- #47165 iTunes 12.9.4+ user interface is rendered black (only text visible)
- #47278 Multiple games and applications require TGA support in D3DXSaveSurfaceToFileInMemory (Europa Universalis 4 Golden Century, ShaderMap 4.x)
- #53103 ie8 doesn't start (race condition)
- #54066 SysLink control shouldn't delete the HFONT it didn't create
- #56106 Roon 2.0.23 crashes due to unable to find library: Windows.Storage.Streams.RandomAccessStreamReference
- #56108 Edit control should stop processing characters when left mouse button is down
- #56225 16-bit Myst deadlocks on start since Wine 3.2
- #57540 unrecognized charset 'SHIFT_JIS' when running Wine with LC_ALL=ja_JP.SJIS
- #57559 Chessbase 17 database table background and non-selected entries rendered in black
- #57717 Adobe Illustrator CS6 (16), Adobe Photoshop CS6 (13), likely all CS6 apps: Main menu bar item shortcut/accelerator key underlines positioning is wrong with built-in gdiplus
- #57746 BeckyInternetMail/VirtualListView: The ListView of the email list isn't redrawn while receiving email.
- #57800 Fullscreen OpenGL apps have unintended literal transparency
- #57826 Zenless Zone Zero fails to start after update to 10.1
- #57848 Wrong alignment of GUI elements in Enterprise Architect
- #57853 Error: makecab.exe not found
- #57874 wineloader no longer able to find ntdll.so
- #57889 Prntvpt (Print Ticket API): printing is cropped in landscape orientation
- #57896 winemenubuilder crash
- #57952 Q-Dir crashes on exit.
- #57962 Firefox 136.0.1 fails to start
- #57963 Firefox crashes on youtube: wine: Call to unimplemented function ucrtbase.dll.imaxdiv, aborting
- #57964 Firefox crashes: wine: Call to unimplemented function KERNEL32.dll.GetCurrentApplicationUserModelId, aborting
### Changes since 10.3:
```
Alex Henrie (3):
winecfg: Use wide character string literal for "Tahoma".
wuauserv: Use wide character string literal for "wuauserv".
fusion: Use wide character string literals.
Alexander Morozov (2):
ntoskrnl.exe/tests: Improve device properties test, avoid BSOD.
ntoskrnl.exe: Implement MmMapLockedPages.
Alexandre Julliard (33):
include: Add a number of missing TCHAR macros.
include: Use pragma pack push/pop.
ntdll: Update the main exe entry point when the module is relocated.
ntdll: Disallow AT_ROUND_TO_PAGE on 64-bit.
user32: Add some more stubs for ordinal functions that forward to win32u.
server: Consistently use size_t for page sizes.
server: Compute the size of the PE header that can be mapped.
ntdll: Only copy the PE section data to a separate block when necessary.
krnl386: Handle DOS ioctl with simulated real mode interrupt.
krnl386: Remove the CTX_SEG_OFF_TO_LIN macro.
ntdll: Pass an explicit mask to the ROUND_SIZE macro.
ntdll: Pass the base address to decommit_pages().
tools: Add is_pe_target() common helper function.
winegcc: Make the target options global variables.
winegcc: Move setting the compatibility defines to a separate helper function.
winegcc: Move the initial argument array out of the options structure.
winegcc: Move the remaining directory options out of the options structure.
winegcc: Remove option fields that already have a corresponding output file variable.
winegcc: Pass the files list explicitly to the various compilation functions.
winegcc: Pass the output name explicitly to the various compilation functions.
winegcc: Store the file processor type in a global variable.
winegcc: Store the various search path directories in global variables.
winegcc: Store the library search suffix in a global variable.
winegcc: Store the winebuild path in a global variable.
winegcc: Store the compiler arguments in global variables.
winegcc: Pass tool names directly to build_tool_name instead of using an enum.
winegcc: Store various string options as global variables.
winegcc: Store all the boolean options in global variables.
winegcc: Get rid of the options struct.
ntdll: Round all sizes to the section alignment for PE mappings.
ntdll: Always map files as writable and adjust permissions.
server: Fix limit check for adding a committed range.
ntdll: Force committed access on anonymous mappings.
Alexandros Frantzis (4):
winewayland: Implement wl_data_device initialization.
winewayland: Support wl_data_device for copies from win32 clipboard to native apps.
winewayland: Support wl_data_device for copies from native apps to win32 clipboard.
winewayland: Warn about missing clipboard functionality.
Anders Kjersem (2):
comctl32/listview: Never use null buffer with LVN_ENDLABELEDIT on a text change.
shcore: Implement OS_TABLETPC and OS_MEDIACENTER.
Attila Fidan (1):
win32u: Return 0 from NtUserGetKeyNameText if there is no translation.
Bartosz Kosiorek (6):
gdiplus: Fix widening of LineCapArrowAnchor.
gdiplus/tests: Improve test drawing accuracy of GdiAddPath*Curve functions.
gdiplus: Improve drawing accuracy of GdiAddPath*Curve functions.
gdiplus/tests: Add additional test for GdipAddPathArc.
gdiplus/tests: Add GdipFlattenPath tests with default flatness 0.25.
gdiplus: Fix GdipFlattenPath return path precision.
Bernhard Übelacker (4):
kernel32/tests: Flush pending APCs and close handles (ASan).
ieframe: Enter reallocation path one position earlier (ASan).
advapi32: Avoid buffer underrun in split_domain_account (ASan).
msxml6/tests: Make test pass with Windows 7.
Biswapriyo Nath (1):
include: Add mpeg2data.idl.
Brendan McGrath (3):
mfplat: Add mp3 resolver hint.
mf/tests: Test timestamps in H264 decoder.
mf/tests: Test timestamps in WMV decoder.
Brendan Shanks (5):
ntdll: Stop using chdir() in file_id_to_unix_file_name().
ntdll: Move the dir_queue into file_id_to_unix_file_name().
ntdll: Add a lock around the get_dir_case_sensitivity_attr() fs_cache.
ntdll: Use *at() functions in get_dir_case_sensitivity().
ntdll: Stop using chdir() in nt_to_unix_file_name().
Connor McAdams (8):
d3dx9/tests: Add tests for ID3DXEffect::SetRawValue().
d3dx9: Partially implement ID3DXEffect::SetRawValue().
d3dx9: Add support for setting 4x4 matrices in ID3DXEffect::SetRawValue().
d3dx9: Fixup return values for D3DXPT_BOOL parameters in ID3DXEffect::GetValue().
d3dx9: Add stubs for D3DXSaveVolumeToFile{A,W,InMemory}().
d3dx9/tests: Add tests for D3DXSaveVolumeToFile{A,W,InMemory}().
d3dx9: Implement D3DXSaveVolumeToFile{A,W,InMemory}().
d3dx9: Use D3DXSaveVolumeToFileInMemory() inside of D3DXSaveTextureToFileInMemory().
Dmitry Timoshkov (4):
prntvpt: PageImageableSize capabilities depend on page orientation.
wldap32: Also initialize idW.Flags field.
kerberos: Fix imported target name leak.
winex11.drv: Don't add MWM_DECOR_BORDER to windows without a caption.
Dylan Donnell (2):
ntdll: Return STATUS_ACCESS_VIOLATION from NtQueryInformationThread ThreadHideFromDebugger if *ret_len is not writable.
ntdll/tests: Add tests for ret_len on NtQueryInformationThread HideFromDebugger.
Elizabeth Figura (13):
wined3d: Avoid indexing a 2-element array by shader type.
wined3d: Invalidate bumpenv_constants in wined3d_stateblock_primary_dirtify_all_states().
wined3d: Bind video session memory.
d3d11: Implement GetDecoderBuffer() for metadata buffers.
d3d11: Implement GetDecoderBuffer() for bitstream buffers.
d3d11: Create a wined3d video decoder output view.
d3d11: Implement DecoderBeginFrame() and DecoderEndFrame().
advapi32: Move SystemFunction032 to cryptsp.
advapi32: Move lmhash functions to cryptsp.
advapi32: Merge crypt_lmhash.c into crypt_des.c.
advapi32: Move the remaining SystemFunction* functions to cryptsp.
advapi32: Move DES functions to cryptbase.
advapi32: Move the remaining SystemFunction* functions to cryptbase.
Ellington Santos (1):
wpcap: Implement pcap_set_immediate_mode.
Eric Pouech (28):
cmd: Fix regression in PAUSE test.
winedump: Use correct computation for first section out of a .DBG file.
winedump: Use correct field when dumping CodeView symbols.
winedump: Don't miss PDB_SYMBOL_RANGE* in PDB files.
winedump: Don't miss hash entries in PDB files.
winedump: Support more than 64K files in PDB DBI module source substream.
include: Remove flexible array member from PDB JG header.
winedump: Support dumping large PDB files (>4G).
dbghelp: Fix potential crash for old debug formats.
dbghelp: Support large PDB files (> 4G).
dbghelp: Store pointer to context instead of context.
dbghelp: Optimize vector allocation.
dbghelp: Simplify get_line_from_addr().
dbghelp: Support module lookup in SymEnumSourceFiles.
dbghelp: Factorize some code between type enumeration APIs.
dbghelp: Only store types with names in module.
dbghelp: Factorize function signature creation {dwarf}.
dbghelp: Introduce helper to match an ANSI string against a Unicode regex.
winedbg: Support more integral types in VARIANT for enum value.
dbghelp: Pass a VARIANT to add an enumeration entry.
dbghelp: Use VARIANT for storing enum values (pdb).
dbghelp: Store LEB128 encoded as 64bit entities (dwarf).
dbghelp: Introduce helper to fill in VARIANT (dwarf).
dbghelp: Fix debug information for C++ enumeration types (dwarf).
dbghelp: Add a couple of missing basic types for PDB.
dbghelp: Silence a couple of CodeView symbols.
dbghelp: Uniformize the two readers for PDB line information.
dbghelp: Only load line information when SYMOPT_LOAD_LINE is set.
Esme Povirk (10):
gdiplus: Reset X position before drawing hotkey underlines.
comctl32: Include only link items as IAccessible children.
comctl32: Implement get_accState for SysLink controls.
comctl32: Implement acc_getName for SysLink.
comctl32: Implement get_accDefaultAction for SysLink.
comctl32: Implement accLocation for SysLink.
comctl32: Implement get_accChildCount for SysLink.
comctl32: Implement accChild for SysLink.
comctl32: Implement IOleWindow for SysLink.
comctl32: Implement EVENT_OBJECT_VALUECHANGE for datetime control.
Hans Leidekker (7):
odbc32: Pass through result length pointers when PE/Unix pointer sizes are equal.
wpcap: Check for failure from pcap_dump_open().
wpcap: Fix Unix call in pcap_dump_close().
wpcap: Remove unneeded trace.
wpcap: Pass the dumper handle to pcap_dump().
wpcap: Correct params structure in wow64_dump_open().
wpcap: Fall back to a buffer copy if 32-bit mmap support is not available.
Jacek Caban (3):
rpcrt4: Don't validate buffer in NDR marshaler.
kernelbase: Factor out get_process_image_file_name.
kernelbase: Use ProcessImageFileNameWin32 in GetModuleFileNameExW.
Joe Souza (1):
cmd: Allow any key to continue past DIR /P pauses.
Kun Yang (1):
msvcrt: Add MSVCRT__NOBUF flag check in _filbuf to avoid dead loop in application which sets the flag.
Louis Lenders (2):
magnification: Add stub for MagUninitialize.
kernelbase: Add stub for GetCurrentApplicationUserModelId.
Marc-Aurel Zent (7):
include: Fix RTL_PATH_TYPE names.
ntdll: Implement RtlGetFullPathName_UEx.
include: Add thread priority constants.
ntdll/tests: Add tests for process and thread priority.
server: Infer process priority class in set_thread_priority.
server: Clarify between effective thread priority and class/level.
server: Rename thread priority to base_priority.
Matteo Bruni (8):
d3dx9: Load the D3DAssemble() function pointer from the proper DLL.
d3dx9/tests: Fix expected asm test results on version >= 42.
d3dcompiler/tests: Clean up temporary file after the test.
d3dx9_42: Generate an import library.
d3dx9/tests: Add d3dx9_42 tests.
d3dcompiler: Fix a few version-dependent error returns in D3DReflect().
d3dcompiler/tests: Add d3dcompiler_42 tests.
d3dx9/tests: Skip some shader tests if we can't create a D3D object.
Mohamad Al-Jaf (17):
include: Add robuffer.idl.
wintypes: Add IBufferFactory stub.
include: Add Windows.System.Profile.SystemIdentification definition.
windows.system.profile.systemid: Add stub dll.
windows.system.profile.systemid: Add ISystemIdentificationStatics stub.
windows.system.profile.systemid/tests: Add ISystemIdentificationStatics::GetSystemIdForPublisher() tests.
windows.system.profile.systemid: Partially implement ISystemIdentificationStatics::GetSystemIdForPublisher().
windows.system.profile.systemid/tests: Add ISystemIdentificationInfo::get_Source() tests.
windows.system.profile.systemid: Implement ISystemIdentificationInfo::get_Source().
wintypes/tests: Add IBufferFactory::Create() tests.
wintypes: Implement IBufferFactory::Create().
wintypes: Implement IBuffer::get_Capacity().
wintypes: Implement IBuffer::put_Length().
wintypes: Implement IBuffer::get_Length().
wintypes: Add IBufferByteAccess stub.
wintypes/tests: Add IBufferByteAccess::Buffer() tests.
wintypes: Implement IBufferByteAccess::Buffer().
Nikolay Sivov (12):
d3dx9/effect: Remove explicit objects pointer from the parsing helpers.
d3dx9/effect: Remove misleading trace message.
comctl32/tests: Run LVM_GETORIGIN tests on v6.
comctl32/tests: Add a test for LVM_GETORIGIN returned coordinate.
comctl32/listview: Invert origin coordinate for LVM_GETORIGIN.
comctl32/listview: Handle WM_VSCROLL(SB_TOP).
d3dx9/tests: Enable tests for d3dx9_35.dll.
comctl32/tests: Add a LVN_ENDLABELEDIT test with empty text.
comctl32/tests: Add a test for LVM_FINDITEM with LVS_OWNERDATA.
comctl32/listview: Use correct LVN_ODFINDITEM notification.
user32/edit: Block key input when mouse input is captured.
comctl32/edit: Block key input when mouse input is captured.
Paul Gofman (9):
ntdll/tests: Test NtCreateUserProcess() with limited access rights.
ntdll: Do not fail NtCreateUserProcess() if requested access doesn't have PROCESS_CREATE_THREAD.
win32u: Prevent remote drawing to ULW layered window.
setupapi: Fix buffer size passed to SetupDiGetDeviceInstanceIdW() in get_device_id_list().
setupapi: Increase id buffer size in get_device_id_list().
ntdll: Properly set context control registers from the other thread on wow64.
ntdll/tests: Test first trap address when setting trap flag in various ways.
ntdll: Fix setting trap flag with CONTEXT_CONTROL and instrumentation callback on x64.
ntdll: Set CONTEXT_CONTROL frame restore flag in sigsys_handler().
Piotr Caban (3):
advapi32: Fix environment parameter handling in CreateProcessWithLogonW.
include: Add imaxdiv declaration.
msvcr120: Add imaxdiv implementation.
Robert Lippmann (1):
winedump: Fix grep warning.
Roman Pišl (2):
kernel32/tests: Test ReplaceFileW with forward slashes.
kernelbase: Handle correctly paths with forward slashes in ReplaceFileW.
Rémi Bernon (15):
win32u: Don't set foreground window if window is minimized.
opengl32: Generate pointer offsets in the extension registry.
opengl32: Generate ALL_(WGL|GL|GL_EXT)_FUNCS macros and prototypes.
opengl32: Get rid of opengl_funcs internal structures.
opengl32: Use ALL_GL(_EXT)_FUNCS to generate opengl_funcs table.
opengl32: Stop generating wine/wgl_driver.h.
hidclass: Rename BASE_DEVICE_EXTENSION to struct device.
hidclass: Use HID_DEVICE_EXTENSION as base for fdo and pdo.
hidclass: Use a dedicated struct phys_device for PDOs.
hidclass: Use a dedicated struct func_device for FDOs.
hidclass: Avoid leaking input packet from the device thread.
winexinput: Remove pending IRPs on IRP_MN_REMOVE_DEVICE.
hidclass: Dispatch IRP_MN_SURPRISE_REMOVAL to the minidrivers.
hidclass: Wait for the pending IRP after thread shutdown.
winex11: Use -1 as fullscreen monitor indices to clear the property.
Sebastian Lackner (1):
win32u: Fix alpha blending in X11DRV_UpdateLayeredWindow.
Tim Clem (2):
imm32: Add a stub for CtfImmHideToolbarWnd.
win32u: Add a stub for NtUserIsChildWindowDpiMessageEnabled.
Vadim Kazakov (1):
ntdll: Print name for TOKEN_INFORMATION_CLASS.
Vibhav Pant (15):
winebth.sys: Remove the first 2 zero bytes after byte-swapping Bluetooth addresses.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_START_DISCOVERY.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_STOP_DISCOVERY.
bluetoothapis: Implement BluetoothFindFirstDevice and BluetoothFindDeviceClose.
bluetoothapis/tests: Add tests for BluetoothFindFirstDevice, BluetoothFindDeviceClose.
bluetoothapis: Implement BluetoothFindNextDevice.
bluetoothapis/tests: Add tests for BluetoothFindNextDevice.
bluetoothapis/tests: Use the correct file name while skipping tests when no radios are found.
bluetoothapis: Add a basic implementation for BluetoothGetDeviceInfo.
bluetoothapis/tests: Add tests for BluetoothGetDeviceInfo.
cfgmgr32: Add stub for CM_Unregister_Notification.
cfgmgr32/tests: Add basic tests for CM_(Un)Register_Notification.
dinput/tests: Add tests for CM_Register_Notification.
cfgmgr32: Implement CM_Register_Notification and CM_Unregister_Notification.
user32: Remove incorrect FIXME warning while registering for DBT_DEVTYP_HANDLE notifications.
Ziqing Hui (4):
winegstreamer: Assume stream type is always not NULL for media sink.
winegstreamer: Implement stream_sink_type_handler_GetMajorType.
winegstreamer: Implement stream_sink_type_handler_GetMediaTypeCount.
winegstreamer: Implement stream_sink_type_handler_GetMediaTypeByIndex.
```
1
0
The Wine development release 10.3 is now available.
What's new in this release:
- Clipboard support in the Wayland driver.
- Initial Vulkan video decoder support in WineD3D.
- Bundled Compiler-RT library for ARM builds.
- Header fixes for Winelib C++ support.
- More progress on the Bluetooth driver.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.3.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.3/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.3 (total 18):
- #3930 Miles Sound System (WAIL32.DLL) SuspendThread() deadlock in WINMM callback (silent black screen on HOMM startup)
- #8532 JawsEditor 2.5/3.0 reports "Invalid imagesize" on startup ('IPicture::SaveAsFile' method too stubby/incorrect)
- #38879 wbemprox fill_videocontroller calls are expensive
- #40523 legrand xlpro3 400 : unable to insert a pictogram
- #41427 [Game Maker Studio - Android] subst.exe is not implemented
- #45119 Multiple applications from Google sandbox-attacksurface-analysis-tools v1.1.x (targeting native API) need 'ntdll.NtGetNextProcess' implementation
- #50337 Roland Zenology Pro (VST3 plugin) used with carla-bridge fails to save files
- #50929 Silver Chains (GOG) crashes and start dumping memory in console
- #51121 HeidiSQL 11.0.0.5919 shows a blinking black screen and crashes without virtual desktop
- #52094 IDA Pro 7.6 crashes when loading idapython3.dll
- #56695 Unreal Engine game checks for a specific VC runtime regkey
- #57323 Windows 7 Card Games crash on start
- #57849 Multiple games: sleep accuracy is affected by mouse movement speed
- #57850 Reolink fails to load dll: err:module:import_dll Loading library libvips-42.dll
- #57854 Steam.exe fails to start (hangs upon loading) in Wine-10.2
- #57881 Wine10.2 Noble does not open Quicken 2004, qw.exe file
- #57899 R-Link 2 Toolbox crash
- #57903 kernel32:loader - test_export_forwarder_dep_chain fails on Windows 7
### Changes since 10.2:
```
Alexander Morozov (1):
wineusb.sys: Add support for URB_FUNCTION_VENDOR_ENDPOINT.
Alexandre Julliard (32):
ntdll: Fix pointer access in read_image_directory().
tomcrypt: Import code from upstream libtomcrypt version 1.18.2.
tomcrypt: Import code from upstream libtommath version 1.1.0.
bcrypt: Use the bundled tomcrypt library for hash algorithms.
ntdll: Use the bundled tomcrypt for the crc32 implementation.
rsaenh: Split encrypt and decrypt implementation functions.
rsaenh: Use the bundled tomcrypt to replace the local copy.
configure: Check that the 32- and 64-bit builds are using the same libdir.
ntdll: Add some missing Zw exports.
apisetschema: Add some new apisets, and old ones for recently added dlls.
dataexchange: Don't create an empty import lib.
makefiles: Import winecrt0 by default even with -nodefaultlibs.
tools: Avoid const strarray pointers in all functions.
include: Fix some invalid array definitions in PDB structures.
makefiles: Add support for assembly source files.
makefiles: Add support for optionally installing external libs.
libs: Import code from upstream compiler-rt version 8.0.1.
makefiles: Link to compiler-rt for builds in MSVC mode.
profapi: Don't create an empty importlib.
winedump: Fix dumping of empty values in version resources.
make_unicode: Generate the PostScript builtin font metrics.
wineps: Remove the old font generation code.
wineps: Move the generated glyph list to a separate glyphs.c file.
wineps: Update the glyph list to a more recent version.
wineps: Generate all core fonts metrics into a single file.
wineps: Reduce the size of the stored core fonts metrics data.
png: Import upstream release 1.6.47.
setupapi: Create fake dlls for missing dlls only if explicitly requested.
include: Import mmreg.h instead of duplicating definitions.
winegcc: PE targets always use msvcrt mode, remove redundant checks.
winegcc: Use -nodefaultlibs also for the linker tests.
winegcc: Merge the utility functions into the main file.
Alexandros Frantzis (8):
winewayland: Implement zwlr_data_control_device_v1 initialization.
winewayland: Support copying text from win32 clipboard to native apps.
winewayland: Generalize support for exporting clipboard formats.
winewayland: Support exporting various clipboard formats.
winewayland: Support copying data from native clipboard to win32 apps.
winewayland: Normalize received MIME type strings.
winewayland: Present EGL surfaces opaquely.
winewayland: Treat fully transparent cursors as hidden.
Alistair Leslie-Hughes (6):
include: Add Get/SetValue for gdiplus Color class.
include: Keep the same header order as SDK in gdiplus.h.
include: Add gdiplusbase.h.
include: Add a few sal.h defines.
include: Add stscanf_s define.
vbscript: Correct resource text for VBSE_PARAMETER_NOT_OPTIONAL.
Arkadiusz Hiler (1):
krnl386: Silence a warning in GetSystemDirectory16().
Attila Fidan (2):
winewayland: Update locked pointer position hint.
winewayland: Implement SetCursorPos via pointer lock.
Bernhard Kölbl (1):
wine.inf: Add VC runtime version key.
Bernhard Übelacker (11):
comctl32/tests: Skip a few tests in non-english locale.
user32/tests: Fix monitor dpi awareness test.
ntdll/tests: Skip FileFsFullSizeInformationEx test on older windows.
kernelbase/tests: Skip test if EnumSystemFirmwareTables is not available.
propsys/tests: Add broken for unexpected value in windows 7.
d2d1/tests: Adjust tolerance of a few float comparisons in windows 7.
ws2_32/tests: Allow WSAConnectByNameA test to fail with WSAEOPNOTSUPP.
propsys/tests: Fix check_PropVariantToBSTR2.
setupapi: Initialize the files member in SetupDuplicateDiskSpaceListW. (ASan).
setupapi/tests: Fix message of ok statement.
kernel32/tests: Add broken in test_IdnToNameprepUnicode.
Brendan McGrath (24):
mp3dmod/tests: Add tests for selecting an invalid stream.
mp3dmod: Check for invalid stream.
mp3dmod/tests: Add tests for GetInputCurrentType.
mp3dmod/tests: Add tests for GetOutputCurrentType.
mp3dmod: Implement GetInputCurrentType.
mp3dmod: Implement GetOutputCurrentType.
mp3dmod: Fix leak of previous outtype.
mfplat/tests: Add additional MFCreateWaveFormatExFromMFMediaType tests.
mfplat: Allow MF_MT_USER_DATA to be missing for all subtypes.
winedmo: Call avformat_find_stream_info for the mp3 format.
mp3dmod: Return S_OK in Allocate/Free Resources.
mp3dmod/tests: Add test for 32-bit sample size.
mp3dmod: Add support for 32-bit sample size.
mp3dmod/tests: Test different output sample rates.
mp3dmod: Return error if requested output format values don't agree.
mp3dmod: Only allow 1/2 and 1/4 subsampling.
mp3dmod/tests: Add test for nChannels = 0 on input.
mp3dmod: Ensure nChannels is greater than zero on input.
mf/tests: Test different length user_data against aac decoder.
winegstreamer: Validate the value of cbSize in aac decoder.
winegstreamer: Expand GST_ELEMENT_REGISTER* defines.
wined3d: Interpret Y'CbCr values as being from the reduced range.
mp3dmod: Implement an IMFTransform interface.
mfsrcsnk: Register the MP3 Byte Stream Handler class.
Brendan Shanks (9):
include: Add D3DKMT_WDDM_*_CAPS.
winemac: Remove pre-macOS 10.12 workarounds.
winemac: Always use notifications to detect window dragging.
winecoreaudio: Remove pre-macOS 10.12 workaround.
winegcc: Rename TOOL_ enum constants.
tools: Use _NSGetExecutablePath to implement get_bindir on macOS.
server: Use _NSGetExecutablePath to implement get_nls_dir on macOS.
loader: Use _NSGetExecutablePath to implement get_self_exe on macOS.
user32: Use the correct DPI in AdjustWindowRect(Ex) when DPI virtualization is active.
Charlotte Pabst (1):
winex11.drv: Weaken filter_event conditions for some events.
Connor McAdams (11):
d3dx9/tests: Add some more tests for saving surfaces as targa files.
d3dx9/tests: Add a test for saving a surface as D3DXIFF_DIB.
d3dx9/tests: Add tests for saving surfaces to non-DDS files.
d3dx9: Add TGA prefix to targa specific defines.
d3dx9: Add basic support for saving surfaces to targa files.
d3dx9: Add support for selecting a replacement pixel format when saving pixels to a file.
d3dx9: Add support for saving PNG files in d3dx_save_pixels_to_memory().
d3dx9: Add support for saving JPG files in d3dx_save_pixels_to_memory().
d3dx9: Add support for saving BMP files in d3dx_save_pixels_to_memory().
d3dx9: Add support for saving paletted pixel formats in d3dx_pixels_save_wic().
d3dx9: Add support for saving DIB files in d3dx_save_pixels_to_memory().
Conor McCarthy (4):
ntdll/tests: Test NtQueryVolumeInformationFile() with FileFsFullSizeInformationEx.
kernel32/tests: Test GetDiskSpaceInformationA().
ntdll: Handle FileFsFullSizeInformationEx in NtQueryVolumeInformationFile().
kernelbase: Implement GetDiskSpaceInformationA/W().
Daniel Lehman (3):
dwrite: Fix spelling for Sundanese.
xml2: Import upstream release 2.12.9.
xml2: Import upstream release 2.12.10.
Dmitry Timoshkov (7):
oleaut32/tests: Add some tests for loading and saving EMF using IPicture interface.
oleaut32: Add support for loading and saving EMF to IPicture interface.
oleaut32: Implement a better stub for IPicture::SaveAsFile.
wbemprox: Add support for Win32_PhysicalMemoryArray.
windowscodecs: Make support for WICBitmapTransformRotate270 more explicit.
kernel32: SuspendThread() in Win9x mode should return 0 for current thread.
advapi32: Add CreateProcessWithLogonW() semi-stub.
Elizabeth Figura (27):
d3dx9/tests: Define D3DX_SDK_VERSION=36 for d3dx9_36.
d3dx9/tests: Test implicit truncation warnings.
vkd3d: Import vkd3d-utils.
d3dcompiler: Use D3DPreprocess() from vkd3d-utils.
d3dcompiler: Use D3DCompile2VKD3D() from vkd3d-utils.
d3dx9: Reimplement D3DXCompileShader() for versions before 42.
d3dx9: Link versions 42 and 43 to the corresponding d3dcompiler DLL.
wined3d: Use a separate format value for d3d10+ NV12.
wined3d: Separate a wined3d_texture_vk_upload_plane() helper.
wined3d: Separate a wined3d_texture_vk_download_plane() helper.
wined3d: Implement planar Vulkan uploads.
wined3d: Implement planar Vulkan downloads.
wined3d: Implement planar Vulkan blits.
wined3d: Enable KHR_sampler_ycbcr_conversion.
wined3d: Implement planar NV12 in the Vulkan renderer.
d3d11/tests: Extend NV12 tests.
setupapi/tests: Test disk space list APIs.
setupapi: Get rid of the DISKSPACELIST typedef.
setupapi: Implement SetupAddToDiskSpaceList().
setupapi: Correctly implement SetupQuerySpaceRequiredOnDrive().
d3d11: Implement ID3D11VideoDevice::GetVideoDecoderProfile[Count]().
wined3d: Introduce a Vulkan decoder backend.
d3d11: Create a wined3d_decoder object backing the d3d11 decoder object.
wined3d: Look for a video decode queue.
wined3d: Create a Vulkan video session backing the wined3d_decoder_vk.
d3d9/tests: Expand the YUV blit tests a bit.
ddraw/tests: Port yuv_layout_test() from d3d9.
Eric Pouech (4):
findstr/tests: Add test for default findstr regex vs text search mode.
findstr: Set default search mode to regex.
findstr/tests: Always set text/regex search mode in tests.
cmd: Open file in 'TYPE' with more sharing attributes.
Esme Povirk (4):
gdiplus: Stub GdipGetEffectParameters.
gdiplus/tests: Add tests for effect parameters.
gdiplus: Split effect parameter size into helper function.
gdiplus: Store parameters on effect objects.
Etaash Mathamsetty (2):
ntdll: Implement NtGetNextProcess.
ntdll/tests: Add NtGetNextProcess tests.
Eugene McArdle (2):
ntdll/tests: Test updated NtQueryDirectoryFile mask reset behaviour.
ntdll: Invalidate cached data in NtQueryDirectoryFile when mask is changed.
Floris Renaud (1):
po: Update Dutch translation.
Giovanni Mascellani (8):
dxgi: Submit Vulkan presentation as soon as possible.
dxgi: Set the frame latency even when increasing the frame latency.
dxgi: Do not bias the frame latency fence.
dxgi: Directly signal the frame latency fence.
dxgi: Remove the frame latency fence.
dxgi: Make the frame latency waitable a semaphore.
dxgi: Wait on the frame latency semaphore when the client doesn't do it.
dxgi/tests: Use an explicit frame latency waitable when testing the back buffer index.
Hajo Nils Krabbenhöft (1):
d2d1: Update DC target surface with current HDC contents on BeginDraw().
Hans Leidekker (7):
subst: Add basic implementation.
win32u: Also set DriverVersion for software devices such as llvmpipe.
wbemprox: Don't use DXGI adapter values for Win32_SoundDevice.
wbemprox: Get Win32_VideoController values from the registry.
wmic: Treat VT_I4 values as unsigned.
wbemprox: Fix format string.
wbemprox/tests: Avoid test failures on Windows 7.
Haoyang Chen (2):
comctl32: Fix Alloc/HeapAlloc mismatches.
cryptnet: Uniform return value that is the same as _wfsopen.
Henri Verbeet (1):
wined3d: Handle a NULL "push_constants" buffer in glsl_fragment_pipe_alpha_test_func().
Jacek Caban (13):
winegcc: Don't include host include paths when compiling with MSVCRT.
include: Use inline function for DeleteFile.
include: Use wchar_t for platform types on PE targets.
include: Add UnsignedMultiply128 and _umul128 support.
include: Add ShiftRight128 and __shiftright128 support.
include: Use inline functions for CopyFile and MoveFile.
include: Use struct inheritance for MONITORINFOEX declaration in C++.
include: Add isnormal C++ declaration.
include: Introduce minwindef.h header file.
include: Introduce fibersapi.h header file.
include: Add missing d3d8types.h defines.
include: Introduce minwinbase.h header file.
include: Introduce sysinfoapi.h header file.
Jinoh Kang (10):
ntdll: Sink module dependency registration towards the end of the function in find_forwarded_export().
ntdll: Don't re-add a module dependency if it already exists.
ntdll: Register module dependency for export forwarders regardless of whether the dependency is already loaded.
ntdll: Properly track refcount on static imports of export forwarders.
ntdll: Eagerly call process_attach() on dynamic imports of export forwarders.
ntdll: Explicitly ignore dynamic (GetProcAddress) importers as relay/snoop user module.
ntdll: Properly track refcount on dynamic imports of export forwarders.
ntdll: Remove superflous NULL check for importer.
kernel32/tests: Fix thread handle leak in store_buffer_litmus_test.
kernel32/tests: Work around Windows 7 issuing DllNotification even when loading with DONT_RESOLVE_DLL_REFERENCES.
Louis Lenders (1):
ntdll: Silence the noisy FIXME in RtlGetCurrentProcessorNumberEx.
Mark Jansen (2):
version/tests: Add a test for an empty value in VerQueryValueW.
kernelbase: Fix VerQueryValueW with no data.
Mohamad Al-Jaf (1):
makecab: Add stub program.
Nikolay Sivov (24):
windowscodecs/gif: Store Image descriptor offset when reading GIF data.
windowscodecs/metadata: Add an option to initialize reader from a memory block.
windowscodecs/decoder: Separate metadata block reader to a reusable structure.
windowscodecs/decoder: Add support for metadata block reader at decoder level.
windowscodecs/decoder: Add support for IWICBitmapDecoder::CopyPalette() in common decoder.
windowscodecs: Use common decoder for GIF format.
windowscodecs/decoder: Reuse metadata readers instances.
windowscodecs/decoder: Implement metadata readers enumerator for the common decoder.
msxml3/tests: Remove tests that already run for msxml6.
msxml6/tests: Move some of the SAXXMLReader60 tests.
rtworkq: Fix private queue id mask check.
mfplat/tests: Run tests modifying process state in separate processes.
d2d1/tests: Add some tests for device context handling in the DC target.
include: Add some flags constants used in pipes API.
windowscodecs: Implement query strings enumerator.
windowscodecs/tests: Add some more tests for query enumeration.
windowscodecs/metadata: Do not decorate 'wstr' items with a type name in returned queries.
windowscodecs: Implement CreateQueryWriterFromReader().
windowscodecs/tests: Add some tests for stream position handling when nested readers are used.
windowscodecs/metadata: Restore original stream position on GetStream().
windowscodecs/metadata: Replicate original stream position when creating writer instances from readers.
windowscodecs/tests: Add some tests for metadata handler GetClassID().
windowscodecs/metadata: Implement GetClassID().
windowscodecs: Implement GetPreferredVendorGUID().
Paul Gofman (5):
ntdll: Add stub for RtlDeriveCapabilitySidsFromName().
ntdll/tests: Add tests for RtlDeriveCapabilitySidsFromName().
ntdll: Implement RtlDeriveCapabilitySidsFromName().
kernelbase: Implement DeriveCapabilitySidsFromName().
kernelbase/tests: Add test for DeriveCapabilitySidsFromName().
Piotr Caban (9):
msvcr120: Simplify feupdateenv implementation.
ole32: Mark property storage dirty in PropertyStorage_ConstructEmpty.
ole32: Mark property storage not dirty after it's saved.
ole32: Remove end label from PropertyStorage_WriteToStream.
ole32: Reset output stream when wrting property storage.
whoami: Return non-zero value on error.
whoami: Handle arguments starting with '/' and '-'.
whoami: Parse and validate all command line arguments.
whoami: Support format specifiers when handling /user argument.
Raphael Riemann (1):
kernelbase: Add WerRegisterCustomMetadata stub.
Rémi Bernon (29):
winevulkan: Generate function pointers for required funcs.
winevulkan: Enable the VK_EXT_headless_surface extension.
win32u: Pass a vulkan_instance pointer to vulkan_surface_create.
win32u: Use VK_EXT_headless_surface for nulldrv surface.
winex11: Initialize window managed flag in create_whole_window.
winex11: Request managed/embedded in a new window_set_managed helper.
winex11: Check managed window changes in WindowPosChanged.
winex11: Pass fullscreen flag to is_window_managed.
winewayland: Pass fullscreen flag to is_window_managed.
wined3d: Avoid double-free of swapchain surface on error.
include: Add a MB_CUR_MAX definition in ctype.h.
include: Add some _BitScanForward(64) declarations in intrin.h.
include: Fix InlineIsEqualGUID C++ warning.
include: Fix wmemchr C++ warning.
winetest: Avoid underflow when computing filtered output size.
win32u: Move OpenGL initialization to a separate source.
win32u: Move dibdrv OpenGL functions to opengl.c.
win32u: Move OSMesa OpenGL functions to opengl.c.
win32u: Remove unncessary OSMesa indirections.
win32u: Guard OpenGL function pointers initialization.
wineandroid: Remove now unnecessary wine_get_wgl_driver init guard.
winemac: Remove now unnecessary wine_get_wgl_driver init guard.
winex11: Remove now unnecessary wine_get_wgl_driver init guard.
winewayland: Remove now unnecessary wine_get_wgl_driver init guard.
include: Add IID_PPV_ARGS macro.
include: Add QueryDisplayConfig declaration.
include: Add d3d8 interface GUIDs.
include: Add D3D9 interface GUIDs.
include: Fix D3DDEVINFO_D3DRESOURCEMANAGER type name.
Sebastian Lackner (1):
oleaut32: Implement SaveAsFile for PICTYPE_ENHMETAFILE.
Tim Clem (1):
wbemprox: Add Manufacturer and Speed to Win32_PhysicalMemory.
Vadim Kazakov (1):
include: Add definition of NEGOSSP_NAME.
Vibhav Pant (15):
winebth.sys: Store known devices per radio from org.bluez.Device1 objects on BlueZ.
winebth.sys: Add a basic implementation for IOCTL_BTH_GET_DEVICE_INFO.
winebth.sys: Add connection related properties for remote devices.
winebth.sys: Queue a DEVICE_ADDED event on receiving InterfacesAdded for objects that implement org.bluez.Device1.
winebth.sys: Remove the corresponding device entry for Bluetooth radios on receiving InterfacesRemoved for org.bluez.Device1 objects.
winebth.sys: Use the correct DBus property name in IOCTL_WINEBTH_RADIO_SET_FLAG.
winebth.sys: Initially set numOfDevices to 0 in IOCTL_BTH_GET_DEVICE_INFO.
winebth.sys: Don't iterate over the remaining radios once a local device has been removed.
winebth.sys: Use the "Name" property of a BlueZ adapter for the local radio name.
winebth.sys: Use the "Trusted" property from BlueZ device objects to set BDIF_PERSONAL.
winebth.sys: Set the device class for remote devices from BlueZ's "Class" property.
winebth.sys: Only set the updated properties for local radios on BLUETOOTH_WATCHER_EVENT_TYPE_RADIO_PROPERTIES_CHANGED.
winebth.sys: Update properties for tracked remote devices on receiving PropertiesChanged for org.bluez.Device1 objects from BlueZ.
ws2_32: Implement WSAAddressToString() for Bluetooth (AF_BTH) addresses.
ws2_32/tests: Add tests for Bluetooth addresses for WSAStringToAddress().
William Horvath (2):
server: Use a high precision timespec directly for poll timeouts on supported platforms.
server: Use epoll_pwait2 for the main loop on Linux.
Yuxuan Shui (1):
winegstreamer: Avoid large buffer pushes in wg_transform.
Zhiyi Zhang (8):
imm32/tests: Test that the IME UI window shouldn't be above normal windows at creation.
imm32: Move the IME UI window to the bottom at creation.
d3d11/tests: Test that the fallback device window shouldn't be above normal windows at creation.
dxgi: Move the fallback device window to the bottom at creation.
winex11.drv: Allow MWM_FUNC_MAXIMIZE when WS_MAXIMIZE is present.
win32u: Use the normal window rectangle to find monitor when a window is minimized.
win32u: Remove an unused parameter.
win32u: Don't use the current mode in the registry if it's a detached mode.
Ziqing Hui (4):
mfreadwrite/tests: Move writer creation tests to test_sink_writer_create.
mfreadwrite/tests: Test getting transforms and media sinks from writer.
mfreadwrite/tests: Test AddStream and SetInputMediaType for writer.
mfreadwrite/tests: Test sample processing for writer.
```
1
0
The Wine development release 10.2 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 1.15.
- Support for setting thread priorities.
- New Wow64 mode can be enabled dynamically.
- More progress on the Bluetooth driver.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.2.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.2/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.2 (total 20):
- #25872 Guild Wars 'test system' doesn't show test results
- #39474 MSWT Kart 2004 does not work
- #50152 YOU and ME and HER: Game crashes after launching from game launcher
- #56260 16-bit Myst deadlocks when entering Book
- #56464 vbscript: Join() builtin is not implemented
- #56951 psql 16: unrecognized win32 error code: 127 invalid binary: Invalid argument / could not find a "psql.exe" to execute
- #57310 wineboot failed to initialize a wine prefix
- #57625 Regression: some fullscreen games are displayed incorrectly upon switching from and back to game window
- #57787 Final Fantasy XI Online crashes with unhandled page fault on launch
- #57793 Wine Wordpad started with blank screen
- #57795 cmd lacks support for right-to-left handle redirection (2<&1)
- #57803 Sekiro: Shadows Die Twice crashes at launch with Xbox One controller connected
- #57804 cmd: '@echo off' gets propagated to parent on CALL instruction (CALL seems to freezes)
- #57809 cmd: Incorrect substring expansion of last character (e.g. `!MY_STR:~1!`)
- #57810 ITextStream::WriteBlankLines() needs to be implemented for libxml2's configure.js to work
- #57817 mvscp90 ::std::ifstream::seekg(0) crashes
- #57819 Wine unable to start when built with binutils 2.44
- #57824 SetThreadPriority unexpectedly fails on terminated threads instead of no-op
- #57834 Cyberpunk 2077 doesn't load with CyberEngine Tweaks
- #57847 Cross-compiled Wine no longer installs a 'wine' loader binary
### Changes since 10.1:
```
Adam Markowski (1):
po: Update Polish translation.
Aida Jonikienė (1):
wined3d: Add DXT format mappings in the Vulkan renderer.
Alex Henrie (6):
urlmon/tests: Use wide character string literals.
advapi32/tests: Use wide character string literals.
setupapi: Use wide character string literals.
msxml3: Use wide character string literals.
krnl386: Add a WOWCallback16Ex flag to simulate a hardware interrupt.
mmsystem: Simulate a hardware interrupt in MMSYSTDRV_Callback3216.
Alexandre Julliard (31):
user32: Set last error on failed window enumeration.
server: Fix desktop access check for window enumeration.
ntdll: Add a helper function to retrieve the .so directory.
ntdll: Add a helper function to get the alternate 32/64-bit machine.
ntdll: Set the WINELOADER variable on the PE side, using a Windows path.
loader: Install the Wine loader in the Unix lib directory.
tools: Add a simpler Wine launcher in the bin directory.
tools: Move the loader man pages to the new Wine loader directory.
dbghelp: Always use the WINELOADER variable for the loader name.
ntdll: Disable file system redirection until the initial exe is loaded.
ntdll: Look for a builtin exe corresponding to the loader basename.
makefiles: Install binaries as symlinks to wine.
ntdll: Allow forcing new wow64 mode by setting WINEARCH=wow64.
ntdll: Move setting DYLD_LIBRARY_PATH on macOS to the loader.
makefiles: Create wine as a symlink to tools/wine/wine.
makefiles: Link to the wine loader in the tools directory if it was built.
makefiles: Generate the wow64 symlinks from makedep.
makefiles: Generate more of the re-configure rules from makedep.
make_unicode: Update timezone data source to version 2025a.
makefiles: Don't clean files in other directories.
png: Import upstream release 1.6.45.
lcms2: Import upstream release 2.17.
faudio: Import upstream release 25.02.
rsaenh: Use RtlGenRandom() directly.
rsaenh: Don't use printf.
vkd3d: Import upstream release 1.15.
lcms2: Allow creating a transform without specifying input/output formats.
server: Support an arbitrary number of PE sections.
ntdll: Support an arbitrary number of PE sections.
vkd3d: Update version number.
makefiles: Fix the distclean target to clean everything.
Alexandros Frantzis (1):
winewayland: Don't crash on text input done events without focus.
Anton Baskanov (1):
winedbg: Make crash dialog topmost.
Attila Fidan (4):
winewayland: Enable/disable the zwp_text_input_v3 object.
winewayland: Post IME update for committed text.
winewayland: Implement SetIMECompositionRect.
winewayland: Post IME update for preedit text.
Austin English (1):
mshtml: Add registry association for .log files.
Bernhard Übelacker (3):
wbemprox: Increase buffer size one iteration earlier (ASan).
ntdll/tests: Skip leap secondInformation test with older Windows versions.
msvcrt/tests: Add missing parameter pmode to _open call (ASan).
Biswapriyo Nath (3):
include: Add UI Automation Style ID definitions.
include: Add IWiaDevMgr2 definition in wia_lh.idl.
include: Add missing structures for wiadef.h in wia_lh.idl.
Brendan McGrath (3):
winedmo: Explicitly set 'Data1' value for VP9 GUID.
mf/tests: Add tests using a new WMV decoder MFT.
winegstreamer: Store and use previous WMV stride value.
Brendan Shanks (2):
configure: MacOS is always darwin*.
winecoreaudio: Avoid duplicate Program Change or Channel Aftertouch MIDI messages.
Connor McAdams (2):
quartz/tests: Add a test for resetting stream position after receiving EC_COMPLETE.
quartz/filtergraph: Allow changing stream position after receiving EC_COMPLETE.
Conor McCarthy (16):
mfplat/tests: Test putting work on an undefined queue id.
rtworkq/tests: Test putting work on an undefined queue id.
rtworkq: Support putting work on RTWQ_CALLBACK_QUEUE_UNDEFINED.
rtworkq: Support putting work on any id in RTWQ_CALLBACK_QUEUE_PRIVATE_MASK.
mfplat/tests: Introduce a helper to check the platform lock count.
mfplat/tests: Test mixing of MF platform functions with their Rtwq equivalents.
mfplat/tests: Test platform startup and lock counts.
rtworkq/tests: Test work queue.
rtworkq: Introduce a platform startup count.
rtworkq: Introduce an async result object cache.
mfplat: Free the inner cookie passed to resolver_create_cancel_object().
mfplat/tests: Release callback2 in test_event_queue().
mfplat/tests: Check for async result release after canceling work and shutting down.
rtworkq/tests: Test scheduled items.
rtworkq/tests: Test queue shutdown with pending items.
rtworkq: Do not cancel pending callbacks when closing a thread pool.
Damjan Jovanovic (2):
scrrun: Implement ITextStream::WriteBlankLines().
cmd: Add support for right-to-left handle redirection (2<&1).
Dmitry Timoshkov (17):
windowscodecs/tests: Add some tests for IWICBitmapFlipRotator.
windowscodecs: Implement IWICBitmapFlipRotator(WICBitmapTransformFlipHorizontal) for bitmaps with bpp >= 8.
windowscodecs: Implement IWICBitmapFlipRotator(WICBitmapTransformRotate90) for bitmaps with bpp >= 8.
windowscodecs: Simplify a bit FlipRotator_CopyPixels() implementation.
wldap32: Enable libldap tracing with +wldap32 channel.
wldap32: Don't use win32 constant when calling into libldap.
oleaut32: Fix logic for deciding whether type description follows the name.
oleaut32: 'typekind' is the last field of SLTG_OtherTypeInfo structure.
oleaut32: Implement decoding of SLTG help strings.
oleaut32: Add support for decoding SLTG function help strings.
oleaut32: Add support for decoding SLTG variable help strings.
oleaut32: Make OleLoadPicture load DIBs using WIC decoder.
server: Add support for merging WM_MOUSEWHEEL messages.
oleaut32: Add missing fixup for SLTG typename offset.
oleaut32: Avoid double initialization of TypeInfoCount when reading SLTG typelib.
gdiplus: Add support for more image color formats.
gdiplus/tests: Add some tests for loading TIFF images in various color formats.
Elizabeth Figura (9):
shdocvw: Remove ParseURLFromOutsideSource() implementation.
shdocvw: Remove URLSubRegQueryA() implementation.
wined3d: Propagate a CLEARED location when blitting.
wined3d: Explicitly check for BUFFER/SYSMEM before calling wined3d_texture_download_from_texture().
wined3d: Introduce initial support for Direct3D 10+ 2-plane formats.
wined3d: Forbid creating unaligned planar textures.
wined3d: Forbid unaligned blits for planar textures.
wined3d: Implement creating views of planar resources.
d3d11: Implement D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT.
Eric Pouech (4):
cmd/tests: Add tests about echo mode persistence across batch calls.
cmd: Preserve echo mode across interactive batch invocation.
cmd/tests: Add tests wrt. variable expansion with substring modifition.
cmd: Fix substring substitution in variable expansion.
Esme Povirk (4):
comctl32: Test for an IAccessible interface on SysLink controls.
comctl32: Further testing of SysLink IAccessible.
comctl32: Stub IAccessible interface for SysLink controls.
comctl32: Implement accRole for SysLink controls.
Francis De Brabandere (1):
vbscript: Add Join implementation.
Gabriel Ivăncescu (2):
mshtml: Clear the documents list when detaching inner window.
jscript: Use as_jsdisp where object is known to be a jsdisp.
Gijs Vermeulen (1):
winegstreamer: Implement IWMSyncReader2::GetMaxOutputSampleSize.
Hans Leidekker (1):
sort: Support /+n option.
Jacek Caban (11):
ntdll: Pass WINE_MODREF to import_dll.
ntdll: Pass importer pointer to find_ordinal_export.
ntdll: Pass importer pointer to find_named_export.
ntdll: Pass importer pointer to find_forwarded_export.
ntdll: Pass importer pointer to build_import_name.
ntdll: Use NULL importer in LdrGetProcedureAddress.
ntdll: Remove no longer needed current_modref.
msvcp: Avoid explicitly aligning structs passed by value.
msvcp60: Avoid explicitly aligning structs passed by value.
ntdll: Use signed type for IAT offset in LdrResolveDelayLoadedAPI.
winebuild: Avoid using .idata section for delay-load import libraries.
Jinoh Kang (11):
server: Don't fail SetThreadPriority() on terminated threads.
kernel32/tests: Add a basic FlushProcessWriteBuffers stress test.
kernel32/tests: Add a store buffering litmus test involving FlushProcessWriteBuffers.
include: Fix ReadNoFence64 on i386.
server: Fix incorrect usage of __WINE_ATOMIC_STORE_RELEASE in SHARED_WRITE_BEGIN/SHARED_WRITE_END.
include: Prevent misuse of __WINE_ATOMIC_* helper macros for non-atomic large accesses.
kernel32/tests: Add basic tests for internal flags of modules loaded with DONT_RESOLVE_DLL_REFERENCES.
kernel32/tests: Test for unexpected LDR_PROCESS_ATTACHED flag in import dependency loaded with DONT_RESOLVE_DLL_REFERENCES.
kernel32/tests: Test for unexpected loader notification for import dependency loaded with DONT_RESOLVE_DLL_REFERENCES.
ntdll: Skip DLL initialization and ldr notification entirely if DONT_RESOLVE_DLL_REFERENCES is set.
ntdll: Remove redundant LDR_DONT_RESOLVE_REFS checks before calling process_attach().
Joe Souza (3):
cmd/tests: Add tests for command DIR /O.
cmd: Cleanup DIR /O logic.
cmd: Implement ability to abort lengthy directory operations via Ctrl-C.
Marc-Aurel Zent (5):
server: Also set thread priorities upon process priority change.
kernel32/tests: Setting process priority on a terminated process should succeed.
server: Implement apply_thread_priority on macOS for application priorities.
server: Implement apply_thread_priority on macOS for realtime priorities.
server: Apply Mach thread priorities after process tracing is initialized.
Martin Storsjö (2):
ntdll: Allow running arm/aarch64 in (old) wow64 mode.
server: Include ARMNT as one of the supported architectures on aarch64.
Michele Dionisio (2):
timeout: Add a timeout command.
timeout/tests: Add minimal test suite.
Mohamad Al-Jaf (14):
windows.web/tests: Remove superfluous cast.
windows.web/tests: Add IJsonValue::get_ValueType() tests.
windows.web: Implement IJsonValue::get_ValueType().
windows.web: Partially implement IJsonValueStatics::Parse().
windows.web: Add error handling in IJsonValue::GetArray().
windows.web: Add error handling in IJsonValue::GetObject().
windows.web: Implement IJsonValue::GetString().
windows.web: Implement IJsonValue::GetNumber().
windows.web: Implement IJsonValue::GetBoolean().
windows.web/tests: Add IJsonValueStatics::Parse() tests.
include: Reorder windows.storage.stream classes.
windows.storage: Add stub dll.
windows.storage: Move RandomAccessStreamReference class from wintypes.
windows.storage: Add error handling in IRandomAccessStreamReferenceStatics::CreateFromStream().
Nikolay Sivov (41):
windowscodecs: Implement CreateMetadataWriter().
windowscodecs/metadata: Create nested writer instances when loading IFD data.
windowscodecs/metadata: Add a stub for WICApp1MetadataWriter.
windowscodecs: Filter options in CreateMetadataWriter().
windowscodecs/metadata: Add initial implementation of CreateMetadataWriterFromReader().
windowscodecs/tests: Add an item enumeration test for the App1 reader.
windowscodecs/metadata: Implement SetValue().
maintainers: Add myself to the scrrun.dll section.
wbemprox: Fix a memory leak while filling Win32_PnPEntity fields.
windowscodecs/metadata: Recursively create nested writers in CreateMetadataWriterFromReader().
windowscodecs/tests: Use generic block writer for testing.
windowscodecs/tests: Add some tests for querying nested readers in App1 format.
windowscodecs/tests: Add some tests for the query writer used on App1 data.
windowscodecs/metadata: Handle nested metadata handlers lookup by CLSID.
windowscodecs/tests: Add a top level block enumerator for the test block writer.
windowscodecs/tests: Add some tests for handler objects enumerator.
windowscodecs: Add missing traces to the IWICEnumMetadataItem implementation.
msi: Avoid invalid access when handling format strings.
windowscodecs/tests: Add some query tests with the Unknown reader.
windowscodecs/metadata: Share implementation between query reader and writer objects.
windowscodecs/tests: Add some tests for CreateQueryWriter().
windowscodecs/tests: Add query reader tests for live block reader updates.
windowscodecs/tests: Add some tests for CreateQueryWriterFromReader().
windowscodecs/tests: Add some tests for the query reader container format.
windowscodecs/metadata: Use VT_LPWSTR type instead of BSTRs when parsing queries.
windowscodecs/metadata: Collect query components before assigning values.
windowscodecs/metadata: Add a helper to parse query index syntax.
windowscodecs/metadata: Use separate helpers to parse query items.
windowscodecs/metadata: Handle empty items in queries.
windowscodecs/metadata: Return query writer object from GetMetadataByName() when block writer is used.
windowscodecs/metadata: Base returned query handlers on metadata handlers.
windowscodecs: Implement CreateQueryWriter().
windowscodecs/tests: Add some tests for default metadata item set.
windowscodecs/metadata: Add flags mask to configure builtin handlers.
windowscodecs/metadata: Implement removing items with IWICMetadataWriter.
windowscodecs/tests: Add some tests for RemoveMetadataByName().
windowscodecs/metadata: Implement RemoveMetadataByName().
windowscodecs/tests: Remove WinXP workarounds from png metadata test.
windowscodecs/tests: Move non-specific CreateQueryReaderFromBlockReader() tests to a separate function.
windowscodecs/tests: Add a test for reader instances returned from the decoder.
windowscodecs: Remove TGA decoder.
Paul Gofman (24):
user32/tests: Test system generated WM_MOUSEMOVE with raw input.
server: Ignore WM_MOUSEMOVE with raw input / RIDEV_NOLEGACY.
dwmapi: Sleep in DwmFlush().
ntoskrnl.exe/tests: Open directory object with nonzero access in test_permanent().
httpapi: Don't open files with zero access.
kernel32: Don't open reg keys with zero access mask.
setupapi: Don't open reg keys with zero access mask.
devenum: Don't open reg keys with zero access mask.
quartz: Don't open reg keys with zero access mask.
wbemprox: Don't open reg keys with zero access mask.
shell32: Don't open reg keys with zero access mask.
server: Check for zero access in alloc_handle().
include: Add cfgmgr ID list filter constants.
setupapi: Implement CM_Get_Device_ID_List[_Size]W().
setupapi: Implement CM_Get_Device_ID_List[_Size]A().
setupapi: Make device instance handlers persistent.
setupapi: Implement CM_Locate_DevNode[_Ex]{A|W}().
winex11.drv: Sort Vulkan physical devices in get_gpu_properties_from_vulkan().
win32u: Sort Vulkan physical devices in get_vulkan_gpus().
crypt32/tests: Add test for chain engine cache update.
crypt32: Lock store in MemStore_deleteContext().
crypt32: Do not temporary delete contexts in I_CertUpdateStore().
crypt32: Only sync registry store if registry has changed.
crypt32: Resync world store for default engines in get_chain_engine().
Rémi Bernon (11):
win32u: Introduce a new add_virtual_mode helper.
win32u: Pass host enumerated display modes to get_virtual_modes.
win32u: Keep virtual screen sizes in a SIZE array.
win32u: Introduce a new get_screen_sizes helper.
win32u: Check generated sizes with the maximum display mode.
win32u: Generate fake resolution list from the host modes.
win32u: Generate modes for the host native frequency.
server: Introduce a new find_mouse_message helper.
winetest: Ignore success and color codes in tests output limit.
win32u: Drop now unnecessary WM_WINE_DESKTOP_RESIZED internal message.
winex11: Delay changing window config if win32 side is still minimized.
Sven Baars (2):
win32u: Fix an uninitialized variable warning on GCC 10.
winegstreamer: Fix a compiler warning with GStreamer 1.18 or lower.
Torge Matthies (2):
ntdll: Add sys_membarrier-based implementation of NtFlushProcessWriteBuffers.
ntdll: Add thread_get_register_pointer_values-based implementation of NtFlushProcessWriteBuffers.
Vibhav Pant (10):
winebth.sys: Don't call dbus_pending_call_set_notify with a NULL pending call.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_SET_FLAG.
winebth.sys: Call bluez_watcher_close as part of bluetooth_shutdown.
bluetoothapis: Add stub for BluetoothEnableIncomingConnections.
bluetoothapis/tests: Add tests for BluetoothEnableIncomingConnections.
bluetoothapis: Implement BluetoothEnableIncomingConnections.
bluetoothapis: Add stub for BluetoothEnableDiscovery.
bluetoothapis/tests: Add tests for BluetoothEnableDiscovery.
bluetoothapis: Implement BluetoothEnableDiscovery.
winebth.sys: Free Unix handle to the local radio after updating its properties.
Wei Xie (1):
http.sys: Avoid crashes in complete_irp() if http header value is space.
Zhiyi Zhang (17):
prntvpt: Add a missing return (Coverity).
ntdll: Implement RtlEnumerateGenericTableWithoutSplaying().
ntdll/tests: Add RtlEnumerateGenericTableWithoutSplaying() tests.
ntdll: Implement RtlEnumerateGenericTable().
ntdll/tests: Add RtlEnumerateGenericTable() tests.
ntdll: Implement RtlGetElementGenericTable().
ntdll/tests: Add RtlGetElementGenericTable().
user32/tests: Test TME_LEAVE when the cursor is not in the specified tracking window.
win32u: Post WM_MOUSELEAVE immediately when the cursor is not in the specified tracking window.
include: Add D3DKMT_DRIVERVERSION.
gdi32/tests: Add D3DKMTQueryAdapterInfo() tests.
win32u: Support KMTQAITYPE_CHECKDRIVERUPDATESTATUS for NtGdiDdDDIQueryAdapterInfo().
win32u: Support KMTQAITYPE_DRIVERVERSION for NtGdiDdDDIQueryAdapterInfo().
winex11.drv: Go though WithdrawnState when transitioning from IconicState to NormalState.
d2d1: Add D2D1ColorMatrix effect stub.
d2d1: Add D2D1Flood effect stub.
d3d11/tests: Test D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT feature.
```
1
0
The Wine development release 10.1 is now available.
What's new in this release:
- A wide range of changes that were deferred during code freeze.
- Root certificates fixes for Battle.net.
- Print Provider improvements.
- More progress on the Bluetooth driver.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/10.x/wine-10.1.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.1/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.1 (total 35):
- #27245 Internet Settings security zones not i18n-ed
- #35981 Battlefield: Bad Company 2 (Russian locale) updater has missing glyphs
- #39576 Sound in StarCraft 2 breaks after
- #39733 OpenGL Extensions Viewer 4.x (.NET 4.0 app) fails to start with Wine-Mono
- #41342 Build with winegcc is not reproducible
- #46580 HoMM3 WOG: can't enter russian text speaking with sphynx
- #46702 GNUTLS_CURVE_TO_BITS not found
- #52221 GameMaker 8: Missing sound effects
- #53644 vbscript can not compile classes with lists of private / public / dim declarations
- #54752 RUN Moldex3D Viewer will Crash
- #55155 Telegram can not be run in latest version wine, but ok in wine6.0.4
- #56530 Final Fantasy XI Online: Memory leak when Wine is built with CFLAGS="-g -mno-avx".
- #56559 iologo launcher cannot download setup program
- #56658 When using Kosugi for vertical writing, some punctuation marks are not placed correctly.
- #56703 Crash when installing Rhinoceros 8.6
- #56876 Paint Tool SAIv2 VirtualAlloc invalid address on commit
- #57191 Flickering image on Video-surveilance-Software
- #57338 wine-gecko/wine-mono don't cache their installers if using a username with unicode characters
- #57360 Wrong Combobox dropdown in 7zFM
- #57529 reMarkable application crash on new winehq-devel 10 RC1
- #57563 vbscript: mid() throws when passed VT_EMPTY instead of returning empty string
- #57626 SteuerErklarung 2025 halts: windows 8 is not compatible
- #57650 osu! stable: Insert key to minimize to tray does not hide game window (regression)
- #57664 New problems with SudoCue under Win 10.0 rc5
- #57675 err:virtual:virtual_setup_exception stack overflow 3072 bytes addr 0x7bd5b54c stack 0x81100400
- #57689 Menus misplaced on X11 when using dual monitor with right monitor as primary
- #57690 .NET Framework 4.8 installer hangs
- #57692 No context menu in Reason (DAW)
- #57698 Reason's (DAW) dialog windows stopped registering mouse events and open at screen's right edge
- #57704 Compile Error since 10.0rc5+
- #57710 Cannot open main menu via keyboard in Reason (DAW)
- #57711 The 32-bit wpcap program has a stack leakage issue
- #57766 Win3_BIOS most likely should be Win32_BIOS instead
- #57787 Final Fantasy XI Online crashes with unhandled page fault on launch
- #57794 WinHTTP implementation assumes HTTP response has a status text
### Changes since 10.0:
```
Akihiro Sagawa (2):
gdi32/tests: Add tests for script-independent vertical glyph lookup.
win32u: Use the first vertical alternates table regardless of script.
Alex Henrie (20):
concrt140: Annotate allocators with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
msvcirt: Annotate allocators with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
msvcp60: Annotate allocators with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
msvcp90: Annotate allocators with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
msvcrt: Annotate allocators with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
ntdll: Return an error if count is zero in NtRemoveIoCompletionEx.
shell32/tests: Add tests for StrRetToStrN null termination.
shlwapi: Correct return value of StrRetToBuf on an invalid type.
shell32: Use StrRetToBuf instead of reimplementing it.
comdlg32: Use StrRetToBuf instead of reimplementing it.
hhctrl: Fix spelling of "local" in OnTopicChange.
tapi32: Use wide character string literals.
winhlp32: Use wide character string literals.
shlwapi: Use wide character string literals.
cryptui: Use wide character string literals.
hhctrl: Use wide character string literals.
urlmon: Make security zone names and descriptions translatable.
ieframe: Use wide character string literals.
hhctrl: Fix window class name in HH_CreateHelpWindow.
hhctrl: Make "Select Topic" window title translatable.
Alexandre Julliard (39):
shell32: Move some function prototypes to shlwapi.h.
winedump: Dump MUI resources.
wrc: Remove the unused res_count structure.
include: Mark global asm functions as hidden.
kernel32: Implement RegisterWaitForInputIdle().
wineps: Don't store the glyph name or encoding for individual glyphs.
wineps: Don't parse the glyph name or encoding when loading AFM files.
wineps: Remove some unused AFM values.
wineps: Use simple strings for glyph names.
win32u: Implement NtUserDestroyCaret().
win32u: Implement NtUserReleaseCapture().
win32u: Implement NtUserGetThreadState().
win32u: Implement NtUserCreateMenu() and NtUserCreatePopupMenu().
win32u: Implement NtUserEnumClipboardFormats().
win32u: Implement NtUserMessageBeep().
win32u: Implement NtUserPostQuitMessage().
win32u: Implement NtUserRealizePalette().
win32u: Implement NtUserReplyMessage().
win32u: Implement NtUserSetCaretBlinkTime().
win32u: Implement NtUserSetCaretPos().
win32u: Implement NtUserSetProcessDefaultLayout().
win32u: Implement NtUserGetClipCursor().
win32u: Implement NtUserArrangeIconicWindows().
win32u: Implement NtUserDrawMenuBar().
win32u: Implement NtUserGetWindowContextHelpId().
win32u: Implement NtUserSetProgmanWindow() and NtUserSetTaskmanWindow().
win32u: Implement NtUserEnableWindow().
win32u: Implement NtUserSetWindowContextHelpId().
win32u: Implement NtUserShowOwnedPopups().
win32u: Implement NtUserUnhookWindowsHook().
win32u: Implement NtUserValidateRgn().
winedbg: Remove unneeded wrap around checks.
winegcc: Always specify the output file name when there's no spec file.
kernel32/tests: Remove some workarounds for old Windows versions.
kernel32/tests: Add tests for language-specific manifest lookup.
ntdll: Implement language-specific manifest lookup.
server: Do not allow creating mailslots with zero access.
server: Do not allow creating named pipes with zero access.
server: Skip non-accessible threads in NtGetNextThread().
Alexandros Frantzis (1):
winewayland: Round the Wayland refresh rate to calculate the win32 display frequency.
Arkadiusz Hiler (1):
jscript: Fix JSON.stringify for arrays longer than 10.
Bernhard Übelacker (1):
kernel32/tests: Match the value in the debug message the test condition.
Billy Laws (1):
ntdll: Detect kernel support before using ARM64 ID regs.
Brendan McGrath (2):
mfplat/tests: Add audio tests for MFInitMediaTypeFromAMMediaType.
mfplat: Add support for audio with NULL format to MFInitMediaTypeFromAMMediaType.
Brendan Shanks (2):
winemac: [NSWindow setAlphaValue:] must be called from the main thread.
winemac: [NSWindow contentView] must be called from the main thread.
Conor McCarthy (2):
mfsrcsnk: Release object queue objects on destruction.
mfsrcsnk: Release the async request popped sample after sending it.
Damjan Jovanovic (1):
user32: Copy the clipboard format iterator's position when cloning it.
Daniel Lehman (4):
msvcp140/tests: Add more tests for _Mtx_t.
msvcp140: Fix field order in _Mtx_t.
include: Add signbit declarations for c++.
msvcp140: Add padding to _Cnd_t.
Dean M Greer (2):
documentation: Mac OS X became macOS from 10.12.
readme: Update mac info section.
Dmitry Timoshkov (31):
wldap32: Avoid crashes in interact_callback() if defaults is NULL.
wldap32: Add stub for ldap_get_option(LDAP_OPT_GETDSNAME_FLAGS).
wldap32: Add stub for ldap_set_option(LDAP_OPT_GETDSNAME_FLAGS).
wldap32: Add stub for ldap_set_option(LDAP_OPT_PROMPT_CREDENTIALS).
wldap32: Add stub for ldap_set_option(LDAP_OPT_REFERRAL_CALLBACK).
prntvpt: Also initialize dmDefaultSource field.
prntvpt: Forward BindPTProviderThunk to PTOpenProviderEx.
prntvpt: Forward UnbindPTProviderThunk to PTCloseProvider.
prntvpt: Implement ConvertDevModeToPrintTicketThunk2.
prntvpt: Implement GetPrintCapabilitiesThunk2.
prntvpt: Implement ConvertPrintTicketToDevModeThunk2.
prntvpt: Prefer builtin.
prntvpt: Add version resource.
kerberos: Update sizes to match modern implementations.
secur32: Update max token size for Negotiate.
prntvpt: Implement writing PageMediaSize capabilities.
prntvpt: Implement writing PageImageableSize capabilities.
crypt32: Add support for CryptMsgControl(CMSG_CTRL_ADD_CERT) to a being decoded message.
crypt32: Add szOID_APPLICATION_CERT_POLICIES to the list of supported critical extensions.
crypt32: Ignore CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG and CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG in CryptFindOIDInfo().
crypt32: Add support for CryptMsgControl(CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR) to a being decoded message.
crypt32: Add support for CryptMsgGetParam(CMSG_ENCRYPTED_DIGEST) to a being decoded signed message.
crypt32: Add support for CryptMsgControl(CMSG_CTRL_DEL_CERT) to a being decoded message.
crypt32: CertVerifyCertificateChainPolicy() extensions are registered under "EncodingType 0" key.
crypt32: Do not reject key usage data longer than 1 byte.
compstui: Add more string resources.
netapi32: Add stubs for DsGetDcOpenA/W.
wldap32: Use correct host when connecting to Kerberos DC.
wldap32: ldap_init() should resolve NULL hostname to default Kerberos DC.
wldap32/tests: Add some tests for LDAP authentication to a Kerberos DC.
prntvpt: Use Windows 10 version numbers.
Ekaterine Papava (1):
po: Update Georgian translation.
Elizabeth Figura (21):
msi: Fix a spelling error in the name of MigrateFeatureStates.
wined3d: Feed WINED3D_RS_POINTSIZE through a push constant buffer.
wined3d: Implement point size in the HLSL FFP pipeline.
wined3d: Implement vertex blending in the HLSL FFP pipeline.
wined3d: Feed bumpenv constants through a push constant buffer.
wined3d: Implement bumpenv mapping in the HLSL FFP pipeline.
wined3d: Implement colour keying in the HLSL FFP pipeline.
wined3d: Bind the right push constant buffers when FFP is toggled.
wined3d: Use ps_compile_args in shader_spirv_compile_arguments.
wined3d/spirv: Implement flat shading.
wined3d/glsl: Move legacy alpha test to shader_glsl_apply_draw_state().
wined3d: Feed alpha ref through a push constant buffer.
wined3d/spirv: Implement alpha test.
d3d9: Fix IUnknown delegation in IDirect3DDevice9On12.
wined3d: Do not disable point sprite in wined3d_context_gl_apply_blit_state().
wined3d: Do not toggle point sprite.
wined3d: Remove the redundant per_vertex_point_size from vs_compile_args.
wined3d: Remove FOGVERTEXMODE handling from find_ps_compile_args().
d3d11/tests: Remove the workaround for RTVs in test_nv12().
wined3d: Use the correct pitch when downloading Vulkan textures.
wined3d: Factor out a get_map_pitch() helper.
Eric Pouech (3):
include: Add some new definitions for dbghelp.h.
include: Add a couple of definitions to mscvpdb.h.
include: Use flexible array-member in some structure declarations.
Esme Povirk (5):
gdiplus: AddClosedCurve always starts a new subpath.
gdiplus: GdipAddPathPie always starts a new figure.
appwiz.cpl: Account for unicode characters in XDG_CACHE_HOME.
user32/tests: Move a todo into the message sequence.
user32/tests: Account for Wine sometimes duplicating WM_PAINT.
Etaash Mathamsetty (3):
wine.inf: Add UBR key.
winecfg: Add support for UBR key.
twinapi.appcore/tests: Fix broken registry query.
Fabian Maurer (4):
mlang: In GetFontCodePages add another null check (Coverity).
include: Add IConnectionProfile2.
windows.networking.connectivity: Add IConnectionProfile2 stubs.
windows.networking.connectivity: Fake success for IsWwanConnectionProfile and IsWlanConnectionProfile.
Francis De Brabandere (1):
vbscript: Support multiple class declarations on a single line.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.307.
Hans Leidekker (9):
xcopy: Fix handling of quoted filenames.
wpcap: Fix callback signature.
wine.inf: Pass command line arguments to msiexec.
wbemprox: Read Win32_PnPEntity values from the registry.
wbemprox: Implement Win32_PnPEntity.Service.
wbemprox/tests: Fix typo.
wbemprox: Fix allocation size.
ntdll: Stub NtQuerySystemInformation(SystemLeapSecondInformation).
winhttp: Accept server response without status text.
Herman Semenov (1):
msvcrt: Add missing TRACE_ON check.
Jacek Caban (1):
wdscore: Don't export C++ symbols.
Jactry Zeng (7):
include: Don't import .idl when DO_NO_IMPORTS is defined.
wintypes/tests: Add interface tests.
wintypes: Reimplement Windows.Foundation.Metadata.{ApiInformation,PropertyValue} separately.
wintypes: Stub of Windows.Storage.Streams.DataWriter runtimeclass.
wintypes: Return S_OK from data_writer_activation_factory_ActivateInstance().
wintypes: Stub of Windows.Storage.Streams.RandomAccessStreamReference runtimeclass.
wintypes: Stub of IRandomAccessStreamReferenceStatics interface.
Jeff Smith (2):
windowscodecs: Make values returned from CanConvert consistent.
windowscodecs: Simplify png_decoder_get_metadata_blocks using realloc.
Jinoh Kang (3):
ntoskrnl.exe: Fix IRQL mismatch between cancel spin lock acquire and release.
kernel32/tests: Use win_skip() for missing PrefetchVirtualMemory API.
ntdll: Fix syscall_cfa offset in user_mode_abort_thread for ARM64.
Makarenko Oleg (2):
dinput/tests: Add more tests for force feedback.
dinput: Clamp FFB effect report value to the field range.
Marc-Aurel Zent (1):
server: Use setpriority to update thread niceness when safe.
Mohamad Al-Jaf (10):
windows.networking.hostname: Guard against WindowsDuplicateString() failure.
windows.ui: Stub IUISettings3::add_ColorValuesChanged().
windows.ui: Stub IUISettings3::remove_ColorValuesChanged().
windows.ui.xaml: Add stub dll.
windows.ui.xaml: Add IColorHelperStatics stub interface.
windows.ui.xaml/tests: Add IColorHelperStatics::FromArgb() tests.
windows.ui.xaml: Implement IColorHelperStatics::FromArgb().
include: Add d3d9on12.idl file.
d3d9: Implement Direct3DCreate9On12().
d3d9/tests: Add Direct3DCreate9On12() tests.
Nikolay Sivov (43):
oleaut32/tests: Use correct constants for IStream::Seek().
windowscodecs/tests: Use correct constants for IStream::Seek().
windowscodecs/metadata: Use correct constants for IStream::Seek().
windowscodecs/ddsformat: Use correct constants for IStream::Seek().
d2d1: Use correct constants for IStream::Seek().
dmloader: Use correct constants for IStream::Seek().
kernel32/tests: Use correct constants for SetFilePointer().
wintrust: Use correct constants for SetFilePointer().
storage: Use correct constants for SetFilePointer().
krnl386: Use correct constants for SetFilePointer().
shell32: Use correct constants for SetFilePointer().
dmloader: Use correct constants for SetFilePointer().
include: Update with newer Direct2D types.
include: Update with newer DirectWrite types.
propsys/tests: Add some tests for PropVariantChangeType(VT_UI4).
propsys: Implement PropVariantToStringAlloc(VT_UI2).
propsys: Implement PropVariantToStringAlloc(VT_I4).
propsys: Implement PropVariantToStringAlloc(VT_I2).
propsys: Implement PropVariantToStringAlloc(VT_I1).
propsys: Implement PropVariantToStringAlloc(VT_UI1).
propsys: Implement PropVariantToStringAlloc(VT_UI4).
propsys: Implement PropVariantToStringAlloc(VT_I8).
propsys: Implement PropVariantToStringAlloc(VT_UI8).
propsys: Remove FIXME() from PropVariantChangeType().
windowscodecs/metadatahandler: Implement GetPersistOptions().
windowscodecs/metadatahandler: Implement GetStream().
windowscodecs/metadata: Add registration information for the Gps reader.
windowscodecs/metadata: Add registration information for the Exif reader.
windowscodecs/metadata: Add initial implementation of the App1 reader.
po: Update some Russian strings.
windowscodecs: Move component info registry key cleanup to a common failure path.
windowscodecs: Move an hkey handle to the component info base structure.
windowscodecs: Add a stub for IWICMetadataWriterInfo.
windowscodecs/metadata: Add registration information for the "Unknown" writer.
windowscodecs/metadata: Add a stub for WICUnknownMetadataWriter.
windowscodecs/metadata: Add a stub for WICGpsMetadataWriter.
windowscodecs/metadata: Add a stub for WICExifMetadataWriter.
windowscodecs/metadata: Add a stub for WICIfdMetadataWriter.
windowscodecs: Fix a typo in metadata readers registration helper.
windowscodecs: Remove redundant guid-to-string conversion when writing readers registration entries.
winhttp: Check for the end of the text when stripping trailing newlines from headers (ASan).
gdiplus/tests: Extend a GdipGetPathGradientBlend() test with excessive output buffer size.
gdiplus: Use actual blend count for output copies in GdipGetPathGradientBlend() (ASan).
Paul Gofman (37):
crypt32: Factor out CRYPT_RegDeleteFromReg().
crypt32: Factor out CRYPT_SerializeContextToReg().
crypt32: Don't output the whole chains from check_and_store_certs().
crypt32: Do not use temporary store for updating root certificates.
crypt32: Do not delete root certs which were not imported from host in sync_trusted_roots_from_known_locations().
crypt32/tests: Add more tests for VerifyCertChainPolicy().
crypt32: Fix some error codes in verify_ssl_policy().
crypt32: Check CERT_TRUST_REVOCATION_STATUS_UNKNOWN instead of CERT_TRUST_IS_OFFLINE_REVOCATION in verify_ssl_policy().
crypt32: Favour CERT_CHAIN_POLICY_IGNORE_END_REV_UNKNOWN_FLAG in verify_ssl_policy().
crypt32: Only mind end certificate when checking revocation status in verify_ssl_policy().
crypt32: Favour CERT_CHAIN_POLICY_IGNORE_WRONG_USAGE_FLAG in verify_ssl_policy().
crypt32: Use correct tag for OCSP basic response extensions.
crypt32: Use correct tag for OCSP single response extensions.
cryptnet: Retry OCSP request with POST if GET failed.
cryptnet: Do not perform OCSP requests with CERT_VERIFY_CACHE_ONLY_BASED_REVOCATION flag.
ntdll: Add NtConvertBetweenAuxiliaryCounterAndPerformanceCounter() function.
kernelbase: Add ConvertAuxiliaryCounterToPerformanceCounter() / ConvertPerformanceCounterToAuxiliaryCounter().
wine.inf: Add Explorer\FileExts registry key.
win32u: Generate mouse events in the server when releasing capture.
server: Don't send WM_MOUSEMOVE for zero movement in queue_mouse_message().
crypt32: Release cert context in CertDeleteCertificateFromStore().
crypt32: Factor out memstore_free_context() function.
crypt32: Don't try to release zero-refcount context in MemStore_addContext().
crypt32: Release existing cert context in add_cert_to_store().
crypt32: Only remove cert from mem store list when deleting it.
crypt32/tests: Add a test for deleting and adding certs during enumeration.
crypt32: Don't assert in Context_Release() on invalid refcount.
win32u: Nullify surface hwnd when detaching Vulkan surface.
win32u: Check for NULL hwnd before calling vulkan_surface_presented() driver callback.
win32u: Don't invalidate existing Vulkan surface when a new one is created for window.
winex11: Attach currently active Vulkan onscreen surface in vulkan_surface_update_offscreen().
crypt32/tests: Avoid use after free in testEmptyStore().
win32u: Implement NtUserGetCurrentInputMessageSource().
winex11: Update window shape before putting surface image.
winex11.drv: Pass visual to is_wxrformat_compatible_with_visual.
winex11.drv: Choose alpha-enabled xrender format for argb drawables.
ntdll: Zero terminate return string for NtQueryInformationProcess( ProcessImageFileName[Win32] ).
Piotr Caban (10):
propsys: Add PropVariantGetStringElem implementation.
ole32: Support all PROPVARIANT vector types in propertystorage_get_elemsize.
ole32: Update read offset in propertystorage_read_scalar helper.
ole32: Pass MemoryAllocator class to PropertyStorage_ReadProperty.
ole32: Support more vector datatypes when reading property storage.
ole32: Add support for reading VT_VECTOR|VT_VARIANT property.
ole32: Add support for reading VT_R4 property.
ole32: Fix IPropertyStorage::ReadMultiple return value when some properties are missing.
ole32: Set property storage clsid on creation.
msvcr120: Remove MSVCR120_ prefix from creal().
Piotr Morgwai Kotarbinski (2):
wined3d: Add Nvidia RTX30xx series desktop models data.
wined3d: Add Nvidia RTX40xx series desktop models data.
Rémi Bernon (5):
winex11: Allow Withdrawn requests to override Iconic <-> Normal transitions.
winex11.drv: Use get_win_data directly in X11DRV_GetDC.
server: Introduce new set_thread_priority helper.
ntdll: Set RLIMIT_NICE to its hard limit.
server: Check wineserver privileges on init with -20 niceness.
Sebastian Scheibner (2):
wineboot: Add dummy entry for SystemBiosDate.
explorerframe: Return S_OK in more ITaskbarList3 functions.
Shaun Ren (6):
sapi: Adding missing interfaces for SpStream.
sapi: Implement ISpStream::Set/GetBaseStream.
sapi: Implement ISpStream::Close.
sapi: Implement ISpStream::GetFormat.
sapi: Implement IStream methods for SpStream.
sapi: Remove some unnecessary traces.
Stefan Dösinger (6):
wined3d: Support WINED3DFMT_B5G5R5A1_UNORM in the Vulkan backend.
wined3d: Use VK_FORMAT_R4G4B4A4_UNORM_PACK16 for WINED3DFMT_B4G4R4A4_UNORM.
gdi32: Windows adds an extra 4 bytes to EMREXTCREATEPEN.
gdi32: Set EMREXTCREATEPEN offBmi and offBits.
gdi32: EMREXTCREATEPEN contains a 32 bit EXTLOGPEN.
gdi32/tests: Add an EMREXTCREATEPEN test.
Stéphane Bacri (4):
msvcr120: Fix _Cbuild signature.
msvcr120: Add cimag() implementation.
msvcr120: Add _FCbuild() implementation.
msvcr120: Add crealf() and cimagf() implementation.
Tim Clem (1):
imm32: Always validate the IME UI window when painting.
Vibhav Pant (6):
bluetoothapis/tests: Add tests for BluetoothGetRadioInfo.
bluetoothapis: Implement BluetoothGetRadioInfo.
bluetoothapis: Add stubs for BluetoothIsConnectable, BluetoothIsDiscoverable.
bluetoothapis/tests: Add tests for BluetoothIsConnectable, BluetoothIsDiscoverable.
bluetoothapis: Implement BluetoothIsConnectable.
bluetoothapis: Implement BluetoothIsDiscoverable.
William Horvath (2):
ntdll/tests: Add tests for NtDelayExecution and Sleep(Ex).
ntdll: Fix the return value of NtDelayExecution.
Yuxuan Shui (2):
dmime: Handle IStream EOF correctly in MIDI parser.
dmime: Connect default collection to MIDI bandtrack.
Zhiyi Zhang (32):
d2d1/tests: Add ID2D1Device2_GetDxgiDevice() tests.
d2d1: Remove an unnecessary cast in d2d_device_context_init().
d2d1: Implement d2d_device_GetDxgiDevice().
include: Add splay link tree helpers.
ntdll: Implement RtlSubtreePredecessor().
ntdll/tests: Add RtlSubtreePredecessor() tests.
ntdll: Implement RtlSubtreeSuccessor().
ntdll/tests: Add RtlSubtreeSuccessor() tests.
ntdll: Implement RtlRealPredecessor().
ntdll/tests: Add RtlRealPredecessor() tests.
ntdll: Implement RtlRealSuccessor().
ntdll/tests: Add RtlRealSuccessor() tests.
win32u: Allocate a separate user buffer when packing a large WM_COPYDATA message for user32.
user32/tests: Add tests for WM_COPYDATA.
ntdll: Implement RtlSplay().
ntdll/tests: Add RtlSplay() tests.
ntdll: Implement RtlDeleteNoSplay().
ntdll/tests: Add RtlDeleteNoSplay() tests.
ntdll: Implement RtlDelete().
ntdll/tests: Add RtlDelete() tests.
light.msstyles: Use light blue as hot tracking color instead of grey.
include: Fix PRTL_GENERIC_ALLOCATE_ROUTINE prototype.
ntdll/tests: Add RtlInitializeGenericTable() tests.
ntdll/tests: Add RtlNumberGenericTableElements() tests.
ntdll: Implement RtlIsGenericTableEmpty().
ntdll/tests: Add RtlIsGenericTableEmpty() tests.
ntdll: Implement RtlInsertElementGenericTable().
ntdll: Implement RtlDeleteElementGenericTable().
ntdll/tests: Add RtlInsertElementGenericTable() tests.
ntdll/tests: Add RtlDeleteElementGenericTable() tests.
ntdll: Implement RtlLookupElementGenericTable().
ntdll/tests: Add RtlLookupElementGenericTable() tests.
Zsolt Vadasz (1):
ntdll: Add a character map name for Shift JIS.
```
1
0
The Wine team is proud to announce that the stable release Wine 10.0
is now available.
This release represents a year of development effort and over 6,000
individual changes. It contains a large number of improvements that
are listed below. The main highlights are the new ARM64EC
architecture and the high-DPI scaling support.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0/AUTHORS
## What's new in Wine 10.0
### ARM64
- The ARM64EC architecture is fully supported, with feature parity with the
ARM64 support.
- Hybrid ARM64X modules are fully supported. This allows mixing ARM64EC and
plain ARM64 code into a single binary. All of Wine can be built as ARM64X
by passing the `--enable-archs=arm64ec,aarch64` option to configure. This
still requires an experimental LLVM toolchain, but it is expected that the
upcoming LLVM 20 release will be able to build ARM64X Wine out of the box.
- The 64-bit x86 emulation interface is implemented. This takes advantage of
the ARM64EC support to run all of the Wine code as native, with only the
application's x86-64 code requiring emulation.
No emulation library is provided with Wine at this point, but an external
library that exports the emulation interface can be used, by specifying
its name in the `HKLM\Software\Microsoft\Wow64\amd64` registry key. The
[FEX emulator][4] implements this interface when built as ARM64EC.
- It should be noted that ARM64 support requires the system page size to be
4K, since that is what the Windows ABI specifies. Running on kernels with
16K or 64K pages is not supported at this point.
[4]: https://fex-emu.com
### Graphics
- High-DPI support is implemented more accurately, and non-DPI aware windows
are scaled automatically, instead of exposing high-DPI sizes to
applications that don't expect it.
- Compatibility flags are implemented to override high-DPI support, either
per-application or globally in the prefix.
- Vulkan child window rendering is supported with the X11 backend, for
applications that need 3D rendering on child windows. This was supported
with OpenGL already, and the Vulkan support is now on par.
- The Vulkan driver supports up to version 1.4.303 of the Vulkan spec. It
also supports the Vulkan Video extensions.
- Font linking is supported in GdiPlus.
### Desktop integration
- A new opt-in modesetting emulation mechanism is available. It is very
experimental still, but can be used to force display mode changes to be
fully emulated, instead of actually changing the display settings.
The windows are being padded and scaled if necessary to fit in the
physical display, as if the monitor resolution were changed, but no actual
modesetting is requested, improving user experience.
- A new Desktop Control Panel applet `desk.cpl` is provided, to inspect and
modify the display configuration. It can be used as well to change the
virtual desktop resolution, or to control the new emulated display
settings.
- Display settings are restored to the default if a process crashes without
restoring them properly.
- System tray icons can be completely disabled by setting `NoTrayItemsDisplay=1`
in the `HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
key.
- Shell launchers can be disabled in desktop mode by setting `NoDesktop=1`
in the `HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
key.
### Direct3D
- The GL renderer now requires GLSL 1.20, `EXT_framebuffer_object`, and
`ARB_texture_non_power_of_two`. The legacy ARB shader backend is no longer
available, and the `OffscreenRenderingMode` setting has been removed.
- Shader stencil export is implemented for the GL and Vulkan renderers.
- A HLSL-based fixed function pipeline for Direct3D 9 and earlier is
available, providing support for fixed function emulation for the Vulkan
renderer. It can also be used for the GL renderer, by setting the D3D
setting `ffp_hlsl` to a nonzero value using the registry or the
`WINE_D3D_CONFIG` environment variable.
- The Vulkan renderer uses several dynamic state extensions, if available,
with the goal of reducing stuttering in games.
- An alternative GLSL shader backend using vkd3d-shader is now available,
and can be selected by setting the D3D setting `shader_backend` to
`glsl-vkd3d`. Current vkd3d-shader GLSL support is incomplete relative to
the built-in GLSL shader backend, but is being actively developed.
### Direct3D helper libraries
- Initial support for compiling Direct3D effects is implemented using
vkd3d-shader.
- D3DX 9 supports many more bump-map and palettized formats.
- D3DX 9 supports saving palettized surfaces to DDS files.
- D3DX 9 supports mipmap generation when loading volume texture files.
- D3DX 9 supports reading 48-bit and 64-bit PNG files.
### Wayland driver
- The Wayland graphics driver is enabled by default, but the X11 driver
still takes precedence if both are available. To force using the Wayland
driver in that case, make sure that the `DISPLAY` environment variable is
unset.
- Popup windows should be positioned correctly in most cases.
- OpenGL is supported.
- Key auto-repeat is implemented.
### Multimedia
- A new opt-in FFmpeg-based backend is introduced, as an alternative to the
GStreamer backend. It is intended to improve compatibility with Media
Foundation pipelines. It is still in experimental stage though, and more
work will be needed, especially for D3D-aware playback. It can be enabled
by setting the value `DisableGstByteStreamHandler=1` in the
`HKCU\Software\Wine\MediaFoundation` registry key.
- Media Foundation multimedia pipelines are more accurately implemented, for
the many applications that depend on the individual demuxing and decoding
components to be exposed. Topology resolution with demuxer and decoder
creation and auto-plugging is improved.
- DirectMusic supports loading MIDI files.
### Input / HID devices
- Raw HID devices with multiple top-level collections are correctly parsed,
and exposed as individual devices to Windows application.
- Touchscreen input and events are supported with the X11 backend, and basic
multi-touch support through the `WM_POINTER` messages is
implemented. Mouse window messages such as `WM_LBUTTON*`, `WM_RBUTTON*`,
and `WM_MOUSEMOVE` are also generated from the primary touch events.
- A number of USER32 internal structures are stored in shared memory, to
improve performance and reduce Wine server load by avoiding server
round-trips.
- An initial version of a Bluetooth driver is implemented, with some basic
functionality.
- The Joystick Control Panel applet `joy.cpl` enables toggling some advanced
settings.
- The Dvorak keyboard layout is properly supported.
### Internationalization
- Locale data is generated from the Unicode CLDR database version 46. The
following additional locales are supported: `kaa-UZ`, `lld-IT`, `ltg-LV`,
and `mhn-IT`.
- Unicode character tables are based on version 16.0.0 of the Unicode
Standard.
- The timezone data is based on version 2024a of the IANA timezone database.
### Internet and networking
- The JavaScript engine supports a new object binding interface, used by
MSHTML to expose its objects in a standard-compliant mode. This eliminates
the distinction between JavaScript objects and host objects within the
engine, allowing scripts greater flexibility when interacting with MSHTML
objects.
- Built-in MSHTML functions are proper JavaScript function objects, and
other properties use accessor functions where appropriate.
- MSHTML supports prototype and constructor objects for its built-in
objects.
- Function objects in legacy MSHTML mode support the `call` and `apply`
methods.
- The JavaScript garbage collector operates globally across all script
contexts within a thread, improving its accuracy.
- JavaScript ArrayBuffer and DataView objects are supported.
### RPC / COM
- RPC/COM calls are fully supported on ARM platforms, including features
such as stubless proxies and the typelib marshaler.
- All generated COM proxies use the fully-interpreted marshaling mode on all
platforms.
### C runtime
- C++ exceptions and Run-Time Type Information (RTTI) are supported on ARM
platforms.
- The ANSI functions in the C runtime support the UTF-8 codepage.
### Kernel
- Process elevation is implemented, meaning that processes run as a normal
user by default but can be elevated to administrator access when required.
- Disk labels are retrieved from DBus when possible instead of accessing the
raw device.
- Mailslots are implemented directly in the Wine server instead of using a
socketpair, to allow supporting the full Windows semantics.
- Asynchronous waits for serial port events are reimplemented. The previous
implementation was broken by the PE separation work in Wine 9.0.
- The full processor XState is supported in thread contexts, enabling
support for newer vector extensions like AVX-512.
### macOS
- When building with Xcode >= 15.3 on macOS, the preloader is no longer
needed.
- Syscall emulation for applications doing direct NT syscalls is supported
on macOS Sonoma and later.
### Builtin applications
- The input parser of the Command Prompt tool `cmd` is rewritten, which
fixes a number of long-standing issues, particularly with variable
expansion, command chaining, and FOR loops.
- The Wine Debugger `winedbg` uses the Capstone library to enable
disassembly on all supported CPU types.
- The File Comparison tool `fc` supports comparing files with default
options.
- The `findstr` application supports regular expressions and case
insensitive search.
- The `regsvr32` and `rundll32` applications can register ARM64EC modules.
- The `sort` application is implemented.
- The `where` application supports searching files with default options.
- The `wmic` application supports an interactive mode.
### Miscellaneous
- The ODBC library supports loading Windows ODBC drivers, in addition to
Unix drivers that were already supported through libodbc.so.
- Optimal Asymmetric Encryption Padding (OAEP) is supported for RSA
encryption.
- Network sessions are supported in DirectPlay.
### Development tools
- The IDL compiler generates correct format strings in interpreted stubs
mode (`/Oicf` in midl.exe) on all platforms. Interpreted mode is now the
default, the old mixed-mode stub generation can be selected with `widl
-Os`.
- The IDL compiler can generate typelibs in the old SLTG format with the
`--oldtlb` command-line option.
- The `winegcc` and `winebuild` tools can create hybrid ARM64X modules with
the `-marm64x` option.
- The `winedump` tool supports dumping minidump tables, C++ exception data,
CLR tables, and typelib resources.
### Build infrastructure
- The `makedep` tool generates a standard-format `compile_commands.json`
file that can be used with various IDEs.
- Using `.def` files as import libraries with `winegcc` is no longer
supported, all import libraries need to be in the standard `.a` format. If
necessary, it is possible to convert a `.def` library to `.a` format using
`winebuild --implib -E libfoo.def -o libfoo.a`.
- Static analysis is supported using the Clang Static Analyzer. It can be
enabled by passing the `--enable-sast` option to configure. This is used
to present Code Quality reports with the Gitlab CI.
### Bundled libraries
- The Capstone library version 5.0.3 is bundled and used for disassembly
support in the Wine Debugger, to enable disassembly of ARM64 code. This
replaces the bundled Zydis library, which has been removed.
- Vkd3d is updated to the upstream release [1.14][5].
- Faudio is updated to the upstream release 24.10.
- FluidSynth is updated to the upstream release 2.4.0.
- LDAP is updated to the upstream release 2.5.18.
- LCMS2 is updated to the upstream release 2.16.
- LibJpeg is updated to the upstream release 9f.
- LibMPG123 is updated to the upstream release 1.32.9.
- LibPng is updated to the upstream release 1.6.44.
- LibTiff is updated to the upstream release 4.7.0.
- LibXml2 is updated to the upstream release 2.12.8.
- LibXslt is updated to the upstream release 1.1.42.
- Zlib is updated to the upstream release 1.3.1.
[5]: https://gitlab.winehq.org/wine/vkd3d/-/releases/vkd3d-1.14
### External dependencies
- The FFmpeg libraries are used to implement the new Media Foundation
backend.
- A PE cross-compiler is required for 32-bit ARM builds, pure ELF builds are
no longer supported (this was already the case for 64-bit ARM).
- Libunwind is no longer used on ARM platforms since they are built as
PE. It's only used on x86-64.
1
0
The Wine development release 10.0-rc6 is now available. This is
expected to be the last release candidate before the final 10.0.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0-rc6.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0-rc6/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.0-rc6 (total 18):
- #47036 C&C Red Alert 2 Yuri's Revenge missing graphical elements
- #48501 U.S. Naval Observatory MICA2 software has annoying error message upon closing
- #50398 Microsoft Office XP 2002 installer shows "Error 25504. Failed to set Feature xyz to the install state of Feature xyz for mode 2." message boxes since Wine 2.12
- #53567 The Medium crashes when starting new game
- #53891 user32:msg - test_swp_paint_regions() fails on Windows 7
- #55263 Boulder Remake doesn't recognise arrow keys (other keys work)
- #56452 Wingdings font seems not to be found; regression test done
- #57019 wineboot crashes in create_bios_processor_values() on 2013 Mac Pro
- #57076 Harmony Assistant 9.9.8d (64 bit) reports missing stoccata.ttf font on startup
- #57077 Micrografx Window Draw 4.0a crashes when backspacing while editing freeform text object
- #57179 File uploads in Hotline Client 1.2.3 hang after about 200 KB
- #57312 Rebuild 3: Broken texture filtering
- #57579 Deformed symbols in LTSpice
- #57610 No windows are shown when using a dual monitor setup
- #57632 fallout 3 radio broke with gstreamer 1.24.10 (9.22 silent, 10rc4 stalls)
- #57652 Some windows have cut bottom and right sides
- #57657 Null pointer dereference in traces
- #57661 Port Royale 2: black screen during intro videos
### Changes since 10.0-rc5:
```
Alexandre Julliard (3):
ieframe/tests: Fix more property change errors for the new test.winehq.org server.
wshom.ocx/tests: Mark a failing tests as todo.
winebth.sys: Don't print an error when Bluetooth is not available.
Bernhard Übelacker (2):
gdiplus/tests: Fix use-after-free of a graphics object (ASan).
kernel32/tests: Avoid stack buffer overflow in get_com_dir_size (ASan).
Elizabeth Figura (2):
msi/tests: Test msidbFeatureAttributesDisallowAdvertise.
msi: Set features to absent if advertising is disallowed.
Esme Povirk (1):
gdiplus/tests: Trace locked bitmap data on failure.
Rémi Bernon (5):
gdi32: Avoid crashing when tracing NULL xform.
configure: Use per-architecture cross flags if they are provided.
winex11: Adjust requested visible rect relative to the previous position.
winex11: Always blit offscreen over any other onscreen clients.
mf/topology_loader: Avoid modifying downstream media type when attempting to connect.
Santino Mazza (1):
gdiplus: Check for MapFont result in generate_font_link_info.
Zhiyi Zhang (1):
winex11.drv: Fix display name in X11DRV_UpdateDisplayDevices().
```
1
0
The Wine development release 10.0-rc5 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0-rc5.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0-rc5/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.0-rc5 (total 31):
- #38975 Alpha Protocol launcher: menu options hidden behind grey boxes
- #48737 Microsoft Golf 2.0 demo crashes on startup
- #52542 NVIDIA GeForceNow Installer fails due to rundll32 problems
- #53352 Redefinition of typedef ‘D2D1_PROPERTY_BINDING’ breaks compilation with gcc 4.3.4
- #54717 dbghelp:dbghelp - SymRefreshModuleList() sometimes returns STATUS_INFO_LENGTH_MISMATCH on Windows
- #56205 The Egyptian Prophecy: The Fate of Ramses: text displayed without transparency
- #56474 Crowns and Pawns: Graphic bugs
- #56523 The Dark Pictures Anthology: Man of Medan hangs/crashes after company logo
- #56605 V-Rally 4 crashes right before starting a race
- #56627 Direct3D applications run out of memory on Windows XP
- #56770 Geneforge 4: stuttering in character and mouse movement
- #56886 Wincatalog can't scan folders
- #57207 Fallout 3: Regression spams console with errors
- #57274 Regression causing Obduction to hang and exit
- #57306 Multiple programs crash due to memory corruption since 5924ab4c515 (Nikon NX studio, Profit, Falcosoft's Soundfont Midi Player, IBExpert)
- #57333 Civilization IV fails to start (XML load Error)
- #57409 Interactivity The Interactive Experience from itch.io deadlocks (regression)
- #57476 Methods arguments attributes are missing from dwrite.idl
- #57522 Voltage sources have the wrong shapes in Micro-Cap 12.2.0.5 on Wine 9.21 and later
- #57549 Fighter Factory 3: Window Graphics don't display correctly after prolonged use.
- #57550 Geneforge 4 complains about resolution and crashes when run in virtual desktop
- #57551 10-rc2 regression: MS Office 2007/2010: some dialogs are only ~1/4 visible
- #57558 joy.cpl xinput joysticks circles are cropped by 1px on the bottom
- #57566 Silent crash for application attempting to use RSA
- #57582 Eschalon Book I: launcher menu flickering
- #57583 Truncated popup
- #57584 8-bit color mode is broken in Wine 9.11 and later
- #57599 HyperBall Shareware: black screen (regression)
- #57601 Touchscreen input broken for x11drv/mouse.c
- #57636 Black screen in menu until button click in Age of Empires
- #57649 call .bat doesn't propagate errorlevel
### Changes since 10.0-rc4:
```
Alexandre Julliard (7):
shell32: Look for the file name without extension also for the path search case.
dnsapi/tests: Update DNS names for the new test.winehq.org server.
wininet/tests: Update certificate for the new test.winehq.org server.
secur32/tests: Update expected results for the new test.winehq.org server.
winhttp/tests: Allow some more notifications for the new test.winehq.org server.
ieframe/tests: Allow more property changes with the new test.winehq.org server.
win32u: Fix stack corruption in NtUserScrollDC.
Anton Baskanov (2):
ddraw/tests: Test that releasing a primary surface invalidates the window.
ddraw: Invalidate the window when the primary surface is released.
Bernhard Übelacker (2):
d3dx9_36/tests: Fix test data buffer underflow (ASan).
gdi32: Explicitly check for negative text length in GetTextExtentExPointW().
Billy Laws (1):
ntdll: Emulate mrs xN, CurrentEL instructions.
Brendan McGrath (1):
mfmediaengine: Fix maths in scaling check.
Brendan Shanks (2):
wineboot: Correctly handle SMBIOS tables older than v3.0.
ntdll: On macOS, only use actual SMBIOS tables if they are v2.5 or higher.
Connor McAdams (1):
quartz/dsoundrender: Restart the render thread when clearing EOS in dsound_render_sink_end_flush().
Conor McCarthy (1):
mf: Do not clean up a session op if it was submitted to a work queue.
Dmitry Timoshkov (4):
rsaenh/tests: Add some tests for RC4 salt.
rsaenh/tests: Add a test for RC4 session key.
rsaenh/tests: Make RC4 tests more distinct.
rsaenh: CPGenKey() shouldn't generate RC4 key salt if not requested.
Elizabeth Figura (13):
Revert "win32u: Forward to Rectangle() if the ellipse width or height is zero.".
Revert "win32u: Do not convert back to integer before finding intersections.".
Revert "win32u: Correctly handle transforms which flip in get_arc_points().".
Revert "win32u: Normalize inverted rectangles in dibdrv_RoundRect().".
Revert "win32u: Always select the point that's closer to the ellipse.".
Revert "win32u: Allocate the whole max_points for the top_points array.".
Revert "win32u: Implement drawing transformed round rectangles.".
Revert "win32u: Implement drawing transformed arcs.".
gdi32: Trace more functions.
gdi32/tests: Add some arc tests.
ddraw/tests: Test preservation of the X channel when clearing.
wined3d: Separate a cpu_blitter_clear_texture() helper.
ddraw: Clear sysmem textures on the CPU.
Eric Pouech (4):
cmd/tests: Add more tests.
cmd: Skip trailing white spaces in FOR's option.
cmd: Fix some CALL errorlevel propagation.
cmd: Don't return syntax error code on empty lines.
Esme Povirk (1):
gdiplus: Use font linking only for missing glyphs.
Francis De Brabandere (3):
vbscript/tests: Refactor Mid() error tests.
vbscript: Fix Mid() empty and null handling.
vbscript: Remove trailing semicolon in parser.
Gabriel Ivăncescu (1):
winex11: Respect swp_flags when syncing window position.
Jactry Zeng (1):
po: Update Simplified Chinese translation.
Lauri Kenttä (2):
documentation: Update Linux and Mac OS X versions.
po: Update Finnish translation.
Nikolay Sivov (1):
include: Fix method arguments annotations in dwrite.idl.
Paul Gofman (5):
ddraw/tests: Test state application on multiple devices.
ddraw: Factor out d3d_device_apply_state().
ddraw: Correctly apply state when multiple devices are used.
winex11: Flush display when presenting offcreen drawable from wglFlush / wglFinish.
winex11: Call glFinish() when presenting offscreen drawable from wglFlush.
Rémi Bernon (5):
winex11: Check window region instead of forcing offscreen on parent.
winebus: Ignore unsupported hidraw touchscreen devices.
winex11: Map mouse/touch event coordinates even without a hwnd.
win32u: Initialize dibdrv info from the surface color bitmap.
winex11: Always fill the window surface color info.
Santino Mazza (1):
mmdevapi/tests: Fix audio clock adjustment tests failing in testbot.
William Horvath (1):
winex11: Use the win32 client rect in needs_client_window_clipping.
```
1
0
The Wine development release 10.0-rc4 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0-rc4.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0-rc4/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.0-rc4 (total 13):
- #37372 Unexpected order of results in wildcard expansion
- #48877 Melodyne crashes when using the Pitch tool
- #51656 Gaea Installer crashes in riched when pressing enter
- #52447 64-bit .NET framework 2.0 installer hangs while generating/installing native images of 'System.Windows.Forms' assembly into GAC
- #53405 Into The Breach freezes when enabling fullscreen
- #54342 ws2_32:sock - test_WSARecv() sometimes fails with "got apc_count 1." on Windows
- #56531 Final Fantasy XI Online: Some textures are transparent, malformed, or misplaced.
- #56533 Final Fantasy XI Online: Incorrect/corrupt textures shown on models.
- #56885 WinCatalog has a crash at startup
- #57248 Rhinoceros 8.11 installer crashes on start
- #57568 Arcanum (and many other titles) crashes on start
- #57577 Minimised applications are restored with -4 vertical pixels.
- #57587 10.0-rc1 regression (dsoundrender): no audio or hangs in some videos
### Changes since 10.0-rc3:
```
Alexandre Julliard (3):
Update copyright info for 2025.
ntdll: Set the processor architecture variable from the current arch.
xml: Disable the non-determinist schema check.
André Zwing (6):
bluetoothapis/tests: Don't test functions directly when reporting GetLastError().
kernel32/tests: Don't test functions directly when reporting GetLastError().
iphlpapi/tests: Don't test functions directly when reporting GetLastError().
msvcr120/tests: Don't test function directly when reporting GetLastError().
msvcp140/tests: Don't test function directly when reporting GetLastError().
msvcp120/tests: Don't test function directly when reporting GetLastError().
Bernhard Übelacker (7):
mfplat/tests: Fix copy-paste release calls.
dwrite: Avoid stack-buffer-overflow in arabic_setup_masks.
comctl32/tests: Fix test array size (ASan).
comctl32/tests: Use sufficient user data buffer in the Tab tests (ASan).
comctl32/tests: Mark a test as broken on Windows.
dwrite: Fix off-by-one clustermap indexing (ASan).
uiautomationcore: Fix a double-free of advisers array (ASan).
Elizabeth Figura (1):
qasf/dmowrapper: Acquire new output samples for each ProcessOutput() call.
Eric Pouech (1):
kernelbase: Don't free pathname if query failed.
Etaash Mathamsetty (1):
nsiproxy: Set rcv/xmit speed to 1000000 on linux.
Floris Renaud (1):
po: Update Dutch translation.
Jinoh Kang (1):
user32/tests: Force window to be visible in subtest_swp_paint_regions.
Piotr Caban (2):
msvcr120/tests: Skip _fsopen tests if file can't be created.
msvcp120/tests: Skip _Fiopen tests if file can't be created.
Rémi Bernon (6):
winex11: Improve GetWindowStateUpdates traces.
win32u: Check window state updates again after applying new state.
win32u: Don't overwrite dummy vulkan window.
win32u: Always update the surface regions in apply_window_pos.
server: Remove now unnecessary needs_update member.
winex11: Don't re-create the GL drawable if pixel format didn't change.
Zhiyi Zhang (2):
d2d1/tests: Remove a duplicate test.
dxgi: Support more feature levels in debug_feature_level().
```
1
0
The Wine development release 10.0-rc3 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0-rc3.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0-rc3/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.0-rc3 (total 15):
- #11674 Dual-core unsupported in WoW and SC2
- #49473 Chaos Legion videos are played upside down
- #52738 No keyboard input in "STREET CHAVES - O LUTADOR DA VILA"
- #56319 Parallel Port Tester won't start (fails to locate driver "System32\Drivers\inpoutx64.sys", but changing to absolute path works)
- #56348 Bricks: moving a brick causes it to rapidly alternate positions
- #56471 starting of native program with "start /unix ..." is broken
- #56632 Explorer cannot run any files in Windows ME compatibility mode (or below)
- #56714 Startopia is stuck on a black screen on launch
- #57227 IL-2 1946 crash at startup
- #57286 Dark Age of Camelot - camelot.exe required igd10umd32.dll but the .dll file is not found.
- #57319 Painting in a proprietary application is broken with vulkan renderer
- #57515 desktop mode did not show taskbar anymore
- #57523 PokerTracker 4: cannot launch anymore
- #57525 Systray icons cannot be interacted with
- #57541 CMake doesn't find toolchain
### Changes since 10.0-rc2:
```
Akihiro Sagawa (1):
po: Update Japanese translation.
Alanas Tebuev (1):
comctl32/tests: Initialize hwnd to NULL before calling rebuild_toolbar().
Alexandre Julliard (6):
ntdll: Align heap virtual allocations to a multiple of the page size.
shell32: Don't call AW functions internally.
shell32: Return the file itself without extension if it exists.
propsys/tests: Fix a test that fails on some Windows versions.
win32u/tests: Mark the foreground thread test as flaky.
advapi32/tests: Use the correct key handle in the notify thread.
Alistair Leslie-Hughes (1):
msxml3: Correct looping of Document Element node map.
Bernhard Übelacker (4):
server: Avoid crash when handle table is allocated but not yet filled.
crypt32: Avoid stack-use-after-scope in CSignedEncodeMsg_GetParam (ASan).
d3dx9_36/tests: Fix logging of expected bytes in check_vertex_components. (ASan).
xmllite/tests: Avoid buffer overflow by using LONG_PTR (ASan).
Elizabeth Figura (2):
wined3d: Add nop state entries for states now invalidated on the client side.
Revert "wined3d: Use bindless textures for GLSL shaders if possible.".
Eric Pouech (3):
cmd/tests: Add more tests about variable expansion.
cmd: Fix regression in variable search in expansion.
winedump: Fix variable overwrite when dumping exception.
Esme Povirk (1):
gdiplus: GdipPathAddRectangle should close the path.
Gerald Pfeifer (1):
capstone: Avoid GCC being treated as old VisualStudio.
Jacek Caban (1):
mshtml: Ignore Gecko events on detached nodes.
Louis Lenders (1):
kernelbase: Don't try to print the path in the FIXME in GetTempPath2.
Nikolay Sivov (9):
windowscodecs/tests: Added some tests for Exif and Gps IFDs embedded in App1 blob.
windowscodecs/tests: Add some tests for CreateMetadataWriterFromReader().
windowscodecs/tests: Add some tests for CreateMetadataWriter().
windowscodecs/tests: Add some tests for metadata stream objects handling.
windowscodecs/tests: Add loading tests for the writers.
windowscodecs/tests: Check persist options after Load().
windowscodecs: Fix a typo in interface name.
include: Add methods arguments annotations for DirectWrite types.
dwrite/tests: Allocate test inline objects dynamically.
Owen Rudge (2):
odbc32: Avoid crashing if str is null in debugstr_sqlstr.
odbc32: Add null pointer checks to update_result_lengths helpers.
Paul Gofman (2):
winex11: Use NtUserReleaseDC() with hdc.
server: Cleanup all the global hooks owned by terminating thread.
Rémi Bernon (5):
winex11: Sync gl drawable outside of the win_data mutex.
winex11: Use DCX_USESTYLE when checking DC clipping regions.
winex11: Move GL/VK offscreen if the clipping region is NULLREGION.
dinput: Copy the device format if the user format is a subset of it.
dinput: Check that the device format data fits in the user format data.
```
1
0
The Wine development release 10.0-rc2 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at <https://dl.winehq.org/wine/source/10.0/wine-10.0-rc2.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-10.0-rc2/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 10.0-rc2 (total 21):
- #28861 Final Fantasy XI hangs after character selection
- #47640 No Man's Sky (Beyond) does not start anymore: Unable to initialize Vulkan (vkEnumerateInstanceExtensionProperties failed)
- #51998 Unable to start CloneCD
- #53453 Command & Conquer 3: Tiberium Wars - fails to start (splash screen not even shown)
- #54437 ntoskrnl.exe:ntoskrnl breaks test_rawinput() [(RIM|WM)_INPUT] in user32:input for non-English locales on Windows 7
- #55583 d3d8:device - test_wndproc() often is missing a WM_WINDOWPOSCHANGING in Wine
- #56056 Exiting IrfanView full screen mode creates a redundant task bar "Untitled window" item which is not clickable
- #56325 Prefix path string in wineboot dialog is cut off
- #56940 vs_community.exe halts:"The application cannot find one of its required files, possibly because it was unable to create it in the folder."
- #57216 Mouse wheel input in IL-2 1946 is not applied consistently to UI elements and throttle
- #57285 Foxit Reader - maximized view don't work properly
- #57384 The shareware installer for Daytona (16-bit) hangs at the end of installing.
- #57418 PlayOnline Viewer throws an application error at launch.
- #57442 Several applications: abnormal input delay with Wine
- #57481 Prey (2016) X11 fullscreen fails in 9.22
- #57503 World in conflict has a frozen screen - updating only when alt-tabbing out and in
- #57504 Possible regression with Unity3D games: Framedrops when moving cursor.
- #57506 Wine doesn't show any window
- #57524 Commit c9592bae7f475c1b208de0a72ed29e94e3017094 breaks VKB Gladiator HIDRAW support
- #57527 Drop-down list appears behind the main window
- #57530 Regression: Tiny extra form displays in Delphi programs
### Changes since 10.0-rc1:
```
Alexandre Julliard (7):
user32: Fixup forwarded functions on 32-bit.
ntoskrnl: Support relative driver paths.
ntoskrnl: Fix off-by-one error in buffer size.
wineboot: Always wrap the wait dialog text.
wineboot: Resize the wait dialog to accommodate the text size.
wineboot: Scale the wait dialog icon with the dialog size.
winetest: Filter out color escapes for junit output.
Eric Pouech (2):
dbghelp: Fix error handling in PDB/FPO unwinder.
dbghelp: Lower vector allocation for local variables.
Esme Povirk (1):
mscoree: Use correct variable for codebase path.
Gabriel Ivăncescu (1):
mshtml: Remove unused MutationObserver DISPID and related hook.
Gerald Pfeifer (1):
webservices: Rename a struct member from bool to boolean.
Jacek Caban (1):
configure: Define _load_config_used symbol in the cross-compiler test program.
Louis Lenders (1):
shell32: Remove trailing spaces in SHELL_execute.
Marcus Meissner (1):
ucrtbase/tests: Use correct size to GetEnvironmentVariableW.
Nikolay Sivov (8):
windowscodecs/tests: Use test context in a few metadata tests.
windowscodecs/tests: Add some tests for GetContainerFormats().
windowscodecs/tests: Use a helper instead of a macro.
windowscodecs/tests: Remove endianess compile time checks from the tests.
windowscodecs/tests: Move IFD data tests to a helper.
windowscodecs/tests: Run data test on the Exif reader.
windowscodecs/tests: Add some tests for the Gps reader.
windowscodecs/tests: Add some tests for the App1 reader.
Piotr Caban (1):
msvcrt: Don't leak find handle or error in _findfirst().
Rémi Bernon (17):
win32u: Skip updating the cache on driver load if we're already updating it.
win32u: Release the Win16 mutex when yielding in peek_message.
win32u: Copy the shape from the old surface when surface is recreated.
server: Force surface region update when window region is modified.
win32u: Extend display_lock CS around winstation check.
server: Add a winstation monitor update serial counter.
win32u: Use the winstation monitor update serial to detect updates.
winex11: Request window config when it needs to be raised.
winebus: Wait until the device is started before processing reports.
dmloader: Remove redundant flag.
winex11: Fixup window config size back to 0x0 if we've requested 1x1.
winex11: Always check if the GL drawable offscreen state needs to be changed.
winex11: Skip offscreening if the children don't require clipping.
dinput: Queue the relative wheel motion as event data.
explorer: Avoid hiding the taskbar if it's enabled.
server: Allow merging WM_MOUSEMOVE across internal messages.
winex11: Fix inconsistent coordinates when reparenting host window.
Vibhav Pant (3):
winebth.sys: Fix new bluetooth events being incorrect set due to variable shadowing.
winebth.sys: Set the Information field in the IRP's STATUS_BLOCK after handling IOCTL_BTH_GET_LOCAL_INFO.
winebth.sys: Use the correct byte-ordering for setting the radio's address property.
William Horvath (2):
include: Use inline assembly on Clang MSVC mode in YieldProcessor().
win32u: Check for driver events more often.
Zhiyi Zhang (1):
win32u: Use width and height to check if the display mode is vertical.
```
1
0