Wine v5.0 (January 21, 2020) Announcement Download Spoiler: What's New in Wine v5.0 What's new in Wine 5.0 ====================== *** PE modules - Most modules are built in PE format (Portable Executable, the Windows binary format) instead of ELF when the MinGW compiler is available. This helps various copy protection schemes that check that the on-disk and in-memory contents of system modules are identical. - The actual PE binaries are copied into the Wine prefix instead of the fake DLL files. This makes the prefix look more like a real Windows installation, at the cost of some extra disk space. - Modules that have been converted to PE can use standard wide-char C functions, as well as wide-char character constants like L"abc". This makes the code easier to read. - Not all modules have been converted to PE yet; this is an ongoing process that will continue during the Wine 5.x development series. - The Wine C runtime is updated to support linking to MinGW-compiled binaries; it is used by default instead of the MinGW runtime when building DLLs. *** Graphics - Multiple display adapters and monitors are properly supported, including dynamic configuration changes. - The Vulkan driver supports up to version 1.1.126 of the Vulkan spec. - The WindowsCodecs library is able to convert more bitmap formats, including palette-indexed formats. *** Direct3D - Fullscreen Direct3D applications inhibit the screensaver. - DXGI swapchain presents inform the application when the corresponding window is minimized. This typically allows applications to reduce CPU usage while minimized, and is in some cases required to allow the application window to be restored again. - Switching between fullscreen and windowed modes using the standard Alt+Enter combination is implemented for DXGI applications. - The following features are implemented for Direct3D 12 applications: - Switching between fullscreen and windowed. - Changing display modes. - Scaled presents. - Swap intervals. These features were previously already implemented for earlier versions of the Direct3D API. - The handling of various edge cases is improved. Among others: - Out of range reference values for the alpha and stencil tests. - Sampling 2D resources with 3D samplers and vice versa. - Drawing with mapped textures and buffers. - Usage of invalid DirectDraw clipper objects. - Creating Direct3D devices on invalid Windows, like the desktop window. - Viewports with a minimum Z larger than or equal to the maximum Z. - Resources bound through both shader-resource views and render-target or depth-stencil views at the same time. - Blits between formats with and without alpha components. Since well-behaved applications don't rely on these edge cases, they typically only affect one or two applications each. There are nevertheless quite a number of them. - Dirty texture regions are tracked more accurately for Direct3D 8 and 9 texture uploads. - Uploads of S3TC-compressed 3D textures require less address space. Since 3D textures can be potentially large, and address space exhaustion is a concern for 32-bit applications, S3TC-compressed 3D textures are uploaded per-slice, instead of in a single upload. - The ID3D11Multithread interface is implemented. - Various lighting calculation fixes and improvements for older DirectDraw applications have been made. - Limited support for blits across swapchains is implemented. - More shader reflection APIs are implemented. - The wined3d CPU blitter can handle compressed source resources. Support for compressed destination resources was already implemented in a previous release. - The Direct3D graphics card database recognizes more graphics cards. - New HKEY_CURRENT_USER\Software\Wine\Direct3D registry keys: - "shader_backend" (REG_SZ) The shader backend to use. Possible values are "glsl" (default) for GLSL, "arb" for ARB vertex/fragment programs and "none" to disable shader support. - "strict_shader_math" (REG_DWORD) Enable (0x1) or disable (0x0, default) stricter translation of Direct3D shaders, potentially at a performance cost. This currently only makes a difference with the default GLSL shader backend in combination with the proprietary NVIDIA drivers. - Deprecated HKEY_CURRENT_USER\Software\Wine\Direct3D registry key: - "UseGLSL" This has been superseded by the "shader_backend" setting above. *** D3DX - Support for compressing textures using S3TC-compression is implemented. - Various operations, like e.g. texture fills, on unmappable surfaces are implemented more correctly. Previously their implementation relied on the underlying Direct3D implementation not enforcing mapping restrictions. - Various improvements and fixes have been made to the effect framework. *** Kernel - Most of the functions that used to be in Kernel32 are moved to KernelBase, to follow the architecture of recent Windows versions. - Libraries of the wrong 32/64-bitness are ignored when found in the search path, to enable loading the correct one if it's found further in the path. - Kernel objects are better emulated for device drivers that expect to manipulate objects from the kernel side. - The kernel-level synchronization objects like spin locks, fast mutexes, remove locks, and resource variables are implemented. - The system battery state is properly reported to applications. *** User interface - Minimized windows are displayed using their title bar instead of the old Windows 3.1-style icons. - The new button styles Split Buttons and Command Links are implemented. - The Edit control sets margins correctly also for CJK fonts. *** Desktop integration - Symbolic links to the corresponding Unix directories are created for the 'Downloads' and 'Templates' folders. *** Input devices - Plug & Play device drivers can be installed and loaded on startup. - Game controllers are better supported, including proper support for hat switch, wheel, gas and brake controls. - The old joystick API of Linux versions earlier than 2.2 is no longer supported. *** .NET - The Mono engine is updated to version 4.9.4, including parts of the Windows Presentation Foundation (WPF) framework. - The Gecko and Mono add-ons support shared installation, where the files are used directly from a global location under /usr/share/wine instead of being copied into every new prefix. *** Internet and networking - The Gecko engine is refreshed to support recent toolchains. - A number of new HTML APIs are implemented. - MSHTML supports some SVG elements. - Error object and exception propagation are supported in VBScript. - A number of VBScript builtin functions are implemented. - JScript EcmaScript compliant mode is extended to support more features. - JScript and VBScript script objects expose type info interfaces. - The HTTP proxy configuration can be retrieved through DHCP. - Passport HTTP redirects are supported. - The HTTP service and corresponding client-side library (HTTPAPI) are partially implemented. *** Cryptography - ECC (elliptic-curve) keys are supported when using GnuTLS. - Importing keys and certificates from PFX blobs is implemented. - The PBKDF2 key derivation algorithm is supported. *** Text and fonts - OpenType positioning features are supported in DirectWrite, and enabled for Latin script by default, including kerning. - Font data access is made safer by validating the various data tables before using them. - DirectWrite interfaces are updated to a recent SDK, implementing some of the latest API additions. *** Audio / Video - The XAudio2 libraries are reimplemented to use the external FAudio library, for better compatibility. - The Media Foundation libraries are fleshed out, including: - Support for builtin and user async work queues. - Ability to submit periodic callbacks, waiting, scheduled, and regular work items, with support for item priority. - Support for media event queues. - Various core API to handle media type objects, stream and presentation descriptors, object attributes, byte stream objects, samples and buffers. - Initial Source Resolver implementation. - Initial implementation of Source Reader API. - Implementation for Sample Grabber object. - Core support for building topology objects. - Builtin presentation clock implementation, started implementing Media Session functionality. - The video capture filter has been ported to use v4l2 instead of the deprecated v4l1 API, allowing the use of some cameras which do not support v4l1. - Support for YUV to RGB translation and reading from v4l2 devices using mmap() has been removed; we now depend on libv4l2 for both of these things. - The builtin AVI, MPEG-I, and WAVE decoders have been removed; we now depend on GStreamer or the Mac QuickTime Toolkit to decode such media files. - Some more VMR7 configuration APIs are implemented. - The sound drivers support per-channel volume adjustments. *** Internationalization - Unicode character tables are based on version 12.1.0 of the Unicode Standard. - Unicode normalization is implemented. - The geographic region id is automatically set in the registry based on the current locale. It can be modified if necessary under HKEY_CURRENT_USER\Control Panel\International\Geo. - The Sinhalese and Asturian locales are supported. - Codepage 28601 (Latin/Thai) is supported. *** RPC/COM - The typelib marshaller supports complex structs and arrays. - There is an initial implementation of the Windows Script runtime library. - There is an initial implementation of the Microsoft ActiveX Data Objects (ADO) library. *** Installers - Microsoft Installer (MSI) Patch Files are supported. - The WUSA tool (Windows Update Standalone Installer) supports installing .MSU update files. *** ARM platforms - Exception unwinding is implemented for ARM64, using the libunwind library. - OLE stubless proxies are supported on ARM64. *** Development tools / Winelib - The Visual Studio remote debugger can be used to debug applications running under Wine. - The Debug Engine library (DBGENG) is partially implemented. - Binaries built for a Windows target no longer depend on the libwine library, to enable them to run on Windows without any extra dependencies. The libwine library is no longer built for Windows at all. - The Resource Compiler and IDL Compiler support a '--sysroot' option to allow locating header files in cross-compile environments. - Winegcc supports the options '--target', '--wine-objdir', '--winebuild' and '-fuse-ld' that make it easier to use as a cross-compiler, or with custom toolchains. - The wine/unicode.h header is no longer available to applications, since the functions will ultimately be removed and replaced by the standard C runtime wide character functions. *** Build infrastructure - Test binaries are built in PE format if MinGW is available, so the same test binary can run on both Wine and Windows. The 'crosstest' make target is no longer needed or supported. - The 'fastcall' calling convention is supported in spec files. It uses the correct name mangling for Windows builds. - A '-import' entry point flag is supported in spec files, to mark functions that need a hotpatch code prefix to be generated for their import thunks. - Winebuild supports a '--builtin' option to add a special signature to PE binaries to mark them as Wine builtins. *** Builtin applications - The CHCP tool is implemented. It allows setting the console codepage. - The MSIDB tool is implemented. It allows manipulating MSI databases. *** Performance improvements - The various time functions use higher performance system clocks if available, to reduce the overhead in the rendering loop of many games. - File lookups take advantage of the ext4 filesystem case folding support if it's enabled on the directory being searched. - No-data style listboxes (LBS_NODATA) have better performance for large numbers of items. - Slim Reader/Writer locks, keyed events, and condition variables use futexes on Linux to avoid wineserver round trips. *** New external dependencies - The MinGW-w64 cross-compiler is used to build modules in PE format. - The FAudio library is used to implement XAudio2. - The Inotify library is used for file change notifications on BSD platforms. - The Unwind library is used for exception handling on ARM64. - The Video4Linux version 2 library is used instead of version 1.
Wine v5.0.1 Released (June 2, 2020) Announcement Download Spoiler: Bugs fixed in v5.0.1 Bugs fixed in 5.0.1 (total 37): 36059 Multiple Steam games fail to install DirectX runtime prerequisite, resulting in repeated install attempt on startup ('xinput1_3.dll' locked by client) 42038 Cannot scroll documents being compared in winmerge (Followup to bug 20695) 42585 Final Fantasy V Corrupt Fonts 45049 Multiple programs need d2d1 CreateRoundedRectangleGeometry (playchessV7, Paint.Net 4.*) 45481 Spintires: MudRunner crashes at launch 46005 Multiple games and applications fail due to missing interface proxy information in registry (oleautomation/dual interfaces referenced in coclass section inside of library block) 46735 Multiple applications need Direct3DShaderValidatorCreate9() implementation (The Sims 2 demo, Armed Assault) 47288 Gaea 1.0.19 (.NET 4.7 WPF app) diagnostic tool 'Watson.exe' crashes due to 'kernel32.SetConsoleScreenBufferInfoEx' stub 47668 Logos 8 (.NET/WPF 4.7.2 application) fails to download resources (needs ReOpenFile implementation) 48018 QuickTime 7.0.x installer fails, 'rundll32.exe "C:\Program Files (x86)\QuickTime\QTSystem\QTJava.dll,QTPostInstallProc"' crashes due to invalid cdecl dll entry 48338 DIB images with bpp <= 8 get wrong palette when converted to GpBitmap 48371 Home Designer Suite 21.3.1.1x64 reports "Error #272000009 A serious error occurred (SEH)." 48386 Some CPU features are not reported for Intel CPU (Detroit: Become Human is affected) 48387 User shared data area should have NumberOfPhysicalPages field filled in (used by Detroit: Become Human) 48480 dlls/krnl386.exe16 - thunk.c argument logic incorrect for CallProcEx32W16 48484 winecfg doesn't allow disabling Desktop Integration for Downloads 48491 _searchenv & co do not understand quoted directories 48510 Lotus Organizer 97 crashes when selecting a Backup folder using 'Browse' button 48549 Arma Cold War Assault: Cursor stuck at low fps since Wine 5.0-rc6 48557 Multiple installers crash (Hot Wired, Croc installer) : Setup is unable to initialize the language dialogbox: Error 106 48561 Cadence Allegro Professional 16.6 crashes at startup 48569 Infinite drag & drop loop crashes WinSCP 48571 Firefox 72.0.* crashes on every tab (unless dwrite is disabled) 48577 DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY and other enums are the wrong size 48580 Discord connecting to voice needs unimplemented function qwave.dll.QOSAddSocketToFlow 48594 AnyDesk crashes directly on startup (low WORD of instance handle must be ignored when looking up window classes) 48635 Asuka 120% Return BURNING Fest: Crashes after character selection. 48639 Shrew Soft VPN client needs setupapi.dll.SetupDiGetSelectedDriverA() 48646 QQMusicAgent crashes when started after installation 48648 Gothic II Night of the Raven:unhandled exception in Wine 5.2 48664 kernel32:process - Intermittent test_Toolhelp() failure 48669 iphlpapi.NotifyUnicastIpAddressChange() should call the callback initially if requested (required for Far Cry 5 online mode) 48694 The Bat! (64bit) crashes right after start 48706 Wineconsole freezes when restoring from minimized to maximized window 48723 Torchlight - Loading times are excessively long 48735 Wine builtin services.exe process_send_command: OVERLAPPED struct for control pipe has uninitialized Offset and OffsetHigh fields 48846 msvcr90/tests/msvcr90.c: error: variadic functions must use the base AAPCS variant
Wine v5.0.2 Released (August 7, 2020) Announcement Download Spoiler: Bugs fixed in v5.0.2 Bugs fixed in 5.0.2 (total 46): 8439 Multiple Microsoft product installers fail due missing shell app path expansion (Visual Studio .NET 2002, 2003, Visual Foxpro 9.0) 19239 Multiple applications crash with division by zero on edit control with zero line height (eBay Turbo Lister, Clarin TX control wrapper) 29806 Hype The Time Quest: DirectX Media (DXM) v6.0 runtime installer fails (advpack.ExecuteCab should extract the INF from CAB before running the install part) 30814 Age of Empires II scrolling gets stuck after Alt-Tab away and back 31890 Multiple applications need IAudioEndpointVolume::GetMasterVolumeLevelScalar method implementation (Cisco IP Communicator, Cairo Shell v0.3.x) 39534 Bad Mojo Redux crashes on start (ddraw1_vtbl and ddraw_surface1_vtbl need to be writable) 41559 (winecfg) Add ability to change windows version via command line 43638 Multiple 4k demoscene OpenGL demos crash on startup with 'No active WGL context found' (Yermom, 'End of time' by Alcatraz and Altair) 45839 Qt 5.8 SDK installer needs 'IFileSystem.MoveFile' method implementation for maintenance tool creation step 46949 DDraw games using older windowed mode wrappers such as DirectX Windower Embedded v2.3/D3D Windower v1.x crash (ddraw_palette_vtbl and ddraw_surface{1,2,3,4,7}_vtbl need to be writable) 47621 Command link buttons in task dialog are displayed in wrong style 47794 Rockstar Games Launcher installer button images do not display 47999 Gif pictures stored in PE files are not loaded into HTML web pages via Res protocol 48186 every wine process shows a definite leak in dlls/ntdll/env.c 48471 Mismatching behavior of GetEnvironmentVariableW for empty / long values 48490 Restored minimized windows have wrong height 48495 XCP-ng Center v8.x (.NET 4.6 app) can't connect to server with self-signed certificate 48593 Multiple games play only one frame of video (Fable: The Lost Chapters, Audiosurf, Dark Souls 2, Oddworld: Munch's Oddysee) 48611 Cairo Shell v0.3.x (.NET 4.7 app) crashes due to missing 'HKCU\\Software\\Microsoft\\Windows NT\\CurrentVersion\\WinLogon\\Shell' registry sub-key 48683 iTunes v12.10.4.2 crashes on unimplemented function wmvcore.dll.WMIsContentProtected when adding folders to directory scan 48731 Just Cause crashes while loading level with builtin d3dx9_26 48732 How to Survive crashes on start (fullscreen mode) 48738 cmd.exe crashes when running certain batch files 48739 ConEmu (Windows console emulator) v19.10.12 fails to set Wininet's INTERNET_OPTION_IGNORE_OFFLINE and shows error dialog at startup 48740 ConEmu is constantly loosing focus 48747 ConEmu flickers and scrolls randomly 48750 Few missing DirectSound3D Algorithms GUID Defs 48762 IExplore immediately crashes on www.msnbc.com with a failed assertion 48801 Multiple games crash on unimplemented function d3dx11_43.dll.D3DX11GetImageInfoFromFile (Assetto Corsa 1.14.x, Project Cars) 48803 FITietokanta crashes every time after ADD-button is pressed 48806 Panzer Corps 2 needs msvcp140.dll.?_XLgamma@std@@YANN@Z 48814 Microsoft Word 6.0 for Windows installer crashes after wine-4.8-247-g0d7d0427d0 48816 The explorer doesn't support '/cd' option 48844 Magical Scramble Demo 1.20P shows white boxes instead of pictures. 48932 Wine does not display any windows unless `xrandr --auto` has been run 48960 NtQueryDirectoryFile incorrectly returns STATUS_NO_MORE_FILES when it encounters an ignored entry 48974 Multiple MSI-based installers show 'newBinaryXX' text instead of bitmap on button controls (missing support for 'msidbControlAttributesBitmap') 49005 Listview header occasionally fails to redraw when list is scrolled vertically 49034 Enlarge list width in font selection dialog 49115 Hitman (2016) and Hitman 2 (2018) fail to launch in DX11 mode 49142 Horizontal mouse scroll events (X11 buttons 6 and 7) should not be translated to back/forward events 49146 Hearts of Iron IV needs api-ms-win-crt-private-l1-1-0.dll._o_sin 49173 widl generates invalid code for Gecko's ISimpleDOM.idl 49175 Duplicated checking canonicalized inside kernelbase/path.c 49198 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes in entry point (incorrect page protection restored during relocation processing) 49203 Possible incorrect usage >= instead <= in shlview.c
Wine v5.0.3 Released (November 10, 2020) Announcement Download Spoiler: Bugs fixed in v5.0.3 Bugs fixed in 5.0.3 (total 44): 7102 Microsoft Word 6.0 for Windows: copy/paste causes crash on unimplemented function ole2.dll16.OLEISCURRENTCLIPBOARD 26171 BVRP classic phone tools installer reports error 'Insufficient buffer' when trying to install print processor (AddPrintProcessorA stub should be symmetric to AddPrintProcessorW) 35903 CED1401 USB function driver fails to install (setupapi should use the original INF path as a default source path when copying files) 38020 Foxit Reader 6.12 crashes on unimplemented function msasn1.dll.ASN1_CreateModule during validation of digital signatures 44127 Metal Gear Solid V: Ground Zeroes doesn't launch 44306 Visual Novel "A Clockwork Ley-Line: The Borderline of Dusk" doesn't work with d3d9 44925 Multiple kernel drivers require 'ntoskrnl.exe.ExCreateCallback' stub to return STATUS_SUCCESS (StarForce v3, TrackMania Nations ESWC. Denuvo Anti-Cheat) 45536 Total Commander 9.x crashes on unimplemented function usp10.dll.ScriptGetFontAlternateGlyphs when Wine is not detected via named export 'ntdll.wine_get_version' 46726 Dirt Rally 2.0 does not use embedded CA cert 46818 PS4 Remote Play 2.x (.NET 4.x app) crashes on Sign-In PlayStation network (mshtml:HTMLDocument_get_cookie should not fail for 'about:blank') 48256 pwsh.exe (from Powershell-6.*) crashes after 20~50 sec: System.EntryPointNotFoundException: Unable to find an entry point named 'FreeAddrInfoEx' in DLL 'ws2_32.dll'. 48405 Battle.Net Launcher Beta crashes with Windows version set to 10 48668 rFactor2 - Physics thread slower on multiplayer mode 48779 Secret Files 3 crashes at launch (needs d3dx9_skin_info_Clone) 48938 Ashes of the Singularity: Escalation crashes on start 48959 S-Gear 2 installer does not recognize wine as Windows 10 49147 Microsoft Teams 1.3.x crashes on unimplemented function setupapi.dll.CM_Get_Device_Interface_AliasW 49178 Spitfire Audio 3.x crashes on start due to 'WTSQuerySessionInformationA' stub not initializing out parameters 49179 winetest.exe fails to run on windows arm (surface rt / armv7): procedure entry point NtCurrentTeb could not be located in the dynamic link library C:\Users\User\Desktop\winetest.exe 49189 Auslogics Registry Cleaner 8.x crashes and shows "OLE error 80004001" (SetCurrentProcessExplicitAppUserModelID stub needs to return S_OK) 49221 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes due to unhandled emulation of MSR register reads related to CPU / virtualization features (returning zero value is sufficient) 49257 Avast Free Antivirus 20.3 crashes before installing due to unimplemented function rpcrt4.dll.RpcIfInqId 49264 MultiSync installation crashes (needs _Command::get/put_CommandText) 49272 MultiSync installation crashes (msado15.dll needs {b196b284-bab4-101a-b69c-00aa00341d07} IConnectionPointContainer) 49281 FinanceExplorer crashes inside msado15.dll 49289 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExRegisterCallback 49291 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExUnregisterCallback when unloading 49303 MultiSync installation crashes (msado15.dll needs IConnectionPointContainer::FindConnectionPoint) 49322 cmudpro334 shows error on unimplemented ITaskbarList::SetOverlayIcon() 49352 JamKazam 1.0.3744 msi installer fails at 'InstallFiles' action (incorrect handling of administrative image with compressed source files) 49372 winedump crashes for sltg typelib files 49379 Altium Designer 20 crashes on missing d2d1.dll.D2D1CreateDevice 49388 MultiSync installation crashes (msado15.dll needs IConnectionPoint::Advise) 49439 Printing and scanning software for Brother L2540DW fails to install (VBScript parser can't handle a "case else" statement with a comment and no statements to execute) 49460 where.exe is missing in wine (affects Waves Central ) 49487 ListView control custom draw in report view shows blank item if handler clears uItemState CDIS_SELECTED flag 49488 uninitialized bytes in server call from ntdll/server_write_file 49570 LVM_FINDITEM should do case-insensitive test for item text 49620 Tableau Desktop fails to install 49656 SAP GUI - Ws2_32.getaddrinfo crashes with non-standard service (/etc/services) 49662 Wine Internet Explorer crashes on https://[2600::]/ 49664 FrostyModManager v1.0.5.9 crashes on launch 49666 Red Dead Redemption 2 requires HEAP flags offset to match Windows 49685 Gigabyte "EasyTune" service crashes in wbemprox