The Wine development release 3.15 is now available.
What's new in this release (see below for details):
- Support for DPI scaling on Android.
- HID device support in Raw Input.
- Many more new icons in Shell32.
- WinHTTP converted to use Windows Sockets.
- Syntax fixes in the command line interpreter.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.15.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.15.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.15 (total 44):
5610 psexec from pstools doesn't work (needs mpr.WNetAddConnection2W implementation)
19182 Allow to completely disable MIME-type and application integration
22333 Total Commander: Application freezes when the current directory field is editable, and you right-click a regular file and click Properties
28037 cmd: sharing violation when using redirections
30185 SuperPower 2 demo crashes on launch
30487 Add icons for 'My Network Places', 'My favorites'
31744 Multiple GFWL (Games For Windows Live) 3.5 games crash on startup due to incomplete Windows LiveID install (Street Fighter X Tekken)
36884 Drakensang: The Dark Eye demo crashes on startup (needs d3dx9_36.dll.D3DXCreateTeapot implementation)
37525 Bionic Commando: No shadows mapping
37636 u-center from u-blox crashes when attempting to add a log to screen
37834 RtlSetCurrentDirectory_U prepends "UNC\" for network paths; the resulting path is invalid
38565 Total Commander fails to redraw long list with Source: Filename setting
39754 Multisample resolve is not implemented for typeless resources (EVE Online, Hearthstone, Just Cause 2, Outcast Second Contact, VRChat)
39906 ODB++ Viewer fails to install due to improper bat file handling (quoting or delimiting problem)
41376 Firefox Ver 49 will not run on Wine 1.8
41652 Uplay cannot connect/login to Server
41914 incorrect execute path within nested if (else) statement
42870 CurrentBuild registry value is missing
42998 HeidiSQL requires IDispenserManager implementation.
43036 SetNamedPipeHandleState returns ERROR_ACCESS_DENIED when setting PIPE_NOWAIT
43911 Invisible menus in Rise of Nations Extended Edition
44356 Neverwinter: some ingame objects don't render properly
44369 cmd's %0 path variables (e.g. %~dp0) wrong inside subroutine call
44653 Everquest Titanium (Project 1999): Significant performance regression from 3.1 to 3.2
44879 Multiple games crash on unimplemented function api-ms-win-core-timezone-l1-1-0.dll.GetDynamicTimeZoneInformationEffectiveYears (Universe Sandbox 2, Phoenix Point, Trailmakers)
45084 winebus blocks startup for several seconds when HID devices are detected via udev
45317 updating wine mono does not change version in uninstaller.exe
45365 Multiple .NET XNA 3.x/4.x games using Microsoft.Xna.Framework.Media classes crash due to IWMPCore3::newMedia stub
45366 A.R.E.S. Extinction Agenda 1.x (.NET 2.0, XNA 3.1 game) crashes during intro ('quartz' BasicAudio_put_Volume must return E_NOTIMPL if audio renderer filter not present)
45468 Phase Shift: tails on sustain notes not visible unless GLSL is disabled
45475 XM6 Type G: Can't type a specific symbol key on Japanese keyboard.
45478 World of Warcraft: graphical artifacts since 8.0 (BfA)
45506 Waves Central: Plugins don't install anymore
45568 League of Legends 8.12+ fails to start a game (anticheat engine, validation of loaded DLLs)
45646 chromium 64-bit sandbox >=win8 needs NtCreateLowBoxToken
45654 CreateNamedPipeW fails when pipe name starts with \\??\\
45655 Acronis Storage Filter Management Driver 'fltsrv.sys' crashes on unimplemented function 'ntoskrnl.exe.DbgQueryDebugFilterState' in trace mode
45660 SuperPower 2 demo fails to install
45663 Multiple 64-bit MSI installers fail with 'err:msiexec:custom_action_server Failed to create custom action server pipe' (MS .NET Framework 4.x, Python 2.7, PSIM 11)
45671 Wine build: can't write value of type 12 yet
45681 SDL2 Game Controller API not working anymore with Wine 3.14
45689 Quik 7: Combobox is not populated properly
45694 WinHttpOpenRequest: unsafe characters are not escaped
45726 Firefox 61.x crashes on unimplemented function KERNEL32.dll.GetApplicationRestartSettings
----------------------------------------------------------------
Changes since 3.14:
Alex Henrie (107):
shell32: Add Internet icon.
shell32: Add network icon.
shell32: Switch the "My Network Places" icon to the network icon.
shell32: Add "Computers Near Me" icon.
shell32: Add recent documents icon.
shell32: Add settings icon.
shell32: Remove alpha channel from 4-bit and 8-bit Internet icons.
shell32: Remove alpha channel from 4-bit and 8-bit network icons.
shell32: Add search icon.
shell32: Add help icon.
shell32: Add run icon.
shell32: Add sleep icon.
shell32: Add eject icon.
shell32: Add shutdown icon.
shell32: Add "trash full" icon.
shell32: Add modem folder icon.
shell32: Add application folder icon.
shell32: Add printer folder icon.
shell32: Add font folder icon.
shell32: Scale SVG properly to create 48x48 sleep icons.
shell32: Scale SVG properly to create 48x48 shutdown icons.
shell32: Add start menu icon.
shell32: Add optical disc icon.
shell32: Add music CD icon.
shell32: Add tree icon.
shell32: Add remote folder icon.
shell32: Add favorites icon.
shell32: Add logoff icon.
shell32: Add folder search icon.
shell32: Add update icon.
shell32: Add rights icon.
shell32: Add shutdown confirmation icon.
shell32: Add blank icons.
shell32: Add unknown drive icon.
shell32: Add files icon.
shell32: Add file search icon.
shell32: Add system search icon.
shell32: Add options icon.
shell32: Add XP printer folder icon.
shell32: Add "add printer" icon.
shell32: Add remote printer icon.
shell32: Add "print to file" icon.
shell32: Add "trash folder" icon.
shell32: Add "trash mixed" icon.
shell32: Add file overwrite icon.
shell32: Add folder overwrite icon.
shell32: Add rename icon.
shell32: Add folder rename icon.
shell32: Add install icon.
shell32: Add config file icon.
shell32: Add text file icon.
shell32: Add batch file icon.
shell32: Add library file icon.
shell32: Add system font icon.
shell32: Add TrueType font icon.
shell32: Add PostScript font icon.
shell32: Add second run icon.
shell32: Add copy icon.
shell32: Add backup icon.
shell32: Add disk check icon.
shell32: Add defragment icon.
shell32: Add treeview icon.
shell32: Add network folder icon.
shell32: Add checklist folder icon.
shell32: Add network connections icon.
shell32: Add web folder icons.
shell32: Add visual settings icon.
shell32: Add remote connection icon.
shell32: Add window-on-monitor and desktop-on-monitor icons.
shell32: Add demo window icons.
shell32: Add one-click-open and two-click-open icons.
shell32: Add remaining recycle bin icons.
shell32: Rename icon 48 from "rights" to "security".
shell32: Add users icon and passwords icon.
shell32: Add fax machine icons.
shell32: Add "restricted" icon.
shell32: Add remaining folder icons.
shell32: Add "power off" icon.
shell32: Rename icon 12 from "cdrom" to "optical drive".
shell32: Add remaining optical disc icons.
shell32: Add documents icon.
shell32: Add video file icon.
shell32: Add audio file icon.
shell32: Rename floppy.svg to disk_drive.svg.
shell32: Add card reader icon.
shell32: Add zip drive icon.
shell32: Add download icons.
shell32: Add removable disk icons.
shell32: Add MSN icon.
shell32: Add delete icon.
shell32: Add move icon.
shell32: Add upload icon.
shell32: Add print icon.
shell32: Add play icon.
shell32: Add image file icon.
shell32: Add multimedia file icon.
shell32: Add users icon.
shell32: Add remaining Internet icons.
shell32: Add remaining printer icons.
shell32: Add remaining help icons.
shell32: Add XP install icon.
shell32: Add remaining search icons.
shell32: Add Jaz drive icon.
shell32: Rename icon 137 from "options" to "control panel XP".
shell32: Add remaining control panel icons.
shell32: Add remaining small icons.
schedsvc/tests: Check the entire entry list to find the new job.
Alexandre Julliard (36):
shell32: Move image resources to a resources subdirectory.
user32/tests: Add tests for desktop size and DPI scaling.
user32/tests: Add tests for window rectangles and DPI scaling.
gdi32: Fall back to GetSystemMetrics() for the screen size.
gdi32: Fall back to GetSystemMetrics() for the virtual desktop size.
winex11: Use fallback implementation for screen dimensions in GetDeviceCaps().
wineandroid: Use fallback implementation for screen dimensions in GetDeviceCaps().
wineandroid: Remove no longer needed GetDeviceCaps() driver entry point.
wineandroid: Simplify the EnumDisplayMonitors driver entry point.
winex11: Simplify the EnumDisplayMonitors driver entry point.
winex11: Use the stored coordinates to convert back from X11 to window rectangle.
wineandroid: Handle sizing and mouse events in physical coordinates.
wineandroid: Add support for scaling window contents based on DPI.
user32: Scale initial window dimensions in CreateWindow() based on DPI awareness.
user32: Scale window dimensions in SetWindowPos() based on DPI awareness.
user32: Scale window dimensions in DeferWindowPos() based on DPI awareness.
user32: Scale monitor rectangles based on DPI awareness.
shell32: Fix some resources ids.
user32: Scale coordinates in WIN_GetRectangles() based on DPI awareness.
user32: Scale coordinates in MapWindowPoints() based on DPI awareness.
user32: Scale coordinates in Get/SetWindowPlacement() based on DPI awareness.
server: Map region to the window DPI in redraw_region().
user32: Switch to the window DPI awareness for non-client painting.
user32: Switch to the window DPI awareness in SetParent().
user32: Switch to the window DPI awareness in ShowWindow().
user32: Switch to the window DPI awareness to process WM_GETMINMAXINFO.
user32: Switch to the window DPI awareness in update_window_state().
server: Scale coordinates in get_window_children_from_point based on DPI awareness.
user32: Scale coordinates in Get/SetCursorPos() based on DPI awareness.
user32: Scale coordinates in ClipCursor() based on DPI awareness.
user32: Support the MOUSEEVENTF_VIRTUALDESK flag in SendInput().
user32: Map mouse events to physical coordinates in SendInput.
user32: Process hardware messages in physical coordinates.
server: Use screen coordinates in the update_window_zorder request.
user32: Scale dialog base units based on DPI awareness.
user32: Switch to the window DPI awareness for MDI scrolling.
Alistair Leslie-Hughes (11):
wininet: Always copy the password even if blank.
odbccp32: Implement SQLValidDSN/W.
regedit: Don't expand items on initial tree creation.
dinput8: Share source with dinput.
odbccp32: Fake success from SQLWriteDSNToIni/W.
include: Add IWbemUnsecuredApartment interfaces.
dpnet: Implement IDirectPlay8Peer SetSPCaps.
include: Add sal.h.
ntoskrnl.exe: Add DbgQueryDebugFilterState stub.
dpnet: Implement IDirectPlay8Client SetSPCaps.
comsvcs: Add DispenserManager stubbed interface.
Andrew Eikum (1):
winex11.drv: Fix indentation for focus_out.
Charles Davis (1):
ntdll: When an exception happens in DllMain(), print the code.
Daniel Lehman (6):
msvcrt: Don't read past end of string in _strncoll/_wcsncoll.
msvcrt/tests: Add tests for _strncoll/_wcsncoll.
msvcrt: Don't read past end of string in _strnicoll/_wcsnicoll.
msvcrt/tests: Add tests for _strnicoll/_wcsnicoll.
include/msvcrt: Include calling convention with function pointers.
msxml3/tests: Add test for treating namespaces as attributes.
Dmitry Timoshkov (8):
kernel32: Set %ALLUSERSPROFILE% variable to the same value as %ProgramData%.
shell32: Use Public instead of AllUsersProfile in the registry.
user32: Create a mask from alpha channel when loading a 32 bpp icon.
oleaut32/tests: Fix the IPicture::Render() usage.
oleaut32: Move rendering a bitmap to a separate helper.
oleaut32: Use common helper for masked bitmaps to render an icon.
schedsvc: In case it's an old Wine prefix create c:\windows\tasks automatically.
kerberos: Avoid needless conversions between SYSTEMTIME and FILETIME.
Fabian Maurer (6):
user32/combo: Properly set dropdown height.
comctl32/combo: Implement logic for setting and getting dropdown height.
comctl32/listview: Use mask to disable change notifications.
comctl32/listview: Avoid duplicate LVN_ENDLABELEDIT notifications on focus change.
comctl32/tests: Add a test for base class names.
ntdll/actctx: Don't stop looking for manifest if dll without manifest is found.
François Gouget (11):
msvfw32/tests: Make gdf_driver_proc() static.
dbghelp/tests: Make stack_walk_thread() static.
winebus.sys: Avoid calling strdup().
wsdapi/tests: Avoid calls to malloc() and free().
winevulkan: Spelling fix in a perl comment.
xcopy: Spelling fix in a comment.
winedump: Spelling fix in a comment.
ntdll/tests: Spelling fixes in comments.
include: Fix the name of a Wininet error code.
schedsvc: Fix a typo in a parameter name.
dmusic: Make midi_port_create() static.
Gabriel Ivăncescu (7):
comctl32/listbox: Fix scrolling for multi-column listboxes.
user32/listbox: Fix scrolling for multi-column listboxes.
comctl32/edit: Move common calls outside the blocks.
user32/edit: Move common calls outside the blocks.
ntdll: Properly set the current directory for UNC paths.
shell32/autocomplete: Don't crash when there's another AutoComplete object on the same edit control.
shell32/tests: Add a test for binding a different AutoComplete object to the same edit control.
Gerald Pfeifer (1):
wbemprox: Use WS_AF_INET instead of AF_INET in get_ipsubnet.
Gijs Vermeulen (1):
ntdll/tests: Add Nt[WaitFor|Release]KeyedEvent test with NULL handle.
Guillaume Charifi (2):
iphlpapi: Implement GetUdp6Table().
iphlpapi/tests: Add tests for GetUdp6Table().
Hans Leidekker (4):
winhttp: Escape untrusted URL paths.
winhttp: Use winsock sockets.
winhttp: Avoid double free on connection error.
winhttp: Fix macOS build.
Henri Verbeet (3):
d3d10core/tests: Run the tests in parallel.
dxgi/tests: Run the tests in parallel.
wined3d: Make the adapter responsible for creating GL contexts.
Jacek Caban (34):
winegcc: Support distros using plain lib for 32-bit libraries in get_lib_dir.
ntdll: Allow FileAccessInformation to be queried on files without fds.
kernel32: Use proper access flags in CreatePipe.
kernel32: Always create file with FILE_READ_ATTRIBUTES access in CreateFile.
server: Require FILE_READ_ATTRIBUTES access in get_named_pipe_info.
widl: Split write_value for string and int values.
widl: Allow defaultvalue() attribute on any pointer type.
mshtml: Store style property flags in an array and use it in set_nsstyle_attr and get_nsstyle_attr_var.
mshtml: Clean up set_style_property_var prototype.
mshtml: Refactor setting style property value implementation.
mshtml: Rename get_style_attr to get_style_property.
mshtml: Use get_style_property instead of get_nsstyle_attr in HTMLStyle object.
mshtml: Introduce get_style_property_var helper and use it instead of get_nsstyle_attr_var in HTMLStyle implementation.
mshtml: Get rid of no longer needed argument in get_nsstyle_* implementation.
mshtml: Pass style id instead of flags to var_to_styleval.
mshtml: Support using array to check for allowed values and use it in IHTMLStyle::put_fontStyle implementation.
mshtml: Use generic value checks for IHTMLStyle::put_fontVariant implementation.
mshtml: Use generic value checks for IHTMLStyle::put_fontWeight implementation.
mshtml: Use generic value checks for IHTMLStyle::put_backgroundRepeat implementation.
mshtml: Use generic value checks for IHTMLStyle::put_textDecoration implementation.
mshtml: Use generic value checks for IHTMLStyle::put_border*Style implementation.
mshtml: Use generic value checks for IHTMLStyle::put_overflow implementation.
mshtml/tests: Run style tests in IE9 mode.
mshtml: Move value fixups to set_style_property.
mshtml: Skip set_style_property fixups in IE9+ mode.
mshtml: Skip var_to_nsstyle fixups in IE9+ mode.
mshtml: Introduce get_current_style_property helper.
mshtml: Introduce get_current_style_property_var helper.
mshtml: Skip fixups in get_nsstyle_property in IE9+ mode.
mshtml: Skip fixups in get_nsstyle_property_var in IE9+ mode.
mshtml.idl: Add IHTMLCSSStyleDeclaration2 declaration.
mshtml: Added IHTMLCSSStyleDeclaration stub implementation.
mshtml: Implement known IHTMLCSSStyleDeclaration VARIANT properties.
mshtml: Implement known IHTMLCSSStyleDeclaration BSTR properties.
Jactry Zeng (2):
riched20: Initialize style_list before ME_MakeFirstParagraph().
riched20: Call ITextHost_TxGetCharFormat() for setting default charformat.
Jason Edmeades (5):
cmd: Fix shortpath handling in for loops.
cmd: Handle single line 'if' as nested if or with redirects.
cmd: for /f fails to launch quoted program plus args.
cmd: Fix 'if exist' with a directory\ as a parameter.
cmd: Correct handling of %~0 for batch call.
Józef Kucia (33):
winevulkan: Properly retrieve queues that were created with non-zero flags.
wined3d: Allow multisample resolve for typeless resources.
d3d11/tests: Add a test for CopySubresourceRegion() with 1D textures.
d3d10core/tests: Add a test for CopySubresourceRegion() with 1D textures.
wined3d: Simplify shader_arb_destroy().
wined3d: Pass context to find_arb_pshader().
wined3d: Get D3D and GL info from context in create_dummy_textures().
wined3d: Get gl_info from context in query_issue() functions.
wined3d: Use local gl_info variable in wined3d_get_device_caps().
wined3d: Get rid of unused gl_info parameters.
wined3d: Pass wined3d_adapter to wined3d_get_format().
wined3d: Store max point size in d3d_info.
wined3d: Add max_rt_count field to d3d_info.
wined3d: Pass context to wined3d_texture_set_compatible_renderbuffer().
wined3d: Avoid accessing gl_info in vertexdeclaration_init().
dxgi: Choose exact formats for D3D12 swapchain fallback formats.
winevulkan: Trace properties for created devices.
dxgi: Move D3D12 helper functions closer to the top of the file.
dxgi: Factor out d3d12_swapchain_destroy_buffers().
dxgi: Factor out d3d12_swapchain_create_vulkan_swapchain().
dxgi: Implement d3d12_swapchain_ResizeBuffers().
dxgi/tests: Run test_swapchain_resize() on D3D12.
dxgi: Rename remaining "This" variables.
winevulkan: Wrap VkCommandPools.
winevulkan: Fix potential memory leaks when a command pool is destroyed.
vulkan-1/tests: Add a test for destroying a command pool.
winevulkan: Free all command buffers when vkAllocateCommandBuffers() fails.
dxgi: Add support for DXGI_FORMAT_R10G10B10A2_UNORM D3D12 swapchains.
d3d12/tests: Add test for DXGI_FORMAT_R10G10B10A2_UNORM swapchain.
dxgi: Return actual swap effect for D3D11 swapchains.
wined3d: Move formats from gl_info to wined3d_adapter.
wined3d: Use get_format_internal() in apply_format_fixups().
wined3d: Use get_format_internal() in init_format_filter_info().
Ken Thomases (1):
winemac: Use fallback implementation for screen dimensions in GetDeviceCaps().
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (1):
kernel32: Add stub for GetApplicationRestartSettings.
Marcus Meissner (1):
ntdll: Fix buffer size to MultiByteToWideChar.
Michael Stefaniuc (12):
dmusic: Add a stub midi out port.
dmusic: Implement IDirectMusicPort_GetLatencyClock() for the midi port.
dmusic: Support midi in ports too.
dmusic: Add a stub IDirectMusicThru to the midi ports.
msi: Use the ARRAY_SIZE() macro.
dmusic: Fake success in two stub midi port methods.
cmd: Use the ARRAY_SIZE() macro.
dxdiag: Use the ARRAY_SIZE() macro.
explorer: Use the ARRAY_SIZE() macro.
mshtml: Use the ARRAY_SIZE() macro.
vcomp: Use the ARRAY_SIZE() macro.
oleaut32: Use the ARRAY_SIZE() macro.
Nikolay Sivov (21):
wmp: Improve URL property handling.
ole32: Try 'dll' extension when looking for registration-free modules.
ole32: Rename a helper to reflect its purpose better.
wmp: Implement GetClassInfo().
d2d1/tests: Add some tests for ID2D1Bitmap1::GetSurface().
d2d1/tests: Add some tests for context target handling.
user32/listbox: Fix multicolumn navigation on VK_RIGHT.
comctl32/listbox: Fix multicolumn navigation on VK_RIGHT.
d2d1/tests: Check implicit target bitmap options.
comctl32/tests: Fix test failures on XP.
user32: When registering redirected class use correct base class name.
d2d1: Implement matrix inversion functions.
include: Add IOpcFactory and related definitions.
opcservices: Add a stub IOpcFactory.
shlwapi/tests: Add a simple QI test for file streams.
shlwapi: Call actual Write() method for destination streams.
shlwapi: Use wrappers to call stream methods internally.
shlwapi: Fix some trace messages.
include: Add IOpcPackage definition.
opcservices: Add IOpcPackage stub.
opcservices: Add IOpcPartSet stub.
Piotr Caban (1):
jsproxy: Fix parameters validation in InternetInitializeAutoProxyDll.
Rob Walker (1):
winex11: Improve ChangeDisplaySettingsEx failed mode message.
Thomas Faller (1):
wine.inf: Set CurrentBuild always to the same value as CurrentBuildNumber.
Zebediah Figura (23):
hid/tests: Use DIGCF_PRESENT.
xinput: Use DIGCF_PRESENT.
hidclass.sys: Update the interface state when a device is added or removed.
winedbg/gdbproxy: Silence some noisy debug messages.
setupapi: Only delete unregistered device interfaces when deleting a device.
msi: Don't assume that WoW64 redirection is enabled in custom_start_server().
include: Fix definition of RAWHID.
user32: Move rawinput functions to rawinput.c.
user32: Trace command in hexadecimal in GetRawDeviceInfo().
user32: Return HID devices in GetRawInputDeviceList().
user32: Return RIDI_DEVICEINFO for HID devices from GetRawInputDeviceInfo().
user32: Return RIDI_DEVICENAME for HID devices from GetRawInputDeviceInfo().
ddraw: Avoid leaking references to the wined3d device.
ntoskrnl.exe: Broadcast WM_DEVICECHANGE when a PnP device is added or removed.
ntdll: Also accept \\? as a UNC or device path in RtlDetermineDosPathNameType_U().
ntdll/tests: Add more tests for RtlGetFullPathName_U().
ntdll/tests: Add more tests for RtlDosPathNameToNtPathName_U().
ntdll: Also accept \??\ as a global namespace prefix in RtlDosPathNameToNtPathName_U().
quartz/tests: Add some tests for interfaces delegated by the filter graph.
quartz: Return E_NOTIMPL from IBasicAudio methods if no filter supporting IBasicAudio is attached.
ntoskrnl.exe/tests: Add basic tests for ZwLoadDriver()/ZwUnloadDriver().
winedevice: Make driver (un)loading synchronous.
winedevice: Reimplement (un)loading drivers on top of ZwLoadDriver()/ZwUnloadDriver().
Zhiyi Zhang (7):
crypt32/tests: Add revocation flags tests for CertGetCertificateChain().
crypt32: Properly check root certificate in CERT_CHAIN_REVOCATION_CHECK_CHAIN.
winhttp: Add support for WINHTTP_ENABLE_SSL_REVOCATION.
comctl32/tests: Remove pager skip check.
comctl32/tests: Add WM_NOTIFYFORMAT tests for pager.
comctl32/pager: Support WM_NOTIFYFORMAT message.
comctl32/tests: Fix a memory leak.
Zixing Liu (1):
po: Update Simplified Chinese translation.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 3.14 is now available.
What's new in this release (see below for details):
- Support for DXTn texture decompression.
- Deferral support for MSI install actions.
- Support for Japanese keyboard in DirectInput.
- More improvements in the standard Task Dialog.
- A few more icons in Shell32.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.14.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.14.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.14 (total 36):
14552 Chaos League screen is black
18201 Unable to find the entry point L"CryptExtAddPFX" in L"cryptext.dll"
20961 RegEditX 2.x/3.x reports 'Internal error: could not find RegEdit window' on startup (Wine's builtin 'regedit.exe' needs to provide 'RegEdit_RegEdit' window class name)
24674 Civilization V shows white screen instead of video when staring the game
29474 IconsExtract: Tooltips for Search, Save, Copy, [icon] Properties, and Close buttons do not appear when hovering mouse over button.
29872 Guild Wars: Character graphic is corrupted
30641 wine silently replaces requests for d3d texture formats not supported by hardware with invalid requests
30787 Heroes of Might and Magic V Map Editor takes minutes to start up (winver>=Win2000)
34989 Multiple installers using Caphyon 'Advanced Installer' (AI) technology hang (Atlassian SourceTree v1.3.2, League of Legends 2013+) (deferred type 1 custom action executed before regular type 1 custom action)
36742 Windows 7 USB/DVD download tool shows transparent controls (missing 'BrushTypeTextureFill' support)
37147 Cube World crashes on unimplemented function msvcp110.dll.?_Internal_clear@_Concurrent_vector_base_v4@details@Concurrency@@IAEIP6AXPAXI@Z@Z
37624 Adobe CS4 installer fails in 'Adobe_FirewallAuthorize' custom action (multiple 'INetFwOpenPort' property accessors are stubs)
37773 Mentor Graphics DK Design Suite 5.3/5.4 - Handel-C compiler extremely slow under Wine compared to Windows (heap manager)
41573 Battle.net: SystemSurvey.exe and Battle.net helper.exe crash (GUI process can't attach to parent process console, 'AttachConsole' is a stub)
42470 Frequent critical section timeouts in winetricks dotnet46
42744 Ninite don't installs apps
43125 Device reports coming in too fast
44490 Zwei: The Arges Adventure videos play distorted (Indeo 5 encoded)
44981 Xenserver console and Vmware management console (client) v5.5 installer fails on 'hcmon' driver service ('EventLog\\System' needs 'Sources' registry key present for WinVer < Windows 7)
45167 Acronis Disk Director 12 installer fails: action L"_USRCUSTACT_MsiFltSrvInstall_fltsrv_component" returned 1603 (setupapi lasterror leakage)
45382 Multiple games crash with CSMT enabled (The Sting! demo, Call to Power II)
45457 Irfanview 4.x crashes after ALT key press
45490 'winedbg' backtraces broken for 32-bit processes in 64-bit WINEPREFIX
45495 Toontown Corporate Clash: fails to launch
45521 64-bit Sentinel HASP hardlock.sys kernel driver crashes due ntoskrnl emulate_instruction not handling 'cli' and 'sti'
45529 Custom color scheme applied but wine not respecting current text color of scheme on window columns and statusbar.
45530 No$Gba crashes with pulseaudio assertion in waveOutOpen
45535 Rekordbox 5.3.0 terminates with the message "Unexpected application error" (dwrite:dwritetextlayout_Draw out-of-bounds access on empty clustermetrics after failure to resolve layout fonts)
45537 Microsoft .NET Framework 4.x installation fails with Wine 3.13 in 64-bit WINEPREFIX
45552 Kolab E14 Client installation fails
45554 winex11.drv build fail with GCC 4.5
45602 Wargaming Game Center needs msvcp140.dll._Set_last_write_time
45603 Total War:Arena needs POWRPROF.dll.PowerEnumerate
45643 chrome x64 sandbox >=win8 needs SetProcessMitigationPolicy
45644 chromium 64-bit sandbox >=win10 needs UpdateProcThreadAttribute to handle PROC_THREAD_ATTRIBUTE_CHILD_PROCESS_POLICY
45648 chromium 32-bit sandbox needs UpdateProcThreadAttribute to handle PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY
----------------------------------------------------------------
Changes since 3.13:
Akihiro Sagawa (10):
winex11: Fix Japanese 106 keyboard scan/vkey code tables.
user32: Support Japanese keyboard type in GetKeyboardType.
dinput/tests: Use GET_DIDEVICE_SUBTYPE macro in keyboard type tests.
dinput/tests: Add more tests for keyboard subtypes.
dinput: Return DIDEVTYPEKEYBOARD_JAPAN106 subtype when it is used.
dinput/tests: Peek messages for the target window only.
dinput/tests: Skip DIK code tests if the keyboard type doesn't match.
dinput/tests: Add DIK code tests for symbols and punctuations.
dinput: Fix DIK code mappings on Japanese 106 keyboard.
dinput: Correct key name mappings on Japanese 106 keyboard.
Alex Henrie (7):
quartz: Remove redundant if clause from WAVEParser_InputPin_PreConnect.
quartz: Use wine_dbgstr_longlong in WAVEParserImpl_seek.
quartz: Rewrite add_data with CoTaskMemRealloc and error handling.
shell32: Rename IDI_SHELL_DOCUMENT to IDI_SHELL_FILE.
shell32: Add document icon.
shell32: Add window icon.
shell32: Add 512k and 314k floppy drive icons.
Alexandre Julliard (5):
winedump: Don't use strncat with source length.
shell32/tests: Don't use strncat with known large enough buffer.
oleaut32: Explicitly define call_double_method() to avoid function mismatch warning.
widl: Silence a gcc warning.
quartz: Remove some unnecessary casts.
Alistair Leslie-Hughes (5):
d3dx9: Return a mesh in D3DXCreateTeapot().
msxml3: Accept NormalizeAttributeValues property.
powrprof: Added PowerEnumerate stub.
odbccp32: Handle NULL parameter in SQLWritePrivateProfileStringW.
odbccp32: Correcly lookup driver in load_config_driver.
Andrew Eikum (7):
dsound: Correctly calculate angle between vectors with equal and opposite directions.
wbemprox/tests: Don't crash on VirtualBox.
wbemprox: Add support for Win32_PnPEntity table.
xaudio2: Fix XAUDIO2_VOICE_SENDS usage before version 2.4.
xaudio2: IXAPO::Reset returns void.
dinput: Use vid/pid for first chunk of product guid on OSX, too.
dinput: Fix mac build.
Andrey Gusev (1):
api-ms-win-devices-config-l1-1-0: Add dll.
Aric Stewart (1):
hidclass.sys: Unload all devices before unloading a minidriver.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Austin English (1):
setupapi: Set LastError on success in SetupInstallFromInfSectionW.
Charles Davis (1):
libwine: Use getsegmentdata(3) on Mac OS to find the end of the __TEXT segment.
Connor McAdams (2):
wined3d: Decompress DXTn 3D textures on upload.
d3d9/tests: Test DXT1 and DXT3 as well in volume_dxt5_test().
Daniel Lehman (4):
odbc32: Rename functions to avoid conflicts with native drivers.
oleaut32/tests: Add test for VarBstrFromI4.
oleaut32: Extend value range before getting absolute value in VarBstrFromI4.
kernel32/tests: Add some CompareStringA/W tests.
Dmitry Timoshkov (6):
kernel32: Add support for MOVEFILE_WRITE_THROUGH to MoveFile.
kernel32: Add support for FILE_FLAG_WRITE_THROUGH to CreateFile.
kernel32/tests: Add a test for holding a critical section during process termination.
ntdll: Don't allow blocking on a critical section during process termination.
kernel32: Set environment variable %PUBLIC% at process start-up.
winecfg: Allow to disable MIME-type associations.
Fabian Maurer (10):
ntoskrnl: Emulate sti/cli instructions on x86_64.
winmm: Don't crash in waveOutOpen when nSamplesPerSec is 0 and add tests.
hnetcfg/tests: Pass correct parameter to WNetGetUniversalNameW.
wnet: Make WNetGetUniversalNameW return required size when buffer is too small and add test.
hnetcfg: Add more GUIDs.
kernel32: Add stub for SetProcessMitigationPolicy.
kernel32: Make UpdateProcThreadAttribute handle PROC_THREAD_ATTRIBUTE_CHILD_PROCESS_POLICY.
kernel32: In UpdateProcThreadAttribute handle PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY.
cmd: Handle quotes when parsing the folders in the PATH environment variable.
ntdll: Add stub for NtCreateLowBoxToken.
Gijs Vermeulen (2):
wine.inf: Add "Sources" key.
setupapi/tests: Add SetupInstallFromInfSectionA test.
Guillaume Charifi (1):
kernel32: Add stub for GetDynamicTimeZoneInformationEffectiveYears().
Henri Verbeet (18):
d3d10: Handle D3D10_DRIVER_TYPE_WARP in D3D10CreateDevice().
d3d11: Handle D3D_DRIVER_TYPE_WARP in D3D11CreateDevice().
wined3d: Clarify a TRACE in buffer_init().
d3d8/tests: Test DXT1 and DXT3 as well in volume_dxt5_test().
wined3d: Invalidate the FFP vertex shader when diffuse/specular attribute presence changes.
ddraw/tests: Rewrite DeviceLoadTest().
wined3d: Pass a wined3d_shader_context structure to shader_glsl_get_register_name().
wined3d: Make the "is_color" parameter to shader_glsl_get_register_name() optional.
wined3d: Get rid of the "reg_name" field in struct glsl_src_param.
wined3d: Pass a wined3d_string_buffer to shader_glsl_get_register_name().
d3d11/tests: Run the tests in parallel.
wined3d: Rename build_dxtn_alpha_table() to build_bc3_alpha_table().
wined3d: Trace command stream opcodes.
wined3d: Rename wined3d_adapter_init_nogl() to wined3d_adapter_no3d_init().
wined3d: Share common code between wined3d_adapter_init() and wined3d_adapter_no3d_init().
wined3d: Set a LUID for WINED3D_NO3D adapters as well.
wined3d: Move OpenGL initialisation code to adapter_gl.c.
d2d1/tests: Run the tests in parallel.
Hua Meng (14):
msvcp120: Add tests for _Concurrent_vector->segment.
msvcp90: Add implementation of _Concurrent_vector_dtor.
msvcp90: Add implementation of _Concurrent_vector_Internal_capacity.
msvcp90: Add implementation of _Concurrent_vector_Internal_reserve.
msvcp90: Add implementation of _Concurrent_vector_Internal_clear.
msvcp90: Add implementation of _Concurrent_vector_Internal_copy.
msvcp90: Add implementation of _Concurrent_vector_Internal_assign.
msvcp90: Add implementation of _Concurrent_vector_Internal_grow_by.
msvcp90: Add implementation of _Concurrent_vector_Internal_grow_to_at_least_with_result.
msvcp90: Add implementation of _Concurrent_vector_Internal_swap.
msvcp90: Add implementation of _Concurrent_vector_Internal_compact.
msvcp90: Add implementation of _Concurrent_vector_Internal_resize.
msvcp90: Add implementation of _Concurrent_vector_Internal_push_back.
msvcp120: Add tests for _Concurrent_vector_Internal_compact.
Jacek Caban (31):
d3dcompiler/tests: Load d3dcompiler_43.dll dynamically.
d3dcompiler: Use d3dcompiler_47 for importlib.
winevulkan: Expose driver vkGetInstanceProcAddr via winevulkan exports.
winevulkan: Mark ICD and thunking functions as private.
mscat.h: Add missing declarations.
odbc32: Add SQLGetDiagRecA implementation.
ntdll/tests: Add pipe state tests.
server: Store pipe state in pipe_end struct and return it in FSCTL_PIPE_PEEK.
server: Improve FSCTL_PIPE_PEEK error handling.
server: Improve named pipe read error handling.
server: Improve named pipe write error handling.
server: Improve FSCTL_PIPE_TRANSCEIVE error handling.
server: Don't use set_no_fd_status for error handling in pipe objects.
server: Allow pipe server fd caching throughout its whole lifetime.
kernel32: Add AttachConsole implementation.
kernel32/tests: Add more pipe tests.
ntdll/tests: Add more NtQueryInformationFile tests.
server: Store named_pipe reference in pipe_end struct.
server: Use common implementation for pipe client and server get_sd and set_sd.
server: Use common implementation for client and server get_file_info.
server: Use pipe stored in pipe_end in get_named_pipe_info.
server: Use pipe stored in pipe_end in set_named_pipe_info.
server: Remove no longer needed pipe reference from pipe server object.
server: Remove no longer needed client and server pointers.
winegcc: Improve heuristics for -m32/-m64 options in get_lib_dir.
server: Use pipe_end state in FSCTL_PIPE_LISTEN implementation.
server: Use pipe_end state in FSCTL_PIPE_DISCONNECT implementation.
server: Use separated async queue for listeners.
server: Use pipe_end state in find_available_server.
server: Remove no longer needed pipe_state enum.
server: Share more code between pipe client and server destructors.
Jon Doron (1):
kernel32: Fix BeginUpdateResource structure layout.
Józef Kucia (27):
winevulkan: Correctly allocate memory for VkCommandBuffers (Coverity).
winex11: Remove redeclaration of VkXlibSurfaceCreateFlagsKHR.
dxgi: Set transfer image usage for Vulkan swapchain images.
dxgi: Introduce helper function to destroy partially initialized swapchain.
dxgi: Wait for Vulkan queue to become idle before destroying swapchain.
dxgi: Factor out d3d12_swapchain_create_buffers().
dxgi: Create user images for swapchain formats not supported by Vulkan.
dxgi: Blit user buffers to Vulkan swapchain buffers while presenting.
d3d12/tests: Add test for R8G8B8A8_UNORM swapchain format.
dxgi/tests: Make sure that command queue is idle before destroying it.
include/d3d12: Add PFN_D3D12_GET_DEBUG_INTERFACE declaration.
dxgi/tests: Add option to enable Direct3D 12 validation.
wined3d: Reject cross-device blits.
ddraw/tests: Add tests for cross-device blits.
ddraw/tests: Fix IDirectDraw leaks.
amstream: Handle stream object parameter for IDirectDrawMediaStream.
dinput/tests: Use GetModuleHandleA() instead of LoadLibraryA() (Coverity).
winex11: Add simple fps counter for Vulkan.
wined3d: Add fall through comment in texture2d_blt_fbo() (Coverity).
wined3d: Use snprintf() in init_debug_buffer() (Coverity).
wined3d: Use snprintf() in shader_arb_request_a0() (Coverity).
wined3d: Mark vOutputControlPointID register as scalar.
wined3d: Allow copying between different texture types.
d3d11/tests: Add a test for CopySubresourceRegion() with 3D textures.
dxgi: Return DXGI_ERROR_SDK_COMPONENT_MISSING from DXGIGetDebugInterface1().
d3d12: Return DXGI_ERROR_SDK_COMPONENT_MISSING from D3D12GetDebugInterface().
dxgi: Prefer vkGet*ProcAddr() for loading Vulkan functions.
Kai Krakow (1):
winebus.sys: Do not print HID report read errors.
Marcus Meissner (2):
msi: Do not free hPackage twice or uninitialized (Coverity).
ole32: Read vt into a DWORD, as propvariant->vt is 16 bit (Coverity).
Matteo Bruni (2):
d3dcompiler: Make types array static const.
dxgi: Stub DXGIGetDebugInterface1().
Michael Stefaniuc (113):
mmdevapi: Use the ARRAY_SIZE() macro.
localspl: Use the ARRAY_SIZE() macro.
mapi32: Use the ARRAY_SIZE() macro.
krnl386.exe16: Use the ARRAY_SIZE() macro.
inetcpl.cpl: Use the ARRAY_SIZE() macro.
hhctrl.ocx: Use the ARRAY_SIZE() macro.
dpnet: Use the ARRAY_SIZE() macro.
dx8vb: Use the ARRAY_SIZE() macro.
fusion: Use the ARRAY_SIZE() macro.
evr: Use the ARRAY_SIZE() macro.
d3d10: Use the ARRAY_SIZE() macro.
d3d8: Use the ARRAY_SIZE() macro.
d3dcompiler: Use the ARRAY_SIZE() macro.
d3dxof: Use the ARRAY_SIZE() macro.
dnsapi: Use the ARRAY_SIZE() macro.
winemac.drv: Print the debug string and not the pointer to it.
amstream: Use the ARRAY_SIZE() macro.
taskmgr: Use the ARRAY_SIZE() macro.
browseui: Use the ARRAY_SIZE() macro.
gameux: Use the ARRAY_SIZE() macro.
inetcomm: Use the ARRAY_SIZE() macro.
iphlpapi: Use the ARRAY_SIZE() macro.
itss: Remove a superfluous variable initialization.
itss: Use the ARRAY_SIZE() macro.
attrib: Use the ARRAY_SIZE() macro.
clock: Use the ARRAY_SIZE() macro.
hostname: Use the ARRAY_SIZE() macro.
icinfo: Use the ARRAY_SIZE() macro.
net: Use the ARRAY_SIZE() macro.
taskkill: Use the ARRAY_SIZE() macro.
ipconfig: Use the ARRAY_SIZE() macro.
msiexec: Use the ARRAY_SIZE() macro.
uninstaller: Use the ARRAY_SIZE() macro.
wineboot: Use the ARRAY_SIZE() macro.
wordpad: Use the ARRAY_SIZE() macro.
winetest: Use the ARRAY_SIZE() macro.
mountmgr.sys: Use the ARRAY_SIZE() macro.
msrle32: Use the ARRAY_SIZE() macro.
msacm32: Use the ARRAY_SIZE() macro.
mpr: Use the ARRAY_SIZE() macro.
scrobj: Use the ARRAY_SIZE() macro.
storage.dll16: Use the ARRAY_SIZE() macro.
msvideo.dll16: Use the ARRAY_SIZE() macro.
dxdiagn: Use the ARRAY_SIZE() macro.
localui: Use the ARRAY_SIZE() macro.
inetmib1: Use the ARRAY_SIZE() macro.
kernel32: Use the ARRAY_SIZE() macro.
mciwave: Use the ARRAY_SIZE() macro.
midimap: Use the ARRAY_SIZE() macro.
mscms: Use the ARRAY_SIZE() macro.
msctf: Use the ARRAY_SIZE() macro.
msscript.ocx: Use the ARRAY_SIZE() macro.
ntdll: Use the ARRAY_SIZE() macro.
dmloader: Remove an unused impl_from_ helper.
dmstyle: Remove an unused impl_from_ helper.
dmime: Remove unused impl_from_ helpers.
dmscript: Reimplement ParseDescriptor() for IDirectMusicScript.
dmscript/tests: Add some IDirectMusicObject::ParseDescriptor() tests.
gdi.exe16: Use the ARRAY_SIZE() macro.
devenum: Use the ARRAY_SIZE() macro.
hnetcfg: Use the ARRAY_SIZE() macro.
msdmo: Use the ARRAY_SIZE() macro.
msinfo32: Use the ARRAY_SIZE() macro.
msi: Avoid an ARRAY_SIZE-like macro.
joy.cpl: Use the ARRAY_SIZE() macro.
odbccp32: Use the ARRAY_SIZE() macro.
opengl32: Use the ARRAY_SIZE() macro.
msvfw32: Use the ARRAY_SIZE() macro.
packager: Use the ARRAY_SIZE() macro.
qcap: Use the ARRAY_SIZE() macro.
dsound: Use the ARRAY_SIZE() macro.
qedit: Use the ARRAY_SIZE() macro.
qmgr: Use the ARRAY_SIZE() macro.
serialui: Use the ARRAY_SIZE() macro.
t2embed: Use the ARRAY_SIZE() macro.
taskschd: Use the ARRAY_SIZE() macro.
uiribbon: Use the ARRAY_SIZE() macro.
user.exe16: Use the ARRAY_SIZE() macro.
user32: Use the ARRAY_SIZE() macro.
userenv: Use the ARRAY_SIZE() macro.
winealsa.drv: Use the ARRAY_SIZE() macro.
winebus.sys: Use the ARRAY_SIZE() macro.
winejoystick.drv: Use the ARRAY_SIZE() macro.
version: Use the ARRAY_SIZE() macro.
wineoss.drv: Use the ARRAY_SIZE() macro.
wineps.drv: Use the ARRAY_SIZE() macro.
winepulse.drv: Use the ARRAY_SIZE() macro.
wlanapi: Use the ARRAY_SIZE() macro.
wldap32: Use the ARRAY_SIZE() macro.
wnaspi32: Use the ARRAY_SIZE() macro.
extrac32: Use the ARRAY_SIZE() macro.
regsvr32: Use the ARRAY_SIZE() macro.
xolehlp: Use the ARRAY_SIZE() macro.
wsdapi: Use the ARRAY_SIZE() macro.
winebrowser: Use the ARRAY_SIZE() macro.
winemenubuilder: Use the ARRAY_SIZE() macro.
winhlp32: Use the ARRAY_SIZE() macro.
winhlp32: Avoid an ARRAY_SIZE-like macro.
windowscodecs: Use the ARRAY_SIZE() macro.
mscoree: Use the ARRAY_SIZE() macro.
urlmon: Use the ARRAY_SIZE() macro.
shdocvw: Use the ARRAY_SIZE() macro.
imm32: Use the ARRAY_SIZE() macro.
netstat: Use the ARRAY_SIZE() macro.
msvcrt: Use the ARRAY_SIZE() macro.
winemac.drv: Use the ARRAY_SIZE() macro.
sane.ds: Avoid an ARRAY_SIZE-like macro.
sane.ds: Use the ARRAY_SIZE() macro.
ieframe: Use the ARRAY_SIZE() macro.
wineandroid.drv: Use the ARRAY_SIZE() macro.
msi: Unlock msi_custom_action_c on the error paths.
msvcp60: Use the ARRAY_SIZE() macro.
msvc90: Use the ARRAY_SIZE() macro.
Michał Janiszewski (1):
strmbase: Remove unused function.
Nikolay Sivov (17):
comctl32/tests: More tests for HTREEITEM layout.
wmp/tests: Fix a minor leak on error path (Coverity).
comctl32/header: Fix item text color.
comctl32: Fix background and text color for DrawStatusText().
shell32: Support BYREF index in FolderItems::Item().
dwrite: Avoid possible out-of-bounds cluster metrics access.
wmp: Make it possible to query IUnknown from IWMPControls.
user32/tests: Add some ListBox tests for anchor index.
comctl32/tests: Add some ListBox tests for anchor index.
user32/listbox: Update anchor index on LB_SETSEL.
comctl32/listbox: Update anchor index on LB_SETSEL.
d2d1: Fix scaling when rendering text in bitmap mode.
dwrite: Multiply run analysis transform by dpi scale factor.
gdiplus/tests: Fix region leak (Coverity).
winecfg: Update changed state on associations checkbox click.
d2d1: Add ID2D1DeviceContext stub.
wmp: Improve media items handling.
Piotr Caban (10):
wbemprox: Add Win32_NetworkAdapterConfiguration::IPAddress property.
wbemprox: Add Win32_NetworkAdapterConfiguration::IPSubnet property.
msvcp90: Fix EOF delimiter handling in basic_istream<char>::ignore.
msvcp110: Add _Last_write_time(wchar_t) implementation.
msvcp140: Add _Last_write_time implementation.
msvcp90: Add time_get<char>::_Getint implementation.
msvcp90: Add time_get<char>::do_get_time implementation.
msvcp90: Add time_get<char>::do_get_year implementation.
msvcp90: Add time_get<char>::do_get_weekday implementation.
msvcp90: Add time_get<char>::do_get_monthname implementation.
Stefan Dösinger (5):
wined3d: Fix WINED3D_MCS_COLOR2 handling in wined3d_ffp_get_vs_settings().
d3d9/tests: Add a test for D3DMCS_COLOR{1/2}.
d3d8/tests: Add a test for D3DMCS_COLOR{1/2}.
ddraw/tests: Add a test for D3DMCS_COLOR{1/2}.
msvcp140/tests: Test _Last_write_time and _Set_last_write_time.
Zebediah Figura (33):
msvfw32: Reimplement ICGetDisplayFormat().
devenum/tests: Add some more traces in test_devenum().
devenum/tests: Remove a duplicate test.
msi: Implement deferral for standard and custom actions.
msi: Generate unique names for 32- and 64-bit custom action server pipes.
dbghelp: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
dbghelp/dwarf: Use the correct backend CPU in dwarf2_virtual_unwind().
dbghelp/dwarf: Allow get_context_reg() to handle different register sizes.
dbghelp/dwarf: Use the word size of the target process.
dbghelp: Correctly determine the dyld image info address.
dbghelp/msc: Use the word size of the target process.
kernel32: Don't clear WINEDEBUG in the debugger process if +winedbg is set.
winedbg/gdbproxy: Use the WINEDEBUG interface for debugging winedbg.
winedbg/gdbproxy: Don't try to single-step a terminated process.
winedbg/gdbproxy: Simplify packet_verbose().
winedbg: Ignore EXCEPTION_INVALID_HANDLE.
setupapi: Remove a pointless cast.
setupapi: Use a handle table to allocate device nodes.
setupapi: Add an internal helper for SetupDiSetDeviceRegistryProperty().
setupapi: Merge the DeviceInstance and DeviceInfo structs.
setupapi: Don't use SP_DEVINFO_DATA in internal structs.
setupapi: Add helper functions to get the path of the device instance keys.
setupapi: Merge the InterfaceInfo and InterfaceInstances structs.
setupapi: Correctly implement SetupDiCreateDeviceInterfaceRegKey().
setupapi: Correctly implement SetupDiDeleteDeviceInterfaceRegKey().
msi: Don't start the custom action server inside of custom_client_thread().
msi: Protect communication with the custom action server with a critical section.
msi: Don't refcount the msi_custom_action_info struct.
msiexec: Don't keep the custom action GUID in the main thread's stack.
msi/tests: Add a test for asynchronous custom actions.
ntoskrnl.exe: Implement IoSetDeviceInterfaceState().
setupapi: Implement SPINT_LINKED.
setupapi: Implement DIGCF_PRESENT.
Zhiyi Zhang (13):
comctl32/taskdialog: Update vertical layout only when expando button clicked.
comctl32/taskdialog: Add support for navigating page.
comctl32/taskdialog: Add support for TDM_SET_BUTTON_ELEVATION_REQUIRED_STATE.
comctl32/taskdialog: Add support for TDM_{SET,UPDATE}_ELEMENT_TEXT.
comctl32/taskdialog: Add support for TDF_SIZE_TO_CONTENT.
comctl32/taskdialog: Add support for TDM_UPDATE_ICON.
comctl32/taskdialog: Add vertical spacing for radio buttons.
comctl32/taskdialog: Fix center positioning.
iphlpapi: Don't use the client buffer in IcmpSendEcho().
iphlpapi: Report NO_ERROR when IcmpSendEcho() succeeded.
iphlpapi: Improve parameter checking for IcmpSendEcho().
include: Add missing notification codes.
include: Fix a typo.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 3.13 is now available.
What's new in this release (see below for details):
- Vulkan support on macOS using MoltenVK.
- Initial support for performance data in the registry.
- Mono engine updated with some bug fixes.
- Support for fetching BIOS information on Linux.
- GnuTLS also used on macOS when available.
- Improvements in the standard Task Dialog.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.13.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.13.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.13 (total 28):
5657 EVE Online reports VM Size as 0 while on Windows it reports the memory usage (NtQueryInformationProcess ProcessVmCounters info class: actual value for 'PagefileUsage' required)
18734 DlgDirList(DDL_DRIVES|DDL_DIRECTORY) on 16-bits displays files on listbox in Windows but not Wine.
24374 Driller crashes in process PE entry point due to Wine's mis-align workaround for 32-bit entry point asm wrapper (MoleBox Ultra v4.x)
30141 1848 (strategy game) becomes unresponsive after the first mouse click
31829 Ad Astra fails to start when music enabled (MThd chunk support missing)
35928 Crash handlers/debuggers fail to display user-interface when invoked for crashing (non-interactive) service processes (inherited Wine service window station/desktop)
39566 Missing player model on Raiden III
40742 cmd.exe: buffer overflow while parsing qualifiers
42304 Caladrius Blaze, Raiden IV: Overkill show black screen on title menu (needs native vcrun2013)
42669 SolveigMM Video Splitter Business Edition v6.1: Crashes inside gdi32.GetCharacterPlacementW
43642 Internet Download Manager TDI Driver 'idmtdi.sys' crashes on unimplemented function ntoskrnl.exe.IoReleaseRemoveLockAndWaitEx
43759 Adobe Lightroom 6 doesn't start (runtime error)
44305 GetSystemFirmwareTable() API returns empty SMBIOS records on Ubuntu 16.04 x86_64
44952 cmd.exe skips statements after if statement inside for loop
45067 UNORM/SNORM immediate constants not supported for UAV stores (Claybook, Just Cause 3)
45095 Planetside 2 needs SPI_GETAUDIODESCRIPTION SystemParametersInfo action support
45274 Multiple applications crash on unimplemented function msvcp140.dll.?_Syserror_map@std@@YAPEBDH@Z (Native Instruments Traktor Pro 2)
45292 SuperTux 0.5.1 does not start
45295 toolbag 3.x crashes on unimplemented function api-ms-win-crt-runtime-l1-1-0.dll._crt_at_quick_exit
45333 Add diagnostic 'mscoree.dll.CorIsLatestSvc' stub (NGEN service) to hint at broken Microsoft .NET Frameworks installation (Wine-Mono not uninstalled and/or 'mscoree.dll' placeholders not removed prior install)
45370 redefinition of typedef 'DWRITE_GLYPH_RUN_DESCRIPTION'
45378 vSphere 5.5 client 'hcmon.sys' driver crashes on unimplemented function ntoskrnl.exe.IoUnregisterPlugPlayNotification
45393 TextureCookerService.exe (part of ArcGIS Desktop 10.6) needs api-ms-win-crt-stdio-l1-1-0.dll.gets_s
45394 Reinstalling ArcGIS Desktop 10.6 calls unimplemented function msvcr120.dll._SetWinRTOutOfMemoryExceptionCallback
45428 Crash Bandicoot N. Sane Trilogy (Steam) crashes while entering main menu in ntdll.NtGetContextThread() with NULL context
45439 Visual Basic setup toolkit fails to run if path contains a voiced Katakana character.
45445 1C:Enterprise 8 platform doesn't install
45448 vSphere 5.5 client 'hcmon.sys' driver crashes on unimplemented function ntoskrnl.exe.KeFlushQueuedDpcs
----------------------------------------------------------------
Changes since 3.12:
Akihiro Sagawa (8):
winmm: Don't allow to set time division property while playing.
winmm: Preserve fractions in microseconds to compensate rounding errors.
winmm: Use microsecond unit in MIDI stream position variable to simplify the code.
winmm/tests: Add more MIDI stream position tests.
winmm: Make TIME_TICKS position continuous.
winmm: Support TIME_MIDI position in MIDI stream.
kernel32/tests: Add more LCMapString tests.
kernel32: Fix LCMapString(LCMAP_HALFWIDTH) in some cases.
Alex Henrie (9):
ole32: Return IUnknown from GITCF_CreateInstance if requested.
ntdll/tests: Add SystemFirmwareTableInformation tests.
kernel32/tests: Add GetSystemFirmwareTable tests.
ntdll: Return BIOS info from NtQuerySystemInformation on Linux.
kernel32: Connect GetSystemFirmwareTable to NtQuerySystemInformation.
ntdll: Return system info from NtQuerySystemInformation on Linux.
ntdll: Return board info from NtQuerySystemInformation on Linux.
ntdll: Return chassis info from NtQuerySystemInformation on Linux.
winevulkan: Correct spelling of "of" in a comment.
Alex Villacís Lasso (1):
user.exe16: Fix handling of DDL_DRIVES flag in DlgDirList.
Alexandre Julliard (13):
server: Store the surface rectangle in the server.
server: Clip visible region to the surface rectangle instead of the desktop.
server: Return the surface rect as top clipping rect.
user32: Remove FIXMEs from physical<->logical mapping functions.
oleaut32: Remove unnecessary consts.
user32: Return the full MINMAXINFO data from WINPOS_GetMinMaxInfo().
user32: Retrieve the screen metrics from the monitor information.
user32: Move monitor functions to sysparams.c.
user32: Implement monitor rectangle filtering on the user32 side.
user32: Take DPI awareness into account in GetDpiForMonitorInternal().
user32: Fetch client and window rectangles in a single call.
user32: Make the MonitorFromRect() argument const.
winedump: Print the imports thunk address also for 64-bit.
Alistair Leslie-Hughes (1):
include: Add more DSOP defines.
Andrew Eikum (1):
winemac: Implement Vulkan driver on top of MoltenVK.
Andrey Gusev (1):
po: Update Ukrainian translation.
André Hentschel (1):
winedbg: Check for visible window station before displaying crash dialog.
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Austin English (2):
ntoskrnl.exe: Add a stub for KeFlushQueuedDpcs.
ntoskrnl.exe: Add IoReleaseRemoveLockAndWaitEx stub.
Charles Davis (1):
shell32: Don't use Carbon on Mac OS to find the Trash.
Daniel Lehman (5):
msvcr110/tests: Add GetNumberOfVirtualProcessors tests.
msvcr110: Create current scheduler in _CurrentScheduler::_GetNumberOfVirtualProcessors.
gdi32/tests: Add test for clipped polygon.
gdi32: Update edgetable limits with top and bottom.
msvcr110: Create current scheduler in _CurrentScheduler::_Id.
Detlef Riekenberg (1):
winhttp/tests: Skip the tests when we encounter a failure.
Dmitry Timoshkov (16):
winedump: Correctly declare the array of segments.
winedump: Avoid sign extension in tlb_read_short().
winedump: Stop prepending every line of information with an offset.
winedump: Consistently print hex numbers with leading zeros and 'h' suffix.
winedump: Fix version printing.
winedump: Add print_string() helper.
winedump: Use common binary dumper for typelib.
winedump: Add support for SLTG typelibs.
advapi32/tests: Add more tests for performance counters.
include: Add more definitions for performance counters.
winspool: Add performance counters service stubs.
advapi32: Add initial support for querying performance counters data.
advapi32: Performance providers' Open() expects to see the configured name as its parameter.
advapi32: If the query is not specified the default query is "Global".
advapi32: Read the configured object list for the performance provider.
kerberos: SpInstanceInit() doesn't need a special implementation.
Fabian Maurer (2):
user32/menu: Release menu in HiliteMenuItem() to avoid deadlock.
wrc: Don't crash when parsing COMBOBOX element without style.
Hans Leidekker (5):
msi: Use msi_get_package_code in msi_publish_product_properties.
bcrypt: Move GnuTLS support to a new file.
bcrypt: Move macOS support to a new file.
bcrypt: Default to building with GnuTLS support on macOS, if present.
bcrypt: Move the ASN1 buffer functions to gnutls.c.
Henri Verbeet (1):
include: Avoid redefining the DWRITE_GLYPH_RUN_DESCRIPTION typedef.
Hugh McMaster (6):
regedit: Remove array already present in main.h.
regedit: Don't check if heap_xalloc() succeeded in the caller.
regedit: Free allocated memory after calling GetValueName().
regedit: Always display DWORD values in hexadecimal when initializing the editor dialog.
regedit: Replace Hungarian notation used with struct edit_params members.
regedit: Do not overwrite a hex data type with REG_BINARY when modifying a value.
Huw D. M. Davies (1):
winspool: Remove ordinals from the performance functions.
Jacek Caban (6):
mshtml: Add IHTMLPerformance::navigation property implementation.
mshtml: Add IHTMLPerformance::timing property implementation.
mshtml: Expose window.performance property to scripts.
mshtml: Use DWORD for event id argument in node-specific event handlers.
winegcc: Check also for unsuffixed lib/ dir in get_lib_dir.
wine/vulkan.h: Properly declare enum values that use value attribute in spec.
Jactry Zeng (2):
riched20/tests: Rewrite tests for ITextServices_TxGetNaturalSize().
riched20: Some cleanup for CHARFORMAT convertor functions.
Jason Edmeades (4):
cmd: Fix handle leak in if exists.
cmd: Handle special case tokens=* in for /f.
cmd: Expand the storage space for qualifiers.
cmd: Fix statements after 'else' inside for loops.
Johannes Brandstätter (1):
ntdll: Check for NULL context in NtGetContextThread.
Julian Rüger (1):
po: Update German translation.
Józef Kucia (28):
winevulkan: Generate code for supported core commands.
winevulkan: Pull in required types into Vulkan header.
winevulkan: Pull in 1.1 structures and enums into Vulkan header.
winevulkan: Convert VkDeviceGroupDeviceCreateInfo.
winevulkan: Implement VK_KHR_device_group_creation.
vulkan-1/tests: Introduce for_each_device() helper.
vulkan-1/tests: Add test for VK_KHR_device_group_creation.
winevulkan: Add TRACE() for created devices.
winevulkan: Allow running make_vulkan from any working directory.
winevulkan: Add driver functions for VK_KHR_device_group.
winevulkan: Implement VK_KHR_device_group.
winevulkan: Implement vkEnumerateInstanceVersion().
winevulkan: Use WINE_VK_VERSION to limit supported features.
winevulkan: Downgrade ERR() to WARN() in wine_vkEnumerateInstanceExtensionProperties().
winevulkan: Implement vkEnumerateInstanceLayerProperties() in ICD.
vulkan-1: Forward all functions directly to winevulkan.
wined3d: Separate feature level checks from shader model checks.
wined3d: Take into account all shader stages when determining feature level.
d3d11/tests: Add more tests for multisample resolve.
winevulkan: Remove vkEnumerateInstanceVersion() from Vulkan driver functions.
winevulkan: Remove vkAcquireNextImageKHR() from Vulkan driver functions.
winemac: Add missing entries to vulkan_funcs.
winevulkan: Generate get_vulkan_driver_*_proc_addr() helper functions.
winevulkan: Avoid FIXMEs for unsupported Vulkan functions.
vulkan-1/tests: Enumerate queue families.
d3d10core/tests: Add more tests for multisample resolve.
wined3d: Add GPU information for AMD Radeon RX Vega.
wined3d: Add GPU information for Intel HD Graphics 630.
Ken Thomases (6):
winemac: Extract a new class, WineBaseView, to be the superclass of WineContentView and future view classes.
winemac: Implement WineMetalView class.
winemac: Don't change the window's color space.
winemac: Interpret Windows bitmap data, especially window surfaces, as sRGB.
winemac: Disable macOS's App Nap energy-saving feature by default for Wine GUI processes.
dbghelp: Fix loading of Mach-O load commands for 64-bit binaries.
Louis Lenders (1):
mscoree: Add stub for CorIsLatestSvc to hint user at broken .NET installation.
Mark Jansen (3):
ntdll/tests: Tests for RtlIpv6StringToAddressEx.
ntdll/tests: Tests for RtlIpv4StringToAddressEx.
ntdll/tests: Add tests for RtlIpv6AddressToString and RtlIpv6AddressToStringEx.
Mathew Hodson (1):
msvcp90: Use the ARRAY_SIZE() macro.
Michael Müller (3):
browseui: Implement IProgressDialog::SetAnimation.
gdi32: Treat lpResults as optional in GetCharacterPlacement.
ole32: Support reading VT_BOOL, VT_R8 and VT_I8 into propery storage.
Michael Stefaniuc (44):
riched20: Avoid an ARRAY_SIZE-like macro.
winmm: Avoid an ARRAY_SIZE-like macro.
jscript: Use the ARRAY_SIZE() macro.
comctl32: Remove redundant NULL checks before Free().
atl: Use the ARRAY_SIZE() macro.
mlang: Use the ARRAY_SIZE() macro.
pdh: Use the ARRAY_SIZE() macro.
dmime: Simplify the track list parser.
dmime: Reimplement the track form parser.
imaadp32.acm: Avoid ARRAY_SIZE-like macros.
l3codeca.acm: Avoid ARRAY_SIZE-like macros.
msacm32: Avoid an ARRAY_SIZE-like macro.
dbghelp: Use the ARRAY_SIZE() macro.
msadp32.acm: Avoid ARRAY_SIZE-like macros.
msg711.acm: Avoid ARRAY_SIZE-like macros.
msgsm32.acm: Avoid an ARRAY_SIZE-like macro.
dxerr9: Use the ARRAY_SIZE() macro.
wineconsole: Use the ARRAY_SIZE() macro.
xcopy: Use the ARRAY_SIZE() macro.
winemine: Use the ARRAY_SIZE() macro.
wscript: Use the ARRAY_SIZE() macro.
winefile: Use the ARRAY_SIZE() macro.
dxerr8: Use the ARRAY_SIZE() macro.
wmic: Use the ARRAY_SIZE() macro.
start: Use the ARRAY_SIZE() macro.
dmusic: Sync up the dmobject.[ch] files.
dmusic: Reimplement ParseDescriptor() for DirectMusicCollection.
dmband: Reimplement ParseDescriptor() for DirectMusicBand.
dmcompos: Reimplement ParseDescriptor() for DirectMusicChordMap.
dmloader: Reimplement ParseDescriptor() for DirectMusicContainer.
dmstyle: Reimplement ParseDescriptor() for DirectMusicStyle.
dmime: Don't crash when DMSegment loads a MIDI file.
ole32: Use the ARRAY_SIZE() macro.
quartz: Use the ARRAY_SIZE() macro.
ntdll/tests: Avoid temp variables holding ARRAY_SIZE results.
oledlg: Use the ARRAY_SIZE() macro.
dswave: Reimplement ParseDescriptor() for DirectSoundWave.
oleacc: Use the ARRAY_SIZE() macro.
oledb32: Use the ARRAY_SIZE() macro.
secur32: Use the ARRAY_SIZE() macro.
sxs: Use the ARRAY_SIZE() macro.
wintrust: Use the ARRAY_SIZE() macro.
wbemdisp: Use the ARRAY_SIZE() macro.
vbscript: Use the ARRAY_SIZE() macro.
Michał Janiszewski (2):
ntdll/tests: Add RtlFindNextForwardRun{Set, Clear} tests.
ntdll: Prevent Find{Set, Clear}Run from reading past the end of bitmap.
Mingcong Bai (1):
po: Update Simplified Chinese translation.
Nikolay Sivov (7):
crypt32: Fix key buffer leak (Coverity).
po: Update Russian translation.
user32/button: Use per-window dpi settings.
comctl32/button: Use per-window dpi settings.
comctl32/taskdialog: Use per-window dpi settings.
comctl32/trackbar: Scale thumb size with resolution.
po: Update Russian translation.
Piotr Caban (10):
msvcp120: Fix concurrent_vector_int_dtor helper.
msvcp120: Test values returned by _Concurrent_vector_base_v4::_Internal_clear.
inetcpl.cpl: Add support for setting automatic proxy configuration.
ucrtbase: Don't fail if path ends with '\' character in stat functions family.
msi: Fix condition evaluation when comparing literal and integer.
msvcr80: Add gets_s implementation.
include/msvcrt: Add POSIX error codes to errno.h.
msvcp110: Add _Syserror_map implementation.
msvcp90: Don't set failbit in basic_istream::tellg.
msvcp60: Don't set failbit in basic_istream::tellg.
Roderick Colenbrander (1):
winevulkan: Implement vkGetDeviceQueue2.
Serge Gautherie (3):
windowscodecs: Fix an MSVC warning about get_decoder_info().
guiddef.h: REF* types do not depend on CINTERFACE.
shell32: Fix 2 MSVC warnings about flags.
Stefan Dösinger (3):
msvcp140: Implement _Temp_get.
msvcp120: Tr2::_Rename_wchar NULL ptr handling differs from tr2::_Rename.
msvcp140: Export _Rename.
Vincent Povirk (2):
mscoree: Use upgrade code to find installed Wine Mono version.
appwiz.cpl: Update Wine Mono to 4.7.3.
Zebediah Figura (5):
msi: Avoid starting the RPC server more than once for a given package.
msi: Create the custom action thread inside msiexec.exe.
msi: Avoid connecting to the RPC server more than once.
msi: Reuse the custom action server process where possible.
kernel32/tests: Load GetSystemFirmwareTable() dynamically.
Zhiyi Zhang (11):
user32/tests: Fix a memory leak.
user32: Send notification for the focused button in IsDialogMessage().
user32: Fix menu item rectangle calculation in GetMenuItemRect().
user32/tests: Sleep when sending mouse clicks too fast.
user32: Return FALSE for invalid handle in IsWindowEnabled().
comctl32/taskdialog: Use window handle to identify control internally.
comctl32/taskdialog: Add support for expanded information.
comctl32/taskdialog: Add support for expando button.
comctl32/taskdialog: Add support for verification box.
comctl32/taskdialog: Add support for footer icon.
comctl32/taskdialog: Add support for footer text.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 3.12 is now available.
What's new in this release (see below for details):
- Unicode data updated to Unicode 11.0.0.
- Proxy configuration dialog in the Internet control panel.
- Syntax fixes in the Cmd.exe command intepreter.
- Some more glyphs in the Wingdings font.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.12.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.12.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.12 (total 40):
18164 dlls/iphlpapi/ifenum.c: compiler warnings on NetBSD
18560 No crosshairs in Starfleet Academy
20986 Euler fails to make a computation with maxima.exe: maxima.exe fails to start
23048 Unreal Tournament 3 fails and locks up
24641 ProPresenter 4.x (.NET 3.5 WPF app) fails on startup (devenum CreateInstance() doesn't support IID_IUnknown)
27497 Regedit mangles registry keys containing embedded NULLs
29325 Stranded II: laggy mouse pointer in the inventory screen
30910 Lighting incorrectly drawn in Alien Shooter
34365 Splinter Cell: Blacklist error with d3d_texture:wined3d_texture_apply_state_changes
34916 cmd:batch fails on Windows 8 and 8.1
35427 Diplomacy (1999) crashes on startup
35706 Splinter Cell: Blacklist crashes with Field AO & SSAO
35902 Certificates signed using ECDSA signature can not be verified (>= Win Vista - affects EA Origin, Uplay, Blizzard App, MoonBot)
36798 kernel32/change.c fails on 3.16.x kernels
38599 Heroes of Might & Magic III HD Edition becomes unresponsive after starting a scenario
38689 Duke Nukem Forever: intense flickering, screen covered with grey
38849 valgrind shows an uninitialized variable in programs/cmd/tests/batch.c:WCMD_assoc
39218 advpack:advpack fails if privileges not high enough
39222 mstask:task_scheduler fails if privileges not high enough
39228 House of Caravan light sources are broken with ARB shaders enabled
39238 mscft:inputprocessor fails if privileges not high enough
39457 "for /R" tests fail when run in a directory containing spaces
40694 Invalid behavior of "C: && echo haha" or "C: & echo haha"
40706 FolderMerger cmd not valued, xcopy needs /k support
42602 ::CompareItem(LPCOMPAREITEMSTRUCT lpCompareItemStruct) bad sort compared to Windows
42823 cmd.exe behaves differently from Win7 regarding redefined labels
42931 CMD START: invalid argument
43049 League of Legends: massive performance regression
44585 Multiple applications and games need ntdll.LdrRegisterDllNotification/LdrUnregisterDllNotification implementation (Firefox 60+, Diablo III v2. 6. 1. 49286+, World of Warcraft, Overwatch)
44720 Intel Asteroids Direct3D12 sample requires ninput.dll.CreateInteractionContext
44967 xcopy does not copy empty subdirectories if options /s and /e without space
45051 cmd.exe for loop does not resolve wildcards with subdirectory
45052 cmd.exe: if-statement does not resolve wildcards
45355 FrameMaker 8: Abort with specific document due to USER lock error
45359 SHGetKnownFolderPath doesn't handle flag KF_FLAG_DONT_UNEXPAND
45387 arm64_map_dwarf_register: Don't know how to map register (64-66)
45389 odbccp32:misc fails if privileges are not high enough
45390 devenum:devenum fails if privileges are not high enough
45403 dwarf2_parse_variable(): Assertion `subpgm->func' failed
45410 Muv-Luv (Steam) wants USER32.dll.GetAutoRotationState semi-stub
----------------------------------------------------------------
Changes since 3.11:
Alex Henrie (5):
include: Add definitions of SERVICES_*_DATABASEW for generic compilers.
include: Add missing type declaration to CERT_EFSBLOB_VALUE_NAME.
iphlpapi: Cast caddr_t to char* before doing pointer arithmetic.
gdi32: Add DECLSPEC_HOTPATCH to GetDIBits.
include: Add SYSTEM_FIRMWARE_TABLE_INFORMATION to winternl.h.
Alexander Morozov (1):
ntoskrnl.exe: Improve KeInitializeTimerEx stub.
Alexandre Julliard (8):
schedsvc: Only restart the directory watch once we've received data.
user32: Don't copy window bits to or from the dummy surface.
server: Add a couple of rectangle helper functions.
server: Don't clip update regions to the desktop window.
comdlg32/filedlg: Resize the Places toolbar along with the dialog.
comctl32/taskdialog: Fix pointer cast warnings.
user32/tests: Remove a duplicate todo test.
user32: Update RedrawWindow behavior with explicit desktop window handle.
Alistair Leslie-Hughes (2):
user32: Support SPI_S/GETAUDIODESCRIPTION in SystemParametersInfo.
ntoskrnl.exe/tests: Add KeInitializeTimerEx tests.
Andrey Gusev (1):
msi: Remove checks for negative value.
André Hentschel (4):
dbghelp: Map SIMD dwarf registers on ARM64.
dbghelp: Recompute location after fixing it.
ole32/tests: Don't crash if EnumFormatEtc failed.
advpack: Use ARRAY_SIZE() macro.
Aurimas Fišeras (3):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Austin English (1):
winecfg: Recommend against overriding secur32.
Dmitry Timoshkov (18):
fonts: Add clock images to Wingdings font.
mstask: Use current time as trigger begin time when necessary.
mstask: Avoid an infinite loop.
schedsvc: Minor cleanup.
schedsvc: Avoid an infinite loop.
schedsvc: Use current time as trigger begin time when necessary.
user32/tests: Add a test for WM_MEASUREITEM when inserting an item to an owner-drawn listbox.
user32/tests: Add a message test for an owner-drawn sorted listbox.
user32/tests: Add some message tests for not an owner-drawn listbox.
user32: Fix order of items passed in WM_COMPAREITEM data.
user32: Fix the listbox sorting algorithm.
user32: For an owner-drawn listbox without strings WM_MEASUREITEM still needs correct itemData.
comctl32/listbox: Fix order of items passed in WM_COMPAREITEM data.
comctl32/listbox: Fix the listbox sorting algorithm.
oleaut32: Don't accept unsupported picture types in OleCreatePictureIndirect.
oleaut32: IPicture::get_hPal() supports only bitmaps.
oleaut32: IPicture::set_hPal() supports only bitmaps.
oleaut32/tests: Add tests for IPicture::get_hPal() and IPicture::set_hPal().
Fabian Maurer (6):
msvcrt: Use already existent oneexit_table functions for _onexit and _c_exit.
user32: Always release menu item in EnableMenuItem.
msvcrt: Use cdecl calling convention for atexit callback.
ucrtbase: Add _crt_at_quick_exit stub.
ucrtbase: Add quick_exit.
ucrtbase: Implement quick_exit and _crt_at_quick_exit.
Hans Leidekker (1):
configure: Allow building bcrypt with GnuTLS support on macOS.
Hua Meng (3):
msvcp120: Add test for Concurrent_vector_grow_by.
msvcp120: Add test for Concurrent_vector_grow_to_at_least_with_result.
msvcp120: Add test for Concurrent_vector_Internal_resize and reverse.
Huw D. M. Davies (1):
ntdll/tests: Skip the map protect tests if we can't disable no-exec.
Jason Edmeades (9):
cmd: Add support for wildcards in if exist.
cmd: Fix subdirectory prefix in for loops.
xcopy: Handle multiple switches concatenated without whitespace.
xcopy: Return code 1 for no files is never returned.
xcopy: Fix copying empty directories.
cmd: Support "c:<space>" etc when changing drive letters.
cmd: Call and goto finds the next matching label.
cmd: Fix issue in WCMD_assoc highlighted by valgrind.
xcopy: Add support for xcopy /k.
Julian Rüger (1):
po: Update German translation.
Józef Kucia (4):
include/d3d12: Fix typos.
dxgi: Avoid possible NULL pointer access in d3d11_swapchain_SetFullscreenState().
wined3d: Fix snorm/unorm immediate values for UAV writes.
d3d11/tests: Add test for unorm/snorm immediate constants.
Kim Malmo (1):
po: Update Norwegian translation.
Lauri Kenttä (2):
po: Update Finnish translation.
po: Update Finnish translation.
Louis Lenders (1):
ntoskrnl.exe: Add stub for IoUnregisterPlugPlayNotification.
Marcus Meissner (13):
hnetcfg: GetModuleFileNameW gets characters, not bytes (Coverity).
shell32: Use characters as arguments to GetTempPathW and GetLongPathNameW.
kernel32: GetCalendarInfoW gets character sizes.
kernel32: GetVolumePathNamesForVolumeNameW gets character as buffer size.
psapi: GetProcessImageFileName gets character count as argument.
shlwapi: SHGetIniStringW buffer size is in characters.
icinfo: vsnprintfw takes characters as buffer size not bytes.
d3dx9/tests: Fix string size to MultiByteToWideChar().
comctl32/tests: Header item struct gets characters not bytes.
comctl32: Treeview item gets characters not bytes passed in.
shell32: Set size in characters in MENUITEMINFOW struct.
quartz: StringFromGUID2 gets character counts, not bytes.
amstream/tests: Use correct buffer size for StringFromGUID2.
Mark Jansen (1):
ntdll/tests: Tests for RtlIpv6StringToAddress.
Matteo Bruni (2):
d3dx10: Turn some ERR() into WARN().
wined3d: Declare the correct number and type of fragment shader color outputs.
Michael Müller (4):
crypt32: Implement verification of ECDSA signatures.
ntdll: Implement LdrRegisterDllNotification and LdrUnregisterDllNotification.
user32: Add semi-stub for GetAutoRotationState.
msvcr120: Add stub for _SetWinRTOutOfMemoryExceptionCallback.
Michael Stefaniuc (32):
gdi32/tests: Use the available ARRAY_SIZE() macro.
shlwapi/tests: Use the available ARRAY_SIZE() macro.
shlwapi/tests: Pass the correct buffer size to PathUnExpandEnvStringsW().
shlwapi/tests: Pass the correct buffer size to WideCharToMultiByte().
kernel32/tests: Use the available ARRAY_SIZE() macro.
comdlg32/tests: Don't undefine ARRAY_SIZE().
user32/tests: Don't undefine ARRAY_SIZE().
user32/tests: Avoid a variable that holds an ARRAY_SIZE().
kernel32/tests: Avoid ARRAY_SIZE-like macros.
user32/tests: Avoid ARRAY_SIZE-like macros.
user32/tests: Use the available ARRAY_SIZE() macro.
include: Add a generic available ARRAY_SIZE().
quartz: Use the more common ARRAY_SIZE spelling.
user32: Use the more common ARRAY_SIZE spelling.
dinput: Avoid ARRAY_SIZE-like macros.
iphlpapi: Avoid ARRAY_SIZE-like macros.
mscoree: Use the more common ARRAY_SIZE spelling.
wininet: Use the more common ARRAY_SIZE spelling.
winhttp: Use the more common ARRAY_SIZE spelling.
dssenh/test: Replace a macro with ARRAY_SIZE.
serialui: Replace a macro with ARRAY_SIZE.
glu32: Avoid an ARRAY_SIZE-like macro.
krnl386.exe16: Avoid ARRAY_SIZE-like macros.
ole32: Use the more common ARRAY_SIZE spelling.
shell32: Avoid ARRAY_SIZE-like macros.
winex11.drv: Avoid ARRAY_SIZE-like macros.
msvcr100/test: Replace a macro with ARRAY_SIZE.
cryptui: Use the ARRAY_SIZE() macro.
view: Use the ARRAY_SIZE() macro.
oleview: Use the ARRAY_SIZE() macro.
netapi32: Use the ARRAY_SIZE() macro.
credui: Use the ARRAY_SIZE() macro.
Michał Janiszewski (3):
ntdll: Only set owned bits in RTL_BITMAP.
msvcrt: Don't forget to free the buffer in scanf.
msvcrt: Update size checks for secure scanf versions.
Nikolay Sivov (7):
crypt32: Correctly return how the issuer of a self signed certificate was matched.
crypt32: Fix string arguments tracing.
tools: Update to Unicode 11.0.0.
po: Update Russian translation.
comctl32/tests: Add some tests for ownerdrawn listbox.
po: Update Russian translation.
urlmon: Use ARRAY_SIZE() macro.
Piotr Caban (4):
inetcpl.cpl: Add proxy server settings dialog.
inetcpl.cpl: Add partial support for writing DefaultConnectionSettings registry setting.
ucrtbase: Test child process exit code.
ucrtbase: Report child process test failures in exit() tests.
Rafał Mużyło (1):
d3d9: Expand rectangles in debug strings.
Sebastian Lackner (1):
kernel32: Fill stack with meaningful values in call_process_entry mis-align workaround.
Zebediah Figura (39):
devenum: Implement parsing and reading DMO monikers.
devenum: Implement enumerating DMOs.
wine.inf: Register mp3dmod DMO.
mp3dmod: Support COM aggregation.
hnetcfg: Store the full path in INetFwAuthorizedApplication_put_ProcessImageFileName().
devenum: Merge factory.c into devenum_main.c.
devenum: Use separate factories for CLSID_SystemDeviceEnum and CLSID_CDeviceMoniker.
devenum: Make some variables static.
devenum: Remove an unused typedef.
include: Make fil_data.idl a common header.
devenum/tests: DMORegister() returns E_FAIL if unable to access the registry.
msdmo: DMORegister() returns E_FAIL if unable to access the registry.
odbccp32/tests: Skip SQLGetInstalledDrivers() test if limited.
odbccp32/tests: Set requestedExecutionLevel to asInvoker to prevent virtualization.
msctf/tests: Set requestedExecutionLevel to asInvoker to prevent virtualization.
msctf/tests: Skip tests if limited.
hnetcfg: Store the long path in INetFwAuthorizedApplication_put_ProcessImageFileName().
regedit: Print Latin-1 characters.
dinput: Notify the desktop window when device input is received.
strmbase: Implement CBaseFilter::FindPin().
winegstreamer: Use CBaseFilter::FindPin().
wineqtdecoder: Use CBaseFilter::FindPin().
explorer: Wrap the desktop window procedure instead of replacing it.
winex11.drv: Wake up the display on user input.
strmbase: Update comment for copying pin info.
quartz: Inline copying pin info and update comment.
psapi/tests: Avoid linking statically to kernel32 functions.
winegstreamer: Add a missing debugstr_a.
dbghelp/tests: Add a simple test for StackWalk64().
winemac.drv: Wake up the display on user input.
psapi/tests: Link statically to psapi.
psapi/tests: Avoid using PROCESS_ALL_ACCESS.
psapi/tests: Avoid failing silently.
psapi/tests: Call GetPerformanceInfo() after NtQuerySystemInformation().
strmbase: Avoid leaking pFilter in CBaseFilter::FindPin().
quartz: Use CBaseFilter::FindPin().
strmbase: Use CBaseFilter::FindPin().
qcap: Use CBaseFilter::FindPin().
amstream: Use CBaseFilter::FindPin().
Zhiyi Zhang (4):
comctl32/taskdialog: Fix buttons might disappear.
comctl32/taskdialog: Use dynamic buffer for taskdialog_get_label_size().
comctl32/taskdialog: Add support for radio buttons.
comctl32/taskdialog: Add support for command links.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 3.0.2 is now available.
What's new in this release (see below for details):
- Various bug fixes
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.0/wine-3.0.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.0/wine-3.0.2.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.0.2 (total 53):
13351 Empire Earth v. 1.00: mouse is not responsive
15350 wrong keyboard layout in Tomb Raider Anniversary / Legend
29842 IE4 crashes on showing certificate authorities, needs wininet.dll.ParseX509EncodedCertificateForListBoxEntry
29999 Bloodrayne 2: text in the menus misplaced
30076 .NET Framework 4.x with WinVer setting "Windows 7" spams terminal with "LocaleNameToLCID/LCIDToLocaleName unsupported flags 8000000" (LOCALE_ALLOW_NEUTRAL_NAMES)
30611 Lazarus browser sample fails, needs ieframe:ViewObject_Draw implementation
31850 Age of Mythology needs pidgen.dll.PIDGenSimpA
34101 Need for Speed: Shift demo crashes in 'purist' mode (d3dx9_36) (needs ID3DXEffect::FindNextValidTechnique method implementation)
36843 "Read only"checkbox on Save As dialog
37228 Cisco Jabber 11.x crashes on unimplemented function ntdsapi.dll.DsCrackNamesW
37594 World of Warcraft in-game browser does not work (needs advapi32.BuildSecurityDescriptorW() implementation)
38564 Rush for Berlin Gold crashes after starting
38836 SCM 'StartService' must wait for driver service entry point execution before return (PunkBuster 'PnkBstrB' service failure, CPU-Z randomly fails to load its driver, BattlEye 'BEDaisy' kernel service)
39209 Smart Diary Suite 4 crashes when updating options ('CLSID_AudioCompressorCategory', '{33D9A761-90C8-11d0-BD43-00A0C911CE86}' must be treated as special category)
39452 mpr.WNetGetUniversalName() return value (causes Intel MPI to fail)
39979 SupArc crashes inside msvcr110
40767 Indiana Jones and The Emperor's Tomb quits after the splash screen
41377 Windows 10 DISM fails to find its resources (kernel32 SetThreadUILanguage must return non-zero/best fit language identifier if zero is passed)
42267 Rogue-Killer installer crashes on unimplemented function ntdll.dll._aulldvrm
42446 Native Instruments 'Native Access' 1.1.x fails to start, reports 'You cannot start Native Access from the mounted disk'
42686 Poedit crashes on start on unimplemented function msvcp140.dll.?_IsNonBlockingThread@_Task_impl_base@details@Concurrency@@SA_NXZ
42768 Ys: The Ark of Napishtim (Ys 6) silently crashes playing in-game videos
43351 x64dbg needs kernel32.dll CreateRemoteThreadEx in Win7+ mode
43831 Cuphead (Steam) crashes on startup (needs setupapi.CM_Get_Parent stub to return CR_NO_SUCH_DEVNODE)
43930 iCopy 1.6.x (.NET 2.0 app) crashes on startup (IWiaDevMgr::SelectDeviceDlg DeviceID pointer parameter can be NULL, needs be declared 'unique' for RPC marshalling)
44135 Olive Tree Bible Software BibleStudySetup_6.0.23.exe fails to install
44138 Native Access needs unimplemented function iphlpapi.dll.if_indextoname
44278 Multiple applications crash on unimplemented function msvcp140.dll.?uncaught_exceptions@std@@YAHXZ
44404 Several .Net apps (e.g. Remembear) throw errors/crash,caused by msctf stubs TextStoreACPSink_{OnTextChange,OnSelectionChange,OnLayoutChange}
44466 PrtSc button crashes StarCraft
44496 Custom imports resolver used by multiple kernel drivers can't cope with 'ntoskrnl.exe' low-level (wc)string/copy helpers being forwarded to 'msvcrt.dll' (BattlEye 'BEDaisy', Sentinel HASP 'hardlock.sys')
44504 vlc 2.2.6: playback performance hampered
44530 64-bit Sentinel HASP hardlock.sys kernel driver tries to access to DR7 (not handled in ntoskrnl emulate_instruction)
44693 Native Access crashes on unimplemented function vcruntime140.dll.__current_exception
44742 Divinity: Original Sin 2 crashes due to unimplemented IPHLPAPI.DLL.ConvertLengthToIpv4Mask
44744 Autodesk Fusion 360 need propsys.dll.PSGetPropertyKeyFromName to be installed
44746 Running any command in MS PowerShell 6+ (.NET app) results in advapi:EventActivityIdControl console spam
44770 ExpressPCB Plus 1.1 (.NET 3.5 SP1 app) throws 'System.NotImplementedException: Not implemented at System.Drawing.Pen.TranslateTransform' (GdipTranslatePenTransform not implemented)
44772 progecad 2018 installer does not start
44804 PCBWeb crashes: Call to unimplemented function d3dx11_43.dll.D3DX11CreateTextureFromFileW
44811 BattlEye 'BEDaisy' kernel service crashes on unimplemented function ntoskrnl.exe._chkstk
44818 ntdll.NtClose (kernel32.CloseHandle) should throw invalid handle exception (EXCEPTION_INVALID_HANDLE) for invalid handles when run under debugger
44864 Incoming crashes after the intro video
44874 Phonetools 9.x crashes on unimplemented function KERNEL32.dll.RequestDeviceWakeup
44904 winebus blocks auto start up of scheduler service
44923 Failing kernel driver services can stall WINEPREFIX bootstrapping/startup for a considerable time when configured as autostart
44924 StarForce v3 kernel drivers need ntoskrnl.IoCreateSynchronizationEvent to return a non-NULL handle
44932 limited list of available printer's paper/page size
44944 Adobe Premiere Elements 14 fails to install: ERROR: Third party payload installer pxengine5_08_13a.exe failed with exit code: -1
44971 HackShield for Banking Driver 'HSBDrvNt.sys' (part of Ahnlab Safe Transaction) crashes on unimplemented function ntoskrnl.exe.ExInterlockedPopEntrySList
44984 Maya 2018 LT Installer requires unimplemented function api-ms-win-crt-time-l1-1-0.dll._timespec64_get
44993 Magic The Gathering Arena fails to install
45026 Windows File Manager (WinFile) fails to build in winelib (LPDROPSTRUCT missing from winuser.h)
----------------------------------------------------------------
Changes since 3.0.1:
Alexander Morozov (1):
ntoskrnl.exe: Add stubs for ExAcquireFastMutexUnsafe and ExReleaseFastMutexUnsafe.
Alexandre Julliard (7):
winex11: Use the correct colormap for the OpenGL parent window.
winex11: Store the visual info in the OpenGL pixel format.
winex11: Store only the pixmap size instead of the window rectangle in the GL drawable.
winex11: Implement refcounting of GL drawables.
winex11: Hold a reference to the drawable from the GL context.
wininet/tests: Update the winehq.org certificate data.
ntoskrnl: Add emulation of CRn and DRn registers on x86-64.
Alistair Leslie-Hughes (9):
comctl32/treeview: Fix item icon background when using TVS_FULLROWSELECT style.
pidgen: Add PIDGenSimpA stub.
winedevice: Wait until driver has started before returning.
ntoskrnl.exe: Dont forward some msvcrt functions.
propsys: Add PSGetPropertyKeyFromName stub.
ntoskrnl.exe: Implement _chkstk.
winedevice: Improve error handling when a driver fails to load.
maintainers: Update Staging branch.
maintainers: Remove previous wine-staging maintainers.
Andrew Eikum (1):
maintainers: Remove myself from a dmusic DLL.
Andrew Wesie (1):
advapi32: Implement BuildSecurityDescriptorW.
Andrey Gusev (1):
d3dx11: Add D3DX11CreateTextureFromFileA/W stub.
André Hentschel (3):
wininet: Fix negated check for drain_content result (clang).
gdiplus: Add stub for GdipSetPathGradientPath.
progman: Fix warning in PUT_SHORT macro (clang).
Austin English (4):
wininet: Add ParseX509EncodedCertificateForListBoxEntry stub.
ntdsapi: Add DsCrackNamesA/W stubs.
include/winuser.h: Add tagDROPSTRUCT struct.
include/wfext.h: Add miscellaneous FM_* defines.
Christian Inci (1):
wined3d: Recognize Titan V.
Dagfinn Reiakvam (1):
iphlpapi: Add support for ConvertLengthToIpv4Mask().
Dmitry Timoshkov (5):
avifil32: Correct threading model on interfaces.
services: Add a 3000 ms timeout to StartService.
winspool.drv: Add A0, A1 and A2 paper sizes to generic.ppd.
dinput: The DIK_ key code should match the scan code.
sspicli: Add forwards to secur32.
Gijs Vermeulen (1):
ntoskrnl.exe: Improve IoCreateSynchronizationEvent stub.
Hans Leidekker (2):
iphlpapi: Implement if_indextoname.
msi: Don't cache the base URL.
Henri Verbeet (1):
winex11: Restore the X11DRV_FLUSH_GL_DRAWABLE XFlush() for setups without OML_sync_control.
Huw D. M. Davies (1):
winebuild: On x86_64, save xmm0 - 3 during the delayed import lookup.
Ivan Kalvachev (1):
kernel32: Add DECL_HOTPATCH to OutputDebugString functions.
Jarkko Korpi (1):
kernel32: Silence repeated LocaleNameToLCID unsupported flags.
Johann Frei (1):
dinput: Implement X/Y axis granularity and add test.
Louis Lenders (9):
ntdll: Update version resource.
kernel32/tests: Add simple test for SetThreadUILanguage.
kernel32: Improve stub for SetThreadUILanguage.
iexplore/iexplore.inf: Add svcVersion reg key and update to win7.
msctf: Return S_OK in TextStoreACPSink_OnTextChange.
msctf: Return S_OK in TextStoreACPSink_OnSelectionChange.
msctf: Return S_OK in TextStoreACPSink_OnLayoutChange.
wine.inf: Create catroot directory.
kernel32: Add stub for RequestDeviceWakeup.
Mark White (1):
kernel32: Fix forward slash path handling to GetVolumePathNameW.
Martin Storsjo (1):
ucrtbase: Hook up __intrinsic_setjmpex for x86_64 and arm64.
Matteo Bruni (2):
d3dx9: Implement FindNextValidTechnique().
d3d8: Forbid setting a viewport larger than the render target.
Michael Müller (3):
ieframe: Return S_OK in IViewObject::Draw stub.
mpr: Return correct error code for non network paths and REMOTE_NAME_INFO_LEVEL in WNetGetUniversalName.
ntoskrnl: Implement ExInterlockedPopEntrySList.
Michael Stefaniuc (1):
maintainers: Add a DirectMusic section.
Nikolay Sivov (6):
comdlg32: Add a helper to test if file dialog hook is enabled.
comdlg32: Hide Read-only checkbox for Save dialogs.
gdiplus: Implement GdipTranslatePenTransform.
wincodecs: Use static array for property bag descriptions.
wincodecs: Encoder options are optional for CreateNewFrame().
kernel32: Add CreateRemoteThreadEx().
Piotr Caban (6):
msvcrt: Optimize _strupr implementation in C locale.
msvcrt/tests: Add _strupr tests.
msvcp140: Add __uncaught_exceptions implementation.
ucrtbase: Add __current_exception() implementation.
msvcp140: Add _Task_impl_base::_IsNonBlockingThread stub.
ucrtbase: Add _timespec{32,64}_get implementation.
Sebastian Lackner (2):
ntdll: Throw exception if invalid handle is passed to NtClose and debugger enabled.
advapi32/tests: Add basic tests for BuildSecurityDescriptor.
Stefan Dösinger (2):
ddraw: Fix D3DEXECUTEDATA.dwSize handling.
ddraw: Don't read past the end of the executebuffer.
Stefan Leichter (2):
advapi32: Silence the fixme in EventActivityIdControl.
include: Fix declaration of SelectDeviceDlg.
Tim Wanders (1):
setupapi: Return CR_NO_SUCH_DEVNODE from CM_Get_Parent stub.
Zebediah Figura (5):
ntdll: Implement _alldvrm() and _aulldvrm().
devenum/tests: Test registering DirectShow filters.
devenum: More correctly handle device types.
devenum: Allow parsing display name without class ID.
devenum: Correctly implement IMoniker::GetDisplayName().
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 3.11 is now available.
What's new in this release (see below for details):
- More debugger support for Wow64 processes.
- Support for sha256/sha384 hashes in ECDSA signatures.
- Better reporting of hyper-threaded CPUs.
- Improvements to the standard Task Dialog.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.11.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.11.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.11 (total 12):
27708 GetThreadSelectorEntry fails
28251 Shadows do not appear in Mafia II
41174 DDS Converter (DX11) crashes with an error message "Failed init D3D device"
43579 starting any wine process on armv7l: Bus error (core dumped)
44557 Chuckie Egg: The Next Batch v1.2 regression on Wine 3.2 (CSMT)
45109 Implement debugging 32-bit processes using 64-bit winedbg
45156 autohotkey can't seem to click buttons any more (breaking winetricks -q dirac et al)
45284 Multiple Microsoft Office installers crash with Windows 8+ setting due to missing 'user32.RegisterPointerDeviceNotifications' stub (Office 2013)
45294 64-bit Mod Organizer 2.1.2 dev6-Silarn-prerelease fails to load 'usvfs_x64.dll', needs 'ntdll.RtlReleaseRelativeName'
45299 Adobe flash player online installer fails the download
45302 Multiple Microsoft Office installers crash with Windows 8+ setting due to missing 'user32.GetPointerDevices' stub (Office 2013)
45303 Multiple Microsoft Office installers crash with Windows 8+ setting due to missing 'user32.RegisterTouchHitTestingWindow' stub (Office 2013)
----------------------------------------------------------------
Changes since 3.10:
Alexandre Julliard (6):
ntdll: Pass the server context to get/set_thread_context().
winedbg: Fix some compiler warnings.
winex11: Fix exposing partially off-screen windows.
ntdll: Implement RtlExpandEnvironmentStrings().
user32: Don't remap DPI for font size in points when saving.
user32: Check the DpiScalingVer registry key to enable DPI scaling.
Alistair Leslie-Hughes (1):
winex11: Correct compile without vulkan support.
Andrew Eikum (1):
winex11.drv: Refcount the vulkan surface window.
Andrey Gusev (1):
winex11.drv: Move condition to the proper place.
André Hentschel (1):
ws2_32/tests: Use the available ARRAY_SIZE() macro.
Dmitry Timoshkov (6):
mstask: Retry opening a .job file only in case of sharing violation.
schedsvc: Retry opening a .job file only in case of sharing violation.
mstask: Implement ITask::SetWorkItemData().
mstask: Implement ITask::GetWorkItemData().
mstask/tests: Add some tests for workitem data.
gdi32: For symbol fonts check whether the char has been converted to Unicode.
Fabian Maurer (1):
ntdll: Add stub for WinSqmSetDWORD.
François Gouget (2):
winetest: Don't show dll=skipped messages for skipped tests.
wsdapi: Add a trailing '\n' to a WARN() message.
Hans Leidekker (5):
webservices: Avoid a warning from HeapDestroy.
webservices: Avoid accessing the old user buffer in WsSetOutput/ToBuffer.
webservices: Implement WsShutdownSessionChannel.
webservices: Use the static dictionary only while writing the message header.
webservices: Send incremental string table updates with messages in the same session.
Hua Meng (4):
msvcp120: Add test for Concurrent_vector_copy.
msvcp120: Add test for Concurrent_vector_assign.
msvcp120/tests: Add test for Concurrent_vector_swap.
msvcp120: Add test for Concurrent_vector_Internal_compact.
Jacek Caban (5):
jscript: Use global accumulator for storing function call results.
mshtml: Support input event.
mshtml.idl: Added IHTMLPerformance declaration.
mshtml.idl: Added IHTMLPerformance test.
mshtml: Added IHTMLWindow7::performance property implementation.
Józef Kucia (26):
d3d11: Normalize 1D texture view descriptions.
wined3d: Get rid of WINED3DCAPS typedef.
wined3d: Remove "Reserved" fields from wined3d_caps.
wined3d: Store feature level in d3d_info.
wined3d: Expose feature level in wined3d caps.
dxgi: Get supported feature levels from wined3d caps.
winedbg: Get rid of ifdefs.
d3d11: Introduce get_resource_properties() helper function.
wined3d: Initialize depth/stencil texture data.
d3d9/tests: Add test for depth stencil initialization.
wined3d: Reduce nesting in texture2d_load_sysmem().
wined3d: Use WINED3D_LOCATION_DISCARDED before initializing buffers with data.
wined3d: Call wined3d_cs_emit_update_sub_resource() directly in buffer_init().
wrc: Accept hyphens in identificators.
vulkan-1/tests: Add tests.
include: Add POINTER_INPUT_TYPE.
include: Add interactioncontext.h.
ninput: Implement CreateInteractionContext().
ninput: Add ProcessInertiaInteractionContext() stub.
ninput: Implement SetPropertyInteractionContext().
ninput: Add SetInteractionConfigurationInteractionContext() stub.
ninput: Add RegisterOutputCallbackInteractionContext() stub.
shell32: Accept more flags in SHGetKnownFolderPath().
shell32/tests: Reorder known_folders table definition.
shell32/tests: Add tests for SHGetKnownFolderPath() flags.
shell32/tests: Remove empty element from known_folders[].
Kieran Duggan (1):
d3dx9/tests: Add initial tests for ID3DXFont::DrawText().
Lauri Kenttä (1):
po: Update Finnish translation.
Matteo Bruni (2):
wined3d: Generate shader epilogue before conditional returns.
wined3d: Set stream stride and offset even when buffer is NULL.
Michael Müller (4):
crypt32: Implement decoding of X509_OBJECT_IDENTIFIER.
crypt32: Implement decoding of X509_ECC_SIGNATURE.
crypt32/tests: Add a basic test for ecdsa oid.
crypt32: Add oids for sha256ECDSA and sha384ECDSA.
Michael Stefaniuc (31):
windowscodecs/tests: Use the available ARRAY_SIZE() macro.
winhttp/tests: Use the available ARRAY_SIZE() macro.
vcomp/tests: Use the available ARRAY_SIZE() macro.
msi/tests: Avoid ARRAY_SIZE-like macros.
msxml3/tests: Use the available ARRAY_SIZE() macro.
ole32/tests: Use the available ARRAY_SIZE() macro.
include: Add an option to disable line numbers in the tests.
dsound/tests: Avoid ARRAY_SIZE-like macros.
dsound/tests: Use the available ARRAY_SIZE() macro.
winmm/tests: Avoid and ARRAY_SIZE-like macro.
winmm/tests: Use the available ARRAY_SIZE() macro.
shell32/tests: Avoid sizeof in a trace.
shell32/tests: Use the available ARRAY_SIZE() macro.
setupapi/tests: Use the available ARRAY_SIZE() macro.
msi/tests: Use the available ARRAY_SIZE() macro.
winedbg: Use the available ARRAY_SIZE() macro.
oleaut32/tests: Use the available ARRAY_SIZE() macro.
oleaut32/tests: Avoid an ARRAY_SIZE-like macro.
oleaut32/tests: Use a better type to avoid a cast.
riched32/tests: Use the available ARRAY_SIZE() macro.
riched20/tests: Use the available ARRAY_SIZE() macro.
urlmon/tests: Use the available ARRAY_SIZE() macro.
wininet/tests: Use the correct array size in a notification_data test.
msvcrt: Rename a macro to ARRAY_SIZE().
msvcrt/tests: Use the available ARRAY_SIZE() macro.
wininet/tests: Use the available ARRAY_SIZE() macro.
ntdll/tests: Use the available ARRAY_SIZE() macro.
ntdll/tests: Avoid ARRAY_SIZE-like macros.
kernel32/tests: Use the available ARRAY_SIZE() macro.
crypt32: Use the available ARRAY_SIZE() macro.
crypt32/tests: Use the available ARRAY_SIZE() macro.
Nikolay Sivov (4):
user32: Fix returned class name for other process windows.
po: Update Russian translation.
crypt32: Use ARRAY_SIZE macro.
crypt32/tests: Compact existing OID tests.
Owen Rudge (10):
wsdapi: Add support for listening for UDP multicast broadcasts.
wsdapi: Add critical section around notification sinks.
wsdapi: Add stub for Probe message parsing, prepare notification sink message.
wsdapi: Add initial support for reading messages; identify Probe message.
wsdapi: Return "any" headers in read_message.
wsdapi: Implement probe message parsing.
wsdapi: Build types list when parsing Probe message.
wsdapi: Add support for parsing AppSequence header.
wsdapi/tests: Add tests for AppSequence in Probe message.
wsdapi/tests: Add tests for MatchProbeEx.
Piotr Caban (11):
msvcr100: Fix lldiv implementation.
msvcp120: Fix function passed to _Concurrent_vector_base_v4::_Internal_clear.
msvcp120: Add alloc/free count validation tests in _Concurrent_vector_base_v4.
msi/tests: Add package minor/major upgrade tests.
msi: Add support for ProductToBeRegistered property.
msi: Re-publish product if previous installation with different package is detected.
msi: Add REINSTALLMODE=v installation mode test.
msi: Add ProductToBeRegistered property tests.
msi: Report error when cached installer has different version.
msi: Add support for re-caching package.
appwiz.cpl: Support installing minor updates when installing addons.
Roderick Colenbrander (5):
ntdll: Derive number of logical CPU cores from core mask.
ntdll: Store core information by core on macOS.
ntdll: Report physical cores once with proper thread mask.
ntdll: GetLogicalProcessorInformationEx report LTP_PC_SMT for SMT cores.
ntdll: GetLogicalProcessorInformation report LPT_PC_SMT for SMT cores.
Zebediah Figura (37):
ntdll: Implement RtlWow64GetThreadContext().
ntdll: Implement RtlWow64SetThreadContext().
kernel32: Implement Wow64GetThreadContext().
kernel32: Implement Wow64SetThreadContext().
msvcrt: Avoid using inline assembly in call_unwind_func().
msvcrt: Don't reimplement call_unwind_func().
ndrtypes.h: Add more constants.
rpcrt4: Use publicly defined NDR constants.
widl: Use publicly defined NDR constants.
winedbg: Make be_cpu process-specific.
winedbg/gdbproxy: Remove unnecessary checks for supported context flags.
winedbg: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
winedbg: Add a backend-specific vector for retrieving a thread's context.
winedbg: Add a backend-specific vector for setting a thread's context.
winedbg: Implement debugging 32-bit processes on x86_64.
winedbg/gdbproxy: Store the register map inside the be_cpu struct.
winedbg: Always start the interactive debugger in 64-bit mode if in a 64-bit prefix.
dbghelp: Determine the target Mach-O architecture from the process's architecture.
dbghelp: Read the 32-bit Mach-O header.
dbghelp: Pass an image_file_map to macho_enum_load_commands().
dbghelp: Read the Mach-O segment command corresponding to the target's architecture.
dbghelp: Translate the 32-bit Mach-O section header to the 64-bit one.
dbghelp: Read the stabs nlist entry corresponding to the target's architecture.
winedbg/gdbproxy: Handle VS thread renaming.
msi: Mark exported wine functions CDECL.
vbscript: Treat \r as a newline separator.
hnetcfg/tests: Fix BSTR usage in test_NetFwAuthorizedApplication().
hnetcfg: Store the UNC path in INetFwAuthorizedApplication_put_ProcessImageFileName().
winetest: Increase maximum tag length.
user32/tests: Ignore all non-keyboard messages in test_Input_blackbox().
user32/tests: Skip tests for window messages if we failed to receive foreground status.
winedbg: Provide a more helpful error message when unable to attach to a process.
oleaut32: Correct some comments.
winedbg: Suppress all message boxes if ShowCrashDialog is disabled.
shell32/tests: Don't test CommandLineToArgv() in test_argify().
gdi32/tests: Test writing to the default palette.
psapi/tests: Add todo_wine to a failing test.
Zhiyi Zhang (15):
comctl32/taskdialog: Zero out taskdialog_info at initialization.
comctl32/taskdialog: Remove unused parameter.
comctl32/taskdialog: Add taskdialog_destroy().
comctl32/taskdialog: Support dynamic layout.
comctl32/taskdialog: Create main instruction without templates.
comctl32/taskdialog: Create content without templates.
comctl32/taskdialog: Create buttons without templates.
comctl32/taskdialog: Add support for TDM_ENABLE_BUTTON.
comctl32/taskdialog: Add support for main icon.
comctl32/taskdialog: Add support for loading standard icons.
comctl32/taskdialog: Add support for hyperlink.
comctl32/taskdialog: Add support for progress bar.
gdiplus: Fix a memory leak.
gdiplus: Report error for brush_fill_path().
gdiplus: Avoid calling GdipFillPath() with an empty path.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 3.10 is now available.
What's new in this release (see below for details):
- Swapchain support in Direct 3D 12.
- Vulkan support updated to the latest spec.
- Debugger support for Wow64 processes.
- Still more support for the Task Scheduler.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.10.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.10.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.10 (total 17):
29586 Tumblebugs 2 demo: insects render black
31403 bad exe format for mingw binary that works fine on windows.
31533 Copy from Onenote 2010 to linux native or even wine apps fails
33364 AMD HD 6650M is recognized as HD 2900XT1
34686 Neverwinter Nights 2 (GOG.com) fails on startup, claiming: "Unable to detect a video card with hardware 3D acceleration."
35898 64-bit PDF-XChange Viewer 2.5.x crashes when searching in a PDF document
36789 Multiple .NET XNA games fail to start, complaining with "Could not find a Direct3D device that supports the XNA Framework HiDef profile" (One Finger Death Punch, Party Of Sin DEMO, Stardew Valley)
37275 Chess Position Trainer 5 (.NET 4.0 app) wants gdiplus.GdipCreateAdjustableArrowCap implementation
38816 Multiple games require XInput gamepad support (Brothers: A Tale of Two Sons, Broforce, Dead Space, Lego Star Wars Complete Saga)
42599 Max Payne 3 (Steam) crashes in DX9 mode
43300 wchar.h missing wmemchr, wmemcmp, wmemcpy, wmemmove, and wmemset
43509 Internet Explorer 11 installer fails, needs stub 'dism.exe'
43606 World of Tanks no longer starts (after launcher) since 2.15
44880 64-bit Mod Organizer 2.1.2 dev6-Silarn-prerelease fails to load 'usvfs_x64.dll', needs 'ntdll.RtlDosPathNameToRelativeNtPathName_U_WithStatus'
45127 Tomb Raider 2013: mismatched shader interface blocks cause broken rendering
45243 Wrong cast in some HANDLE_MSG_WM_* macros produces errors when compiling with wineg++
45248 CPU-Z 1.8x kernel driver crashes on unimplemented function ntoskrnl.exe.SeSinglePrivilegeCheck
----------------------------------------------------------------
Changes since 3.9:
Akihiro Sagawa (3):
winmm: Synchronize player status and API calls.
winmm: Return a continuous stream position in MIDI stream.
winmm: Reset the tick counter after handling messages.
Alex Henrie (7):
include: Add wmemchr to wchar.h.
include: Add wmemcmp to wchar.h.
include: Add wmemcpy to wchar.h.
include: Add wmemmove to wchar.h.
include: Add wmemset to wchar.h.
gdi32: Avoid awkward cast in GetGlyphOutlineA (Coverity).
gdi32: Fix memory leak on error in PATH_WidenPath (Coverity).
Alexandre Julliard (6):
msvcrtd: Fix _CrtDbgReport calling convention.
makefiles: Don't run tests for disabled dlls.
user32: Rename rectClient to client_rect for consistency.
user32: Rename rectWindow to window_rect for consistency.
user32: Only pass the new valid rectangle to the server.
server: Don't convert the surface region to screen coordinates.
Alistair Leslie-Hughes (3):
include: Add more definitions to wdm.h.
wbemdisp/tests: Add ISWbemSecurity tests.
include: Updated enum AutomationIdentifierType values.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Austin English (1):
dism: Add stub program.
Derek Lesho (1):
ntoskrnl: Have MmIsAddressValid use IsBadReadPtr.
Dmitry Timoshkov (14):
mstask: Implement ITask::GetMostRecentRunTime().
schedsvc: Read parameters and current directory from the job file.
mstask: Retry with a timeout if opening a job file has failed.
schedsvc: Add support for executing tasks.
schedsvc: Read triggers when loading a job file.
schedsvc: Add support for running tasks at specified time.
schedsvc: Add a sanity check when loading a .job file.
schedsvc: Load job files at the service start up.
schedsvc: Add support for running missed tasks at the service start.
mstask: Implement ITask::GetExitCode().
mstask: Implement IEnumWorkItems::Next().
mstask: Implement IEnumWorkItems::Reset().
mstask: Implement IEnumWorkItems::Skip().
mstask/tests: Add more tests for IEnumWorkItems interface.
Fabian Maurer (5):
fc: Add stub program.
find: Add stub program.
user32: Make RegisterPointerDeviceNotifications return TRUE to fake success.
user32: Add stub for GetPointerDevices.
user32: Add RegisterTouchHitTestingWindow stub.
François Gouget (6):
wscript/tests: Fix a typo in the WScript.BuildVersion check.
dwrite: Fix typos in a couple of idl parameter names.
schedsvc: Add a trailing '\n' to some ERR() messages.
shell32: Fix a typo in a comment.
wsdapi/tests: Add a trailing '\n' to an ok() call.
dxgi: Fix a trailing '\n' in a FIXME() trace.
Hans Leidekker (6):
msi/tests: Remove duplicate service tests.
webservices: Call WSACleanup when the dll is unloaded.
webservices/tests: Make test data local if it's only used in one place.
webservices: Handle WS_XML_TEXT_TYPE_INT64 in text_to_uint64.
webservices: Fix handling of empty text field mappings.
winhttp: Store the server certificate context in the request.
Hua Meng (1):
msvcp120: Add tests for concurrent_vector_Internal_push_back and capacity.
Hugh McMaster (2):
regedit: Confirm whether to delete a registry value from framewnd.c.
regedit: Pass NULL instead of the address of an empty WCHAR.
Huw D. M. Davies (2):
dplayx: Prevent out-of-bounds access to lpMemArea.
dbghelp: Add a missing include to fix the build.
Jacek Caban (7):
ole32/tests: Fixed tests on win64.
mshtml: Use case insensitive comparition in parse_ua_compatible.
mshtml: Use proper document mode for document fragment objects.
ole32: Don't try to unregister window class if it was never registered.
jscript: Use jsdisp_define_data_property in Object.getOwnPropertyDescriptor.
wininet: Simplify header string handling in HTTP_HttpSendRequestW.
mshtml/tests: Silence noisy traces.
Józef Kucia (46):
winex11: Introduce GAMMA_RAMP_SIZE.
winex11: Interpolate gamma ramp when gamma ramp size is greater than 256.
d3d10core/tests: Add test for clearing 1D render target views.
wined3d: Fix condition for FIXME() about unsupported depth slices.
wined3d: Implement clears for 3D render target views.
d3d11/tests: Add test for clearing 3D render target views.
d3d11/tests: Check return value of CheckMultisampleQualityLevels() (Coverity).
d3d10core/tests: Check return value of CheckMultisampleQualityLevels() (Coverity).
dxgi: Rename dxgi_swapchain to d3d11_swapchain.
dxgi: Factor out d3d11_swapchain_create() function.
dxgi: Add IDXGISwapChain3 interface stub for D3D12.
odbccp32: Fix memory leak in SQLGetInstalledDrivers() (Coverity).
wined3d: Sort WINED3DSIH enum values.
winex11: Get rid of unnecessary assignments.
dxgi: Add FIXME() for ignored output parameter in dxgi_factory_CreateSwapChainForHwnd().
dxgi: Use DXGI_MAX_SWAP_CHAIN_BUFFERS.
dxgi: Forbid multisampling with flip swap effects.
dxgi: Introduce ARRAY_SIZE() macro.
dxgi/tests: Release IDXGIFactory in test_swapchain_present().
dxgi: Create Vulkan swapchains for D3D12.
dxgi: Implement d3d12_swapchain_GetBuffer().
dxgi: Implement d3d12_swapchain_GetCurrentBackBufferIndex().
dxgi: Implement d3d12_swapchain_Present1().
dxgi/tests: Handle DXGI_ERROR_NOT_CURRENTLY_AVAILABLE in test_fullscreen_resize_target().
dxgi/tests: Use global memory allocation helpers.
dxgi/tests: Add test for creating swapchains with multisampling.
dxgi/tests: Add option to use selected adapter.
winex11: Make get_vulkan_driver() thread-safe.
dxgi: Translate VkResults to HRESULTs.
dxgi/tests: Add test for IDXGISwapChain3::GetCurrentBackBufferIndex().
include/d3d12: Add PFN_D3D12_CREATE_DEVICE.
dxgi/tests: Run test_swapchain_backbuffer_index() also on D3D12.
d3d12/tests: Add visual test for rendering to swapchain.
winevulkan: Introduce WINE_VK_HOST to explicitly request 'host' Vulkan headers.
winevulkan: Remove vk.xml from repository.
winevulkan: Add copyright headers to files generated from vk.xml.
d3d11/tests: Add test for negative viewport coordinates.
winevulkan: Correctly recognize commands belonging to multiple extensions.
winevulkan: Remove unused variable from make_vulkan script.
wined3d: Execute all CS commands before changing swapchain window.
wined3d: Remove hardware level detection hacks.
d3d12/tests: Add option to use selected adapter.
d3d12/tests: Print adapter info.
d3d12/tests: Add option to run tests with validation layers.
d3d12/tests: Fix resource state transitions in test_swapchain_draw().
wined3d: Disallow disabling GLSL on core profile contexts.
Kim Geonwoo (김건우) (1):
po: Update Korean translation.
Kim Malmo (1):
po: Update Norwegian translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (1):
user32: Add stub for RegisterPointerDeviceNotifications.
Lucian Poston (1):
include: Add ID2D1DeviceContext definition.
Matteo Bruni (6):
wined3d: Slightly improve formatting of generated GLSL shader interfaces.
dxgi: Get rid of DXGI_FRAME_LATENCY_DEFAULT.
wined3d: Initialize glMinSampleShading() function pointer.
wined3d: Compare interpolation mode VS compilation arguments.
d3d9/tests: Test how state is reset after DrawPrimitive[Indexed]UP().
d3d9: Get rid of an unnecessary wined3d_device_set_base_vertex_index() call.
Michael Müller (1):
wbemdisp: Add ISWbemSecurity stub interface.
Michael Stefaniuc (91):
advapi32/tests: Use the available ARRAY_SIZE() macro.
crypt32/tests: Use the available ARRAY_SIZE() macro.
bcrypt/tests: Use the available ARRAY_SIZE() macro.
dnsapi/tests: Use the available ARRAY_SIZE() macro.
dpvoice/tests: Use the available ARRAY_SIZE() macro.
wmp/tests: Use the available ARRAY_SIZE() macro.
cmd/tests: Use the available ARRAY_SIZE() macro.
wscript/tests: Use the available ARRAY_SIZE() macro.
dplayx/tests: Use the available ARRAY_SIZE() macro.
winspool.drv/tests: Use the available ARRAY_SIZE() macro.
wmiutils/tests: Use the available ARRAY_SIZE() macro.
d3d10/tests: Use the available ARRAY_SIZE() macro.
d3drm/tests: Use the available ARRAY_SIZE() macro.
dxdiagn/tests: Use the available ARRAY_SIZE() macro.
evr/tests: Use the available ARRAY_SIZE() macro.
gameux/tests: Use the available ARRAY_SIZE() macro.
mlang/tests: Use the available ARRAY_SIZE() macro.
wintrust/tests: Use the available ARRAY_SIZE() macro.
xinput/tests: Use the available ARRAY_SIZE() macro.
wer/tests: Use the available ARRAY_SIZE() macro.
d3d10_1/tests: Use the available ARRAY_SIZE() macro.
version/tests: Use the available ARRAY_SIZE() macro.
uxtheme/tests: Use the available ARRAY_SIZE() macro.
userenv/tests: Use the available ARRAY_SIZE() macro.
ucrtbase/tests: Use the available ARRAY_SIZE() macro.
twain_32/tests: Use the available ARRAY_SIZE() macro.
taskschd/tests: Use the available ARRAY_SIZE() macro.
sxs/tests: Use the available ARRAY_SIZE() macro.
snmpapi/tests: Use the available ARRAY_SIZE() macro.
serialui/tests: Use the available ARRAY_SIZE() macro.
secure32/tests: Use the available ARRAY_SIZE() macro.
scrrun/tests: Use the available ARRAY_SIZE() macro.
schedsvc/tests: Use the available ARRAY_SIZE() macro.
rsaenh/tests: Use the available ARRAY_SIZE() macro.
d3dx10/tests: Use the available ARRAY_SIZE() macro.
xaudio2/tests: Use the available ARRAY_SIZE() macro.
wbemprox/tests: Use the available ARRAY_SIZE() macro.
wbemdisp/tests: Use the available ARRAY_SIZE() macro.
hlink/tests: Use the available ARRAY_SIZE() macro.
oledb32/tests: Use the available ARRAY_SIZE() macro.
oledlg/tests: Use the available ARRAY_SIZE() macro.
opengl32/tests: Use the available ARRAY_SIZE() macro.
packager/tests: Use the available ARRAY_SIZE() macro.
pdh/tests: Use the available ARRAY_SIZE() macro.
propsys/tests: Use the available ARRAY_SIZE() macro.
localui/tests: Use the available ARRAY_SIZE() macro.
mapi32/tests: Use the available ARRAY_SIZE() macro.
mmdevapi/tests: Remove an ARRAY_SIZE()-like macro.
mpr/tests: Use the available ARRAY_SIZE() macro.
msctf/tests: Use the available ARRAY_SIZE() macro.
shdocvw/tests: Use the available ARRAY_SIZE() macro.
d3dx9/tests: Use the available ARRAY_SIZE() macro.
d3dx9/tests: Use ARRAY_SIZE() in the initialization of registerset_data[].
inetcomm/tests: Use the available ARRAY_SIZE() macro.
inetmib1/tests: Use the available ARRAY_SIZE() macro.
imagehlp/tests: Use the available ARRAY_SIZE() macro.
iphlpapi/tests: Use the available ARRAY_SIZE() macro.
itss/tests: Use the available ARRAY_SIZE() macro.
kernelbase/tests: Use the available ARRAY_SIZE() macro.
msrle32/tests: Use the available ARRAY_SIZE() macro.
ntdsapi/tests: Use the available ARRAY_SIZE() macro.
credui/tests: Use the available ARRAY_SIZE() macro.
msvfw32/tests: Use the available ARRAY_SIZE() macro.
netapi32/tests: Use the available ARRAY_SIZE() macro.
jscript/tests: Use the available ARRAY_SIZE() macro.
imm32/tests: Use the available ARRAY_SIZE() macro.
d3d8/tests: Use the available ARRAY_SIZE() macro.
comctl32/tests: Use the available ARRAY_SIZE() macro.
kernel32/tests: Correct the buffer size passed to FormatMessageW().
kernel32/tests: Use the available ARRAY_SIZE() macro.
advpack/tests: Use the available ARRAY_SIZE() macro.
d3dcompiler/tests: Use the available ARRAY_SIZE() macro.
gdiplus/tests: Use the available ARRAY_SIZE() macro.
dinput8/tests: Use the available ARRAY_SIZE() macro.
dinput/tests: Use the available ARRAY_SIZE() macro.
webservices/tests: Use the available ARRAY_SIZE() macro.
rpcrt4/tests: Use the available ARRAY_SIZE() macro.
quartz/tests: Use the available ARRAY_SIZE() macro.
psapi/tests: Use the available ARRAY_SIZE() macro.
oleacc/tests: Use the available ARRAY_SIZE() macro.
ntprint/tests: Use the available ARRAY_SIZE() macro.
msvcirt/tests: Use the available ARRAY_SIZE() macro.
msvcp60/tests: Use the available ARRAY_SIZE() macro.
msvcp90/tests: Use the available ARRAY_SIZE() macro.
msvcp120/tests: Use the available ARRAY_SIZE() macro.
msvcp140/tests: Use the available ARRAY_SIZE() macro.
msvcr90/tests: Use the available ARRAY_SIZE() macro.
msvcr110/tests: Use the available ARRAY_SIZE() macro.
msvcr120/tests: Use the available ARRAY_SIZE() macro.
ieframe/tests: Use the available ARRAY_SIZE() macro.
mshtml/tests: Use the available ARRAY_SIZE() macro.
Nikolay Sivov (1):
server: Use additional atom to keep base class name.
Owen Rudge (2):
wsdapi/tests: Ensure probe message is given unique GUID.
wsdapi/tests: Expand ProbeHandler tests.
Pablo Martin (6):
wined3d: Expose wined3d_shader_type enum and wined3d_device_*_constant_buffer methods.
d3d11: Make d3d11 *SetConstantBuffers use a helper method.
d3d11: Make d3d11 *GetConstantBuffers use a helper method.
d3d11: Make d3d10 *SetConstantBuffers use a helper method.
d3d11: Make d3d10 *GetConstantBuffers use a helper method.
wined3d: Delete the wined3d_device_get_*_cb and wined3d_device_set_*_cb methods.
Piotr Caban (1):
msvcp120: Fix _Getcvt tests when zh_CN system locale is used.
Roderick Colenbrander (4):
winevulkan: Fix parsing of const function pointer members.
winevulkan: Parse forward declared struct members.
winevulkan: Parse extension require sections one by one.
winevulkan: Update vk.xml to 1.1.76.
Stefan Leichter (2):
ntdll: Partly implement RtlDosPathNameToRelativeNtPathName_U_WithStatus.
ntdll: Implement RtlReleaseRelativeName.
Thomas Faber (2):
jscript: Fix MSVC build.
ole32/tests: Store GUIDs by reference.
Zebediah Figura (50):
msi/tests: Test deferral of RegisterClassInfo and UnregisterClassInfo.
msi/tests: Test deferral of RegisterExtensionInfo and UnregisterExtensionInfo.
msi/tests: Test deferral of RegisterFonts and UnregisterFonts.
msi/tests: Test deferral of RegisterMimeInfo and UnregisterMimeInfo.
msi/tests: Simplify key access flags in test_register_product().
msi/tests: Test deferral of RegisterProduct.
msi/tests: Test deferral of RegisterProgIdInfo and UnregisterProgIdInfo.
msi/tests: Test deferral of RegisterUser.
widl: Try to import typedefs instead of redefining them.
widl: Properly implement syntax 2 dispinterfaces.
widl: Don't remove the FDUAL flag from non-dispatchable interfaces.
widl: Prefer types defined in the same typelib to imported types.
msi/tests: Test registration of a valid typelib.
msi/tests: Test deferral of RegisterTypeLibraries and UnregisterTypeLibraries.
msi/tests: Test self-registration of a valid DLL.
msi/tests: Test deferral of SelfRegModules and SelfUnregModules.
kernel32: Allow EnumProcessModules() to succeed on a WoW64 process.
kernel32: Allow GetModuleBaseName() to succeed on a WoW64 process.
kernel32: Allow GetModuleFileNameEx() to succeed on a WoW64 process.
kernel32: Allow GetModuleInformation() to succeed on a WoW64 process.
msi/tests: Simplify and combine environment variable tests.
msi/tests: Test deferral of WriteEnvironmentStrings and RemoveEnvironmentStrings.
msi/tests: Add a simple test for WriteIniValues.
msi/tests: Test deferral of WriteIniValues and RemoveIniValues.
dbghelp: Add a helper to check if a given module is the Wine loader.
dbghelp: Determine the wine loader name from the target process's architecture.
dbghelp: Correctly determine the wine loader base address.
dbghelp: Don't enforce child architecture in elf_map_file().
dbghelp: Detect ELF architecture before reading the whole header.
dbghelp: Translate the 32-bit ELF header to the 64-bit one.
dbghelp: Translate the 32-bit ELF section header to the 64-bit one.
msvcrt: Avoid using inline assembly in __ExceptionPtrDestroy().
msvcrt: Avoid using inline assembly in __ExceptionPtrCopyException() and copy_exception().
dbghelp: Read the ELF program header corresponding to the target's architecture.
dbghelp: Read the Elf_Dyn struct corresponding to the target's architecture.
dbghelp: Read the Elf_auxv_t struct corresponding to the target's architecture.
dbghelp: Translate the 32-bit ELF symbol struct to the 64-bit one.
dbghelp: Read the r_debug and link_map structs corresponding to the target's architecture.
stdole2.idl: Use more accurate sizes for Automation types.
widl: Generate correct size and alignment for all types.
msi: Only delete empty registry keys in delete_key().
msi/tests: Simplify and clarify WriteRegistryValues and RemoveRegistryValues tests.
msi/tests: Test deferral of WriteRegistryValues.
msi/tests: Test that some actions cause resolution of SourceDir.
msi: Resolve source when executing InstallFiles.
msi: Store the current script in the package.
include: Add some WOW64 definitions.
msvcrt: Avoid using inline assembly in continue_after_catch().
msvcrt: Avoid using inline assembly in call_finally_block().
msvcrt: Avoid using inline assembly in call_filter().
Zhiyi Zhang (2):
user32: Return 1 in DrawTextEx() when calculated offset is 0.
user32: Respect margins more in DrawTextExW().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 3.9 is now available.
What's new in this release (see below for details):
- OpenGL core contexts enabled by default in Direct 3D.
- Beginnings of Direct 3D 12 implementation using vkd3d.
- More support for the Task Scheduler.
- Some more Task Dialog support.
- Better arrow support in GdiPlus.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.x/wine-3.9.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.x/wine-3.9.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.9 (total 33):
32907 AMMYY Admin v3.0 crashes at startup in Win7 mode ('NtSetInformationToken' needs to support 'TokenSessionId')
34910 WinLaunch 0.4.x (OSX Style free Launcher) complains about missing "%USERPROFILE%\\Application Data\\Microsoft\\Windows\\Themes\\" directory
37736 Photoshop Elements 11/12 installers hang when installing common shared technologies ('GetWindowTextLength' must not call 'SendMessage' for window handles belonging to other processes)
37776 iTunes 12.0.1 crashes on startup
38648 Multiple games and applications need support for Mesa OpenGL >= 3.2 core profiles, Shader Model 4, GLSL 1.50 (Microsoft Office 2013 installer, .NET/XNA games)
38886 AArch64 platforms: ABI Problems wrt varargs (needs arm64 specific __builtin_ms_va_list)
38944 RebelBetting: Arb browser uses incorrect stakes
38945 RebelBetting: Collapsing the top arb row reports an error
38946 RebelBetting: Upgrade button opens Explorer
39078 Visual Pinball 8.x, 9.x, 10.x crash on exit after creating a new table, needs support for VBScript IActiveScriptDebug
39294 iTunes 12 does not start anymore
39299 Arkanoid++ 0.2 crashes on startup
39458 The Club demo crashes at launch
40271 Can't start UPlay: "Connection Lost" error
40426 Wine's explorer.exe shell doesn't display properties dialog
40451 Visual C++ Build Tools 2015 silently fails on startup, needs 'feclient' stub dll (Windows NT File Encryption Client Interfaces)
40743 64-bit Tunes 12.x installer mixes up 32-bit and 64-bit packages, creating broken installation
41063 Batman - The Telltale Series requires ID3D11DeviceContext1::UpdateSubresource1()
42878 64-bit iTunes 12.1.3 crashes on startup
42941 Moorhuhn Kart 3: Mouse pointer accelerating too fast
43491 Ri-li 2.0.1: No sound
44465 Micrografx Designer 7.1 crashes at exit
44563 Chessbase 11 has annoying multiple popups GetClassInfo: 14007
44845 Bankperfect plugin installater Echéancier hangs during install
44964 Anno 2205 needs oMask shader register implementation
44974 Cresteaju ("standard" version): Hang before title screen
45080 Frostpunk crashes (requires IDXGIDevice2)
45088 Native Instruments Traktor 2.11 crashes on unimplemented function msvcp140.dll.?GetCurrentThreadId@platform@details@Concurrency@@YAJXZ
45170 Cygwin/MSYS2 needs EXDEV error code mapped to STATUS_NOT_SAME_DEVICE (rename of cross-device links)
45172 FrameMaker 7.2 and Framemaker 8 (trial) needs implementation of atmlib.dll.ATMFinish
45174 Icinga 2 'check_ping' tool with IPv6 address/host crashes on unimplemented function ntdll.dll.RtlIpv6StringToAddressExW
45179 iTunes 12.x installer freezes at the final step
45220 Regression: Hearthstone-Deck-Tracker stoped working after wine-2.21
----------------------------------------------------------------
Changes since 3.8:
Akihiro Sagawa (5):
winmm: Fix superfluous MOM_DONE callback messages.
po: Update Japanese translation.
winmm/tests: Add tests regarding MIDI stream player clocks and positions.
winmm: Protect MIDI stream info with critical section.
winmm: Add playing status to MIDI stream structure and use it.
Alex Henrie (3):
ntdll: Add LdrRegisterDllNotification stub.
comctl32/listview: Don't invalidate when new style is same as old.
ntoskrnl: Add SeSinglePrivilegeCheck stub.
Alexandre Julliard (6):
winecfg: Constrain DPI values to the commonly supported ones.
user32: Store the window DPI awareness in the server.
user32: Update the window DPI awareness in SetParent().
user32: Store the window DPI in the server.
user32: Don't send cross-process message for GetWindowTextLength().
server: Removed unused visible rect from get_window_rectangles request.
Alistair Leslie-Hughes (6):
shell32: Choose return value for SHFileOperationA depending on windows version.
dsound: Use IDirectSoundBuffer8 to avoid unnecessary casts.
include: Add more WM interfaces.
include: Add IMFReadWriteClassFactory interface.
include: Add MmGetSystemRoutineAddress definition.
gdiplus: Display the GUID of the image type in GdipSaveImageToStream.
Andrew Wesie (1):
ntdll: Return success for TokenIntegrityLevel in NtSetInformationToken.
Andrey Gusev (1):
shell32: Check array index limit first.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Christian Inci (1):
wined3d: Recognize Titan V.
Daniel Rusek (1):
po: Update Czech translation.
Dmitry Timoshkov (22):
mstask/tests: Make task tests independent.
mstask: Implement ITask::SetFlags().
mstask/tests: Make task trigger tests independent.
mstask: ITaskTrigger::SetTrigger() should fail on NULL input.
mstask: ITaskTrigger::GetTrigger() should fail on NULL input.
mstask/tests: Add another set of tests for trigger management.
mstask: Move trigger management to the ITask implementation.
mstask: Prefer built-in implementation.
mstask: When writing triggers access the trigger data directly to avoid noise in the traces.
mstask: Implement ITask::GetExitCode().
kerberos: Silence a FIXME for the GSS_S_FAILURE case.
mstask: Implement ITask::GetNextRunTime() for ONCE trigger type.
mstask: Implement ITask::GetNextRunTime() for DAILY trigger type.
mstask: Handle disabled tasks in ITask::GetNextRunTime().
mstask: Add support for event triggers to ITask::GetNextRunTime().
mstask: Implement ITask::GetNextRunTime() for WEEKLY trigger type.
mstask: Avoid an infinite loop in ITask::GetNextRunTime() if weekly trigger runs every week.
kerberos: Add support for ISC_REQ_IDENTIFY flag.
kerberos: Translate GSS_C_DCE_STYLE to appropriate ISC_RET and ASC_RET flags.
kerberos: Add ISC_REQ_CONNECTION to the list of supported flags.
mstask: Keep the job file uuid across load/save operations.
gdiplus: Pass the correct GUID to encode_image_wic for GIF images.
François Gouget (1):
makedep: Avoid building test resources if winetest is disabled.
Gijs Vermeulen (3):
msvcp: Add a trailing '\n' to a FIXME().
include: Add DOF_* definitions.
include: Add IO_REPARSE* definitions.
Hans Leidekker (2):
msi/tests: Break out of the loop if both components are found in test_MsiEnumComponentsEx.
winhttp: Ignore empty proxy strings read from the environment.
Henri Verbeet (3):
wined3d: Only create the ARBfp blitter if creating the GLSL blitter failed.
d3d11/tests: Rebind the pixel shader between runs with different sample counts in test_sampleinfo_instruction().
wined3d: Default to OpenGL 4.4 contexts.
Hugh McMaster (11):
regedit: Replace the COUNT_OF macro with ARRAY_SIZE.
regedit: Move regproc.c functions from regproc.h to main.h.
regedit: Move regedit.c functions from regproc.h to main.h.
regedit: Remove regproc.h.
regedit: Use the ARRAY_SIZE macro.
regedit: Simplify the detection of existing registry values.
regedit: Simplify boolean comparisons in edit.c.
regedit: Do not directly include stdio.h any longer.
regedit: Remove implicit extern keywords from function declarations.
regedit: Sort function declarations alphabetically by source file.
regedit: Do not directly include resource.h anymore.
Huw D. M. Davies (1):
user32: Simplify CheckMenuRadioItem().
Jacek Caban (31):
jscript: Get rid of no longer used jsdisp_propput_const.
jscript: Use jsdisp_define_property for Error object properties.
jscript: Use jsdisp_define_data_property for arguments object properties.
jscript: Use jsdisp_define_property to set function prototypes.
jscript: Use jsdisp_define_property to set prototype constructors.
jscript: Added Object.defineProperties stub.
jscript: Added support for accessor properties in defineProperty.
jscript: Support accessor properties in getOwnPropertyDescriptor.
jscript: Support getting value of accessor property.
jscript: Move handling PROPF_WRITABLE to property type specific code.
jscript: Support setting accessor property value.
mshtml: Share the same structure for about and res protocols.
mshtml: Share more code between res and about protocol handlers.
mshtml: Properly support COM aggregation in about and res protocol handlers.
mshtml/tests: Added more COM aggregation tests.
mshtml.idl: Added IHTMLCSSStyleDeclaration declaration.
mshtml.idl: Added IHTMLWindow7 declaration.
mshtml: Added IHTMLWindow7 stub implementation.
mshtml: Implement supported IHTMLWindow7 event properties.
mshtml: Added IHTMLWindow7::innerWidth and innerHeight implementation.
mshtml: Expose IHTMLWindow7 interface to scripts.
urlmon/tests: Handle ERROR_INTERNET_INVALID_CA security problem in https tests.
urlmon/tests: Use the same thread for both connections in redirect tests.
urlmon: Ensure that inner protocol handler reference is released after other references.
urlmon/tests: Added more ref counting and aggregation tests.
itss: Support COM aggregation in its protocol handler.
ole32/tests: Pass host_object_data struct as an argument to start_host_object2.
ole32/tests: Add IRpcChannelBuffer and IRpcStubBuffer tests.
ole32: Introduce new ipid_to_ifstub helper and use it in ipid_get_dispatch_params.
ole32: Use queried interface destination context for marshaling RemQueryInterface result.
jscript: Added String.trim implementation.
Jactry Zeng (1):
riched20/tests: Free retext after use.
Julian Rüger (1):
po: Update German translation.
Józef Kucia (26):
wined3d: Fix memory leak in shader_glsl_init_transform_feedback().
wined3d: Implement sampleinfo instruction.
wined3d: Reject uploads for multisample textures.
wined3d: Add ARB_sample_shading extension.
wined3d: Implement sampleinfo for render targets.
d2d1/tests: Adjust expected value for linear brush test.
d3d11/tests: Add test for sampleinfo instruction.
d3d10core/tests: Add test for unbound multisample textures.
wined3d: Implement SV_SampleIndex.
d3d11: Add ID3D11Device2 stub.
d3d11/tests: Add test for sampleinfo with rasterizer register.
d3d11/tests: Correctly check for multisample support.
d3d10core/tests: Correctly check for multisample support.
wined3d: Implement oMask register.
wined3d: Get rid of MAX_MULTISAMPLE_TYPES.
d3d11/tests: Add test for sample shading.
wined3d: Allow creating swapchains for windows with empty client rect.
dxgi/tests: Add test for creating swapchains for windows with empty client rect.
winevulkan: Trace unsupported instance extensions.
wined3d: Remove redundant entries from "formats" table.
configure: Check for libvkd3d.
d3d12: Implement D3D12CreateRootSignatureDeserializer().
d3d12: Implement D3D12SerializeRootSignature().
d3d12: Implement D3D12CreateDevice().
d3d12: Print message about Vulkan configuration problem to winediag channel.
d3d12/tests: Add basic visual test.
Ken Thomases (2):
winemac: Transform the process to a GUI app on an attempt to change the display mode.
winemac: Fix z-ordering between two child (owned) windows of the same parent (owner).
Kim Malmo (1):
po: Update Norwegian translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (2):
include: Add IWMCodecInfo interfaces.
wmvcore: Add a fixme in WMProfileManager_QueryInterface if interface not found.
Lucian Poston (2):
d3d11: Return 0 for the class instance count from the shader getters.
d2d1: Add ID2D1Device stub.
Marcos Gutierrez (1):
include: Fixed casts in some HANDLE_MSG_WM_* macros.
Matej Špindler (1):
kernel32: Check for LOCALE_NOUSEROVERRIDE for neutral locales.
Matteo Bruni (8):
wined3d: Don't add pixel center offset twice.
wined3d: Skip match_broken_arb_fog() quirk check on core profile.
wined3d: Use core functions to set the stencil mask on GL 2.0+.
wined3d: Skip match_allows_spec_alpha() on core profile.
wined3d: Default to using a non-forward-compatible core profile context.
d3d11/tests: Add a test for output sampler mask.
wined3d: Map glMinSampleShadingARB() to glMinSampleShading().
wined3d: Implement YUV blits in the GLSL blitter.
Michael Müller (5):
ntdll: Add stub for RtlIpv6StringToAddressExW.
secur32: Set output buffer size to zero during handshake when no data needs to be sent.
version: Return ERROR_FILE_NOT_FOUND for Win 9x when a file was not found in GetFileVersionInfoSize.
ntdll: Return success for TokenSessionId in NtSetInformationToken.
dxdiagn: Add several more fields for DisplayDevices.
Michael Stefaniuc (4):
winecfg: Remove an ARRAY_SIZE()-like macro.
winecfg: Use the available ARRAY_SIZE() macro.
notepad: Use the available ARRAY_SIZE() macro.
include: Make ARRAY_SIZE() available in wine/test.h.
Mingcong Bai (1):
po: Update Simplified Chinese translation.
Nikolay Sivov (17):
dxgi: Add IDXGIDevice2 stub.
d3d9: Implement setting the maximum frame latency.
d3d11: Partially implement d3d11_immediate_context_UpdateSubresource1().
gdiplus: Use ARRAY_SIZE() macro.
gdiplus: Partially implement arrow caps.
gdiplus: Implement unfilled mode for arrow caps.
gdiplus: Only draw filled arrows with positive height.
dxgi: Allow setting maximum frame latency parameter.
d2d1/tests: Add a simple test for creating d2d devices.
dwrite: Support IDWriteFontList1 for font families.
dwrite: Support IDWriteTextFormat2 for layout.
dwrite/tests: Use ARRAY_SIZE() macro in tests.
dwrite: Properly truncate face name to LOGFONT size.
dwrite/tests: Remove a test failing after recent update.
dwrite/tests: Skip some tests on variable fonts.
d2d1: Add ID2D1Bitmap1 stub.
include: Update with latest DirectWrite API additions.
Pablo Martin (6):
d3d11: Partially implement d3d11_immediate_context_CopySubresourceRegion1().
d3d11/tests: Add test for CopySubresourceRegion1.
wined3d: Add unimplemented flags parameter to wined3d_device_copy_sub_resource_region.
d3d11: Make CopySubresourceRegion1 call wined3d_device_copy_sub_resource_region directly.
wined3d: Add unimplemented flags parameter to wined3d_device_update_sub_resource.
d3d11: Make UpdateSubresource1 call wined3d_device_update_sub_resource directly.
Sebastian Lackner (1):
shell32: Create Microsoft\Windows\Themes directory during prefix creation.
Thomas Crider (1):
kernel32: Add SetProcessAffinityUpdateMode stub.
Zebediah Figura (41):
advapi32: Correctly translate SERVICE_REQUIRED_PRIVILEGES_INFO to RPC.
mp3dmod/tests: Add some tests for decoding.
mp3dmod: Return timestamp and length from ProcessOutput().
msi/tests: Add a header for some common functions.
msi/tests: Add the custom action DLL in create_database_wordcount().
d3d10core/tests: Add test for depth clip.
msi/tests: More accurately calculate estimated size.
kernel32: Check only the low word of CS when printing exceptions.
msi: Handle the remote case directly in MsiFormatRecordA().
msi: Avoid using awstring in MsiFormatRecordW().
msi: Handle the remote case directly in MsiGetPropertyA().
msi: Avoid using awstring in MsiGetPropertyA/W().
d3d11/tests: Add test for depth clip.
mp3dmod: Register DMO.
msi: Avoid leaking memory on failure paths in MsiGetPropertyA().
msi: Handle the remote case directly in MsiGetTargetPathA().
msi: Avoid using awstring in MsiGetTargetPathW().
msi: Handle the remote case directly in MsiGetSourcePathA().
msi: Avoid using awstring in MsiGetSourcePathW().
msi/tests: Test deferral of CreateFolders and RemoveFolders.
msi/tests: Test deferral of CreateShorcuts and RemoveShortcuts.
msi/tests: Test deferral of DeleteServices.
msi/tests: Test deferral of InstallServices.
msi/tests: Test deferral of StartServices and StopServices.
winedbg: Use gdb's default handling of breakpoints.
d3d11: Implement depth clip control.
vbscript: Add stub IActiveScriptDebug interface.
msi/tests: Avoid calling MsiSetTargetPath("TARGETDIR").
msi/tests: Test deferral of DuplicateFiles and RemoveDuplicateFiles.
msi/tests: Test deferral of InstallFiles and RemoveFiles.
odbccp32: Clean up SQLGetInstalledDrivers().
odbccp32/tests: Add tests for SQLGetInstalledDrivers().
msi/tests: Test installation of ODBC driver.
msi/tests: Test deferral of InstallODBC and RemoveODBC.
odbccp32: Avoid using RegQueryInfoKey() in SQLGetInstalledDrivers().
msi/tests: Test deferral of MoveFiles.
msi/tests: Test deferral of MsiPublishAssemblies and MsiUnpublishAssemblies.
msi/tests: Test deferral of ProcessComponents.
msi/tests: Test deferral of PublishComponents and UnpublishComponents.
msi/tests: Test deferral of PublishFeatures and UnpublishFeatures.
msi/tests: Test deferral of PublishProduct.
Zhiyi Zhang (10):
comctl32/taskdialog: Return TRUE when message is handled.
comctl32/taskdialog: Add support for TDN_HELP.
comctl32/taskdialog: Add support for TDF_CAN_BE_MINIMIZED.
comctl32/taskdialog: Move TASKDIALOGCONFIG pointer in struct taskdialog_info.
comctl32/taskdialog: Add support for TDF_NO_SET_FOREGROUND.
comctl32/taskdialog: Add support for TDF_RTL_LAYOUT.
comctl32/taskdialog: Add a helper to initialize dialog data.
comctl32/taskdialog: Add support for TDN_TIMER notification.
comctl32/taskdialog: Send TDN_CREATED before window gets visible.
comctl32/taskdialog: Use bold font for main instruction.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that release 1.0 of vkd3d, the
Direct3D 12 to Vulkan translation library, is now available.
This is the first release of vkd3d. A lot of Direct3D 12 features are still
missing and bugs are expected. The current version was tested mainly with demo
applications. A number of features that are being worked on have been deferred
to the next development cycle. This includes in particular geometry and
tessellation shaders support, various shader translation improvements, as well
as various improvements for core Direct3D 12 methods.
The source is available from the following location:
https://dl.winehq.org/vkd3d/source/vkd3d-1.0.tar.xz
The current source can also be pulled directly from the git repository:
https://source.winehq.org/git/vkd3d.git/
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
for the complete list.
----------------------------------------------------------------
What's included in vkd3d 1.0
============================
*** libvkd3d
- libvkd3d is the main component of the vkd3d project. It's a 3D graphics
library built on top of Vulkan with an API very similar to Direct3D 12.
- A significant number of Direct3D 12 features are implemented, including:
- Graphics and compute pipelines.
- Command lists, command allocators and command queues.
- Descriptors and descriptor heaps.
- Root signatures.
- Constant buffer, shader resource, unordered access, render target and depth
stencil views.
- Samplers.
- Static samplers.
- Descriptors copying.
- Committed resources.
- Fences.
- Queries and query heaps.
- Resource barriers.
- Root constants.
- Basic support for indirect draws and dispatches.
- Basic support for command signatures.
- Various Clear*() methods.
- Various Copy*() methods.
*** libvkd3d-shader
- libvkd3d-shader is a library which translates shader model 4 and 5 bytecode
to SPIR-V. In this release, libvkd3d-shader is an internal library. Its API
isn't set in stone yet.
- Vertex, pixel and compute shaders are supported. Also, very simple geometry
shaders should be translated correctly. Issues are expected when trying to
translate tessellation shaders or more complex geometry shaders.
- A significant number of shader instructions are supported in this release,
including:
- Arithmetic instructions.
- Bit instructions.
- Comparison instructions.
- Control flow instructions.
- Sample, gather and load instructions.
- Atomic instructions.
- UAV instructions.
- Root signature serialization and deserialization is implemented.
- Shader model 4 and 5 bytecode parser is imported from wined3d.
- Shader model 5.1 is not supported yet.
*** libvkd3d-utils
- libvkd3d-utils contains simple implementations of various functions which
might be useful for source ports of Direct3D 12 applications.
*** demos
- A simple hello triangle Direct3D 12 demo.
- A Direct3D 12 port of glxgears.
The Wine maintenance release 3.0.1 is now available.
What's new in this release (see below for details):
- Various bug fixes
- Translation updates
The source is available from the following locations:
https://dl.winehq.org/wine/source/3.0/wine-3.0.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/3.0/wine-3.0.1.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 3.0.1 (total 60):
23033 Tages Protection v5.x: games report "DLL not found shell.dll16.dll" (Runaway 2: The Dream Of The Turtle, ...)
25138 Black and White 2 demo crashes on startup (ID3DXEffect interface changes between d3dx9_xx versions)
32104 KwMusic: crashes during installing
32802 Janetter 4.1.1.0 fails to start properly and gives an error saying: "Backend server cannot init"
35268 64bit InstallShield installer uses 32bit typelib function offsets
35910 TuneUp Utilities 2014 installer crashes (API signature mismatch for NtAllocateUuids)
36143 Symantec Norton 360 installer reports 'This product is not compatible with this computer's current operating system' (RtlVerifyVersionInfo doesn't handle major/minor/service pack condition mask properly)
36718 Mindjet MindManager 14.x/15.x installer fails with 'Microsoft .NET Framework version 4.0.30319 or higher required' (builtin 'MsiNetAssemblySupport' property missing)
37217 wine builtin iexplore couldn't load local pages correctly in chinese named folders
37809 C runtime dlls can't link with uclibc (bessel functions missing)
37852 Sentinel HASP 'hardlock.sys' kernel driver custom imports resolver can't cope with many 'ntoskrnl.exe' functions being fowarded to 'ntdll.dll' (Minitab 16 fails to start)
37997 Jeskola Buzz Build 1499 (.NET 4.0 app) crashes on unimplemented function msvcp100.dll.??0_Concurrent_queue_base_v4@details@Concurrency@@IAE@I@Z
38352 Multiple games need d3dx9_36.dll.D3DXComputeNormalMap (Foresight, Gamestudio Venice, GOG King Arthur Collection)
38838 MS Office Pro Plus 2010 reruns setup on starting any app when Windows version is Vista or later
39500 DRM kernel drivers used by some game demos crash on unimplemented function hal.dll.KeQueryPerformanceCounter (Secret Files: Tunguska, Sherlock Holmes vs Jack the Ripper)
40539 Fail to start HPDiagnosticCoreUI.exe
40926 Multiple games (Solus Project, Dying Light) require unimplemented function msvcp110.dll.??0_Concurrent_queue_base_v4@details@Concurrency@@IEAA@_K@Z
41096 ResEdit Resources treeview has rendered wrongly positioned first branch
42170 Microsoft .NET Framework 4.6.2 offline installer does not complete, needs wevtapi.EvtNext stub
42468 Broken msxml text nodes escaping
42789 Qemu 2.9.0-rc3 crashes before displaying anything
43041 Multiple application installers crash due to missing message string for 0x800b0100 (TRUST_E_NOSIGNATURE) (CodeXL 2.3, RT Se7en Lite)
43256 Civilization V in-game font corrupted
43357 Stars in Shadow crashes on startup
43520 Magic The Gathering Online - corrupted rendering of CMYK jpegs
43538 x64dbg needs unimplemented function msvcp120.dll.??0_Concurrent_queue_base_v4@details@Concurrency@@IAE@I@Z
43728 Magic: The Gathering Online intensive CPU usage when idle
43998 treeview not drawn correctly
44053 MobilePASS application quits with an error, needs unimplemented function bcrypt.dll.BCryptImportKey
44176 EverQuest crashes with unimplemented function d3dx9_43.dll.D3DXCreateKeyframedAnimationSet
44213 ShareHolder Finder 0.9.3.0 fails to generate unique hardware id, reports 'Error: The requested action with this object has failed.' (several 'Win32_ComputerSystemProduct' WMI class properties missing)
44222 Office 2010 Pro Plus reruns setup on starting any app even when Windows version is XP
44255 Wolf RPG Editor: Game.exe zombifies upon quit
44265 Options dialog triggers exception upon close in Windows Media Player 6.4
44270 Exception when organizing favorites in Windows Media Player 6.4 (unimplemented function shdocvw.dll.DoOrganizeFavDlg)
44296 Qt 5 programs fail to resolve DNS SRV records
44310 WritePrivateProfileString doesn't check for flush errors
44329 Listview does not reset returned state mask for subitems
44349 winedbg: stepping is broken using GDB proxy
44428 x64dbg needs unimplemented function msvcr120.dll.??0_NonReentrantPPLLock@details@Concurrency@@QEAA@XZ
44441 for loop reading a file strips out double quotes and then equals
44468 x64dbg crashes on unimplemented function msvcr120.dll.?_Trace_agents@Concurrency@@YAXW4Agents_EventType@1@_JZZ
44473 glyph overlap in Delphi editor
44475 Microsoft SQL Server 2008 Express Edition installer fails install .NET assemblies into GAC
44482 x64dbg crashes during exit on unimplemented function msvcp120.dll.??0_Runtime_object@details@Concurrency@@QEAA@XZ
44492 winedbg reports unknown mode, fails to backtrace etc. in protected-mode with 64-bit wineserver
44501 Missing D3D11_1_UAV_SLOT_COUNT constant
44512 Royale Noir theme - Various: fixme:uxtheme:DrawThemeTextEx unsupported flags
44550 ReactOS ftp.exe: enters endless loop on CTRL-Z
44570 explorer.exe crashes when opening relative paths
44578 ShellDispatch::BrowseForFolder is not implemented
44616 Multiple Blizzard games need 'ntdll.NtCreateThreadEx' implementation (Diablo III v2. 6. 1. 49286+, World of Warcraft, Overwatch)
44626 AvP Classic 2000 (Steam) launcher crashes when attempting to start the game
44628 BaiduMusic needs dwmapi.DwmSetIconicThumbnail (stub)
44641 Sentinel HASP 'hardlock.sys' kernel driver crashes on unimplemented function ntoskrnl.exe.RtlCreateRegistryKey
44647 Smart Diary Suite 4 just segfaults
44654 EDIdEv Framework EDI Runtime installer fails due to 'sfc.SfcGetNextProtectedFile' not setting last-error code
44701 xinput console spam with steam
44717 Bermuda (Steam, Indie game) crashes due to 'msscript.ocx' 'ScriptControl_put_AllowUI' being a stub
44749 Sentinel HASP 'hardlock.sys' kernel driver expects ntdll.RtlCheckRegistryKey to return STATUS_SUCCESS on empty path
----------------------------------------------------------------
Changes since 3.0:
Akihiro Sagawa (6):
gdi32: Fix ABC width calculations when applying transformations internally.
gdi32: Fix synthetic bold outline text metrics.
gdi32/tests: Add more text metrics tests in synthetic bold bitmap fonts.
gdi32: Fix text metrics in synthetic bold bitmap fonts.
ws2_32/tests: Add ioctlsocket(FIONREAD) tests with listening socket.
ws2_32: Fix ioctlsocket(FIONREAD) with listening socket.
Alex Henrie (2):
msxml3: Remove CRs in domtext_put_data and add them in domtext_get_xml.
msvcrt: Compile but show an error if Bessel functions aren't available.
Alexandre Julliard (5):
ntoskrnl: Avoid forwarding to ntdll, link directly instead.
urlmon/tests: Update the IP address for the WineHQ server.
ntdll: Avoid pushl %esp instruction in RtlUnwind prolog.
configure: Check the positive form of the warning options.
ntdll: Fix crash on nested thread exit.
Alistair Leslie-Hughes (2):
d3dx9: Stub D3DXCreateKeyframedAnimationSet().
msscript: Implement IScriptControl get/set AllowUI.
Andrew Eikum (1):
advapi32: Also wait on services without a control thread during shutdown.
Andrew Wesie (1):
ntdll: Implement NtCreateThreadEx.
Andrey Gusev (1):
po: Update Ukrainian translation.
Anton Romanov (2):
ole32: Make CoWaitForMultipleHandles peek at all posted messages.
windowscodecs: Fix data corruption for Adobe CMYK JPEGs.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (1):
user32: Validate DIB offset in CURSORICON_GetFileEntry.
Christian Costa (1):
wined3d: Recognize GTX 560M card with NVIDIA driver.
Fabian Maurer (1):
cmd.exe: Parse parameters in "FOR /F" properly.
Gijs Vermeulen (2):
compobj.dll16: Add StringFromIID.
ole2disp.dll16: Implement SafeArrayGet[UBound|LBound].
Hans Leidekker (5):
dnsapi: Use default server list if passed in array is empty.
msi: Don't mark uncompressed global assembly files as installed until they are in the assembly cache.
wbemprox: Add more Win32_ComputerSystemProduct properties.
msi: Properly set the MsiNetAssemblySupport property.
bcrypt: Partial implementation of BCryptImportKey and BCryptExportKey.
Henri Verbeet (2):
include: Add d3d11.1 and d3d11.2 constants to d3d11.idl.
winedbg: Handle byte-sized registers in cpu_register() and cpu_register_hex_from().
Huw D. M. Davies (4):
oleaut32: Fix vtable offset for a SYS_WIN32 typelib loaded on WIN64.
winebrowser: Fix calling convention for wine_get_unix_file_name().
winedbg: Fix the operand order of some XMM instructions.
winedbg: Add cvtdq2ps and cvtps2pd opcodes.
Jacek Caban (1):
mshtml: Use nsIDOMEvent directly to prevent default event handling in dispatch_event_object.
James Woodcock (1):
msvcrt: Gets() should handle EOF on stdin gracefully.
Julian Rüger (1):
po: Update German translation.
Kai Krakow (1):
wined3d: Recognize GTX 1050 Ti card with NVIDIA driver.
Kim Malmo (1):
po: Update Norwegian translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (4):
kernel32: Add message resource for TRUST_E_NOSIGNATURE.
gdiplus: Fix argument check in GdipLoadImageFromStream().
xinput1_3: Quiet a noisy fixme.
ntdll: Match NtAllocateUuids signature to Windows 2000 instead of NT4.
Marcin Mikołajczak (1):
po: Update Polish translation.
Martin Storsjo (1):
configure: Check for -Wno-pragma-pack.
Matteo Bruni (1):
server: Avoid writing out of bounds in get_selector_entry().
Michael Müller (6):
shell32: Use manual redirection for RunDLL_CallEntry16.
dwmapi: Add DwmSetIconicThumbnail() stub.
hal: Implement KeQueryPerformanceCounter.
wbemprox: Add FreePhysicalMemory to Win32_OperatingSystem.
wbemprox: Provide DeviceID, Location and PortName for printers.
sfc_os: Set an error code in SfcGetNextProtectedFile stub.
Michael Stefaniuc (3):
quartz: Don't create the advise thread during the clock teardown.
include: Add generic HeapAlloc() wrappers.
tools: Get the ANNOUNCE bug list from the stable-notes git notes.
Nikolay Sivov (10):
comctl32/listview: Always return zero state mask for subitems.
wevtapi: Add EvtNext() stub.
uxtheme: Properly initialize text drawing options.
shell32: Partially implement IShellDispatch::BrowseForFolder().
oleaut32: Don't reset property page site to NULL.
gdiplus/tests: Add some invalid arguments tests for GdipLoadImageFromStream().
kernel32/tests: Add more tests for VerifyVersionInfo().
comctl32/toolbar: Fix a crash when tracing special button string identifier.
comctl32/treeview: Fix tooltip window leak.
po: Update Russian translation.
Paul Graham (1):
kernel32: Fix failure reporting in WritePrivateProfile* and add tests.
Piotr Caban (8):
msvcp100: Add Concurrency::details::_Concurrent_queue_base_v4 class stub.
msvcr110: Add Concurrency::_Trace_agents function stub.
msvcr100: Add _NonReentrantPPLLock@details class stub.
user32: Fix itemData passed in ListBox WM_MEASUREITEM message.
user32/tests: Add listbox WM_MEASUREITEM tests.
comctl32: Update all items rects in TREEVIEW_RecalculateVisibleOrder.
msvcrt: Fix misleading indentation in gets.
msvcp100: Add _Runtime_object class implementation.
Sebastian Lackner (2):
ntdll: Fix condition mask handling in RtlVerifyVersionInfo.
d3dx9: Adjust ID3DXEffect interface based on DLL version.
Stefan Leichter (2):
ntdll: Fix RtlCheckRegistryKey when called with empty path.
ntdll: Implement RtlCreateRegistryKey.
Thomas Faber (1):
ntdll: Handle RtlReAllocateHeap failure in com_class_add_progid (Coverity).
Vijay Kiran Kamuju (1):
shdocvw: Add stub DoOrganizeFavDlg.
Vladimir Bespalov (1):
winedbg: Fix enum value compilation warning.
Zebediah Figura (7):
winedbg/gdbproxy: Replace memory read over a breakpoint with the real value.
server: Fix pointer arithmetic in get_selector_entry().
d3dx9: Add stub for D3DXComputeNormalMap.
explorer: Pass the full path to ParseDisplayName().
winegstreamer: Stop creating the filter if gstreamer fails to render.
ieframe: Clean up InternetExplorerManager server process.
winedbg: Remove a misplaced \n.
Zhiyi Zhang (2):
urlmon: Do not canonicalize Unicode characters.
kernel32: Fix handling lines with only values in GetPrivateProfileSection.
--
Michael Stefaniuc
mstefani(a)winehq.org