Software 42316 Published by

Alexandre Julliard has announced a new development release of the Windows compatibility layer Wine. This version comes with theming support in all builtin programs, all remaining CRT math functions imported from Musl, MP3 support requires libmpg123 also on macOS, support for codepage 720 (Arabic), and various bug fixes.



Wine release 6.11

The Wine development release 6.11 is now available.

What's new in this release (see below for details):
- Theming support in all builtin programs.
- All remaining CRT math functions imported from Musl.
- MP3 support requires libmpg123 also on macOS.
- Support for codepage 720 (Arabic).
- Various bug fixes.

The source is available from the following locations:

https://dl.winehq.org/wine/source/6.x/wine-6.11.tar.xz
http://mirrors.ibiblio.org/wine/source/6.x/wine-6.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 6.11 (total 33):

24172 Microsoft SyncToy 2.1 doesn't start with Wine-Mono
29184 Hogs of War: ground is missing somewhere
30244 Might & Magic Clash of Heroes: fails to start
36165 msvcrt/string tests fail under valgrind
37149 python 3.1.1: test_cmath failed
37858 WHO Anthro (.NET app) installer fails, reporting 'FATAL UNHANDLED EXCEPTION: The specified table does not exist.'
39142 Roblox Client/Server connection is dropped with error "This server has shut down."
40505 PDF Eraser Shows False File Names in File Open dialog with wine-mono
41048 Roller Coaster Rampage fails to start: 'Failed to init XACT' - {0aa000aa-f404-11d9-bd7a-0010dc4f8f81} xactengine2_0.dll
41292 Nexton LC-ScriptEngine freezes, possibly bad dsound notifications
41403 Ri-li 2.0.1 shows black screen instead of actual game content
42215 Pendulumania: Black screen (needs to emulate 8bpp mode in winex11)
42928 EmuMovies Sync 2.x fails login with Wine-Mono
44511 Winecfg - Only partially shows new theme after clicking apply
45202 Stories: The Path of Destinies - multicolored textures
45940 Missing CLSID e018945b-aa86-4008-9bd4-6777a1e40c11 (CLSID_WICPngDecoder2 ?)
46043 Notepad++ v7.5.9 x86 'MarkdownViewer++' v0.8.2 plugin (.NET 4.0 based) causes abnormal program termination with Wine-Mono 4.7.3
47812 Cygwin's strace.exe crashes due to custom TLS corruption
48891 Bash from Cygwin/msys2 terminates after first command
49459 Memu installer fails: wine: Call from 0x7b00f0b7 to unimplemented function wuaueng.dll.DllRegisterServer, aborting
49668 Two Worlds Epic Edition needs {cd0d66ec-8057-43f5-acbd-66dfb36fd78c}, xactengine2_7 to play audio
50041 Amnesia: Rebirth crashes with builtin vcomp140
50520 Multiple applications need WSAIoctl(SIO_BASE_HANDLE) (Rust applications using the Mio or Smol libraries, Starcraft Remastered)
50592 ZynAddSubFX 3.0.3 Demo can't load/open/save presets
50595 Foxit Reader 5.1 crashes on unimplemented function 'msdrm.dll.DRMRegisterContent' when exiting
50615 Excel 2007 needs ICreateTypeInfo2::DeleteFuncDesc()
51184 test_font_metrics() fails in gdi32:font for bitmap fonts on Windows 10 >= 1709
51192 GnuTLS error: Error in the pull function/ Login to Teamspeak, Blizzard... not possible.
51222 Multiple games have rendering issues caused by import of logf from musl (Kingdom Come: Deliverance, Just Cause 4, Wizard101)
51224 Otvdm can't start any Win16 application
51231 WeChat can't display QR code in login dialog.
51262 Since 308a5e7 no 32bit program starts
51273 Starcraft 2 64 bit .exe not starting since 25b093f384

----------------------------------------------------------------

Changes since 6.10:

Akihiro Sagawa (4):
quartz/tests: Introduce commit_allocator helper in vmr7.c.
quartz/tests: Test the close button of the video window.
quartz: Hide video window on WM_CLOSE.
quartz: Notify EC_USERABORT event when closing video window.

Alexandre Julliard (28):
ntdll: Validate the extended context before modifying the other registers.
ntdll: Only restore the modified parts of the syscall frame on x86-64.
ntdll: Only restore the modified parts of the syscall frame on i386.
ntdll: Create a thread to run the ctrl-C routine instead of raising an exception.
ntdll: Fix some exception test failures on ARM.
ntdll: Fix some exception test failures on ARM64.
kernel32: Don't export __chkstk() on ARM64.
ntdll: Allow the dispatcher functions to return to the caller.
ntdll: Always allocate extra stack space for the kernel stack.
ntdll: Switch to the kernel stack for syscalls on i386.
ntdll: Switch to the kernel stack for syscalls on x86-64.
ntdll: Switch to the kernel stack for syscalls on ARM64.
ntdll: Switch to the kernel stack for syscalls on ARM.
ntdll: Simplify the platform-specific dispatcher interface.
ntdll: Don't update cached registers if NtGetContextThread() fails.
ntdll: Move the XSTATE definitions to the platform-specific files.
ntdll: Also pass the TEB to signal_exit_thread().
ntdll: Always use the TEB that was passed to signal_start_thread().
ntdll: Store the current PEB in a global variable.
ntdll: Store the debug info in the TEB block after the 32-bit TEB.
ntdll: Copy the implementation of __wine_dbg_strdup and __wine_dbg_header to the PE side.
ntdll: Don't allow single-stepping through syscalls.
ntdll: Copy the implementation of __wine_dbg_output to the PE side.
ntdll: Add a helper to get the Wow64 TEB.
ntdll: Remove special case for setting permissions on stack pages.
ntdll: Support growing both 32- and 64-bit stacks.
ntdll: Ignore faults caused by alignment check on x86-64.
ntdll/tests: Adapt some of the i386 tests to run on x86-64 as well.

Alistair Leslie-Hughes (6):
msado15/test: Remove Reference count tests.
msado15/tests: Add Field tests.
msado15: Correct field reference value.
msado15: Support VT_I4/I2 for Fields Item property.
msado15: Convert to Integer for field index.
dpnhupnp: Stub DirectPlayNATHelpCreate and DllGetClassObject.

Andrew Eikum (3):
advapi32/tests: Avoid gcc 11 misleading-indentation warning.
comctl32: Avoid gcc 11 maybe-uninitialized warning.
shell32: Always create default known folder directories.

Austin English (1):
dpnhupnp: Add stub dll.

Brendan Shanks (2):
configure: Work around Xcode 12's ld assuming 16KB page sizes.
winecoreaudio: Remove workarounds for Mac OS X 10.4 and 10.5.

Connor McAdams (1):
d3dx9: Remove unnecessary call to D3DXMatrixTranspose.

Damjan Jovanovic (1):
server: The owner of a securable object should have all the standard access rights.

Derek Lesho (2):
mfplat: Fix max buffer length for IMC2/IMC4 formats.
mfplat: Copy all image planes in buffer copies.

Dmitry Timoshkov (3):
gdi32/tests: Test otmEMSquare only for Truetype fonts.
mshtml: Fix typos in traces.
include: Add IAuthenticateEx interface definition.

Esme Povirk (5):
sppc: Stub SLPersistApplicationPolicies.
advapi32: Fix typo.
sechost: Reject string SIDs with too many characters.
sechost: SID strings are case-insensitive.
sechost: Implement hexadecimal SID parsing.

Florian Eder (1):
cmd: Do not change errorlevel when setting environment variables.

François Gouget (9):
urlmon/tests: Fix a typo in a comment.
wininet/tests: Fix an InternetQueryOptionA/W mixup in test_secure_connection().
user32/tests: Use winetest contexts to simplify set_clipboard_data_process().
make_unicode: Add support for the 720 codepage (Arabic, Farsi and Urdu).
wined3d: Avoid an unneeded NULL cast.
gdi32/tests: Add a context to the testJustification() failure message.
gdi32/tests: Use a winetest context for test_font_metrics().
user32/tests: Preserve the initial GetLastError() value for test_ClipboardOwner().
user32/tests: Use the caller line number for open_clipboard() & co.

Gijs Vermeulen (3):
vcomp: Implement omp_get_num_procs().
ntdll: Avoid declaration-after-statement warning.
secur32: Default to building with GnuTLS support on macOS, if present.

Giovanni Mascellani (5):
mf/session: Fix computing fastest and slowest presentation rates.
winex11.drv: Allow keyboard layout score to be negative.
winex11.drv: Do not pollute logs with misencoded bytes.
mf/session: Reset END_OF_PRESENTATION flags when stopped.
winegstreamer: Expose the MF_MT_VIDEO_ROTATION attribute.

Haidong Yu (2):
shell32: Fix a memory leak.
shell32: Fix a memory leak.

Hans Leidekker (4):
winhttp: Fix a buffer size check.
winhttp: Remove redundant parentheses.
winhttp: Use CRT memory allocators.
secur32: Translate errors from push/pull callbacks.

Henri Verbeet (6):
d3d11/tests: Add a test for image UAV clears.
wined3d: Introduce wined3d_mask_from_size().
wined3d: Implement OpenGL image UAV clears using ARB_clear_texture.
d3d11: Implement d3d11_device_context_ClearUnorderedAccessViewFloat().
wined3d: Use the texture level count to calculate sub-resource indices for OpenGL mip-map generation.
wined3d: Use the texture level count to calculate sub-resource indices for Vulkan mip-map generation.

Hiroki Awata (1):
dsound: Notify DSBPN_OFFSETSTOP earlier.

Hugh McMaster (11):
regedit: Allow deletion of selected values without focus.
reg/tests: Test how values are overwritten when copying.
reg/tests: Modify delete_key() to support use of RegDeleteKeyEx().
reg/tests: Update reg_open() and reg_open_() definitions.
reg/tests: Modify verify_key() to support opening of registry views.
reg/tests: Modify verify_key_nonexist() to support registry views.
reg/tests: Update delete_value() declaration to deconstify 'const HKEY'.
reg/tests: Modify add_key() to support key creation in registry views.
reg/tests: Test key and value creation in 32-bit and 64-bit registry views.
reg: Support the use of registry views during the 'add' operation.
reg/tests: Move 'delete' syntax tests into a separate function.

Jacek Caban (2):
gdi32: Fix SetPixel error return value.
win32u: Add stub DLL.

Jactry Zeng (3):
riched20/tests: Lock hGlobal before use.
riched20: Allow to insert OLE object at specified offset.
riched20/tests: Add more tests for testing EM_GETTEXTEX with OLE objects.

Jan Sikorski (2):
wined3d: Fix typo in wined3d_texture_vk_prepare_texture().
wined3d: Don't pass a 3D texture view's depth range as layer range to Vulkan.

Kalen Alwardt (1):
ntdll: Export ZwFilterToken().

Nguyễn Chính Hữu (1):
wined3d: Add GPU information for NVIDIA GT 1030.

Nikolay Sivov (17):
dxva2: Accept AYUV as input format.
dxva2: Check input stream format in GetVideoProcessorDeviceGuids().
mfplat/buffer: Fix maximum length for YV12 format.
dxva2/tests: Remove a test failing on system with hw dxva devices support.
d2d1: Cache sampler state objects at device context.
d2d1: Remove unused argument from constant buffer initialization helper.
d2d1: Reuse PS constant buffer object.
d3d11: Fix freed memory access when releasing device context (Coverity).
d2d1: Reuse VS constant buffer object.
winegstreamer: Let async command handle request token.
mf: Move presentation clock implementation to a separate file.
mf/session: Reset per-node end of stream flags when stopped.
mf/session: Reset topology status back to READY when stopped.
mf: Use CRT allocation functions.
include: Add IMFWorkQueueServicesEx definition.
mfplay: Create media item on player creation, when url is specified.
mfplay: Start playback on player creation automatically, when enabled.

Paul Gofman (8):
jscript: Parse 'let' and 'const' variable declarations.
shell32: Don't specify the startup directory for CreateProcessW() in SHELL_ExecuteW().
jscript: Factor local_ref_scopes_t structure out of function_code_t.
jscript: Enumerate with and block scopes.
jscript: Support block scope variables.
jscript: Support nested scopes for functions defined inside.
mshtml/tests: Add test for multiple JS scope instances.
mshtml/tests: Add a test for JS functions scope.

Piotr Caban (11):
msvcrt: Fix logf implementation.
msvcrt: Import tgamma implementation from musl.
msvcrt: Import tgammaf implementation from musl.
msvcrt: Import fmaf implementation from musl.
msvcrt: Import exp2f implementation from musl.
msvcrt: Import expf implementation from musl.
msvcrt: Import powf implementation from musl.
msvcrt: Import exp2 implementation from musl.
msvcrt: Import exp implementation from musl.
msvcrt: Fix math error arguments in powf.
msvcrt: Import pow implementation from musl.

Roberto Pungartnik (1):
po: Update Brazilian Portuguese translation.

Roman Pišl (1):
ntdll: Allow loading of native libraries for Win16.

Rémi Bernon (41):
hid/tests: Don't print buttons after HidP_GetUsages failed.
hidclass.sys: Handle failures when parsing descriptor.
hidclass.sys: Remove Delim member from struct caps.
hidclass.sys: Use HIDP_VALUE_CAPS instead of struct caps.
hidclass.sys: Factor all HIDP_VALUE_CAPS debug helpers.
hid: Use caps.BitSize to differenciate buttons from values.
include: Add HID haptics usage page.
hidclass.sys: Don't crash when no buffer was provided.
xinput1_3: Use msvcrt allocation functions.
xinput1_3: Check for HID failures and print warnings.
xinput1_3: Store HIDP_CAPS in hid_platform_private struct.
xinput1_3: Use input report length from HIDP_CAPS.
xinput1_3: Allocate output report buffer on the heap.
hidclass.sys: Fix incorrect feature report debug print.
hidclass.sys: Dump HID descriptor with 16 byte columns.
hidclass.sys: Use realloc instead of HeapReAlloc.
ntoskrnl.exe/tests: Silent a todo_wine failing test after a while.
ntoskrnl.exe/tests: Use HID helper macros to write report descriptors.
ntoskrnl.exe/tests: Add some buttons and hatswitch controls.
hid: Check preparsed data magic in HidP_GetLinkCollectionNodes.
ntoskrnl.exe/tests: Add some HidP_Get(Specific)ButtonCaps tests.
ntoskrnl.exe/tests: Add some HidP_Get(Specific)ValueCaps tests.
ntoskrnl.exe/tests: Add some HidP_GetLinkCollectionNodes tests.
ntoskrnl.exe/tests: Add some HidP_InitializeReportForID tests.
ntoskrnl.exe/tests: Don't call CertFreeCertificateContext on cleanup.
hid: Implement HidP_SetUsageValueArray stub.
ntoskrnl.exe/tests: Add tests with and without report IDs.
ntoskrnl.exe/tests: Add more reports with complex HID syntax.
ntoskrnl.exe/tests: Add some HidP get/set values tests.
ntoskrnl.exe/tests: Add some HidP get/set usages tests.
ntoskrnl.exe/tests: Add some HidP_GetData tests.
hidclass.sys: Simplify signed / unsigned item value parsing.
hidclass.sys: Use a single switch to parse all item types.
hidclass.sys: Introduce new hid_parser_state struct.
hidclass.sys: Add a stack to parser_state to store global items.
hidclass.sys: Use the stack to store collection items.
hidclass.sys: Set BitField item to current value.
hidclass.sys: Create link collection caps during parsing.
hidclass.sys: Remove unused struct feature members.
hidclass.sys: Remove unused struct collection members.
hidclass.sys: Split feature parsing to separate helper.

Stefan Dösinger (2):
user32: Release the icon frame in CopyImage.
user32: Delete info.hbmColor and hbmMask after copying.

Torge Matthies (1):
winex11.drv: Avoid race condition in X11 error handling.

Vijay Kiran Kamuju (2):
msdrm: Add stub DRMRegisterContent function.
windowscodecs: Add initial support for WICPngDecoder2.

Yeshun Ye (1):
iphlpapi: Fix the field 'AdapterName' of IP_ADAPTER_INFO returned by GetAdaptersInfo.

Zebediah Figura (67):
configure: Always warn on missing GStreamer if --with-gstreamer was specified.
configure: Also warn on missing GStreamer if --without-quicktime was specified.
ws2_32: Use getifaddrs() and if_nametoindex() directly in interface_bind().
ws2_32: Use IOCTL_WINE_AFD_COMPLETE_ASYNC in SIO_ADDRESS_LIST_QUERY.
server: Don't rely on async_is_blocking() to determine whether IOCTL_AFD_WINE_ADDRESS_LIST_CHANGE should block.
ws2_32: Wait for synchronous ioctl completion in server_ioctl_sock().
ws2_32/tests: Test passing an output buffer to FIONBIO.
ws2_32: Explicitly ignore the output buffer in FIONBIO.
ntdll: Introduce IOCTL_AFD_WINE_GET_INTERFACE_LIST.
ws2_32: Use IOCTL_AFD_WINE_GET_INTERFACE_LIST.
ntdll: Introduce IOCTL_WINE_AFD_KEEPALIVE_VALS.
ws2_32: Use IOCTL_WINE_AFD_KEEPALIVE_VALS.
ws2_32: Fix the indentation of SIO_ROUTING_INTERFACE_QUERY.
ws2_32: Use IOCTL_WINE_AFD_COMPLETE_ASYNC in SIO_ROUTING_INTERFACE_QUERY.
ws2_32: Use IOCTL_AFD_WINE_COMPLETE_ASYNC for unimplemented ioctls.
ws2_32: Return WSAEOPNOTSUPP in SIO_FLUSH.
ws2_32: Return WSAEOPNOTSUPP in FIOASYNC.
l3codeca.acm: Remove the Mac OS AudioToolbox backend.
l3codeca.acm: Call mp3_horse() directly.
l3codeca.acm: Simplify error handling in MPEG3_StreamOpen().
l3codeca.acm: Store the mpg123 handle directly as the ACM driver data.
ws2_32/tests: Add more tests for calling functions on a connecting socket.
server: Return STATUS_INVALID_PARAMETER when trying to call connect() on a socket with an active ConnectEx() async.
server: Fail with WSAEINVAL or WSAEALREADY when trying to connect a socket that is already connecting via nonblocking connect().
ws2_32: Use IOCTL_AFD_WINE_COMPLETE_ASYNC in SIO_UDP_CONNRESET.
ws2_32: Implement SIO_BASE_HANDLE.
server: Do not return the socket state from get_socket_event.
server: Make FD_WINE_NONBLOCKING into a separate field.
server: Use separate fields to track socket shutdown state.
server: Use an enum to store socket connection state.
server: Do not bother clearing events in IOCTL_AFD_WINE_CONNECT.
server: Do not bother clearing events in IOCTL_AFD_LISTEN.
server: Free the old process image name if a second process image is mapped (Valgrind).
server: Use AFD_POLL_* flags internally.
server: Store the socket errors as an array of Unix errno values.
server: Implement IOCTL_AFD_EVENT_SELECT.
ws2_32: Use IOCTL_AFD_EVENT_SELECT.
ws2_32/tests: Add some tests for IOCTL_AFD_EVENT_SELECT.
ntdll: Reserve space for the whole 64-bit YMM context in struct x86_thread_data.
qcap/tests: Add some tests for filter state on the video capture filter.
qcap/tests: Add tests for allocator management by the video capture filter.
qcap/vfwcapture: Do not fail vfw_capture_init_stream() if IMemAllocator::SetProperties() fails.
server: Implement IOCTL_AFD_GET_EVENTS.
server: Do not poll sockets for POLLPRI unless we are selecting for AFD_POLL_OOB.
ws2_32: Use IOCTL_AFD_GET_EVENTS in WSAEnumNetworkEvents().
ws2_32/tests: Add some tests for IOCTL_AFD_GET_EVENTS.
server: Introduce IOCTL_AFD_WINE_MESSAGE_SELECT.
ws2_32: Use IOCTL_AFD_WINE_MESSAGE_SELECT.
server: Remove the no longer used set_socket_event request.
ws2_32/tests: Add a couple more tests for getsockname().
server: Partially implement IOCTL_AFD_BIND.
server: Implement IOCTL_AFD_GETSOCKNAME.
server: Return the socket address from IOCTL_AFD_BIND.
ws2_32/tests: Add some tests for IOCTL_AFD_BIND and IOCTL_AFD_GETSOCKNAME.
server: Return STATUS_ADDRESS_ALREADY_ASSOCIATED from IOCTL_AFD_BIND if the socket is already bound.
ws2_32: Reimplement bind() and getsockname() on top of IOCTL_AFD_BIND and IOCTL_AFD_GETSOCKNAME respectively.
server: Correctly access the sir_lsap_sel field.
ws2_32: Check if the socket is bound in listen() in the server.
ws2_32: Pass a Win32 socket address to IOCTL_AFD_WINE_CONNECT.
ws2_32: Check if the socket is bound in ConnectEx() in the server.
ws2_32: Move the getpeername() implementation to ntdll.
ntdll/tests: Relax tests for RtlWaitOnAddress() timeout.
ws2_32: Remove some unused declarations.
ws2_32: Make the indentation in WSAAccept() consistent with the rest of the file.
server: Introduce IOCTL_AFD_WINE_DEFER.
ws2_32: Use IOCTL_AFD_WINE_DEFER.
server: Remove the no longer used set_socket_deferred request.

Zhiyi Zhang (27):
gdi32: Return correct color depth for display DCs in GetDeviceCaps().
gdi32: Implement MFDRV_SetLayout().
gdi32: Use a common helper for emf StretchBlt and AlphaBlend.
gdi32: Add more emf StretchBlt tests.
write: Use correct wordpad.exe path.
control: Enable visual styles.
dxdiag: Enable visual styles.
explorer: Enable visual styles.
extrac32: Enable visual styles.
msiexec: Enable visual styles.
msinfo32: Enable visual styles.
notepad: Enable visual styles.
oleview: Enable visual styles.
regedit: Enable visual styles.
taskmgr: Enable visual styles.
view: Enable visual styles.
wineboot: Enable visual styles.
winefile: Enable visual styles.
winemine: Enable visual styles.
winevdm: Enable visual styles.
winver: Enable visual styles.
wordpad: Enable visual styles.
gdi32: Partially implement HALFTONE stretch mode.
clock: Enable visual styles.
uninstaller: Enable visual styles.
winedbg: Enable visual styles.
winetest: Enable visual styles.

Ziqing Hui (4):
d3dx10/tests: Check more members of texture descriptor.
d3dx10/tests: Use winetest_push_context.
d3dx10/tests: Test subresource data for created texture.
windowscodecs/tests: Use winetest_push_context for DDS tests.

Wine