Software 42432 Published by

Alexandre Julliard has announced the release of a new Wine development release with support for storing DOS attributes on disk, bundled vkd3d upgraded to version 1.5, support for MPEG-4 audio format, and various bug fixes.

Wine release 7.19

The Wine development release 7.19 is now available.

What's new in this release:
- Support for storing DOS attributes on disk.
- Bundled vkd3d upgraded to version 1.5.
- Support for MPEG-4 audio format.
- Various bug fixes.

The source is available at:

Binary packages for various distributions will be available from:

You will find documentation on

You can also get the current source directly from the git
repository. Check 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.19 (total 17):

- #9158 Multiple Microsoft development tools online/web installers fail to skip "$shtdwn$.req" with FILE_ATTRIBUTE_HIDDEN (Visual Studio Express Editions, .NET Framework 3.0)
- #48414 OpenMPT UI does not render all textboxes correctly
- #50269 Multiple applications need IWMSyncReader::GetOutputCount() implementation (Resident Evil Revelations 2; Ultimate Marvel vs Capcom 3)
- #51884 HP Prime Virtual Calculator Emulator crashes when license agreement screen opens
- #52655 Cubase 12 crashes on unimplemented function advapi32.dll.OpenThreadWaitChainSession
- #52659 No sound for games that utilize windows media player functionality
- #52931 vulkan-1:vulkan fails in Wine on cw-rx460 and Intel cards
- #52954 Kheops Studio adventure games: Graphic bug that prevents any progress in the game
- #53234 nsi:nsi - test_ndis_ifinfo() fails randomly on Windows 10 1507
- #53575 Subtitle Workshop Classic 6.1.4 disabled menu items are not viewable at all with Light theme
- #53615 Sonic Adventure DX (2004) deadlocks on the title screen
- #53645 AIMP 3 causes memory leaks
- #53672 x64dbg crashes when opening executable
- #53673 "AE VN Tools" fails to launch in staging v7.17 (previously "just worked" on staging v7.13)
- #53700 DbgChild crashes on unimplemented function ntdll.dll.RtlDosPathNameToRelativeNtPathName_U
- #53714 SQLGetInfo(W) doesn't fill StringLength when InfoValue is NULL
- #53773 winetricks dotnet35 fails to install


Changes since 7.18:

Akihiro Sagawa (1):
imm32/tests: Don't expect IME window if the parent is message-only window descendant.

Alex Henrie (4):
winegstreamer: Fix memory leak in get_available_media_type (Coverity).
include: Fix typo in LR_VGACOLOR.
include: Fix typos in NIN_BALLOON*.
include: Add LV_COLUMN[AW].

Alexandre Julliard (19):
tests: Do not report flaky tests as failures by default.
user32/tests: Flush window events to fix some race conditions.
user32/tests: Mark some input tests as flaky.
mmdevapi/tests: Mark some capture tests as flaky.
dinput/tests: Mark a mouse input test as flaky.
quartz/tests: Mark some tests as flaky.
vkd3d: Import upstream release 1.5.
Revert "oleaut32: Dereference VT_RECORD|VT_BYREF in place.".
Revert "oleaut32/tests: Get_test_recordinfo shouldn't point into a specific VARIANT.".
vkd3d: Update version number.
gitlab: Run the full test suite on merge requests.
wmvcore/tests: Reduce the number of printed todos.
gdiplus: Get the compositing mode directly from the graphics object.
windowscodecs: Redirect TIFF debug output to the Wine debug functions.
winegstreamer: Respect debug channels configuration for error output.
mmdevapi/tests: Mark some failing tests as flaky.
ngen: Add version resource.
wined3d: Use a Wine debug channel for vkd3d debug output.
d2d1: Use a gcc pragma instead of a compiler flag for -fexcess-precision.

Alistair Leslie-Hughes (9):
odbc: SQLGetInfoW allow NULL parameter InfoValue.
msdasql: Implement IColumnsInfo GetColumnInfo.
msdasql: Select statements return -1 for affected rows in ICommandText Execute.
msdasql: Implement IRowsetInfo GetProperties.
sapi: Store the token id in ISpObjectToken SetId.
sapi: Implement ISpObjectToken GetId.
include: Add missing SP defines.
sapi: Implement ISpRegDataKey CreateKey.
sapi: Implement ISpRegDataKey GetStringValue.

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

Brendan Shanks (6):
ntdll: Set the name of internal thread pool threads.
rpcrt4: Set the name of internal threads.
wininet: Set thread name for collect_connections_proc.
wined3d: Set name of internal threads.
ntdll: Remove shared heap functionality.
kernel32: Remove shared heap functionality.

Connor McAdams (6):
uiautomationcore: Use a separate vtbl for nested node IWineUiaProviders.
uiautomationcore: Don't use nested node providers for same-thread HWNDs.
uiautomationcore: Track all HUIANODEs returned from the provider thread.
uiautomationcore: Implement UiaDisconnectProvider.
uiautomationcore: Store provider thread nodes that have a runtime ID in an rbtree.
uiautomationcore: Add UIAutomationType_Element property support for nested node providers.

David Kahurani (1):
xmllite/writer: Properly validate DocType name.

Eric Pouech (21):
dbghelp: Fix local scope reset upon module unloading.
krnl386.exe16: Don't pass NULL to printf/%s).
winedump: Dump global hash table out of PDB symbols' stream.
winedump: Dump PDB public symbols' stream.
dbghelp: Add support for static variables at function scope (PDB).
dbghelp: Fix container for global variables (Dwarf).
dbghelp: Fix variable storage information (Dwarf).
dbghelp: Don't load invalid records for global symbol stream.
dbghelp: Improve de-duping global symbols information (PDB).
dbghelp: SymFromName* should first look in local context.
dbghelp: Remove address field from symt_compiland.
dbghelp: Expose local static variables' address.
winedbg: Enhance printing of variables or fields.
dbghelp: No longer use wine_dbgstr_longlong.
dbghelp: Silence some FIXME for SymGetTypeInfo/TI_GET_OFFSET.
dbghelp: Keep compiland's address for Dwarf debug format.
dbghelp: Remove symt_close_func_block() stabs's only parameter.
wined3d: Ensure function declaration matches implementation.
wined3d: Ensure method declaration matches implementations.
wined3d: Use I width modifier for debug traces on DWORD_PTR.
conhost: Fix tests on ReadConsole with CONSOLE_READCONSOLE_CONTROL.

Erich Hoover (3):
ntdll: Implement retrieving DOS attributes in [fd_]get_file_info().
ntdll: Implement storing DOS attributes in NtSetInformationFile.
ntdll: Implement storing DOS attributes in NtCreateFile.

Esme Povirk (1):
windowscodecs/tests: Accept new error code from win11.

Etaash Mathamsetty (1):
ntoskrnl.exe: KeInsertQueueDpc stub.

Floris Renaud (1):
po: Update Dutch translation.

François Gouget (10):
tests: Make sure only one thread prints traces at a time.
tests: Print unhandled exception messages in colour.
dpnet/tests: Mark the test_enum_hosts*() tests failing randomly on Windows as flaky.
d3d9/tests: Mark the test_cursor_pos() tests failing randomly on Windows as flaky.
d3d9/tests: Mark the test_wndproc_windowed() tests failing randomly on Windows as flaky.
d3d9/tests: Mark the test_wndproc() tests failing randomly on Windows as flaky.
dxgi/tests: Mark the test_swapchain_window_styles() tests failing randomly on Windows as flaky.
dxgi/tests: Mark the test_swapchain_window_messages() tests failing randomly on Windows as flaky.
gdi32/tests: Mark tests failing randomly on Windows as flaky.
imm32/tests: Mark tests failing randomly on Windows as flaky.

Gabriel Ivăncescu (18):
mshtml: Override document.URL's name when adding it from the mshtml typelib.
include/mshtml: Move some forward interface declarations to match Windows SDK.
mshtml: Implement url prop for StorageEvent.
mshtml: Use actual Gecko event type for MessageEvent and StorageEvent.
mshtml: Expand event_info to include a special entry for EVENTID_LAST.
mshtml: Allocate events via event type.
mshtml: Silence a FIXME when parameter is missing.
jscript: Fill the builtin props for enumeration on prototypes as well.
jscript: Refill the props at end of enumeration in html mode and retry.
mshtml: Fix enumerating first custom prop after builtins.
mshtml: Do not enumerate internal dynamic props.
mshtml: Split the lookup for an element with name into a separate helper.
mshtml: Enumerate document elements with name.
shell32/tests: Test drive letters parsing for My Computer.
shell32: Handle drive letters properly when parsing MyComputer.
mshtml: Expose props via element name only for specific element types.
mshtml: Allow accessing some document elements as props via id.
mshtml: Don't create dynamic prop before checking if elem prop even exists.

Georg Lehmann (1):
winevulkan: Update to VK spec version 1.3.230.

Hans Leidekker (2):
schannel/tests: Fix test failure on Windows 11.
schannel/tests: Get rid of workarounds for old Windows versions.

Henri Verbeet (2):
wined3d: Handle VKD3D_SHADER_RESOURCE_DATA_MIXED in wined3d_data_type_from_vkd3d().
wined3d: Use the supplied context in wined3d_device_context_blt().

Hugh McMaster (2):
kernel32/tests: Add tests for GetConsoleTitle().
kernelbase: Return full title length from GetConsoleTitle().

Huw D. M. Davies (2):
nsi: Use the correct members for the error and discard counts.
nsi: Update struct nsi_tcp_conn_dynamic for Windows 11.

Jacek Caban (10):
vbscript: Fix handling missing description in EXCEPINFO.
winevulkan: Separate 32-bit and 64-bit thunks implementation.
winevulkan: Merge body and body_conversion.
winevulkan: Don't pass params struct to private thunks.
winevulkan: Use generated thunks for basic debug traces.
winevulkan: Always use params to return Unix thunks result.
winevulkan: Pass VkVariable to ConversionFunction constructor.
winevulkan: Separate 32-bit and 64-bit conversion functions.
winevulkan: Introduce conversion_context and use it for conversion memory allocation.
winevulkan: Use host Vulkan structures for private thunks arguments.

Joel Holdsworth (1):
ntdll: Implement retrieving DOS attributes in NtQueryInformationFile.

John Chadwick (1):
wintab32: Fix match_token to match XWayland devices.

Kevin Puetz (10):
vbscript: Only set EXCEPINFO strings for cases that map_hres translated.
vbscript/tests: Test throwException with Description but *not* Source.
vbscript: Do HRESULT->VBSERROR mapping for the whole EXCEPINFO at once.
scrrun/tests: Introduce a test_file_contents helper.
scrrun: Fix FileSystemObject.OpenTextFile when writing to existing files.
oleaut32/tests: Get_test_recordinfo shouldn't point into a specific VARIANT.
oleaut32: Dereference VT_RECORD|VT_BYREF in place.
vbscript: Don't abort when trying to TRACE() functions with many arguments.
rpcrt4/tests: Add tests for lifetime of IRpcChannelBuffer.
rpcrt4: Add a refcount owned by MIDL_STUB_MESSAGE.

Lauri Kenttä (1):
po: Update Finnish translation.

Louis Lenders (1):
wbemprox: Add HypervisorPresent property to win32_ComputerSystem.

Marcus Meissner (1):
ntdll: Fix GetTempPathW() call passing wrong unit for the buffer size.

Mark Jansen (1):
gdi32: Fix possible overflow.

Martin Storsjö (1):
wow64: Use the right SEH opcode in raise_exception on arm64.

Nikolay Sivov (4):
include: Change include guard for wininet.h.
include: Add IActiveDesktop definition.
shell32: Add Active Desktop stub.
dxva2/tests: Add another render target format to fix a test failure.

Paul Gofman (26):
ntdll: Fix processor package mask in SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX structure.
winex11.drv: Do not skip taskbar and pager for app window.
msi: Disable FS redirection for temporary file in cabinet_copy_file().
crypt32: Set correct exponent length in decoded BCRYPT_RSAKEY_BLOB.
wintrust/tests: Add tests for multiple PE signatures.
wintrust: Initialize CRYPT_PROVIDER_SIGSTATE structure in Softpub provider.
wintrust: Load secondary signatures in SoftpubLoadSignature().
wintrust: Support WSS_GET_SECONDARY_SIG_COUNT in Softpub provider.
d3d8/tests: Add test for NULL hDeviceWindow in presentation parameters.
d3d9/tests: Add test for NULL hDeviceWindow in presentation parameters.
wined3d: Replace NULL device_window with focus window in swapchain desc.
msvcp140: Import __ExceptionPtrCopy implementation.
msvcp140: Import __ExceptionPtrAssign implementation.
msvcp140: Import __ExceptionPtrRethrow implementation.
msvcp140: Import __ExceptionPtrCurrentException implementation.
msvcp140: Import __ExceptionPtrToBool implementation.
msvcp140: Import __ExceptionPtrCopyException implementation.
msvcp140: Import __ExceptionPtrCompare implementation.
include/windows.devices.enumeration: Define DeviceAccessInformation class.
windows.devices.enumeration: Create stub DeviceAccessInformation class.
windows.devices.enumeration: Add stub IDeviceAccessInformation interface.
vcruntime140_1: Link to vcruntime140.
msvcp140: Link to vcruntime140.

Piotr Caban (10):
comctl32/tests: Test PROPERTYSHEETPAGE passed in WM_INITDIALOG.
comctl32/tests: Test passing extra data in PROPSHEETPAGE structure.
comctl32/tests: Add more PROPSHEETPAGE tests inside callback.
comctl32/tests: Test passing PropertySheetPage as HPROPSHEETPAGE.
comctl32: Don't pass PROPSHEETPAGE to SetWindowSubclass in PROPSHEET_CreatePage.
comctl32: Introduce _PSP structure to store HPROPSHEETPAGE data.
comctl32: Use HPROPSHEETPAGE directly in PROPSHEET_CollectPageInfo.
comctl32: Use HPROPSHEETPAGE directly in PROPSHEET_CreatePage.
comctl32: Use HPROPSHEETPAGE directly in PROPSHEET_GetPageRect.

Rémi Bernon (75):
winegstreamer: Use IWMSyncReader2_GetMaxStreamSampleSize in the async reader.
winegstreamer: Use IWMSyncReader2_GetOutputProps in the async reader.
winegstreamer: Use IWMSyncReader2_SetOutputProps in the async reader.
winegstreamer: Use IWMSyncReader2_GetOutputFormat in the async reader.
winegstreamer: Use IWMSyncReader2_GetOutputFormatCount in the async reader.
winegstreamer: Use IWMSyncReader2_GetStreamSelected in the async reader.
winegstreamer: Use IWMSyncReader2_SetStreamsSelected in the async reader.
winegstreamer: Use IWMSyncReader2_GetOutputCount in the async reader.
wmvcore/tests: Test IWMSyncReader2_(Get|Set)AllocateFor(Output|Stream).
wmvcore/tests: Test IWMReaderAllocatorEx usage and parameters.
winegstreamer: Factor wm reader sample allocator error checks.
winegstreamer: Implement IWMSyncReader2_SetAllocateForOutput.
winegstreamer: Implement IWMSyncReader2_GetAllocateForOutput.
winegstreamer: Implement IWMSyncReader2_SetAllocateForStream.
winegstreamer: Implement IWMSyncReader2_GetAllocateForStream.
winegstreamer: Implement H264 decoder GetStreamLimits / GetStreamCount.
winegstreamer: Implement WMA decoder GetStreamLimits / GetStreamCount.
winegstreamer: Check Video Processor Get(OutputStream)Attributes pointers.
winegstreamer: Return E_NOTIMPL from color_convert GetInputStreamAttributes.
mf/tests: Test miscellaneous and optional IMFTransform methods.
winegstreamer: Remove FIXME / stub! from optional transform methods.
winegstreamer: Keep input / output stream info in struct color_convert.
winegstreamer: Keep input / output stream info in struct resampler.
winegstreamer: Keep input / output stream info in struct video_processor.
winegstreamer: Keep input / output stream info in struct wma_decoder.
winegstreamer: Keep input / output stream info in struct h264_decoder.
winegstreamer: Stop requiring input type in H264 decoder GetInputStreamInfo.
mf/tests: Factor IMFTransform_Get(Input|Output)StreamInfo checks together.
mf/tests: Factor transform (Get|Set)(Input|Output)CurrentType tests together.
mf/tests: Add some AAC encoder MFT encoding tests.
mf/tests: Add some AAC decoder MFT decoding tests.
mf/tests: Avoid setting transform types while enumerating.
mf/tests: Test WMV decoder MFT / DMO presence and media types.
mf/tests: Test WMV encoder MFT / DMO presence and media types.
mf/tests: Add some WMV encoder MFT / DMO encoding tests.
mf/tests: Add some WMV decoder MFT / DMO decoding tests.
makedep: Add an import type parameter to add_import_libs.
makedep: Link default imports separately from direct imports.
makedep: Link with imported libs before delay imported libs.
shcore: Use delay import for user32 and ole32.
regedit: Call InitCommonControls after command-line has been processed.
regedit: Add a direct import for shcore.
mf: Avoid clearing media session command list while it is running.
winegstreamer: Move CINEPAK encoded format to a separate major type.
winegstreamer: Rename WG_MAJOR_TYPE_H264 to WG_MAJOR_TYPE_VIDEO_H264.
winegstreamer: Reorder video format struct in wg_format.
winegstreamer: Wrap callback in a IWMReaderAllocatorEx in the async reader.
winegstreamer: Use IWMSyncReader2_SetAllocateForOutput in the async reader.
winegstreamer: Use IWMSyncReader2_GetAllocateForOutput in the async reader.
winegstreamer: Use IWMSyncReader2_SetAllocateForStream in the async reader.
winegstreamer: Use IWMSyncReader2_GetAllocateForStream in the async reader.
winegstreamer: Use IWMSyncReader2_GetNextSample in the async reader.
winex11.drv: Sync window positions in a WM_X11DRV_DESKTOP_RESIZED message.
winex11.drv: Send WM_X11DRV_CLIP_CURSOR_REQUEST message from the deskop.
win32u: Send WM_DISPLAYCHANGE message to the desktop window.
winex11.drv: Resize desktop window on WM_DISPLAYCHANGE message.
winemac.drv: Resize desktop window on WM_DISPLAYCHANGE message.
winegstreamer: Make IMFTransform_ProcessOutput checks more consistent.
winegstreamer: Create wg_sample from IMFSample within of wg_transform_read_mf.
winegstreamer: Register AAC decoder MFT stub.
winegstreamer: Register WMV decoder MFT / DMO stub.
win32u: Asynchronously send the WM_DISPLAYCHANGE to the desktop window.
mf/tests: Factor test grabber callback implementations.
mf/tests: Check sample grabber RGB / NV12 orientation.
mfmediaengine/tests: Pass a device manager and output format to create_media_engine.
mfmediaengine/tests: Check IMFMediaEngine_TransferVideoFrames output orientation.
mfmediaengine: Remove vertical flipping of video frames.
opengl32: Split trace generation to separate functions.
opengl32: Consistently use $func instead of $func_ref.
opengl32: Replace get_function_proto helper with get_func_(args|ret).
opengl32: List the manually written functions instead of the excluded.
winegstreamer: Support MPEG4 (AAC) compressed audio format.
winegstreamer: Implement AAC decoder MFT.

Sebastian Lackner (1):
ntdll: Improve stub of NtQueryEaFile.

Zebediah Figura (13):
d3d9: Factor out d3d9_texture_init().
d3d9: Introduce a d3d9_texture_preload() helper.
d3d9: Add reference counting helpers for textures.
d3d9: Use a separate draw texture for managed resources.
ddraw: Add FPS tracing in ddraw_surface_update_frontbuffer().
widl: Generate "static inline" instead of "static FORCEINLINE" for COM inline wrappers.
d3d8: Factor out d3d8_texture_init().
d3d8: Introduce a d3d8_texture_preload() helper.
d3d8: Add reference counting helpers for textures.
d3d8: Use a separate draw texture for managed resources.
qcap: Fix frame interval calculation.
qcap: Fix reversed max_fps and min_fps.
qcap/tests: Test that the video capture filter sets timestamps.

Zhiyi Zhang (2):
light.msstyles: Use a darker color for inactive captions.
vulkan-1/tests: Fix test failures on llvmpipe.