The Wine development release 3.16 is now available. What's new in this release (see below for details): - Initial implementation of OPC Services. - Support for rendering buttons from an ImageList. - Better support for CSS properties in MSHTML. - Namespace fixes in XML Writer. - Various bug fixes. The source is available from the following locations: https://dl.winehq.org/wine/source/3.x/wine-3.16.tar.xz http://mirrors.ibiblio.org/wine/source/3.x/wine-3.16.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.16 (total 43): 19801 cygwin can't run a batch file from inside a shell script without explicit cmd /c 22255 Total Commander: Deleting the 1st or 2nd character in an edit box deletes all of them 22440 Total Commander: The panels showing Brief are not resized vertically when the application window is resized vertically 24623 Windows Live Essentials 2011 installer doesn't show any options on the first screen (support for BCM_GETIDEALSIZE needed, ideal width and height for a specified button) 30856 Atmel Studio 6 fails to start with Visual Studio 2010 Isolated Shell, reporting 'Cannot find one or more components. Please reinstall the application.' 36142 Symantec Norton 360 installer fails ('rpcss' needs to be a proper Windows service) 37175 Call of Duty 2: Video playback is not working 38339 Can't change resolution in Call of Duty 4 38432 Xeon 1.0 (Xbox emulator) fails to load (PE image prelinked into DOS reserved area and default process heap range, no relocation possible) 40062 Media Player Classic Home Cinema does not show bitmaps in buttons, needs BCM_SETIMAGELIST 40064 Atmel Studio 7: 'DDAConfigCA' tool (part of Visual Studio 2015 Isolated Shell) crashes on unimplemented function api-ms-win-crt-runtime-l1-1-0.d._configure_wide_argv 40445 WinSCP main window lacks icons (unimplemented BCM_SETIMAGELIST?) and indentation for hosts 40598 Warframe 'launcher.exe' reports 'update failed' ('InternetCrackUrlW' must resize buffer when URL canonicalization fails due to insufficient buffer) 40704 foobar2000 v1.3.10 crashes on alt-F (file menu shortcut) 42577 Far manager: needs virtdisk.dll.GetStorageDependencyInformation 42710 Wechat can not send file to friend 42880 Ragnarok Online doe not clear the loading screen. 43488 Bluestacks crashes in ITextService::TxGetVScroll() 45246 Free Manga Downloader(all): no text on some boxes. 45372 Resident Evil 7 requires mfplat.dll.MFCreateMFByteStreamOnStream to be implemented 45430 Improve diagnostics of 'D3DxxCreateDevice' failures for warp driver type (D3D10_DRIVER_TYPE_WARP or D3D_DRIVER_TYPE_WARP) 45617 Just Dance 2017: Unimplemented function mfplat.dll.MFCreateSample 45622 Overwatch crashes when trying to save highlights (needs mfplat.MFTRegisterLocal implementation) 45715 Just Dance 2017: Unimplemented function mfplat.dll.MFCreateMemoryBuffer 45722 cmd for loop doesn't work with tokens and delims 45727 Quik 7: Regression with button bitmaps after 3.6 release - No any bitmap on the buttons in a messages window 45729 cmd's REM evaluates | 45731 cmd for loops sensitive to whitespace 45735 Neo Manager (formerly known as Alphasmart Manager) not installed, cannot read out via USB 45738 Unable to compile on macOS after "winhttp: Use winsock sockets" 45743 Firefox 61.x crashes on startup due to missing pipe server object type information (Chromium Windows sandbox handle duplication service) 45747 GPU-GPU depth stencil blit is slow (FF XIV) 45753 Office 2010 reruns setup on starting any app 45770 WMP9 crashes with unimplemented function pidgen.dll.PIDGenSimpW 45771 Parts of page(s) content missing when printing (seen in Framemaker 8) 45784 Bethesda Launcher Updater crashes on unimplemented function msvcp110.xtime_get 45785 Bethesda Launcher Updater crashes on unimplemented function msvcp110._Xtime_diff_to_millis2 45786 GTA downgrader (.NET program latest.exe) crashes: "Can't find matching timezone information" ("America/Sao_Paulo") 45788 Mouse pointer is off from the visible cursor by huge margin in steam, when winecfg DPI is different from Xorg 45798 NVIDIA GeForce Experience 3.x installer fails due to missing support for 'WinHttpSetOption( ..., WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT, ...)' 45800 Symantec Eraser Control Driver 'eeCtrl64.sys' (Norton 360) crashes on unimplemented function ntoskrnl.exe.ExReleaseResourceLite 45802 ReactOS logoff procedure needs 'mpr.WNetClearConnections' to disconnect user session network share connections 45821 Metasploit Console won't start due to missing registry value HKLM\System\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath ---------------------------------------------------------------- Changes since 3.15: Alex Henrie (6): ws2_32/tests: Mark the IPX-not-supported error code test as todo. opengl/tests: Don't run Pbuffer tests if no Pbuffer can be created. shell32/tests: Mark a shell dispatch test as todo on x64 and ARM. msvcrt: Don't report an underflow for ldexp(0, x) or _scalb(0, x). wine.inf: Add TCP/IP DataBasePath value. ntdll/tests: Handle case where process doesn't have its own DEP policy. Alexandre Julliard (7): gdi32: Don't return screen resolution on printer devices. shell32: Assume that system directory always contains a drive letter. shell32: Avoid infinite loop in _SHExpandEnvironmentStrings. shell32: Re-add support for expanding ALLUSERSPROFILE for backward compatibility. user32: Ignore application-specified DPI awareness when DPI scaling is disabled. server: Remove unnecessary structure names. winex11: Make pixel format traces more compact. Alistair Leslie-Hughes (10): include: Add MmIsAddressValid to header. mfplat: Add MFTRegisterLocal stub. mfplat: Add MFTUnregisterLocal stub. mfplat: Implement MFCreateMFByteStreamOnStream. mfplat: Implement MFCreateMemoryBuffer. mfplat: Correct spec for MFTRegisterLocal. ddraw: Accept the d3d1 and d3d2 versions of D3DFINDDEVICERESULT in ddraw_find_device(). mfplat: Forward IMFMediaType to IMFAttributes. mfplat: Forward IMFStreamDescriptor to IMFAttributes. mfplat: Implement MFCreateSample. Andrew Wesie (1): wined3d: Use raw blit for supported depth-stencil blits. André Hentschel (8): ntdll: Bump Win 10 version to 17134. api-ms-win-core-comm-l1-1-0: Add dll. api-ms-win-core-stringloader-l1-1-1: Add dll. api-ms-win-security-cryptoapi-l1-1-0: Add dll. advapi32/tests: Allow ERROR_ACCESS_DENIED for newer Win10. kernel32/tests: Allow ERROR_ACCESS_DENIED for newer Win10. oleaut32/tests: Adjust test to a fixed Windows bug. crypt32: Print Crypt(Un)protectMemory FIXME only once. Aric Stewart (2): winebus.sys: Improve unloading the winebus driver. winebus.sys: Implement IRP_MN_QUERY_DEVICE_RELATIONS. Bernhard Übelacker (1): wintab32: Correct ordinal in comment to the same as in the spec file. Brock York (2): kernel32/tests: Test ReplaceFileW on open exe. kernel32/tests: Improve ReplaceFileW error checking. Dmitry Timoshkov (10): ntoskrnl.exe: Add a stub for MmCreateSection. fltmgr.sys: Add stubs for FltAcquirePushLockExclusive, FltDeletePushLock and FltReleasePushLock. ntoskrnl: Fix cross-compilation of the driver tests. ntoskrnl: Add a test for a failing to load driver. wininet: Remove unused parameter from create_netconn(). msi/tests: Add some tests for remote MSI summary info APIs. msi: Handle the remote case in MsiSummaryInfoSetProperty. msi: Handle the remote case in MsiSummaryInfoGetPropertyCount. msi: Handle the remote case in MsiSummaryInfoGetProperty. msi/tests: Add more tests for remote MsiSummaryInfoGetProperty. François Gouget (2): ole32/tests: Fix spelling of a variable name. cmd: A spelling fix in a comment. Gabriel Ivăncescu (10): shell32/autocomplete: Revamp pwzsRegKeyPath handling so it can deal with arbitrary sizes and make it more robust. shell32/autocomplete: Fix handling of Backspace and Delete. comctl32/listbox: Update the size in SetColumnWidth before calling UpdatePage. user32/listbox: Update the size in SetColumnWidth before calling UpdatePage. shell32/autocomplete: Fix a vulnerability by avoiding the use of snprintf. shell32/autocomplete: Handle heap_alloc failure. shell32/autocomplete: Reduce the strlen calls because they are redundant. shell32/autocomplete: Don't call ShowWindow unless auto-suggest listbox is enabled. shell32/autocomplete: Get rid of control and filled BOOLs and simplify the code. shell32/autocomplete: Dynamically allocate hwndText so it can handle arbitrary sizes. Gijs Vermeulen (6): msvcp110: Export xtime_get. msvcp110: Export _Xtime_diff_to_millis2. msvcr100: Add Concurrency::wait stub. ntoskrnl: Add ExReleaseResourceLite stub. include: Add virtdisk.h. virtdisk/tests: Add GetStorageDependencyInformation tests. Hans Leidekker (3): secur32/tests: Connect to test.winehq.org instead of www.winehq.org. userenv: Fix setting the ALLUSERSPROFILE environment variable. winhttp: Implement WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT. Henri Verbeet (12): wined3d: Get rid of the "attribute_size" field in struct wined3d_format. wined3d: Add component info for R10G10B10X2_SNORM and R10G10B10X2_UINT. wined3d: Introduce WINED3DFMT_FLAG_NORMALISED. wined3d: Derive format component counts from the component info. ddraw/tests: Rewrite FindDevice(). ddraw: Ignore the colour model in d3d3_FindDevice(). ddraw: Find the correct GUIDs for each D3D version in FindDevice(). d2d1: Simplify the WIC render target implementation. wined3d: Move ARB_vertex_array_bgra handling to init_format_vertex_info(). wined3d: Handle lack of ARB_half_float_vertex in format_vertex_info[]. wined3d: Use a table for colour fixups in apply_format_fixups(). wined3d: Introduce WINED3DFMT_FLAG_VERTEX_ATTRIBUTE. Huw D. M. Davies (1): ntoskrnl: Allow space for the '\0'. Jacek Caban (15): server: Support ObjectTypeInformation in pipe objects. winhttp: Improve WINHTTP_OPTION_CONNECT_RETRIES stub. xmllite: Prefer builtin version. mshtml: Added IHTMLCSSStyleDeclaration::backgroundClip property implementation. mshtml: Added IHTMLCSSStyleDeclaration::opacity property implementation. mshtml: Added IHTMLCSSStyleDeclaration::zoom property implementation. mshtml: Add IHTMLCSSStyleDeclaration2 stub implementation. mshtml: Added IHTMLCSSStyleDeclaration::cssFloat property implementation. mshtml: Added IHTMLCSSStyleDeclaration::put_cssStyle implementation. mshtml: Added IHTMLCSSStyleDeclaration::get_cssText implementation. mshtml: Added IHTMLCSSStyleDeclaration::removeProperty implementation. mshtml: Added IHTMLCSSStyleDeclaration::styleFloat property implementation. mshtml: Use dispex_compat_mode in update_filter. mshtml: Expose IHTMLCSSStyleDeclaration interface to scripts. mshtml: Expose CSS properties names from style object via IHTMLCSSStyleDeclaration dispids. Jactry Zeng (3): ole32: Partially implement OleCreateStaticFromData() for OLERENDER_FORMAT. riched20: Handle NULL in ITextServices::{TxGetHScroll, TxGetVScroll}. ntoskrnl: Add FsRtlIsNameInExpression stub. Jason Edmeades (3): cmd: Handle whitespace in 'for' argument items. cmd: Handle "for" loop handling of tokens, where * does not follow a number. cmd: Handle unechoed rem commands inside a (..) section. Josh DuBois (1): ntdll: Use root of c: drive as fallback cwd during startup. Józef Kucia (20): dxgi: Fix dxgi_output_QueryInterface(). d3d11: Normalize D3D11_BLEND_DESC. d3d11: Pass normalized D3D11_DEPTH_STENCIL_DESC to wine_rb_put(). wined3d: Allow wined3d_device_update_sub_resource() only on GPU accessible resources. wined3d: Fix initial data for non-GPU buffers. d3d11/tests: Add test for staging buffers. wined3d: Try to avoid allocating sysmem for GPU buffers with initial data. wined3d: Add support for A8_UNORM render targets. winevulkan: Check if instance extensions are supported. vulkan-1/tests: Add test for unsupported instance extensions. winevulkan: Check if device extensions are supported. vulkan-1/tests: Add test for unsupported device extensions. winevulkan: Trace VkApplicationInfo in wine_vkCreateInstance(). winevulkan: Enable vkGetDeviceProcAddr() quirk for idTech engine. iphlpapi: Fix FILE leak in get_ipv6_addr_scope_table() (Coverity). d3d11/tests: Test D3D11_BLEND_DESC normalization. d3d10core/tests: Test D3D10_BLEND_DESC normalization. wined3d: Add support for 1D UAVs in shaders. wined3d: Use >= for shader model checks in feature_level_from_caps(). wined3d: Set WINED3DFMT_FLAG_COMPRESSED based on format block info. Louis Lenders (2): pidgen: Add stub for PIDGenSimpW. advapi32: Add stub for TraceSetInformation. Michael Müller (3): wininet: Resize buffer when call to InternetCanonicalizeUrlW fails in InternetCrackUrlW. virtdisk: Add GetStorageDependencyInformation stub. ntdll: Add stub for ApiSetQueryApiSetPresence. Michael Stefaniuc (6): winspool.drv: Use the ARRAY_SIZE() macro. dplayx: Use the ARRAY_SIZE() macro. riched20: Use the ARRAY_SIZE() macro. wbemprox: Use the ARRAY_SIZE() macro. webservices: Use the ARRAY_SIZE() macro. ws2_32: Use the ARRAY_SIZE() macro. Nikolay Sivov (54): opcservices/tests: Add some tests. opcservices: Add IOpcPartUri stub. opcservices: Add IOpcPart stub. comctl32/listbox: Fix debug channel name. shlwapi: Don't reuse a function for different methods. shlwapi: Fix Stat() method for file streams. dxgi: Implement Map()/Unmap(). opcservices: Store part properties on creation. opcservices: Add IOpcRelationshipSet stub. opcservices: Add IOpcRelationship stub. opcservices: Implement IOpcPart::GetRelationshipSet(). opcservices: Partially implement file-based stream. opcservices: Remove unnecessary trace message. opcservices: Keep parts in a set. opcservices: Keep relationships in a set. opcservices: Keep relationship id. opcservices: Keep target uri and mode for relationships. opcservices: Keep relationship type string. opcservices: Partially implement CreatePackageRootUri(). opcservices: Forward IOpcPartUri methods to urlmon implementation. xmllite/reader: Fix compiler warning. opcservices: Implement GetSourceUri(). opcservices: Implement writing stub compressed package. opcservices: Implement GetCompressionOptions(). opcservices: Implement GetRelationship(). opcservices: Implement RelationshipExists(). opcservices: Implement relationships parts uri support. opcservices: Fix argument handling in CreatePackageRootUri(). opcservices: Fix a typo. shlwapi/tests: Add some tests for memory stream. xmllite/tests: Add more writer tests. xmllite/writer: Validate local name and prefix in WriteElementString(). xmllite/writer: Validate local name and prefix in WriteStartElement(). xmllite/writer: Add support for namespace definitions in WriteElementString(). xmllite/writer: Improve namespaces handling in WriteStartElement(). opcservices: Output content types URI. xmllite/tests: Add another test for WriteAttributeString(). xmllite/writer: Improve namespace support in WriteAttributeString(). opcservices: Partially implement content stream for package parts. d2d1: Properly aggregate render target implementations. opcservices/tests: Fix uninitialized variable access (Valgrind). opcservices: Fix uri path leak (Valgrind). opcservices: Fix underlying uri object leak (Valgrind). opcservices/tests: Fix some leaks in tests (Valgrind). opcservices: Implement IOpcPartEnumerator. opcservices: Implement IOpcRelationshipEnumerator. include: Add ID2D1DrawingStateBlock1 definition. d2d1: Return bitmap options. xmllite/writer: Free finished element data (Valgrind). xmllite/writer: Fix formatted output for closing tags. xmllite/writer: Fix formatted output with interleaving text nodes. xmllite/writer: Use internal function to create writer output implicitly. xmllite/writer: Simplify setting default output encoding. d2d1: Update to ID2D1DrawingStateBlock1. Pierre Schweitzer (2): mpr: Implement WNetClearConnections(). mpr: Properly handle device-less connections. Piotr Caban (1): vcruntime140: Add __uncaught_exceptions implementation. Qian Hong (1): kernel32: Fallback to default comspec when %COMSPEC% is not set. Rodrigo Saboya (1): wine.inf: Updates E. South America Standard Time DST data. Roger Zoellner (1): ntdll: Relax checks for valid affinity mask in NtSetInformationThread(). Thomas Faller (1): cmd: Don't print an empty line if no command was executed. Zebediah Figura (3): msi/tests: Remove some workarounds in test_publish_assemblies(). msi: Skip publishing a local assembly with no corresponding file. msi: Add exception handling around all custom action RPC calls. Zhiyi Zhang (7): comctl32/tests: Add tests for button state. comctl32/button: Use get_draw_state() helper. comctl32/button: Support displaying both image and text. comctl32/button: Avoid push button content covering frames. comctl32/button: Support imagelist rendering. comctl32/button: Support text margin rendering. comctl32/button: Support BCM_GETIDEALSIZE message. -- Alexandre Julliard julliard@xxxxxxxxxx