Wine release 7.8
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.xz
http://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 has announced a new development version of Wine with X11 and OSS drivers converted to PE, WoW64 support in the sound drivers, number formatting using the new locale database, and various bug fixes.