Wine release 7.17
The Wine development release 7.17 is now available.
What's new in this release:
- High Unicode planes support in DirectWrite.
- Some work towards Wow64 support in the Vulkan driver.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/7.x/wine-7.17.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 7.17 (total 18):
- #11999 Endless Online game window appears as white texture
- #27243 Wiggles: All renderers are unsupported
- #34744 Earth 2150 fails to play .mp2 music (MPEG-1 Audio Decoder Filter needed, CLSID '{4a2286e0-7bef-11ce-9bd9-0000e202599c}')
- #37019 Multiple games fail to start due to D3D7 devices reporting unsupported HWTRANSFORMANDLIGHT capability (Summoner, Battle Realms: Zen Edition)
- #48986 Riot Vanguard (Riot Games) 'vgk.sys' crashes on unimplemented function ntoskrnl.exe.KeAreAllApcsDisabled
- #51939 Riot Vanguard (Riot Games) v1.0.x.x 'vgk.sys' crashes on unimplemented function ntoskrnl.exe.IoCreateFileEx
- #52449 Liar-soft Visual Novel's not displaying video (audio plays fine)
- #52457 CNG Encryption Failure (BCryptEncrypt)
- #52709 Visual Studio Community 2022 installer crashes when trying to open it
- #53032 winedevice.exe segfaults on exit when built with GCC
- #53337 Ice Cream Calculator: unusually slow scrolling
- #53427 BioShock needs D3DX10PreprocessShaderFromMemory implementation
- #53486 foobar2000.exe with foo_out_upnp breaks sending audio stream to another upnp renderer after a short period of time
- #53544 msys2 block device fstat function depends on NtQueryVolumeInformationFile FileFsFullSizeInformation
- #53547 msys2 installer fails to check disk space: "harddisk_query_volume Unsupported volume query 3"
- #53560 Wizard101 fails to load in 7.15
- #53581 Construction Set Extender crashes
- #53601 UI rendering broken for multiple applications (7-Zip, WinRAR, foobar2000, built-in apps) in Wine 7.16 at a non-default DPI
----------------------------------------------------------------
Changes since 7.16:
Alexandre Julliard (32):
urlmon/tests: Run tests against the gitlab server to avoid redirects.
kernelbase: Fix error value for PE files without resource.
include: Simplify handling of va_list in debug printf functions.
include: Add va_list version of the debug printf functions.
gitlab: Rename build-all job to build-linux.
gitlab: Run CI scripts as non-root user.
include: Add a va_list version of the wine_dbg_log function.
include: Always use the standard varargs macros.
kernel32/tests: Don't assume that notifications are instantaneous.
ntdll/tests: Fix some race conditions.
shell32: Fix sharing modes when loading/saving link files.
unicode: Add data for high Unicode planes to the scripts table.
unicode: Add data for high Unicode planes to the linebreak table.
unicode: Add data for high Unicode planes to the bidi direction table.
unicode: Add data for high Unicode planes to the Arabic shaping table.
kernel32/tests: Don't test console flags that are modified by WINETEST_COLOR=1.
user32/tests: Remove checks that rely on the absolute position of a top-level window.
makedep: Make the handling of install rules more generic.
makefiles: Add install-test target to install winetest.exe.
winetest: Add helper functions for temp file handling.
winetest: Add extra quiet mode that only outputs data for failed tests.
user32/tests: Fix some assumption about absolute window positions.
version/tests: Mark a test that fails on Wow64 as todo.
urlmon/tests: Fix race condition in abort test.
winetest: Report success if the report has been submitted successfully.
gitlab: Run tests on Debian after the daily commit round.
gitlab: Always reset the git tree after a build.
gitlab: Fetch the full git tree with all tags.
ntdll/tests: Remove workarounds for old Windows versions.
ntdll: Add a helper function to allocate process parameters.
ntdll: Use a different alignment for initial process parameters.
shell32: Don't return an uninitialized pointer on error in enum_trash_items().
Alexandros Frantzis (1):
msvfw32: Use window name to determine if window is created using MCIWndCreate.
Alistair Leslie-Hughes (1):
winepulse: Use the predicate to terminate the connect cond_wait loop.
Andrey Gusev (2):
d3dx10: Implement D3DX10PreprocessShaderFromMemory().
user32: Implement DefRawInputProc.
Bernhard Kölbl (5):
windows.media.speech/tests: Remove some flaky refcount checks.
windows.media.speech: Add missing async_void_Release implementation.
include/windows.media.speechsynthesis.idl: Add missing interfaces to SpeechSynthesizerOptions runtimeclass.
windows.media.speech/tests: Add basic query tests for SpeechSynthesizerOptions.
windows.media.speech/tests: Skip SpeechRecognitionListConstraint tests on Win10 1709 x32 and below.
Brendan Shanks (1):
wow64: Don't re-enter cpu_simulate() from exception filter.
Chris Denton (1):
bcrypt: Add basic support for pseudo-handles.
Connor McAdams (7):
combase: Omit thread ID from the stub manager ipid for MTA objects.
include: Add more definitions to uiautomationcoreapi.h.
include: Add IRawElementProviderHwndOverride definition.
uiautomationcore: Retrieve HWND from HUIANODE provider.
uiautomationcore: Partially implement UiaGetRuntimeId.
uiautomationcore: Add support for UIA_RuntimeIdPropertyId.
uiautomationcore: Implement UiaHUiaNodeFromVariant.
Davide Beatrici (7):
mmdevapi: Integrate wineoss's additions in unixlib.h.
wineoss: Drop "oss_" prefix in unixlib enum, apply it to the functions instead.
wineoss: Adapt "test_connect_params" struct to mmdevapi's.
wineoss: Adapt "create_stream_params" struct to mmdevapi's.
wineoss: Adapt "get_frequency_params" struct to mmdevapi's.
wineoss: Adapt "get_position_params" struct to mmdevapi's.
wineoss: Switch to mmdevapi's unixlib.h.
Eric Pouech (8):
msvcrt: Correctly support space generation in pointers.
msvcrt: Improve support for template in methods.
msvcrt: Fix white space output for typecast operator.
msvcrt: Undecorate function signature as template argument.
msvcrt: Use enum to clarify post-processing actions.
msvcrt: Fix order of extended qualifiers and qualifiers.
include: Enable ANSI support in console for WINETEST_COLOR.
msvfw32: Test window creation with filename.
François Gouget (14):
mshtml/tests: Fix a spelling error in an ok() message.
dbghelp: Fix a couple of spelling errors in a comment.
mscvpdb: Fix a spelling error in a comment.
winspool.drv/tests: Fix the spelling of a variable name.
winealsa.drv: Make functions static where possible.
crypt32: Remove WINAPI on static functions where not needed.
winex11.drv: Make get_unix_file_name() static.
dinput: Remove WINAPI on static functions where not needed.
dinput/tests: Remove WINAPI on static functions where not needed.
windows.media.speech: Remove WINAPI on static functions where not needed.
winex11.drv: Use #ifdef to check config.h macros.
mshtml: Add trailing linefeeds to a couple of FIXME() messages.
tests: Allow marking unreliable tests as flaky.
msvcrt: Fix the spelling of a comment.
Gabriel Ivăncescu (5):
mshtml: Implement props for Storage by forwarding to the underlying storage.
mshtml: Implement deleting props for Storage.
mshtml: Do not enumerate hidden builtin props.
mshtml: Implement GetMemberName for custom props.
mshtml: Implement props enumeration for Storage.
Georg Lehmann (2):
winevulkan: Fixup 64bit enum aliases later to avoid using not yet defined values.
winevulkan: Update to VK spec version 1.3.226.
Gijs Vermeulen (1):
msvcp140: Add _ExceptionHolder::ReportUnhandledError stub.
Hans Leidekker (1):
bcrypt: Force symmetric key reset if necessary.
Henri Verbeet (1):
include: Avoid _t-suffixes.
Jacek Caban (10):
user32: Call winproc_init before dpiaware_init.
winevulkan: Use vk_unix_call in loader.c.
winevulkan: Use __wine_unix_call for checking Vulkan functions availability.
winevulkan: Get rid of unix_funcs.
winevulkan: Separate PE and Unix VkDevice structs.
winevulkan: Separate PE and Unix VkQueue structs.
winevulkan: Separate PE and Unix VkInstance structs.
winevulkan: Separate PE and Unix VkPhysicalDevice strucrts.
winevulkan: Wrap VkCommandPool on PE side.
winevulkan: Separate PE and Unix VkCommandBuffer structs.
Joel Holdsworth (4):
kernel32/tests: GetDiskFreeSpaceA/W test targetted at a real drive.
kernel32/tests: Added tests for GetDiskFreeSpaceA/W with volume GUID paths.
ntdll: Implemented NtQueryVolumeInformationFile FileFsFullSizeInformation.
mountmgr.sys: Implemented FileFsSizeInformation and FileFsFullSizeInformation volume queries.
Julian Rüger (1):
po: Update German translation.
Kevin Puetz (1):
winecrt0: Remove free_delay_imports.
Lauri Kenttä (2):
readme: Update Finnish translation.
po: Update Finnish translation.
Lorenzo Ferrillo (1):
comctl32: Support passing bitmap and icon resource ID as a string when creating static control.
Matteo Bruni (2):
d3dx10/tests: Add a test for D3DX10PreprocessShaderFromMemory().
windowscodecs/tests: Clean up after running test expected to fail.
Nikolay Sivov (29):
evr/filter: Add IMediaEventSink stub.
evr/filter: Add IMFTopologyServiceLookup stub.
evr/filter: Implement media type testing for QueryAccept().
evr/filter: Implement pin's connect/disconnect.
bcrypt/tests: Use CRT allocation functions.
mfsrcsnk/wave: Initialize buffer pointer in ProcessSample() (Coverity).
evr/filter: Initialize interface pointer in GetService() (Coverity).
win32u/hook: Fix a leak on earlier return (Coverity).
mshtml/tests: Fix a typo in test message (Coverity).
dwrite: Skip variation selectors in MapCharacters().
dwrite: Add NNBSP (202F) to Mongolian fallback range.
dwrite: Handle variation selectors 17-256 in MapCharacters().
wbemdisp: Use wcsdup() instead of internal helper.
msvcrt: Use size_t for the size in wcsdup().
msvcrt: Remove mention of obsolete libwine function.
prntvpt: Use CRT allocation functions.
wmiutils: Use CRT allocation functions.
dwrite: Fix spans length reported by AnalyzeScript() for characters above BMP.
evr/filter: Notify mixer and presenter on state changes.
dwrite: Handle higher planes when setting DWRITE_SCRIPT_SHAPES_NO_VISUAL.
dwrite/bidi: Prepare for characters above BMP.
dwrite: Handle higher planes characters in line breaking logic.
evr/filter: Initial implementation of sample rendering.
crypt32/tests: Use CRT allocation functions.
dssenh: Use CRT allocation functions.
dwrite/tests: Add some tests for glyph justification values.
dwrite: Set initial justification value for default shaper.
msidb: Use CRT allocation functions.
ping: Use CRT allocation functions.
Piotr Caban (6):
d3dx10: Factor out image format conversion function.
d3dx10: Use WIC functions to obtain info about DDS image.
d3dx10: Add support for texture cubes in D3DX10CreateTexture functions.
d3dx10: Don't check frame count in load_texture_data.
d3dx10: Add support for loading MipLevels data in load_texture_data.
d3dx10/tests: Improve cube textures data testing.
Robert Wilhelm (2):
scrrun: Test whether IFolder_get_Path() returns an absolute path.
scrrun: Store full path in folder object.
Rémi Bernon (42):
winemac.drv: Rename display modes cache variables.
winemac.drv: Invalidate mode cache when enum flags changes.
winemac.drv: Remove unnecessary macdrv_EnumDisplaySettingsEx declaration.
winemac.drv: Check for non-primary adapter earlier in macdrv_ChangeDisplaySettingsEx.
winemac.drv: Support getting non-primary adapter current display mode.
winemac.drv: Support enumerating non-primary adapters display modes.
wmvcore/tests: Use a constant for test.wmv duration.
wmvcore/tests: Test sync reader output settings read / write.
wmvcore/tests: Test async reader output settings read / write.
wmvcore/tests: Test that the callback thread is always the same.
wmvcore/tests: Test async reader compressed sample monotonic pts.
wmvcore/tests: Test async reader DedicatedDeliveryThread setting.
mf: Use a dedicated interface for sample allocator ready callbacks.
mf: Delay media session command processing when presentation is ending.
mf: Use the SESSION_FLAG_PENDING_COMMAND to delay further commands.
mf: Notify quality manager of topology change in session_set_topology.
win32u: Sort adapter display modes after reading from the registry.
win32u: Support interlaced and stretched display modes.
win32u: Move full display mode lookup out of graphics drivers.
winex11.drv: Remove unnecessary display mode flags checks.
winemac.drv: Remove unnecessary display mode flags checks.
win32u: Move display placement logic out of graphics drivers.
mf/tests: Move and split some helper code around.
mf/tests: Keep a presentation descriptor in the test source.
mf/tests: Allocate test callbacks dynamically and check refcounts.
mf/tests: Add helpers to wait and check media session events.
mf/tests: Test some IMFMediaSession_SetTopology error cases.
mf/tests: Test that IMFTopoLoader_Load doesn't set output nodes media types.
mf/tests: Test that IMFTopoLoader_Load sets transform nodes media types.
mf/tests: Test that IMFMediaSession_SetTopology sets output nodes media types.
include: Declare AudioResamplerMediaObject and MP3DecMediaObject class ids in mfidl.idl.
include: Remove unnecessary semicolons from wmcodecdsp.idl.
include: Add WMV encoder / decoder DMO class ids to wmcodecdsp.idl.
include: Add more WMV media subtypes to wmcodecdsp.idl.
winegstreamer: Rename async reader stream_thread to callback_thread.
winegstreamer: Avoid leaking async ops on release or multiple close.
winegstreamer: Leave WM reader CS on invalid output format.
winegstreamer: Leave async reader callback_cs on calloc error.
winegstreamer: Move open_stream / close_stream helpers around.
winegstreamer: Release callback and context in async_reader_close.
winegstreamer: Avoid waiting for callback thread on allocation failure.
winegstreamer: Query IWMReaderCallbackAdvanced interface in Open.
Santino Mazza (3):
advapi32/tests: Add tests for RegLoadAppKey.
ntdll: Create NtLoadKeyEx syscall stub.
ntdll: Move NtLoadKey implementation to NtLoadKeyEx.
Stefan Dösinger (5):
wined3d: Tell vkd3d_shader about dual source blending.
ddraw/tests: Avoid picking a large mode on Win10 in test_coop_level_mode_set_enum_cb.
ddraw/tests: Avoid picking a large mode on Win10 in find_different_mode_callback.
include/test.h: Don't use strcasecmp.
include/test.h: Don't use \e.
Zebediah Figura (8):
include: Add list_move_after() and list_move_before().
msvcrt: Add SEH annotations for sse2_memcpy().
rpcrt4: Make Ndr64AsyncClientCall() SEH-compatible.
rpcrt4: Add SEH annotations to Ndr64AsyncClientCall().
rpcrt4: Make NdrClientCall3() SEH-compatible.
rpcrt4: Add SEH annotations to NdrClientCall3().
rpcrt4: Make NdrClientCall2() SEH-compatible.
rpcrt4: Add SEH annotations to NdrClientCall2().
Zhiyi Zhang (6):
uxtheme/tests: Add theme tests.
comctl32/tests: Add themed scrollbar background tests.
uxtheme: Use the brush from WM_CTLCOLORSCROLLBAR to paint SB_CTL scrollbar tracks if present.
uxtheme: Do not draw parent background even if scrollbar arrows and thumb are transparent.
comctl32/datetime: Do not paint parent background when painting arrows.
win32u: Only cache font glyph metrics from GGO_METRICS.
Ziqing Hui (9):
d3dx10/tests: Add tests for D3DX10CreateEffectFromMemory.
d3dx10/tests: Add tests for D3DX10CreateEffectFromFile.
d3dx10/tests: Add tests for D3DX10CreateEffectFromResource.
d3dx10: Introduce create_effect().
d3dx10: Support effect creation for compiled shader.
d3dx10: Return E_FAIL in D3DX10CreateEffectFromFile for NULL file name.
d3dx10/tests: Test block compressed texture data which has more than one block line.
d3d10/tests: Test NULL device for D3D10CreateEffectFromMemory and D3D10CreateEffectPoolFromMemory.
d3d10: Handle invalid arguments for effect creation.
Alexandre Julliard has announced the release of a new Wine development release with High Unicode planes support in DirectWrite, some work towards Wow64 support in the Vulkan driver, and various bug fixes.