diff --git a/ANNOUNCE b/ANNOUNCE index 97612a33ff8..b8d9a46d627 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,15 +1,15 @@ -The Wine development release 7.7 is now available. +The Wine development release 7.8 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. + - 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.7.tar.xz - http://mirrors.ibiblio.org/wine/source/7.x/wine-7.7.tar.xz + 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: @@ -25,453 +25,589 @@ AUTHORS in the distribution for the complete list. ---------------------------------------------------------------- -Bugs fixed in 7.7 (total 11): +Bugs fixed in 7.8 (total 37): - 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" + 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.6: +Changes since 7.7: -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. +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: Return valid object in Recordset::Clone. + msado15: Implement _Recordset get_EditMode. -Aurimas Fišeras (1): - po: Update Lithuanian translation. +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. -Austin English (1): - dbghelp: Downgrade a FIXME to a WARN. +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. -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. +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): - wow64cpu: Use different JMP instruction to work around Rosetta bug. - ntdll/tests: Test that threads have unique TEBs. + wrc: Support function macros where varargs are the only argument. + include: Add WINE_ALLOC_SIZE attribute to heap_calloc(). -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. +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. -Daniel Lehman (1): - include: Add some math declarations. +Dmitry Timoshkov (1): + ieframe: Initialize new history log entry. -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. +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. -Esme Povirk (2): - gdiplus: Accept newer version in OpenType header. - windowscodecs: pceltFetched is optional in IWICEnumMetadataItem. +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: Update Dutch translation. + po: Add missing examples in 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. +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 (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. +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): - 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. + loader/wine.inf: Update time zone data. + mfplat: Avoid a race condition when releasing a tracked sample. -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. +Hans Leidekker (1): + mshtml: Added IHTMLCSSStyleDeclaration::backgroundSize property implementation. -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. +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 (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. +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 (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. +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: 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. + 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. -Jinoh Kang (1): - include: Remove duplicate definitions of UOI_* macros. +Jan Sikorski (1): + msvcrt: Faster memcmp(). -Julian Rüger (1): - po: Update German translation. +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. -Matteo Bruni (1): - d3dxof/tests: Remove redundant skips after ok() calls. +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 CMSMPEGDecoderMFT coclass. - include: Add CLSID_MSVPxDecoder declaration. + include: Add windows.ui.idl file. + include: Add windows.media.closedcaptioning.idl file. -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. +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 (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(). +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(). -Rafał Harabień (2): - user32: Use SWP_NOACTIVATE flag when resizing etched static control. - user32/tests: Remove duplicated SS_*RECT static control tests. +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 (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. +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. -Timo Zuccarello (1): - winex11.drv: Do not assign reserved virtual key 0xE0 to key codes. +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. -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(). +Torge Matthies (3): + msvcr110: Add _StructuredTaskCollection::_StructuredTaskCollection_ctor stub. + sc/tests: Add tests. + sc: Allow using separate arguments for parameter name and value. -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. +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(). -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(). +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 diff --git a/AUTHORS b/AUTHORS index 20fe6e82afd..4a4129dad17 100644 --- a/AUTHORS +++ b/AUTHORS @@ -151,6 +151,7 @@ Andy Clayton Andy Norris Andy Rysin Aneurin Price +Angelo Haller Anish Mistry Anssi Hannula Anthony Fok diff --git a/VERSION b/VERSION index 7a4a2b39947..a6ee23ac59f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Wine version 7.7 +Wine version 7.8 diff --git a/configure b/configure index fff321f416c..f507d5fe6f0 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for Wine 7.7. +# Generated by GNU Autoconf 2.71 for Wine 7.8. # # Report bugs to . # @@ -611,8 +611,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Wine' PACKAGE_TARNAME='wine' -PACKAGE_VERSION='7.7' -PACKAGE_STRING='Wine 7.7' +PACKAGE_VERSION='7.8' +PACKAGE_STRING='Wine 7.8' PACKAGE_BUGREPORT='wine-devel@winehq.org' PACKAGE_URL='https://www.winehq.org' @@ -2286,7 +2286,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Wine 7.7 to adapt to many kinds of systems. +\`configure' configures Wine 7.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2356,7 +2356,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Wine 7.7:";; + short | recursive ) echo "Configuration of Wine 7.8:";; esac cat <<\_ACEOF @@ -2623,7 +2623,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Wine configure 7.7 +Wine configure 7.8 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -3107,7 +3107,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Wine $as_me 7.7, which was +It was created by Wine $as_me 7.8, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -22773,7 +22773,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Wine $as_me 7.7, which was +This file was extended by Wine $as_me 7.8, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22837,7 +22837,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -Wine config.status 7.7 +Wine config.status 7.8 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\"