Wine

  • Logos
    Logo de macOS
  • Logos
    Logo des processeur PowerPC
  • Logos
    logo intel
  • Logos
    Logo Apple Silicon
  • Logos
    Logo 64 bits
Version
10.4
Mise à jour
Formule Homebrew
brew install  --cask --no-quarantine wine-stable

Changelog

Changelog

10.4

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.
You will find documentation here.
Wine is available thanks to the work of many people.
See the file AUTHORS for the complete list.


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.

10.3

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.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.

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

10.2

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.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.

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

10.1

Notes de version

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.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.

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

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. TheFEX emulator 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.

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-sastoption 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.
  • 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.

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.

9.22

  • Support for display mode virtualization.
  • Locale data updated to Unicode CLDR 46.
  • More support for network sessions in DirectPlay.
  • Wayland driver enabled in default configuration.
  • Various bug fixes.

9.21

What's new in this release:

More support for network sessions in DirectPlay.
Header fixes for C++ compilation.
I/O completion fixes.
More formats supported in D3DX9.
Various bug fixes.


Bugs fixed in 9.21 (total 16):


#27933  Implement sort.exe command

#47776  Multiple games crash on unimplemented function D3DXOptimizeVertices (Timeshift, Call of Duty 2 modding tools, Rise of Nations: Rise of Legends 2010)

#48235  Multiple applications need 'ntdll.NtWow64QueryInformationProcess64' (IP Camera Viewer 4.x)

#48796  Saints Row 2 needs GUID_WICPixelFormat48bppRGB

#52078  MusicBee: exception when attempting to drag tabs (  (QueryInterface for the interface with IID '{83E07D0D-0C5F-4163-BF1A-60B274051E40}' gives Exception E_NOINTERFACE))

#54295  Touhou Puppet Dance Performance: Shard of Dreams Can't Locate Base Game Data After Installation

#54623  MediRoutes crashes on unimplemented function websocket.dll.WebSocketCreateClientHandle

#56219  Paint Shop Pro 9.01, printing function doesn't work

#57164  Can't start RtlpWaitForCriticalSection

#57183  9.17-devel: Drag and Drop no longer works on Ubuntu 24.04 Noble

#57275  Black screen when using full-screen mode from version 9.18

#57292  unimplemented function apphelp.dll.SdbSetPermLayerKeys

#57296  WineHQ-devel-9.19: Renders Distorted Radio Buttons on WinXP Solitaire

#57314  Metal Gear Solid V gametrainer needs wmi Win32_Process executablepath property

#57355  Window-resize won't refresh controls on mainform

#57392  AnyRail msi crashes


Changes since 9.20:

Alex Henrie (2):
     ntdll: Implement NtWow64QueryInformationProcess64.
     include: Annotate PFN_CMSG_ALLOC with __WINE_ALLOC_SIZE.

Alexandre Julliard (22):
     winetest: Remove strmake() len argument for consistency with other modules.
     winetest: Get default tag and URL from Gitlab CI variables.
     capstone: Allow callers to specify their memory allocators.
     capstone: Comment out error printfs.
     opengl32: Cache downloaded files in make_opengl.
     opencl: Cache downloaded files in make_opencl.
     winevulkan: Cache downloaded files in make_vulkan.
     include: Use __attribute__ in preference to __declspec.
     wow64: Fix handle conversion in NtWow64QueryInformationProcess64.
     wow64: Move NtWow64QueryInformationProcess64 to process.c.
     user32: Add some new entry points and ordinals.
     gdi32: Add some new entry points and ordinals.
     win32u: Add some new stub entry points.
     ntdll/tests: Skip the syscall relocation test if the file on disk is not updated.
     kernel32/tests: Search the current directory for newly-created dlls.
     netstat: Use wide character string literals.
     notepad: Use wide character string literals.
     oleview: Use wide character string literals.
     services: Use wide character string literals.
     taskmgr: Use wide character string literals.
     winefile: Use wide character string literals.
     wordpad: Use wide character string literals.

Alexey Prokhin (1):
     kernelbase: Set the proper error code in GetQueuedCompletionStatus{Ex} when the handle is closed.

Alistair Leslie-Hughes (11):
     include: Add rstscr.idl.
     include: Add rstxsc.idl.
     include: Add rstfnd.idl.
     include: Add rstidn.idl.
     include: Add DBGUID_DBSQL define.
     include: Add DB_S_ROWLIMITEXCEEDED define.
     include: Dbs.idl: Added DBVECTOR/DB_VARNUMERIC types.
     include: Move ISAXXMLFilter interface to after base ISAXXMLReader.
     dplayx: Use a single reference count for IDirectPlay interfaces.
     dplayx: Remove numIfaces variable in IDirectPlayLobby.
     dplayx: Use default DllCanUnloadNow implementation.

Anton Baskanov (31):
     dplayx: Inline logic from CreatePlayer() functions into DP_IF_CreatePlayer().
     dplayx: Allow storing group SP data.
     dpwsockx: Get player address from SP header and use it in SendEx().
     dpwsockx: Add partial SendToGroupEx() implementation.
     dplayx: Send CREATEPLAYER instead of ADDFORWARDREQUEST in CreatePlayer().
     dplayx: Queue DPSYS_CREATEPLAYERORGROUP on player creation.
     dplayx: Remove received message from the queue.
     dplayx: Set message sender and receiver IDs in Receive().
     dplayx: Make a deep copy of the message.
     dplayx: Set message data size in Receive().
     dplayx: Set flags correctly in CreatePlayer().
     dplayx: Always set the data size in GetPlayerData().
     dplayx/tests: Test that player from CREATEPLAYER is added to the session.
     dplay: Handle CREATEPLAYER and add player to the session.
     dplayx/tests: Use the correct system player ID in sendSuperEnumPlayersReply().
     dplayx/tests: Test client side of Send() separately.
     dplayx: Queue the message for local players in SendEx().
     dplayx: Remove the separate branch for DPID_ALLPLAYERS in SendEx().
     dplayx: Send the message in SendEx().
     dplayx/tests: Test client side of Receive() separately.
     dplayx: Handle game messages.
     dplayx: Check the buffer size in Receive().
     dplayx: Return DPERR_BUFFERTOOSMALL from Receive() if data is NULL.
     dplayx: Handle DPRECEIVE_TOPLAYER and DPRECEIVE_FROMPLAYER in Receive().
     dplayx: Enter the critical section in DP_IF_Receive().
     dplayx/tests: Test non-guaranteed Send().
     dpwsockx: Support non-guaranteed delivery.
     dplayx/tests: Test receiving UDP messages.
     dpwsockx: Receive UDP messages.
     dplayx/tests: Test that PINGREPLY is sent in reply to PING.
     dplayx: Handle PING and send PINGREPLY.

Aurimas Fišeras (1):
     po: Update Lithuanian translation.

Bartosz Kosiorek (2):
     gdiplus: Add GdipGetEffectParameterSize stub and fix GdipDeleteEffect.
     gdiplus/tests: Add GdipGetEffectParameterSize test.

Biswapriyo Nath (2):
     include: Add new property keys in propkey.h.
     include: Add windows.applicationmodel.datatransfer.idl.

Brendan Shanks (2):
     ntdll/tests: Add test for direct syscalls on x86_64.
     ntdll: Add SIGSYS handler to support syscall emulation on macOS Sonoma and later.

Christian Costa (1):
     d3dx9: Add semi-stub for D3DXOptimizeVertices().

Connor McAdams (10):
     d3dx9: Introduce d3dx_pixel_format_id enumeration.
     d3dx9: Use the d3dx_pixel_format_id enumeration inside of the d3dx_image structure.
     d3dx9: Use the d3dx_pixel_format_id enumeration inside of the DDS pixel format lookup structure.
     d3dx9: Use the d3dx_pixel_format_id enumeration inside of the WIC pixel format lookup structure.
     d3dx9/tests: Add more tests for handling JPG/PNG files.
     d3dx9: Report 24bpp RGB as 32bpp XRGB for JPG and PNG files.
     d3dx9: Add support for decoding 64bpp RGBA PNG files.
     d3dx9: Add support for decoding 48bpp RGB PNG files.
     d3dx9: Add support for loading surfaces from 48bpp RGB PNG files.
     d3dx9: Add support for loading volumes from 48bpp RGB PNG files.

Elizabeth Figura (7):
     win32u: Normalize inverted rectangles in dibdrv_RoundRect().
     win32u: Correctly handle transforms which flip in get_arc_points().
     win32u: Do not convert back to integer before finding intersections.
     win32u: Forward to Rectangle() if the ellipse width or height is zero.
     wmilib.sys: Add stub DLL.
     ntoskrnl: Stub PoRequestPowerIrp().
     ntdll: Do not queue completion for a synchronous file.

Eric Pouech (2):
     midiseq: Reduce race window when closing sequencer.
     kernelbase: Add undocumented EXTENDED_FLAGS to process attribute list.

Fabian Maurer (13):
     comdlg32/tests: Fix compilation for gcc 4.7.
     mf/tests: Fix compilation for gcc 4.7.
     wbemprox/tests: Add test for Win32_Process querying "ExecutablePath" propery.
     wbemprox: Add property "ExecutablePath" to Win32_Process.
     userenv/tests: Add another test for GetProfilesDirectoryA.
     ntdll/tests: Add more tests for RtlExpandEnvironmentStrings/_U.
     kernel32/tests: Add tests for ExpandEnvironmentStringsW.
     kernel32/tests: Add more tests for ExpandEnvironmentStringsA.
     kernel32/tests: Add ExpandEnvironmentStringsA tests for japanese.
     ntdll: Rework RtlExpandEnvironmentStrings/_U to account for corner cases.
     kernel32: Rework ExpandEnvironmentStringsW error handling.
     kernel32: Rework ExpandEnvironmentStringsA to return ansi size and fix corner cases.
     userenv: Fix GetProfilesDirectoryA return value.

Hans Leidekker (2):
     fc: Support /c option.
     wintypes/tests: Add tests for RoResolveNamespace().

Jacek Caban (2):
     winecrt0: Use version 2 of CHPE metadata.
     winegcc: Skip --no-default-config in find_libgcc.

Jactry Zeng (11):
     msvcrt/tests: Test tolower() with DBCS.
     msvcrt: Improve DBCS support for _tolower_l().
     msvcrt/tests: Test _tolower_l() with DBCS.
     msvcrt: Correct the result of non-ASCII characters for _strnicmp_l().
     msvcrt/tests: Test _stricmp() with multiple bytes characters.
     include: Add _strnicmp_l() declaration.
     msvcrt/tests: Add tests of _strnicmp_l().
     msvcrt/tests: Test toupper() with DBCS.
     msvcrt: Improve DBCS support for _toupper_l().
     msvcrt/tests: Add tests for locale information.
     msvcrt: Try to generate CTYPE data according to the given codepage.

Jinoh Kang (2):
     server: Allow creating named pipes using \Device\NamedPipe\ as RootDirectory.
     server: Implement more FSCTLs on \Device\NamedPipe and \Device\NamedPipe\.

Matteo Bruni (2):
     d3dx9/tests: Disable test sometimes crashing on Windows.
     winegstreamer: Split large WMA samples.

Maxim Karasev (1):
     klist: Migrate to KerbQueryTicketCacheExMessage.

Michael Lelli (1):
     ntdll: Use __wine_unix_spawnvp() to invoke unmount command.

Paul Gofman (7):
     ntdll: Introduce a separate per-thread object for internal completion waits.
     ntdll: Assign completion to thread when wait for completion is satisfied.
     ntdll: Handle user APCs explicitly in NtRemoveIoCompletionEx().
     server: Signal completion port waits on handle close.
     ntdll/tests: Add tests for completion port signaling.
     server: Sync cursor position on window position change.
     mountmgr.sys: Stub StorageDeviceSeekPenaltyProperty query.

Piotr Caban (1):
     kernelbase: Support backslashes when parsing relative URL in UrlCombine.

Rémi Bernon (59):
     win32u: Do not adjust old valid rect when moving child window bits.
     winex11: Introduce a new struct host_window for host-only windows.
     winex11: Create host windows recursively up to root_window.
     winex11: Keep track of the host window children of interest.
     winex11: Keep track of the host windows relative rects.
     winex11: Keep track of the host windows children window rects.
     winex11: Use the new host windows to register foreign window events.
     winex11: Generate relative ConfigureNotify on parent ConfigureNotify events.
     winex11: Get rid of the now unnecessary foreign windows.
     windows.gaming.input: Invoke event handlers outside of the critical section.
     windows.devices.enumeration: Invoke event handlers outside of the critical section.
     windows.media.speech: Invoke event handlers outside of the critical section.
     winex11: Avoid processing RRNotify events in xrandr14_get_id.
     winemac: Merge DND structures and rename constants / functions.
     winemac: Introduce a new QUERY_DRAG_DROP_ENTER query.
     winemac: Use the new win32u drag'n'drop interface.
     winex11: Set configure_serial when resizing on display mode change.
     winex11: Rename read_net_wm_state to get_window_net_wm_state.
     winex11: Move ConfigureNotify checks after computing visible rect.
     winex11: Move embedded check in update_net_wm_states / sync_window_style.
     winex11: Register PropertyChangeMask for unmanaged windows.
     win32u: Clear display device before refreshing the registry cache.
     win32u: Allocate device manager context gpu dynamically.
     win32u: Keep the source registry key on the source struct.
     win32u: Allocate device manager context source dynamically.
     win32u: Allocate device manager context monitors dynamically.
     winex11: Track WM_STATE window property requests and updates.
     winex11: Track _XEMBED_INFO window property changes.
     winex11: Introduce a new window_set_wm_state helper.
     winex11: Introduce a new window_set_net_wm_state helper.
     winex11: Track _NET_WM_STATE window property requests and updates.
     winex11: Introduce a new window_set_config helper.
     winex11: Track window config requests and updates.
     win32u: Introduce a NTGDI_RGN_MONITOR_DPI flag for NtGdiGetRandomRgn.
     winex11: Compute absolute rect using the window data window rects.
     winex11: Use the toplevel window drawable to create DCs.
     winex11: Remove now unused child_window_from_point helper.
     win32u: Compute the owner window hint on behalf of the drivers.
     include: Add __pctype_func declaration.
     include: Add some localized ctype.h function declarations.
     include: Add some struct timespec definitions.
     include: Add some ___mb_cur_max_func declarations.
     include: Add some __sys_nerr declaration.
     include: Fix _strtod_l/strtold/_strtold_l declarations.
     include: Remove non-existing _atold definition.
     include: Add math.h _(l|f)dtest function declarations.
     include: Add wcscat_s C++ wrapper definitions.
     include: Add abs C++ wrapper definitions.
     include: Add atan2l inline definition.
     include: Add max_align_t definition.
     include: Add CaptureStackBackTrace macro definition.
     include: Add SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE flag.
     include: Fix IMAGE_IMPORT_BY_NAME declaration.
     win32u: Implement get_win_monitor_dpi.
     win32u: Use MDT_RAW_DPI monitor DPI type in the drivers.
     win32u: Move some monitor info getter code around.
     win32u: Inform wineserver about the winstation monitors.
     server: Use the monitor infos to compute the virtual screen rect.
     winex11: Skip faking ConfigureNotify if state/config change is expected.

Sebastian Krzyszkowiak (1):
     mciseq: Don't seek to the end of the root chunk in RMID files.

Semenov Herman (Семенов Герман) (1):
     ole32: Fixed copy paste error with OFFSET_PS_MTIMEHIGH in UpdateRawDirEntry.

Vijay Kiran Kamuju (11):
     gdiplus: Add GdipCreateEffect implementation.
     gdiplus: Partial implementation of GdipGetEffectParameterSize.
     apphelp: Add stub SdbSetPermLayerKeys().
     apphelp: Add stub SdbGetPermLayerKeys().
     apphelp: Add stub SetPermLayerState().
     include: Add missing defines and enums for IDragSourceHelper2.
     websocket: Add stub for WebCreateClientHandle.
     websocket: Add stub for WebSocketAbortHandle.
     websocket: Add stub for WebSocketDeleteHandle.
     taskschd: Implement IDailyTrigger_put_EndBoundary.
     taskschd: Implement IDailyTrigger_get_EndBoundary.

Zhiyi Zhang (30):
     include: Add Windows.Foundation.PropertyValue runtime class.
     wintypes: Use DEFINE_IINSPECTABLE.
     wintypes: Add IPropertyValueStatics stub.
     wintypes: Support IPropertyValue primitive objects.
     wintypes: Support IPropertyValue primitive array objects.
     wintypes: Implement IReference<boolean>.
     wintypes: Implement IReference<HSTRING>.
     wintypes: Implement IReference<DOUBLE>.
     wintypes: Add IPropertyValueStatics tests.
     include: Add windows.applicationmodel.datatransfer.dragdrop.idl.
     include: Add windows.applicationmodel.datatransfer.dragdrop.core.idl.
     include: Add dragdropinterop.idl.
     dataexchange: Add initial dll.
     dataexchange: Add ICoreDragDropManagerStatics stub.
     dataexchange: Add IDragDropManagerInterop stub.
     dataexchange: Implement dragdrop_manager_interop_GetForWindow().
     dataexchange/tests: Add ICoreDragDropManagerStatics tests.
     dataexchange/tests: Add ICoreDragDropManager tests.
     dataexchange: Make core_dragdrop_manager_add_TargetRequested() return S_OK.
     iertutil: Add IUriRuntimeClassFactory stub.
     iertutil: Implement uri_factory_CreateUri().
     iertutil: Implement uri_RawUri().
     iertutil: Add uri_AbsoluteUri() semi-stub.
     iertutil/tests: Add IUriRuntimeClassFactory tests.
     iertutil/tests: Add IUriRuntimeClass tests.
     user32: Add EnableMouseInPointerForThread() stub.
     user32: Add RegisterTouchPadCapable() stub.
     include: Add IAgileReference and INoMarshal.
     combase: Implement RoGetAgileReference().
     combase/tests: Add RoGetAgileReference() tests.

9.20

What's new in this release:

  • Bundled Capstone library for disassembly in WineDbg.
  • More formats supported in D3DX9.
  • Static analysis and JUnit test reports in Gitlab CI.
  • More support for network sessions in DirectPlay.
  • Various bug fixes.

The source is available at https://dl.winehq.org/wine/source/9.x/wine-9.20.tar.xz

Binary packages for various distributions will be available from the respective download sites.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.

Bugs fixed in 9.20 (total 15):

  • #39848 Victoria 2 (Steam) fails to start with Wine-Mono
  • #50850 Just Cause crashes when starting new game (D3DXCreateTexture unsupported format, fallback format crashes)
  • #56372 musl based exp2() gives very inaccurate results on i686
  • #56645 unimplemented function httpapi.dll.HttpSendResponseEntityBody
  • #56973 Building wine with mingw/gcc 14.1.1 fails with error '-Wimplicit-function-declaration'
  • #57233 Multiple games show black screen/window on startup (BeamNG.drive, Wargaming.net games)
  • #57245 Can't recognize executables/scripts with a dot in the name...
  • #57250 Rhinoceros installers crash with bad_alloc
  • #57269 wine-9.19 build with ffmpeg fails in winedmo in Ubuntu 20.04
  • #57271 winetricks -q art2kmin shows several popups -- Unable to load dll
  • #57293 Helicon Focus 8.2.0 regression: open images hangs the application
  • #57294 Wine 9.13+ freezes in some applications using WMA Lossless audio
  • #57300 KnightOfKnights crashes once entering the game
  • #57302 In Notepad++ find window gets glitched after losing and regaining focus
  • #57311 Nikon NX Studio Overlay windows incorrectly shown.

9.19

What's new in this release:

  • Character tables updates to Unicode 16.0.0.
  • Better window positioning in the Wayland driver.
  • More support for network sessions in DirectPlay.
  • Support for plug&play device change notifications.
  • Various bug fixes.

The source is available at https://dl.winehq.org/wine/source/9.x/wine-9.19.tar.xz

Binary packages for various distributions will be available from the respective download sites.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.

Bugs fixed in 9.19 (total 11):

  • #41268 Songr 1 installation fails
  • #52208 Malus crashes on unimplemented function WS2_32.dll.WSCGetApplicationCategory
  • #56875 WordSmith 9.0 shows error message on start
  • #56975 Death to Spies: black screen during video playback
  • #57079 Quicken WillMaker Plus 2007 requires unimplemented msvcp70.dll.?getline@std@@YAAAV?basic_istream@DU?char_traits@D@std@@@1@AAV21@AAV?basic_string@DU?char_traits@D@std@@V?$allocator@D@2@@1@@Z
  • #57139 SET changes errorlevel in .bat files
  • #57147 exit /B doesn't break for loop
  • #57205 FL Studio - ALL RECENT VERSIONS - After Wine 9.17 I cannot drag and drop audio files from file manager into the app, and then file manager crashes
  • #57215 cnc-ddraw OpenGL renderer is broken again in 9.18
  • #57240 Wine 9.18 - Regression - FL Studio (and probably other apps) don't export correct file formats anymore
  • #57242 Quicken WillMaker Plus 2007 requires unimplemented msvcp70.dll.??0?basic_ofstream@DU?char_traits@D@std@@@std@@QAE@PBDH@Z

9.18

  • New Media Foundation backend using FFMpeg.
  • Initial support for network sessions in DirectPlay.
  • New Desktop Control Panel applet.
  • Various bug fixes.

9.17

  • Window surface scaling on High DPI displays.
  • Bundled vkd3d upgraded to version 1.13.
  • Mono engine updated to version 9.3.0
  • Improved CPU detection on ARM64.
  • Various bug fixes.

9.16

  • Initial Driver Store implementation.
  • Pbuffer support in the Wayland driver.
  • More prototype objects in MSHTML.
  • Various bug fixes.

9.15

  • Prototype and constructor objects in MSHTML.
  • More support for ODBC Windows drivers.
  • Various bug fixes.

9.14

  • Mailslots reimplemented using server-side I/O.
  • More support for ODBC Windows drivers.
  • Still more user32 data structures in shared memory.
  • Various bug fixes.

9.13

What's new in this release:

  • Support for loading ODBC Windows drivers.
  • More user32 data structures in shared memory.
  • More rewriting of the CMD.EXE engine.
  • Various bug fixes.

Auteur(s)

Auteur
Jim White, Sanjay Connare et Pierre d'Herbemont.

Autres émulateurs de la catégorie

  • Provenance

    Dernière mise à jour:
    Version 3.0.6
  • Heroic Games Launcher

    Dernière mise à jour:
    Version 2.16.1
  • Mythic

    Dernière mise à jour:
    Version 0.4.2
  • Whisky

    Dernière mise à jour:
    Version 2.3.4
  • Crossover

    Dernière mise à jour:
    Version 25.0.0
  • iDOS

    Dernière mise à jour:
    Version 2.1
  • Clock Signal (CLK)

    Dernière mise à jour:
    Version 2025-03-20
  • MAME

    Dernière mise à jour:
    Version 0.275
  • UTM

    Dernière mise à jour:
    Version 4.6.4