The Wine development release 7.9 is now available.
What's new in this release:
- Preliminary work towards PE conversion of macOS driver.
- A number of fixes for test failures on Windows.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.9.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.9.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.9 (total 35):
14841 ntdll:file tests are flaky
19183 "make test" still fails on d3d9/tests/visual.c
28220 kernel32/process.ok: test fails when redirected
28508 user32:monitor tests fail occasionally
34782 crypt32/chain tests crash with gcc-4.8.1 (win64)
39346 Lego Rock Raiders crashes on startup (d3drm_device_init doesn't handle device version 3 case)
45959 Editpad Lite 7 GUI not rendered correctly
45960 Editpad Lite 7 displays empty boxes instead of text in some menus
49285 PNotesPortable crashes inside WritePrivateProfileStructW
50462 Ulead Photo Explorer 8.5 crashes on startup (needs {4a2286e0-7bef-11ce-9bd9-0000e202599c} CLSID_CMpegAudioCodec)
51104 mf:mf crashes on Windows + AMD/NVidia
51283 d3d8:device breaks evr:evr on w7u-2qxl
51297 d3d8:visual & d3d9:visual, test_sample_mask() fails on Nvidia (cw-gtx560)
51298 d3d8:visual: lighting_test() fails on Windows 10 >= 2004
51376 Wine causes PC to lock or crash wine when loading more than 1 VST addon into WaveLab 6
51612 Stellaris launcher (Paradox) does not launch
51680 nsi:nsi test_ip_neighbour() fails on unreachable link local entry
51783 The ieframe:webbrowser output is too big in Wine
51827 d3dx10_34:d3dx10 crashes on all versions of Windows
52686 DateAdd not implemented
52751 `winetricks nocrashdialog` no longer works properly with Wine 7.5(but works with 7.4)
52761 mscoree:mscoree test fails without a display or console
52821 Cxbx Reloaded needs unimplemented function msvcp140_atomic_wait.dll.__std_atomic_wait_direct
52848 Mavis Beacon Teaches Typing 15: Typed characters not spaced correctly
52874 win32u change prevents chromium from starting
52892 The 64-bit ntdll:thread fails on w7pro64 and w864
52908 mf:mf - The 64-bit test_wma_decoder() fails on 64-bit Debian 11 + Intel
52914 mf:mf - The 64-bit test_h264_decoder() fails on 64-bit Debian 11 + Intel GPU
52937 msvcr110:msvcr110 fails on Windows with the UTF-8 codepage
52961 crypt32:str - test_CertGetNameString() fails on Windows 7
52969 mshtml:script fails on up-to-date Windows 8.1 machines
52970 kernelbase:process breaks lz32:lzexpand_main on Windows 1809+
52975 VTFEdit fails to start: err:module:LdrInitializeThunk "MSVCP80.dll" failed to initialize, aborting
53004 63ce060 causes a white border line in winecfg
53015 winscp bookmark adding error
----------------------------------------------------------------
Changes since 7.8:
Alexandre Julliard (2):
kernelbase: Move get_language_sort() to avoid forward declarations.
kernelbase: Cache the sortid for each locale.
Alistair Leslie-Hughes (7):
d3drm: Support IDirect3D3 when creating device.
include: Add TF_TMF/TMAW defines.
dwmapi: Clear DWM_TIMING_INFO structure before returning.
d3drm: IDirect3DRMMeshBuilder2 Get/SetQuality.
d3drm: IDirect3DRMTexture3 Get/SetDecalOrigin.
d3drm: IDirect3DRMTexture3 Get/SetColors.
d3drm: IDirect3DRMTexture3 Get/SetShades.
Andrew Eikum (5):
mfplat: Allow NULL length pointer in IMFAttributes::GetAllocatedString.
mfplat: Consolidate stream and file IMFByteStream vtables.
mfplat: Simplify IMFByteStream async Read/Write methods.
mfplat: Consolidate stream and file IMFByteStream Read/Write callback vtables.
mfplat/tests: Add tests for IMFByteStream position.
Anton Baskanov (5):
include: Add IMpegAudioDecoder definition.
winegstreamer: Add IMpegAudioDecoder stub to MPEG audio decoder.
winegstreamer: Register MPEG audio decoder.
quartz/tests: Add tests for MPEG audio decoder sample timestamps.
winegstreamer: Set sample timestamps in MPEG audio decoder.
Bernhard Kölbl (11):
windows.media.speech: Add a missing trace to async_operation_create.
windows.media.speech/tests: Make the IAsyncInfo_Close block test more consistent.
windows.media.speech/tests: Remove some unreliable ref checks.
windows.media.speech/tests: Add a test for IAsyncOperation_get_Completed.
windows.media.speech: Rename async_operation to async_inspectable.
windows.media.speech/tests: Remove a inconsistent ref check.
windows.media.speech: Rename impl_from_IAsyncInfo to async_inspectable_impl_from_IAsyncInfo.
windows.media.speech/tests: Retype AsyncOperationCompletedHandler to IInspectable.
windows.media.speech/tests: Add await helper for IAsyncOperation.
windows.media.speech/tests: Make use of a helper function for IAsyncInfo checking.
windows.media.speech/tests: Add some recognition tests.
Brendan Shanks (10):
ntdll/tests: Fix thread test failure on Windows.
include: Add WINE_ALLOC_SIZE attribute to CoTaskMemRealloc().
include: Add WINE_ALLOC_SIZE attribute to RtlReAllocateHeap().
include: Add WINE_ALLOC_SIZE attribute to ExAllocatePool functions.
include: Add WINE_ALLOC_SIZE attribute to MmAllocate functions.
include: Add __WINE_MALLOC attribute and use it for allocation functions.
include: Add __WINE_DEALLOC attribute and use it for allocation functions.
crypt32/tests: Fix mismatched deallocation function.
ntdll: Use 32-bit stack in alloc_fs_sel().
ntdll: Avoid truncating pointer to 32-bits in get_cpu_area().
Charles Davis (6):
configure: Check for struct icmpstat.
nsiproxy.sys: Implement IPv6 icmpstats get_all_parameters on Mac OS and BSD.
nsiproxy.sys: Implement IPv6 ipstats get_all_parameters on Mac OS and BSD.
d3d11/tests: Test logic op.
d3d11: Implement ID3D11Device1::CreateBlendState1().
ntdll: Implement idle time query for Mac OS.
Connor McAdams (2):
oleacc/tests: Add tests for retrieving an IAccessible contained within a Dynamic Annotation wrapper.
oleacc: Add support for retrieving an HWND from accNavigate to WindowFromAccessibleObject.
Dmitry Timoshkov (2):
d2d1: Implement ID2D1DeviceContext::CreateImageBrush().
d2d1/tests: Add some tests for ID2D1DeviceContext::CreateImageBrush().
Drew Ronneberg (1):
ole32: Remove obsolete -D_OLE32_ from Makefile.in.
Eric Pouech (12):
winepulse.drv: Use correct integral type.
winepulse.drv: Enable compilation with long types.
winecoreaudio: Enable compilation with long types.
capi2032: Enable compilation with long types.
winspool: Enable compilation with long types.
winevulkan: Enable compilation with long types.
winedbg: Introduce struct data_model to describe the various models for base types.
winedbg: Add 'set' command to change data model.
dbghelp: Let symt_basic be trans-module and nameless.
dbghelp: Fix conversion of dwarf's basic types into dbghelp's basic types.
dbghelp: Set correct basic types definition.
include: Use Mingw64's __uuidof when present.
Fabian Maurer (1):
kernel32: Prevent null pointer dereference in WritePrivateProfileStructW.
François Gouget (4):
shell32: Shelllink: Make the create_lnk() failure messages unique.
comctl32/tests: Use winetest_push_context() in tooltip:test_customdraw().
mstask/tests: Ignore the compare_trigger_state() return value.
mstask/tests: Fix the compare_trigger_state() failure lines.
Gabriel Ivăncescu (8):
mshtml/tests: Fix Number toLocaleString test on updated Win 8.1.
jscript: Handle detached scope objects 'this' in all calls.
jscript: Pass undefined 'this' instead of null in ES5 mode.
mshtml: Expose IHTMLDOMImplementation2 members in IE9+ modes.
mshtml: Implement HTMLDOMAttribute2's name property.
mshtml: Implement window.cancelAnimationFrame.
mshtml/tests: Add test for clearing timers with id zero.
mshtml: Convert varAsync to bool if needed.
Georg Lehmann (3):
winevulkan: Prevent infinite recursion in make_vulkan.
winevulkan: Update to VK spec version 1.3.213.
winevulkan: Update to VK spec version 1.3.214.
Gijs Vermeulen (1):
shell32/tests: Use 'shellpath' as tmpfile name in PathResolve tests.
Hans Leidekker (1):
msi/tests: Fix an intermittent test failure.
Henri Verbeet (2):
maintainers: Update the Direct3D section.
maintainers: Update the Direct2D section.
Huw D. M. Davies (1):
winecoreaudio: Remove DWORDs from the midi syscall interface.
Jacek Caban (35):
win32u: Move default WM_GETICON implementation from user32.
win32u: Move default WM_PAINT implementation from user32.
win32u: Move more default window commands from user32.
win32u: Move default WM_ERASEBKGND implementation from user32.
win32u: Move default WM_WINDOWPOSCHANGING implementation from user32.
win32u: Handle sys color brushes in fill_rect.
user32: Remove no longer used WINPOS_WindowFromPoint.
winemac: Directly use ntdll in setup_options.
winemac: Directly use ntdll for querying display settings.
winemac: Directly use ntdll to write display settings.
winemac: Directly use ntdll for display device mutex.
winemac: Directly use ntdll in get_display_device_reg_key.
winemac: Directly use ntdll for registry access in init_original_display_mode.
winemac: Directly use ntdll for registry access in write_display_settings.
winemac: Directly use ntdll for registry access in create_original_display_mode_descriptor.
winemac: Directly use ntdll for registry access in copy_system_cursor_name.
winemac: Use pthread for display locking.
winemac: Use pthread for GDI device locking.
winemac: Use pthread for keyboard list locking.
winemac: Use pthread for cursor cache locking.
winemac: Use pthread for synchronization in opengl.c.
winemac: Use pthread for window data locking.
winemac: Use pthread_once for wine_vk_init.
win32u: Move NtUserSetWindowPlacement implementation from user32.
win32u: Move NtUserSetInternalWindowPos implementation from user32.
win32u: Export NtUserGetWindowPlacement.
win32u: Move desktop window proc implementation from user32.
win32u: Introduce DesktopWindowProc driver entry point.
winex11: Implement DesktopWindowProc driver entry point.
winemac: Implement DesktopWindowProc driver entry point.
winemac: Directly use win32u for GDI functions in image.c.
winemac: Directly use win32u for GDI functions in mouse.c.
winemac: Directly use win32u for GDI functions in opengl.c.
winemac: Directly use win32u for GDI functions in surface.c.
winemac: Directly use win32u for GDI functions in window.c.
Jactry Zeng (4):
include: Add MIL/DWM HRESULT codes.
dbghelp: Use RtlGetVersion() for system version detection instead.
dwmapi: Use RtlGetVersion() for system version detection instead.
dwmapi: Partially implement DwmGetCompositionTimingInfo().
James McDonnell (2):
include: Add ID2D1PathGeometry1 definition.
d2d1: Add a stub for ID2D1PathGeometry1.
Jan Sikorski (2):
wined3d: Reduce the size of staging BO's for texture uploads.
wined3d: Don't do a full cleanup when waiting for a command buffer.
Jinoh Kang (1):
wineusb.sys: Remove erroneous call to LeaveCriticalSection() in add_usb_device.
Julian Klemann (1):
ws2_32: Add stub for SIO_ENABLE_CIRCULAR_QUEUEING in WSAIoctl().
Louis Lenders (1):
msvcr80: Update manifest resource.
Martin Storsjö (3):
ntdll: Fix a typo in a log message for arm unwind data.
ntdll: Fix accidentally used 64 bit types in signal_arm.c.
msvcrt: Hook up __C_specific_handler and __jump_unwind for arm.
Matteo Bruni (7):
d3dx9/tests: Test D3DXAssembleShader() with both terminated and not terminated include data.
d3dcompiler/asm: Parse negative numbers with a whitespace after the sign.
d3dx9/mesh: Make use of more proper types.
d3dx9/mesh: Split skin header and weights parse functions.
d3dx9/shader: Use more proper integer types.
d3dx9/xfile: Don't unnecessarily use long integer type.
d3dx9: Build without -DWINE_NO_LONG_TYPES.
Nikolay Sivov (26):
mf/session: Do not request more samples when SA sample becomes available.
mfplat/sample: Fix use-after-free of a critical section.
evr/sample: Avoid a race condition when releasing a tracked sample.
evr/sample: Use explicit critical section for release handling.
kernelbase/tests: Close mapping in MapViewOfFile3 test.
mfplat: Allow NULL size pointer in IMFAttributes::GetAllocatedBlob().
d3drm/tests: Build without -DWINE_NO_LONG_TYPES.
mfreadwrite/reader: Allocate output samples on read requests.
vbscript: Implement DateSerial().
mfreadwrite/reader: Propagate resource sharing mode to the sample allocator.
include: Move minidump types to a separate header.
winedump: Output minidump streams in order they appear in the file.
winedump: Cleanup minidump output helpers.
winedump: Add support for dumping handle data stream from minidumps.
winedump: Add support for ThreadInfoListStream stream.
vbscript: Implement DateAdd().
winedump: Add support for dumping UnloadedModuleListStream.
vbscript: Implement Weekday().
vbscript: Handle null arguments in DateSerial().
dwrite/opentype: Fix GPOS PairSet array offset.
ntdll/tests: Add a bit more tests for VM functions.
kernel32/tests: Extend VirtualAllocEx() tests.
kernelbase/tests: Add some VirtualAlloc2() tests.
kernelbase: Fix VirtualAlloc2() when called with NULL process handle.
ntdll/tests: Add a basic test for MEM_RESERVE_PLACEHOLDER.
kernelbase: Add SetThreadInformation().
Paul Gofman (18):
crypt32/tests: Handle CERT_NAME_SEARCH_ALL_NAMES_FLAG being unsupported before Win8.
ntdll: Fix allocation size in grow_logical_proc_ex_buf().
ntdll: Move init_cpu_info() below create_logical_proc_info().
ntdll: Refactor logical processor info manipulation functions.
ntdll: Collect logical processor info at process start.
rsaenh: Use CRT memory allocators.
rsaenh: Handle uneven hash data updates sizes for CALG_MAC.
rsaenh: Factor out block_encrypt() function.
rsaenh: Store key state in hash data for _MAC hash algorithm.
rsaenh: Factor out alloc_key() function.
rsaenh: Allow importing bigger RC2 keys.
rsaenh: Output FIXME when HMAC hash algorithm is not found.
nsiproxy.sys: Update interface table only if find_entry_from_{luid|index} fails.
nsiproxy.sys: Finish search once found in convert_luid_to_unix_name().
nsiproxy.sys: Update interface table only if LUID is not found in convert_luid_to_unix_name().
nsiproxy.sys: Update interface table only if LUID is not found in convert_unix_name_to_luid().
nsi: Allocate a small buffer at once in NsiAllocateAndGetTable().
iphlpapi: Don't request unused dynamic interface data.
Pedro Perdigão (2):
user32/tests: Test an out-of-order RECT in RedrawWindow().
win32u: Allow an out-of-order RECT in RedrawWindow().
Philip Allison (1):
uiautomationcore: Fix header compatibility with C++.
Piotr Caban (5):
msvcr110/tests: Fix setlocale test failure on systems with UTF-8 locales enabled.
msvcrt: Reject UTF-8 locales in setlocale function.
oleacc: Store test IAccessible data in structure.
oleacc: Add IAccessible refcount tests.
msvcr120: Add missing _StructuredTaskCollection destructor spec file entry.
Robert Wilhelm (1):
vbscript: Implement CDate().
Rémi Bernon (83):
winegstreamer: Move MFT registration list out of static scope.
winegstreamer: Register the video processor transform.
mf/tests: Tweak topology loader tests results based on the video processor presence.
mf/tests: Update a broken IMFMediaSink_AddStreamSink result check.
dinput/tests: Wait for the expected report to actually be pending.
windows.gaming.input: AddRef on the returned async handler in get_Completed.
windows.gaming.input: Reset spare CS pointer before deleting it.
windows.gaming.input: Use case insensitive compare when looking for devices.
windows.gaming.input: Register Windows.Gaming.Input.ForceFeedback classes.
windows.gaming.input: Implement stub ConstantForceEffect runtimeclass factory.
ntdll: Lock heap critical section outside of HEAP_IsRealArena.
ntdll: Split HEAP_IsRealArena to heap_validate and heap_validate_ptr.
ntdll: Split RtlAllocateHeap to a separate heap_allocate helper.
ntdll: Split RtlFreeHeap to a separate heap_free helper.
ntdll: Split RtlReAllocateHeap to a separate heap_reallocate helper.
ntdll: Split RtlSizeHeap to a separate heap_size helper.
ntdll: Introduce new block metadata access helpers.
ntdll: Use block size helpers in heap_size.
ntdll: Cleanup HEAP_FindSubHeap and rename it to find_subheap.
ntdll: Check subheap sizes for consistency before using them.
ntdll: Rewrite RtlWalkHeap and enumerate large blocks.
dinput/tests: Increase async bool handler wait timeout.
windows.gaming.input: Implement and instantiate ConstantForceEffect runtimeclass stubs.
windows.gaming.input: Implement IForceFeedbackEffect interface for ConstantForceEffect.
windows.gaming.input: Add a type parameter to force_feedback_effect_create.
windows.gaming.input: Implement IForceFeedbackMotor_LoadEffectAsync.
windows.gaming.input: Implement IForceFeedbackMotor_TryUnloadEffectAsync.
ntdll: Use heap_validate_ptr in validate_block_pointer.
ntdll: Simplify validate_block_pointer.
ntdll: Simplify validate_large_arena.
ntdll: Simplify validate_used_block.
ntdll: Simplify validate_free_block.
hidclass.sys: Clear the buffer passed to IOCTL_HID_GET_DEVICE_DESCRIPTOR.
winexinput.sys: Clear the buffer passed to IOCTL_HID_GET_DEVICE_DESCRIPTOR.
dinput: Store the user_format field inline in struct dinput_device.
dinput: Return an HRESULT from hid_joystick_device_try_open.
dinput: Rename This to device in dinput_device_alloc.
ntdll: Remove unused QUIET/NOISY constants and parameters.
ntdll: Use block helpers to iterate blocks in heap_validate.
ntdll: Use next_block helper to iterate in heap_set_debug_flags.
ntdll: Check that ptr is in committed blocks in find_subheap.
ntdll: Use next_block helper in heap_reallocate.
dinput/tests: Add some Windows.Gaming.Input.ForceFeedback.PeriodicForceEffect tests.
dinput/tests: Add some Windows.Gaming.Input.ForceFeedback.RampForceEffect tests.
dinput/tests: Add some Windows.Gaming.Input.ForceFeedback.ConditionForceEffect tests.
windows.gaming.input: Implement Windows.Gaming.Input.RampForceEffect runtimeclass.
windows.gaming.input: Implement Windows.Gaming.Input.PeriodicForceEffect runtimeclass.
windows.gaming.input: Implement Windows.Gaming.Input.ConditionForceEffect runtimeclass.
mf/tests: Move WMA decoder aggregation tests from wmadmod.
wmadmod: Remove unnecessary DLL.
ntdll: Increase heap large block min size for sizeof(void *) == 8.
ntdll: Fail to allocate large blocks if heap isn't growable.
ntdll: Simplify the fallback case in heap_reallocate.
ntdll: Create free block after updating the size in HEAP_ShrinkBlock.
ntdll: Cleanup HEAP_ShrinkBlock and rename it to shrink_used_block.
ntdll: Update block unused_bytes in shrink_used_block.
dinput/tests: Remove IAsyncOperation reference count checks.
windows.gaming.input: Always assume at least two force feedback axes.
windows.gaming.input: Implement IForceFeedbackEffect_(get|put)_Gain.
windows.gaming.input: Implement IConstantForceEffect_SetParameters(WithEnvelope).
windows.gaming.input: Implement IRampForceEffect_SetParameters(WithEnvelope).
windows.gaming.input: Implement IPeriodicForceEffect_SetParameters(WithEnvelope).
windows.gaming.input: Implement IConditionForceEffect_SetParameters.
dinput: Make sure converted direction values are always positive.
ntdll: Ignore back pointer when validating free block pattern.
ntdll: Use block helpers in subheap_notify_free_all.
ntdll: Rename local variables in heap_reallocate.
ntdll: Rename local variables in heap_allocate.
ntdll: Rename HEAP_FindFreeBlock size parameter.
ntdll: Use block size helpers in heap_reallocate.
winebus.sys: Add support for PID effect gain.
windows.gaming.input: Implement IForceFeedbackEffect_(Start|Stop).
windows.gaming.input: Implement IForceFeedbackEffect_get_State.
windows.gaming.input: Ignore IDirectInputDevice8_GetDeviceState failures.
kernel32/tests: Mark activatableClass wrong xmlns test as broken on w1064v1909.
combase: Use CRT memory allocation functions.
combase: Lookup activatable class library in the activation context.
ntdll: Mask block flags when computing HEAP_InsertFreeBlock size.
ntdll: Set ARENA_FLAG_FREE flag in HEAP_CreateFreeBlock.
ntdll: Move the main subheap after the free lists.
ntdll: Return an entry pointer when looking for a free list.
ntdll: Remove entries from the free list in HEAP_FindFreeBlock.
ntdll: Cleanup HEAP_FindFreeBlock and rename it to find_free_block.
Stefan Dösinger (7):
wined3d: Move clear box clipping to cpu_blitter_clear.
wined3d: Separate mapping from data writing in surface_cpu_blt_colour_fill.
wined3d: Prepare wined3d_format_convert_from_float for > 32bpp formats.
wined3d: Add support for sysmem-clearing float32 formats.
wined3d: Support CPU clear of float16 formats.
wined3d: Mark some d3d9 formats as normalized formats.
wined3d: Make normalized format handling more generic in wined3d_format_convert_from_float.
Sven Baars (1):
d3dx10/tests: Disable a PreloadGlyphs test for d3dx10_34.
Torge Matthies (5):
ntdll: Use correct output buffer size in RtlpNtEnumerateSubKey.
ntdll: Calculate buffer sizes from registry structs correctly.
win32u: Calculate buffer sizes from registry structs correctly.
win32u: Query basic instead of full key information to get the LastWriteTime.
msvcr120: Add tests for _StructuredTaskCollection.
Zebediah Figura (18):
xslt: Use win32config.h from the correct directory.
wineusb.sys: Mark transfer_cb() as LIBUSB_CALL.
wineusb.sys: Avoid hard-coding ID string lengths.
wineusb.sys: Trace the type in query_id().
wineusb.sys: Expose composite device interfaces.
wined3d: Trace bind flags in wined3d_texture_init().
include: Constify the RAWINPUTDEVICE pointer parameter to RegisterRawInputDevices().
shlwapi/tests: Fix a test failure with the UTF-8 code page.
dinput: Store the device_format field inline in struct dinput_device.
dinput: Factor out the dinput_device_init() call into dinput7_CreateDeviceEx().
dinput: Rename dinput_device_init() to dinput_device_init_device_format().
dinput: Return E_OUTOFMEMORY on allocation failure in hid_joystick_create_device().
dinput: Allocate the dinput_device structure in the caller to dinput_device_alloc().
dinput: Pass a single GUID pointer to hid_joystick_device_open().
dinput: Pass the device instance directly to hid_joystick_device_(try_)open.
quartz/systemclock: Use timeGetTime() to retrieve the current time.
maintainers: Add a GStreamer section.
maintainers: Add a Windows Media Format section.
Zhiyi Zhang (10):
maintainers: Add myself to some sections.
win32u: Fix a memory leak.
include: Add D3DKMTQueryVideoMemoryInfo() definition.
gdi32/tests: Add D3DKMTQueryVideoMemoryInfo() tests.
winex11.drv: Open a Vulkan device for D3DKMTOpenAdapterFromLuid().
gdi32: Implement D3DKMTQueryVideoMemoryInfo().
wined3d: Move kernel mode adapter handle from wined3d_output to wined3d_adapter.
dxgi: Implement dxgi_adapter_QueryVideoMemoryInfo() with D3DKMTQueryVideoMemoryInfo().
wined3d: Fill fake adapter video memory usage.
dxgi/tests: Test adapter video memory budget notification.
Ziqing Hui (6):
d2d1: Add stubs for ID2D1EffectContext.
d2d1: Implement ID2D1EffectContext_GetDpi().
d2d1: Implement LoadVertexShader().
include: Add defines for D2D1_PROPERTY_BINDING.
d2d1/tests: Introduce create_factory().
uuid: Add d2d1effectauthor.h.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 7.8 is now available.
What's new in this release:
- X11 and OSS drivers converted to PE.
- WoW64 support in the sound drivers.
- Number formatting using the new locale database.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.8.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.8.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.8 (total 37):
18635 Adobe Lightroom 2.3: Menu bar is hidden
43208 Assassin's Creed IV - Black Flag Hangs tightly
43995 Uplay - Assassin's Creed 4 Black Flag won't start
45388 user32:edit fails on Traditional Chinese and Korean locales
48045 comdlg32:filedlg crashes or times out randomly
48048 urlmon:protocol - The ftp test fails on Vista to Windows 8
51181 d3d10core:d3d10core fails systematically on AMD GPUs
51407 kernel32:time, msvcrt:time and shlwapi:ordinal fail in Wine because Hindi is Unicode-only
51460 oleaut32:vartest has a todo because Wine uses an outdated currency symbol for Swiss Francs
51619 advapi32:registry fails in Wine because French & German timezone name translations are too long
52079 oleacc:main crashes randomly on Windows 10 1709+
52149 user32:dialog fails in test_DialogBoxParam() on current Windows 10 21H1
52362 Powershell Core 7 installer hangs forever on Chinese locale (LC_ALL=zh_CN.UTF-8)
52554 Serbian locale mapping cause crash on multiple installshield wizards
52559 kernel32:resource times out since 2021-12-29 at two win10 testbot systems.
52684 Command and Conquer Generals (and C&C Zero Hour) have no ground textures
52704 FreeHand 9 demo: invalid handle exception (0xc0000008) when attaching uxtheme.dll
52743 cannot write to _fdopen'ed stdout when running in docker
52771 Wine console creation breaks comctl32:button, dinput:keyboard, user32:dialog, user32:input, user32:monitor and user32:win
52828 Incorrect instruments in MIDI playback over ALSA
52845 Recent versions of chromium have broken sandbox again
52847 GetACP() returns CP_UTF8 on some debian VM
52856 kernel32:process fails when Wine has no Unix terminal
52857 msvcp140:msvcp140 fails in Windows 8.1 on the cw-rx460 machine
52858 kernel32:file fails in Windows 8.1 on the cw-rx460 machine
52861 kernel32:locale fails on Windows 10 1709
52864 windows.media.speech:speech has a refcount failure on all Windows 10 versions
52865 windows.media.speech:speech has a Windows 10 1507-specific failure
52866 vbscript:run fails in Wine in Arabic and Hebrew
52867 Multiple applications crash because of ResolveLocaleName stub (dnSpy, dotnet-sdk-5.0.100-win-x64, Metatogger 7.2)
52869 kernel32:locale - test_CompareStringA() fails on Windows with a UTF-8 code page
52871 oleaut32:vartest has failures in Wine in the Arabic and Hebrew locales
52887 Get-Computerinfo from NoPowershell crashes
52904 kernel32:locale breaks oleaut32:varformat on Wine in the French locale
52922 The Evil Within crashes before entering the main menu using Vulkan renderer
52924 Guilty Gear XX #Reload: black screen since wine 5.0
52953 GuiPy crashes on unimplemented function xmllite.dll.CreateXmlReaderInputWithEncodingCodePage
----------------------------------------------------------------
Changes since 7.7:
Alexandre Julliard (23):
make_unicode: Generate the character mapping tables in locale.nls.
kernelbase: Use the mapping tables from locale.nls in LCMapStringEx().
kernelbase: Use the digit table from locale.nls in FoldStringW().
server: Store the full group attributes.
server: Return the full token group for TokenLogonSid.
kernelbase: Really skip alternate sorts in EnumUILanguagesW().
kernelbase: Add support for storing LOCALE_SINTLSYMBOL in the registry.
kernel32/tests: Mark a failing test as broken.
winecrt0: Avoid A->W conversion in initialization code.
user32/tests: Use the standard INPUT type definition.
kernelbase: Implement ResolveLocaleName().
sfc_os: Stub SfpVerifyFile().
oleaut32: Use the locale leading zero flag instead of hardcoding it.
shlwapi: Fix copy/paste typo in number format initialization.
kernel32: Reimplement GetNumberFormatA().
kernel32: Reimplement GetCurrencyFormatA().
kernelbase: Reimplement GetNumberFormatW/Ex() using get_locale_info().
kernelbase: Reimplement GetCurrencyFormatW/Ex() using get_locale_info().
kernelbase: Reimplement GetDateFormatW/Ex() using get_locale_info().
kernelbase: Reimplement GetTimeFormatW/Ex() using get_locale_info().
kernelbase: Reimplement GetDateFormatA().
kernelbase: Reimplement GetTimeFormatA().
nls: Update sort keys to NLS version 6.3.5.
Alistair Leslie-Hughes (1):
msado15: Implement _Recordset get_EditMode.
Angelo Haller (3):
comctl32/tests: Add hold_key and release_key functions.
comctl32/tests: Add multi select tests for ownerdata listviews.
comctl32/tests: Add change sequence for ownerdata listviews.
Anton Baskanov (26):
quartz/tests: Add tests for MPEG audio decoder interfaces.
quartz/tests: Add tests for MPEG audio decoder aggregation.
quartz/tests: Add tests for MPEG audio decoder unconnected filter state change.
quartz/tests: Add tests for IBaseFilter_EnumPins() on MPEG audio decoder.
quartz/tests: Add tests for IBaseFilter_FindPin() on MPEG audio decoder.
quartz/tests: Add tests for querying MPEG audio decoder pin info.
winegstreamer: Add a skeleton MPEG audio decoder filter.
quartz/tests: Add tests for MPEG audio decoder IEnumMediaTypes.
quartz/tests: Add tests for MPEG audio decoder accepted media types.
winegstreamer: Reject incompatible input media types in MPEG audio decoder.
quartz/tests: Add tests for MPEG audio decoder sink connection.
winegstreamer: Reject incompatible output types in MPEG audio decoder.
quartz/tests: Add tests for MPEG audio decoder sink allocator.
quartz/tests: Add tests for MPEG audio decoder output media type enumeration.
winegstreamer: Implement output media type enumeration in MPEG audio decoder.
winegstreamer: Set allocator properties for MPEG audio decoder sink.
quartz/tests: Add tests for MPEG audio decoder source allocator.
quartz/tests: Add tests for MPEG audio decoder source connection.
winegstreamer: Commit allocator on pause in MPEG audio decoder.
winegstreamer: Convert MPEG-1 audio to a major type.
winegstreamer: Support MPEG-1 audio in wg_transform.
quartz/tests: Don't fail tests when MPEG audio decoder creation fails.
winegstreamer: Check whether transform is supported when creating MPEG audio decoder.
winegstreamer: Create wg_transform in MPEG audio decoder.
quartz/tests: Add tests for MPEG audio decoder sample processing.
winegstreamer: Implement Receive() for MPEG audio decoder sink.
Biswapriyo Nath (3):
include: Use nested namespace declaration in windows.foundation.idl.
include: Add Windows.Foundation.MemoryBuffer runtimeclass declaration.
include: Add Windows.Storage.Streams.Buffer runtimeclass declaration.
Brendan Shanks (2):
wrc: Support function macros where varargs are the only argument.
include: Add WINE_ALLOC_SIZE attribute to heap_calloc().
Connor McAdams (5):
oleacc/tests: Add tests for IIS_IsOleaccProxy service on default accessible objects.
oleacc: Add IServiceProvider interface to default accessible objects.
uiautomationcore: Implement UiaProviderFromIAccessible.
uiautomationcore/tests: Add tests for UiaProviderFromIAccessible.
uiautomationcore: Make hwnd_host_provider_vtbl static const.
Dmitry Timoshkov (1):
ieframe: Initialize new history log entry.
Drew Ronneberg (13):
shell32: Remove obsolete -D_SHELL32_ from Makefile.in.
crypt32: Remove obsolete -D_CRYPT32_ from Makefile.in.
comctl32: Remove obsolete -D_COMCTL32_ from Makefile.in.
shdocvw: Remove obsolete -D_SHDOCVW_ from Makefile.in.
winspool.drv: Remove obsolete -D_SPOOL32_ from Makefile.in.
netapi32: Remove obsolete -D_SVRAPI_ from Makefile.in.
rpcrt4: Remove obsolete -D_RPCRT4_ from Makefile.in.
user32: Remove obsolete -D_WINABLE_ from Makefile.in.
oleaut32: Remove obsolete -D_OLEAUT32_ from Makefile.in.
urlmon: Remove obsolete -D_URLMON_ from Makefile.in.
winmm: Remove obsolete -D_WINMM_ from Makefile.in.
shlwapi: Remove obsolete -D_SHLWAPI_ from Makefile.in.
setupapi: Remove obsolete -D_SETUPAPI_ from Makefile.in.
Eric Pouech (36):
include: Don't use long types in nsi.h.
nsi/tests: Enable compilation with long types.
nsiproxy: Don't use long types in internal structure / helpers.
nsiproxy: Don't use long types for local types.
nsiproxy: Add intermediate variables for sscanf on ULONG.
nsiproxy: Enable compilation with long types.
d3d11/tests: Build without -DWINE_NO_LONG_TYPES.
d3d11: Build without -DWINE_NO_LONG_TYPES.
d3dx9/effect: Return the read value from read_dword().
d3dx9: Use correct integral type.
winedbg: Correctly read register values through dbg_lvalue structure.
attrib: Use OEM code page for output.
chcp: Use OEM code page for output.
fsutil: Use OEM code page for output.
hostname: Use OEM code page for output.
icinfo: Use OEM code page for output.
ipconfig: Use OEM code page for output.
net: Use OEM code page for output.
netstat: Use OEM code page for output.
regedit: Use OEM code page for output.
regsvr32: Use OEM code page for output.
start: Use OEM code page for output.
taskkill: Use OEM code page for output.
uninstaller: Use OEM code page for output.
whoami: Use OEM code page for output.
wscript: Use OEM code page for output.
xcopy: Use OEM code page for output.
include/msvcrt: Redefine towlower* & towupper* with wint_t types.
dbghelp: Properly fail on PDB files generated by MSVC compiler version 14.31.
dbghelp: Introduce symt_find_symbol_at().
cmd: Test that read is successful before using its result.
cmd: Skip too long paths.
wineoss.drv: Use correct integral type.
wineoss.drv: Enable compilation with long types.
winealsa.drv: Use correct integral types.
winealsa.drv: Enable compilation with long types.
Fabian Maurer (6):
mscoree: Use LocalFree for memory allocated by LocalAlloc.
printui: Use LocalFree for memory allocated by LocalAlloc (Coverity).
mfplay: Prevent usage of uninitialized pointer in error case (Coverity).
mfplat: Prevent use after free (Coverity).
shell32: Prevent user after free in error case (Coverity).
shell32: Refactor to keep style consistent.
Floris Renaud (1):
po: Add missing examples in Dutch translation.
François Gouget (17):
gdi32/tests: Trace the invalid height in test_max_height().
kernel32/tests: Remove a couple of unnecessary NULL casts.
comctl32/tests: Use winetest_push_context() in test_combo_dropdown_size().
oleau32/tests: Show that spaces are not allowed before exponents.
oleaut32/tests: The EUR abbreviation is not recognized as a currency.
kernel32/tests: Fix the spelling of a comment.
user32/tests: Trace monitor information with 'monitor info'.
po: Fix a typo in the Asturian translation.
po: Fix the indentation of a usage message in the Brazilian translation.
po: Fix a trailing full stop inconsistency in the Asturian translation.
po: Fix trailing full stop inconsistencies in the Czech translation.
po: Fix trailing full stop inconsistencies in the Turkish translation.
kernel32/tests: Fix a copy/paste error in an ok() message.
winebus.sys: Fix the HAVE_SYS_INOTIFY_H checks.
kernel32/tests: Fix a typo in a comment.
user32/tests: Make the test_char_from_pos() failures more informative.
kernelbase/tests: Loosen up the Sleep() test lower bound.
Gabriel Ivăncescu (7):
jscript: Implement Number.prototype.toLocaleString.
jscript: Return proper error in Number.toLocaleString with invalid 'this' in ES5 mode.
jscript: Implement Array.prototype.toLocaleString.
jscript: Implement Array.prototype.filter.
jscript: Implement Array.prototype.every.
jscript: Implement Array.prototype.some.
jscript: Implement Array.prototype.lastIndexOf.
Giovanni Mascellani (2):
loader/wine.inf: Update time zone data.
mfplat: Avoid a race condition when releasing a tracked sample.
Hans Leidekker (1):
mshtml: Added IHTMLCSSStyleDeclaration::backgroundSize property implementation.
Henri Verbeet (2):
d3d11/tests: Declare "data_size" as UINT in test_device_context_state().
wined3d: Pass "quality_levels" as an unsigned int pointer to wined3d_check_device_multisample_type().
Huw D. M. Davies (47):
winedbg: Accept "continue".
winecoreaudio: Pass a ptr to receive the stream in create_stream.
winecoreaudio: Use UINT64 handles to represent the stream.
winecoreaudio: Return offsets rather than ptrs to the strings.
winecoreaudio: Limit Wow64 buffer allocations to 32-bit addresses.
winecoreaudio: Implement Wow64 mmdevapi entry points in the Unix libraray.
winecoreaudio: Implement Wow64 midi entry points in the Unix libraray.
winemac: Use ULongToPtr() to cast format ids to void ptrs.
wineoss: Move MODM_GETDEVCAPS to the unixlib.
wineoss: Move MODM_GETNUMDEVS to the unixlib.
wineoss: Move MODM_GETVOLUME and MODM_SETVOLUME to the unixlib.
wineoss: Move MODM_RESET to the unixlib.
wineoss: Move MIDM_PREPARE and MIDM_UNPREPARE to the unixlib.
wineoss: Move MIDM_GETDEVCAPS to the unixlib.
wineoss: Move MIDM_GETNUMDEVS to the unixlib.
wineoss: Move the midi in buffer lock to the unixlib.
wineoss: Move MIDM_ADDBUFFER to the unixlib.
winex11: Free "path" and "uri" with the correct functions.
wineoss: Pass the time relative to the start time to the callback.
wineoss: Move MIDM_RESET to the unixlib.
wineoss: Move MIDM_START to the unixlib.
wineoss: Move MIDM_STOP to the unixlib.
wineoss: Simplify the midi in dispatcher.
wineoss: Add the leading 0xf0 to the sysex data.
wineoss: Move the sysex handling to a separate helper.
wineoss: Move the regular data handling to a separate helper.
wineoss: Make the MIM_LONGDATA time relative to the start time.
wineoss: Combine midReceiveChar() into handle_midi_data().
wineoss: Introduce a notification thread.
wineoss: Move the midi in data handlers to the unixlib.
wineoss: Introduce a helper to retrieve the time.
wineoss: Use a pipe to signal the end of the record thread.
wineoss: Move MIDM_OPEN and MIDM_CLOSE to the unixlib.
wineoss: Move DRVM_INIT and DRVM_EXIT to the unixlib.
wineoss: Use AUXDM_GETNUMDEVS to retrieve the number of devices.
wineoss: Move AUXDM_GETNUMDEVS to the unixlib.
wineoss: Move AUXDM_GETDEVCAPS to the unixlib.
wineoss: Move AUXDM_GETVOLUME and AUXDM_SETVOLUME to the unixlib.
wineoss: Build with msvcrt.
wineoss: Pass a client ptr to the callback instead of a stream.
wineoss: Use UINT64 handles to represent the stream.
wineoss: Return offsets rather than ptrs to the strings.
wineoss: Limit Wow64 buffer allocations to 32-bit addresses.
wineoss: Implement Wow64 mmdevapi entry points in the Unix library.
wineoss: Implement Wow64 midi entry points in the Unix library.
wineoss: Implement Wow64 aux entry point in the Unix library.
dllhost: Try to load the dll server's factory at the start.
Jacek Caban (77):
win32u: Add more clipboard stubs.
win32u: Move clipboard data management from user32.
winex11: Remove unused cf_xdnd from XDNDDATA.
winex11: Use libc for driver memory allocation.
win32u: Use public declaration for GetStockObject.
win32u: Introduce data-only mode in NtUserGetClipboardData.
winex11: Don't use DragQueryFileW in export_hdrop.
winex11: Use data-only NtUserGetClipboardData to export clipboard data.
winex11: Directly use ntdll in uri_to_dos.
winex11: Directly use win32u and ntdll in a few more places.
win32u: Use user mode callback for registering builtin classes.
winex11: Use NtUserSetClipboardData to import clipboard data.
winex11: Directly use win32u in import_image_bmp.
winex11: Directly use ntdll in clipboard.c.
winex11: Return selection data as a single buffer from import_xdnd_selection.
winex11: Move CF_HDROP filtering to import_xdnd_selection.
winex11: Use format_entry to store cached XDND formats data.
winex11: Move XdndEnter event handler to event.c.
winex11: Move XdndPosition event handler to event.c.
winex11: Move XdndDrop event handler to event.c.
winex11: Move XdndLeave event handler to event.c.
winex11: Use inline intersect_rect helper instead of IntersectRect.
winex11: Move Unicode conversion out of unicode_text_from_string.
winex11: Move Unicode conversion out of string_from_unicode_text.
winex11: Directly use ntdll for utf8 conversion.
user32: Use GetMenuInfo for IsMenu implementation.
user32: Use MIIM_CHECKMARKS flag in InsertMenuW.
user32: Perform Unicode conversion in SetMenuItemInfoA.
user32: Perform Unicode conversion in InsertMenuItemA.
win32u: Move menu item info management from user32.
win32u/tests: Add NtUserThunkedMenuItemInfo tests.
win32u: Move GetMenuState implementation from user32.
win32u: Move GetMenuItemCount implementation from user32.
win32u: Move NtUserTranslateAccelerator from user32.
win32u: Move NtUserDeleteMenu implementation from user32.
win32u: Move NtUserGetSystemMenu implementation from user32.
win32u: Move NtUserSetSystemMenu implementation from user32.
win32u: Copy implementation of AdjustWindowRectEx from user32.
win32u: Move normalize_std_handle call to NtUserMsgWaitForMultipleObjectsEx.
win32u: Use NT interface for MsgWaitForMultipleObjectsEx user driver entry point.
winex11: Use passed point in handle_position_event.
winex11: Use ntdll_umbstowcs and ntdll_wcstoumbs for Unicode conversion.
winex11: Directly use wine_nt_to_unix_file_name to get Unix path name.
winex11: Use ntdll for Unicode conversion.
winex11: Use import_text_uri_list code in EVENT_DropURLs.
winex11: Reimplement EVENT_DropFromOffiX using get_dos_file_name.
win32u: Allow NULL client_menu_name in NtUserRegisterClassExWOW.
winex11: Directly use ntdll in more places.
winex11: Move DllMain to separated file.
winex11: Move X11DRV_InitClipboard to dllmain.c.
winex11: Move x11drv_post_drop to xdnd.c.
winex11: Move create_desktop implementation to dllmain.c.
winex11: Move wintab entry points to dllmain.c.
winex11: Introduce X11DRV_CALL macro.
winex11: Use X11DRV_CALL for XIM calls.
winex11: Call create_tooltip from WM_CREATE handler.
winex11: Avoid using sprintfW.
winex11: Avoid using kernel32 functions in get_config_key.
winex11: Avoid using kernel32 functions in user driver.
winex11: Introduce x11drv_client_call.
winex11: Use unixlib interface for IME calls.
winex11: Use unixlib interface for X11 calls from systray.c.
winex11: Use unixlib interface for systray docking.
winex11: Move foreign_window_proc to systray.c.
win32u: Move NtUserCallMsgFilter implementation from user32.
winex11: Directly use NtUserGetIconInfo.
winex11: Directly use win32u in more places.
win32u: Use KeUserModeCallback interface for CopyImage.
win32u: Allow NULL cbtc in NtUserCreateWindowEx.
winex11: Directly use NtUserCreateWindowEx.
winex11: Use unixlib interface for x11drv_is_system_module.
winex11: Move LoadIcon call to dllmain.
include: Don't use DECLSPEC_HIDDEN for WINGDIAPI and WINUSERAPI in unuxlibs.
winex11: Use wcsicmp for string comparison.
winex11: Move user driver to unixlib.
winex11: Build with msvcrt.
winex11: Don't use unicode.h.
Jan Sikorski (1):
msvcrt: Faster memcmp().
Jinoh Kang (4):
include: Add definition for IShellItemImageFactory.
wineboot: Don't use ai_canonname for ComputerName if it is "localhost".
shell32/tests: Add tests for IShellItemImageFactory.
shell32: Add stub for IShellItemImageFactory.
Joachim Priesner (1):
windowscodecs: BitmapScaler_CopyPixels: Do not demand a larger buffer than necessary.
Louis Lenders (8):
wbemprox: Add Win32_PageFileUsage class.
wbemprox: Add BuildType property to Win32_OperatingSystem.
wbemprox: Add RegisterdUser property to Win32_Operatingsystem.
wbemprox: Add Organization property to Win32_Operatingsystem.
wbemprox: Add BootDevice property to Win32_Operatingsystem.
wbemprox: Add WindowsDirectory property to Win32_Operatingsystem.
wbemprox: Add SystemType property to Win32_Computersystem.
wbemprox: Add FreeVirtualMemory property to Win32_Operatingsystem.
Martin Storsjö (2):
include: Add a declaration of _InterlockedExchangeAdd64 for MSVC mode for aarch64.
include: Add declarations of _alloca and alloca for MSVC mode.
Matteo Bruni (6):
d3dx9/effect: Return a uint32_t from the bytecode read helper.
wined3d: Raise MAX_ATTRIBS to 32.
wined3d: Don't submit fences when the GL context doesn't support them.
wined3d: Don't use fences on GL context cleanup when they are not supported.
wined3d: Disable CSMT when fences are not supported.
wined3d: Check BO existence before trying to update its fence counter.
Mohamad Al-Jaf (2):
include: Add windows.ui.idl file.
include: Add windows.media.closedcaptioning.idl file.
Nikolay Sivov (27):
uxtheme: Fix double free on registry key handle.
dwrite/tests: Add a test for unset axis for references created with IDWriteFactory3.
dwrite/tests: Use table access helpers for CBLC tests.
dwrite: Remove already defined macros.
dwrite: Simplify collection object initialization.
dwrite: Implement GetFontFamilyModel().
dwrite: Use separate structure for set entry description.
dwrite: Prefer different family names for typographical collections.
dwrite: Initial implementation of CreateFontCollectionFromFontSet().
dwrite: Implement newer GetSystemFontCollection() variants.
dwrite: Implement CreateTextFormat() for IDWriteFactory6.
include: Fix IDWriteFontResource definition.
dwrite: Implement variation axis value methods for the resource object.
dwrite/opentype: Use stdint types for layout table structures.
nls: Hardcode minus sign for all locales.
dwrite/opentype: Use stdint type for color font structures.
dwrite/opentype: Use stdint types for font file structures.
include: Add IParentAndItem definition.
dwrite/opentype: Correct flags field size for layout lookup structure.
dwrite/opentype: Fix incorrect MarkGlyphSets table handling.
dwrite/opentype: Do not include base advance to the mark advance offset.
xmllite/reader: Implement CreateXmlReaderInputWithEncodingCodePage().
ntdll: Add a partial implementation of NtMapViewOfSectionEx().
kernelbase: Implement MapViewOfFile3().
ntdll: Partially implement NtUnmapViewOfSectionEx().
kernelbase: Implement UnmapViewOfFile2().
kernel32: Implement UnmapViewOfFileEx().
Paul Gofman (12):
winex11.drv: Treat invalid icon as no icon in fetch_icon_data().
msvcp140/tests: Add a broken last error result in test_Copy_file().
kernel32/tests: Add a broken last error result in test_CopyFileW().
crypt32/tests: Add tests for short return string buffer.
crypt32: Fix filling short output in cert_name_to_str_with_indent().
crypt32: Fix filling short output in CertRDNValueToStrW().
crypt32: Fix filling short output in CertGetNameStringW().
crypt32: Fix filling short output in CertGetNameStringA().
crypt32: Reimplement CertRDNValueToStrA() on top of CertRDNValueToStrW().
crypt32: Reimplement CertNameToStrA() on top of CertNameToStrW().
crypt32: Support up to date subject and issuer alt names OIDs.
crypt32: Support CERT_NAME_SEARCH_ALL_NAMES_FLAG in CertGetNameStringW().
Piotr Caban (5):
msvcrt: Use TICKSPERMSEC define in concurrency functions.
ntdll: Use 32-bit time_t when calling __NR_futex syscall.
msvcp140_atomic_wait: Add __std_atomic_notify_one_direct implementation.
msvcp140_atomic_wait: Add __std_atomic_notify_all_direct implementation.
msvcp140_atomic_wait: Add __std_atomic_wait_direct implementation.
Rémi Bernon (70):
kernel32/tests: Add some heap block layout tests.
ntdll: Stub RtlGetUserInfoHeap and RtlSetUser(Value|Flags)Heap.
kernel32/tests: Add some RtlGetUserInfoHeap tests.
dinput/tests: Remove unreliable IAsyncOperation_boolean checks.
windows.gaming.input: Return an empty vector from RawGameController_get_ForceFeedbackMotors.
windows.gaming.input: Implement ForceFeedbackMotor stub runtimeclass.
windows.gaming.input: Acquire the device exclusively when creating ForceFeedbackMotor.
windows.gaming.input: Implement IForceFeedbackMotor_(get|put)_MasterGain.
windows.gaming.input: Implement IForceFeedbackMotor_(Pause|Resume|StopAll)Effects.
server: Create message queue and thread input in set_key_state.
server: Lock thread input keystate whenever it is modified.
server: Create message queue and thread input in get_key_state.
hidclass.sys: Move HID_GET_COLLECTION_* handling inline.
hidclass.sys: Move handle_minidriver_string inline.
hidclass.sys: Use a local NTSTATUS variable to keep IRP status.
hidclass.sys: Call internal minidriver report ioctls asynchronously.
windows.gaming.input: Import IAsyncOperation from windows.media.speech.
windows.media.speech: Return operation error from IAsyncOperation_GetResults.
windows.media.speech: Return E_ILLEGAL_METHOD_CALL from get_ErrorCode.
windows.media.speech: Initialize HRESULT variables consistently.
windows.media.speech: Simplify error handling in async_operation_create.
windows.media.speech: Assume that async_run_work cannot be NULL in IAsyncInfo_Close.
mf/tests: Simplify handling of broken Win7 results.
mf/tests: Add some H264 decoder GetOutputCurrentType tests.
winegstreamer: Implement H264 decoder GetOutputCurrentType.
mf/tests: Add more tests for the H264 decoder output media type.
mf/tests: Only check sample data when length matches.
include: Add Windows.Foundation.Numerics.Vector3 struct declaration.
include: Add Windows.Gaming.Input.ForceFeedback.PeriodicForceEffect runtimeclass declaration.
include: Add Windows.Gaming.Input.ForceFeedback.ConditionForceEffect runtimeclass declaration.
include: Add Windows.Gaming.Input.ForceFeedback.ConstantForce runtimeclass declaration.
include: Add Windows.Gaming.Input.ForceFeedback.RampForce runtimeclass declaration.
include: Use nested namespaces in windows.storage.streams.idl.
winegstreamer: Ignore unset H264 format profile and level.
winegstreamer: Check caps pointer in wg_format_to_caps_h264.
winegstreamer: Check whether transforms are supported at creation time.
mf/tests: Skip todo_wine tests with a goto statement.
mf/tests: Use real audio data for WMA encoder / decoder tests.
mf/tests: Add some IMFTransform output sample attribute tests.
mf/tests: Add tests changing the H264 decoder output video format.
mf/tests: Expect identical major types for transform info.
dinput/tests: Remove racy controller removed handler check.
dinput/tests: Increase delayed TryResetAsync test wait timeout.
dinput/tests: Enforce HID report descriptor buffer size.
dinput/tests: Move Windows.Gaming.Input.RacingWheel tests to joystick8.c.
dinput/tests: Remove output and feature report buffers length checks.
dinput/tests: Add some Windows.Gaming.Input.ForceFeedback.ConstantForceEffect tests.
mf/tests: Check expected class GUID in create_transform.
mf/tests: Add more DMO class name, media type and interface checks.
mf/tests: Add tests for the ResamplerMediaObject audio transform.
mf/tests: Check VideoProcessorMFT transform media types.
mf/tests: Add tests for the ColorConvertDMO video transform.
kernel32/tests: Reduce layout tests verbosity by skipping some sizes.
kernel32/tests: Add some HEAP_NO_SERIALIZE flag / LFH locking tests.
ntdll: Factor out heap serialization to heap_(lock|unlock) helpers.
ntdll: Respect HEAP_NO_SERIALIZE flag in HeapLock / HeapUnlock.
kernel32/tests: Check that HeapCreate should ignore checking flags.
ntdll: Ignore HEAP_(TAIL|FREE)_CHECKING_ENABLED flags in RtlCreateHeap.
kernel32/tests: Add more block layout tests with alloc flags.
kernel32/tests: Add some RtlWalkHeap and more HeapWalk tests.
mountmgr.sys: Avoid passing a stack pointer to the run_loop thread.
windows.gaming.input: Set get_AreEffectsPaused value to FALSE when dinput fails.
windows.gaming.input: Introduce a new type-pruning WineAsyncOperationCompletedHandler.
windows.gaming.input: Use a PROPVARIANT as async operation result.
windows.gaming.input: Split IAsyncInfo interface to a separate struct.
windows.gaming.input: Use IUnknown invoker instead of IInspectable and add a parameter.
winegstreamer: Add timestamp and duration to struct wg_sample.
winegstreamer: Support the MFSampleExtension_CleanPoint sample attribute.
winegstreamer: Only resize buffer when read is incomplete.
dinput: Do not delete static critical section.
Stefan Dösinger (4):
wined3d: Invalidate framebuffer locations after setting up the renderpass.
wined3d: Tell Vulkan about discarded and cleared framebuffer attachments.
wined3d: Don't explicitly clear the draw location before starting a renderpass.
wined3d: Set WINED3D_LOCATION_CLEARED for full-subresource clears to black.
Torge Matthies (3):
msvcr110: Add _StructuredTaskCollection::_StructuredTaskCollection_ctor stub.
sc/tests: Add tests.
sc: Allow using separate arguments for parameter name and value.
Zebediah Figura (38):
wined3d: Clear the texture BO when loading textures into WINED3D_LOCATION_BUFFER.
wined3d: Move loading from CLEARED into the texture_load_location op.
wined3d: Clear Vulkan textures on the GPU in wined3d_texture_vk_load_texture().
wined3d: Clear GL texture using glClear() if possible in wined3d_texture_gl_load_location().
win32u: Move NtUserTrackMouseEvent() implementation from user32.
user32: Query CursorBlinkRate from the registry.
win32u: Move caret APIs from user32.
user32: Merge caret.c into input.c.
d3d8/tests: Add more tests for D3DLOCK_NO_DIRTY_UPDATE.
d3d9/tests: Add more tests for D3DLOCK_NO_DIRTY_UPDATE.
wined3d: Consider WINED3D_LOCATION_CLEARED to be a GPU location for GPU-accessible textures.
wined3d: Trace the SRGB flag in wined3d_texture_gl_prepare_texture().
server: Return void from sock_reselect().
wined3d: Refuse blits between height-scaled formats in the CPU blitter.
wined3d: Refuse blits between height-scaled formats in the FBO blitter.
wined3d: Refuse blits between height-scaled formats in the raw blitter.
wined3d: Do not use vkCmdClearColorImage() to clear compressed images.
dinput/tests: Do not test that reports are identical when polling.
dinput/tests: Set the callback event after setting "impl->invoked".
ws2_32/tests: Test polling for AFD_POLL_READ while there is a pending WSARecv() call.
ws2_32/tests: Test polling for AFD_POLL_ACCEPT while there is a pending AcceptEx() call.
ws2_32/tests: Test selecting for FD_READ while there is a pending WSARecv() call.
ws2_32/tests: Test selecting for FD_ACCEPT while there is a pending AcceptEx() call.
ws2_32/tests: Verify that AFD_POLL_CONNECT and AFD_POLL_WRITE are signaled simultaneously.
winegstreamer: Print messages relating to missing decoders in the winediag channel.
winegstreamer: Make some wg_format variables static const.
ws2_32/tests: Test that sockets returned from accept() don't return FD_CONNECT from WSAEnumNetworkEvents().
ws2_32/tests: Add more tests for selecting for events after they are signaled.
server: Send AFD_POLL_READ messages before AFD_POLL_WRITE.
server: Clear only returned events in IOCTL_AFD_GET_EVENTS.
ws2_32/tests: Add some more tests for reset TCP connections.
server: Do not signal read/write bits if there are read/write asyncs waiting.
server: Don't poll for POLLIN or POLLPRI if there are alerted read asyncs.
server: Do not signal read bits if there are read asyncs alerted.
server: Don't poll for POLLOUT if there are alerted write asyncs.
server: Do not signal write bits if there are write asyncs alerted.
server: Do not signal accept bits if there are accept asyncs queued.
server: Remove a redundant call to set_fd_events().
Zhiyi Zhang (3):
apisetschema: Add api-ms-win-core-winrt-robuffer-l1-1-0.
windows.networking: Add stub dll.
wintypes: Implement IApiInformationStatics stubs.
Ziqing Hui (11):
include: Add defines for ID2D1VertexBuffer.
include: Add defines for ID2D1ResourceTexture.
include: Add defines for ID2D1RenderInfo.
include: Add defines for ID2D1DrawInfo.
include: Add defines for ID2D1ComputeInfo.
include: Add defines for ID2D1TransformGraph.
include: Remove useless semi-colon in d2d1_3.idl.
include: Add defines for ID2D1Transform.
include: Add defines for ID2D1EffectContext.
include: Add defines for ID2D1EffectImpl.
wininet/tests: Test adding empty HTTP header.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 7.7 is now available.
What's new in this release:
- More progress on the PE conversion of the X11 and OSS drivers.
- Support for UTF-8 as default Ansi codepage.
- Theming support for control panel applets.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.7.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.7.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.7 (total 11):
6682 IrfanView's 4.44 Help -> About window is missing a picture on the left
24574 RAR Password Recovery Magic initial (registration) window is empty and doesn't allow any interaction
45916 x64dbg fails to load debuggee, needs ThreadScheduler_ScheduleTask
52223 activeCodePage utf-8 in application manifest not respected
52640 Steam does not display anything when using the Vulkan renderer (stack overflow from official Vulkan loader calling into dxgi)
52679 Anno 1602 / 1602 A.D. graphics too dark / black
52703 64-bit Irfanview crashes on startup
52763 ConEmu doesn't work with winver > Win8.1
52787 Invalid function prototype for "RegisterUserApiHook" when compiling for C++
52809 steamwebhelper.exe crashes repeatedly since 2aa4673f32
52825 Capella help crashes with Error "qtwebengingeprocess has serious errors"
----------------------------------------------------------------
Changes since 7.6:
Alex Henrie (1):
kernel32: Fix percentage calculation in GetSystemPowerStatus.
Alexandre Julliard (31):
ntdll: Move some duplicated locale definitions to a common header.
ntdll: Move more codepage conversion functions to the common header.
ntdll: Use the standard CPTABLEINFO structure for the Unix codepage.
ntdll: Support UTF-8 codepage in string conversion functions.
kernelbase: Use RtlMultiByteToUnicodeN in IsChar* functions.
kernelbase: Avoid redundant locale lookups in GetLocaleInfoA().
kernelbase: Support UTF-7/8 codepages in get_codepage_table().
kernelbase: Support UTF-8 as default Ansi codepage in MultiByteToWideChar().
kernelbase: Support UTF-8 as default Ansi codepage in WideCharToMultiByte().
ntdll: Default to UTF-8 codepage at startup.
ntdll: Export a few more codepage functions from ntdll.so.
win32u: Use the ntdll functions for codepage conversions.
win32u: Use character sizes in the codepage conversion functions.
win32u: Use CPTABLEINFO to store the Ansi/OEM codepages.
win32u: Support UTF-8 as the default Ansi codepage.
msvcrt: Fix mbcs initialization for UTF-8 codepage.
ntdll: Initialize the system locale on the Unix side.
kernelbase: Move codepage initialization to ntdll.
ntdll: Add support for 2019 and 2020 WindowsSettings namespaces.
ntdll: Support overriding the codepage from the manifest.
ole32: Fix sign expansion of codepage values.
user32: Pass a valid length to RtlUnicodeToMultiByteN/RtlMultiByteToUnicodeN.
user32/tests: Fix some tests that break in UTF-8 codepage.
gdi32: Support UTF-8 codepage in TranslateCharsetInfo().
winedump: Add support for dumping locale.nls.
include: Avoid Windows types in CodeView structure definitions.
winedump: Fix some incorrect uses of Unix 'long' type.
winedump: Avoid using DWORD in private definitions.
winedump: Remove unused variables.
winedump: Enable compilation with long types.
winedump: Build with nameless unions/structs.
Alexandros Frantzis (1):
win32u: Avoid iterating over a NULL window list when broadcasting.
Alistair Leslie-Hughes (1):
msado15: Return valid object in Recordset::Clone.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Austin English (1):
dbghelp: Downgrade a FIXME to a WARN.
Bernhard Kölbl (8):
windows.media.speech/tests: Fix some uses after release.
windows.media.speech/tests: Make waits non infinite.
windows.media.speech/tests: Remove some tests.
windows.media.speech/tests: Remove an unnecessary variable.
windows.media.speech/tests: Add tests to check if IAsyncInfo_Close is non blocking.
windows.media.speech: Partially implement IAsyncOperation.
windows.media.speech: Implement concurrency in IAsyncOperation.
windows.media.speech: Add ISpeechRecognitionCompilationResult.
Biswapriyo Nath (2):
include: Add IArcadeStick interface in windows.gaming.input.idl.
include: Add Windows.Gaming.Input.FlightStick runtimeclass declaration.
Brendan Shanks (2):
wow64cpu: Use different JMP instruction to work around Rosetta bug.
ntdll/tests: Test that threads have unique TEBs.
Connor McAdams (8):
webservices: Set proper minor version for .NET Message Framing Protocol.
webservices/tests: Add some tests for session dictionary size.
webservices/tests: Add test for binary encoding nested structure handling.
webservices: Don't advance binary encoding reader if record type doesn't match.
webservices: Check for channel state in WsReceiveMessage.
webservices: Properly handle max session dictionary size channel property.
webservices: Respect session dictionary size limits on send dictionary.
webservices: Respect session dictionary size limits on receive dictionary.
Daniel Lehman (1):
include: Add some math declarations.
Eric Pouech (17):
combase: Use I64 width modifier for 64-bit integers.
rtqwork: Trace 64-bit integers with I64 width modifier.
rpcrt4: Don't cast ptrdiff_t to ULONG in traces, use %I instead.
ntdll/tests: Simplify printf for 64 bit integers.
wininet/tests: Simplify printf for 64 bit integers.
winedbg: Simplify printf for 64 bit integers.
oleaut32/tests: Simplify test by using long long constants.
oleaut32/tests: Simplify printf for 64 bit integers.
kernel32/tests: Add more CreateProcess console management tests.
server: Use negative values for console pseudo handles.
kernelbase: Provide a pseudo console environment for initial CUI processes not tied to a Unix tty.
windowscodecs/tests: Simplify printf for 64 bit integers.
d3dxof: Don't cast ptrdiff_t to ULONG in traces, use %I instead.
d3dx10: Fix long type warnings.
start: Remove workaround for /exec without console.
kernel32/tests: Make the console tests pass if current console is shell-no-window.
kernel32/tests: Adapt duplicate console handle test to non-Win7 handles.
Esme Povirk (2):
gdiplus: Accept newer version in OpenType header.
windowscodecs: pceltFetched is optional in IWICEnumMetadataItem.
Floris Renaud (1):
po: Update Dutch translation.
François Gouget (4):
conhost: Fix the spelling of a couple of comments.
winegstreamer: Fix the spelling of a comment.
crypt32/tests: Fix the spelling of an ok() message.
riched20/tests: Fix the spelling of a comment.
Gabriel Ivăncescu (26):
urlmon: Add basic implementation of MapBrowserEmulationModeToUserAgent.
mshtml: Always return the custom user agent if it has been set.
urlmon: Return the currently set user agent when 'version' is invalid.
jscript: Handle PROP_IDX in jsdisp_get_own_property.
jscript: Make idx props enumerable.
jscript: Throw proper error when invoking non-method builtin.
jscript: Accept DISPATCH_PROPERTYPUTREF for jsdisps.
mshtml/tests: Add initial tests for NULL Dispatch objects in scripts.
jscript: Treat NULL disps as actual null values in html mode.
jscript: Defer lookup to the actual locals for function statements.
mshtml: Implement enumerator for HTMLStyleSheetsCollection.
mshtml: Implement enumerator for HTMLRectCollection.
mshtml: Implement enumerator for HTMLFormElement.
mshtml: Implement enumerator for HTMLSelectElement.
mshtml: Move some static functions up.
mshtml: Implement enumerator for HTMLAttributeCollection.
jscript: Handle NULL return pointers in all constructors.
jscript: Move Set below Map.
jscript: Iterate through the map in a helper function.
jscript: Set a map entry using a helper function.
jscript: Pass the Map object to the callback when iterating.
jscript: Support passing 'this' context to the Map callback when iterating.
jscript: Compare numbers in a Map bitwise for equality.
jscript: Implement Set on top of Map.
jscript: Use proper error description for invalid Set 'this'.
jscript: Initialize hres in String constructor.
Giovanni Mascellani (2):
mfreadwrite/reader: Make the stream sample allocator callback own a reference to the source reader.
mfreadwrite/reader: Unset sample allocator callbacks while destroying the source reader.
Hans Leidekker (2):
crypt32/tests: Get rid of workarounds for old Windows versions.
webservices: Always set channel state to WS_CHANNEL_STATE_FAULTED when a send or receive operation failed.
Hugh McMaster (13):
regedit: Use wide character string literals in childwnd.c.
regedit: Use wide character string literals in edit.c.
regedit: Use wide character string literals in framewnd.c.
regedit: Use wide character string literals in hexedit.c.
regedit: Use wide character string literals in listview.c.
regedit: Use wide character string literals in regedit.c.
regedit: Use wide character string literals in treeview.c.
regedit: Use wide character string literals in main.c.
regedit: Use wide character string literals in regproc.c.
regedit: Mark WCHAR szFrameClass static.
regedit: Mark WCHAR szTitle static.
regedit: Remove unused WCHAR szHexEditClass from main header.
conhost: Save default font's pitch and family on first run.
Huw D. M. Davies (55):
wineoss: Explicitly store the channel count in the client.
wineoss: Dynamically size the devnode array.
wineoss: Use the global lock to lock the session.
wineoss: Introduce a stream structure.
wineoss: Move is_format_supported to the unixlib.
wineoss: Don't cache the oss_audioinfo in the client.
wineoss: Move the stream creation to AudioClient_Initialize().
wineoss: Move get_mix_format to the unixlib.
wineoss: Use the stream ptr to indicate the init state.
wineoss: Store the mute state in the stream.
wineoss: Use the sessions lock to lock the client's data.
wineoss: Use a pthread mutex for the stream lock.
wineoss: Use NtAllocateVirtualMemory() to alloc the buffers returned to the user.
wineoss: Move create_stream and release_stream to the unixlib.
wineoss: Move get_buffer_size to the unixlib.
wineoss: Move get_latency to the unixlib.
wineoss: Move get_current_padding to the unixlib.
wineoss: Store the period in 100ns units.
wineoss: Move timer_loop to the unixlib.
wineoss: Move start to the unixlib.
wineoss: Move stop to the unixlib.
wineoss: Move reset to the unixlib.
wineoss: Move set_event_handle to the unixlib.
wineoss: Move get_render_buffer to the unixlib.
wineoss: Move release_render_buffer to the unixlib.
wineoss: Move get_capture_buffer to the unixlib.
wineoss: Move release_capture_buffer to the unixlib.
wineoss: Move get_next_packet_size to the unixlib.
wineoss: Move get_frequency to the unixlib.
wineoss: Move get_position to the unixlib.
wineoss: Move is_started to the unixlib.
wineoss: Move set_volumes to the unixlib.
wineoss: Remove some unused members.
wineoss: Remove preprocessor checks for SNDCTL_SEQ_NRMIDIS.
wineoss: Move midi_init to the unixlib.
winealsa: Wait for the notify buffer to empty, rather than dropping an event.
wineoss: Store the sequencer fd in the driver struct.
wineoss: Add a temporary syscall to open and close the seq fd.
wineoss: Add a temporary midi_out_fm_patch syscall.
wineoss: Add a temporary midi_out_fm_reset syscall.
wineoss: Move MODM_OPEN and MODM_CLOSE to the unixlib.
wineoss: Use separate functions to handle MODM_DATA for FM synths and ports.
wineoss: Move MODM_DATA to the unixlib.
wineoss: Move MODM_LONGDATA to the unixlib.
wineoss: Move MODM_PREPARE and MODM_UNPREPARE to the unixlib.
winepulse: Use UINT64 handles to represent the stream.
winepulse: Return offsets rather than ptrs to the strings.
winepulse: Limit Wow64 buffer allocations to 32-bit addresses.
winepulse: Implement Wow64 entry points in the Unix library.
winealsa: Pass a client ptr to the callback instead of a stream.
winealsa: Use UINT64 handles to represent the stream.
winealsa: Return offsets rather than ptrs to the strings.
winealsa: Limit Wow64 buffer allocations to 32-bit addresses.
winealsa: Implement Wow64 mmdevapi entry points in the Unix libraray.
winealsa: Implement Wow64 midi entry points in the Unix library.
Jacek Caban (78):
winex11: Directly use ntdll for registry access in setup_options.
winex11: Directly use ntdll for registry access in create_xcursor_system_cursor.
winex11: Directly use ntdll for registry access in X11DRV_GetICMProfile.
winex11: Directly use ntdll for registry access in get_display_device_reg_key.
winex11: Directly use ntdll for registry access in read_registry_settings.
winex11: Directly use ntdll for registry access in write_registry_settings.
win32u: Implement NtGdiGetDCDword.
win32u: Implement NtGdiGetDCPoint.
winex11: Directly use win32u for GDI functions in bitblt.c.
winex11: Directly use win32u for GDI functions in window.c.
winex11: Directly use win32u for GDI functions in graphics.c.
winex11: Directly use win32u for GDI functions in palette.c.
winex11: Directly use win32u for GDI functions in xrender.c.
winex11: Directly use win32u for GDI functions in more places.
kernelbase: Add support for CREATE_NO_WINDOW flag in CreateProcess.
win32u: Introduce inline helpers for NtUserCallNoParam calls.
win32u: Use NtUserCallHwndParam for MirrorRgn implementation.
win32u: Introduce inline helpers for NtUserCallOneParam calls.
win32u: Remove no longer needed NtUserCallOneParam exports.
win32u: Introduce inline helpers for NtUserCallTwoParam calls.
win32u: Introduce inline helpers for NtUserCallHwnd calls.
win32u: Introduce inline helpers for NtUserCallHwndParam calls.
winex11: Remove no longer needed helpers.
winex11: Directly use win32u for user functions in window.c.
user32: Get rid of __wine_set_pixel_format.
win32u: Move NtUserExcludeUpdateRgn implementation from user32.
win32u: Move NtUserChildWindowFromPointEx implementation from user32.
win32u: Move EnableWindow implementation from user32.
win32u: Introduce NtUserMapWindowPoints.
win32u: Move NtUserClientToScreen implementation from user32.
win32u: Introduce NtUserGetMessagePos.
winex11: Directly use win32u for user functions in mouse.c.
winex11: Directly use win32u for user functions in opengl.c.
winex11: Directly use win32u for user functions in settings.c.
winex11: Directly use win32u for user functions in event.c.
winex11: Directly use win32u in more places.
win32u: Move NtUserTranslateMessage implementation from user32.
win32u: Move CreatePopupMenu implementation from user32.
win32u: Move NtUserCheckMenuItem implementation from user32.
win32u: Move NtUserEnableMenuItem implementation from user32.
win32u: Move DrawMenuBar implementation from user32.
win32u: Move ShowOwnedPopups implementation from user32.
win32u: Move more WM_SYSCOMMAND handling from user32.
win32u: Use winuser.h inline rect helpers.
ntdll: Provide RtlInitUnicodeString for unixlibs.
win32u: Use RtlInitUnicodeString from ntdll.so.
winex11: Use pthread for surface locking.
winex11: Use pthread for keyboard lock.
winex11: Use pthread for synchronization in opengl.c.
winex11: Use pthread for palette locking.
winex11: Use pthread for settings locking.
winex11: Use pthread for synchronization in vulkan.c.
winex11: Use pthread for win data locking.
winex11: Use pthread for D3DKMT locking.
winex11: Use pthread for error handler locking.
winex11: Use pthread for xrandr locking.
winex11: Use pthread for xrender locking.
winex11: Use NtUserBuildHwndList for has_owned_popup implementation.
winex11: Use build_hwnd_list for X11DRV_DisplayDevices_Update implementation.
winex11: Use pthread_once in create_x11_physdev.
win32u: Expose public parts of user_thread_info in ntuser.h.
winex11: Use NtUserGetThreadInfo to access thread data.
winex11: Use TEB to store driver thread data.
winex11: Directly use ntdll in display_device_init mutex.
win32u: Move NtUserFindWindowEx implementation from user32.
win32u: Move NtUserSetMenuContextHelpId implementation from user32.
win32u: Move NtUserGetMenuItemRect implementation from user32.
win32u: Move NtUserSetMenu implemenetation from user32.
win32u: Move GetMenuInfo implementation from user32.
win32u: Move is_window_rect_full_screen implementation from winex11.
winex11: Use Unix environment variable in remove_startup_notification.
win32u: Move NtUserThunkedMenuInfo implementation from user32.
win32u: Move NtUserSetMenuDefaultItem implementation from user32.
win32u: Move NtUserSetClipboardViewer implementation from user32.
win32u: Move NtUserChangeClipboardChain implementation from user32.
win32u: Move EnumClipboardFormats implementation from user32.
winex11: Use a simple sdbm hash implementation in X11DRV_GetICMProfile.
winex11: Directly use ntdll in X11DRV_GetICMProfile.
Jinoh Kang (1):
include: Remove duplicate definitions of UOI_* macros.
Julian Rüger (1):
po: Update German translation.
Matteo Bruni (1):
d3dxof/tests: Remove redundant skips after ok() calls.
Mohamad Al-Jaf (2):
include: Add CMSMPEGDecoderMFT coclass.
include: Add CLSID_MSVPxDecoder declaration.
Nikolay Sivov (25):
evr/mixer: Implement GetAvailableVideoProcessorModes().
evr/mixer: Implement GetVideoProcessorCaps().
hlink: Use CRT allocation functions.
hlink: Return requested interface when creating IHlinkBrowseContext instance.
hlink: Return requested interface when creating IHlink instance.
hlink: Return correct requested interface from HlinkCreateFromMoniker().
hlink: Return requested interface from HlinkCreateFromString().
mfplat: Fix alignment used by audio buffers created with MFCreateMediaBufferFromMediaType().
wbemprox: Use CRT memory allocation functions.
wbemprox: Remove string duplication helper.
evr: Add IAMFilterMiscFlags interface.
d3dxof: Build without -DWINE_NO_LONG_TYPES.
d3dx10: Build without -DWINE_NO_LONG_TYPES.
ddrawex: Build without -DWINE_NO_LONG_TYPES.
ddrawex/tests: Build without -DWINE_NO_LONG_TYPES.
ddrawex/tests: Simplify refcount helper.
d3dxof/tests: Build without -DWINE_NO_LONG_TYPES.
d3dxof/tests: Simplify refcount helper.
ddraw: Build without -DWINE_NO_LONG_TYPES.
xmllite/tests: Use wide string literals.
gdi32: Use NtUserGetSysColor() directly.
dwrite/tests: Use safe table access helpers for GetFontSignature().
dwrite/tests: Fix context text.
wusa: Remove string duplication helper.
ddraw: Improve tracing format for unsigned fields.
Paul Gofman (5):
msvcp140: Implement _Copy_file().
kernelbase: Reset last error on success in CopyFileExW().
ntdll: Increase kernel stack size.
ntdll: Remove unused PTHREAD_STACK_MIN definition.
crypt32: Support CERT_QUERY_OBJECT_BLOB in CRYPT_QueryEmbeddedMessageObject().
Rafał Harabień (2):
user32: Use SWP_NOACTIVATE flag when resizing etched static control.
user32/tests: Remove duplicated SS_*RECT static control tests.
Rémi Bernon (23):
kernel32/tests: Add invalid pointer heap validation tests.
kernel32/tests: Add some GetProcessHeaps tests.
kernel32/tests: Add some HeapWalk tests.
kernel32/tests: Cleanup and add Heap(Query|Set)Information tests.
kernel32/tests: Add some HeapWalk tests for the LFH frontend.
kernel32/tests: Tweak tests results for w7pro64.
kernel32/tests: Reduce the number of GlobalAlloc size tests.
ntdll: Use a dedicated member for shared heap flag.
ntdll: Fix main heap struct layout and flags members.
kernelbase: Allocate global memory handle table dynamically.
include: Add Windows.Gaming.Input.RacingWheel runtimeclass declaration.
include: Remove nested namespaces in windows.gaming.input.forcefeedback.idl.
include: Add Windows.Gaming.Input.ForceFeedback.IForceFeedbackEffect interface declaration.
dinput/tests: Add tests for joystick with many axes and units.
dinput/tests: Add some IRawGameController_get_ForceFeedbackMotors tests.
dinput/tests: Queue IRP when the expect ret_status is STATUS_PENDING.
dinput/tests: Add more IForceFeedbackMotor and IAsyncOperation_boolean tests.
windows.gaming.input: Introduce Windows.Gaming.Input.RacingWheel activation factory.
windows.gaming.input: Implement IRacingWheelStatics interface for RacingWheel.
windows.gaming.input: Implement ICustomGameControllerFactory interface for RacingWheel.
windows.gaming.input: Implement IRacingWheelStatics2 interface for RacingWheel.
windows.gaming.input: Implement RacingWheel runtimeclass stub.
dinput/tests: Add some RacingWheel runtimeclass tests.
Timo Zuccarello (1):
winex11.drv: Do not assign reserved virtual key 0xE0 to key codes.
Zebediah Figura (27):
winegstreamer: Use WG_MAJOR_TYPE_UNKNOWN to mark a stream that should not be forced into a certain format.
winegstreamer: Explicitly disable streams in start_pipeline().
winegstreamer: Explicitly disable streams in parser_init_stream().
winegstreamer: Enable wg_parser streams on creation.
ntdll/tests: Add some tests for NtQueryDirectoryObject().
ntdll: Do not write the "context" parameter of NtQueryDirectoryObject on failure.
ntdll: Do not write the "ret_size" parameter of NtQueryDirectoryObject on failure.
server: Return STATUS_BUFFER_TOO_SMALL instead of STATUS_BUFFER_OVERFLOW from get_directory_entry.
kernelbase: Set user_lcid to the user locale, not the system locale.
ntdll: Return the required length from NtQueryDirectoryObject().
ntdll: Don't return STATUS_BUFFER_OVERFLOW if the buffer is too small to hold one entry.
ntdll: Write a null terminator in NtQueryDirectoryObject.
include: Add amva.h.
include: Add videoacc.idl.
quartz/tests: Test more VMR7 interfaces in all modes.
quartz/tests: Check for IAMVideoAccelerator.
quartz/vmr9: Stub IAMVideoAccelerator.
wined3d: Factor out context_gl_apply_texture_draw_state().
wined3d: Make wined3d_context_gl_set_draw_buffer() static.
user.exe: Implement SetSystemTimer() using SetTimer().
user32: Toggle the caret based on the timer ID in DispatchMessage().
user32: Update mouse tracking information based on the timer ID in DispatchMessage().
win32u: Remove the "proc" parameter to NtUserSetSystemTimer().
win32u: Do not call the lparam for WM_SYSTIMER messages.
user32: Do not call the lparam for WM_SYSTIMER messages.
setupapi: Avoid leaking subKey in SETUPDI_AddDeviceInterfaces().
ddraw/tests: Use winetest_push_context() in test_viewport().
Zhiyi Zhang (14):
include: Avoid a C++ keyword for RegisterUserApiHook().
kernel32/tests: Check against INVALID_HANDLE_VALUE for CreateActCtxW() return values.
kernel32/tests: Add more CreateActCtx() tests.
shell32: Activate context at ID 123 before loading control panel applets.
rundll32: Activate context at ID 123 before calling library functions.
appwiz.cpl: Enable visual styles.
inetcpl.cpl: Enable visual styles.
joy.cpl: Enable visual styles.
ieframe: Enable visual styles.
user32/tests: Avoid unnecessary display mode changes.
user32/tests: Test NUMCOLORS for display DCs.
win32u: Return -1 for NUMCOLORS with 8-bit display DCs.
include: Add windows.foundation.metadata.idl.
wintypes: Add stub dll.
Ziqing Hui (5):
d2d1/tests: Add tests for GetImageLocalBounds().
d2d1: Implement GetImageLocalBounds() for bitmap.
d2d1/tests: Add tests for context unit mode.
d2d1: Implement GetUnitMode().
d2d1: Implement SetUnitMode().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 6.0.4 is now available.
What's new in this release:
- Various bug fixes
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0.4.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.0.4.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.4 (total 42):
12732 Nota Bene crashes on install
26350 Dungeons demo (OGRE) fails to load its plugins (LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH and relative path)
32183 Cannot open console device read only, then read from it to get input
39699 EDT for Windows installer crashes inside wine`s hhctrl.ocx
41098 Descent 3 (GOG version) has problem when running with OpenGL renderer (Nvidia proprietary drivers)
42030 winedbg: Internal crash at 0x9f58fd40
44202 undname.c fails to parse symbols with rvalue-reference semantics '&&'
47287 Accessible Event Watcher Tool 'accevent.exe' from Windows 10 SDK (10.0.17763.x) crashes on unimplemented function oleacc.dll.AccessibleObjectFromEvent
48631 Multiple games display text as squares (Death to Spies: Moment of Truth, Shadow Warrior, Resident Evil 4 HD)
48950 NVDA needs oleacc.AccessibleObjectFromPoint implementation for mouse tracking
50370 Gothic 1 doesn't start correctly when screen resolution of the game matches display resolution
50526 ConEmu wineconsole Ctrl+m has different behavior
50714 YooSee CMS client 10.0.0.53 crashes after login since Wine 5.12 (ntdll built as PE)
51163 WinOffice Pro 5.3 stops after splashscreen, needs WMI class SoftwareLicensingProduct
51195 Lara Croft and the Temple of Osiris doesn't launch
51220 version:info - In Wine the GetFileVersionInfoEx() checks fail in non-English locales
51396 cl.exe 64bit fails with internal compiler error, needs support for separated code segments in vcruntime140_1
51598 cmd.exe crashes on "if exist" without arguments
51821 EVE Online Client Crashes Due to differences in how Wine and Windows handle LdrGetDllPath with dwFlags 0x8 and relative path
51860 Missing include for uid_t on musl-based systems
51864 VeraCrypt Installer for 1.24-Update7 (Win8+) fails with HRESULT 0x800288BD
51911 vbscript does not handle strings in if clauses
51938 Safe Exam Browser needs "DNSDomain" from Win32_NetworkAdapterConfiguration
51959 Missing procedure GetDayLightFlag
51968 Winaero WEI Tool: Crash due to C:\windows\performance\winsat\datastore missing
51978 Autodesk Fusion 360 crashes on unimplemented function msvcp140.dll.?table@?$ctype@D@std@@QEBAPEBFXZ
51983 foobar2000 v1.5.1+ crashes on startup with Wine v6.6+ with Windows version set to "Windows 10"
52076 Wrong icons placement when using a theme
52082 Ace Ventura (CD-ROM) crashes on start
52102 outSPOKEN 3.0 demo crashes on unimplemented function krnl386.exe16.GetLPErrMode
52141 NetAPI detection in configure is broken
52173 Kodi crashes on unimplemented function wsdapi.dll.WSDCreateDiscoveryProvider
52200 Yamizome Liberator (demo): In-game video isn't played.
52220 TMIDI Player, Cherry: Playback with multiple MIDI ports is broken
52224 inetmib1:main test times out in linux
52298 Opening PPT with Freeoffice Presentations crashes on unimplemented function ole32.dll.OleConvertIStorageToOLESTREAMEx
52327 Wrong WM_CONTEXTMENU message default processing
52349 Vortex Mod Manager Starts but Infinitely Loads
52378 Python WMI module: AttributeError: wbemErrInvalidQuery
52494 shell32 progman_dde tests crash if run immediately after prefix creation
52583 ApiSetView does not display export ordinals correctly
52626 MahjongSoul needs unimplemented function combase.dll.RoSetErrorReportingFlags
----------------------------------------------------------------
Changes since 6.0.3:
Akihiro Sagawa (1):
quartz: Fix a race in IMediaFilter::Pause().
Alex Henrie (2):
krnl386: Add GetLPErrMode stub.
explorer: Only try to destroy the IShellWindows object if it exists.
Alexandre Julliard (3):
configure: Fix the netapi check.
krnl386.exe: Page-align the GlobalAlloc() size when the selector limit is in pages.
user.exe: Make sure that the thunk selector doesn't get freed.
Bernhard Kölbl (1):
oleaut32: Allow the registration of 64bit typelibs from a 32bit context.
Bernhard Übelacker (2):
hhctrl.ocx: Handle only the number of bytes given in html_fragment_len.
inetmib1: Fix endianess issue with dwLocalAddr and dwLocalPort.
Christian Costa (1):
d3dx9: Also check for a valid alpha channel for TGA images.
Connor McAdams (2):
oleacc: Implement AccessibleObjectFromEvent.
winex11.drv: Add mutable pixel format awareness.
Derek Lesho (1):
kernelbase: Fix parameter order of FindResourceExW call for non-localized path.
Doug Lyons (1):
msvcrt: Do not acquire fd lock in msvcrt_create_io_inherit_block.
Eric Pouech (2):
winedbg: Fix command line arguments parsing.
cmd: Don't crash on 'if exist' without parameter.
Gabriel Ivăncescu (3):
comctl32: Redraw children when the combo box is dropped down.
user32: Redraw children when the combo box is dropped down.
ddraw: Use WINED3D_SWAPCHAIN_NO_WINDOW_CHANGES only if window is not in foreground.
Gerald Pfeifer (1):
configure: Diagnose if NetAPI is not present.
Hugh McMaster (1):
conhost: Process Ctrl-M key input.
Huw D. M. Davies (1):
user32: Set WM_CONTEXTMENU's wparam to the child window's handle.
Ismael Luceno (1):
server: Fix missing include for uid_t.
Jacek Caban (1):
ntdll: Fix handling \\.\CON path in RtlDosPathNameToNtPathName.
Jacek Konieczny (1):
winealsa.drv: Use separate port for each output device.
Louis Lenders (5):
wbemprox: Add empty DNSDomain to Win32_NetworkAdapterConfiguration.
combase: Add stub for RoOriginateError.
wsdapi: Add stub for WSDCreateDiscoveryProvider.
wbemprox: Add some properties of SoftwareLicensingProduct class.
ole32: Add stub for OleConvertIStorageToOLESTREAMEx.
Loïc Rebmeister (1):
loader: Create performance\winsat\datastore on prefix creation.
Matteo Bruni (1):
combase: Add RoSetErrorReportingFlags() stub.
Nick Fox (2):
kernel32: Add tests for LdrGetDllPath with LOAD_WITH_ALTERED_SEARCH_PATH.
ntdll: Fix LdrGetDllPath with LOAD_WITH_ALTERED_SEARCH_PATH without a path.
Nikolay Sivov (3):
d3d11: Always initialize out view pointer in CreateRenderTargetView().
include: Add WbemErrorEnum error codes.
comctl32/listview: Initialize subitem text buffer before drawing each subitem.
Olivier F. R. Dierick (1):
taskschd: Set count to zero in regtasks_get_Count stub.
Piotr Caban (5):
msvcp100: Export ctype<char>::table function.
oleacc: Add AccessibleObjectFromPoint implementation.
msvcrt: Don't use GetDaylightFlag function in _ftime64.
vcruntime140_1: Add support for exception separated code segments.
ucrtbase: Add support for r-value demangling in unDName.
Robert Wilhelm (1):
vbscript: Support VT_BSTR in stack_pop_bool.
Rémi Bernon (1):
ntdll: Use the unrolled memset from msvcrt.
Thomas Faber (1):
msvcrt/tests: Show that spawn does not require locking of fds.
Zebediah Figura (1):
ntdll/tests: Add more tests for RtlDosPathNameToNtPathName_U().
Zhiyi Zhang (1):
comctl32/button: Support image list margin for buttons with BS_CENTER or BS_VCENTER.
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 7.6 is now available.
What's new in this release:
- Mono engine updated to version 7.2.0.
- More progress on the PE conversion of graphics drivers.
- Locale support using the new CLDR-based database.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.6.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.6.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.6 (total 17):
42309 The Crew (Uplay) crashes at start
50158 Oculus Runtime won't start: "Could not load file or assembly 'Daybreak'"
51437 If Windows version changes from 7 to 10, Microsoft Edge calls unimplemented function uiautomationcore.dll.UiaRaiseAutomationPropertyChangedEvent
52340 wine-mono + RMS Express: COM Port errors connecting to radios
52401 Improper synchronization in sock_recv/sock_send leads to arbitrary reordering of completion of I/O requests
52616 SteelSeries GG installer crashes on unimplemented function setupapi.dll.SetupQueryInfVersionInformationW
52628 game frozen after opening due to infinite loop in winmm.mmioDescend()
52638 The 64-bit winmm:mci fails and crashes in test_openCloseWAVE() in Wine
52652 Adobe Photoshop 7.0 crashes on startup
52658 Swisslog freezes on startup
52660 chunk allocator for GL uniform buffers kills performance in World of Warships
52668 Sparx Enterprise architect v15.2 1560 crashing on wine 7.4
52698 JW Scheduler installer fails to start: "Requires Microsoft .NET Framework 4.5.2"
52713 Nota Bene installer has black background
52721 d3dx9_36:effect, d3dx11_42:d3dx11 and d3dx11_43:d3dx11 broken by use of vkd3d_shader_compile() for D3DCompile2()
52722 Winetricks dotnet installation hangs at wineserver -w
52728 wine-7.5 build fails in Ubuntu 18.04
----------------------------------------------------------------
Changes since 7.5:
Alex Henrie (2):
shell32: Fix sizeof argument in DoPaste (Coverity).
mciwave: Fix bad free in MCI_SendCommandAsync (Coverity).
Alexandre Julliard (60):
kernelbase: Reimplement LOCALE_SNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_SPARENT in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LCIDToLocaleName() using the locale.nls data.
kernelbase: Reimplement LOCALE_ILANGUAGE/IDEFAULTLANGUAGE in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*LANGNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*CTRYNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*DISPLAYNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*DEFAULTCODEPAGE in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*DAYNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*MONTHNAME in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*INFINITY/NAN in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*PERCENT in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*AM/PM in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_*CURRNAME/CURRENCY in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_ICOUNTRY/IGEOID in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_SNATIVEDIGITS in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement date/time format strings in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement calendar options in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement misc format values in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_FONTSIGNATURE/SOPENTYPELANGUAGETAG in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement LOCALE_SSORTNAME in GetLocaleInfoW/Ex.
kernelbase: Reimplement number formatting values in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement currency formatting values in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement misc locale info values in GetLocaleInfoW/Ex using the locale.nls data.
kernelbase: Reimplement values computed from currency formats in GetLocaleInfoW/Ex.
kernelbase: Reimplement values computed from date/time formats in GetLocaleInfoW/Ex.
kernelbase: Reimplement fetching customized values from the registry in GetLocaleInfoW/Ex.
kernelbase: Reimplement updating the locale values in the registry on locale change.
kernelbase: Reimplement SetLocaleInfoW().
kernelbase: Remove the old GetLocaleInfoEx/W implementation.
make_unicode: Generate the GeoID table in locale.nls.
kernelbase: Reimplement the Geo ID functions using the locale.nls data.
kernel32: Move the language group resources to kernelbase.
kernel32: Move the error message table to kernelbase.
msvcrt: Use EnumSystemLocalesEx instead of directly accessing kernel32 resources.
kernel32: Remove the old locale information stored in resources.
ntdll: Recognize more script names in Unix locales.
kernelbase: Set system/user locales by name if they have no LCID.
kernelbase: Check the locale name instead of the LCID to detect changes.
oleaut32: Silence error message for unknown languages.
widl: Silence error message for unknown languages.
wrc: Remove the verify translation mode.
wrc: Remove resource dumping support.
wrc: Store language as a simple integer.
wrc: Store version and characteristics as simple integers.
wrc: Use the locale.nls data to determine a language's codepage.
wrc: Avoid loading locale.nls when not necessary.
makedep: Add dependency on locale.nls for rc files.
make_unicode: Generate the calendar table in locale.nls.
kernelbase: Reimplement GetCalendarInfoEx/W using the locale.nls data.
kernel32: Simplify GetGeoInfoA() implementation.
kernel32: Simplify Get/SetCalendarInfoA() implementation.
kernelbase: Fix IsValidLocale() and GetLocaleInfo() with special LOCALE_* identifiers.
kernelbase: Implement NlsValidateLocale().
kernelbase: Reimplement Internal_EnumCalendarInfo() using the locale.nls data.
kernelbase: Reimplement Internal_EnumTimeFormats() using the locale.nls data.
kernelbase: Reimplement Internal_EnumDateFormats() using the locale.nls data.
make_unicode: Update to CLDR version 41.
xml2: Import upstream release 2.9.13.
xslt: Import upstream release 1.1.35.
Andrew Eikum (2):
evr/presenter: Fix hns-to-msec conversion multiplier.
evr/presenter: Place early samples back to the front of the queue.
Bernhard Kölbl (15):
windows.media.speech: Add IVector<HSTRING>.
windows.media.speech: Add IVectorView<HSTRING>.
windows.media.speech: Add IIterable<HSTRING> stubs.
windows.media.speech: Add IIterator<HSTRING>.
windows.media.speech: Store speech commands in listconstraint.
windows.media.speech: Add IVector<Inspectable*>.
windows.media.speech: Add IVectorView<Inspectable*>.
windows.media.speech: Add IIterable<IInspectable*> stubs.
windows.media.speech: Add IIterator<Inspectable*>.
windows.media.speech: Implement ISpeechRecognizer_get_Constraints.
include/winerror.h: Add missing WinRT HRESULT codes.
include/windows.foundation.collections.idl: Set correct return type for IAsyncOperation_GetResults.
windows.media.speech: Add tests for IAsyncOperation.
windows.media.speech: Add IAsyncOperation<Inspectable*> stub.
windows.media.speech: Add IAsyncInfo stub to IAsyncOperation<Inspectable*>.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Daniel Lehman (3):
ntdll/tests: Add some CloseHandle exception tests.
ntdll/tests: Test return values from CloseHandle.
ntdll: Return success for magic handles.
Dmitry Timoshkov (7):
kernel32/tests: Add a test to show that services.exe is supposed to run in the session 0.
wined3d: Avoid calling _strnicmp() with limit -1.
sc: Add support for the 'query' command.
sc: Print service status after 'start' and 'stop' commands.
sc: Don't silently fail when something doesn't work as expected in a few more places.
dwrite/tests: Add some fallback tests for Segoe UI Symbol.
ucrtbase/tests: Add a test for wcsnicmp() with limit -1.
Eric Pouech (14):
shell32: Always allocate a whole ITEMIDLIST structure.
mciwave: Correctly handle error return status from mmioRead.
winmm: Properly handle mmioRead/mmioWrite in case of errors.
urlmon: Use I width modifier instead of casting to DWORD.
comdlg32: Use I width modifier instead of casting to LONG.
mciavi32: Use I width modifier instead of casting to DWORD.
iphlpapi: Don't cast SIZE_T to DWORD in trace, use %I instead.
mstask: Don't cast size_t to DWORD in trace, use %I instead.
schedvc: Don't cast size_t to DWORD in trace, use %I instead.
dmstyle: Don't cast size_t to DWORD in trace, use %I instead.
dbghelp: Trace 64-bit integers with I64 width modifier.
dxdiagn: Use I64 width modifier for 64-bit integers in printf.
snmpapi: Trace 64-bit integers with I64 width modifier.
winedbg: Trace 64-bit integers with I64 width modifier.
Esme Povirk (3):
mscoree: Update Wine Mono to 7.2.0.
mscoree/tests: Build loadpaths.exe as GUI instead of CUI.
mscoree/tests: Create csc.exe process as detached.
Georg Lehmann (2):
winevulkan: Update to VK spec version 1.3.210.
winevulkan: Update to VK spec version 1.3.211.
Gijs Vermeulen (1):
setupapi: Add SetupQueryInfVersionInformationA/W stub.
Hans Leidekker (8):
crypt32: Correctly free memory in CNG_ImportRSAPubKey().
crypt32: Consistently use CryptMemAlloc/Free().
crypt32: Use CRT allocation functions.
crypt32/tests: Use wide character string literals.
crypt32/tests: Add more OCSP response decoding tests.
bcrypt: Fix array index in BCryptEnumAlgorithms().
bcrypt: Implement BCryptFreeBuffer().
cryptnet: Support verifying certificate revocation with OCSP.
Henri Verbeet (3):
wined3d: Return the correct length from config_list_get_value().
wined3d: Add GPU information for NVIDIA Tesla T4.
wined3d: Spawn a separate thread to adjust the window state of windows belonging to other threads.
Huw D. M. Davies (7):
winealsa: Add missing includes.
wineoss: Introduce a test_connect syscall.
wineoss: Pass a buffer to oss_clean_devnode().
wineoss: Add a helper to open the device.
wineoss: Move get_ossdevice_from_guid() earlier in the file.
wineoss: Move get_endpoint_ids to the unixlib.
combase: Don't start dllhost if the CLSID key doesn't exist.
Jacek Caban (37):
win32u: Return client menu name from NtUserUnregisterClass.
user32: Introduce reply_message_result helper.
win32u: Move reply_message_result implementation from user32.
user32: Move unpack_message call to User32CallWindowProc.
win32u: Move process_sent_messages implementation from user32.
win32u: Move NtUserPeekMessage implementation from user32.
win32u: Move NtUserGetMessage implementation from user32.
win32u: Move NtUserMsgWaitForMultipleObjectsEx implementation from user32.
win32u: Move NtUserWaitForInputIdle implementation from user32.
user32: Avoid internal structs in post_dde_message.
win32u: Move send_internal_message_timeout implementation from user32.
win32u: Move __wine_send_input implementation from user32.
win32u: Move NtUserSendInput implementation from user32.
win32u: Return LRESULT from NtUserMessageCall.
win32u: Use public declaration for NtUserPostMessage.
win32u: Move SendMessageTimeoutW implementation from user32.
win32u: Move SendMessageW implementation from user32.
user32: Use NtUserMessageCall for SendMessageTimeoutA implementation.
user32: Use NtUserMessageCall for SendMessageA implementation.
win32u: Move SendNotifyMessageW implementation from user32.
user32: Use NtUserMessageCall for SendNotifyMessageA implementation.
win32u: Move SendMessageCallbackW implementation from user32.
user32: Use NtUserMessageCall for SendMessageCallbackA implementation.
win32u: Add missing return in NtUserExitingThread implementation.
win32u: Move NtUserPostThreadMessage implementation from user32.
win32u: Move NtUserPostMessage implementation from user32.
win32u: Move process_hardware_message implementation from user32.
user.exe: Remove no longer used wait_message16.
win32u: Move NtUserCloseClipboard implementation from user32.
win32u: Improve string duplication helpers.
win32u: Move default window text setting to from user32.
win32u: Move WM_SETICON implementation from user32.
win32u: Move IsWindowEnabled implementation from user32.
win32u: Partially move WM_SYSCOMMAND implementation from user32.
win32u: Move __wine_set_user_driver implementation from user32.
win32u: Don't use CDECL for user driver functions.
win32u: Use more consistent NtUserMessageCall constant names.
Jan Sikorski (2):
wined3d: Increase the CS queue size.
wined3d: Reset and reuse Vulkan descriptor pools.
Jinoh Kang (2):
riched20/tests: Add tests for IRichEditOleCallback_QueryInsertObject.
riched20: Implement callback to IRichEditOleCallback_QueryInsertObject.
Lauri Kenttä (1):
po: Update Finnish translation.
Matteo Bruni (5):
d3dcompiler: Set initial_filename in D3DCompile2().
d3dx11/tests: Fix tests broken by using the HLSL compiler from vkd3d-shader.
d3dx9/tests: Fix tests broken by using the HLSL compiler from vkd3d-shader.
d3dcompiler: Always use vkd3d-shader's preprocessor.
d3dx9/tests: Increase tolerance in a quaternion test.
Mohamad Al-Jaf (9):
hid: Implement HidD_GetPhysicalDescriptor.
propsys: Implement VariantToStringWithDefault.
propsys/tests: Add VariantToStringWithDefault tests.
ncrypt: Map STATUS_NOT_SUPPORTED to NTE_NOT_SUPPORTED.
ncrypt: Warn on invalid flags in NCryptImportKey.
wusa: Support wow64 architecture identifier.
ncrypt: Implement NCryptIsAlgSupported.
ncrypt/tests: Add NCryptIsAlgSupported tests.
ncrypt: Map STATUS_NO_MEMORY to NTE_NO_MEMORY.
Nikolay Sivov (43):
browseui: Use CRT memory allocation functions.
browseui/tests: Remove string conversion helper.
dbgeng: Use CRT allocation functions.
mf/session: Trace seek position in Start().
opcservices: Use CRT allocation functions.
opcservices/tests: Use wide strings in test data.
xmllite: Use CRT allocation functions.
xmllite/tests: Use CRT allocation functions.
wer: Use CRT memory allocation functions.
scrobj: Use CRT allocation functions.
scrobj: Fix wrong cleanup logic for factory object.
scrobj/tests: Use CRT memory allocation functions.
fusion: Use CRT memory allocation functions.
sxs: Use CRT memory allocation functions.
user32: Add suspend-resume notification API stubs.
atl: Use CRT allocation functions.
sxs: Use CRT memory allocation functions.
explorerframe: Use CRT memory allocation functions.
comsvcs: Use CRT memory allocation functions.
dxva2: Use CRT memory allocation functions.
mfmediaengine/tests: Remove unused header include.
sxs/tests: Use CRT memory allocation functions.
msxml3/tests: Use CRT memory allocation functions.
directmanipulation: Use CRT memory allocation functions.
explorerframe/tests: Use CRT memory allocation functions.
uianimation: Use CRT allocation functions.
include: Add IDebugControl4 definition.
dbgeng: Update to IDebugControl4 stub.
include: Add IDebugAdvanced3 definition.
dbgeng: Update to IDebugAdvanced3 stub.
shell32/tests: Use CRT memory allocation functions.
xmllite/tests: Use wide string literals for the writer tests.
evr/presenter: Make GetCurrentImage() work without output window.
mf/session: Use correct format specifier for start position.
localui/tests: Use CRT allocation functions.
qmgr: Use CRT allocation functions.
wmp: Use CRT allocation functions.
wmic: Use CRT allocation functions.
wmp/tests: Remove unused include.
d3drm: Build without -DWINE_NO_LONG_TYPES.
dispex: Use CRT memory allocation functions.
dispex/tests: Use CRT allocation functions.
evr: Cleanup class factory methods.
Paul Gofman (5):
msvcrt/tests: Add test for ioinfo->exflag.
msvcr80: Fix ioinfo structure definition.
msvcrt: Use newer ioinfo structure for _MSVC_VER >= 80.
msvcr90/tests: Test ioinfo structure.
ucrtbase: Update ioinfo structure.
Piotr Caban (2):
oleacc/tests: Fix crash when current thread is not in foreground state.
msvcr100: Improve ThreadScheduler_ScheduleTask_loc stub.
Rafał Harabień (5):
comctl32/tests: Add more static control tests.
comctl32: Fix handling of SS_ETCHEDHORZ/SS_ETCHEDVERT static control styles.
comctl32: Send WM_CTLCOLORSTATIC for all static control types.
comctl32/tests: Fix invalidation in static control tests.
comctl32/tests: Remove now unused TODO_COUNT in static control tests.
Rémi Bernon (48):
kernel32/tests: Remove GlobalMemoryStatus loop and relax the checks.
winegstreamer: Implement H264 decoder GetInputStreamInfo.
winegstreamer: Implement H264 decoder GetOutputStreamInfo.
winegstreamer: Try creating a wg_transform in the H264 decoder.
winegstreamer: Use a GstBufferList for wg_transform input queue.
strmbase: Add a separate id for pins.
qedit: Use the right SampleGrabber pin names.
qcap: Use the right AVICo pin names.
quartz: Use the right ACMWrapper pin names.
quartz: Use the right AVIDec pin names.
quartz: Use the right VideoRenderer pin names.
kernel32/tests: Use 0xdeadbeef directly instead of a custom define.
kernel32/tests: Clean GlobalAlloc tests and move them together.
kernel32/tests: Clean LocalAlloc tests and move them together.
kernel32/tests: Add some HGLOBAL/HLOCAL limits tests.
kernel32/tests: Add some HGLOBAL/HLOCAL entry layout tests.
kernel32: Fix indentation of Global* functions.
kernel32: Make Global* traces and identifiers more consistent.
kernelbase: Fix indentation of LocalReAlloc.
kernelbase: Make (Global|Local)* traces and identifiers more consistent.
mf/tests: Fix incorrect array index when formatting blob value.
mf/tests: Increase the H264 decoder tests video frame size.
dinput/tests: Add some HidD_GetPhysicalDescriptor tests.
kernelbase: Check handle validity in unsafe_mem_from_HLOCAL.
kernelbase: Check pointer validity in unsafe_ptr_from_HLOCAL.
kernel32: Synchronize the HLOCAL helpers with kernelbase.
kernelbase: Implement internal KernelBaseGetGlobalData.
kernelbase: Allocate HLOCAL / HGLOBAL from a static handle table.
winegstreamer: Use a GstAtomicQueue for wg_transform output queue.
winegstreamer: Implement H264 decoder Process(Input|Output).
winegstreamer: Return S_OK from H264 decoder ProcessMessage.
kernelbase: Use the same HLOCAL entry pointer alignment as native.
kernelbase: Remove unnecessary handler from LocalLock.
kernelbase: Remove unnecessary handler from LocalUnlock.
kernelbase: Use the same HLOCAL flags / lock layout as native.
kernel32/tests: Add broken results for GlobalMemoryStatus test.
kernel32/tests: Cleanup and add more heap layout tests.
include: Add CWMAEncMediaObject class declaration to wmcodecdsp.idl.
include: Add CCOlorConvertDMO class declaration to wmcodecdsp.idl.
include: Add some MEDIASUBTYPE_V* GUIDs to wmcodecdsp.idl.
include: Add MFSampleExtension_CleanPoint to mfapi.h.
include: Add ACTIVATION_CONTEXT_SECTION_WINRT_ACTIVATABLE_CLASSES declaration.
kernel32/tests: Add some activatableClass manifest attribute tests.
ntdll: Support activatableClass activation context elements.
combase/tests: Add some RoGetActivationFactory tests with manifest.
kernel32/tests: Load all test function pointers on init.
kernel32/tests: Cleanup heap allocation functions tests.
kernel32/tests: Cleanup heap pointer alignment tests.
Santino Mazza (2):
ncrypt/tests: Test for NCryptVerifySignature.
ncrypt: Implement NCryptVerifySignature.
Sven Baars (2):
winemenubuilder: Search for an executable file when no file extension is provided.
winemenubuilder: Use the full path name when extracting an icon.
Zebediah Figura (11):
shell32: Use COM wrappers for IShellPropSheetExt and IShellExtInit.
user32: Remove redundant #ifdef around #undef.
user32: Compile some functions only on 64-bit architectures.
amstream: Use CRT memory allocators.
maintainers: Update the path to strmbase.
include: Add more URL_* flags.
winegstreamer: Disconnect source pins before calling wg_parser_disconnect().
winegstreamer: Protect access to the "enabled" field.
winegstreamer: Unblock waits in sink_chain_cb() when disabling a stream.
winegstreamer: Add traces to Unix call wrappers.
qcap/filewriter: Avoid casting to DWORD in an ERR message.
Zhiyi Zhang (5):
uxtheme: Check only the lower 16 bits of the return value of WM_ERASEBKGND.
uxtheme/tests: Test WM_ERASEBKGND return value from custom dialog procedures.
uxtheme: Return correct WM_ERASEBKGND result from custom dialog procedures.
uxtheme: Remove a redundant condition check.
setupapi: Return CR_SUCCESS for CM_Get_DevNode_Status{_Ex}.
Ziqing Hui (14):
d2d1: Fix a typo.
include: Add defines for ID2D1InkStyle.
include: Add defines for ID2D1Ink.
include: Add defines for ID2D1GradientMesh.
include: Add defines for ID2D1ImageSource.
include: Add defines for ID2D1ImageSourceFromWic.
include: Add defines for ID2D1TransformedImageSource.
include: Add defines for ID2D1DeviceContext2.
include: Add defines for ID2D1Device2.
include: Add defines for ID2D1Factory3.
include: Add defines for D2D1YCbCr effect.
include: Add defines for D2D1HighlightsShadows effect.
d2d1: Add stubs for ID2D1Factory3.
d2d1/tests: Add tests for D2D1Grayscale effect.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 7.5 is now available.
What's new in this release:
- ALSA driver converted to PE.
- Locale database generated from Unicode CLDR.
- HLSL compiler support with the bundled vkd3d.
- Initial support for the OCSP protocol.
- More cleanups to support 'long' type.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.5.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.5.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.5 (total 28):
16221 Nota Bene requires AUTOEXEC.NT
16222 Nota Bene requires CONFIG.NT
33188 wine explorer: wrong behavior when dragging with no items selected
34259 cygwin 2.819 installer hangs during postinstall
45422 ./tools/sfnt2fon/sfnt2fon.c shows a heap buffer overflow in fill_fontinfo()
46648 Core Temp 1.13 fails to start
50270 Operation Lovecraft: Fallen Doll crashes
50869 Killing Wine process in Wine 6.5 doesn't terminate the application because of the new use of start.exe
51017 Multiple programs (Microsoft PowerToys, MS Windows terminal) crash inside RegOpenKeyExW
51923 Minecraft for Windows 10 needs api-ms-win-core-windowserrorreporting-l1-1-1.dll
52048 CreateProcess() might not spawn console for new process
52294 DYSMANTLE needs d3d11_device_CreateRasterizerState1 implementation
52520 Samsung Magician 7.x crashes on unimplemented function setupapi.dll.SetupDiGetClassRegistryPropertyW
52574 PlayOnline Viewer crashes after 10-20 seconds
52580 Minecraft (Windows 10 edition) needs api-ms-win-core-memory-l1-1-5.dll
52613 mIRC: text from clipboard is pasted twice in text boxes
52623 Crash of `not_dll` test from `windows-rs` due missing implementation of `winspool.drv.GetSpoolFileHandle`
52645 McAfee "FRP" removable media encryption client crashes on unimplemented function shlwapi.dll.PathMatchSpecExW
52651 IrfanView 4.59 crashes on startup
52654 Multiple programs crash due to window class regression (QuickPar 0.9.1, HeidiSQL, SolSuite, IP super camera, ATPDraw, KakaoTalk)
52664 x86_64 bit vkd3d broken in --without-mingw build
52667 DTS Master Audio Suite can't select save file location when wine's "Light" theme is used
52669 GRID 2 crashes on launch
52670 The Evil Within 2 crashes on launch
52705 IRichEditOle::GetObject does not set REOBJECT's cp correctly
52711 Cakewalk Pro Audio 9.0 no longer works in wine 7.4
52717 dxgi:dxgi fails because DXGI_STATUS_OCCLUDED != S_OK
52725 Audacity 2.4.2 "Play" keyboard shortcut stopped working
----------------------------------------------------------------
Changes since 7.4:
Alex Henrie (1):
po: Update Catalan translation.
Alexandre Julliard (38):
dwrite: Only use __builtin_popcount in PE builds.
wined3d: Only use __builtin_popcount in PE builds.
vkd3d: Only use __builtin_popcount in PE builds.
mlang: Use a registry script to register codepages.
mlang: Register MIME charsets from the registry script.
mlang: Use EnumSystemLocalesEx() to enumerate locales.
mlang/tests: Don't test all possible invalid codepages.
mlang: Skip Unicode codepages in GetCharCodePages().
mlang: Store the codepage data in Unicode.
make_unicode: Generate locale.nls using the Unicode CLDR data.
ntdll: Add a helper function to map a section.
ntdll: Implement NtInitializeNlsFiles().
wow64: Add a wrapper for NtInitializeNlsFiles().
ntdll: Implement RtlGetLocaleFileMappingAddress().
kernel32/tests: Add tests for NtInitializeNlsFiles() and RtlGetLocaleFileMappingAddress().
wow64win: Add missing syscall for NtUserGetAtomName().
wow64win: Add missing syscall for NtUserGetClassName().
mlang: Skip locales that can't be converted to rfc1766 format.
po: Regenerate po files.
include: Add some structures for the undocumented locale.nls layout.
ntdll: Load the locale.nls file at startup.
ntdll: Reimplement RtlLocaleNameToLcid() using the locale.nls data.
ntdll: Implement RtlIsValidLocaleName().
ntdll: Implement RtlLcidToLocaleName().
ntdll: Use RtlLcidToLocaleName() in the preferred UI language stub.
ntdll: Move user/system locale initialization to ntdll.
ntdll: Support UTF-8 codepage in RtlInitCodePageTable().
ntdll/tests: Fix string test for UTF-8 default codepage.
kernel32/tests: Fix codepage test for UTF-8 default codepage.
kernelbase: Load the locale.nls file at startup.
kernelbase: Reimplement IsValidLocaleName() using the locale.nls data.
kernelbase: Reimplement IsValidLocale() using the locale.nls data.
kernelbase: Reimplement ConvertDefaultLocale() using the locale.nls data.
kernelbase: Reimplement LocaleNameToLCID() using the locale.nls data.
kernelbase: Reimplement EnumUILanguages() using the locale.nls data.
kernelbase: Reimplement EnumSystemLocalesA/W/Ex using the locale.nls data.
make_unicode: Generate the language groups registry keys.
configure: Try to detect a C99 flag for the cross compiler.
Alistair Leslie-Hughes (1):
kernelbase: Trace not supported flags in CopyFileExW.
Andrew Eikum (1):
windows.media.speech: Add ISpeechSynthesizer2 stub.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Austin English (1):
winspool: Add GetSpoolFileHandle() stub.
Bernhard Kölbl (10):
windows.media.speech: Add IAgileObject to SpeechRecognizer.
include/windows.media.speechrecognition.idl: Add SpeechRecognitionListConstraint class.
windows.media.speech/tests: Add tests for SpeechRecognitionListConstraint.
windows.media.speech: Add SpeechRecognitionListConstraint statics stub.
windows.media.speech: Add SpeechRecognitionListConstraint stub.
windows.media.speech: Implement ISpeechRecognitionConstraint isEnabled.
windows.media.speech: Add SpeechContinousRecognitionSession stub.
windows.media.speech: Implement ISpeechRecognizer2_get_ContinuousRecognitionSession.
windows.media.speech: Implement ResultGenerated event.
windows.media.speech: Implement Completed event.
Brendan Shanks (1):
win32u: Remove workaround for Mac OS X 10.4 and 10.5.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Daniel Lehman (5):
server: Always close previous IRP handle.
kernel32/tests: Add test for FileTimeToSystemTime.
kernelbase: Check for invalid value in FileTimeToSystemTime.
propsys: Implement InitVariantFromFileTime.
propsys/tests: Add some InitVariantFromFileTime tests.
Dmitry Timoshkov (5):
combase: Always pass explicit access to the registry helpers.
combase: Make ProgIDFromCLSID() work in WoW64 setup.
combase: Execute dllhost.exe for correct architecture in a WoW64 setup.
sc: Fix parsing parameter name in the 'switch=param' constructs.
sc: Don't silently fail when something doesn't work as expected.
Eric Pouech (57):
oleaut32/tests: Convert UI8 to existing integer test scheme.
oleaut32/tests: Convert UI8Copy to existing integer test scheme.
oleaut32/tests: Ensure (re)definition of EXPECTRES for all integer types.
ntdll/tests: Use correct integral type.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
oleaut32/tests: Use correct integral type.
oleaut32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types.
kernel32/tests: Add some console tests about creating cui vs gui processes.
services: Start services detached from console.
start: Force no console creation when using start /exec.
kernelbase: Handle corner case in CreateProcess.
dxgi/tests: Build without -DWINE_NO_LONG_TYPES.
dxgi: Build without -DWINE_NO_LONG_TYPES.
d3d12/tests: Build without -DWINE_NO_LONG_TYPES.
d3d12: Build without -DWINE_NO_LONG_TYPES.
user32/tests: Finalize migration to long types.
ntdll/tests: Enable compilation with long types in atom.c.
ntdll/tests: Enable compilation with long types in directory.c.
ntdll/tests: Enable compilation with long types in error.c.
ntdll/tests: Enable compilation with long types in change.c.
ntdll/tests: Enable compilation with long types in exception.c.
ntdll/tests: Enable compilation with long types in env.c.
ntdll/tests: Enable compilation with long types in large_int.c
ntdll/tests: Enable compilation with long types in om.c.
ntdll/tests: Enable compilation with long types in file.c.
winedbg: Get rid of dbg_outputW helper.
winedbg: Use Unicode APIs for process/thread enumeration.
winedbg: Get rid of dbg_W2A helper.
ntdll/tests: Enable compilation with long types in pipe.c.
ntdll/tests: Enable compilation with long types in port.c.
ntdll/tests: Enable compilation with long types in info.c.
ntdll/tests: Enable compilation with long types in reg.c.
ntdll/tests: Enable compilation with long types in path.c.
ntdll/tests: Enable compilation with long types in string.c.
ntdll/tests: Enable compilation with long types in rtlbitmap.c.
ntdll/tests: Enable compilation with long types in sync.c.
ntdll/tests: Enable compilation with long types in rtlstr.c.
ntdll/tests: Enable compilation with long types in rtl.c.
ntdll/tests: Enable compilation with long types in thread.c.
ntdll/tests: Enable compilation with long types in threadpool.c.
ntdll/tests: Enable compilation with long types in time.c.
ntdll/tests: Enable compilation with long types in virtual.c.
ntdll/tests: Enable compilation with long types in wow64.c.
ntdll/tests: Finalize migration to long types.
windows.globalization: Use a flexible array member for hstring_vector.
conhost: Correctly recompute start of edit line on ReadConsole.
conhost: Support relative cursor positioning.
Floris Renaud (1):
po: Update Dutch Translation.
François Gouget (12):
kernelbase: Add a trailing linefeed to a couple of FIXME() messages.
po: Fix the French translation of 'code page'.
po: Fix backslash duplication in a French translation.
po: Remove a space before a linefeed in the French translation.
po: Remove spaces before linefeeds in the Spanish translation.
po: Remove a space before a linefeed in the Chinese translation.
po: Remove spaces before linefeeds in the Dutch translation.
po: Fix an accelerator shortcut in the Norwegian Bokmål translation.
ntdll: Return the UI language id in uppercase.
ncrypt: Fix the spelling of a FIXME() message.
cmd: Fix the spelling of a batch file comment.
win32u: Make some functions static.
Gabriel Ivăncescu (17):
jscript: Pass a jsval "this" to builtin functions.
jscript: Pass null jsval to builtin functions instead of the global host.
jscript: Return the correct string for Object.toString(null) in ES5+ modes.
jscript: Pass jsval "this" to function calls instead of a dispatch.
jscript: Return the correct string for Object.toString(undefined) in ES5+ modes.
jscript: Return JS_E_INVALID_PROPERTY in jsdisp_call_name if property is not found.
jscript: Allow overriding builtin methods by setting the prop.
jscript: Make Object.prototype.__proto__ an actual accessor.
jscript: Throw error when attempting to set circular __proto__ chains.
jscript: Don't allow changing prototype on non-extensible objects.
mshtml/tests: Add test for setting a prop with same name as a prototype accessor with no setter.
jscript: Store NULL disps as a different type of jsval_null.
jscript: Implement Object.prototype.__defineGetter__.
jscript: Implement Object.prototype.__defineSetter__.
jscript: Throw proper error in Object methods with non-objects args.
mshtml/tests: Test for RegExp.prototype.toString with non-regexp.
jscript: Handle non-JS objects in Object.getPrototypeOf.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.3.208.
Gijs Vermeulen (5):
setupapi: Add SetupDiGetClassRegistryPropertyW stub.
include: Add more Wait Chain Traversal definitions.
advapi32: Add OpenThreadWaitChainSession stub.
advapi32: Add GetThreadWaitChain stub.
kernelbase: Add PathMatchSpecExA/W.
Giovanni Mascellani (7):
mfplat: Properly align memory allocated by IMF2DBuffer.
mfplat/tests: Check that Lock() and Lock2D() see the same content.
mfplat: Fix buffer reading with IMF2DBuffer::Lock().
mfplat: Do not allocate more memory than required.
mfplat: Do not mark the buffer as locked if Lock2D() fails.
mfplat: Align buffers at no less than 16 bytes boundaries.
mfplat: Do not allocate more memory than requested.
Hans Leidekker (11):
crypt32: Add support for decoding signed OCSP responses.
bcrypt: Pass the algorithm ID to key_asymmetric_create().
bcrypt: Call key_destroy() instead of BCryptDestroyKey().
bcrypt: Merge the various key export Unix calls into one.
bcrypt: Merge the various key import Unix calls into one.
bcrypt: Store a public key handle instead of a blob.
bcrypt: Stop passing a dummy public key to gnutls_privkey_import_dsa_raw().
bcrypt: Fix RSA public key export when we don't have a private key handle.
bcrypt: Fix DSA public key export when we don't have a private key handle.
bcrypt: Also duplicate the public key handle in key_asymmetric_duplicate().
crypt32: Add partial support for decoding OCSP_BASIC_RESPONSE_INFO structures.
Henri Verbeet (2):
wined3d: Store "multisample_quality" as an unsigned int in struct wined3d_swapchain_desc.
dxgi/tests: Accept DXGI_STATUS_OCCLUDED as result when creating fullscreen swapchains.
Huw D. M. Davies (36):
winealsa: Move get_prop_value to the unixlib.
winealsa: Remove several unused members.
winealsa: Remove a workaround for versions of alsa-lib before 1.0.12.
winealsa: Move the midi seq lock to the unixlib.
winealsa: Move midi_init to unixlib.
winealsa: Store the snd_seq handle and the input port in the device data.
winealsa: Add a temporary syscall to return the snd_seq handle.
winealsa: Move MODM_OPEN to the unixlib.
winealsa: Move MODM_CLOSE to the unixlib.
winealsa: Move MODM_DATA to the unixlib.
winealsa: Move MODM_LONGDATA to the unixlib.
winealsa: Move MODM_PREPARE and MODM_UNPREPARE to the unixlib.
winealsa: Move MODM_GETDEVAPS to the unixlib.
winealsa: Move MODM_GETNUMDEVS to the unixlib.
winealsa: Move MODM_GETVOLUME and MODM_SETVOLUME to the unixlib.
winealsa: Move MODM_RESET to the unixlib.
winealsa: Move MIDM_PREPARE and MIDM_UNPREPARE to the unixlib.
winealsa: Move MIDM_GETDEVCAPS to the unixlib.
winealsa: Move MIDM_GETNUMDEVS to the unixlib.
winealsa: Move the midi in buffer lock to the unixlib.
winealsa: Move MIDM_ADDBUFFER to the unixlib.
winealsa: Pass the time relative to the start time to the callback.
winealsa: Move MIDM_RESET to the unixlib.
winealsa: Move MIDM_START to the unixlib.
winealsa: Move MIDM_STOP to the unixlib.
winealsa: Introduce a notification thread.
winealsa: Add helpers to handle regular and sysex events.
winealsa: Move the midi event handlers to the unixlib.
winealsa: Introduce a helper to retrieve the time.
winealsa: Allocate the pollfd array at the start.
winealsa: Use a pipe to signal the end of the record thread.
winealsa: Move MIDM_OPEN and MIDM_CLOSE to the unixlib.
winealsa: Move DRVM_INIT to the unixlib.
winealsa: Build with msvcrt.
mountmgr: Fix long type warnings on macOS.
bcrypt: Use GNUTLS_DIG_UNKNOWN for an unknown digest.
Jacek Caban (47):
user32: Fix nameA pointer in alloc_menu_nameW.
win32u: Move NtUserWindowFromDC implementation from user32.
win32u: Mmove dummy surface implementation from user32.
win32u: Move NtUserGetDCEx implementation from user32.
win32u: Move NtUserReleaseDC implementation from user32.
win32u: Move NtUserBeginPaint implementation from user32.
win32u: Move NtUserEndPaint implementation from user32.
win32u: Move NtUserRedrawWindow implementation from user32.
win32u: Move NtUserGetUpdateRgn implementation from user32.
win32u: Fix name comparison in find_class.
win32u: Move NtUserSetWindowPos implementation from user32.
win32u: Move DWP object implementation from user32.
win32u: Move NtUserSetParent implementation from user32.
win32u: Move NtUserGetUpdateRect implementation from user32.
win32u: Introduce NtUserEnableDC.
win32u: Make interface between DC and dce private.
win32u: Move set_window_style implementation from user32.
win32u: Move NtUsetSetWindowLong implementation from user32.
win32u: Move __wine_set_pixel_format implementation from user32.
win32u: Move NtUserSetTimer implementation from user32.
win32u: Move NtUserSetSystemTimer implementation from user32.
win32u: Move NtUserKillTimer implementation from user32.
win32u: Move KillSystemTimer implementation from user32.
win32u: Move destroy_thread_windows implementation from user32.
win32u: Move NtUserDestroyWindow implementation from user32.
win32u: Move get_min_max_info implementation from user32.
win32u: Move NtUserShowWindow implementation from user32.
win32u: Move GetWindowContextHelpId implementation from user32.
user32: Move MDI child coordinates fixup out of WIN_FixCoordinates.
win32u: Move NtUserCreateWindowEx implementation from user32.
win32u: Move apply_window_pos implementation from user32.
win32u: Move ArrangeIconicWindows implementation from user32.
win32u: Don't use designated initializers for lazy_load_driver.
win32u: Move dib.drv implementation from gdi.exe.
win32u: Don't use CDECL for window surface functions.
user.exe: Use win32u directly for cursor icon handle support.
user32: Store current spy indent in user_thread_info struct.
win32u: Move message spy implementation from user32.
user32: Factor out dispatch_win_proc_params.
user32: Use dispatch_win_proc_params in CallWindowProc.
user32: Move more code out of call_window_proc.
win32u: Move init_win_proc_params implementation from user32.
win32u: Implement NtUserDispatchMessage.
user32: Use User32CallWinEventHook in peek_message.
user32: Merge WINPROC_call_window into call_window_proc.
win32u: Move ScreenToClient implementation from user32.
win32u: Move menu handle management from user32.
Jan Sikorski (4):
wined3d: Pass mask to wined3d_next_cs_packet().
wined3d: Flush on texture download to avoid stalling on readout.
wined3d: Check map queue when executing command lists.
wined3d: Reuse deferred uploads heaps.
Jinoh Kang (17):
user32: Recognise RichEdit50W window class in spy.
windowscodecs: Fix rounding in premultiplied alpha conversion.
user32: Fix rounding in premultiplied alpha conversion for cursors and icons.
comctl32: Pre-multiply static control bitmap image by alpha for GdiAlphaBlend.
riched20: Add back-reference to outer ME_Run from struct re_object.
riched20: Set REOBJECT's cp correctly in IRichEditOle::GetObject.
server: Actually set initial status in set_async_direct_result handler.
server: Ensure initial status is set in async_set_result().
ws2_32/tests: Continue sending remaining data on short write in test_write_events.
server: Add mark_pending field to set_async_direct_result request.
server: Generalise async completion callback to be called on synchronous failure.
server: Allow async completion callback to retrieve status on synchronous failure.
server: Defer clearing events until async is completed in send_socket handler.
server: Attempt to complete I/O request immediately in send_socket.
server: Ensure datagram sockets are bound in send_socket.
ntdll: Don't call try_send before server call in sock_send.
server: Replace redundant send_socket status fields with force_async boolean field.
Lauri Kenttä (2):
po: Update Finnish translation.
po: Update Finnish translation.
Matteo Bruni (1):
d3d10: Do not accept any compute shader in D3D10ReflectShader().
Michael Stefaniuc (1):
d2d1/tests: Actually test the return of ID2D1TransformedGeometry_GetBounds.
Paul Gofman (16):
winhttp: Fix filling TIMEVAL in netconn_create().
winhttp: Return an winhttp error from netconn_create() on connection failure.
winhttp: Also select for error in netconn_create().
winhttp: Use a single thread pool wrapper callback for async tasks.
winhttp: Manage task cleanup in task_callback() and queue_task().
winhttp: Use default thread pool.
kernelbase: Query FileStandardInformation instead of FileEndOfFileInformation in SetFilePointerEx().
kernelbase: Use FILE_LIST_DIRECTORY instead of GENERIC_READ in FindFirstFileExW().
wbemprox: Bump video driver version and date.
winhttp: Avoid freeing potentially uninitialized context in netconn_secure_connect().
nsiproxy: Avoid redundant pid mapping in tcp_conns_enumerate_all().
iphlpapi: Don't request redundant static data in get_extended_tcp_table().
d3dcompiler: Implement d3dcompiler_shader_reflection_GetThreadGroupSize().
d3dcompiler: Allow cs5.1 shaders on earlier d3dcompiler versions.
bcrypt: Fix ECC public key export.
wined3d: Add full dirty region at texture creation.
Piotr Caban (7):
msvcp110: Introduce wrapper around critical_section functions.
msvcp110: Add _Mtx_clear_owner implementation.
msvcp110: Add _Mtx_reset_owner implementation.
msvcp110: Use _Condition_variable in _Cnd_t implementation.
msvcp140: Add SRWLock based _Mtx_t and _Cnd_t implementation.
msvcp140: Add condition variable tests.
msvcr110: Make sure we don't hang in _Condition_variable::notify* functions.
Rémi Bernon (37):
winegstreamer: Implement WMA decoder Process(Input|Output) error checks.
dinput/tests: Test IIterator_IInspectable_MoveNext returned values.
windows.gaming.input: Fix IIterator_IInspectable_MoveNext returne value.
windows.gaming.input: Fix IIterator_IInspectable trace messages.
winebus.sys: Declare multiple HID simple haptics controller collections.
xinput1_3: Support multiple HID simple haptics controller collections.
winebus.sys: Remove the now unused HID haptics combined waveform report.
winegstreamer: Return S_OK from H264 decoder GetAttributes.
winegstreamer: Implement H264 decoder SetInputType.
winegstreamer: Implement H264 decoder GetOutputAvailableType.
winegstreamer: Implement H264 decoder GetInputAvailableType.
winegstreamer: Implement H264 decoder SetOutputType.
winebus.sys: Add HID haptics simple controllers for the triggers.
winebus.sys: Prefer SDL_JoystickRumble over SDL_HAPTIC_LEFTRIGHT.
winebus.sys: Implement trigger rumble using SDL_JoystickRumbleTriggers.
windows.gaming.input: Implement HID simple haptics controllers support.
winegstreamer: Introduce new wg_transform_(push|read)_data functions.
winegstreamer: Return S_OK from WMA decoder ProcessMessage.
windows.gaming.input: Fix vector InsertAt / RemoveAt copy sizes.
dinput: Allow setting DIPROP_AUTOCENTER when exclusively acquired.
winebus.sys: Assume SDL device effects are running by default.
dinput/tests: Add more debug traces to the HID driver.
dinput/tests: Rename HID driver identifiers and files.
dinput/tests: Remove the HID driver IRP_MJ_POWER handler.
dinput/tests: Introduce a new find_hid_device_path helper.
dinput/tests: Add more HID device and extension pointers tests.
dinput/tests: Introduce a new Wine Test Bus driver.
dinput/tests: Create a child PDO from the Bus driver.
dinput/tests: Create a HID device from the Bus device.
dinput/tests: Create all HID devices from the Bus driver.
dinput/tests: Remove now unused HID test driver.
dinput/tests: Wait for spurious Win7 polled HID device events.
dinput/tests: Keep child PDO remove IRP pending until fully removed.
kernel32/tests: Use HeapAlloc function pointer to silent a warning.
kernel32/tests: Add some GlobalMemoryStatusEx tests.
kernel32/tests: Merge GlobalMemoryStatus(Ex) tests together.
kernelbase: Fix GlobalMemoryStatusEx counters.
Tatsuyuki Ishi (1):
winegcc: Identify ar files through signature.
Tim Clem (4):
winemac.drv: Simplify control flow in copy_display_modes.
winemac.drv: Add a flag to filter unsupported modes in copy_display_modes.
winemac.drv: Move synthetic display modes after the real ones.
winemac.drv: Sort display modes.
Zebediah Figura (6):
wined3d: Try to load winevulkan.dll instead of vulkan-1.dll.
d3dcompiler: Implement D3DCompile2() using vkd3d_shader_compile().
kernelbase: Do not return S_FALSE from UrlGetPartW().
kernelbase: Do not allow schemes to be less than two characters in UrlGetPart().
kernelbase: Do not parse username, password, and port separately for file URLs in UrlGetPart().
kernelbase: Do not parse the hostname of internet URLs if they are missing a double slash.
Zhiyi Zhang (2):
comctl32/tests: Use correct width and height in create_bitmap() helper.
light.msstyles: Add Menu stub class.
Ziqing Hui (1):
ws2_32/tests: Test getaddrinfo() for IPv6 DNS querying.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 7.4 is now available.
What's new in this release:
- 'Light' theme enabled by default.
- Bundled vkd3d library.
- WineD3D, D3D12 and DXGI modules converted to PE.
- More large scale cleanups to support 'long' type.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.4.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.4.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.4 (total 14):
20296 Multiple apps crash due missing support for COM dll surrogate, dllhost.exe (League of Legends 08_18_2009_04, 3Dmark03, 3Dmark05, 3Dmark06)
41053 RawInput (RegisterRawInputDevices) does not work for gamepads
48508 Psi-Ops: The Mindgate Conspiracy freezing in stable Wine 5.0
50887 cannot read/run/open some files
52204 Vibration on DualSense controller works incorrectly in all Games
52476 QuickLOAD: wine 7 causes VB5 application to change input value by factor 10
52562 advapi32:registry fails in Wine because some French timezone name translations are too long
52581 Internet MIDI crashes with Light Blue theme enabled
52596 The Godfather main menu cursor and text not rendered correctly
52614 API set DLLs fail to load on Arch Linux with "failed to load apiset: c0000482"
52618 32-bit EXEs do not launch from build dir on macOS 10.14 in WOW64
52626 MahjongSoul needs unimplemented function combase.dll.RoSetErrorReportingFlags
52637 comctl32:listbox test_LBS_NODATA() fails in the Japanese and Chinese locales
52639 comctl32:toolbar test_visual() fails in Wine with the Light theme
----------------------------------------------------------------
Changes since 7.3:
Alex Henrie (1):
tzres: Inform translators of 31-character limit.
Alexandre Julliard (18):
ntdll/tests: Avoid referencing a global variable from inline asm.
configure: Check for working -mabi=ms support on x86_64.
winebuild: Align raw data size instead of virtual size in PE sections.
configure: Require PE cross-compilation for building on ARM64.
include: Add more d3d12 logic ops.
include: Change to void the return type for ID3D12GraphicsCommandList::ClearState().
libs: Import upstream code from vkd3d release 1.3.
wined3d: Use the bundled vkd3d and build with msvcrt.
wined3d: Export all the vkd3d functions.
d3d12: Build with msvcrt.
dxgi: Build with msvcrt.
configure: Remove some no longer needed checks.
faudio: Revert some calling convention changes.
lcms2: Revert some calling convention changes.
tiff: Revert some calling convention changes.
xml2: Revert some calling convention changes.
xslt: Revert some calling convention changes.
include: Use the standard va_list in tests.
Alexandros Frantzis (1):
win32u: Fix NtUserCallHooks return value.
Alistair Leslie-Hughes (4):
windowscodecs: Correctly handle 8bpp custom conversions.
include: Correct BYTE typedef.
widl: Support basic BYTE type.
include: Add IReference<T> interface.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Kölbl (22):
include/windows.media.speechrecognition.idl: Add SpeechRecognitionResult.
include/windows.media.speechrecognition.idl: Add SpeechContinuousRecognitionSession.
include/windows.media.speechrecognition.idl: Add SpeechRecognitionHypothesis.
include/windows.media.speechrecognition.idl: Add SpeechRecognitionHypothesisGeneratedEventArgs.
include/windows.media.speechrecognition.idl: Add SpeechRecognizerTimeouts.
include/windows.media.speechrecognition.idl: Add SpeechRecognizerUIOptions.
include/windows.media.speechrecognition.idl: Add SpeechRecognitionCompilationResult.
include/windows.media.speechrecognition.idl: Add SpeechRecognitionQualityDegradingEventArgs.
include/windows.media.speechrecognition.idl: Add SpeechRecognizerStateChangedEventArgs.
widl: Allow multiple uses of the activatable attribute.
include/windows.media.speechrecognition.idl: Add SpeechRecognizer.
windows.media.speech: Create private header.
windows.media.speech: Explicitly check for available activation factory.
windows.media.speech: Move SpeechSynthesizer into separate file.
windows.media.speech: Use C object macros to call iface methods.
windows.media.speech: Rename activation factory for SpeechSynthesizer.
windows.media.speech/tests: Add basic tests for activation factory ifaces.
windows.media.speech/tests: Compile with long types.
windows.media.speech: Import DEFINE_INSPECTABLE macros.
windows.media.speech: Add SpeechRecognizer statics stubs.
windows.media.speech: Add SpeechRecognizer stub.
windows.media.speech/tests: Add basic tests for the SpeechRecognizer class.
Brendan Shanks (8):
winedbg: Sanity check the dwType field of MSVC thread naming exceptions.
winedbg: Ensure thread->name is null-terminated.
winedbg: Don't set initial thread->name to the tid.
winedbg: Print thread names in 'info thread' listing.
kernel32/tests: Add additional Get/SetThreadDescription() tests.
ntdll: Don't require equal Length and MaximumLength when setting ThreadNameInformation.
ntdll: Ensure CONTEXT_EX on exception stack is initialized.
makefiles: On macOS, use @rpath instead of @loader_path when building Unix libs.
Christopher Egert (1):
gsm: Enable WAV49 support.
David Kahurani (1):
oleaut32: Do not skip the first decimal digit in VarParseNumFromStr().
Dmitry Timoshkov (7):
dllhost: Add stub implementation.
dllhost: Add ISurrogate stub implementation.
dllhost: Implement ISurrogate::LoadDllServer().
dllhost: Implement ISurrogate::FreeSurrogate().
dllhost: Implement IMarshal::MarshalInterface().
dllhost: Periodically call CoFreeUnusedLibraries().
combase: Start surrogate local server when required.
Eric Pouech (182):
gdi32/tests: Enable compilation with long types.
hlink/tests: Enable compilation with long types.
hnetcfg/tests: Enable compilation with long types.
hid/tests: Enable compilation with long types.
imagehlp/tests: Enable compilation with long types.
imm32/tests: Enable compilation with long types.
inetcomm/tests: Enable compilation with long types.
inetmib1/tests: Enable compilation with long types.
infosoft/tests: Enable compilation with long types.
iphlpapi/tests: Enable compilation with long types.
itss/tests: Enable compilation with long types.
jsproxy/tests: Enable compilation with long types.
kernelbase/tests: Enable compilation with long types.
localspl/tests: Enable compilation with long types.
localui/tests: Enable compilation with long types.
lz32/tests: Enable compilation with long types.
mapi32/tests: Enable compilation with long types.
gameux/tests: Use correct integral type.
gameux/tests: Enable compilation with long types.
comctl32/tests: Enable compilation with long types.
gdiplus/tests: Introduce helper functions (expect*) to handle integral conversions.
gdiplus/tests: Enable compilation with long types.
conhost: Handle csi escape sequence for shift tab.
conhost/tests: Add tests for shift-tab processing.
msftedit/tests: Enable compilation with long types.
mlang/tests: Enable compilation with long types.
mmcndmgr/tests: Enable compilation with long types.
mp3dmod/tests: Enable compilation with long types.
mpr/tests: Enable compilation with long types.
msado15/tests: Use correct integral type.
msado15/tests: Enable compilation with long types.
msasn1/tests: Enable compilation with long types.
msctf/tests: Enable compilation with long types.
msdmo/tests: Enable compilation with long types.
mspatcha/tests: Enable compilation with long types.
msrle32/tests: Enable compilation with long types.
msscript.ocx/tests: Enable compilation with long types.
mstask/tests: Enable compilation with long types.
msvfw32/tests: Enable compilation with long types.
ndis.sys/tests: Enable compilation with long types.
netapi32/tests: Enable compilation with long types.
netcfgx/tests: Enable compilation with long types.
netprofm/tests: Enable compilation with long types.
ieframe/tests: Enable compilation with long types.
jscript/tests: Enable compilation with long types.
dsound/tests: Enable compilation with long types.
kernelbase: Support CONSOLE_READCONSOLE_CONTROL in ReadConsoleW.
kernelbase: Return key state in ReadConsoleW with control.
conhost/tests: Add tests for ReadConsoleW with control.
kernel32/tests/actctx: Enable compilation with long types.
kernel32/tests/codepage: Enable compilation with long types.
kernel32/tests/comm: Enable compilation with long types.
kernel32/tests/console: Enable compilation with long types.
ninput/tests: Enable compilation with long types.
ntdsapi/tests: Enable compilation with long types.
ntoskrnl.exe/tests: Use correct integral type.
ntoskrnl.exe/tests: Enable compilation with long types.
ntprint/tests: Use correct integral type.
ntprint/tests: Enable compilation with long types.
odbccp32/tests: Enable compilation with long types.
ole32/tests: Use correct integral type.
ole32/tests: Enable compilation with long types.
oleacc/tests: Use correct integral type.
oleacc/tests: Enable compilation with long types.
oledb32/tests: Enable compilation with long types.
oledlg/tests: Enable compilation with long types.
opengl32/tests: Enable compilation with long types.
mscoree/tests: Enable compilation with long types.
mshtml/tests: Enable compilation with long types.
ntdll/tests: Fix erroneous ok parameters.
kernel32/tests/debugger: Enable compilation with long types.
kernel32/tests/environ: Enable compilation with long types.
kernel32/tests/file: Enable compilation with long types.
kernel32/tests/format_msg: Enable compilation with long types.
packager/tests: Enable compilation with long types.
pdh/tests: Enable compilation with long types.
prntvpt/tests: Enable compilation with long types.
propsys/tests: Enable compilation with long types.
psapi/tests: Enable compilation with long types.
pstorec/tests: Enable compilation with long types.
qmgr/tests: Enable compilation with long types.
qwave/tests: Enable compilation with long types.
qasf/tests: Enable compilation with long types.
qdvd/tests: Enable compilation with long types.
devenum/tests: Build without -DWINE_NO_LONG_TYPES.
qcap/tests: Use int instead of LONG for the arguments to IAMStreamConfig::GetNumberOfCapabilities().
qedit/tests: Build without -DWINE_NO_LONG_TYPES.
qcap/tests: Build without -DWINE_NO_LONG_TYPES.
mmdevapi/tests: Enable compilation with long types.
msacm32/tests: Enable compilation with long types.
mfplat/tests: Use correct integral type.
mfplat/tests: Enable compilation with long types.
kernel32/tests/heap: Enable compilation with long types.
kernel32/tests/loader: Enable compilation with long types.
kernel32/tests/locale: Enable compilation with long types.
kernel32/tests/module: Enable compilation with long types.
rasapi32/tests: Enable compilation with long types.
riched32/tests: Enable compilation with long types.
rpcrt4/tests: Enable compilation with long types.
rsaenh/tests: Enable compilation with long types.
sapi/tests: Enable compilation with long types.
schannel/tests: Enable compilation with long types.
schedsvc/tests: Enable compilation with long types.
scrobj/tests: Enable compilation with long types.
secur32/tests: Enable compilation with long types.
serialui/tests: Enable compilation with long types.
setupapi/tests: Use correct integral type.
setupapi/tests: Enable compilation with long types.
mf/tests: Use correct integral type.
mf/tests: Enable compilation with long types.
riched20/tests: Use correct integral type.
riched20/tests: Enable compilation with long types.
kernel32/tests/path: Enable compilation with long types.
kernel32/tests/pipe: Enable compilation with long types.
kernel32/tests/process: Enable compilation with long types.
kernel32/tests/profile: Enable compilation with long types.
shell32/tests: Use correct integral type.
shell32/tests: Enable compilation with long types.
shlwapi/tests: Enable compilation with long types.
slc/tests: Enable compilation with long types.
sti/tests: Enable compilation with long types.
sxs/tests: Enable compilation with long types.
tapi32/tests: Enable compilation with long types.
taskschd/tests: Enable compilation with long types.
twain_32/tests: Enable compilation with long types.
uianimation/tests: Enable compilation with long types.
uiautomationcore/tests: Enable compilation with long types.
quartz/tests: Use the correct integer types.
quartz/tests: Build without -DWINE_NO_LONG_TYPES.
kernel32/tests/sync: Enable compilation with long types.
kernel32/tests/thread: Enable compilation with long types.
kernel32/tests/virtual: Enable compilation with long types.
kernel32/tests/volume: Enable compilation with long types.
userenv/tests: Enable compilation with long types.
uxtheme/tests: Enable compilation with long types.
user32/tests: Use correct integral type.
vcomp110/tests: Enable compilation with long types.
vcomp/tests: Enable compilation with long types.
version/tests: Enable compilation with long types.
virtdisk/tests: Enable compilation with long types.
vulkan-1/tests: Enable compilation with long types.
wer/tests: Enable compilation with long types.
wevtapi/tests: Enable compilation with long types.
spoolss/tests: Enable compilation with long types.
wiaservc/tests: Enable compilation with long types.
windows.globalization/tests: Enable compilation with long types.
windows.media.devices/tests: Enable compilation with long types.
wininet/tests: Use correct integral type.
wininet/tests: Enable compilation with long types.
wintab32/tests: Enable compilation with long types.
wintrust/tests: Enable compilation with long types.
winspool.drv/tests: Enable compilation with long types.
kernel32/tests/change: Enable compilation with long types.
kernel32/tests/time: Enable compilation with long types.
kernel32/tests: Use correct integral type.
kernel32/tests: Enable compilation with long types.
kernel32/tests: Enable compilation with long types.
shdocvw/tests: Enable compilation with long types.
urlmon/tests: Enable compilation with long types.
vbscript/tests: Enable compilation with long types.
windowscodecsext/tests: Enable compilation with long types.
windowscodecs/tests: Use correct integral type.
windowscodecs/tests: Enable compilation with long types.
wlanapi/tests: Enable compilation with long types.
wmp/tests: Enable compilation with long types.
wmvcore/tests: Enable compilation with long types.
wpc/tests: Enable compilation with long types.
ws2_32/tests: Use correct integral type.
ws2_32/tests: Enable compilation with long types.
wsdapi/tests: Enable compilation with long types.
wtsapi32/tests: Enable compilation with long types.
include: Fix prototype of NtQueryInformationFile.
user32/tests: Wrap helper macro inside function.
user32/tests: Enable compilation with long types.
kernel32/tests: Remove temporary defines for long types migration.
nsiproxy.sys: Explicitly check for recvmsg() failure.
oleaut32/tests: Get rid of EXPECTI864 macro.
oleaut32/tests: Convert I8 to current integer test scheme.
oleau32/tests: Convert I8Copy to existing integer test scheme.
winmm/tests: Enable compilation with long types.
user32/tests: Enable compilation with long types in listbox.c.
user32/tests: Enable compilation with long types in resource.c.
Esme Povirk (1):
mscoree: Add an override option for skipping the AppDomain search path.
Floris Renaud (1):
po: Update Dutch Translation.
François Gouget (1):
windows.gaming.input: Add a linefeed to a TRACE() message.
Georg Lehmann (4):
winevulkan: Avoid zero-sized allocations.
winevulkan: Manually fixup struct alignment for VkPipelineCreationFeedback.
winevulkan: Enable VK_EXT_pipeline_creation_feedback.
winevulkan: Update to VK spec version 1.3.207.
Giovanni Mascellani (1):
mfplat: Properly align system memory buffers.
Hans Leidekker (8):
wusa: Use CRT allocation functions.
include: Add OCSP definitions.
crypt32: Add support for encoding OCSP requests.
bcrypt: Return an error when BCryptFinalizeKeyPair() is called twice.
ncrypt: Always map bcrypt return values.
crypt32: Requestor name is optional in OCSP request.
crypt32: Add partial support for encoding signed OCSP requests.
crypt32: Add support for decoding OCSP responses.
Hugh McMaster (2):
conhost: Don't compare the console config if the user cancels the dialog.
conhost: Reimplement font dialog handling.
Huw D. M. Davies (19):
crypt32: Use an unsigned int to avoid a compiler warning on macOS.
win32u: Remove no longer used macro.
winealsa: Add a temporary write_best_effort syscall.
winealsa: Move timer_loop to the unixlib.
winealsa: Move start to the unixlib.
winealsa: Move stop to the unixlib.
winealsa: Move reset to the unixlib.
winealsa: Move set_event_handle to the unixlib.
winepulse: Move "last_time" to a local variable.
maintainers: Add dllhost.
winealsa: Move get_render_buffer to the unixlib.
winealsa: Move release_render_buffer to the unixlib.
winealsa: Move get_capture_buffer to the unixlib.
winealsa: Move release_capture_buffer to the unixlib.
winealsa: Move get_next_packet_size to the unixlib.
winealsa: Move get_frequency to the unixlib.
winealsa: Move get_position to the unixlib.
winealsa: Move is_started to the unixlib.
winealsa: Move set_volumes to the unixlib.
Jacek Caban (55):
mshtml: Add IDOMMessageEvent stub implementation.
mshtml: Implement IDOMMessageEvent::data property.
mshtml: Post messages asynchronously in IE9+ modes.
user32: Use ACCEL struct in accelerator object.
user32: Use CreateAcceleratorTableW in LoadAcceleratorsW.
user32: Use CreateAcceleratorTableW in CreateAcceleratorTableA.
win32u: Move accelerators object implementation from user32.
win32u: Move winproc array from user32.
win32u: Implement NtUserGetAtomName.
win32u: Move NtUserGetClassName implementation from user32.
user32: Factor out find_class.
user32: Store class instance as UINT_PTR.
user32: Ignore low instance word in find_class.
user32: Introduce get_class_info.
user32: Use get_class_info for GetClasInfoEx implementation.
user32: Move module class registration to get_class_info.
user32: Use UNICODE_STRING for passing window classes internally.
user32: Store menu name as a struct.
win32u: Move class management implementation from user32.
win32u: Move NtUserSetClassLong from user32.
win32u: Move GetClassLong implementation from user32.
win32u: Move NtUserInternalGetWindowText implementation from user32.
user32: Use NtUserInternalGetWindowText in GetWindowText.
win32u: Move GetWindowTextLength implementation from user32.
win32u: Move GetWindowLong implementation from user32.
win32u: Move GetWindow implementation from user32.
win32u: Move GetParent implementation from user32.
win32u: Move NtUserGetAncestor implementation from user32.
win32u: Move GWLP_HWNDPARENT implementation from user32.
win32u: Move IsChild implementation from user32.
win32u: Move IsWindowVisible implementation from user32.
win32u: Move is_window_drawable implementation from user32.
win32u: Move NtUserFlashWindowEx implementation from user32.
win32u: Introduce get_desktop_window.
win32u: Move load_driver implementation from user32.
win32u: Move GetDesktopWindow implementation from user32.
win32u: Move IsWindowUnicode implementation from user32.
win32u: Move GetWindowDpiAwarenessContext from user32.
win32u: Move GetDpiForWindow from user32.
win32u: Move GetWindowRect implementation from user32.
win32u: Move GetWindowInfo implementation from user32.
win32u: Move GetClientRect implementation from user32.
win32u: Move NtUserGetWindowRgnEx implementation from user32.
win32u: Move NtUserSetWindowRgn implementation from user32.
win32u: Move NtUserMoveWindow implementation from user32.
win32u: Move NtUserWindowFromPoint implementation from user32.
win32u: Move GetWindowPlacement and MonitorFromWindow implementation from user32.
win32u: Move WM_WINE_UPDATEWINDOWSTATE implementation from user32.
win32u: Move NtUserSetLayeredWindowAttributes implementation from user32.
win32u: Move NtUserUpdateLayeredWindow implementation from user32.
win32u: Move NtUserSetActiveWindow implementation from user32.
win32u: Move NtUserSetFocus implementation from user32.
win32u: Move set_foreground_window implementation from user32.
user32: Use NtUserGetGUIThreadInfo for GetCapture implementation.
win32u: Move NtUserSetCapture implementation from user32.
Jactry Zeng (1):
d2d1: Add D2D1Shadow effect.
Jan Sikorski (4):
wined3d: Add poll_in_cs field to wined3d_query().
wined3d: Track pending Vulkan queries separately for each query.
wined3d: Poll Vulkan queries directly on the application thread.
wined3d: Implement event queries using Vulkan events.
Kevin Puetz (1):
oleaut32: Fix QueryPathOfRegTypeLib minor version comparison.
Martin Storsjö (2):
ntdll: Zero-initialize the syscall_frame used for starting threads on ARM/ARM64.
configure: Tweak PE tools suggestion for ARM64.
Matteo Bruni (7):
combase: Add RoSetErrorReportingFlags() stub.
d3dx11/tests: Use CRT allocation functions.
win32u: Use GDI_ROUND() in a few more places.
d3dcompiler/tests: Use hexadecimal constants in a few ok() checks.
wined3d: Fix typo in WARN() message.
d3d11: Report support for MapNoOverwriteOnDynamicBufferSRV.
wined3d: Use list_empty() in shader_glsl_destroy().
Mohamad Al-Jaf (1):
wusa: Support additional expressions.
Pat Leamon (1):
mshtml: Implement nsIHttpChannel::IsNoCacheReponse.
Paul Gofman (41):
winhttp: Don't allow websocket send if another non-control send is pending.
winhttp: Support sending web socket buffer fragments.
winhttp: Support receiving web socket buffer fragments.
winhttp: Return default value for WINHTTP_OPTION_WORKER_THREAD_COUNT.
win32u: Set BAD_EDID registry value for empty EDID.
win32u: Move wine_get_wgl_driver() from DC driver.
ws2_32: Base inet_addr() implementation on musl.
ws2_32: Pre-validate optlen in getsockopt().
ws2_32: Treat optlen as unsigned in setsockopt() for SO_RCVTIMEO.
ws2_32: Treat optlen as unsigned in setsockopt() for SO_SNDTIMEO.
ws2_32: Return WSAENOBUFS from setsockopt() for IPPROTO_IP with negative optlen.
ws2_32/tests: Add tests for setting and getting socket options with shorter length.
ws2_32: Validate IP_TOS value.
ws2_32/tests: Add tests for bigger option value in test_set_getsockopt().
ws2_32: Return WSAEFAULT from setsockopt() for IP_MULTICAST_LOOP with zero optlen.
ws2_32: Return WSAEFAULT from setsockopt() for IP_MULTICAST_TTL with zero optlen.
ws2_32: Return WSAEFAULT from setsockopt() for IP_TTL with zero optlen.
ws2_32/tests: Add tests for zero option length in test_set_getsockopt().
ws2_32: Manage shorter length for SO_BROADCAST.
ws2_32: Manage shorter length for SO_DONTLINGER.
ws2_32: Manage shorter length for SO_DONTROUTE.
ws2_32: Manage shorter length for SO_KEEPALIVE.
ws2_32: Manage shorter length for SO_LINGER.
ws2_32: Manage shorter length for SO_OOBINLINE.
ws2_32: Set last error on success for SO_OPENTYPE.
ws2_32: Manage shorter length for SO_RCVBUF.
ws2_32: Manage shorter length for SO_REUSEADDR.
ws2_32: Manage shorter length for SO_SNDBUF.
ws2_32: Manage shorter length for TCP_NODELAY.
ws2_32: Manage shorter length for IP_PKTINFO.
ws2_32: Manage shorter length for IP_RECVTOS.
ws2_32: Manage shorter length for IP_RECVTTL.
ws2_32: Return WSAENOBUFS from setsockopt() for IPPROTO_IPV6 with negative optlen.
ws2_32: Manage shorter length for IPV6_DONTFRAG.
ws2_32: Manage shorter length for IPV6_HOPLIMIT.
ws2_32: Manage shorter length for IPV6_MULTICAST_HOPS.
ws2_32: Manage shorter length for IPV6_MULTICAST_LOOP.
ws2_32: Manage shorter length for IPV6_PKTINFO.
ws2_32: Manage shorter length for IPV6_RECVTCLASS.
ws2_32: Manage shorter length for IPV6_UNICAST_HOPS.
ws2_32: Manage shorter length for IPV6_V6ONLY.
Piotr Caban (2):
oleacc/tests: Fix test windows cleanup.
oleacc/tests: Check if test window has focus in test_default_client_accessible_object tests.
Rémi Bernon (58):
windows.gaming.input: Split RawGameController runtimeclass to separate source.
windows.gaming.input: Split Gamepad runtimeclass to a separate source.
windows.gaming.input: Introduce a generic IVector<IInspectable *> implementation.
dinput/tests: Make combase.dll dependency optional.
dinput/tests: Simplify windows.gaming.input tests with events.
include: Add Windows.Gaming.Input.Custom.IGameControllerProvider declaration.
include: Add Windows.Gaming.Input.Custom.ICustomGameControllerFactory declaration.
include: Add Windows.Gaming.Input.Custom.GameControllerFactoryManager runtimeclass definition.
include: Add Windows.Gaming.Input.IGameControllerInputSink interface definition.
include: Add Windows.Gaming.Input.IHidGameControllerInputSink interface definition.
include: Add Windows.Gaming.Input.HidGameControllerProvider runtimeclass definition.
include: Add Windows.Gaming.Input.IXusbGameControllerInputSink interface definition.
include: Add Windows.Gaming.Input.XusbGameControllerProvider runtimeclass definition.
windows.gaming.input: Introduce helpers to define IInspectable interface boilerplate.
windows.gaming.input: Stub GameControllerFactoryManager runtimeclass.
windows.gaming.input: Register Windows.Gaming.Input.Custom classes.
dinput/tests: Add tests for IGameControllerFactoryManagerStatics_RegisterCustomFactoryForHardwareId.
include: Add Windows.Gaming.Input.IGameControllerBatteryInfo interface definition.
include: Add IWeakReference(Source) declaration.
dinput/tests: Add tests for ICustomGameControllerFactory_CreateGameController.
dinput: Add object names for simulation HID usages.
dinput: Refactor HID joystick device type detection logic.
winebus.sys: Pass USAGE_AND_PAGE to hid_device_begin_report_descriptor.
winebus.sys: Use a physical collection for the HID input report.
include: Define some HID simulation device usages.
winebus.sys: Use SDL_JoystickGetType to set physical HID usage.
dinput: Check collection nodes to find HID simulation device usages.
windows.gaming.input: Add an internal WineGameControllerProvider runtimeclass.
windows.gaming.input: Start a thread to monitor HID device addition and removal.
dinput: Use a custom GUID to open a device from a device path.
windows.gaming.input: Instantiate the WineGameControllerProvider runtimeclass.
windows.gaming.input: Make QueryInterface implementations consistent.
windows.gaming.input: Stub ICustomGameControllerFactory for RawGameController.
windows.gaming.input: Stub ICustomGameControllerFactory for Gamepad.
windows.gaming.input: Add IGameControllerImpl undocumented interface declaration.
include: Add Windows.Devices.Power.IBatteryReport interface definition.
winebus.sys: Don't reset report descriptor when starting a collection.
windows.gaming.input: Instantiate IGameController(BatteryInfo) stub from providers.
windows.gaming.input: Implement IRawGameControllerStatics_FromGameController.
windows.gaming.input: Check the controller type and create Gamepad instances.
include: Add Windows.Gaming.Input.IGamepadStatics2 interface declaration.
windows.gaming.input: Implement IGamepadStatics2_FromGameController.
windows.gaming.input: Implement CreateGameController for RawGameController runtimeclass.
windows.gaming.input: Implement CreateGameController for Gamepad runtimeclass.
include: Fix IIterator<T> declaration and missing IVector(View)<T> requires.
windows.gaming.input: Implement IIterable<T> and IIterator<T> interfaces.
windows.gaming.input: Implement IRawGameControllerStatics_get_RawGameControllers.
windows.gaming.input: Implement IGamepadStatics_get_Gamepads.
windows.gaming.input: Implement Controller(Added|Removed) event support.
windows.gaming.input: Return object counts and VID/PID for RawGameController.
windows.gaming.input: Implement GetCurrentReading for the RawGameController runtimeclass.
windows.gaming.input: Implement GetCurrentReading for the Gamepad runtimeclass.
mf/tests: Check the number of input samples to get a H264 stream change.
mf/tests: Check H264 decoder first NV12 decoded frame.
mf/tests: Check H264 decoder stream count and IDs.
winegstreamer: Introduce new H264 decoder transform stub.
windows.gaming.input: Return correct error from DllGetActivationFactory.
windows.gaming.input: Always return S_OK from TryGetFactoryControllerFromGameController.
Santino Mazza (8):
bcrypt/tests: Test for invalid RSA keyblob.
bcrypt: Add support for PUBLICKEY blob types.
bcrypt: Validate key size when importing RSA public key.
bcrypt: Implement KeyLength property.
ncrypt: Make use of bcrypt for low level cryptography.
ncrypt/tests: Test for symmetric keys support.
ncrypt: Implement NCryptCreatePersistedKey.
ncrypt: Implement NCryptFinalizeKey.
Saulius Krasuckas (1):
ntdll: Check __WINE_PE_BUILD instead of compiler macros.
Stefan Dösinger (6):
wined3d: Use extra bits in the queue head and tail counters.
wined3d: Use the default queue index for resource fencing.
wined3d: Remove the no-op wined3d_resource_release.
wined3d: Rename resource_acquire to resource_reference.
wined3d: Replace the GE_WRAP macro with a function.
wined3d: Replace while (1) with for (;;).
Torge Matthies (3):
powrprof: Add PowerUnregisterSuspendResumeNotification stub.
powrprof: Add PowerSettingRegisterNotification stub.
powrprof: Add PowerSettingUnregisterNotification stub.
Zebediah Figura (20):
httpapi/tests: Build without -DWINE_NO_LONG_TYPES.
d3d10/tests: Add tests for Direct3D 10 shader reflection interfaces.
d3d10_1/tests: Add shader reflection tests.
d3dcompiler: Use a single definition for both d3d10 and d3d11 reflection interfaces.
d3d10: Do not define D3DReflect().
devenum/tests: Remove workarounds from test_moniker_isequal().
makedep: Do not forbid importing system headers in msvcrt modules.
d3d12: Explicitly use Wine d3d12 and Vulkan headers.
dxgi: Explicitly use Wine d3d12 and Vulkan headers.
configure: Try to detect MinGW libvkd3d using pkg-config if --with-system-dllpath is specified.
configure: Fix the check for CAPI support.
wined3d: Allow changing settings using a new WINE_D3D_CONFIG environment variable.
winegstreamer: Deliver samples in PTS order instead of alternating.
wined3d: Do not print a d3d_perf warning in adapter_vk_alloc_bo() for unmapped BOs.
d3d11: Do not print a FIXME for dynamic linking in shader retrieval functions.
d3d11: Do not print a FIXME for dynamic linking when zero class instances are passed.
wined3d: Trace GL buffer object creation more accurately.
wined3d: Prevent buildup of retired OpenGL buffer objects' memory.
d3d11: Report support for MapNoOverwriteOnDynamicConstantBuffer.
d3d11: Report support for ConstantBufferPartialUpdate.
Zhiyi Zhang (11):
comctl32/tests: Fix a test failure when theming is active.
light.msstyles: Remove Classic Blue variant.
uxtheme/tests: Add IsThemePartDefined() tests.
uxtheme: Search parts of any state in IsThemePartDefined().
wine.inf: Enable Light theme by default.
comctl32/tests: Fix a possible test failure.
d2d1: Release bitmap on d2d_device_context_SetTarget() error path.
d2d1/tests: Test d2d_device_context_SetTarget() with bitmaps of D2D1_ALPHA_MODE_IGNORE.
d2d1: Use newer blend options in d2d_device_context_SetTarget() for bitmaps of D2D1_ALPHA_MODE_IGNORE.
d2d1/tests: Add d2d_transformed_geometry_StrokeContainsPoint() tests.
d2d1: Shrink stroke width for d2d_transformed_geometry_StrokeContainsPoint().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that release 1.3 of vkd3d, the Direct3D to
Vulkan translation library, is now available.
This release contains improvements that are listed in the release notes below.
The main highlights are:
- Initial HLSL compilation support.
- Shader model 5.1 descriptor array support.
- Support for disassembling Direct3D shaders.
The source is available from the following location:
https://dl.winehq.org/vkd3d/source/vkd3d-1.3.tar.xz
The current source can also be pulled directly from the git repository:
https://source.winehq.org/git/vkd3d.git/
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
for the complete list.
----------------------------------------------------------------
What's new in vkd3d 1.3
=======================
*** libvkd3d
- Newly implemented Direct3D 12 features:
- Root signature support for unbounded descriptor tables.
- Unordered-access view counters in pixel shaders. These were previously
only supported in compute shaders.
- Output merger logical operations.
- Retrieving CPU/GPU timestamp calibration values. This requires support for
the VK_EXT_calibrated_timestamps extension.
- The `mirror_once' texture addressing mode. This requires support for the
VK_KHR_sampler_mirror_clamp_to_edge extension.
- New interfaces:
- The vkd3d_host_time_domain_info structure extends the
vkd3d_instance_create_info structure, and can be used to specify how to
convert between timestamps and tick counts. If left unspecified, a tick
is assumed to take 100 nanoseconds.
- Various bug fixes.
*** libvkd3d-shader
- New features:
- Initial support for HLSL compilation and preprocessing. This is an ongoing
effort; although support for many features is already implemented, support
for many more isn't yet.
- Support for disassembling Direct3D byte-code shaders to Direct3D assembly.
- Support for parsing the legacy Direct3D byte-code format used by Direct3D
shader model 1, 2, and 3 shaders. In the current vkd3d-shader release,
only Direct3D assembly is supported as a target for these; we intend to
support SPIR-V as a target in a future release.
- New features for the SPIR-V target:
- Support for various aspects of Direct3D shader model 5.1 descriptor
arrays, including unbounded descriptor arrays, UAV counter arrays, dynamic
indexing of descriptor arrays, and non-uniform indexing of descriptor
arrays. With the exception of some special cases, this requires support
for the SPV_EXT_descriptor_indexing extension in the target environment.
- Support for double precision floating-point operations.
- Support for indirect addressing of tessellation control shader inputs.
- Stencil export. I.e., writing stencil values from shaders. This requires
support for the SPV_EXT_shader_stencil_export extension in the target
environment.
- Support for the Direct3D shader model 4+ `precise' modifier.
- Support for Direct3D shader model 4+ global resource memory barriers.
New interfaces:
- vkd3d_shader_preprocess() provides support for preprocessing shaders.
- The vkd3d_shader_preprocess_info structure extends the
vkd3d_shader_compile_info structure, and can be used to specify
preprocessing parameters like preprocessor macro definitions.
- The vkd3d_shader_hlsl_source_info structure extends the
vkd3d_shader_compile_info structure, and can be used to specify HLSL
compilation parameters like the target profile and entry point.
- The vkd3d_shader_descriptor_offset_info structure extends the
vkd3d_shader_interface_info structure, and can be used to specify offsets
into descriptor arrays referenced by shader interface bindings. This
allows mapping multiple descriptor arrays in a shader to a single binding
point in the target environment, and helps with mapping between the
Direct3D 12 and Vulkan binding models.
- The VKD3D_SHADER_COMPILE_OPTION_API_VERSION compile option can
be used to specify the version of the libvkd3d-shader API the
application is targetting. If left unspecified,
VKD3D_SHADER_API_VERSION_1_2 will be used.
- Various shader translation fixes, for tessellation shaders in particular.
*** vkd3d-compiler
- New source and target types:
- The `hlsl' source type specifies High Level Shader Language source code.
- The `d3d-asm' target type specifies Direct3D assembly shaders.
- The `d3dbc' format specifies legacy Direct3D byte-code, which is used for
Direct3D shader model 1, 2, and 3 shaders.
- The existing `dxbc-tpf' format can now also be used as a target format.
- New command line options:
- `-E' can be used to specify the input should only be preprocessed.
- `-e'/`--entry' can be used to specify the entry point for HLSL and/or
SPIR-V shaders.
- `-p'/`--profile' can be used to specify the target profile for HLSL
shaders.
- When no source type is explicitly specified, vkd3d-compiler will attempt to
determine the source type from the provided input. Note that this is
intended as a convenience for interactive usage only, and the heuristics
used are subject to future change. Non-interactive usage of vkd3d-compiler,
for example in build scripts, should always explicitly specify source and
target types.
- When no target type is explicitly specified, a default will be chosen based
on the source type. Like the earlier mentioned source type detection, this
is intended for interactive usage only.
- vkd3d-compiler will default to colour output if it can determine that the
output is a colour-capable teleprinter.
- New environment variables:
- NO_COLOUR/NO_COLOR can be used to disable default colour output.
See the README for more detailed descriptions and how to use these.
*** libvkd3d-utils
- New interfaces:
- D3DCreateBlob() provides support for creating ID3DBlob objects.
- D3DPreprocess() provides support for preprocessing HLSL source code.
- D3DCompile() and D3DCompile2() provide support for compiling HLSL source
code.
*** build
- The `gears' and `triangle' demo applications are installed as `vkd3d-gears'
and `vkd3d-triangle'. These were originally intended more as documentation
than as end-user executables, but there's some value in using them for
diagnostic purposes, much like e.g. `glxgears'.
- The VULKAN_LIBS configure variable is used when detecting the Vulkan
library.
- Builds for the Microsoft Windows target platform no longer require support
for POSIX threads. Windows synchronisation primitives are used instead.
- If ncurses is available, it will be use by vkd3d-compiler to determine the
capabilities of the connected teleprinter, if any.
The Wine development release 7.3 is now available.
What's new in this release:
- More large scale cleanups to support 'long' type.
- Proper support for API sets.
- Progress on the PE conversion of USER32 and WineALSA.
- A number of HID joystick fixes.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.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 7.3 (total 15):
38210 WshScriptExec's StdIn StdOut and StdErr are missing.
41386 Motocross Madness 2 crashes on start
44635 Multiple games need ID3DXEffect CloneEffect (Gray Matter, Black and White 2)
44658 Multiple Win7+ APIset lookup/resolver tools need 'ApiSetMap' field in PEB (ApiSetView, Dependencies)
48096 Mulle Meck: Unhandled exception when starting game
48201 Unimplemented function KERNEL32.dll.SetCurrentConsoleFontEx
48733 Microsoft Visual Studio 2019 web-installer needs ncrypt.dll.NCryptOpenStorageProvider implementation
48760 ConEmu shows 'GetConsoleProcessList failed' at startup
51103 d3d11:d3d11 crashes on Windows + NVidia
52155 kernel32:pipe times out on 64-bit Wine
52290 Playground Sessions crashes on startup
52434 Light Blue theme has rendering errors in tree views
52526 Trails to Azure (Geofront patch) crashes on unimplemented function KERNEL32.dll.InitializeContext
52561 d3dx9_36:math crashes on Windows 8.1 and cw-rx460
52583 ApiSetView does not display export ordinals correctly
----------------------------------------------------------------
Changes since 7.2:
Alex Henrie (1):
comctl32/tests: Drop mru test workarounds for Windows <= 2000.
Alexandre Julliard (63):
kernel32: Forward SetThreadToken() to kernelbase.
make_specfiles: Sort the ApiSet dlls by name.
make_specfiles: Move some ApiSet dlls to the ntdll section.
api-ms-*: Forward to kernelbase instead of kernel32.
api-ms-*: Forward to kernelbase instead of advapi32.
api-ms-*: Forward to kernelbase instead of shlwapi.
api-ms-*: Forward to kernelbase instead of user32.
api-ms-*: Forward to kernelbase instead of version.
api-ms-*: Forward to combase instead of ole32.
api-ms-*: Forward to shcore instead of shlwapi.
api-ms-*: Forward to shcore instead of shell32.
api-ms-*: Forward to cfgmgr32 instead of setupapi.
api-ms-*: Forward to sechost instead of advapi32.
api-ms-*: Forward to cryptsp instead of advapi32.
secur32: Add stubs for DeleteSecurityPackageA/W.
winebuild: Add support for generating data-only DLLs.
winegcc: Add support for winebuild --data-only option.
makedep: Add support for winebuild --data-only option.
activeds.tlb: Build in data-only mode.
icmp: Build in data-only mode.
light.msstyles: Build in data-only mode.
lz32: Build in data-only mode.
mferror: Build in data-only mode.
mshtml.tlb: Build in data-only mode.
msimsg: Build in data-only mode.
normaliz: Build in data-only mode.
security: Build in data-only mode.
sfc: Build in data-only mode.
shdoclc: Build in data-only mode.
stdole2.tlb: Build in data-only mode.
stdole32.tlb: Build in data-only mode.
tzres: Build in data-only mode.
usp10: Build in data-only mode.
wmi: Build in data-only mode.
kernel32/tests: Add a few more tests for apisets.
kernel32: Move some more console functions to kernelbase.
winedump: Add dumping of the .apiset PE section.
winebuild: Add support for building apiset data.
apisetschema: Add dll.
kernel32/tests: Add tests for apiset query functions.
include: Add API set definitions.
ntdll: Add a global variable for the WoW PEB.
ntdll: Load the apiset schema at startup.
ntdll: Map imported apiset dlls to their target library.
ntdll: Map explicitly loaded apiset dlls to their target library.
ntdll: Implement ApiSetQueryApiSetPresence/Ex().
kernelbase: Implement IsApiSetImplemented().
apisetchema: Add some more kernelbase apisets.
apisetchema: Add some more kernel32 apisets.
apisetchema: Add some more combase apisets.
apisetchema: Add some more ole32 apisets.
apisetchema: Add some more advapi32 apisets.
apisetchema: Add some more gdi32 apisets.
apisetchema: Add some more user32 apisets.
apisetchema: Add some more sechost apisets.
apisetchema: Add some more shcore apisets.
apisetchema: Add some more shlwapi apisets.
apisetchema: Add some more winmm apisets.
apisetchema: Add some more comctl32 apisets.
apisetchema: Add some more misc apisets.
api-ms-*: Get rid of the apiset placeholder files.
include: Add a few locale definitions.
include: Update __MSABI_LONG definition for WINE_NO_LONG_TYPES support.
Alistair Leslie-Hughes (3):
include: Add AACMFTEncoder coclass.
mfplat: Correctly calculate url scheme length.
mfuuid: Add more schema CLSIDs.
Bernhard Kölbl (1):
include: Add missing required iface and retval for IMapView<K, V>.
Connor McAdams (1):
wined3d: Fix comment in wined3d_texture_vk_download_data().
Damjan Jovanovic (1):
krnl386.exe: Fix VxD filename format checks in __wine_vxd_open().
Daniel Lehman (1):
msxml3/tests: Fix some double-frees of BSTRs.
Dmitry Timoshkov (6):
riched20/tests: Add a test to see what richedit class flavours should be available.
comctl32/tests: Print id value as decimal.
comctl32/tests: Add iItem and uChanged to LVN_ITEMCHANGING/LVN_ITEMCHANGED context.
comctl32/tests: Add more LVM_INSERTITEM tests.
comctl32/listview: Send change notifications when inserting (LVIS_SELECTED|LVIS_FOCUSED) items.
comctl32/listview: Fix changed notification mask for inserted items.
Eric Pouech (231):
mapi32: Enable compilation with long types.
mciavi32: Enable compilation with long types.
mcicda: Enable compilation with long types.
mciqtz32: Enable compilation with long types.
mciseq: Enable compilation with long types.
mciwave: Enable compilation with long types.
midimap: Enable compilation with long types.
mlang: Enable compilation with long types.
mmdevldr.vxd: Enable compilation with long types.
mmsystem.dll16: Enable compilation with long types.
monodebg.vxd: Enable compilation with long types.
mountmgr.sys: Enable compilation with long types.
mp3dmod: Enable compilation with long types.
mprapi: Enable compilation with long types.
mpr: Enable compilation with long types.
msacm32.drv: Enable compilation with long types.
msacm.dll16: Enable compilation with long types.
dsound: Enable compilation with long types.
dwrite: Enable compilation with long types.
gdiplus: Enable compilation with long types.
msacm32: Use extended structure definition for driver configuration.
http.sys: Build without -DWINE_NO_LONG_TYPES.
msado15: Enable compilation with long types.
msasn1: Enable compilation with long types.
msctf: Enable compilation with long types.
msctfmonitor: Enable compilation with long types.
msdaps: Enable compilation with long types.
msdmo: Enable compilation with long types.
msident: Enable compilation with long types.
msimtf: Enable compilation with long types.
msisip: Enable compilation with long types.
msnet32: Enable compilation with long types.
mspatcha: Enable compilation with long types.
msrle32: Enable compilation with long types.
msscript.ocx: Enable compilation with long types.
mssign32: Enable compilation with long types.
mstask: Enable compilation with long types.
msvfw32: Enable compilation with long types.
msvidc32: Enable compilation with long types.
msvideo.dll16: Enable compilation with long types.
httpapi: Build without -DWINE_NO_LONG_TYPES.
mfreadwrite: Enable compilation with long types.
msacm32: Enable compilation with long types.
mshtml: Enable compilation with long types.
mmdevapi: Enable compilation with long types.
gdiplus/tests: Get rid of some GCC11 warnings (-Warray-bounds).
gdiplus: Get rid of gcc11 warnings (-Warray-bounds).
mscoree: Enable compilation with long types.
nddeapi: Enable compilation with long types.
ndis.sys: Enable compilation with long types.
netapi32: Enable compilation with long types.
netcfgx: Enable compilation with long types.
netio.sys: Enable compilation with long types.
netprofm: Enable compilation with long types.
newdev: Enable compilation with long types.
ntdsapi: Enable compilation with long types.
ntoskrnl.exe: Enable compilation with long types.
ntprint: Enable compilation with long types.
odbc32: Enable compilation with long types.
odbccp32: Enable compilation with long types.
ole2disp.dll16: Enable compilation with long types.
ole2.dll16: Enable compilation with long types.
olecli32: Enable compilation with long types.
olecli.dll16: Enable compilation with long types.
oledb32: Enable compilation with long types.
oledlg: Enable compilation with long types.
olesvr32: Enable compilation with long types.
olesvr.dll16: Enable compilation with long types.
mfplat: Enable compilation with long types.
msadp32.acm: Enable compilation with long types.
msg711.acm: Enable compilation with long types.
msgsm32.acm: Enable compilation with long types.
cmd: Enable compilation with long types.
cmd/tests: Enable compilation with long types.
packager: Enable compilation with long types.
pdh: Enable compilation with long types.
powrprof: Enable compilation with long types.
printui: Enable compilation with long types.
prntvpt: Enable compilation with long types.
propsys: Enable compilation with long types.
pstorec: Enable compilation with long types.
qmgr: Enable compilation with long types.
query: Enable compilation with long types.
qwave: Enable compilation with long types.
rasapi32: Enable compilation with long types.
rpcrt4: Enable compilation with long types.
rsaenh: Enable compilation with long types.
rstrtmgr: Enable compilation with long types.
rtutils: Enable compilation with long types.
sane.ds: Enable compilation with long types.
sapi: Enable compilation with long types.
schannel: Enable compilation with long types.
schedsvc: Enable compilation with long types.
sechost: Enable compilation with long types.
secur32: Enable compilation with long types.
scrobj: Enable compilation with long types.
serialui: Enable compilation with long types.
setupapi: Enable compilation with long types.
setupx.dll16: Enable compilation with long types.
riched20: Enable compilation with long types.
quartz: Always allocate the entire VIDEOINFO structure.
ntdll/tests: Fully allocate SYSTEM_FIRMWARE_TABLE_INFORMATION.
kernel32/tests: Fully allocate SYSTEM_FIRMWARE_TABLE_INFORMATION.
kernel32/test: Fully allocate KEY_VALUE_*_INFORMATION.
oledb32/tests: Silence some gcc11 warnings (-Warray-bounds).
sfc_os: Enable compilation with long types.
shdocvw: Enable compilation with long types.
shell32: Enable compilation with long types.
shell.dll16: Enable compilation with long types.
shlwapi: Enable compilation with long types.
snmpapi: Enable compilation with long types.
sound.drv16: Enable compilation with long types.
spoolss: Enable compilation with long types.
sppc: Enable compilation with long types.
sti: Enable compilation with long types.
storage.dll16: Enable compilation with long types.
stress.dll16: Enable compilation with long types.
sxs: Enable compilation with long types.
tapi32: Enable compilation with long types.
taskschd: Enable compilation with long types.
toolhelp.dll16: Enable compilation with long types.
traffic: Enable compilation with long types.
twain_32: Enable compilation with long types.
typelib.dll16: Enable compilation with long types.
uianimation: Enable compilation with long types.
uiautomationcore: Enable compilation with long types.
uiribbon: Enable compilation with long types.
url: Enable compilation with long types.
urlmon: Enable compilation with long types.
wusa: Set subsystem to GUI.
uninstaller: Set subsystem to GUI.
usbd.sys: Enable compilation with long types.
userenv: Enable compilation with long types.
user.exe16: Enable compilation with long types.
uxtheme: Enable compilation with long types.
vbscript: Enable compilation with long types.
vcomp*: Enable compilation with long types.
vcruntime140: Enable compilation with long types.
vcruntime140_1: Enable compilation with long types.
vdhcp.vxd: Enable compilation with long types.
vdmdbg: Enable compilation with long types.
ver.dll16: Enable compilation with long types.
version: Enable compilation with long types.
virtdisk: Enable compilation with long types.
vmm.vxd: Enable compilation with long types.
vnbt.vxd: Enable compilation with long types.
vnetbios.vxd: Enable compilation with long types.
vssapi: Enable compilation with long types.
vtdapi.vxd: Enable compilation with long types.
vwin32.vxd: Enable compilation with long types.
w32sys.dll16: Enable compilation with long types.
wer: Enable compilation with long types.
wevtapi: Enable compilation with long types.
wevtsvc: Enable compilation with long types.
ctapi32: Enable compilation with long types.
nsi: Enable compilation with long types.
comctl32/tests: Don't outdent todo_wine*.
kernel32/tests: Don't outdent todo_wine*.
ole32/tests: Don't outdent todo_wine*.
advapi32/tests: Don't outdent todo_wine*.
bcrypt/tests: Don't outdent todo_wine*.
oledb32/tests: Don't outdent todo_wine*.
shell32/tests: Don't outdent todo_wine*.
user32/tests: Don't outdent todo_wine*.
msxml3/tests: Don't outdent todo_wine*.
dwrite/tests: Don't outdent todo_wine*.
msacm32/tests: Don't outdent todo_wine*.
windowscodecs/tests: Don't outdent todo_wine*.
wiaservc: Enable compilation with long types.
wimgapi: Enable compilation with long types.
win87em.dll16: Enable compilation with long types.
windows.media.devices: Enable compilation with long types.
windows.devices.enumeration: Enable compilation with long types.
windows.globalization: Enable compilation with long types.
windows.media.speech: Enable compilation with long types.
wing.dll16: Enable compilation with long types.
wininet: Enable compilation with long types.
winscard: Enable compilation with long types.
winsta: Enable compilation with long types.
wintab32: Enable compilation with long types.
wintab.dll16: Enable compilation with long types.
wintrust: Enable compilation with long types.
wlanapi: Enable compilation with long types.
wmp: Enable compilation with long types.
wmvcore: Enable compilation with long types.
wnaspi32: Enable compilation with long types.
winmm: Enable compilation with long types.
wineps.drv: Enable compilation with long types.
windowscodecs: Enable compilation with long types.
oleacc: Enable compilation with long types.
wsdapi: Enable compilation with long types.
wsock32: Enable compilation with long types.
wtsapi32: Enable compilation with long types.
winemapi: Enable compilation with long types.
activeds/tests: Enable compilation with long types.
adsldp/tests: Enable compilation with long types.
advapi32/tests: Enable compilation with long types.
advpack/tests: Enable compilation with long types.
amstream/tests: Enable compilation with long types.
apphelp/tests: Enable compilation with long types.
atl100/tests: Enable compilation with long types.
atl/tests: Enable compilation with long types.
avifil32/tests: Enable compilation with long types.
cabinet/tests: Enable compilation with long types.
comcat/tests: Enable compilation with long types.
comdlg32/tests: Enable compilation with long types.
comsvcs/tests: Enable compilation with long types.
credui/tests: Enable compilation with long types.
crypt32/tests: Enable compilation with long types.
cryptnet/tests: Enable compilation with long types.
cryptui/tests: Enable compilation with long types.
comctl32/tests: Use correct integral type.
comctl32/tests: Use inline function in expect*() macros to handle integral conversion.
dbghelp/tests: Enable compilation with long types.
dhcpcsvc/tests: Enable compilation with long types.
directmanipulation/tests: Enable compilation with long types.
dpvoice/tests: Enable compilation with long types.
dsdmo/tests: Enable compilation with long types.
dssenh/tests: Enable compilation with long types.
dwmapi/tests: Enable compilation with long types.
dxdiagn/tests: Enable compilation with long types.
explorerframe/tests: Use correct integral type.
explorerframe/tests: Enable compilation with long types.
faultrep/tests: Enable compilation with long types.
fusion/tests: Enable compilation with long types.
dplayx/tests: Use correct integral type.
dplayx/tests: Use function in checkFlags macro to handle integral conversion.
dplayx/tests: Enable compilation with long types.
dpnet/tests: Use correct integral type.
dpnet/tests: Enable compilation with long types.
dwrite/tests: Enable compilation with long types.
François Gouget (19):
msi/tests: Fix the trailing linefeed in an ok() message.
dinput/tests: Remove spaces before linefeeds.
dinput/tests: Remove an unneeded NULL cast.
d2d1/tests: Fix the spelling of an ok() message.
d3d11/tests: Fix the spelling of a couple of comments.
msdasql: Remove a couple of unneeded NULL casts.
kernel32/tests: Add a trailing linefeed to an ok() message.
hnetcfg: Fix the spelling of a TRACE() message.
ntdll: Fix the spelling of SystemPrioritySeparation.
iphlpapi: Fix ULONG comparisons, most notably for IPv4 addresses.
iphlpapi: Fix the IPv4 address network order for comparisons.
inetmib1: Avoid overflows in IPv4 address comparisons.
inetmib1: Fix the IPv4 address network order for comparisons.
ws2_32/tests: Remove the todo_wine on a test_recv() ok() call.
xinput1_3: Fix the spelling of a WARN() message and helper.
winebus.sys: Make hid_device_get_report_descriptor() static.
dbghelp: Fix the spelling and tweak the wording of a comment.
ncrypt: Add trailing linefeeds to ERR() messages.
winetest: Also trace the country and ANSI code page.
Gabriel Ivăncescu (3):
winepulse.drv: Expose audio devices to the application.
winepulse.drv: Cache the devices looked up in the registry.
winepulse.drv: Implement GetPropValue.
Giovanni Mascellani (2):
mfplat: Fix MFGetPlaneSize() behavior for invalid formats.
winegstreamer: Do not block forever if EOS races with command queue.
Hans Leidekker (9):
wbemprox: Build without -DWINE_NO_LONG_TYPES.
wbemprox/tests: Build without -DWINE_NO_LONG_TYPES.
wbemdisp: Build without -DWINE_NO_LONG_TYPES.
wmiutils: Build without -DWINE_NO_LONG_TYPES.
wldap32: Build without -DWINE_NO_LONG_TYPES.
webservices: Build without -DWINE_NO_LONG_TYPES.
webservices/tests: Build without -DWINE_NO_LONG_TYPES.
ncrypt: Build without -DWINE_NO_LONG_TYPES.
ncrypt: Fix resizing property array.
Henri Verbeet (1):
wined3d: Use the chunk allocator for GL vertex buffers.
Huw D. M. Davies (28):
winealsa: Remove alsa-pulse handle underrun workaround.
winealsa: Pass EDataFlow to alsa_try_open().
winealsa: Introduce a helper to retrieve the card name.
winealsa: Pass a unicode chunk2 to construct_device_id().
winealsa: Rewrite get_reg_devices() using the Nt registry api.
winealsa: Move get_endpoints_id to the unixlib.
winealsa: Explicitly store the name and channel count in the audio client.
winealsa: Use the global lock to lock the session.
winealsa: Introduce a stream structure.
winealsa: Move the pcm device opening to a helper.
winealsa: Move get_mix_format to the unixlib.
winealsa: Move is_format_supported to the unixlib.
winealsa: Move the stream creation to AudioClient_Initialize().
winealsa: Use the stream ptr to indicate the init state.
winealsa: Store the channel volumes in the stream.
winealsa: Remove an unnecessary check on the session channel count.
winealsa: Store the session channel vols in the stream.
winealsa: Store the session master volume in the stream.
winealsa: Store the session mute state in the stream volumes.
winealsa: Pass a stream ptr to alsa_{read|write}_data().
winealsa: Keep a copy of the dataflow in the stream.
winealsa: Use the sessions lock to lock the client's data.
winealsa: Use a pthread mutex for the stream lock.
winealsa: Use NtAllocateVirtualMemory() to alloc the buffers returned to the user.
winealsa: Move create_stream and release_stream to the unixlib.
winealsa: Move get_buffer_size to the unixlib.
winealsa: Move get_latency to the unixlib.
winealsa: Move get_current_padding to the unixlib.
Jacek Caban (60):
win32u: Move monitor_from_rect implementation from user32.
win32u: Move NtUserClipCursor implementation from user32.
win32u: Move GetClipCursor implementation from user32.
win32u: Move NtUserSetCursorPos implementation from user32.
win32u: Move MessageBeep implementation from user32.
win32u: Move GetCursorPos implementation from user.
win32u: Move window surfaces list from user32.
win32u: Move NtUserGetQueueStatus implementation from user32.
win32u: Move GetInputState implementation from user32.
win32u: Reset thread info in NtUserSetThreadDesktop.
win32u: Move NtUserGetAsyncKeyState implementation from user32.
win32u: Move ThreadDetach driver call from user32.
win32u: Move NtUserUnhookWinEvent implementation from user32.
win32u: Move NtUserSetWinEventHook implementation from user32.
win32u: Move NtUserNotifyWinEvent implementation from user32.
win32u: Move NtUserSetWindowsHookEx implementation from user32.
win32u: Move NtUserUnhookWindowsHookEx implementation from user32.
win32u: Move UnhookWindowsHook implementation from user32.
user32: Delay load setupapi.
gdi32: Link directly to user32.
win32u: Set user callbacks from user32 DllMain.
win32u: Move NtUserGetForegroundWindow implementation from user32.
win32u: Move primary palette handling from user32.
winex11: Get virtual screen rect from win32u.
winex11: Get primary monitor rect from win32u.
win32u/tests: Build without -DWINE_NO_LONG_TYPES.
user32: Use a single struct for static and animated cursor icons.
user32: Store module as unicode string in cursoricon_object.
user32: Use ntuser object type constants.
user32: Simplify cursor hotspot handling.
user32: Factor out create_icon_frame.
user32: Introduce NtUserSetCursorIconData.
user32: Use create_cursoricon_object in CreateIconIndirect.
user32: Use create_cursoricon_object in CURSORICON_CreateIconFromANI.
user32: Simplify icon delay handling.
win32u: Move user lock from user32.
win32u: Move user_handles from user32.
win32u: Move cursor icon handle management from user32.
win32u: Move NtUserSetCursor implementation from user32.
win32u: Move NtUserGetIconSize implementation from user32.
win32u/tests: Add cursor icon tests.
win32u: Move NtUserGetCursorFrameInfo implementation from user32.
win32u: Move NtUserGetIconInfo implementation from user32.
user32: Directly use NtUserGetIconInfo in GetIconInfo.
user32: Use GetIconInfo in CopyIcon.
win32u: Move NtUserDrawIconEx implementation from user32.
mshtml: Don't try to bind custom events to Gecko event target.
user32: Don't access cursoricon_object directly in CopyImage.
win32u: Move get_icon_param and set_icon_param from user32.
win32u: Move NtUserRegisterHotKey implementation from user32.
win32u: Move NtUserGetCursorInfo implementation from user32.
win32u: Move NtUserGetGUIThreadInfo implementation from user32.
user32: Use NtUserGetGUIThreadInfo in GetActiveWindow.
user32: Use NtUserGetGUIThreadInfo in GetFocus.
win32u: Partially move handle_internal_message from user32.
win32u: Move call_current_hook implementation from user32.
win32u: Move NtUserCallNextHookEx implementation from user32.
win32u: Move call_hooks implementation from user32.
win32u: Move GetWindowThreadProcessId implementation from user32.
win32u: Move IsWindow implementation from user32.
Lauri Kenttä (1):
po: Update Finnish translation.
Mark Harmstone (2):
winepulse.drv: Fetch actual application name, if possible.
winepulse.drv: Implement PKEY_AudioEndpoint_PhysicalSpeakers device prop.
Matteo Bruni (7):
include: Add missing CreateProcessWithTokenW() declaration.
ddraw: Filter out redundant discard maps.
d3dx9/tests: Fix initialization of texture levels > 0 in test_D3DXSHProjectCubeMap().
d3dx9/tests: Initialize an input variable.
d3dx9/tests: Get rid of unnecessary ifs.
d3dx9: Build with nameless unions.
d3dx9: Handle D3DXCONSTTABLE_LARGEADDRESSAWARE flag.
Michael Stefaniuc (5):
dmsynth: Implement the synth GetFormat method.
dmsynth/tests: Add synth GetFormat tests.
dmsynth: Implement the sink GetDesiredBufferSize method.
dmusic: Forward GetFormat() to the corresponding synth & sink methods.
dmusic: Sync up the dmobject.c files.
Mohamad Al-Jaf (2):
wusa: Use case insensitive comparison for expressions.
ntdll: Fix the spelling of a comment.
Nikolay Sivov (39):
oleaut32: Build without -DWINE_NO_LONG_TYPES.
mfmediaengine/tests: Build without -DWINE_NO_LONG_TYPES.
mfreadwrite/tests: Build without -DWINE_NO_LONG_TYPES.
mfplay: Implement UpdateVideo().
mfplay: Handle shutdown state in media item methods.
mfplay: Fix IsProtected() return value.
mfplat/tests: Add a separate test function for MFGetPlaneSize().
winepulse: Use FAILED() instead of non-zero result check.
winegstreamer: Raise MESourceRateChanged on SetRate().
mf/session: Use nameless union for command structure.
mf/session: Initial implementation of playback rate change.
mfplay: Enable rate control methods.
mf/evr: Implement IsRateSupported().
mf/evr: Fix rate limits methods.
winegstreamer: Maintain playback rate value for the media source.
mfplay: Shutdown sources when media items are released.
mfplat: Fix playback rate handling in system time source.
mf/tests: Add some tests for rate support in SAR.
scrrun: Add a stub for pipe-based text stream.
mfmediaengine: Shutdown media source when clearing current presentation.
mfmediaengine: Implement GetResourceCharacteristics().
mfmediaengine: Handle realtime mode flag.
mfmediaengine: Implement GetPresentationAttribute().
mfmediaengine: Implement GetStreamAttribute().
usp10/tests: Build without -DWINE_NO_LONG_TYPES.
usp10/tests: Remove workarounds for missing functions.
scrrun: Move IO mode check to writing helper.
scrrun: Use same write implementation for pipe stream.
wshom: Create standard streams when starting new process with Exec().
wshom: Implement standard streams properties for Exec object.
mfplat: Add VT_R4 case for propvariant tracing.
shcore/tests: Build without -DWINE_NO_LONG_TYPES.
dxva2/tests: Build without -DWINE_NO_LONG_TYPES.
t2embed/tests: Build without -DWINE_NO_LONG_TYPES.
browseui/tests: Build without -DWINE_NO_LONG_TYPES.
atlthunk/tests: Build without -DWINE_NO_LONG_TYPES.
dispex/tests: Build without -DWINE_NO_LONG_TYPES.
msxml3/tests: Build without -DWINE_NO_LONG_TYPES.
comctl32/listview: Initialize subitem text buffer before drawing each subitem.
Paul Gofman (4):
wined3d: Clear GL backbuffer in wined3d_context_gl_init().
ntdll: Do not force 2G stack limit for the main thread of 64 bit process.
kernel32: Import RtlCaptureContext() instead of forwarding.
kernel32: Import RtlRestoreContext() instead of forwarding.
Piotr Caban (13):
concrt140/tests: Build without -DWINE_NO_LONG_TYPES.
msvcp120/tests: Build without -DWINE_NO_LONG_TYPES.
msvcp140_atomic_wait/tests: Build without -DWINE_NO_LONG_TYPES.
msvcp140/tests: Build without -DWINE_NO_LONG_TYPES.
msvcp90/tests: Build without -DWINE_NO_LONG_TYPES.
msvcr100/tests: Build without -DWINE_NO_LONG_TYPES.
msvcr120/tests: Build without -DWINE_NO_LONG_TYPES.
msvcrtd/tests: Build without -DWINE_NO_LONG_TYPES.
msvcr90/tests: Build without -DWINE_NO_LONG_TYPES.
msvcrt/tests: Build without -DWINE_NO_LONG_TYPES.
ucrtbase/tests: Build without -DWINE_NO_LONG_TYPES.
msvcirt/tests: Fix uninitialized variable warning.
msvcirt/tests: Build without -DWINE_NO_LONG_TYPES.
Rafał Harabień (7):
user32/tests: Add tests for more static control styles.
user32/tests: Test static control exstyle.
user32/tests: Check client rect in static control tests.
user32: Fix handling of SS_ETCHEDHORZ/SS_ETCHEDVERT static control styles.
user32: Send WM_CTLCOLORSTATIC for all static control types.
user32/tests: Fix invalidation in static control tests.
user32/tests: Remove now unused TODO_COUNT in static tests.
Roman Pišl (3):
kernel32/tests: Add test for GetConsoleProcessList.
server: Add console process list ioctl.
kernel32: Implement GetConsoleProcessList.
Rémi Bernon (56):
winebus.sys: Only call SDL_HapticRumbleInit if supported, as a fallback.
winebus.sys: Request haptics effect to stop when only when needed.
winebus.sys: Stop haptics effects using the right function.
winebus.sys: Fix HID haptics waveform NONE / STOP ordinals.
xinput1_3: Use _ordinal rather than _index suffix for haptics waveforms.
mf: Handle MESourceSeeked and MEStreamSeeked state change events.
xinput1_3: Use the implicit Stop waveform ordinal to stop the effects.
winebus.sys: Use a separate hid_device_vtbl function to stop haptics.
winebus.sys: Pack the HID haptics waveform report struct.
winebus.sys: Add a repeat count value to haptics output report.
xinput1_3: Use the implicit None waveform to trigger both waveforms.
xinput1_3: Use WM_DEVICECHANGE device path to add or remove devices.
xinput1_3: Only write haptics waveform reports when needed.
winebus.sys: Add missing static qualifiers in bus_sdl.c.
dinput: Set HID joystick internal ref before trying to open it.
dinput: Ignore override flag for non-XInput devices.
dinput: Use DIEFT_GETTYPE instead masking bits.
winegstreamer: Remove unnecessary DECLSPEC_HIDDEN qualifier.
winegstreamer: Move format helpers to a dedicated source.
winegstreamer: Introduce new WG_MAJOR_TYPE_WMA major type.
winegstreamer: Introduce new wg_transform struct.
winegstreamer: Create static pads on wg_transform struct.
dinput: Also trace report buffers on immediate ReadFile success.
dinput: Only read effect state reports when exclusively acquired.
dinput: Remove unnecessary critical section entry.
dinput: Report optional force feedback state only if supported.
mf/tests: Add some H264 decoder creation tests.
mf/tests: Add some H264 decoder GetInputAvailableType tests.
mf/tests: Add some H264 decoder SetInputType tests.
mf/tests: Add some H264 decoder GetOutputAvailableType tests.
mf/tests: Add some H264 decoder SetOutputType tests.
include: Use fully qualified names in windows.foundation.collections.idl.
widl: Support declaring multiple namespaces at once.
include: Remove nested namespaces in windows.gaming.input.idl.
include: Add Windows.Devices.Haptics.SimpleHapticsController definition.
include: Add Windows.Gaming.Input.IRawGameController2 definition.
dinput: Avoid invalid rglDirection access when effect cAxes is 0.
winebus.sys: Use a local variable to access hid_device_state.
winebus.sys: Link the first two absolute axes to the effect directions.
dinput/tests: Add more tests for simulation HID usages.
winegstreamer: Remove \n at the end of GST log messages.
winegstreamer: Move the conditional cleanup to the create error path.
winegstreamer: Add a bin container element to wg_transform.
winegstreamer: Append audioconvert and audioresample elements.
winegstreamer: Lookup and instantiate a WMA decoder element.
mf/tests: Add some H264 decoder GetInputStreamInfo tests.
mf/tests: Add some H264 decoder GetOutputStreamInfo tests.
mf/tests: Always initialize sample data in create_sample helper.
mf/tests: Add some H264 decoder Process(Input|Output) tests.
dinput/tests: Add some windows.gaming.input hotplug tests.
dinput/tests: Add some windows.gaming.input device tests.
dinput/tests: Add tests for IRawGameControllerStatics_FromGameController.
dinput/tests: Add tests for IGamepadStatics_get_Gamepads.
winegstreamer: Link the container pads and activate ours.
winegstreamer: Send stream-start, caps, and segment events on creation.
mf/tests: Check H264 decoder formats after stream change.
Santino Mazza (14):
bcrypt: Add BCRYPT_KEY_BLOB struct definition.
ncrypt/tests: Test key import of an rsa key.
ncrypt: Make NCryptOpenStorageProvider return a valid stub pointer.
ncrypt: Implement NCryptImportKey function.
ncrypt/tests: Test NCryptFreeObject function.
ncrypt: Implement NCryptFreeObject.
ncrypt: Implement NCryptGetProperty and NCryptSetProperty.
ncrypt: Set a couple of key properties.
ncrypt: NCryptGetProperty should always fill result size.
ncrypt: Add NCryptVerifySignature stub.
ncrypt: Validate existence of property before creating one.
ncrypt: Check null handle when setting or getting properties.
ncrypt/tests: Test for NCryptCreatePersistedKey.
ncrypt/tests: Test for NCryptSetProperty.
Sven Baars (5):
ntoskrnl.exe/tests: Fix some memory leaks (Valgrind).
rsaenh: Store a BCRYPT_HASH_HANDLE in CRYPTHASH.
rsaenh: Properly destroy hashes created by CPCreateHash() (Valgrind).
ntoskrnl.exe/tests: Let CertCloseStore() delete the certificate context.
crypt32/tests: Fix a memory leak (Valgrind).
Zebediah Figura (62):
kernelbase: Include the null terminator in the length passed to WideCharToMultiByte() in UrlGetPartA().
kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME when used with URL_PART_SCHEME or URL_PART_QUERY.
kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME for file URLs.
kernelbase: Also parse hostnames for news schemes in UrlGetPart().
kernelbase: Do not initialize output params on failure in UrlGetPart().
wined3d: Allow up to 128 MiB of persistently mapped memory on 32-bit architectures.
wined3d: Keep a client reference count for the BO map pointer.
wined3d: Allow NOOVERWRITE maps to be accelerated on 32-bit architectures.
d3dx9: Do not use d3dx_effect_cleanup() in D3DXCreateEffectEx().
d3dx9: Separate out d3dx9_effect_init_from_dxbc().
d3dx9/tests: Add more tests for ID3DXEffect::CloneEffect().
d3dx9: Implement ID3DXEffect::CloneEffect().
ntdll: Use YieldProcessor() in RtlEnterCriticalSection().
kernelbase: Also return E_FAIL when trying to parse username, password, or port for non-Internet URLs.
kernelbase: Allow hostnames to contain any characters in UrlGetPart().
kernelbase: Allow ports to contain any characters in UrlGetPart().
kernelbase: Allow usernames and passwords to contain any characters in UrlGetPart().
kernelbase: Do not return the question mark as part of the query string from UrlGetPart().
wined3d: Move struct wined3d_buffer_ops to buffer.c.
wined3d: Pass a wined3d_range array to wined3d_context_copy_bo_address().
wined3d: Use wined3d_context_copy_bo_address() to upload buffer ranges.
wined3d: Use wined3d_context_copy_bo_address() to download buffer ranges.
kernelbase: Parse query strings even without a slash after the host in UrlGetPart().
kernelbase: Return void from parse_url().
kernelbase: Return E_INVALIDARG when requesting URL_PART_USERNAME and there is no username.
kernelbase: Return E_INVALIDARG when requesting URL_PART_PASSWORD and there is no password.
kernelbase: Return E_INVALIDARG when requesting URL_PART_PORT and there is no port.
wined3d: Pass a wined3d_device_gl pointer to wined3d_context_gl_create_bo().
wined3d: Protect access to the OpenGL wined3d_allocator with a critical section.
wined3d: Allow passing a NULL context to wined3d_device_gl_create_bo().
wined3d: Don't use persistent BOs from the client thread if we might need to do vertex attribute conversion.
kernelbase: Allow the two initial slashes to be backslashes in UrlGetPart().
kernelbase: Get rid of the "size" and "type" arguments to scan_url().
kernelbase: Allow schemes to contain uppercase characters in UrlGetPart().
kernelbase: Prepend the scheme even if the requested URL part is empty.
wined3d: Protect wined3d_chunk_gl map fields with a mutex.
wined3d: Move the "pin sysmem" flag to struct wined3d_resource.
wined3d: Do not allocate upload bufers for resources pinned to system memory.
wined3d: Try to allocate new OpenGL BOs from the client thread for DISCARD maps.
wined3d: Treat NOOVERWRITE maps on a previously discarded buffer as if they were DISCARD maps.
wined3d: Set a valid map pointer in adapter_gl_alloc_bo() if possible.
wined3d: Introduce a wined3d_texture_update_sub_resource() helper.
quartz/tests: Reset sink event counters when initializing the stream.
quartz/tests: Test the timestamps associated with new segments.
winegstreamer: Manually send new segment events.
winegstreamer: No longer queue WG_PARSER_EVENT_SEGMENT.
winegstreamer: Explicitly sleep in the DirectShow streaming thread after receiving EOS.
winegstreamer: Remove support for flushing the wg_parser object.
winegstreamer: Return S_FALSE from wg_parser_stream_get_event() if the stream is EOS.
winegstreamer: Get rid of the queue_stream_event() helper.
winegstreamer: Flatten wg_parser_event into a wg_parser_buffer structure.
wined3d: Introduce a wined3d_texture_get_bo_address() helper.
wined3d: Remove the now redundant "locations" parameter from wined3d_texture_get_memory().
wined3d: Handle WINED3D_LOCATION_CLEARED in wined3d_texture_load_location().
wined3d: Handle DISCARDED and CLEARED locations in wined3d_texture_get_memory().
wined3d: Consider WINED3D_LOCATION_CLEARED to be a CPU-accessible location.
wined3d: Use WINED3D_LOCATION_CLEARED for the initial location of textures.
wined3d: Allocate texture BOs from heap.
wined3d: Accelerate texture DISCARD maps as well.
winegstreamer: Don't unlink pads before dereferencing them.
winegstreamer: Do not use multiple cleanup labels in wg_transform_create().
wined3d: Allocate a heap memory buffer in wined3d_cs_map_upload_bo() if possible.
Ziqing Hui (1):
wininet: Support more internet time format.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 6.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/6.0/wine-6.0.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0.3 (total 46):
30244 Might & Magic Clash of Heroes: fails to start
36887 Trusteer Rapport setup crashes on unimplemented function ntoskrnl.exe.PsGetCurrentProcessSessionId
37592 Filenames in themed file dialog change size
39142 Roblox Client/Server connection is dropped with error "This server has shut down."
41292 Nexton LC-ScriptEngine freezes, possibly bad dsound notifications
47047 Multiple kernel drivers crash due to missing 'ntoskrnl.exe.MmGetPhysicalAddress' semi-stub (64-bit MRAC Anti-Cheat (My.Com Warface) kernel service, DELL BIOS flash utility, BattlEye Anti-Cheat)
47505 Levelhead: Fatal error when attempting to access the game's servers when logged in
47791 Inconsistent %ERRORLEVEL% after setting env var value in cmd.exe
48891 Bash from Cygwin/msys2 terminates after first command
49625 winedbg --command 'info wnd' fails with Exception c0000005
49726 ChrisPC Free VPN Connection 2.x crashes on unimplemented function rasapi32.dll.RasSetCredentialsA when clicking 'Connect to VPN'
50041 Amnesia: Rebirth crashes with builtin vcomp140
50113 Total Commander 9.51: when using a third-party theme with Windows XP, the drive buttons and function buttons at the bottom of the window (F5 Copy) are not displayed
50244 Melodyne 5: activation via internet fails with 12152 error
50272 Melodyne 5: activation via internet produces "Unknown Error"
50404 Sims 4 crashes on startup with builtin msvcrt
50412 Wrong check for needed access rights in QueryServiceConfig2
50603 WiX Toolset v3.11 installer crashes when loading update feed XML
50615 Excel 2007 needs ICreateTypeInfo2::DeleteFuncDesc()
50735 MSBuild fails to launch FileTracker
51221 Dangerous Water crash when starting a Multiplayer game (requires IDirectPlay8Server_EnumServiceProviders implementation)
51244 Frostpunk doesn't launch with builtin msvcr120
51264 GUI exe receives invalid StdOutput HANDLE if launched via ShellExecuteEx
51267 Rise of Legends Demo crashes with null pointer exception inside SAXReader::parseURL
51291 Youkoso! Sukebe Elf no Mori e (demo) doesn't show thumbnail image in monitor settings.
51302 NASCAR '15 Victory Edition gets in infinite loop on launch
51303 Metal Gear Solid V: Ground Zeroes needs d3d11_swapchain_GetLastPresentCount implementation
51348 uxtheme.SetWindowTheme should use SendMessage to send WM_THEMECHANGED
51358 Civilization 4: XML load error when trying to start
51382 NetEase Cloud Music crashes on zh_CN.UTF-8 locale.
51435 iostream float formatting broken since Wine 5.12-170-g1bc6f0c8617
51452 oleaut32:varformat fails in Wine when the currency sign has two characters or more
51465 EVE Online launcher crashes
51503 vbscript parser error in expression with # char
51505 MIDISelector's MIDI mapper configuration doesn't take effect
51506 Disabled controls are not greyed out when theming is active
51535 Native Access 1.13.3 crashes on unimplemented function virtdisk.dll.DetachVirtualDisk
51553 Purple bitmap should be transparent in scrollbar theming
51574 swscanf_s with %zu fails for valid value
51576 Click-N-Type 3.03 virtual keyboard installer sometimes has two task panes
51590 services:service fails when the KDE taskbar is at the top
51591 AFxW: file list panes aren't updated at start-up
51635 wine fails to build with glibc 2.34
51728 copypasta in pwcache.c:ctox()
51894 ucrtbase:misc fails on some Windows 10 1607 and 1709
51932 wine-stable 6.0.2 build fails in Ubuntu 21.10
----------------------------------------------------------------
Changes since 6.0.2:
Akihiro Sagawa (6):
ntdll/tests: Expand path name tests with path + device name.
ntdll: Validate directory path when the path name ends with a dos device name.
ntdll: Fix null pointer dereference in RtlDosPathNameToNtPathName_U_WithStatus.
midimap: Introduce XP form and prefer it.
user32/tests: Test pending redraw state with owner-drawn list box.
user32/listbox: Fix redraw after LB_SETCOUNT message.
Alex Henrie (2):
ntoskrnl: Add MmGetPhysicalAddress semi-stub.
rasapi32: Add RasSetCredentialsA/W stubs.
Alexandre Julliard (2):
ntdll: Avoid crash on shutting down partially initialized thread.
wininet/tests: Mark a failing test as todo.
Alistair Leslie-Hughes (5):
services: Check correct permission for QueryServiceConfig2W.
dpnet: Implement IDirectPlay8Server EnumServiceProviders.
ntoskrnl.exe: Implement PsGetCurrentProcessSessionId.
wininet: Reset context length for http status 304.
wininet: Allow up to 4K for response headers.
Andrew Boyarshin (1):
include: Fix IRequestDictionary IID.
Andrew Eikum (1):
comctl32: Avoid gcc 11 maybe-uninitialized warning.
Andrey Gusev (1):
msvcr120: Add version.rc file.
Austin English (1):
virtdisk: Add DetachVirtualDisk stub.
Bernhard Übelacker (1):
attrib: Avoid crash when called without parameter.
Brendan McGrath (1):
kernelbase: Don't pass StdHandles with CREATE_NEW_CONSOLE.
Damjan Jovanovic (4):
server: The owner of a securable object should have all the standard access rights.
msxml3: Return S_FALSE from IXMLDOMNamedNodeMap::nextNode() when there are no attributes.
msxml3/tests: Add some regex tests.
msxml3: Use XSD regex quantifier format S{0, m} instead of S{, m}.
Dmitry Timoshkov (1):
vcruntime140_1: Fix compilation with clang.
Eric Pouech (1):
winedbg: Fix crash when no process attached in 'info wnd' command.
Fabian Maurer (3):
configure: Improve resolv lib test for glibc 2.34.
mpr: Fix copy paste error when converting hex char to int.
msi: Set dialog as parent in subsequent dialog.
Florian Eder (1):
cmd: Do not change errorlevel when setting environment variables.
François Gouget (16):
ntdll: Fix the spelling of a comment.
oleaut32/tests: Allow testing VarParseNumFromStr() using Unicode strings.
oleaut32/tests: Add more VarParseNumFromStr() tests.
oleaut32: Fix VarParseNumFromStr()'s support for two-character currencies.
oleaut32: VarParseNumFromStr() accepts trailing currency symbols.
oleaut32: Setting sThousand to a non-breaking space also matches regular spaces.
oleaut32: Fix a trace containing a null character.
oleaut32/tests: Fix the Swiss franc and Moroccan dirham tests.
oleaut32: VarParseNumFromStr() does not allow leading thousands separators.
oleaut32: Fix VarParseNumFromStr()'s support for trailing thousands separator spaces.
oleaut32/tests: Test VarParseNumFromStr()'s handling of LOCALE_SMON*.
oleaut32/tests: Add more VarParseNumFromStr() hexadecimal/octal tests.
oleaut32: Remove caching from VARIANT_GetLocalisedNumberChars().
oleaut32: Fix VarParseNumFromStr()'s handling of currency thousands separators.
oleaut32: Add support for longer currency symbols.
gdiplus: GdipGetFamilyName() should not crash when given a NULL name.
Gerald Pfeifer (1):
ntdll: Only use sysinfo function when present.
Gijs Vermeulen (2):
vcomp: Implement omp_get_num_procs().
ntdll: Avoid declaration-after-statement warning.
Giovanni Mascellani (1):
kernelbase: Fix an incorrect allocation size.
Hans Leidekker (10):
wldap32: Rename ldap_connect() to avoid a name conflict.
winhttp: Pass a socket pointer to send_bytes() and receive_bytes().
winhttp: Read any data left in the request buffer for websocket connections.
winhttp: Call read_data() at least once in drain_content().
winhttp: Call drain_content() before clear_response_headers().
winhttp: Fix return value for relative redirects.
winhttp: Don't remove content-type/length headers in handle_redirect().
winhttp/tests: Add redirect tests.
wbemprox: Return an empty array for __DERIVATION.
wbemprox: Add __DERIVATION to the list of system properties.
Henri Verbeet (2):
dxgi/tests: Add a test for swapchain present counts.
dxgi: Implement d3d11_swapchain_GetLastPresentCount().
Hiroki Awata (1):
dsound: Notify DSBPN_OFFSETSTOP earlier.
Jacek Caban (2):
advapi32: Link to msvcrt.dll.
include: Use __builtin_offsetof on Clang.
Jactry Zeng (1):
gdi32: Fix a typo in unix_face_create().
Jan Sikorski (1):
winemac.drv: Omit WM_ENTER/EXITSIZEMOVE on non-interactive window changes.
Jefferson Carpenter (1):
msxml3/saxreader: Handle null url in parseURL().
Kalen Alwardt (1):
ntdll: Export ZwFilterToken().
Nikolay Sivov (2):
oleaut32: Added ICreateTypeInfo2::DeleteFuncDesc().
d3dx9/effect: Reset output handle for next after last technique in FindNextValidTechnique().
Oleg Dubinskiy (1):
include: Add RASCREDENTIALSA/W structures.
Paul Gofman (2):
wined3d: Add GPU information for AMD VANGOGH.
kernelbase: Fix copy size for delete_privs in CreateRestrictedToken().
Piotr Caban (3):
msvcrt: Update round_limb on first limb length change in printf.
msvcrt: Support z length modifier in scanf.
ucrtbase: Fix fopen x mode test failures.
Robert Wilhelm (1):
vbscript: Support date and time literals.
Roman Pišl (1):
ntdll: Don't pretend that the whole address space is reserved on non-i386.
Rémi Bernon (4):
msvcrt: Set next_token when str is empty in wcstok_s.
dssenh/tests: Add CryptAcquireContextA last error check.
dssenh: Return NTE_BAD_KEYSET when key cannot be opened.
dssenh: Only fill hash buffer when it's provided.
Ted Lyngmo (1):
ucrtbase: Add support for x mode in fopen.
Vijay Kiran Kamuju (1):
msdrm: Add stub DRMRegisterContent function.
Zebediah Figura (2):
quartz: Do not print an incorrect state warning in MediaFilter_GetState() if a filter has been run asynchronously.
server: Return STATUS_KEY_DELETED when trying to retrieve the full name of a deleted key.
Zhiyi Zhang (8):
uxtheme/tests: Test SetWindowTheme() with a non-existent subclass.
uxtheme: Fall back to default class if the specified subclass is not found.
uxtheme/tests: Test that SetWindowTheme() should send WM_THEMECHANGED instead of posting it.
uxtheme: Send WM_THEMECHANGED instead of posting it in SetWindowTheme().
uxtheme: Fix incorrect part IDs in button class map.
uxtheme: Use TransparentBlt() for bitmaps with all alpha values being 0xff.
user32: Report a fake monitor when running on an invisible window station.
uxtheme: Get and set system metrics in 96 DPI.
--
Michael Stefaniuc
mstefani(a)winehq.org