The Wine development release 6.1 is now available.
What's new in this release (see below for details):
- Arabic text shaping.
- More WinRT support in WIDL.
- VKD3D version 1.2 is used for Direct3D 12.
- Support for Rosetta's memory layout on M1 Macs.
- Support for Thumb-2 mode on ARM.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.x/wine-6.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.x/wine-6.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 6.1 (total 37):
17848 Windows Print Preview: Lines drawn have incorrect width
21014 Dark Sector no Sound
21038 F-Secure BlackLight Engine 2.2.x (Rootkit scanner) crashes after accepting license agreement (Wine on-disk placeholder dlls sections must be padded with data up to section virtual size)
30062 Deer Hunter demo: unable to start a new game (map view unusable)
30469 Multiple .NET 2.0 applications abort with error 'System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' (SegFlex demo)
33349 Add support for 32-bit ARM Thumb-2 Wine build
35017 Rollercoaster Tycoon 3 has no music
38501 GetClipboardData(CF_UNICODETEXT) - return ANSI
39407 LabVIEW 2014 crashes on startup
42913 ACAT Dashboard, part of Intel Assistive Context-Aware Toolkit (ACAT) v1.00.0 (.NET 4.5 app) crashes with 'invalid parameter' in 'System.Drawing.Icon.Initialize' (missing support for PNG icons in user32)
43408 Quest 5.7.x (.NET 4.0 WPF app) crashes on direct access of MIL4 (Media Integration Layer, wpfgfx_v0400.dll) to internal bitmap struct/class impl (depends on exact layout)
45046 Skyrim SE: Shadow artifacts (missing handling of 'precise' shader modifier)
48685 Multiple games and applications need D3DX11CompileFromFile implementation
48714 mass effect spits error when using mouse fix
48790 mfplat:mfplat crashes on Windows 7
48870 Aldi (Buhl) Steuer 2019/2020 installer crashes
49327 Hearthstone Deck Tracker (with installed dotnet472) does not work with wine-staging 5.9 anymore
49484 test_query_process_image_info() test is broken on a not PE build
50033 WMI class SystemRestore is missing
50194 x64dbg snapshots >= 2020-11-12_05-12 crash on unimplemented function ntdll.dll.NtCreateDebugObject when attaching to process
50229 Battle.net launcher sometimes crashes after login (wine-5.22)
50256 Animate VST plugin activation doesn't work: wbem_services_ExecQuery gets no network adapters
50349 SlingPlayer crashes on launch (needs IDirectXVideoDecoderService)
50357 Star Stable Online crashes with unimplemented function dcomp.dll.DCompositionCreateDevice2
50376 Banished crashes when Antialiasing set to 3x MSAA with Vulkan renderer
50379 The Witcher 3 has broken rendering with Vulkan renderer
50386 Sniper Elite V2 some objects aren't rendered with Vulkan renderer
50387 Batman: Arkham Origins has broken dynamic shadows with Vulkan renderer
50459 Studio One 5 crashes on unimplemented function dcomp.dll.DCompositionCreateDevice
50485 Still Life 2 crashes when CSMT is disabled
50486 The Sims 3 launcher hangs
50494 ID2D1RenderTarget::DrawText(): The position and size of the drawn text is incorrect
50508 ACAT Phrase, part of Intel Assistive Context-Aware Toolkit (ACAT) v1.00.0 (.NET 4.5 app) crashes on unimplemented function 'uiautomationcore.dll.UiaRegisterProviderCallback'
50515 SofTalk 1.56 doesn't speak continuously after punctuation marks.
50525 ws2 _32 fails to build on macOS
50549 Some games fail to launch with Vulkan renderer
50570 Unknown Debian package and website in README
----------------------------------------------------------------
Changes since 6.0:
Akihiro Sagawa (6):
winmm/tests: Expect TIME_BYTES format for TIME_MS request.
winmm: Get rid of TIME_MS format support in waveOutGetPosition().
winmm/tests: Strictly test returned time format of waveOutGetPostion().
winmm: Get rid of TIME_SMPTE format support in waveOutGetPosition().
comdlg32/tests: Add a test for CF_NOSCRIPTSEL.
comdlg32: Set DEFAULT_CHARSET if CF_NOSCRIPTSEL is set.
Alex Henrie (1):
include: Add new LCMAP constants.
Alexandre Julliard (37):
msvcrt: Don't export fabsf on x86_64.
msvcrt: Implement pwctype() functions.
msvcrt: Fix some spec file discrepancies.
winebuild: Simplify ARM64 import thunks.
wordpad: Make qsort callback function cdecl.
evr: Make qsort and bsearch callback functions cdecl.
winebuild: Generate Thumb2-compatible assembly code on ARM.
winebuild: Support non-PIC mode for ARM targets.
ntdll: Make inline asm compatible with Thumb-2.
ntdll: Support Thumb mode in signal handling.
rpcrt4: Make inline asm compatible with Thumb-2.
vcomp: Make inline asm compatible with Thumb-2.
configure: Default to Thumb-2 mode for ARM.
ntdll: Always inline NtCurrentTeb() on ARM.
ntdll: Support more Dwarf pointer types.
include: Add a couple of dll characteristics.
gdi32: Merge rectangles horizontally when possible in CreatePolyPolygonRgn.
msvcp: Fix some spec file discrepancies.
d3dx9: Fix some spec file discrepancies.
winegcc: Pass the same winebuild args to all winebuild invocations.
ntdll: Add some more section information data.
ntdll: Load the COR header directly from the file handle.
ntdll: Check for valid architecture before mapping the module.
ntdll: Delay mapping a module until we have found the final one to load.
makefiles: Add missing dependency to wrc for test dll resources.
ntdll: Set the environment size in the process parameters.
ntdll: Fill the image information data also for .so builtins.
ntdll: Create a SEC_IMAGE view also for .so builtins.
server: Get rid of the exe_file parameter in the new_process request.
server: Rename debug_ctx to debug_obj.
ntdll: Implement NtCreateDebugObject().
server: Allocate handles only when returning the debug event to the client.
server: Don't store the debugger thread in debug events.
server: Store a debug object instead of a debugger thread in the process.
ntdll: Implement DbgUiGet/SetThreadDebugObject().
ntdll: Implement DbgUiConnectToDbg().
ntdll: Support the NtCreateDebugObject() flags.
Alistair Leslie-Hughes (5):
msado15: Only support put CursorLocation on Closed Recordset.
msado15: Support ADOConnectionConstruction15 on _Connection interface.
msado15: Implement ADOConnectionConstruction15 get_Session.
dsound: IDirectSoundBuffer8 GetStatus return DSBSTATUS_LOCSOFTWARE for deferred buffers.
include: Add more sal.h macros.
Arkadiusz Hiler (1):
hidclass.sys: Calculate correct bitCount for vendor-specific 1 bit repeated elements.
Biswapriyo Nath (1):
propkey.h: Added more PROPERTYKEY declarations.
Brendan Shanks (4):
winemac.drv: Use Metal to get a display's GPU info if possible.
winemac.drv: Handle non-PCI GPUs correctly.
loader: On Mac, move the top-down allocations area down to avoid Rosetta regions.
loader: On Mac, reserve an area starting at 4GB to force Rosetta's allocations higher.
Byeong-Sik Jeon (1):
gdi32: Preserve the GGO_UNHINTED bits until used.
Damjan Jovanovic (2):
mmsystem: Win16 DllEntryPoint uses HINSTANCE16, not HINSTANCE.
secur32: Implement the SECPKG_ATTR_UNIQUE_BINDINGS context attribute.
Daniel Lehman (3):
ntdll/tests: Add tests for semaphores.
ntdll/tests: Fix error messages for mutant test.
ntdll: Check event type on creation.
Derek Lesho (2):
winegstreamer: Correct mistaken enum value in ProcessMessage.
winegstreamer: Reformat type-setting functions to prevent the need for a conditionally initialized variable.
Dmitry Timoshkov (5):
shell32: Return S_OK from IShellLink::SetFlags() stub.
wbemprox: Add class SystemRestore stub implementation.
wbemprox: Flesh out a bit SystemRestore::Enable() implementation.
gdi32: Avoid best fit chars when mapping unicode character to a glyph index.
msi: Also set "MsiRunningElevated" installer property.
Floris Renaud (3):
po: Update Dutch translation.
documentation: Change obsolete Debian and Red Hat packages.
documentation: Add Dutch README translation.
Georg Lehmann (6):
winevulkan: Skip extensions that require a skipped extension.
winevulkan: Update to VK spec version 1.2.166.
winevulkan: Wrap VkSurfaceKHR in winevulkan.
winevulkan: Unwrap VkSurfaceKHR if required.
winevulkan: Don't advertise VK_EXT_headless_surface.
winevulkan: Fix surface functions if they aren't called by winevulkan.
Giovanni Mascellani (1):
winegstreamer: Wait on error conditions when initializing GStreamer.
Hans Leidekker (8):
wldap32: Properly initialize the context in ldap_sslinitW.
winhttp: Avoid a crash when the connection is closed while handling a redirect.
ws2_32: Avoid returning duplicate entries from WS_getaddrinfo.
ws2_32: Fix buffer size query in WSAAddressToStringW.
wbemprox: Implement Win32_NetworkAdapter.GUID.
wbemprox/tests: Add tests for Win32_NetworkAdapter/Configuration.
wbemprox: Handle escaped backslashes in LIKE queries.
wbemprox: Implement Win32_NetworkAdapter.ServiceName.
Haoyang Chen (2):
dwrite/layout: Handle NULL format in CreateEllipsisTrimmingSign().
d2d1: Fix text position in DrawText().
Henri Verbeet (22):
wined3d: Use glFinish() for synchronisation when cleaning up a destroyed context in wined3d_context_gl_cleanup().
wined3d: Get rid of the destination offset in wined3d_texture_vk_upload_data().
wined3d: Cleanup the staging bo on an error path in wined3d_texture_vk_upload_data().
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_append_dst_ext().
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast().
wined3d: Also trace memory types in adapter_vk_init_driver_info().
wined3d: Implement the "precise" flag in the GLSL shader backend.
wined3d: Get rid of the "UseGLSL" setting.
ddraw: Use BitBlt() for exclusive mode frontbuffer updates if the swapchain window is not in the foreground.
wined3d: Introduce wined3d_context_vk_reference_resource().
wined3d: Add some barriers between resource usage on different bind points.
wined3d: Properly convert Vulkan sample count format information.
wined3d: End the current render pass in wined3d_buffer_vk_barrier().
wined3d: Always include any depth/stencil attachment in the Vulkan framebuffer.
wined3d: Stencil test also uses the depth/stencil buffer.
wined3d: Correct the argument order of a FIXME in wined3d_texture_vk_download_data().
wined3d: Require VK_KHR_sampler_mirror_clamp_to_edge for WINED3D_TADDRESS_MIRROR_ONCE.
wined3d: Implement NULL constant buffer views for the Vulkan backend.
d3d12: Implement D3D12SerializeVersionedRootSignature() on top of vkd3d_serialize_versioned_root_signature().
d3d12: Implement D3D12CreateVersionedRootSignatureDeserializer().
d3d12: Request VKD3D_API_VERSION_1_2.
wined3d: Trace the available Vulkan extensions.
Jacek Caban (14):
jscript: Return DateInstance from create_date.
jscript/tests: Add VT_DATE handling tests.
jscript: Support VT_DATE to number conversion.
jscript: Support VT_DATE to string conversion.
jscript: Support VARIANT type in jsval_strict_equal.
ntdll: Honour alertable argument in NtContinue.
winnt.h: Fix MSVC variants of InterlockedIncrement16 and InterlockedDecrement16.
ntdll/tests: Don't assume 32-bit test module base.
jscript: Add VT_CY type support.
winebuild: Make mingw a separated platform from msvc.
mshtml/tests: Use more winetest.js helpers in documentmode.js.
mshtml: Implement IHTMLCSSStyleDeclaration2::animation property.
mshtml: Make xhr.open async argument optional in IE9+ mode.
ieframe: Implement SetQueryNetSessionCount.
Jactry Zeng (3):
d2d1: Limit source rectangle to the actual size for ID2D1RenderTarget_DrawBitmap().
d2d1: Skip empty source rectangle for ID2D1RenderTarget_DrawBitmap().
d2d1: Partially implement d2d_device_context_DrawImage().
Jan Sikorski (1):
winemac.drv: Include depth32+stencil pixel formats in enumeration.
Jeff Latimer (1):
ws2_32: Do not print an ERR message when returning WSAEWOULDBLOCK from WSAIoctl().
Liam Middlebrook (2):
winevulkan: Skip commands which are declared but not defined.
winevulkan: Update to VK spec version 1.2.168.
Martin Storsjo (2):
include: Don't use __attribute__((pcs("aapcs-vfp"))) when building in PE mode.
msvcrt: Fix reading BOM-less files opened with ccs=unicode.
Michael Stefaniuc (2):
ddraw: Remove superfluous cast to self.
d2d1/tests: Remove superfluous cast to self.
Nikolay Sivov (42):
mf: Add a helper to get associated topology node object.
dcomp: Add DCompositionCreateDevice2().
dcomp: Add DCompositionCreateDevice() stub.
dwrite: Set lookup flags for joiners.
dwrite: Propagate joiners mode to iterators.
dwrite: Use joiner modes for matching.
dwrite: Set joiners mode for gsub case.
dwrite: Use table access helpers for reading names.
dxva2: Add IDirectXVideoDecoderService stub.
d2d1: Pass zeros as text layout size for inverted rectangles in DrawText().
dwrite/layout: Fail to create layouts with negative size.
ntdll/tests: Remove skips on missing ntdll.dll.
dwrite: Fix feature mask for non-global features.
dwrite: Zero-initialize run analysis object structure.
gdi32/uniscribe: Merge Arabic joining types C and D.
gdi32/uniscribe: Get rid of shaping group values in Arabic shaping data table.
make_unicode: Make it explicit what other default joining type is.
make_unicode: Remove unused variable.
dwrite: Zero initialize font data structure.
dwrite/tests: Add some tests for text format properties.
dwrite: Add font set builder stub.
dwrite: Set script id in shaping context.
dwrite: Add a stub Arabic shaper.
dwrite/arabic: Mark some features for fallback.
dwrite: Mark features that were not found.
dwrite: Add per shaping stage functions.
dwrite: Call stage function for substitution loop.
dwrite/arabic: Set per-glyph action.
dwrite/arabic: Set per-glyph mask.
dwrite/shape: Fix iterator skipping logic on ignorable characters.
mfmediaengine: Return current session time in GetCurrentTime().
mfmediaengine: Add partial implementation of a time range object.
mfmediaengine: Return full presentation range in GetBuffered().
mf/sar: Release pending items when audio client is released.
mf/sar: Handle shutdown state in rendering callback.
mf/tests: Use interface check helper more.
mfmediaengine: Use presentation clock interface from the session.
mfmediaengine: Use existing helper to update engine state flags.
mfmediaengine: Set "ended" state when session presentation ends.
mfmediaengine: Force returned playback position after presentation ends.
mfmediaengine: Use consistent format for traces.
mf/session: Add a stub for IMFTopologyNodeAttributeEditor.
Paul Gofman (20):
d3d9/tests: Add more tests for shader validator.
dbghelp: Fix unwind opcodes on x64.
dbghelp: Support UWOP_PUSH_MACHFRAME on x64.
bcrypt: Introduce export_gnutls_datum() helper and use it in export_gnutls_pubkey_rsa().
bcrypt: Pad exported datums in export_gnutls_pubkey_ecc().
bcrypt: Pad exported datums in export_gnutls_pubkey_dsa().
bcrypt: Pad exported datums in export_gnutls_pubkey_dsa_capi().
bcrypt: Pad exported datums in key_export_ecc().
bcrypt: Pad exported datums in key_export_dsa_capi().
bcrypt: Fix padding in format_gnutls_signature().
ws2_32: Reimplement SIO_GET_INTERFACE_LIST on top of GetIpAddrTable().
ws2_32: Use if_nameindex() instead of SIOCGIFNAME.
msvcrt: Add -norelay flag to lldiv definition in spec files.
iphlpapi: Mark adapter addresses as DNS eligible when interface has a gateway.
windowscodecs: Add IWICMetadataBlockWriter stub interface.
windowscodecs: Add IWICMetadataBlockWriter stub interface for Gif encoder.
windowscodecs/tests: Add test for metadata writer.
windowscodecs: Add IWICMetadataQueryWriter stub interface.
windowscodecs: Implement CommonEncoderFrame_GetMetadataQueryWriter().
windowscodecs: Return correct error codes from BmpFrameEncode_GetMetadataQueryWriter().
Piotr Caban (2):
crypt32: Also import user/admin defined root certificates on macOS.
msvcrt: Improve memmove performance on i386 and x86_64 architectures.
Rémi Bernon (36):
d2d1/tests: Check for d2d1 math functions presence.
d2d1/tests: Introduce init_test_context().
d2d1/tests: Create a window in init_test_context_().
d2d1/tests: Create a swapchain in init_test_context_().
d2d1/tests: Retrieve the swapchain back-buffer in init_test_context_().
d2d1/tests: Create a Direct2D render target in init_test_context_().
d2d1/tests: Store the resource data pointer and row-pitch directly in struct resource_readback.
d2d1/tests: Pass a d2d1_test_context structure to compare_surface().
d2d1/tests: Pass a d2d1_test_context structure to compare_figure().
d2d1/tests: Pass a d2d1_test_context structure get_surface_readback().
d2d1/tests: Store an IDXGIDevice interface instead of an ID3D10Device1 interface in struct d2d1_test_context.
d2d1/tests: Run most tests on d3d11 as well.
include: Add windows.media.speechsynthesis.idl stub.
windowscodecs: Use create_instance instead of ImagingFactory_CreateInstance.
windowscodecs: Use IWICComponentFactory_CreateStream in GetReaderByIndex.
widl: Remove unnecessary WinRT type comments.
widl: Support WinRT marshaling_behavior attribute parsing.
d3d11: Add initial implementation of CreateDeviceContextState.
d3d11: Add initial implementation of SwapDeviceContextState.
d3d11: Capture and restore vertex shader state.
d3d11: Capture and restore geometry shader state.
d3d11: Capture and restore pixel shader state.
widl: Support WinRT mta threading attribute parsing.
widl: Support WinRT exclusiveto attribute parsing.
windowscodecs: Use IWICComponentFactory_CreateQueryReaderFromBlockReader in GetMetadataQueryReader.
windowscodecs: Move several helpers to new wincodecs_common.c source.
widl: Support WinRT runtimeclass type parsing.
include: Add VoiceInformation runtimeclass to windows.media.speechsynthesis.idl.
include: Add IWMPRemoteMediaServices interface to wmp.idl.
include: Add IWmpControls2 interface to wmp.idl.
include: Add IWMPMedia2 interface to wmp.idl.
include: Add IWMPMedia3 interface to wmp.idl.
d3d11/tests: Add more SwapDeviceContextState tests.
d3d11/tests: Add tests for hull shader state swap.
d3d11/tests: Add tests for domain shader state swap.
d3d11/tests: Add tests for compute shader state swap.
Sebastian Lackner (1):
server: Store and notify all notification events associated with a given registry handle.
Shawn M. Chapla (1):
dsound: Send CaptureBuffer stop notification whenever stopping.
Ulrich Czekalla (1):
riched20: Add check to ensure iob is a valid index into the object array.
Vijay Kiran Kamuju (1):
uiautomationcore: Add stub UiaRegisterProviderCallback function.
Zebediah Figura (79):
gdi32: Do not compare face file names in insert_face_in_family_list() if either is NULL.
winegstreamer: Get rid of the unknown_type() callback.
winegstreamer: Avoid using Wine debug functions in autoplug_blacklist().
winegstreamer: Don't force autoplug_blacklist() onto a Wine thread.
winegstreamer: Don't bother setting the GStreamer pipeline to PLAYING.
winegstreamer: Rename gstdemux_source to parser_source.
winegstreamer: Rename gstdemux to parser.
winegstreamer: Unify the decodebin parser definitions under the name "decodebin_parser".
winegstreamer: Avoid leaking GstEvent objects.
winegstreamer: Explicitly store a GstCaps pointer in the parser_source structure.
include: Move interlocked functions to winnt.h.
winegstreamer: Do not handle GST_EVENT_TAG in event_src().
winegstreamer: Do not call gst_pad_event_default().
strmbase: Rename csFilter to filter_cs.
strmbase: Move strmbase_renderer.csRenderLock into the strmbase_filter structure.
quartz/dsoundrender: Use the strmbase stream lock.
include: Move InterlockedCompareExchange128 next to the other InterlockedCompareExchange* functions.
strmbase: Acquire the streaming lock in MemInputPin_Receive().
strmbase: Acquire the streaming lock in sink_EndOfStream().
quartz/acmwrapper: Use the strmbase stream lock.
quartz/avidec: Use the strmbase stream lock.
winegstreamer: Manage our own streaming thread.
include: Use __atomic_exchange_n() for InterlockedExchange*() if possible.
include: Add InterlockedOr().
include: Add MemoryBarrier().
winegstreamer: Flush connected pins directly in SetPositions().
winegstreamer: Consistently use GST_STATE_PAUSED for test-play.
winegstreamer: Do not return GST_FLOW_NOT_LINKED if the DirectShow pin is not connected.
winegstreamer: Keep the stream in paused state for its entire lifetime.
winegstreamer: Use the "flushing" field to unblock the streaming thread when stopping.
include: Add InterlockedAnd().
include: Add InterlockedIncrement16() and InterlockedDecrement16().
include: Add YieldProcessor().
wined3d: Use YieldProcessor().
ntoskrnl: Use YieldProcessor().
winegstreamer: Move pin duration and caps retrieval to GST_Connect().
winegstreamer: Store the segment parameters in the parser_event structure.
winegstreamer: Use a pthread condition variable to wait for filter initialization.
winegstreamer: Avoid using Wine debug functions in watch_bus().
winegstreamer: Don't force watch_bus() onto a Wine thread.
server: Avoid leaking "acceptsock" on allocation failure.
server: Use default_fd_get_poll_events() for file objects.
winegstreamer: Avoid using Wine debug functions in no_more_pads().
winegstreamer: Don't force no_more_pads() onto a Wine thread.
winegstreamer: Use pthread condition variables to queue stream events.
winegstreamer: Factor out get_stream_event().
winegstreamer: Avoid using Wine debug functions in got_data_sink().
winegstreamer: Don't force got_data_sink() onto a Wine thread.
msi: Check for failure from do_msidbCustomActionTypeDll().
msi: Return an error if trying to run a 64-bit custom action in a 32-bit prefix.
ntdll/tests: Add an alignment helper.
wined3d: Make adapter_gl_clear_uav() static.
winegstreamer: Avoid using Wine debug functions in event_sink().
winegstreamer: Don't force event_sink() onto a Wine thread.
winegstreamer: Avoid using Wine debugging functions in event_src().
winegstreamer: Don't force event_src() onto a Wine thread.
winegstreamer: Avoid using Wine debugging functions in query_function().
winegstreamer: Don't force query_function() onto a Wine thread.
winegstreamer: Avoid using Wine debug functions in removed_decoded_pad().
winegstreamer: Don't force removed_decoded_pad() onto a Wine thread.
winegstreamer: Manage our own thread for read requests.
winegstreamer: Don't force request_buffer_src() onto a Wine thread.
ntdll/tests: Add more tests for registry notifications.
winegstreamer: Use the "filesize" field in push_data().
winegstreamer: Use request_buffer_src() in push_data().
winegstreamer: Avoid using Wine debug functions in push_data().
winegstreamer: Make push_data() into a POSIX thread.
include: Include ntddndis.h in ndis.h.
ndis.sys: Avoid including ntddndis.h directly.
winegstreamer: Do not flush the upstream source pin in activate_push().
winegstreamer: Don't grab filter_cs in activate_push().
winegstreamer: Avoid using Wine debug functions in activate_mode().
winegstreamer: Don't force activate_mode() onto a Wine thread.
wineboot: Set the NXSupportPolicy member of the user shared data to NX_SUPPORT_POLICY_OPTIN.
kernel32: Implement GetSystemDEPPolicy().
kernel32: Implement SetProcessDEPPolicy().
wined3d: Implement global resource memory barriers.
include: Fix the definition of PNDIS_HANDLE.
include: Define some types before including ntddndis.h.
Zhiyi Zhang (4):
wined3d: Support multiple outputs.
user32/tests: Add display DC tests.
gdi32: Report correct HORZRES and VERTRES values for GetDeviceCaps() with DCs on a specific monitor.
gdi32: Report real VREFRESH values for GetDeviceCaps() with display DCs.
Ziqing Hui (4):
gdiplus/tests: Add tests for drawing on printer DC.
gdiplus: Correctly handle UnitDisplay for printer DC.
gdiplus/tests: Add initial tests for metafile created from printer DC.
gdiplus: Record logical DPI in metafile.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that the stable release Wine 6.0
is now available.
This release represents a year of development effort and over 8,300
individual changes. It contains a large number of improvements that
are listed in the release notes below. The areas of major changes are:
- Core modules in PE format.
- Vulkan backend for WineD3D.
- DirectShow and Media Foundation support.
- Text console redesign.
This release is dedicated to the memory of Ken Thomases, who passed
away just before Christmas at the age of 51. Ken was an incredibly
brilliant developer, and the mastermind behind the macOS support in
Wine. We all miss his skills, his patience, and his dark sense of
humor.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0.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.
----------------------------------------------------------------
What's new in Wine 6.0
======================
*** PE modules
- The core DLLs, including NTDLL, KERNEL32, GDI32, USER32, etc. are
built in PE format. This should help a number of copy protection
schemes that check that the DLL files on disk match the in-memory
contents.
- There is a new mechanism to associate a Unix library with a PE
module, to make it possible to call Unix libraries from PE for the
functions that can't be handled with Win32 APIs.
These libraries are found by replacing the PE module file extension
with .so, for instance ntdll.dll -> ntdll.so. They have to be
located next to the PE file on disk.
- Winelib modules no longer link against libwine.so, or require it at
run-time. This is a backwards incompatible change, meaning that
modules built with Wine 6.0 won't run on older Wine versions.
- The libwine library is no longer used, but it's still provided to
support running Winelib modules built against older versions. It is
deprecated however, and will be removed in a future Wine
release. Applications that explicitly call libwine functions will
need to be changed to call equivalent Win32 or Unix APIs instead.
As a consequence, the wine/library.h header has also been removed.
- PE modules can be built with their debug information split to a
separate file, to reduce the size of the files installed into the
Wine prefix.
*** Direct3D
- An experimental Vulkan renderer for WineD3D is implemented. This
requires the vkd3d-shader library in order to translate Direct3D
shaders to SPIR-V shaders. In this release, shader support in the
Vulkan renderer is limited to shader model 4 and 5 shaders. In
practice, that limits its usefulness to Direct3D 10 and 11
applications. The Vulkan renderer can be enabled by setting the
Direct3D "renderer" registry setting to "vulkan".
- The following Direct3D 11 features are implemented:
- Per render-target ("independent") blend states.
- Dual-source blending.
- Multi-sample anti-aliasing sample masks.
- Several more capability queries.
- Support for Direct3D 9 alpha-to-coverage multi-sampling is
implemented.
- When the EXT_framebuffer_multisample_blit_scaled OpenGL extension is
available, scaled multi-sample resolve operations can happen as a
single operation.
- When the ARB_buffer_storage OpenGL extension is available, it will
be used to allocate OpenGL buffer objects. This can result in minor
performance improvements with some application and driver
combinations.
- The Direct3D graphics card database recognizes more graphics cards,
and the reported driver versions have been updated.
- New or modified HKEY_CURRENT_USER\Software\Wine\Direct3D registry keys:
- "renderer" (REG_SZ)
The backend API to target. This existing setting has an additional
valid value in this release: "vulkan". Possible values are now
"gl" (default) for OpenGL, "gdi" or "no3d" for GDI, and "vulkan"
for Vulkan.
- "csmt" (REG_DWORD)
Enable or disable multi-threaded command stream features. This
existing setting has an additional valid bit-field value in this
release. Valid bit-fields in this release are:
- 0x1 Enable the multi-threaded command stream feature.
- 0x2 Enable serialization between multiple command streams in the
same application. This feature is primarily useful for
applications using multiple Direct3D instances from
different threads, in combination with OpenGL drivers that
do not properly support multi-threaded access themselves. As
of this release, this is known to affect Microsoft Office
2013 and later versions in combination with the Mesa-based
Nouveau driver.
Note that this setting is a bit-field; in order to enable both
features above, set this to 0x3.
- Removed HKEY_CURRENT_USER\Software\Wine\Direct3D registry key:
- "DirectDrawRenderer"
This setting was previously deprecated in favor of the "renderer"
setting, and has been removed in this release.
*** D3DX
- Drawing text using the ID3DXFont interface is implemented.
- The ID3D12ShaderReflection shader reflection interface is
implemented.
- The D3DX10GetImageInfoFromMemory() and related image information
query functions are implemented.
*** Graphics
- Drawing arcs, ellipses and rounded rectangles using the Direct2D API
is implemented.
- The standard sRGB color profile is installed into the prefix, for
applications that expect to load it directly.
- The Null display driver can be used as a proper display driver, for
cases when a user interface is not needed.
- WindowsCodecs supports decoding images in DDS (DirectDraw Surface)
and JPEG-XR formats, as well as encoding images to GIF format.
- The Vulkan driver creates the JSON manifest and registry entry used
by the official Vulkan loader.
- The Vulkan driver supports up to version 1.2.162 of the Vulkan spec.
- There are a number of improvements in GdiPlus, including support for
widening lines, more hatch styles, and more record types in
metafiles.
*** Audio / video
- The Media Foundation framework is more complete, including:
- Initial Media Session implementation for state changes and data
flow.
- Initial Streaming Audio Renderer (SAR) pipeline component
implementation.
- Initial Video Renderer implementation, a pipeline component
hosting EVR mixer and presenter.
- Initial Topology Loader implementation.
- Various fixes for the Source Reader.
- Initial Media Engine implementation.
- Asynchronous queues functionality is moved to rtworkq.dll.
- The AMStream (ActiveMovie Multimedia Streaming) library is more
fully implemented, including support for streaming and sample
management.
- The Video Mixing Renderer supports the following features:
- Windowless and renderless mode.
- Automatic stretching and resizing of the video to match the window
size.
- Hardware-accelerated color space conversion of YUV formats, if
supported by the underlying Direct3D implementation.
- Preservation of video aspect ratio via letterboxing.
- The Video Mixing Renderer is used as the default video renderer if
supported by the underlying Direct3D implementation, replacing the
GDI video renderer.
- The DirectShow File Writer filter is implemented.
- The DirectX Media Object (DMO) Wrapper filter is implemented. DMOs
can be automatically enumerated and plugged into the filter graph.
- The video capture filter supports reporting more information about
video formats, including supported sizes and frame rates.
- More Media Detector APIs are implemented.
- The GStreamer wrapper filter supports video and audio format
conversion within the GStreamer pipeline. This obviates the need for
extra transform filters, and accordingly the GStreamer-based YUV to
ARGB converter, audio converter, and mp3 decoder have been
removed. Any video can be output in any of several RGB and YUV
formats, allowing for better performance in some cases.
- The Enhanced Video Renderer (EVR) contains an initial default mixer
and presenter implementation using DXVA2 API.
- The XACT3 (Cross-platform Audio Creation) engine library and
interfaces are implemented through FAudio.
*** Text and fonts
- Text console support is reimplemented, using the architecture of
recent Windows versions, which is closer to the Unix way of doing
things. In particular:
- Pseudo consoles are implemented (equivalent to Unix pseudo TTYs).
- All console handling is done in the ConHost process. WineConsole
is now only a thin wrapper around ConHost.
- ConHost handles VT escape sequences, meaning that the Unix Curses
library is no longer needed.
- Default shaping features are enabled for all scripts in
DirectWrite. All types of GSUB/GPOS lookups are supported.
- In DirectWrite, CMAP data is read directly from the font without
global cache or a need to create FreeType objects, for improved
performance.
- The font initialization in GDI32 avoids loading fonts through
FreeType when possible, for faster startup times. The font registry
cache is also more efficient.
- The Uniscribe support in the USP10 library is moved into GDI32, as
per recent Windows versions.
- An initial version of the Webdings font is implemented, with only a
few glyphs at this point.
*** Input devices
- Raw input devices and messages are implemented, and used by
DirectInput instead of less efficient low-level hooks.
- An initial USB kernel driver is implemented, based on the LibUSB
library, to provide access to USB devices.
- Mouse position history is implemented, for games that want more
precise mouse positions.
- SDL controller mappings can be set through the
'SDL_GAMECONTROLLERCONFIG' environment variable.
- Plug & Play device notifications are implemented.
*** Desktop integration
- Display settings are retrieved through XRandR 1.4 if available. This
also provides support for multiple display orientations.
- There is a consistent view of the graphics adapters across the X11,
OpenGL and Vulkan APIs.
- The desktop work area layout is supported on multi-monitor setups
using the _GTK_WORKAREAS property.
*** Internationalization
- Unicode character tables are based on version 13.0.0 of the Unicode
Standard.
- Unicode normalization is fully standard-compliant, including support
for Hangul, supplementary character planes, and IDN normalization.
- Codepage and other Unicode tables are stored in external NLS files
compatible with Windows. This makes it possible to test with the
native files to track down character mapping issues.
- Codepage mapping tables are generated from Microsoft's Open
Specification data for better compatibility.
- Unicode linguistic case mappings for languages like Turkish are
implemented.
- Codepage 708 (Arabic ASMO) is supported.
*** Kernel
- Windows version compatibility mode is implemented, to only report
the newest Windows versions to applications that have declared that
they support them.
- INI file mappings are implemented, to redirect .ini file entries to
registry keys.
- Many more NT kernel objects and functions are implemented, to
support anti-cheat systems that load kernel drivers.
- A NetIO.sys kernel driver is implemented, to support copy protection
drivers that want to access the network.
- AVX registers are supported in register contexts and exception
handling on x86 platforms.
- The Kernel User Shared Data block contains up-to-date timestamps, to
avoid system calls when retrieving the current time counter.
*** C Runtime
- The C runtime import libraries provide the necessary runtime support
so that PE modules no longer depend on the MinGW runtime.
- The Wine modules are all built against the new UCRT runtime.
- Winegcc uses the new UCRT runtime by default, unless an older C
runtime library is explicitly imported.
- The C runtime supports Windows locales that use the UTF-8 codepage.
- A number of C runtime math functions are implemented internally
based on code from the Musl C library, to avoid depending on the
system math library.
- Floating point formatting is reimplemented in the C runtime to avoid
depending on the system printf function.
*** Internet and networking
- The Gecko engine is updated to version 2.47.2.
- The WebSocket API is implemented.
- JScript and VBScript report the correct location for errors in
scripts.
- There are various improvements to the LDAP and Active Directory
Service support.
- There is an initial implementation of the NDIS network driver.
- The OLE data link dialog supports configuring the ODBC data
connection.
*** Cryptography
- The BCrypt library supports additional algorithms, including DSA
keys and the 3DES cipher.
- The DSSENH (Digital Signatures) Cryptographic Provider is
implemented, and enabled by default.
*** Alternative platforms
- Support for exception handling and stack unwinding on ARM platforms
(both 32-bit and 64-bit) should be on par with the x86
architectures.
- There is initial support for ARM64 on macOS, for the new Apple
Silicon.
- Support for the obsolete 32-bit PowerPC architecture is removed. It
had been broken for some time already.
- Case-insensitive filesystem optimizations are enabled on FreeBSD.
*** Builtin applications
- WineCfg supports querying and modifying the configured Windows
version through the command line with a new /v option.
- The Shell Folders configuration in WineCfg also supports the
Downloads and Templates folders.
- The removable drive autodetection has been removed in WineCfg, now
that the dbus dynamic device support is stable.
- The FSUTIL tool supports a 'hardlink' command to create hard links.
- The FIND tool supports searching multiple files, in addition to
standard input.
- The WHOAMI tool is implemented to display the current username.
*** Development tools
- Winegcc supports generating PDB files when building PE DLLs, for
compatibility with Windows debuggers.
- DbgHelp supports GNU-style debug information also in PE files.
- Winegcc can generate an import library directly when building a DLL,
with the '-Wl,--out-implib' option.
- The various build tools also look for include and library files in
paths relative to the tool binary, to allow relocatable Winelib
installations.
- The Resource Compiler (wrc) and Message Compiler (wmc) use the
external NLS files for codepage conversions. If necessary, the path
to the external files can be specified with the '--nls-dir' option.
- There are various improvements in the gdb proxy mode in WineDbg,
including support for hardware watchpoints, and for loading symbols
from PE modules.
- The Message Compiler (wmc) handles the Unicode BOM to detect the
input file format.
- The Resource Compiler (wrc) has a '--utf8' option to specify UTF-8
input, as an alternative to putting #pragma codepage inside the
file.
- The IDL compiler (widl) supports a WinRT mode, and various
constructs specific to that mode.
- The IDL compiler (widl) supports custom attributes in type
libraries.
*** Build infrastructure
- Makefiles are no longer recursive; a single Makefile is generated to
build the entire tree, with correct dependencies between modules.
- Automake-style silent build rules are supported. They are disabled
by default, but can be enabled by passing the '--enable-silent-rules'
option to configure.
- The new LLVM-MinGW compiler is supported for PE cross-compilation.
- Building with the Clang compiler in MSVC mode is supported.
- A '-syscall' entry point flag is supported in spec files, to
generate NT-style system call entry points.
*** Miscellaneous
- The Mono engine is updated to version 5.1.1, containing the open
sourced parts of the WPF framework, and initial replacements for
some of the closed source parts.
- Most modules have been converted to use wide-character string
constants like L"abc" instead of explicit arrays, for more readable
code.
- Many of the less common timezones (for various remote islands) are
supported.
- Listviews and image buttons are supported in MSI installers.
- There is initial support for the Print Ticket API.
*** New external dependencies
- The LibUSB library is used to implement the USB driver.
- The VkD3D-Shader library is used to translate Direct3D shaders to
SPIR-V shaders for the WineD3D Vulkan renderer.
- The Curses, GLU, and Zlib libraries are no longer used.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc6 is now available.
Barring any last minute issue, this is expected to be the last
release candidate before the final 6.0.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc6.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc6.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.0-rc6 (total 10):
48860 RegiStax 6: mouse does not work in open file dialog
49500 Wine is not displaying any windows (on a headless system)
49511 Kontakt (Native Instruments) runtime is broken
49575 Delphi applications no longer show their main window in the WM's taskbar
50151 World of Tanks fails to launch if LC_LANG/LC_ALL are set ja_JP
50153 HID doesn't work on macOS Catalina and Big Sur unless "Input Monitoring" permission is granted
50355 Commandos 2: Men of Courage hangs after starting
50437 wineserver crashes when running SteelSeries Engine client
50453 CDB (Part of Debugging Tools for Windows) fails resume debugging after entry point break (continue debug event: 'DBG_EXCEPTION_HANDLED' must be treated as an alias for 'DBG_CONTINUE')
50454 Icons have non-transparent background in HxD
----------------------------------------------------------------
Changes since 6.0-rc5:
Alexandre Julliard (1):
winex11: Don't delay mapping 0-sized layered windows.
André Hentschel (4):
ddraw/tests: Don't test functions directly when reporting GetLastError().
d3d8/tests: Don't test functions directly when reporting GetLastError().
dxgi/tests: Don't test functions directly when reporting GetLastError().
d3d9/tests: Don't test functions directly when reporting GetLastError().
Anton Baskanov (2):
winegstreamer: Move sample sending to a helper function.
winegstreamer: Split audio data to fit in the sample buffer.
Byeong-Sik Jeon (1):
readme: Update Korean translation.
Gabriel Ivăncescu (4):
comctl32/tests: Add more tests for 32bpp bitmaps with and without alpha, and masks.
comctl32: Remove the masked background when 32bpp bitmaps have no alpha values.
ntdll: Do not override existing context's EAX when dispatching user APC.
ntdll: Do not override existing context's RAX when dispatching user APC on x86_64.
Jacek Caban (3):
conhost: Fix wrapping search in edit_line_find_in_history.
jscript/tests: Silence noisy debug trace.
configure: Check for linker delayload support on mingw hosts.
Julian Rüger (1):
readme: Update German translation.
Kevin Puetz (1):
include: Check whether the ms_abi attribute is supported on aarch64.
Nikolay Sivov (1):
mfplat/tests: Get source events in async mode.
Piotr Caban (1):
msvcr100: Use LC_TIME code page when converting strftime data.
Qijia Liu (1):
winedbg: Distinguish -0 from 0.
Rémi Bernon (2):
windowscodecs: Copy container_count GUIDs, not bytes, in GetContainerFormats.
server: Accept DBG_EXCEPTION_HANDLED parameter in continue_debug_event.
Zebediah Figura (6):
wined3d: Use debug_d3dusage() for both usage and usage query flags.
user32/tests: Add some tests for WM_CANCELMODE.
user32/tests: Add some tests for release of capture via modal dialogs.
user32: Send WM_CANCELMODE to the current capture window after initializing a modal dialog.
ntdll: Set the process detaching flag before calling FLS callbacks.
kernel32/tests: Add a regression test for a deadlock calling FLS callbacks on process exit.
Zhiyi Zhang (1):
readme: Update Simplified Chinese translation.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc5 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc5.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc5.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.0-rc5 (total 21):
21987 Acrobat 7 tryout installer complains: "This Postscript Driver or Windows Platform (Win9x/Me) not supported" (winspool.drv missing level 8/global default printer settings handling)
38166 Heroes of Might and Magic V performance issue: severe fps drop on certain maps
41593 Molot VST 0.3.1 UI: some knobs are not rendered
43852 Monkey Island Special Edition Collection: White screen and crash when starting Monkey1.exe
44243 Spire and Serum VST plugins using Direct2D render very slowly
44367 Multiple applications need d2d FillEllipse/DrawEllipse implementation (OP-X PRO II VST)
44454 Windows Media Encoder 9 refuses to install
44574 Microsoft Office 2013 client area is rendered black (Direct2D)
45096 MPC-HC 1.7.13 displays a message box: "Error creating EVR Custom renderer", "DXVA2CreateDirect3DDeviceManager9 failed"
47770 Waves Central plugin installation fails
47824 Remote Life 1.2 demo terminates with 'Cannot load library nw_elf.dll'
48142 shell32:appbar tests fail on some Windows 10 machines
49010 ilok license manager: doesn't connect to the activation server as in 4.0.2
49356 Saya No Uta (a.k.a. The Song of Saya) crashes when launching
49771 ntdll:exception causes an unhandled segmentation fault
50241 Vertical Text in NL5 schematic doesn't display correctly
50304 Control-C exits winedbg instead of stopping the inferior
50397 dlls/d3dcompiler_43/tests/hlsl_d3d11.c: error: unknown field ‘Texture2D’ specified in initializer
50408 wineboot crash to due getaddrinfo() returning NULL ai_canonname
50420 Divinity: Original Sin - Enhanced Edition crashes on startup
50423 dlls/devenum/mediacatenum.c: | function ‘property_bag_Read’ | error: unknown field ‘cPins2’ specified in initializer
----------------------------------------------------------------
Changes since 6.0-rc4:
Akihiro Sagawa (1):
readme: Update Japanese translation.
Alex Henrie (1):
winebus: Remove redundant preprocessor check for libsdl2.
Alexandre Julliard (1):
Update copyright info for 2021.
Alistair Leslie-Hughes (1):
include: Add DBACCESSORFLAGSENUM/DBBINDSTATUSENUM values.
Anton Baskanov (1):
winegstreamer: Unmap and unref the buffer and release the sample before returning.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Damjan Jovanovic (1):
ws2_32: Deal with getaddrinfo() returning NULL ai_canonname despite AI_CANONNAME.
Dean M Greer (2):
readme: Update OS X requirements.
configure: Remove Xcode 3.x check.
Esme Povirk (1):
user32/tests: Don't kill explorer to test shell window.
Jacek Caban (2):
condrv: Don't requre write access for IOCTL_CONDRV_CTRL_EVENT ioctl.
conhost: Ignore CONTROL_C_EXIT exceptions in Unix mode.
Jefferson Carpenter (1):
ntdll/tests: Clear AC flag in align check test.
Lauri Kenttä (1):
readme: Update Finnish translation.
Michael Stefaniuc (1):
msscript.ocx/tests: Use wide-char string literals.
Nikolay Sivov (1):
readme: Update Russian translation.
Paul Gofman (2):
ntdll: Use WINAPI calling convention for stub_entry_point().
user32: Add stub for SetDisplayConfig().
Qijia Liu (1):
winedbg: Remove arm_disasm_branchreg.
Sveinar Søpler (1):
readme: Update Norwegian translation.
Zebediah Figura (3):
httpapi/tests: Avoid some test failures with newer Windows 10.
devenum: Avoid initializing nameless unions in designated initializers.
server: Pass the correct size to sockaddr_from_unix() (Valgrind).
Zhiyi Zhang (1):
winex11.drv: Check that there are connected outputs before using XRandR 1.4.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc4 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc4.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc4.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.0-rc4 (total 29):
24116 Cannot save game in Rainblood: Town of Death
25409 Windows Live Essentials for XP installer crashes
27229 printf() newline missing with multibyte strings
31942 Microsoft Office 2003 and Office 2003 Editions Resource Kit installers crash on startup
32061 Guild Wars: Launcher hangs sometimes
39731 Assassin's Creed IV Black Flag crashes
40430 Multiple NVIDIA installers abort due to failure to process xml config (PhysX 9.x, GeForce Now, GeForce Experience 3.x, RTX Voice)
41298 Battlefield 3 crashes during loading
41450 timestamp is missing from some debug messages
43329 Multiple applications fail to get selected path after double click last path element in IFileDialog2 folder selection dialog (Wargaming.net Game Center, Adobe DNG Converter 10.x/11.x)
43412 World of Warships: CEF screens cannot be displayed
44185 DragonAgeOrigins autorun.exe crash inside winegstreamer
44538 Tales of Zestiria doesn't start
45950 RedMon 1.9 (Redirection Port Monitor) does not work (missing support for monitors providing the MONITOR2 interface)
48587 httpapi tests are broken on Windows 8
49143 RTF Editor does not support cyrillic letters using MS Sans Serif Font
49347 Settlers III: mouse not working on start screen, game entry and statistics screen after a game, if "Automatically capture the mouse in full-screen windows" is on in winecfg
49493 Children Of Morta stays at blue stars screen after starting game.
49545 Current working directory reset to "/" executing a winegcc/wineg++ compiled program
49563 Adobe DNG converter 12.4 crashes after upgrade to Wine 5.12
49650 Bunch of Heroes (Steam) hangs with a black screen at startup
49683 Kingdom Come Deliverance crashes
49782 Elite Dangerous Horizons: crashes with wine64 5.16
49789 Tina 11 Demo crashes when run in a 64-bit prefix
50126 Writing VT_UI8 property type to a stream is not currently supported
50291 World of Warcraft Classic Fails to Close Cleanly
50354 Team Fortress 2 crashes during loading
50373 Touhou Shinpiroku trial terminates immediately
50378 dlls/amstream/tests/amstream.o error: unknown field ‘dwBitMasks’ specified in initializer
----------------------------------------------------------------
Changes since 6.0-rc3:
Akihiro Sagawa (2):
po: Update Japanese translation.
d3dx9: Avoid closing invalid handles.
Alexandre Julliard (2):
gdi32: Don't fail font creation when we are out of handles.
dwrite: Avoid a compiler warning when FreeType is missing.
Alistair Leslie-Hughes (4):
include: Add DB_LRESERVE type.
include: Add ExecuteOptionEnum typedef.
msado15: Set row_set point to NULL on close.
msado15/tests: Add test for interface ADOConnectionConstruction15.
Andrey Gusev (1):
po: Update Ukrainian translation.
André Hentschel (2):
opengl32/tests: Don't test function directly when reporting GetLastError().
kernel32/tests: Don't test functions directly when reporting GetLastError().
Biswapriyo Nath (2):
include: Add more Media Foundation error codes.
include: Add IAMCameraControl definition in axextend.idl.
Can Taşan (1):
po: Update Turkish translation.
Dmitry Timoshkov (6):
wbemprox/tests: Run StdRegProv tests using ROOT\\DEFAULT connection point.
wbemprox/tests: Add some tests for SystemRestore class.
gdi32/tests: Add some tests to show that GetGlyphIndices() should avoid best fit chars.
fonts: Correct default glyph index for MS Sans Serif font to match Windows.
shell32/tests: Remove no longer used parameter.
shell32/tests: Remove workarounds for shell32 < 5.0.
Huw D. M. Davies (1):
qcap: Avoid unused variable warning if v4l is absent.
Jacek Caban (1):
conhost: Fix copy-paste typos in selection coordinates.
Martin Storsjo (6):
asm: Separate .def/.scl/.type/.endef with newlines instead of semicolons.
winebuild: Pass -m options to dlltool for arm and arm64.
asm: Use SEH assembly when building with clang in MSVC mode.
include: Fix the signature of _InterlockedCompareExchange128.
include: Check whether the ms_abi attribute is supported on aarch64.
ntdll: Implement a no-op __chkstk for arm64.
Michael Stefaniuc (1):
winspool/tests: Use wide-char string literals.
Nikolay Sivov (1):
dwrite: Add a notice regarding HarfBuzz.
Paul Gofman (2):
ntdll: Always copy context in call_user_apc_dispatcher() on x86.
ntdll: Preserve syscall frame when calling async IO system APC.
Zebediah Figura (3):
amstream/tests: Define NONAMELESSUNION.
ucrtbase: Do not add MSVCRT_ prefix to the exported function name of _lrot*.
d3dcompiler/tests: Avoid initializing nameless unions in designated initializers.
Zhiyi Zhang (2):
gdi32/tests: Fix possible test failures in test_clip_box().
gdi32/tests: Fix test failures on Win10 1909+.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc3 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc3.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc3.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.0-rc3 (total 19):
20352 Autodesk 3ds Max 9 fails to start: "adlmdll.dll failed to initialize" (failure to connect to Autodesk Licensing Service)
22009 Symantec Antivirus 10.1 installer fails due to missing Windows Event Log Service (wevtsvc)
32772 Built-in iexplore crashes on exit with Flash player 11 ActiveX plug-in installed
45699 Multiple applications crash on unimplemented function RPCRT4.dll.NdrClientCall3 (MS Office 2016 Pro Plus 64-bit/x64 installer, MS-MPI 10.x)
48808 user32:cursorinfo "wrong info cursor" failure in Chinese locale on Windows 10
49584 DbgHelp no longer can write minidumps
49614 Regression: Steam win32 client floods with "CreateSharedImage: invalid format" before crashing
49831 winetricks dotnet30sp1 fails
49832 Crysis crashes when starting a new game
49841 Provide an intermediate level of make output
49940 64Bit iexplore.exe crashes on macOS
50014 ConEmu hangs (no interaction possible with console)
50015 YUMI-UEFI broken in Wine 5.15
50052 wineconsole and mark-copy
50124 Objects are visible through each other or invisible at all with vulkan renderer (Sniper Elite V2, Banished)
50142 winedbg fails to run programs
50252 (linked ?) fonts not handled correctly since wine 5.21
50271 Wine throws virtual_setup_exception error during PSPad splash screen or while checking for updates
50343 ConEmu is extremely slow when resizing or selecting text
----------------------------------------------------------------
Changes since 6.0-rc2:
Akihiro Sagawa (3):
po: Update Japanese translation.
po: Update Japanese translation style.
po: Update Japanese translation.
Alex Henrie (2):
po: Update Catalan translation.
kernel32/tests: Add tests for Get(Active|Maximum)ProcessorCount.
Alexandre Julliard (6):
gdi32: Don't create font substitutes for identical names.
gdi32: Properly fail mapping glyph for invalid characters in fonts without encoding.
ntdll: Pass the correct handle to NtTerminateProcess().
vcomp/tests: Explicitly request signed chars.
makefiles: Make the tests also depend on the Unix library of the tested module.
ntdll: Only reset the Unix current directory on removable devices.
Biswapriyo Nath (7):
include: Add AUDCLNT_STREAMOPTIONS_AMBISONICS in audioclient.idl.
include: Add error codes in audioclient.idl.
include: Add AMBISONICS_PARAMS structure in audioclient.idl.
include: Add IAudioAmbisonicsControl interface in audioclient.idl.
include: Add more GUIDs in mfreadwrite.idl.
include: Add DEFINE_ENUM_FLAG_OPERATORS macro in mfreadwrite.idl.
include: Add DEFINE_ENUM_FLAG_OPERATORS macro in directmanipulation.idl.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Can Taşan (1):
po: Update Turkish translation.
François Gouget (4):
ws2_32/tests: Skip some raw socket tests when missing elevated privileges.
ntdll/tests: Skip some registry tests when missing elevated privileges.
ntdll/tests: The case-sensitivity tests don't need write access.
crypt32/tests: Fix a registerOIDInfo() failure when missing elevated privileges.
Haidong Yu (2):
inetcpl.cpl: Fix memory leak in security_on_initdialog.
ieframe: Fix memory leak in PersistFile_Save.
Henri Verbeet (9):
wined3d: Compare requested memory types in wined3d_bo_slab_vk_compare().
wined3d: Only clear "map_ptr" if the memory was unmapped in wined3d_allocator_chunk_vk_unmap().
wined3d: Unmap the chunk if needed in wined3d_context_vk_destroy_bo().
wined3d: Unmap the slab if needed in wined3d_context_vk_destroy_bo().
wined3d: The Vulkan blitter supports depth blits.
wined3d: Zero-initialise context_vk in wined3d_context_vk_init().
wined3d: Avoid referencing empty command buffers in wined3d_query_event_vk_issue().
wine.inf: Store Dynamic DST data for Asia/Tehran as "relative" dates.
wined3d: Do not create Vulkan 2D (array) views for UAVs on 3D resources.
Jacek Caban (9):
dbghelp: Fetch version info only for PE modules in minidumps.
ucrtbase: Improve __intrinsic_abnormal_termination stub.
msvcrt: Prefix *rot* functions.
msvcrt: Use GCC-style assembly on Clang MSVC target.
msvcrt: Use __ASM_USE_THISCALL_WRAPPER in cxx.h.
winapi: Use __alignof__ on clang.
conhost: Don't create bitmap for hidden windows.
conhost: Improve get_output_info debug traces.
widl: Don't apply call_as methods to async interface.
Jactry Zeng (1):
po: Update Simplified Chinese translation.
Michael Stefaniuc (7):
wldap32/tests: Use wide-char string literals.
hnetcfg/tests: Use wide-char string literals.
atl100/tests: Use wide-char string literals.
msi/tests: Use wide-char string literals.
schedsvc/tests: Use wide-char string literals.
qcap/tests: Use wide-char string literals.
gdi32/tests: Use wide-char string literals.
Paul Gofman (5):
ws2_32: Fix buffer size check in WSAIoctl() for SIO_GET_INTERFACE_LIST.
ntdll: Remove unwind registers save space from struct stack_layout on x64.
ntdll: Always copy context in call_user_apc_dispatcher() on x64.
ntdll: Save unwind information in KiUserApcDispatcher() on x64.
ws2_32/tests: Don't fail the test in test_wsaioctl() if only one interface is available.
Rafał Harabień (1):
d3d9: Fix handling of D3DENUM_WHQL_LEVEL.
Rémi Bernon (1):
wintrust: Don't fail CryptCATOpen on empty file or invalid data.
Zebediah Figura (5):
httpapi/tests: Sleep before calling GetOverlappedResult() in test_v2_server().
winmm: Always allocate at least MAX_PATH bytes in mmioOpenW().
winmm/tests: Test the mmioOpen() search path with various flags.
winmm/tests: Add some tests for MMIO_PARSE with long file names.
winmm: Search the default path when opening an existing file in create_file_OF().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc2 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc2.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc2.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.0-rc2 (total 40):
16250 Sacred Gold Edition: cinematics do not play
29310 FirstClassClient 12.005 no login screen
32877 Gnomoria Demo crashes on launch.
33488 Print Artist 4.0 (Win 3.11/95) installer doesn't show up
34373 AirScout 0.9.9.5 (.NET 4.0 app) fails to start with Wine-Mono (System.Windows.Forms.DataVisualization.Charting.Chart.BeginInit method not implemented)
38161 Whispering Willows has missing text for Cyrillic alphabet
42152 eFax Messenger 4.4: hangs during installation
43362 Bethesda Net Launcher can`t download games
44455 Grandia 2 movies don't play
45249 Multiple applications wrapped with PE Compact v2.x protection scheme crash on startup (GOT/PIC code emitted at Win32 API entries)(Zockinger Facilitator TFFT v1.1x)
45404 LEGO Rock Raiders crashes early on launch
48362 Shadwen (32-bit version) crashes after an intro or chapter restart
48531 Commandos 2 - HD Remaster fails to launch without native .NET 4.0
48850 Mafia: The City of Lost Heaven videos playing in pink
49106 error: redefinition of typedef ‘UCHAR’ (plus 'PUCHAR’, ‘USHORT’, 'PUSHORT’, ‘ULONG’, and 'PULONG’)
49191 armv7l build broken: dlls/ntdll expression too complex (compiler default '-march=armv6' doesn't support __sync_add_and_fetch for 64-bit integers)
49455 Resident Evil Revelations 2 goes into split screen with one controller.
49467 Resident Evil Revelations 2 my directional pad does not work when analogs are enabled.
49535 Multiple applications have overly green and purple videos due to bad YUV -> RGB conversion (Final Fantasy XI Online, Megarace 3, BlazBlue Calamity Trigger, Mafia: The City of Lost Heaven)
49540 Silverlight configuration tab "Webcam / Mic" crashes without functional GL libraries
49690 winetricks dotnet35 hangs in 64-bit prefixes
49838 Backtraces no longer contain symbols
49892 WINE 5.17 never ending loop on "Setting up the windows environment..." ( Android-x86 OS running on PC)
49900 Go programs built using go-winio crash on unimplemented function ntdll.dll.RtlDefaultNpAcl
50010 Deus Ex Mankind Divided crashes if Wine is compiled with mingw
50024 signtool.exe from Windows 7 SDK fails to find certificates
50102 Starcraft fails to download cloud settings in fullscreen mode
50114 Battle.net App hangs when opening web links
50121 Commandos 2 - HD Remaster too dark with vulkan renderer
50127 Fonts are thin and pale
50139 Exact Audio Copy (EAC) 1.6 plugins not loading (dotnet20 / dotnet40)
50173 Autocad 2005 no longer launches
50175 Path of Exile: some Cyrillic and Hungul text is missing since Wine 5.20
50190 Shockwave Projector: crash on launch
50211 Quicken 2004 XG Release 2 crashes on startup
50216 Doesn't start Thunderbird (x64 portable version) any more
50228 Warframe: filtering by text does not work for Cyrillic since wine-5.14
50273 Sid Meier's Civilization III Complete crashes on start
50274 Copy paste bug in ipstats.c
50294 It's no longer possible to execute a Winelib binary built with older version of Wine
----------------------------------------------------------------
Changes since 6.0-rc1:
Alex Henrie (1):
ntdll: Remove unnecessary call to strlen from get_dos_device.
Alexandre Julliard (11):
gdi32: Always let the Freetype driver fixup the AA flags.
ntdll: Don't use the main exe path as bindir on Android.
libwine: Move the Android JNI initialization to ntdll.
libwine: Mark more functions as obsolete.
ntdll: Support the Android Java %fs register being a GDT selector.
winegcc: Look for ntdll.so instead of libwine.so to find the library directory.
libwine: Add missing wine/asm.h include.
configure: Force -static-libgcc when using libunwind.
include: Avoid redefining base types in ntdef.h.
configure: Get rid of some removed files in the install target.
makefiles: Add support for Automake-style silent make rules.
Biswapriyo Nath (6):
ntdll: Add RtlDefaultNpAcl stub.
include: Add ID2D1ColorContext interface in d2d1_1.idl.
include: Add ID2D1GradientStopCollection1 interface in d2d1_1.idl.
include: Add ID2D1ImageBrush interface in d2d1_1.idl.
include: Add ID2D1StrokeStyle1 interface in d2d1_1.idl.
include: Add ID2D1Multithread interface in d2d1_1.idl.
Charles Davis (1):
iphlpapi: Fix copy-paste error.
Haidong Yu (1):
evr: Add missing LeaveCriticalSection on creating tracking thread.
Hans Leidekker (1):
setupapi: Handle NULL source filename in build_filepathsW.
Henri Verbeet (5):
wined3d: Ensure the last mip-level is at least large enough to hold a single compressed block.
wined3d: Use an sRGB fallback format for sRGB formats in wined3d_swapchain_vk_select_vk_format().
wined3d: Do not request VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT for dynamic buffers.
wined3d: Request VK_MEMORY_PROPERTY_HOST_CACHED_BIT for WINED3D_RESOURCE_ACCESS_MAP_R buffers.
wined3d: Do not request VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT for unmappable buffers.
Jacek Caban (4):
conhost: Fix handling selection boundaries in copy_selection.
conhost: Use QS_ALLINPUT to wait for input in main loop.
dbghelp: Use WINELOADER environment variable from debuggee process in get_wine_loader_name.
setjmp.h: Use GCC-style setjmp on Clang in MSVC mode.
Jeff Smith (5):
gdiplus/tests: Use wide-char string literals for font names.
gdiplus/tests: Use wide-char string literals for file names.
gdiplus/tests: Use wide-char string literal for mimetype.
gdiplus/tests: Use wide-char string literal for metafile description.
gdiplus/tests: Use wide-char string literals for test strings.
Julian Rüger (1):
po: Update German translation.
Michael Stefaniuc (13):
msvfw32/tests: Use wide-char string literals.
oledlg/tests: Use wide-char string literals.
msctf/tests: Use wide-char string literals.
gameux/tests: Use wide-char string literals.
ieframe/tests: Use wide-char string literals.
jscript/tests: Use wide-char string literals.
scrrun/tests: Use wide-char string literals.
cryptui/tests: Use wide-char string literals.
dnsapi/tests: Use wide-char string literals.
shcore/tests: Use wide-char string literals.
version/tests: Use wide-char string literals.
wmvcore/tests: Use wide-char string literals in locale.c.
ntoskrnl/tests: Use wide-char string literals in locale.c.
Nikolay Sivov (1):
sxs: Query context that contains the GUID in SxsLookupClrGuid().
Paul Gofman (4):
ntdll/tests: Add a broken result for Win7u in test_extended_context().
ntdll: Restore non-volatile registers in call_user_exception_dispatcher() on x86_64.
kernelbase: Get language sort only when required in LCMapStringEx().
ntdll: Don't set xstate in context if xstate features are not supported.
Rafał Harabień (1):
include: Remove two D3DCAPS2 defines in d3d9 headers.
Rémi Bernon (3):
gdi32/tests: Test GetGlyphIndices with '\0' default and a glyph.
gdi32: Don't try to get glyph index when default char is 0.
gdi32: Fix gdi font leak in CreateScalableFontResourceW.
Zebediah Figura (4):
Revert "winegstreamer: Avoid performing color matrix conversions in videoconvert.".
winegstreamer: Clean up a newly allocated buffer on error in bytestream_wrapper_pull().
kernel32/tests: Add some more tests for FILE_ATTRIBUTE_REPARSE_POINT.
winegstreamer: Remove the color matrix setting for the other videoconvert as well.
Zhiyi Zhang (2):
user32/tests: Test that monitor handles are user32 handles.
user32/tests: Test that monitor enumeration is not affected by window stations and desktops.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc1 is now available.
This is the first release candidate for the upcoming Wine 6.0. It
marks the beginning of the yearly code freeze period. Please give this
release a good testing to help us make 6.0 as good as possible.
What's new in this release (see below for details):
- Gecko engine update.
- WindowsCodecs and QCap libraries converted to PE.
- Faster font initialization at process start.
- Support for named pipes with empty names.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc1.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0-rc1.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.0-rc1 (total 53):
15301 Biliardo 2 installer terminates on launch (32-bit Ghost-based installer uses year 2045 file date for decrypting database, triggering y2038 problem)
21881 iScreensaver Designer 3.5 crashes
28089 exception handling code touches stack for exceptions handled by the debugger
28332 Wazzal 1.2 (2002 release) crashes after clicking 'Play'
33310 Minimizing window erases chess board in Shredder Classic 4 Windows
33996 Multiple installers fail in VBScript custom actions due to missing support of Properties with Parameters (IncrediMail, LabChart Reader 8, Toad for MySQL Freeware 7.x)
34770 Some WMI applications fail when incorrectly passing WBEM_MASK_CONDITION_ORIGIN to IWbemClassObject::GetNames method
35272 Mortal Kombat Komplete Edition (Steam) crashing to desktop within graphics autoconf.
40146 Mein Verein 2016 Trial fails to install
42095 winamp: skins don't change unless app is restarted
42623 Changing current dir ~/.wine crashes Far Manager
42741 Multiple Blizzard games fail to launch (StarCraft I & II, Diablo III, Heroes of the Storm)
43567 Vietcong - game crashes during radiocalls ('kernel32.GetTickCount' clobbers ECX)
44061 Destiny 2 crashes on launch (needs non-zero TimeDateStamp field in PE file header)
44435 Call of Duty WWII crash
44502 Epic Games Launcher (Fortnight 7.x) reports 'Error: Initialization failed while advising the language notification sink to the TSF source. (0x80004001)' (unsupported ITfActiveLanguageProfileNotifySink)
44524 skyrim keypad 0~9,'*','/' is not working causing some shortcut not work.
44882 Call of Duty Infinite Warfare crashes after Splash-Screen with a Direct-X Error
45383 Xanadu Next: movies not working (avi/MPEG-4 (XviD))
45510 Sentinel HASP Runtime v6.6-7.8 driver installer reports Windows error 1053 when starting the 32-bit hardlock kernel driver service (custom imports resolver fails to locate some ntoskrnl exports)
46028 Provide separate debug/symbol info files (.pdb) for 32-bit and 64-bit Wine-Gecko 2.47+ package (unstripped 32-bit 'xul.dll' too large to be mapped)
46216 Multiple games need ThreadEnableAlignmentFaultFixup (Lords of the Fallen, Batman: Arkham Knight, Mirror's Edge: Catalyst)
46236 Far 3.0 x64 crashes starting from build 5200
46237 Far 3.0 x86 crashes starting from build 5288
47950 Ys: Memories of Celceta crashes on launch
48545 SDL GameControllerAddMapping registry keys do not work
49116 Multiple installers using "mbahost.dll" crash due to method invocation on CCW class interface (Windows 10 1903 SDK (10.0.18362.0), SQL Server Management Studio, Raid Shadow Legends)
49437 Segmentation fault (core dumped) even on winecfg or wineconsole on FreeBSD
49969 Videos are not synced in X3 Reunion
49975 Battlefield 1, 4 and V not start from with wine-staging 5.17 on
50031 The Foundation Game crashes with bundled ucrtbase
50037 wineconsole and mingw64 gdb.exe and keyboard input
50080 Burnout Paradise: The Ultimate Box crashes between intros
50094 Rockstar Games Launcher installer hyperlinks don't work
50096 Performance Regression in Secondhand Lands
50105 New Vegas Heap Replacer crashes with "Call from 0x7bc91c09 to unimplemented function d3dx9_38.dll.D3DXMatrixMultiply"
50134 Steam terminates/crashes in clean prefix.
50154 Allow using SDL_GAMECONTROLLERCONFIG to configure SDL controller mappings
50160 VstHost crashes on unimplemented function avrt.dll.AvSetMmMaxThreadCharacteristicsA
50163 Multiple applications crash with a stack overflow (Mod Organizer 2, World of Tanks, SWTOR, Audacity)
50169 Regression: Microsoft Flight Simulator X hangs on startup (bisected)
50171 32-bit PE entry point no longer called through BaseThreadInitThunk() assembly wrapper when Wine is built with LLVM MinGW
50176 Tracing with 'msvcrt' debug channel causes any application to fail with stack overflow in Wine 5.22
50179 Future Pinball: parse_hex_literal invalid literal
50188 Audacity fails to start
50189 Multiple 64-bit applications crash with Wine MinGW PE build due to violation of Windows 64-bit ABI (RSP must be 16-byte aligned when making a call to Win64 API)
50192 Python "import sys" crashes with Unhandled exception
50197 cmd and winedbg: Unable to insert some chars (*, _) with de-adnw keyboard layout
50204 wineserver from Wine 5.22-195-gcbca9f847f6 debug dumps NLS object information on shutdown
50206 Cinebench R23 needs dcomp.dll
50213 Summer Pockets (demo) complains about timezone settings.
50236 Multiple console applications using WriteFile() to write to console don't show any output since Wine 5.22 (winepath)
50240 CLR console applications loop output infinitely
----------------------------------------------------------------
Changes since 5.22:
Akihiro Sagawa (3):
ntdll: Add a timezone mapping rule for North Korea Standard Time.
quartz/tests: Add some tests for VMR7 windowless video size.
quartz/vmr9: Allow the aspect ratio parameters to be NULL in IVMRWindowlessControl::GetNativeVideoSize().
Alexandre Julliard (51):
kernel32: Implement BaseThreadInitThunk in assembly also for PE builds.
include: Add asm helper macros to define import variables.
include: Move XSTATE definitions to winnt.h.
include: Use proper dllimports for kernel32 functions.
include: Use proper dllimports for msvcrt functions.
ntdll: Make x86_64 syscall thunks position independent.
include: Only define _strnicmp() prototype when needed.
include: Make the CURRENT_STACK16 and CURRENT_DS macros available globally.
include: Add CURRENT_SS/SP macros for 16-bit code.
krnl386: Move the 16-bit stack out of the WOW32Reserved field.
ntdll: Store the syscall dispatcher also in the WOW32Reserved TEB field.
include: Force aligning stack pointer also for Mingw builds.
configure: Also disable format warnings for ARM64.
msvcrt: Fix floating-point status register size on ARM64.
kernel32/tests: Fix floating-point status register size on ARM64.
ntdll/tests: Fix a trace format on ARM64.
winebuild: Initialize entry point to avoid a compiler warning.
shell32: Silence buffer overflow compiler warnings.
winemenubuilder: Silence out of bounds compiler warning.
msxml3: Clear one extra variant in collection enumeration.
msxml3: Only allow ASCII characters in number conversion.
msvcp: Use a constant string as fprintf format.
ntdll: Avoid closing an invalid handle on process creation failure.
server: Use l_intl.nls for case mappings.
server: Create the NLS section object for the l_intl.nls file.
server: Release the l_intl fd once the mapping is created.
libport: Add both inline and non-inline versions for every Unicode function.
libport: Move the non-inline version of the string functions to libwine.
libwine: Move libwine private definitions out of the global wine/unicode.h
libport: Move the case mapping table back to libwine and stop updating it.
libport: Move the char type table back to libwine and stop updating it.
windowscodecs: Build with msvcrt.
libport: Remove the rint() function replacements.
libport: Remove the ffs() function replacement.
libport: Remove the statvfs() function replacements.
libport: Remove the strnlen() function replacement.
libport: Remove the usleep() function replacement.
libport: Remove the isfinite/isinf/isnan function replacements.
configure: Remove some no longer needed configure checks.
makedep: No longer use wine/port.h.
include: Remove some no longer used Unicode functions.
wine.inf: Create a default win.ini file.
rpcrt4/tests: Avoid a printf format warning.
hhctrl.ocx: Use stricmp() instead of _strnicmp(..., -1).
wpp: Don't try to recover from memory allocation errors.
wpp: Use standard Wine lists where possible.
wpp: Remove some dead code.
wpp: Merge preproc.c into wpp.c.
Revert "winecrt0: Make the main() and wmain() entry points cdecl."
makefiles: Get rid of the libwine.so symlink.
msvcrt: Fix _wstat() spec entry.
Alistair Leslie-Hughes (3):
msctf: Accept ITfActiveLanguageProfileNotifySink in ThreadMgr AdviseSink.
include: Add some DB_S_ defines.
odbccp32: Implement SQLRemoveDSNFromIni/w.
Andrey Gusev (2):
bcrypt: BCryptCreateHash is no longer a stub.
wined3d: Add NVIDIA GeForce GTX 1060 Mobile.
Arkadiusz Hiler (2):
user32: Fix WM_DEVICECHANGE handling.
plugplay: Send WM_DEVICECHANGE with DBT_DEVNODES_CHANGED with each event.
Austin English (1):
dcomp: Add stub dll.
Bernhard Übelacker (1):
gdi32: Avoid crash by initializing variable font_set.
Biswapriyo Nath (5):
include: Add D3D10_RAISE_FLAG structure in d3d10.idl.
include: Add D3D11_FENCE_FLAG_NON_MONITORED name in d3d11_3.idl.
include: Add D3D11_FEATURE_DATA_D3D11_OPTIONS5 structure in d3d11.idl.
include: Add D3D11_RAISE_FLAG enumeration in d3d11.idl.
include: Add D3D11_FORMAT_SUPPORT2 enumeration in d3d11.idl.
Brendan Shanks (3):
winebus.sys: Open IOHID devices individually to fix macOS Catalina and Big Sur.
winebrowser: Prefix an invalid URL with 'http://' before opening with a browser.
wine.inf: Add UrlAssociations for FTP/HTTP/HTTPS.
Damjan Jovanovic (1):
ntdll: Fix backward compatibility for struct link_map on FreeBSD.
Daniel Lehman (4):
shcore: Return ISequentialStream interface for memory stream.
msxml3: Support ISequentialStream in domdoc_transformNodeToObject.
shcore: Return failure on Read past end of memory stream.
ntdll: Handle 64-bit addresses in +seh traces on x64.
Dean M Greer (1):
configure: Don't prepend folder name for SDL.h.
Derek Lesho (14):
mf/samplegrabber: Evaluate type compatibility by comparison to the initial type.
mf/topoloader: Add partial topology resolution tests.
mf/topoloader: Move node connection responsibility to connection function.
mf/topoloader: Implement source node to sink node branch resolver.
mf/topoloader: Unstub IMFTopologyLoader::Load.
winegstreamer: Use gst_audio_info_to_caps for media type translation.
winegstreamer: Introduce audio conversion transform.
winegstreamer: Register the audio conversion transform.
winegstreamer: Implement ::GetInputAvailableType for audio conversion transform.
winegstreamer: Implement ::GetOutputAvailableType for audio conversion transform.
winegstreamer: Implement ::ProcessMessage for audio conversion MFT.
winegstreamer: Implement ::SetInputType for audio conversion transform.
winegstreamer: Implement ::SetOutputType for audio conversion transform.
winegstreamer: Implement Get(Input/Output)CurrentType functions for audio converter transform.
Dmitry Timoshkov (3):
crypt32: Add support for CRYPT_STRING_HEX to CryptBinaryToStringW.
crypt32: Fix reading and writing CRYPT_KEY_PROV_INFO certificate property.
crypt32/tests: Add some tests for CRYPT_KEY_PROV_INFO certificate property.
Erich Hoover (1):
ntdll: Fix converting large 32-bit time_t when time_t is signed.
Esme Povirk (4):
windowscodes: Move tiff encoding to the unix lib.
windowscodecs: Initialize encoder flags for png encoder.
windowscodecs: Move jpeg encoding to the unix lib.
windowscodecs: Move ICNS encoding to the unix lib.
François Gouget (13):
xactengine3_7/tests: Fix the spelling of a couple of comments.
user32/tests: Fix the spelling of a win_skip() message.
dssenh/tests: Fix the spelling of a skip() message.
qmgr/tests: Fix the spelling of an ok() message.
ole32/tests: Add a trailing linefeed to an ok() message.
ws2_32: Fix the spelling of a comment.
gdi32/tests: Fix the spelling of an ok() message.
dxgi/tests: Fix the grammar in a comment.
advapi32/tests: Don't check the display name if not in an English locale.
ntdll/tests: Don't check the load address in the WoW64 case.
msxml3/tests: Fix the spelling of a test string.
fsutils/tests: Fsutils requires elevated privileges on Windows <= 7.
mscoree/tests: The comtest registry tests may require elevated privileges.
Gabriel Ivăncescu (11):
msvcrt: Fix signature of _mbscmp.
winex11.drv: Always enable minimize/maximize functions for minimized windows.
conhost: Respect the StartupInfo's wShowWindow.
include/icmpapi: Add missing function declarations.
iphlpapi/tests: Close the ICMP handle when done.
iphlpapi/tests: Trace the ICMP reply only with debug level > 1.
iphlpapi: Move the ICMP reply retrieval to a helper function.
iphlpapi: Implement IcmpSendEcho and IcmpSendEcho2 via IcmpSendEcho2Ex.
iphlpapi: Fix adjusting data pointer after an ICMP reply.
iphlpapi: Make sure there's no gap between the ICMP_ECHO_REPLY array and the data.
iphlpapi: Store an IO_STATUS_BLOCK at the end of the reply buffer if there's enough space available.
Gerald Pfeifer (1):
advapi32/tests: Initialize luid in test_CreateRestrictedToken.
Gijs Vermeulen (7):
sapi: Fix typo in ISpVoice::SetOutput() trace.
msctf/tests: Add ITfSource::[Un]AdviseSink() test with ITfActiveLanguageProfileNotifySink.
quartz: Return VFW_E_ENUM_OUT_OF_SYNC in IEnumFilters::Skip() when enum version doesn't match graph version.
quartz: Return E_INVALIDARG when cursor is NULL in IEnumFilters::Skip().
quartz: Only return S_FALSE in IEnumFilters::Skip() if count goes past the end of the sequence.
avrt: Add AvSetMmMaxThreadCharacteristicsA/W stub.
winegstreamer: Initialise type_handler to NULL in media_stream_init_desc().
Hans Leidekker (4):
winebus.sys: Fix registry access rights for SDL controller mapping.
winebus.sys: Support setting SDL controller mapping through environment variable.
oledb32: Add a partial implementation of IErrorRecords_GetErrorInfo().
wbemprox: Mark some string properties as dynamic.
Henri Verbeet (22):
include: Update the d3d12 headers from vkd3d.
wined3d: Store the usage in struct wined3d_bo_gl.
wined3d: Use command buffer IDs for synchronisation in wined3d_buffer_gl_sync_apple().
wined3d: Reference the source/destination bo in wined3d_context_gl_copy_bo_address().
wined3d: Reference the bo in wined3d_unordered_access_view_gl_clear_uint().
wined3d: Reference the indirect buffer bo in wined3d_context_gl_draw_indirect().
wined3d: Reference the indirect buffer bo in dispatch_compute().
wined3d: Reference the stream output bo in context_load_stream_output_buffers().
wined3d: Reference the UAV bo in context_load_unordered_access_resources().
wined3d: Reference the SRV bo in context_load_shader_resources().
wined3d: Reference the constant buffer bo in context_gl_load_shader_resources().
wined3d: Reference the bo (if any) in texture2d_read_from_framebuffer().
wined3d: Reference the source/destination bo in wined3d_texture_copy_sysmem_location().
wined3d: Reference the bo in wined3d_texture_gl_upload_data().
wined3d: Reference the bo in wined3d_texture_gl_download_data_slow_path().
wined3d: Reference the bo in wined3d_texture_gl_download_data().
wined3d: Reference the bo in wined3d_buffer_gl_upload_ranges().
wined3d: Explicitly synchronise in wined3d_context_gl_map_bo_address().
wined3d: Use the "bo user" mechanism to invalidate existing bindings in wined3d_buffer_gl_destroy_buffer_object().
wined3d: Allocate a new bo for busy DISCARD maps.
wined3d: Get rid of redundant DISCARD filtering.
wined3d: Handle GL_APPLE_flush_buffer_range flushing in wined3d_context_gl_unmap_bo_address().
Jacek Caban (26):
server: Properly handle NtQueryInformationFile on console handles.
kernelbase: Use NtQueryInformationFile for consoles handles in GetFileSizeEx.
server: Support FileFsDeviceInformation queries on console handles.
server: Remove no longer needed hack for inheriting console from stdin.
conhost: Signal console in process_console_input if needed.
mshtml: Normalize bool values before passing them to Gecko.
jscript: Set error location when handling errors directly in parser.
server: Rename console_input to console.
server: Rename create_console_output to create_screen_buffer.
server: Rename unbound devices to console_input and console_output.
server: Use separated fd ops for unbound console input.
server: Use separated fd ops for unbound console output.
kernelbase: Use FileFsDeviceInformation for console handles in GetFileType.
mshtml: Update to Wine Gecko 2.47.2.
server: Remove no longer needed free_console.
server: Set console renderer thread in get_next_console_request.
cmd: Don't use WCMD_is_console_handle.
kernelbase: Remove no longer needed console handle mapping.
kernel32: Remove no longer needed CONSOLE_Init.
kernelbase: Simplify CreateFileW.
server: Block console write until conhost processes ioctl.
kernel32: Remove no longer used variables.
kernel32: Remove outdated comments.
conhost: Allow events with left alt pressed in edit_line_insert.
server: Fix handling of STATUS_ALERTED in get_next_console_request.
makedep: Use -fno-builtin for crt modules.
Jeff Smith (4):
gdiplus: Fix function name typo in comment.
gdiplus: Guard initialization of installed font collection.
jscript: Use wide-char string literals.
jscript: Clean up date formatting strings with era.
Kevin Puetz (5):
ntdll: Don't access empty IMAGE_FILE_IMPORT_DIRECTORY.
winegcc: Implement -Wl,--out-implib.
winebuild: Select all __wine_spec_exe* entry inside winebuild.
winebuild: Find main/wmain in static libraries.
winebuild: Find WinMain/wWinMain in static libraries.
Lauri Kenttä (1):
po: Update Finnish translation.
Liam Middlebrook (2):
winevulkan: Make_vulkan handle VkDeviceAddress basetype.
winevulkan: Update to VK spec version 1.2.162.
Matteo Bruni (16):
d3dx9: Correctly handle sprites array reallocation.
wined3d: Ignore WINED3DFMT_NULL rendertarget in D/S size checks.
d3d9/tests: Use get_readback_color() in test_null_format().
d3d9/tests: Test using a "NULL" texture with a smaller D/S texture.
wined3d: Use glClearDepthf() when available.
wined3d: Add a trace to wined3d_context_gl_bind_fbo().
wined3d: Introduce wined3d_context_gl_destroy_bo().
wined3d: Introduce wined3d_context_gl_create_bo().
wined3d: Use GL_ARB_buffer_storage if available.
wined3d: Get rid of an unnecessary assignment.
d3d9/tests: Make a variable static const.
d3d11: Don't explicitly check for cube map support.
wined3d: Rename d3d_synchronous debug channel to d3d_sync.
wined3d: Allow forcing commands serialization in the CS thread.
d3d9/tests: Skip pretransformed_varying_test() on 32-bit WARP.
d3d9/tests: Accept new WARP test failure in test_updatetexture().
Michael Stefaniuc (42):
comdlg32: Use wide-char string literals.
wininet: Use wide-char string literals in struct initialization.
jscript: Use wide-char string literals.
mshtml: Use wide-char string literals in html*.c.
mshtml: Use wide-char string literals for PRUnichar strings.
mmdevapi: Use wide-char string literals.
msacm32: Make the registry key variables global.
msacm32: Use wide-char string literals.
mshtml: Use wide-char string literals.
kernelbase: Use wide-char string literals.
wininet: Use wide-char string literals.
ole32: Use wide-char string literals.
ole32: Use wide-char string literals in filemoniker.c.
rpcrt4: Use wide-char string literals.
oleaut32: Use more wide-char string literals.
wbemdisp: Use wide-char string literals.
cmd: Avoid casting a const away.
cmd: Inline some simple extern WCHAR strings.
cmd: Use wide-char string literals in builtins.c.
cmd: Use wide-char string literals.
urlmon: Use wide-char string literals in struct initialization.
dmusic: Sync up the dmobject.[ch] files.
cryptdlg: Use wide-char string literals.
sti: Use wide-char string literals.
shdocvw: Use wide-char string literals.
windowscodecs: Use wide-char string literals in metadataquery.c.
windowscodecs: Use wide-char string literals in regsvr.c.
windowscodecs: Use wide-char string literals.
windowscodecs: Use wide-char string literals in struct initialization.
oleaut32: Use a string literal for an empty string.
regsvr32: Use a string literal for an empty string.
mapi32: Use wide-char string literals.
qcap: Use wide-char string literals.
msi: Use a string literal for empty strings.
urlmon: Use wide-char string literals.
ntdll: Print the correct debug string and not a random global variable.
ntdll: Use wide-char string literals in actctx.c.
ntdll: Use wide-char string literals in version.c.
ntdll: Use wide-char string literals.
xmllite: Use a string literal for an empty string.
xmllite: Drop superfluous casts to self.
localspl: Use wide-char string literals.
Nikolay Sivov (38):
mf/tests: Relax error code test for IsMediaTypeSupported() of SAR.
mf/tests: Add another test for SAR time source.
mf/session: Fix comment for the stop helper.
mf/evr: Translate EC_DISPLAY_CHANGED notification to MEStreamSinkDeviceChanged events.
evr/tests: Add some tests for presenter quality control.
mfreadwrite/reader: Alternate between selected streams for MF_SOURCE_READER_ANY_STREAM requests.
evr/presenter: Set frame size and aperture attributes for mixer output type.
evr/presenter: Add aspect ratio preserving scaling.
mfreadwrite/reader: Implement GetServiceForStream() for stream objects.
oleaut32: Use wide-char string literals.
winegstreamer: Fix possible leak on error path (Coverity).
mf/session: Propagate allocator initialization failure code (Coverity).
mfplat/mediatype: Store extra format data as MF_MT_USER_DATA when initializing from WAVEFORMATEX.
dwrite/layout: Keep automatic axes property.
dwrite/layout: Zero-initialize format structure.
dwrite/layout: Zero-initialize layout structure.
dwrite/layout: Zero-initialize initial runs and ranges.
dwrite/layout: Use consistent tracing format for default trimming sign.
dwrite/font: Use consistent traces for the font object.
dwrite/gdiinterop: Use consistent trace format for the bitmap render target.
dwrite/gdiinterop: Use consistent traces for the interop object.
dwrite/font: Reimplement HasVerticalGlyphVariants() flag using general shaping logic.
dwrite: Use font data access helpers when reading metrics tables.
mfplat: Remove duplicated attribute from tracing.
mfplat/mediatype: Do not add user data when converting from WAVE_FORMAT_EXTENSIBLE.
mf/topoloader: Set MF_TOPONODE_DECODER for the decoders.
mf/topoloader: Set MF_TOPONODE_TRANSFORM_OBJECTID for created transforms when CLSID is available.
mf/topoloader: Make sure MF_TOPONODE_STREAMID is set for all outputs.
mf/topoloader: Set MF_TOPONODE_MEDIASTART for all source nodes.
mf/topoloader: Add copier transform automatically for D3D-aware outputs.
dwrite/shaping: Merge extension subtables handling with existing helper.
dwrite: Remove explicit lookup type check in GetVerticalGlyphVariants().
dwrite: Use consistent trace format for strings object.
dwrite: Use consistent trace format for rendering parameters object.
dwrite: Use consistent trace format for font data access objects.
dwrite: Use consistent trace format for rendering object.
bcrypt: Implement RSA key pair importing.
bcrypt: Add initial support for asymmetric keys in BCryptDecrypt().
Paul Gofman (5):
server: Do not dereference symlinks specified as root directory.
server: Allow named pipes creation with device file as root directory.
server: Return STATUS_OBJECT_PATH_INVALID for noname pipe name query.
server: Allow client pipe creation with server pipe as root directory.
ntdll/tests: Test noname named pipe uniqueness.
Piotr Caban (89):
msvcrt: Update lc_category.wrefcount in __get_current_locale.
msvcrt: Remove traces from printf.
msvcrt: Fix C locale lc_time_curr refconting.
msvcrt: Introduce flags field to describe locale stored in thread data.
msvcrt: Lock _MB_CP_LOCK lock in setmbcp.
msvcrt: Return thread locale copy in get_locinfo and get_mbcinfo.
msvcrt: Reimplement _configthreadlocale function.
msvcrt: Make old locale access thread-safe in setlocale.
msvcrt: Simplify get_current_locale_noalloc implementation.
msvcrt: Don't write Unicode BOM if file is not empty in _wsopen_dispatch.
msvcrt: Implement opening Unicode files with no BOM in _wsopen_dispatch.
msvcrt: Move btowc implementation to mbcs.c file.
msvcrt: Move towctrans to wcs.c file.
msvcrt: Remove MSVCRT_lconv type.
msvcrt: Remove MSVCRT_pthreadlocinfo type.
msvcrt: Remove MSVCRT_pthreadmbcinfo type.
msvcrt: Remove MSVCRT__locale_t type.
msvcrt: Remove MSVCRT prefix from locale functions.
msvcrt: Remove MSVCRT_wchar_t type.
msvcrt: Use wide-char string literals.
msvcrt/tests: Use wide-char string literals.
msvcrt: Use type ranges definition from public header.
msvcrt: Use simple type definitions from public header.
msvcp90: Remove MSVCP_size_t type.
msvcp90: Use wide-char string literals.
msvcp90/tests: Use wide-char string literals.
msvcp90: Remove MSVCP_bool type.
msvcp60: Remove MSVCP_size_t type.
msvcp60: Use wide-char string literals.
msvcp60/tests: Use wide-char string literals.
msvcp60: Remove MSVCP_bool type.
msvcp120/tests: Use wide-char string literals.
msvcp140/tests: Use wide-char string literals.
msvcr90/tests: Use wide-char string literals.
msvcr100/tests: Use wide-char string literals.
msvcr120/tests: Use wide-char string literals.
msvcrt: Use WEOF from public header.
msvcrt: Use EOF from public header.
msvcrt: Use struct tm from public header.
msvcrt: Remove MSVCRT_ prefix from cpp.c functions.
msvcrt: Use _beginthread_start_routine_t from public header.
msvcrt: Use errno values from public header.
msvcrt: Use _onexit_table_t from public header.
msvcrt: Use printf and scanf flags from public header.
msvcrt: Use _CRT_FLOAT and _CRT_DBL from public header.
msvcrt: Use _exception definiotion from public header.
msvcrt: Use locale category definiotion from public header.
msvcrt: Remove MSVCRT_ prefix from errno.c functions.
msvcrt: Remove MSVCRT_ prefix from heap.c functions.
msvcrt: Use FILE from public header.
Revert "msvcrt: Avoid conflict with mingw __iob_func declaration.".
msvcrt: Use __utimbuf{32,64} from public header.
msvcrt: Use ctype definition from public header.
msvcrt: Use status word flags from public header.
msvcrt: Use fpclass constants from public header.
msvcrt: Use _ARGMAX from public header.
msvcrt: Use floating point exception signals definition from public header.
msvcrt: Use signal definitions from public header.
msvcrt: Use fpclassify constants from public header.
msvcrt: Use FPU control word definitions from public header.
msvcrt: Remove MSVCRT_ prefix from ctype.c functions.
msvcrt: Remove MSVCRT_ prefix from data.c functions.
msvcrt: Use heap structures and definitions from public header.
msvcrt: Use stdio.h definitions.
msvcrt: Remove MSVCRT_ prefix from environ.c functions.
msvcrt: Remove MSVCRT_ prefix from except.c functions.
msvcrt: Remove MSVCRT_ prefix from exit.c functions.
msvcrt: Remove MSVCRT_ prefix from mbcs.c functions.
msvcrt: Remove MSVCRT_ prefix from misc.c functions.
msvcrt: Remove MSVCRT_ prefix from process.c functions.
msvcrt: Remove MSVCRT_ prefix from scanf.c functions.
msvcrt: Remove MSVCRT_ prefix from string.c functions.
msvcrt: Remove MSVCRT_ prefix from time.c functions.
msvcrt: Remove MSVCRT_ prefix from wcs.c functions.
msvcrt: Remove MSVCRT_ prefix from math.c functions.
msvcrt: Remove MSVCRT_ prefix from dir.c functions.
msvcrt: Remove MSVCRT_ prefix from file.c functions.
msvcrt: Use _invalid_parameter_handler from public header.
msvcrt: Use _purecall_handler from public header.
msvcrt: Use _Dcomplex definition from public header.
msvcrt: Use _JUMP_BUFFER from public header.
include: Add corecrt_io.h header.
msvcrt: Use _finddata_t definition from public header.
msvcrt: Use _stat64 definition from public header.
msvcrt: Remove non-needed defines from msvcrt.h.
msvcrt: Remove non-needed function declarations from msvcrt.h.
msvcrt: Use _configthreadlocale arguments definition from public header.
msvcrt: Remove separate long double math funtions.
ntdll: Fix memchr implementation.
Robert Wilhelm (4):
vbscript: Support property set with parameters.
vbscript: Remove overzealous check in parse_hex_literal.
vbscript: Add parameters to FIXME in VBScript_AddTypeLib.
vbscript: Remove no longer used bool call_statement_t.is_strict member variable.
Rémi Bernon (23):
ntdll/tests: Add tests for NtOpenProcess return status.
server: Return STATUS_INVALID_CID from NtOpenProcess.
ntdll: Return failure from RtlQueryProcessDebugInformation.
gdi32/tests: Add locale-dependent face matching test.
gdi32: Compare font face names using RtlDowncaseUnicodeChar.
ntdll: Initialize local variable (valgrind).
gdi32: Load registry fonts after system fonts.
gdi32: Index scalable faces by full name in rbtree.
gdi32: Update the external keys after all fonts are loaded.
gdi32: Only request registry font path when necessary.
gdi32: Only use the registry cache for application fonts.
include: Emit assembly function size when compiling without MinGW.
widl: Add abi_prefix parameter to format_namespace.
widl: Support WinRT contractversion attribute parsing.
widl: Support WinRT apicontract type.
widl: Support WinRT contract attribute.
gdi32: Introduce struct unix_face as a ft_face wrapper.
gdi32: Store ft_face font props on unix_face.
gdi32: Introduce new opentype font parsing helpers.
gdi32: Try to parse font names without FreeType.
gdi32: Try to parse font props without FreeType.
gdi32: Use FreeType as a fallback when loading font faces.
dbghelp: Read process memory using target addresses, not debugger.
Zebediah Figura (42):
ntdll: Use a dynamically allocated buffer in find_forwarded_export() if necessary.
quartz/tests: Add some tests for IPin::EndOfStream() on the DirectSound renderer.
quartz/tests: Add some tests for IMediaSeeking on parser filters.
quartz/tests: Add some tests for parser streaming.
winegstreamer: Return the seeking start time from IMediaSeeking::GetCurrentPosition().
winegstreamer: Don't query the pad position in IMediaSeeking::SetPositions().
quartz/tests: Add some more tests for IMediaSeeking return value handling.
quartz: Correct return value handling in IMediaSeeking::GetDuration().
quartz/tests: Avoid some test failures related to timing.
quartz: Avoid autoplugging renderers in IGraphBuilder::Connect().
qcap: Remove "stub" from an implemented function.
qcap: Get rid of the VfwCapture typedef.
qcap: Call the right method to clean up the video capture stream.
qcap: Move the image buffer back into the video_capture_device structure.
qcap: Move the video capture device creation function to the function table.
qcap: Move the video capture streaming thread to vfwcapture.c.
qcap: Move the allocator management to vfwcapture.c.
qcap/tests: Add some tests for pin connection.
qcap: Return the connection type from IAMStreamConfig::GetFormat() if connected.
qcap: Directly pass AM_MEDIA_TYPE and VIDEOINFOHEADER pointers to the get_caps() operation.
qcap: Validate the index in AMStreamConfig_GetStreamCaps().
qcap: Directly pass a VIDEOINFOHEADER pointer to the get_format() operation.
qcap: Directly pass a VIDEOINFOHEADER pointer to the get_media_type() operation.
mountmgr.sys: Add a comment advertising the HKLM\Software\Wine\Ports registry key.
mp3dmod/tests: Add more tests for GetInputSizeInfo() and GetOutputSizeInfo().
qcap: Use malloc() instead of heap_alloc().
qcap: Move v4l2 support to a new Unix library.
qcap: Make video capture functions CDECL.
qcap: Build with msvcrt.
qcap: Link to strmbase.
qcap: Use wide-char string literals.
qcap: Use malloc() instead of HeapAlloc() or CoTaskMemAlloc().
qcap/tests: Add some tests for smart tee streaming using the strmbase infrastructure.
qcap/tests: Remove old tests for smart tee streaming.
qedit/tests: Add some tests for sample grabber streaming.
qedit/tests: Add some tests for sample grabber streaming events.
quartz/dsoundrender: Remove the unused "in_loop" field.
quartz/dsoundrender: Don't drop stream_cs in DSoundRender_HandleEndOfStream().
quartz/dsoundrender: Don't drop stream_cs in DSoundRender_SendSampleData().
strmbase: Don't drop csRenderLock in BaseRenderer_Receive().
qedit/nullrenderer: Don't drop csRenderLock in NullRenderer_DoRenderSample().
mfplat: Zero-initialize the device manager object.
Zhennan Cai (1):
ntoskrnl.exe: Fix a reversed spin lock loop condition.
Zhiyi Zhang (1):
wined3d: Do not use wined3d_output_get_desc() to retrieve display rotation.
Ziqing Hui (1):
d3dx10/tests: Add tests for D3DX10CreateTextureFromMemory.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.22 is now available.
What's new in this release (see below for details):
- C runtime libraries converted to PE.
- Use fontconfig cache for faster startup.
- Video playback improvements.
- 3DES cipher support.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.22.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.22.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 5.22 (total 36):
16991 Cobra 11 Nitro: No video and music at game startup
28210 Rome Total War crash at start
30668 Motocross Madness 2 needs IAMMultiMediaStream::GetState() implementation
32613 Tom Clancy's Rainbow Six: Lockdown crashes after the intro videos (needs DxDiag_SoundDevices device child nodes present)
37396 Multiple applications need "sRGB Color Space Profile.icm" (Asperite, Word 2007, Word 2010)
38014 CCCP Insurgent v2007-01-01 crashes when querying system information via DxDiag
41081 Foldit puzzle 1266 crashes at start up
42731 stack overflow when .bat script variable has more than 256 characters
43513 Ys VI: The Ark of Napishtim - videos are not playing
44884 Call of Duty Modern Warfare Remastered: Crash after splash with error about Memory/Disk space
45421 Need for Russia does not play msvideo movies
45650 chromium 32-bit sandbox expects different syscall thunks depending on Windows version
46429 Multiple games need IV50 codec to play videos (Thief Gold, Thief II: The Metal Age, Commandos 2: Men of Courage)
46478 Wordpad is slow to start with large enough number of fonts in the system
47320 Black Ops 4 Unhandled Exception When Loading gdi32.dll
47374 Thronebreaker: The Witcher Tales rendering is messed up
47846 Age Of Empires III Crash after Intro
48171 Call of Duty: Modern Warfare (2019) exception
48212 Ys: The Oath in Felghana - movies don't play
48505 WinRAR x64 4.x/5.x installer crashes on unimplemented function GDI32.dll.ScriptGetCMap
49238 Oblivion: No sound/music
49376 Light of Altair demo has no text in options menu
49490 Overwatch installer fails with new wine prefix
49526 Anno 1800: Crashes on startup
49546 Titan Quest Anniversary Edition has no text with builtin d3dx9_42
49665 Wine 5.14 won't start, but 5.12 - do!
49844 Cannot create a new file on a mounted fat volume
49907 Fallout New Vegas crashes when leaving Doc Mitchell's house
50046 wineserver persistence after setup of a WINEPREFIX
50084 Wargaming.net Game Center can't install updates since wine 5.19
50101 Ghostrunner has no sound after intro movies when prefix is set to Win10
50110 Elite Dangerous Launcher (wine-5.21): AccessViolationException Protected Memory
50116 ODBC applications fail to create/configure system DSNs with builtin 'odbccp32' (SQLConfigDataSource must remap ODBC_xxx_SYS_DSN values for ConfigDSN)
50135 explorer.exe crashes when UseXRandR and UseXVidMode are specified to be disabled in registry
50140 "Guild Wars 2 Launcher" over time consumes all available memory
50149 Chromium/MS WebView2 depends on TEB->ReservedForOle 'apt_mask' value
----------------------------------------------------------------
Changes since 5.21:
Alex Henrie (2):
urlmon: Remove unused variable has_ipv6.
urlmon: Reimplement canonicalize_ipv6address on top of ntdll functions.
Alexandre Julliard (49):
crypt32: Move the GnuTLS code to a new Unix library.
crypt32: Move the root store initialization to the Unix library.
crypt32: Build with msvcrt.
crypt32: Use wide-character string literals.
crypt32: List allowed characters instead of relying on wctype properties.
wineboot: Fall back to initial hostname if the name lookup fails.
mscms: Implement profile tag functions without relying on liblcms2.
mscms: Move liblcms support to a new Unix library.
mscms: Build with msvcrt.
setupapi: Add a few more dirids.
setupapi: Add an extension to support file copies from module resources.
winebus.sys: Move winebus.inf into the module resources.
winehid.sys: Move winehid.inf into the module resources.
wineusb.sys: Move wineusb.inf into the module resources.
mscms/tests: Avoid depending on the exact Microsoft color profile.
mscms: Install the sRGB color profile.
glu32: No longer load the Unix libGLU.
glu32: Build with msvcrt.
kernelbase: Copy MulDiv() implementation instead of forwarding.
msvcrt: Reimplement _dclass() using musl code.
msvcrt: Reimplement _fpclass().
msvcrt: Reimplement _finite().
msvcrt: Reimplement _isnan().
msvcrt: Reimplement _dsign().
msvcrt: Reimplement _chgsign().
msvcrt: Import _copysign() from musl.
msvcrt: Import fabs() from musl.
msvcrt: Import ilogb() from musl.
msvcrt: Use the global musl copyright notice.
msvcrt: Add floating point classification macros.
msvcrt: Avoid long double type in $I10_OUTPUT().
jscript: Use the standard isfinite() function.
msvcrt: Use the msvcrt math functions internally.
msvcrt: Use the msvcrt allocation functions internally.
msvcrt: Use the msvcrt ctype functions internally.
msvcrt: Use the msvcrt atoi() function internally.
msvcrt: Use the msvcrt string functions internally.
msvcrt: Move math functions to a new Unix library.
msvcrt: Remove obsolete USE_MSVCRT_PREFIX defines.
msvcrt: Enable multi-thread locking by default.
include: Use gcc builtin for HUGE_VAL.
makefiles: Don't add a default crt lib for msvcrt dlls.
makefiles: Allow modules to link to their own import library.
msvcrt: Build with msvcrt headers.
msvcrt/tests: Remove the headers test.
msvcrt: Avoid msvcrt-specific types in the Unix library interface.
msvcrt: Remove some duplicate definitions from msvcrt.h.
msvcrt: Move the fenv_t definition to the public header.
msvcrt: Use the public standard type definitions where possible in msvcrt.h.
Alistair Leslie-Hughes (12):
include: Add interface IGetDataSource.
include: Add ICommandStream interface.
include: Add ICommandProperties interface.
include: Add IConvertType interface.
include: Add ICommandPrepare interface.
include: Add IRowsetChange interface.
include: Add IRowsetUpdate interface.
xaudio2_9: Add version resource.
msi: Correct Query for loading an image.
msado15/tests: Add ADORecordsetConstruction tests.
msado15: Support ADORecordsetConstruction in _Recordset.
msado15: Implement ADORecordsetConstruction get/put Rowset.
Andrew Eikum (1):
mmdevapi: Support older version of the AudioClientProperties structure.
Anton Baskanov (7):
amstream/tests: Add comments to AMDirectDrawStream::CompletionStatus tests.
amstream: Wait for presentation time in AMDirectDrawStream::Receive.
amstream: Implement AMDirectDrawStream::GetTimePerFrame.
amstream: Factor out the common code of MediaStreamFilter seeking tests.
amstream: Implement MediaStreamFilter::IsFormatSupported.
amstream: Implement AMMultiMediaStream::GetState.
amstream: Implement AMMultiMediaStream::GetTime.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Biswapriyo Nath (6):
include: Add D2D1_PROPERTY enumeration in d2d1_1.idl.
include: Add D2D1_SUBPROPERTY enumeration in d2d1_1.idl.
include: Add D2D1_POINT_DESCRIPTION structure in d2d1_1.idl.
include: Add ID2D1GdiMetafileSink interface in d2d1_1.idl.
include: Add ID2D1GdiMetafile interface in d2d1_1.idl.
include: Add ID2D1PrintControl interface in d2d1_1.idl.
Brendan Shanks (1):
winecoreaudio.drv: Only read 'length' bytes from received MIDIPackets.
Charles Davis (10):
msvcr90/tests: Test _get_current_locale()/setlocale() interaction.
msvcrt: Make locale name string refcounted for C locale.
msvcrt: Share locale names between threadlocinfo instances.
msvcrt: Copy LC_COLLATE codepage between threadlocinfo instances.
msvcrt: Share ctype tables between threadlocinfo instances.
msvcrt: Share lconv data between threadlocinfo instances.
msvcrt: Share __lc_time_data between threadlocinfo instances.
ucrtbase: Sync __lc_time_data definitions.
msvcrt: Swap the threadlocinfo pointers in setlocale().
msvcrt: Increment refcounts for all locale data in _get_current_locale().
Damjan Jovanovic (8):
ntdll: Implement get_thread_times() on FreeBSD.
ntdll: Improve character device type detection on FreeBSD and macOS.
ntdll: Fix wrong return values in get_dir_case_sensitivity_stat().
ntdll: FAT filesystems are called "msdosfs" on FreeBSD >= 5.
ntdll: Msdosfs was case-insensitive since FreeBSD 8 or even earlier.
ntdll: Treat smbfs as case-insensitive on FreeBSD.
ntdll: Document a few other filesystem case-sensitivity cases.
cmd.exe: Increase size of WCMD_HandleTildeModifiers() buffers to MAXSTRING.
Daniel Lehman (3):
tzres: Add Lord Howe Standard Time Zone.
tzres: Add Aus Central W. Standard Time Zone.
wine.inf: Add Dynamic DST for Australian time zones.
David Torok (1):
ntdll: Add NtDebugActiveProcess stub.
Derek Lesho (4):
winegstreamer: Require media source's IMFByteStream to be seekable.
winegstreamer: Implement IMFMediaSource::GetCharacteristics.
winegstreamer: Set MF_PD_DURATION on source's presentation descriptor.
mf/session: Call session_command_complete after NotifyTopology command.
Dmitry Timoshkov (6):
crypt32/tests: Fix test failures under newer Windows versions.
advapi32/tests: Fix compilation with PSDK compiler.
advapi32: Implement LsaGetUserName.
crypt32: Make helper for copying CMSG_CMS_SIGNER_INFO attributes more generic.
crypt32: Add support for CMSG_SIGNER_AUTH_ATTR_PARAM for a being decoded signed message.
crypt32: Add support for CMSG_ENCODED_MESSAGE for a being decoded signed message.
Esme Povirk (5):
windowscodecs: Move jpeg decoding to the unix lib.
windowscodecs: Start interface for unix encoders.
windowscodecs: Move PNG encoding to the unix lib.
windowscodecs: Fix memory leak in common decoder.
windowscodecs: Fix allocation in tiff_decoder_get_metadata_blocks.
François Gouget (5):
cryptnet: Fix the spelling of the x-pkcs7-certificates MIME type.
mshtml: Fix the spelling of the filter attribute.
gdi32/tests: Avoid a D3DKMTOpenAdapterFromHdc() crash on Windows 10 >= 2004.
mmdevapi/tests: Only warn about the console when it is used.
mmdevapi/tests: Work around Initialize() render breakage on Win 10.
Georg Lehmann (1):
winevulkan: Initialize Vulkan in native_vkGetInstanceProcAddrWINE.
Gerald Pfeifer (1):
msvcrt: #include <stdarg.h> from unixlib.c.
Gijs Vermeulen (2):
sapi: Add stub SpStream object.
sapi: Add stub SpResourceManager object.
Hans Leidekker (1):
odbccp32: Map system DSN requests to user DSN requests in SQLConfigDataSource.
Haoyang Chen (1):
gdi32: Avoid exceeding the actual bitmap height.
Huw D. M. Davies (5):
riched20: Pass a para or run ptr to the char ofs propagation function.
riched20: Use row ptrs in the page up/down handlers.
riched20: Use row and para ptrs in the cursor up/down handler.
riched20: Simplify search for the cell to delete.
riched20: Move the code to clear the cell bottom out of the loop.
Jacek Caban (25):
kernel32/tests: Add more console waiting tests.
server: Support waiting on console input handles.
server: Support waiting on screen buffer handles.
kernelbase: Wait directly on console handles.
server: Remove no longer needed get_console_wait_event request.
kernel32: Allow non-console handles in DuplicateConsoleHandle.
kernel32: Allow non-console handles in CloseConsoleHandle.
conhost/tests: Initialize whole OVERLAPPED struct in fetch_console_output.
conhost: Use console debug channel.
conhost/tests: Silence debug output in child process if std output is a console.
server: Support unbound console input device.
server: Support unbound console output device.
kernel32/tests: Add more unbound console handles tests.
kernelbase: Remove no longer needed console handle handling from create_process_params.
attrib: Use CP_ACP for non-console output encoding.
fsutil: Use CP_ACP for non-console output encoding.
hostname: Use CP_ACP for non-console output encoding.
kernelbase: Move Unicode conversion from WriteConsoleA to conhost.
server: Support writing directly on console handle.
kernel32: Import WriteFile from kernelbase.
makedep: Use short debug file names.
conhost/tests: Add more ReadConsoleA tests.
kernelbase: Move Unicode conversion from ReadConsoleA to conhost.
server: Allow reading directly from console handle.
kernel32: Import ReadFile from kernelbase.
Jeff Smith (4):
user32/tests: Change misleading variable name and type.
user32/tests: Simplification of some message broadcast tests.
user32/tests: Test message broadcast to parented windows.
user32: Only child windows should not receive broadcast messages.
Kevin Puetz (7):
ole32/tests: Fix flaky test in cowait_unmarshal_thread.
widl: Parse attribute custom(guid,expr).
widl: Write ATTR_CUSTOM into typelib.
widl: Allow adding the same custdata GUID multiple times in a typelib.
oleaut32/tests: Cover Get*CustData in test_dump_typelib.
oleaut32: Fix error handling/reporting in TLB_copy_all_custdata.
oleaut32: Load GetVarCustData from MSFT-format typelib.
Liam Middlebrook (1):
winevulkan: Update to VK spec version 1.2.160.
Michael Müller (2):
dxdiagn: Enumerate DirectSound devices and add some basic properties.
dxdiagn: Calling GetChildContainer with an empty string on a leaf container returns the object itself.
Michael Stefaniuc (31):
msidb: Use wide-char string literals.
icinfo: Use wide-char string literals.
start: Use wide-char string literals.
wintab32: Use wide-char string literals.
wineps.drv: Use wide-char string literals.
gdiplus: Use wide-char string literals.
gdi32/uniscribe: Use wide-char string literals.
mscms: Use wide-char string literals.
mscms/tests: Inline a simple string.
hidclass.sys: Use wide-char string literals.
inetcpl.cpl: Trace the actual AutoConfigURL and not the value name.
inetcpl.cpl: Use wide-char string literals.
mstask: Use wide-char string literals.
vbscript: Use wide-char string literals.
kernel32: Use wide-char string literals.
taskschd: Use wide-char string literals.
userenv: Use wide-char string literals.
oleview: Inline WCHAR strings of length 1.
winmm: Use wide-char string literals.
winmm/tests: Use a string literal instead of a char array.
dpnet: Use wide-char string literals.
dxdiagn: Use wide-char string literals.
comctl32: Use wide-char string literals.
riched20: Use wide-char string literals.
riched20: Use wide-char string literals in a struct initialization.
riched20: Use zero terminated wchar strings.
riched20: Use a wchar string literal for the array of neutral chars.
itss: Use wide-char string literals.
itss: Use zero terminated WCHAR strings.
imm32: Use wide-char string literals.
mshtml: Fix spelling of fuchsia.
Nikolay Sivov (61):
gdi32: Merge in Uniscribe functionality.
mf/tests: Add a test for copier buffer handling.
mf/evr: Accept samples when prerolling.
evr/mixer: Reuse full set of type attributes for output types.
evr/mixer: Add partial implementation of sample processing.
evr/presenter: Fix error handling on object creation.
user32: Remove usp10 from delayed imports.
evr/presenter: Create sample allocator on object creation.
evr/presenter: Add a helpe for input processing.
evr/presenter: Notify renderer host about mixer latency.
evr/presenter: Add sample allocator notification callback.
evr/allocator: Call user callback when sample is returned to the pool.
mf/evr: Handle sample requests from the mixer.
mf/evr: Handle user events from the presenter.
mf/session: Provide quality manager with presentation clock.
mf/session: Notify quality manager when setting new topology.
mf/session: Notify quality manager on input/output processing.
mf/session: Forward MEQualityNotify event to the quality manager.
oledb32: Use wide-char string literals.
evr/allocator: Fix released sample pointer check.
evr/allocator: Fix reference counting for returned samples.
mf/session: Query and initialize sample allocators for capable output nodes.
mf/session: Implement support for sinks that provide sample allocators.
mf/evr: Set display window to the presenter if it was specified on sink creation.
mfplat/tests: Remove a couple of failing tests.
wordpad: Fill font selection combobox with fully processed font list.
ole32/propstorage: Handle VT_I8/VT_UI8 when serializing properties.
dxva2: Add a semi-stub for VideoProcessBlt().
evr/presenter: Add IQualProp stub.
evr/presenter: Create a swapchain for given output window.
evr/presenter: Add IMFQualityAdvise stub.
evr/mixer: Fix method function name for consistency.
mf/tests: Use a helper for supported intefaces checks.
mf/evr: Add IMFQualityAdvise stub.
mfplat/buffer: Fix byte width set for d3d9 surface buffers.
comctl32: Use wide-char string literals.
mfplat/tests: Add a helper to check for supported interfaces.
include: Guard MFVideoNormalizedRect definition in mfmediaengine.idl.
mfplat: Add EVRConfig_* attributes to tracing.
evr/sample: Reset attributes, timestamps, and flags on ::Clear().
evr/mixer: Fix output filling behaviour regarding sample properties.
evr/tests: Add more tests for supported service interfaces.
evr/presenter: Expose all interfaces for MR_VIDEO_RENDER_SERVICE.
evr/mixer: Set timestamp and duration for output samples.
evr/mixer: Improve GetService() handling of unsupported interfaces/services.
evr/presenter: Fix error code for unsupported services.
evr/presenter: Add IDirect3DDeviceManager9 as a supported interface.
evr/tests: Presenter should support IMFQualityAdviseLimits.
evr/presenter: Implement sample presenting functionality.
xmllite/reader: Use wide-char string literals.
xmllite/writer: Use wide-char string literals.
mfplat: Use wide-char string literals.
mf/evr: Add support for per-stream attributes.
evr/tests: Relax allocator initialization test.
mf/evr: Derive stream attributes from mixer input attributes.
mf/samplegrabber: Implement IMFRateSupport.
combase: Set a flag on thread id initialization.
combase: Update thread flags when entering/leaving apartments.
mf/session: Shutdown and release presentation clock on session shutdown.
mf/session: Keep a reference to the original activation object when binding sink nodes.
mf/session: Shutdown current topology when clearing presentation.
Paul Gofman (12):
crypt32: Fix adding trusted roots to store.
wininet: Correctly return error status from InternetSetFilePointer() stub.
mshtml: Check for EVENTID_LAST in ensure_doc_nsevent_handler().
bcrypt: Prevent gnutls from using system priority file.
crypt32: Prevent gnutls from using system priority file.
secur32: Prevent gnutls from using system priority file.
ws2_32: Force adding completion for error status in WS2_ConnectEx().
user32: Avoid holding display_dc_section when creating display DC.
directmanipulation: Return S_OK form viewport_SetViewportOptions stub.
ntdll: Avoid overwriting parameters with context in call_user_apc_dispatcher() on x86.
msvcrt: Save and restore rounding mode in fegetenv() / fesetenv().
ntdll: Fix SMT CPU flag reporting.
Piotr Caban (7):
ucrtbase: Add support for utf8 codepage in setlocale.
msvcrt: Mark old_locinfo as const in create_locinfo.
msvcrt: Call set_lc_locale_name in update_threadlocinfo_category.
msvcrt: locinfo->lc_name should be guarded by lc_category->wrefcount.
msvcrt: Simplify category checks in create_locinfo.
msvcrt: Lock global locale in _get_current_locale.
msvcrt: Don't overwrite threadmbcinfostruct structure in _setmbcp.
Robert Wilhelm (2):
vbscript: Allow keywords to be used as property name.
vbscript: Support properties with parameters.
Rémi Bernon (21):
bcrypt: Implement 3DES cipher support.
msvcrt: Make locale and thread helper functions CDECL.
msvcrt: Introduce noalloc current locale lookup helpers.
msvcrt: Pass temporary locale to MSVCRT__towlower_l.
msvcrt: Pass temporary locale to MSVCRT__towupper_l.
gdi32: Index font families by name in an rbtree.
gdi32: Rewrite find_face_from_filename using the rbtree.
gdi32: Rewrite find_any_face using the rbtree.
winemenubuilder: Only extract icons when association changed.
widl: Support repetition for some attributes.
widl: Restrict some keywords to WinRT mode only.
widl: Prefer mangled name over typedef in WinRT mode.
gdi32: Ignore Type 1 fonts in fontconfig enumeration.
gdi32: Move FreeType face creation to AddFaceToList.
gdi32: Load font list directly from fontconfig cache.
gdi32: Lazily create and cache fontconfig patterns.
ntdll: Stub ThreadEnableAlignmentFaultFixup info class.
include: Fix DPFLTR_MASK value to 0x80000000.
ntdll/tests: Add tests for DbgPrint* functions.
ntdll: Reimplement DbgPrint* using DBG_PRINTEXCEPTION_C.
ntdll: Raise debug exceptions when invalid heap is destroyed.
Sven Baars (5):
gdi32/tests: Fix a compiler warning.
d3dx9: Don't release textures when D3DXSPRITE_DO_NOT_ADDREF_TEXTURE is specified.
d3dx9: Fully initialize the glyph position.
d3dx9: Implement clipping of glyphs in ID3DXFont_DrawText.
d3dx9: Remove unreachable DT_SINGLELINE handling from ID3DXFont_DrawText.
Zebediah Figura (29):
quartz: Don't hold an extra reference in async_run_cb().
quartz/tests: Test releasing the graph while waiting for an asynchronous paused -> running transition.
msi: Use the global is_wow64 variable in custom_start_server().
msi/tests: Test the "VersionNT" property.
quartz/tests: Test adding and removing filters while the graph is running.
quartz: Don't stop the filter in IFilterGraph::RemoveFilter().
quartz/tests: Store a testfilter pointer inside the testpin structure.
quartz/tests: Add more tests for interaction between pin connection and graph state.
quartz: Immediately return failure from IFilterGraph::RemoveFilter() if IPin::Disconnect() fails.
makefiles: Disable implicit rules.
quartz/tests: Pass an IMediaControl to some functions.
winegstreamer: Don't fail state change methods if the sink pin is not connected.
winegstreamer: Don't fail parser_init_stream() if a source pin is not connected.
wineqtdecoder: Do not fail state change methods if source pins are not connected.
quartz: Commit the allocator directly.
amstream/tests: Commit the allocator directly.
strmbase: Remove no longer used allocator commit helpers.
strmbase: Get rid of strmbase_pin_get_media_type().
quartz/tests: Enable no longer failing tests for IBasicVideo::GetCurrentImage().
strmbase: Forbid disconnecting the sink if the filter is not stopped.
quartz/tests: Test (dis)connecting while not stopped.
qasf/tests: Test (dis)connecting while not stopped.
qcap/tests: Test (dis)connecting while not stopped.
qedit/tests: Test (dis)connecting while not stopped.
quartz/avidec: Don't send ICM_DECOMPRESS_BEGIN or ICM_DECOMPRESS_END messages if the source is disconnected.
quartz/tests: Add some tests for AVI decoder sample processing.
quartz/avidec: Don't copy the media time to the output sample.
quartz/tests: Add some tests for streaming events on the AVI decoder.
quartz/tests: Add some tests for flushing on the DirectSound renderer.
Zhiyi Zhang (3):
user32/tests: Pass a struct DEVMODEA pointer to expect_dm() for monitor tests.
winex11.drv: Adjust the priority of NoRes display settings handler to 1.
winex11.drv: Clarify parent in struct x11drv_win_data comments.
Ziqing Hui (3):
windowscodecs: Correctly set pixel format of uncompressed DDS with extended header.
d3dx10/tests: Add tests for D3DX10GetImageInfoFromResource{A, W}().
d3dx10: Implement D3DX10GetImageInfoFromResource{A, W}().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 5.0.3 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/5.0/wine-5.0.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0.3.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 5.0.3 (total 44):
7102 Microsoft Word 6.0 for Windows: copy/paste causes crash on unimplemented function ole2.dll16.OLEISCURRENTCLIPBOARD
26171 BVRP classic phone tools installer reports error 'Insufficient buffer' when trying to install print processor (AddPrintProcessorA stub should be symmetric to AddPrintProcessorW)
35903 CED1401 USB function driver fails to install (setupapi should use the original INF path as a default source path when copying files)
38020 Foxit Reader 6.12 crashes on unimplemented function msasn1.dll.ASN1_CreateModule during validation of digital signatures
44127 Metal Gear Solid V: Ground Zeroes doesn't launch
44306 Visual Novel "A Clockwork Ley-Line: The Borderline of Dusk" doesn't work with d3d9
44925 Multiple kernel drivers require 'ntoskrnl.exe.ExCreateCallback' stub to return STATUS_SUCCESS (StarForce v3, TrackMania Nations ESWC. Denuvo Anti-Cheat)
45536 Total Commander 9.x crashes on unimplemented function usp10.dll.ScriptGetFontAlternateGlyphs when Wine is not detected via named export 'ntdll.wine_get_version'
46726 Dirt Rally 2.0 does not use embedded CA cert
46818 PS4 Remote Play 2.x (.NET 4.x app) crashes on Sign-In PlayStation network (mshtml:HTMLDocument_get_cookie should not fail for 'about:blank')
48256 pwsh.exe (from Powershell-6.*) crashes after 20~50 sec: System.EntryPointNotFoundException: Unable to find an entry point named 'FreeAddrInfoEx' in DLL 'ws2_32.dll'.
48405 Battle.Net Launcher Beta crashes with Windows version set to 10
48668 rFactor2 - Physics thread slower on multiplayer mode
48779 Secret Files 3 crashes at launch (needs d3dx9_skin_info_Clone)
48938 Ashes of the Singularity: Escalation crashes on start
48959 S-Gear 2 installer does not recognize wine as Windows 10
49147 Microsoft Teams 1.3.x crashes on unimplemented function setupapi.dll.CM_Get_Device_Interface_AliasW
49178 Spitfire Audio 3.x crashes on start due to 'WTSQuerySessionInformationA' stub not initializing out parameters
49179 winetest.exe fails to run on windows arm (surface rt / armv7): procedure entry point NtCurrentTeb could not be located in the dynamic link library C:\Users\User\Desktop\winetest.exe
49189 Auslogics Registry Cleaner 8.x crashes and shows "OLE error 80004001" (SetCurrentProcessExplicitAppUserModelID stub needs to return S_OK)
49221 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes due to unhandled emulation of MSR register reads related to CPU / virtualization features (returning zero value is sufficient)
49257 Avast Free Antivirus 20.3 crashes before installing due to unimplemented function rpcrt4.dll.RpcIfInqId
49264 MultiSync installation crashes (needs _Command::get/put_CommandText)
49272 MultiSync installation crashes (msado15.dll needs {b196b284-bab4-101a-b69c-00aa00341d07} IConnectionPointContainer)
49281 FinanceExplorer crashes inside msado15.dll
49289 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExRegisterCallback
49291 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExUnregisterCallback when unloading
49303 MultiSync installation crashes (msado15.dll needs IConnectionPointContainer::FindConnectionPoint)
49322 cmudpro334 shows error on unimplemented ITaskbarList::SetOverlayIcon()
49352 JamKazam 1.0.3744 msi installer fails at 'InstallFiles' action (incorrect handling of administrative image with compressed source files)
49372 winedump crashes for sltg typelib files
49379 Altium Designer 20 crashes on missing d2d1.dll.D2D1CreateDevice
49388 MultiSync installation crashes (msado15.dll needs IConnectionPoint::Advise)
49439 Printing and scanning software for Brother L2540DW fails to install (VBScript parser can't handle a "case else" statement with a comment and no statements to execute)
49460 where.exe is missing in wine (affects Waves Central )
49487 ListView control custom draw in report view shows blank item if handler clears uItemState CDIS_SELECTED flag
49488 uninitialized bytes in server call from ntdll/server_write_file
49570 LVM_FINDITEM should do case-insensitive test for item text
49620 Tableau Desktop fails to install
49656 SAP GUI - Ws2_32.getaddrinfo crashes with non-standard service (/etc/services)
49662 Wine Internet Explorer crashes on https://[2600::]/
49664 FrostyModManager v1.0.5.9 crashes on launch
49666 Red Dead Redemption 2 requires HEAP flags offset to match Windows
49685 Gigabyte "EasyTune" service crashes in wbemprox
----------------------------------------------------------------
Changes since 5.0.2:
Aaro Altonen (8):
msado15: Implement _Command get/put CommandType.
msado15: Implement _Command get/put CommandText.
msado15: Add IConnectionPointContainer stub to _Connection.
msado15: Add IConnectionPoint stub to _Connection.
msado15: Implement IConnectionPointContainer_FindConnectionPoint.
include: Add ConnectionEventsVt definition.
msado15/tests: Add tests for IConnectionPoint::Advise/Unadvise.
msado15: Implement IConnectionPoint::Advise/Unadvise.
Akihiro Sagawa (1):
documentation: Update Japanese translation.
Alex Henrie (2):
urlmon: Call parse_host in combine_uri to set related parse_data fields.
urlmon: Fix null pointer dereference in process_hook_section (Coverity).
Alexandre Julliard (1):
setupapi: Support a WineSourceDirs section to copy files from the Wine build or data dir.
Alistair Leslie-Hughes (1):
msado15: Implement _Connection get/put ConnectionString.
Anton Baskanov (1):
amstream: Don't crash if parent is NULL in AMAudioStream:: and AMDirectDrawStream::GetMultiMediaStream.
Brendan Shanks (5):
winhttp: Treat a partial certificate chain as having an unknown/invalid CA.
whoami: Add semi-stub application to display username.
winevulkan: Don't initialize the Vulkan driver in DllMain().
ntdll: Pad HEAP structure so 'flags' offset matches recent Windows.
winemac.drv: Fix warnings for constants deprecated by macOS 10.14.
Changping Yu (2):
kernel32/tests: Add test for thread enumeration order in toolhelp.
kernel32: Adjust thread creation insertion order.
Derek Lesho (1):
msctf: Always provide a context when from GetBase/Top.
Dmitry Kislyuk (1):
vbscript: Parse empty CASE ELSE clause.
Dmitry Timoshkov (1):
winedump: Fix parsing of SLTG typelib created with some old tool.
Gijs Vermeulen (5):
wtsapi32: Implement WTSQuerySessionInformationA.
d3dx9: Implement ID3DXSkinInfo_Clone().
amstream: Don't crash on NULL ddraw in IDirectDrawMediaStream::GetDirectDraw().
wbemprox: Set obj to NULL on error in get_object().
wbemprox: Don't crash in IWbemClassObject::Put() when called with empty class object.
Hans Leidekker (3):
msado15: Fix NULL pointer dereference in close_recordset.
msi: Fix installing from administrative image with compressed source files.
ws2_32: Avoid a crash in WS_getaddrinfo when the specified service doesn't exist.
Jacek Caban (3):
winnt.h: Provide inline NtCurrentTeb implementation for mingw arm builds.
mshtml: Return NULL in IHTMLDocument2::get_cookie if InternetGetCookieExW failes.
urlmon: Remove unused flags argument from parse_host.
Jefferson Carpenter (1):
ntoskrnl.exe: Set reserved to 0 in pnp WM_DEVICECHANGE broadcast.
Jiajin Cui (1):
gdiplus: Fix crash if failed to create bitmap.
Julian Rüger (1):
documentation: Update German translation.
Louis Lenders (7):
usp10: Add stub for ScriptGetFontAlternateGlyphs.
shcore: Return S_OK in SetCurrentProcessExplicitAppUserModelID.
ws2_32: Add FreeAddrInfoEx.
setupapi: Add stub for CM_Get_Device_Interface_Alias{A,W}.
explorerframe: Return S_OK in ITaskbarList::SetOverlayIcon.
where.exe: Add stub program.
sc.exe: Fake succes for the SdSet argument.
Matteo Bruni (3):
wined3d: Add GPU information for AMD Raven Ridge.
user32: Add missing WM_WINE_CLIPCURSOR message type name.
user32: Make sure update_window_state() is always executed on the owner thread.
Nikolay Sivov (7):
d2d1: Implement D2D1CreateDevice().
dwrite: Implement IDWriteFont::Equals().
dwrite: Add partial implementation for IDWriteFontFace5::Equals().
comctl32/listview: Rename helper argument.
comctl32/listview: Use case-insensitive compare in LVM_FINDITEM.
comctl32/listview: Do no alter custom draw text colors between notification stages.
winedbg: Double dll name buffer size for unimplemented function exception.
Paul Gofman (7):
ntoskrnl.exe: Return STATUS_SUCCESS from ExCreateCallback() stub.
ntoskrnl.exe: Return zero for unknown msr registers.
ntoskrnl.exe: Add stub for ExRegisterCallback() function.
ntoskrnl.exe: Add stub for ExUnregisterCallback() function.
ws2_32: Optimize interface_bind_check() by caching adapter addresses.
winebuild: Correct hotpatching prologue in import thunks for x86_64.
shell32: Only consider copy operation multidest if the number of dst files is greater than one.
Piotr Caban (1):
msasn1: Fix buffer allocations.
Rémi Bernon (1):
kernel32: Catch process creation breakpoint exceptions.
Vijay Kiran Kamuju (12):
ole2.dll16: Add stub OleIsCurrentClipboard function.
winspool.drv: Implement AddPrintProcessorA via AddPrintProcessorW.
include: Add related ASN1encoding_s and ASN1decoding_s structs.
msasn1: Add ASN1_CreateModule stub implementation.
msasn1/tests: Add initial tests.
msasn1: Implement ASN1_CreateModule function.
msasn1: Implement ASN1_CloseModule function.
msasn1: Add partial implementation of ASN1_CreateEncoder.
msasn1: Add stub for ASN1_CloseEncoder function.
msasn1: Add partial implementation of ASN1_CreateDecoder.
msasn1: Add stub for ASN1_CloseDecoder function.
msasn1: Add stub for ASN1_Decode function.
Zebediah Figura (6):
setupapi: Reset the source file pointer when comparing files.
setupapi: Store the original INF file path in a .pnf file.
setupapi: Use the original INF source path if possible when copying files.
winecfg: Set the Current{Major, Minor}VersionNumber registry values.
wbemprox: Return WBEM_E_NOT_FOUND from get_object() if no object is available.
d3dcompiler: Iterate through the instruction list in reverse in free_instr_list() (Valgrind).
Zhiyi Zhang (2):
rpcrt4: Implement RpcIfInqId().
dwmapi: Check NULL parameter in DwmIsCompositionEnabled().
--
Michael Stefaniuc
mstefani(a)winehq.org