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
The Wine development release 7.2 is now available.
What's new in this release (see below for details):
- Large scale cleanup to support 'long' type with MSVCRT.
- Mono engine updated to version 7.1.1.
- More theming fixes in common controls.
- Beginnings of a WMA decoder.
- Support for 64-bit time_t.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.2.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.2 (total 23):
12732 Nota Bene crashes on install
33086 QQ 2013 Beta2: text in input box can't display normally
34326 uplive.exe from TypeEasy crashes
36566 Half-Life's (CD Version) Menu refuses to work after a while
37609 Macromedia Freehand 9 demo hangs during startup
38809 QQ 7.3 Light crashes randomly
40827 VMWare VSphere 4.x/5.x/6.x clients fail to install
44202 undname.c fails to parse symbols with rvalue-reference semantics '&&'
46284 Call of Juarez crashes with unimplemented function d3dx9_29.dll.D3DXSHProjectCubeMap
47463 QQ 9.1.5 crash on start.
48815 user32:win "unexpected 0x738 message" Windows 10 failures
50352 Maximum sockets per process is set very low
50842 The 64-bit msado15:msado15 test crashes
51130 user32:win test_SetActiveWindow() has 2 failures on Vista to Windows 8.1
51392 user32:monitor breaks user32:win
51513 Multiple applications (PG Offline 4.0.907, lessmsi v1.10.0, MIDIopsy 1.2, Quickroute) crash on start with IndexOutOfRangeException with Wine-Mono
51754 Iris Down CountDown Crash at start - dotnet4.5
51798 MAmidiMEmo doesn't start up ("System.resources" is required)
52433 TASInput (Mupen64-RR-Lua): checkbox is not cleared correctly
52436 In Light Blue theme, checkable toggle buttons (BS_AUTOCHECKBOX) look unchecked when hovered
52490 Clipboard.GetText() doesn't work
52494 shell32 progman_dde tests crash if run immediately after prefix creation
52510 alt:V mod for Grand Theft Auto V fails due to missing concrt140._Byte_reverse_table@details@Concurrency@@3QBEB
----------------------------------------------------------------
Changes since 7.1:
Alex Henrie (12):
msi: Fix memory leak in get_fusion_filename (Coverity).
winhttp: Fix memory leak on error path in WinHttpCrackUrl (Coverity).
adsldp: Fix memory leak on error path in search_ExecuteSearch (Coverity).
conhost: Fix memory leak on error path in create_screen_buffer (cppcheck).
dbghelp: Fix memory leak on error path in dwarf2_read_range (cppcheck).
ws2_32: Fix memory leak on error path in get_local_ips (cppcheck).
ws2_32: Fix memory leaks on error paths in unix_gethostby* (scan-build).
explorer: Only try to destroy the IShellWindows object if it exists.
sane: Fix memory leak in create_item (Coverity).
winspool: Fix memory leaks on error path in DeviceCapabilitiesA (Coverity).
user32/tests: Expect DialogBoxParam to set ERROR_CANNOT_FIND_WND_CLASS.
shell32/tests: Wait for window to close in check_window_exists.
Alexandre Julliard (9):
ntdll: Consistently use time_t in timezone matching.
configure: Enable 64-bit time_t on Linux.
configure: Only define _TIME_BITS together with _FILE_OFFSET_BITS.
msado15: Fix some LONG/LONG_PTR mismatches.
faudio: Import upstream release 22.02.
make_xftmpl: Use the standard output buffer routines.
winebuild: Store length of Unicode strings explicitly.
wrc: Use compare_name_id() for resource translations.
tools: Consistently use xmalloc/xrealloc/xstrdup everywhere.
Alistair Leslie-Hughes (11):
msdasql: Fix printf format warnings with long types.
msdasql: Add ITransaction to session interface.
msdasql/tests: Fix printf format warnings with long types.
dpnet: Fix long types printf warnings.
xactengine: Fix long types printf warnings.
dplayx: Build without -DWINE_NO_LONG_TYPES.
xactengine3_7/tests: Build without -DWINE_NO_LONG_TYPES.
msdasql: ICommandText Execute use ODBC to fetch results.
xolehlp: Build without -DWINE_NO_LONG_TYPES.
wow64: Build without -DWINE_NO_LONG_TYPES.
xaudio2_7/tests: Build without -DWINE_NO_LONG_TYPES.
Andrey Gusev (2):
api-ms-win-security-lsalookup-ansi-l2-1-0: Add dll.
winegstreamer: Handle EnableDiscreteOutput and SpeakerConfig settings in WMSyncReader_SetOutputSetting().
André Zwing (4):
shlwapi: Fix some spec file entries.
advapi32: Fix some spec file entries.
mfplat: Remove duplicated space in spec.
ntdll: Fix some spec file entries.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bastien Orivel (1):
ws2_32: Fix setsockopt(TCP_NODELAY) when optlen is less than 4.
Bernhard Kölbl (5):
include/windows.foundation.collections.idl: Add IVector<T> interface.
include/windows.foundation.idl: Add IAsyncAction interface.
include/windows.foundation.idl: Add more declares.
include/windows.globalization.idl: Add Language class and interfaces.
include: Add windows.media.speechrecognition.idl.
Daniel Lehman (3):
msxml3/tests: Add test saving XML with non-english characters.
msxml3: Make utf-8 the default encoding.
include: Add _sscanf_l.
Derek Lesho (1):
userenv: Set ProgramData in CreateEnvironmentBlock.
Dmitry Timoshkov (4):
user32/tests: Actually test ShowWindow() return value.
user32/tests: Add more missing ShowWindow() return value checks.
user32/tests: Add more tests for WM_NCCALCSIZE.
user32: DefWindowProc(WM_NCCALCSIZE) should return 0.
Eric Pouech (207):
evr: Use correct integral type.
include/msvcrt: Add attribute((format)) to printf and scanf -like APIs.
include: Define HandleToU?Long to return a long (as SDK does).
winedbg: Use correct integral type.
dbgeng: Use correct integral type.
dsound: Use correct integral type.
itss: Use correct integral type.
joy.cpl: Use correct integral type.
ntdll: Use correct integral type.
include/basetsd.h: Define PtrTo(Ul|L)ong to return a long (as SDK does).
dwrite: Use correct integral types.
jscript: Use correct integral type.
mshtml: Use correct integral type.
msxml3: Use correct integral type.
oleaut32: Use correct integral type.
oledb32: Use correct integral type.
comdlg32: Removed useless casts to long.
kernelbase: Removed useless casts to long.
mciseq: Removed useless casts to long.
bcrypt: In unixlib, don't use Windows long type.
kerberos: In unixlib, don't use Windows long type.
netapi32: In unixlib, don't use Windows long type.
win32u: Change NtGdiPolyPolyDraw parameter to ULONG.
msvcrt*: Use correct integral type.
d2d1: Build without -DWINE_NO_LONG_TYPES.
d3d10_1: Build without -DWINE_NO_LONG_TYPES.
windowscodecs: Remove useless casts to long.
ole32: Use correct integral type.
riched20: Use correct integral type.
scrobj: Use correct integral type.
setupapi: Use correct integral type.
shell32: Use correct integral type.
taskschd: Use correct integral type.
user32: Use correct integral type.
mfplay: Use correct integral type.
mfmediaengine: Use correct integral type.
mfreadwrite: Use correct integral types.
uxtheme: Use correct integral type.
mf: Use correct integral types.
mfplat: Use correct integral types.
vbscript: Use correct integral type.
conhost/tests: Enable compilation with long types.
find/tests: Enable compilation with long types.
fsutil/tests: Enable compilation with long types.
regedit/tests: Enable compilation with long types.
reg/tests: Enable compilation with long types.
schtasks/tests: Enable compilation with long types.
services/tests: Enable compilation with long types.
wscript/tests: Enable compilation with long types.
xcopy/tests: Enable compilation with long types.
msvcrt: Use correct integral types in structs.
msvcp: Use correct integral types.
msvcrt: Add cast to avoid 'long' types warning in _beginthreadex.
msvcrt: Add casts to avoid 'long' types warning in locale functions.
d3dx11/tests: Build without -DWINE_NO_LONG_TYPES.
d2d1/tests: Build without -DWINE_NO_LONG_TYPES.
d3d10_1/tests: Build without -DWINE_NO_LONG_TYPES.
wldap32: Fix compilation in 32-bit.
attrib: Enable compilation with long types.
cabarc: Enable compilation with long types.
chcp.com: Enable compilation with long types.
conhost: Enable compilation with long types.
[cw]script: Enable compilation with long types.
dxdiag: Enable compilation with long types.
eject: Enable compilation with long types.
explorer: Enable compilation with long types.
fsutil: Enable compilation with long types.
msiexec: Enable compilation with long types.
net: Enable compilation with long types.
netstat: Enable compilation with long types.
ping: Enable compilation with long types.
plugplay: Enable compilation with long types.
presentationfontcache: Enable compilation with long types.
regedit: Enable compilation with long types.
reg: Enable compilation with long types.
regsvr32: Enable compilation with long types.
rpcss: Enable compilation with long types.
wbemprox: Use correct integral type.
winhttp: Use correct integral type.
wldap32: Use correct integral type.
winmm: Use correct integral type.
xaudio2_7: Use correct integral type.
msvcr*: Use correct integral type in Interlocked* calls.
msvcrt: Use correct integral type in _except1.
gdiplus: Use correct integral type.
vcomp: Use correct integral type.
windowscodecs: Use correct integral type.
sc: Enable compilation with long types.
services: Enable compilation with long types.
spoolsv: Enable compilation with long types.
start: Enable compilation with long types.
svchost: Enable compilation with long types.
termsv: Enable compilation with long types.
uninstaller: Enable compilation with long types.
whoami: Enable compilation with long types.
wineboot: Enable compilation with long types.
winebrowser: Enable compilation with long types.
winecfg: Enable compilation with long types.
wineconsole: Enable compilation with long types.
winedbg: Enable compilation with long types.
winedevice: Enable compilation with long types.
winemenubuilder: Enable compilation with long types.
winemsibuilder: Enable compilation with long types.
winetest: Enable compilation with long types.
winhlp32: Enable compilation with long types.
winmgmt: Enable compilation with long types.
winoldap.mod16: Enable compilation with long types.
wordpad: Enable compilation with long types.
wuauserv: Enable compilation with long types.
wusa: Enable compilation with long types.
xcopy: Enable compilation with long types.
msi: Use correct integral type.
acledit: Enable compilation with long types.
aclui: Enable compilation with long types.
activeds: Enable compilation with long types.
actxprxy: Enable compilation with long types.
adsldp: Enable compilation with long types.
advapi32: Enable compilation with long types.
advpack: Enable compilation with long types.
amsi: Enable compilation with long types.
amstream: Enable compilation with long types.
apphelp: Enable compilation with long types.
appwiz.cpl: Enable compilation with long types.
atl: Enable compilation with long types.
authz: Enable compilation with long types.
avicap32: Enable compilation with long types.
avifil32: Enable compilation with long types.
msvcp: Build without -DWINE_NO_LONG_TYPES.
msvcr: Build without -DWINE_NO_LONG_TYPES.
d3d10/tests: Build without -DWINE_NO_LONG_TYPES.
d3dcompiler/tests: Build without -DWINE_NO_LONG_TYPES.
d3d10: Build without -DWINE_NO_LONG_TYPES.
d3dcompiler: Build without -DWINE_NO_LONG_TYPES.
schtasks: Enable compilation with long types.
browseui: Enable compilation with long types.
cabinet: Enable compilation with long types.
cards: Enable compilation with long types.
clusapi: Enable compilation with long types.
comdlg32: Enable compilation with long types.
commdlg.dll16: Enable compilation with long types.
compobj.dll16: Enable compilation with long types.
comsvcs: Enable compilation with long types.
crypt32: Enable compilation with long types.
cryptdlg: Enable compilation with long types.
cryptnet: Enable compilation with long types.
cryptui: Enable compilation with long types.
credui: Enable compilation with long types.
davclnt: Enable compilation with long types.
dbghelp: Enable compilation with long types.
dhcpcsvc: Enable compilation with long types.
dhtmled.ocx: Enable compilation with long types.
difxapi: Enable compilation with long types.
directmanipulation: Enable compilation with long types.
dispex: Enable compilation with long types.
mf: Build without -DWINE_NO_LONG_TYPES.
xapofx1_1: Enable compilation with long types.
dmcompos: Enable compilation with long types.
dmloader: Enable compilation with long types.
dmscript: Enable compilation with long types.
dmstyle: Enable compilation with long types.
dpvoice: Enable compilation with long types.
dpwsockx: Enable compilation with long types.
dsdmo: Enable compilation with long types.
dsquery: Enable compilation with long types.
dssenh: Enable compilation with long types.
dsuiext: Enable compilation with long types.
dwmapi: Enable compilation with long types.
dxdiagn: Enable compilation with long types.
explorerframe: Enable compilation with long types.
faultrep: Enable compilation with long types.
fltlib: Enable compilation with long types.
fntcache: Enable compilation with long types.
fontsub: Enable compilation with long types.
fusion: Enable compilation with long types.
gameux: Enable compilation with long types.
gdi.exe16: Enable compilation with long types.
gphoto2.ds: Enable compilation with long types.
hal: Enable compilation with long types.
hhctrl.ocx: Enable compilation with long types.
hlink: Enable compilation with long types.
hnetcfg: Enable compilation with long types.
gdi32: Enable compilation with long types.
mfplay: Build without -DWINE_NO_LONG_TYPES.
mfmediaengine: Build without -DWINE_NO_LONG_TYPES.
iccvid: Enable compilation with long types.
ieframe: Enable compilation with long types.
ifsmgr.vxd: Enable compilation with long types.
imaadp32.acm: Enable compilation with long types.
imagehlp: Enable compilation with long types.
imm32: Enable compilation with long types.
inetcomm: Enable compilation with long types.
inetcpl.cpl: Enable compilation with long types.
inetmib1: Enable compilation with long types.
infosoft: Enable compilation with long types.
inseng: Enable compilation with long types.
iphlpapi: Enable compilation with long types.
itss: Enable compilation with long types.
joy.cpl: Enable compilation with long types.
jscript: Enable compilation with long types.
jsproxy: Enable compilation with long types.
kernel32: Enable compilation with long types.
kernelbase: Enable compilation with long types.
krnl386.exe16: Enable compilation with long types.
ktmw32: Enable compilation with long types.
l3codeca.acm: Enable compilation with long types.
localspl: Enable compilation with long types.
localui: Enable compilation with long types.
Esme Povirk (16):
include: Add ISymUnmanagedWriter definition.
diasymreader: Add stub dll.
diasymreader: Register CLSID_CorSymWriter_SXS.
mscoree: Update Wine Mono to 7.1.1.
mscoree: Use wide string syntax in create_monodata.
mscoree: Fix a misleading parameter name.
mscoree: Add support for unmanaged classes in .NET Framework.
diasymreader: Stub ISymUnmanagedWriter.
diasymreader: Stub ISymUnmanagedWriter5.
diasymreader: Return success from SymWriter_Initialize.
diasymreader: Implement SymWriter_GetDebugInfo.
diasymreader: Stub IPdbWriter.
diasymreader: Implement SymWriter_GetSignatureAge.
diasymreader: Return success from methods with no output variables.
diasymreader: Return success from SymWriter_OpenScope.
diasymreader: Stub ISymUnmanagedDocumentWriter.
Fabian Maurer (24):
mfplat/tests: Avoid "misleading indentation" warnings.
msacm32/tests: Avoid "misleading indentation" warnings.
propsys/tests: Avoid "misleading indentation" warnings.
psapi/tests: Avoid "misleading indentation" warnings.
quartz/tests: Avoid "misleading indentation" warnings.
riched20/tests: Avoid "misleading indentation" warnings.
rpcrt4/tests: Avoid "misleading indentation" warnings.
schedsvc/tests: Avoid "misleading indentation" warnings.
scrrun/tests: Avoid "misleading indentation" warnings.
secur32/tests: Avoid "misleading indentation" warnings.
setupapi/tests: Avoid "misleading indentation" warnings.
shell32/tests: Avoid "misleading indentation" warnings.
shlwapi/tests: Avoid "misleading indentation" warnings.
taskschd/tests: Avoid "misleading indentation" warnings.
user32/tests: Avoid "misleading indentation" warnings.
uxtheme/tests: Avoid "misleading indentation" warnings.
wbemdisp/tests: Avoid "misleading indentation" warnings.
wbemprox/tests: Avoid "misleading indentation" warnings.
wiaservc/tests: Avoid "misleading indentation" warnings.
windowscodecs/tests: Avoid "misleading indentation" warnings.
winhttp/tests: Avoid "misleading indentation" warnings.
wininet/tests: Avoid "misleading indentation" warnings.
ws2_32/tests: Avoid "misleading indentation" warnings.
xmllite/tests: Avoid "misleading indentation" warnings.
Floris Renaud (1):
po: Update Dutch translation.
Hans Leidekker (17):
wbemprox: Use CRT allocation functions.
wbemdisp: Use CRT allocation functions.
webservices: Use CRT allocation functions.
msi: Use CRT allocation functions.
msi/tests: Use CRT allocation functions.
kerberos: Build without -DWINE_NO_LONG_TYPES.
bcrypt: Build without -DWINE_NO_LONG_TYPES.
msi: Build without -DWINE_NO_LONG_TYPES.
msi/tests: Build without -DWINE_NO_LONG_TYPES.
msi/tests: Correctly free usersid.
winhttp/tests: Remove unused include.
winhttp/tests: Build without -DWINE_NO_LONG_TYPES.
winhttp: Build without -DWINE_NO_LONG_TYPES.
bcrypt/tests: Build without -DWINE_NO_LONG_TYPES.
dnsapi: Build without -DWINE_NO_LONG_TYPES.
msv1_0: Build without -DWINE_NO_LONG_TYPES.
mscms: Build without -DWINE_NO_LONG_TYPES.
Henri Verbeet (9):
wined3d: Introduce a wined3d_bo_gl_unmap() helper.
wined3d: Use wined3d_bit_scan() in shader_generate_arb_declarations().
wined3d: Use wined3d_bit_scan() in shader_arb_generate_pshader().
d2d1: Return numeric configuration settings as uint32_t.
d2d1/tests: Pass the hash size as DWORD in compare_sha1().
d2d1/tests: Declare "level" as D3D_FEATURE_LEVEL in create_d3d11_device().
wined3d: Use the chunk allocator for GL indirect draw buffers.
d3d10: Return the read value from read_dword().
d3d10: Store the type fields in parse_fx10_type() as uint32_t.
Hugh McMaster (1):
kernelbase: Implement SetCurrentConsoleFontEx.
Huw D. M. Davies (1):
mountmgr: Fix long type warning.
Jacek Caban (10):
server: Allocate extra_bytes separately from window struct.
server: Make window struct a server object.
server: Keep a reference to parent in window objects.
server: Don't immediately destroy child windows belonging to different thread in free_window_handle.
server: Don't allow orphaned windows in set_parent request.
server: Orphan child windows when unlinking them from parent.
server: Don't allow creating children of orphaned windows.
user32: Use a single lock in destroy_thread_windows.
user32: Destroy window server objects from destroy_thread_windows.
server: Store all 64 bits of window id.
Jactry Zeng (2):
dwmapi: Correct parameter types of DwmGetColorizationColor().
d2d1: Implement d2d_bitmap_CopyFromBitmap().
Jan Sikorski (3):
wined3d: Use a separate heap for deferred resource upload buffers.
wined3d: Reinitialize query pool's free list entry when it runs out.
wined3d: Avoid waiting for a command buffer to finish executing to read off its queries.
Jinoh Kang (4):
server: Allow calling async_handoff() with status code STATUS_ALERTED.
server: Attempt to complete I/O request immediately in recv_socket.
ntdll: Don't call try_recv before server call in sock_recv.
server: Replace redundant recv_socket status fields with force_async boolean field.
Kevin Puetz (1):
winegcc: --out-implib needs to propagate -m32/-m64 to winebuild.
Matteo Bruni (9):
winhttp/tests: Fix typo in an ok() message.
d3dcompiler: Use more consistent integer data types.
d3d10: Get rid of a comment.
d3d10: Use more consistent integer data types.
d3dcompiler: Move read_u32() to a new utils.h private header.
d3d10: Use read_u32() implementation from d3dcompiler.
d3dcompiler: Move skip_u32_unknown() declaration to utils.h.
wined3d: Improve comment in wined3d_query_vk_issue().
wined3d: Skip non-color outputs in SM4 shader output mapping.
Michael Stefaniuc (19):
dmsynth/tests: Build without -DWINE_NO_LONG_TYPES.
dmusic/tests: Build without -DWINE_NO_LONG_TYPES.
dmsynth: Build without -DWINE_NO_LONG_TYPES.
dmusic: Build without -DWINE_NO_LONG_TYPES.
dmusic: Don't trace both the This and iface pointers.
dswave/tests: Build without -DWINE_NO_LONG_TYPES.
dswave: Build without -DWINE_NO_LONG_TYPES.
dmime: Fix the size of the DMUS_PORTPARAMS.
dmime: The soft synth doesn't supports sharing the channel groups.
dmsynth: Implement the synth's Open and Close methods.
dmsynth/tests: Add some synth Open/Close tests.
dmime/tests: Build without -DWINE_NO_LONG_TYPES.
dmime: Build without -DWINE_NO_LONG_TYPES.
dmband/tests: Build without -DWINE_NO_LONG_TYPES.
dmband: Build without -DWINE_NO_LONG_TYPES.
dmcompos/tests: Build without -DWINE_NO_LONG_TYPES.
dmloader/tests: Build without -DWINE_NO_LONG_TYPES.
dmscript/tests: Build without -DWINE_NO_LONG_TYPES.
dmstyle/tests: Build without -DWINE_NO_LONG_TYPES.
Nikolay Sivov (41):
scrrun: Fix long types warnings.
rtworkq: Fix long types warnings.
mf/tests: Remove remaining kernel32 heap calls.
wshom: Fix long types warnings.
evr: Fix long types warnings.
evr/presenter: Initial implementation of GetCurrentImage().
xmllite: Fix long types warnings.
d3d11: Always initialize out view pointer in CreateShaderResourceView().
d3d11: Always initialize out view pointer in CreateUnorderedAccessView().
d3d11: Always initialize out view pointer in CreateDepthStencilView().
t2embed: Fix long types warnings.
scrrun/tests: Add some tests for DoOpenPipeStream().
evr/mixer: Remove incorrect trace.
kernel32: Add messages for some of the WSA error codes.
msxml3: Fix long types warnings in traces.
dxva2: Fix long types warnings in traces.
dbgeng: Fix long types warnings in traces.
comctl32: Fix long types warnings in traces.
rtworkq/tests: Build without WINE_NO_LONG_TYPES.
xmllite/tests: Build without WINE_NO_LONG_TYPES.
mshtml: Implement layerX/layerY properties for mouse event.
combase: Build without WINE_NO_LONG_TYPES.
ole32: Build without WINE_NO_LONG_TYPES.
evr/tests: Build without WINE_NO_LONG_TYPES.
dbgeng/tests: Build without -DWINE_NO_LONG_TYPES.
include: Update another HRESULT definition.
opcservices: Build without -DWINE_NO_LONG_TYPES.
opcservices/tests: Build without -DWINE_NO_LONG_TYPES.
mfplat: Remove duplicated includes.
mfplat: Implement MFCreateTempFile().
mfplat: Better handle source resolution when content type is not specified for the stream.
mfplay: Use resolver functionality for content type resolution.
mfmediaengine: Use resolver functionality for content type resolution.
mfreadwrite/reader: Use resolver functionality for content type resolution.
mfplat: Implement MFAverageTimePerFrameToFrameRate().
wshom/tests: Build without -DWINE_NO_LONG_TYPES.
scrrun/tests: Build without -DWINE_NO_LONG_TYPES.
shcore: Build without -DWINE_NO_LONG_TYPES.
combase/tests: Build without -DWINE_NO_LONG_TYPES.
mfplay/tests: Build without -DWINE_NO_LONG_TYPES.
mfreadwrite/reader: Stop media source when shutdown is not allowed.
Paul Gofman (22):
hnetcfg: Use CRT allocation functions.
hnetcfg/tests: Add tests for static port mapping collection.
hnetcfg: Return stub interface from upnpnat_get_StaticPortMappingCollection() if UPNP IGD is found.
hnetcfg: Get gateway description location in init_gateway_connection().
hnetcfg: Open connection to gateway in init_gateway_connection().
hnetcfg: Get control URL for WANIPConnection service in init_gateway_connection().
win32u: Use get_dc_obj() in GetDCHook() and SetDCHook().
hnetcfg: Fix realloc handling in fw_app_put_ProcessImageFileName().
hnetcfg: Get port mapping list in init_gateway_connection().
hnetcfg: Implement static_ports_get_Item().
hnetcfg: Implement static_ports_get_Count().
hnetcfg: Implement static_ports__NewEnum().
hnetcfg: Implement static_ports_Remove().
hnetcfg: Implement static_ports_Add().
winhttp: Use lock when attempting to send frame synchronously().
hnetcfg: Don't use _GetValue() if text element is missing in get_xml_elements().
hnetcfg: Handle NULL strings in update_mapping_list().
hnetcfg/tests: Don't leak IEnumVARIANT reference in test_static_port_mapping_collection().
hnetcfg/tests: Don't test removing the same mapping twice.
server: Always update cached socket name after connect.
ws2_32: Trace status on operation failure.
wined3d: Use StretchBlt() in swapchain_blit_gdi().
Piotr Caban (29):
msvcrt: Fix fmaf not to depend on rounding mode.
msvcrt: Don't set SSE control word in _except1.
msvcrt: Don't use fegetenv in nearbyint.
msvcrt: Don't use fegetenv in nearbyintf.
msvcrt: Use InitOnceExecuteOnce to allocate TLS index.
ucrtbase: Add support for r-value demangling in unDName.
msvcrt: Use %#I64x format in traces.
msvcrt: Print 0x prefix with %#x format in traces.
msvcp: Print 0x prefix with %#x format in traces.
msvcp60: Use %Id format when tracing streamoff and streamsize.
msvcp60: Remove STREAMSIZE_BITS definition.
msvcp60: Remove code specific to newer versions of the dll.
msvcp: Remove typos in mangled names.
msvcp90: Remove STREAMSIZE_BITS definition.
msvcp60: Remove basic_stringstream<wchar> code.
msvcp60: Remove basic_istringstream<wchar> code.
msvcp60: Remove basic_ostringstream<wchar> code.
msvcp60: Remove basic_fstream<wchar> code.
msvcp60: Remove basic_ifstream<wchar> code.
msvcp60: Remove basic_ofstream<wchar> code.
msvcp60: Remove basic_iostream<wchar> code.
msvcp60: Remove basic_istream<wchar> code.
msvcp60: Remove basic_ostream<wchar> code.
msvcp60: Remove basic_streambuf<wchar> code.
msvcp60: Remove basic_filebuf<wchar> code.
msvcp60: Remove basic_streambuf<wchar> code.
msvcp60: Remove basic_ios<wchar> code.
msvcp60: Add missing exports.
msvcp60: Remove unused functions from ios.c file.
Rémi Bernon (35):
windows.gaming.input/tests: Fix printf warnings with long types.
xinput1_3/tests: Fix printf warnings with long types.
winebus.sys: Fix warnings with long integer types.
hid: Fix printf format warnings with long types.
hid: Use msvcrt allocation functions.
user32/tests: Tweak window size to fix Win10 results.
user32/tests: Ignore messages for UserAdapterWindowClass windows.
user32/tests: Add proper tests for SetActiveWindow(0).
user32/tests: Add some possible broken results on Win7.
hidclass.sys: Fix printf format warnings with long types.
winehid.sys: Fix printf format warnings with long types.
winehid.sys: Build with nameless unions.
winegstreamer: Stub implement WMA decoder DMO / MF transform.
winegstreamer: Implement WMA decoder IMFTransform_SetInputType.
winegstreamer: Implement WMA decoder GetOutputAvailableType.
winegstreamer: Implement WMA decoder SetOutputType.
winegstreamer: Implement WMA decoder GetOutputStreamInfo.
winegstreamer: Implement WMA decoder GetInputStreamInfo.
dinput/tests: Merge dinput8.c tests with dinput.c.
dinput/tests: Add some CoCreateInstance and aggregation tests.
dinput: Cleanup DllGetClassObject and IClassFactory implementation.
dinput: Cleanup IDirectInputJoyConfig8 names and traces.
dinput: Cleanup IDirectInput7W names and traces.
dinput: Cleanup IDirectInput8W names and traces.
user32/tests: Move test_mdi early in the test list.
dinput: Rename IDirectInputImpl to struct dinput.
dinput: Use consistent parameter names and types.
dinput: Canonicalize DirectInput(8) instance creation.
dinput: Fix printf warnings with long types.
dinput/tests: Fix printf warnings with long types.
user32/tests: Add a test for child window destruction on thread exit.
mf/tests: Add some WMA encoder ProcessOutput tests.
mf/tests: Add some WMA decoder ProcessInput tests.
mf/tests: Add some WMA decoder ProcessOutput tests.
mfreadwrite/reader: Use separate refcount for events callbacks.
Stefan Dösinger (13):
d3d9/tests: Try to make test_cursor_pos more reliable.
d3d8/tests: Try to make test_cursor_pos more reliable.
d3d9/tests: Skip test_cursor_pos if we can't move the cursor.
d3d8/tests: Skip test_cursor_pos if we can't move the cursor.
d3d9/tests: Ignore random testbot failures in test_cursor.
d3d8/tests: Ignore random testbot failures in test_cursor.
ddraw/tests: Skip a crashy test on WARP.
ddraw/tests: Disable color keying in ddraw1 test_texture_load.
ddraw/tests: Mark random WARP behavior broken in test_ck_default.
include: InterlockedExchangeAdd64 msvc intrinsic does not exist in x86.
include: Remove an incorrect InterlockedCompareExchange128 function.
makedep: Fix some signed vs unsigned msvc warnings.
ddraw/tests: Account for random WARP behavior in test_texturemapblend.
Zebediah Figura (102):
tiff: Explictly link to zlib.
ntdll: Implement wcsnlen().
kernelbase: Use wcsnlen().
kernelbase: Use ntdll ctype functions.
wined3d: Allow DISCARD maps to be accelerated even on 32-bit architectures.
user32: Remove no longer needed assert() workarounds for MinGW.
wininet: Use CHAR_BIT from msvcrt limits.h.
winsta: Remove useless IDL attributes from TS_ALL_PROCESSES_INFO.
user32/tests: Remove unnecessary redefinitions of SPI_GETDESKWALLPAPER.
ws2_32/tests: Add tests for WSAStartup().
ws2_32: Always fill the WSADATA structure in WSAStartup().
ws2_32: Cap the negotiated winsock version to 1.1 or 2.2.
ws2_32: Return 32767 or 0 in the iMaxSockets field.
ws2_32: Return 65467 or 0 in the iMaxUdpDg field.
ws2_32: Return WSAEFAULT instead of WSAEINVAL from WSAStartup() if "data" is NULL.
shell32: Move file menu definitions to shlmenu.c.
shell32: Move PIDL definitions from undocshell.h to pidl.h.
shell32: Do not redefine SHCNRF_* flags.
shell32: Move dialog definitions to dialog.c.
shell32: Move IShellFolderViewCB definitions to shlview.c.
quartz/vmr9: Get rid of a broken check for hardware acceleration support in VMR9DefaultAllocatorPresenterImpl_create().
quartz/vmr9: Pass the already retrieved caps pointer to VMR9_SurfaceAllocator_SetAllocationSettings().
quartz/filtergraph: Implement the IDispatch methods for IMediaControl.
quartz/filtergraph: Implement the IDispatch methods for IMediaPosition.
quartz/filtergraph: Implement the IDispatch methods for IMediaEvent.
devenum: Build without -DWINE_NO_LONG_TYPES.
shell32: Move SHWaitForFileToOpen() flags to shellord.c.
shell32: Move RegisterShellHook() definitions to shellord.c.
shell32: Move SHCreateLinks() flags to shlfolder.c.
shell32: Move explorer window messages definitions to shell32_main.h.
shell32: Move StrRetToStrN*() helpers to shell32_main.h.
quartz/tests: Test more interfaces exposed by the filter graph.
quartz/filtergraph: Remove "#if 1" from CheckCircularConnection().
quartz/filtergraph: Remove redundant checks for pin direction from CheckCircularConnection().
quartz/filtergraph: Clean up CheckCircularConnection().
opencl: Rename cl_{enums,types} to header_{enums,types}.
opencl: Factor out parse_feature().
opencl: Export unsuffixed KHR_gl_sharing functions.
winegstreamer: Build without -DWINE_NO_LONG_TYPES.
winegstreamer: Constify some static variables.
shlwapi: Use the public definition of shared shell memory allocation functions.
shell32: Remove redundant definitions of undocumented shell functions.
shell32/tests: Remove pointless redefinition of FOF_NORECURSION.
quartz: Build without -DWINE_NO_LONG_TYPES.
quartz: Use IMemAllocator::GetBuffer() directly.
winegstreamer: Use IMemAllocator::GetBuffer() directly.
amstream/tests: Use IMemAllocator::GetBuffer() directly.
qcap/vfwcapture: Allow changing state while unconnected.
qcap: Use IMemAllocator::GetBuffer() and IMediaSample::SetTime() directly.
strmbase: Remove the no longer used BaseOutputPinImpl_GetDeliveryBuffer() helper.
ws2_32: Avoid an unnecessary goto.
ws2_32: Build without -DWINE_NO_LONG_TYPES.
d2d1/tests: Don't run the 32-bit tests multithreaded.
d3d10core/tests: Don't run the 32-bit tests multithreaded.
d3d11/tests: Don't run the 32-bit tests multithreaded.
dxgi/tests: Don't run the 32-bit tests multithreaded.
setupapi/tests: Test queuing the same copy operation twice.
setupapi/tests: Add more tests for SetupInstallFilesFromInfSection().
setupapi: Use the source path if the target path is missing in SetupQueueRename().
setupapi: Also handle DelFiles and RenFiles directives in SetupInstallFilesFromInfSection().
setupapi: Use SetupInstallFilesFromInfSectionW() in SetupInstallFromInfSectionW().
d3dx9: Implement D3DXSHProjectCubeMap().
winegstreamer: Release stream_cs on error in stream_thread().
qcap: Use CoCreateInstance() directly instead of BaseOutputPinImpl_InitAllocator().
amstream/tests: Use CoCreateInstance() directly instead of BaseOutputPinImpl_InitAllocator().
strmbase: Get rid of the BaseOutputPinImpl_InitAllocator() helper.
maintainers: Remove wineqtdecoder.
strmbase: Build without -DWINE_NO_LONG_TYPES.
wined3d: Use the chunk allocator for GL atomic counter buffers.
wined3d: Use the chunk allocator for GL pixel unpack buffers.
qasf: Build without -DWINE_NO_LONG_TYPES.
qcap: Build without -DWINE_NO_LONG_TYPES.
qdvd: Build without -DWINE_NO_LONG_TYPES.
shlwapi/tests: Link directly to Url*() functions.
shlwapi/tests: Get rid of the redundant "expectret" field of TEST_URL_CANONICALIZE.
shlwapi/tests: Get rid of the redundant "expectret" field of TEST_URL_COMBINE.
shlwapi/tests: Get rid of the redundant "expectret" and "expectescaped" fields of TEST_ESCAPE.
shlwapi/tests: Get rid of the redundant "expectret" field of TEST_ESCAPEW.
d3dx9: Return D3DERR_INVALIDCALL from ID3DXEffect::BeginPass() if the effect is not started.
d3dx9: Pass the "flags" argument to D3DXFXCreateEffectEx() as compiler flags, not effect flags.
d3dx9: Don't mark annotation variables as dirty.
d3dx9/tests: Test setting annotation values.
qedit: Build without -DWINE_NO_LONG_TYPES.
wined3d: Use the chunk allocator for GL texture buffers.
wined3d: Use the chunk allocator for GL uniform buffers.
ws2_32/tests: Cancel a call that currently incorrectly returns STATUS_PENDING.
wined3d: Initialize map_ptr to NULL in wined3d_context_vk_create_slab_bo().
wined3d: Set resource->client.addr in buffer_resource_sub_resource_map() only if persistently mapping.
wined3d: Call wined3d_context_unmap_bo_address() when updating a buffer BO.
ws2_32/tests: Use winetest_push_context() in test_WSAStringToAddress().
ws2_32/tests: Do not use a loop to test ASCII and Unicode in test_WSAAddressToString().
ws2_32/tests: Use winetest_push_context() in test_WSAAddressToString().
ws2_32/tests: Use winetest_push_context() in test_inet_pton().
include: Define NTSTATUS fields using int in afd.h.
shlwapi/tests: Remove workarounds from url.c for no longer supported Windows versions.
shlwapi/tests: Use wide character string literals in url.c.
shlwapi/tests: Simplify length calculation in test_UrlApplyScheme().
shlwapi/tests: Put the UrlGetPart() tests in a table.
shlwapi/tests: Add more tests for UrlGetPart().
wined3d: Always set map_ptr for mapped OpenGL BOs.
wined3d: Introduce wined3d_lock_init() and wined3d_lock_cleanup() helpers.
wined3d: Always submit UPDATE_SUB_RESOURCE ops when uploading if not mapping persistently.
Zhiyi Zhang (24):
comctl32/treeview: Support HiDPI for unthemed item check boxes.
comctl32/treeview: Use DFCS_MONO style for item check boxes.
uxtheme/tests: Test more WM_CTLCOLOR* messages for dialog theming.
uxtheme: Use tab background as dialog texture for more WM_CTLCOLOR* messages.
comctl32/tests: Add themed background tests.
comctl32/trackbar: Always use brush from WM_CTLCOLORSTATIC to fill background.
comctl32/button: Use the brush from WM_CTLCOLORBTN to fill background for push buttons.
comctl32/button: Use the brush from WM_CTLCOLORSTATIC to fill background for checkboxes and radio buttons.
comctl32/button: Use the brush from WM_CTLCOLORSTATIC to fill text background for group boxes.
comctl32/tests: Fix occasional test failures on TestBot w7u_2qxl.
comctl32/tab: Always draw parent background when themed.
user32/tests: Test scroll bars use COLOR_BTNFACE instead of COLOR_SCROLLBAR to fill background.
user32: Use COLOR_BTNFACE to fill scroll bar background.
uxtheme: Use COLOR_BTNFACE to fill scroll bar background.
comctl32/treeview: Do not draw client edge without WS_EX_CLIENTEDGE.
comctl32/button: Use pressed state when a pushlike checkbox or radio button is checked and hovered.
light.msstyles: Use stretch sizing type for scroll bar arrow button background.
light.msstyles: Adjust scroll bar arrow width and height to 17 pixels.
light.msstyles: Fill checkbox background with white pixels.
light.msstyles: Fill radio button background with white pixels.
light.msstyles: Fill combo box background with white pixels.
light.msstyles: Do not use transparent tab pane edges.
light.msstyles: Do not use transparent edges for trackbar horizontal and vertical thumb.
light.msstyles: Do not use transparent treeview parts.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 7.1 is now available.
What's new in this release (see below for details):
- Vulkan 1.3 support.
- A number of theming fixes.
- WebSocket improvements.
- Improved cursor clipping on macOS.
- IDL compiler fixes for C++.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.x/wine-7.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.x/wine-7.1.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 7.1 (total 42):
10924 Netbeans 6.x installer hangs or exits silently
15635 Siemens SIMATIC STEP 7: can't use Next or Cancel when installing
20415 eRightSoft SUPER v2009-b35 window unviewable and non-responsive
21935 AceMegaCodecsPack gives error message on install
25053 Final fantasy 7 videos do not play, though supported by gst-ffmpeg
27679 Arx Fatalis does not play intro movie (video: indeo 5.0)
33756 Word 2003: Formula symbols get outside formula frame
34753 Rising Kingdoms Demo intro videos are not played
35063 Multiple InstallShield technology based installers report "unable to create InstallDriver instance" (Peachtree Pro Accounting 2007, Age of Empires 3)
39795 when working jriver mediacenter suddenly crash.
42660 QTranslate crashes inside jscript.dll
43899 x360ce closes after launch
45016 Far Cry 5 crashes at startup
45597 Flicker in GTAIV
47975 X3 Albion Prelude - Unhandled page fault on read access
48523 dlls/toolhelp16.dll16 LocalFirst and LocalNext only return LMEM_FIXED handles
48606 HexChat: Check for update fails
49213 TeamViewer 15.x crashes on startup
50370 Gothic 1 doesn't start correctly when screen resolution of the game matches display resolution
50433 'MsiBreak' custom action debugging aid should use custom action's name from 'CustomAction' table (currently uses 'Target' field)
50539 SetWindowRgn doesn't work correctly
50544 Application crashes when external database called
50849 Multiple .NET 4.x app installers using WiX v3 'InvokeOutOfProcManagedCustomAction, CAInvokeMethod->Invoke_3 return incorrect result with Wine-Mono (Elgato Stream Deck 4.9.3, Garmin Express 6.13)
50901 Google Chrome 89.0.4389.114 exits at startup
51163 WinOffice Pro 5.3 stops after splashscreen, needs WMI class SoftwareLicensingProduct
51354 WRC 7 needs ID3DUserDefinedAnnotation interface
51491 Project CARS 2 periodically crashes during a race
51706 Msi HANDLE_CustomType1 fails to load dll [patch]
51758 Wine's time zone information has gaps in "Dynamic DST" causing InvalidTimeZoneException
51860 Missing include for uid_t on musl-based systems
51868 Pokémon Banished Platinum - Fails To Load Script(s) in Wine
51900 regression: REAPER scrollbars flash between themed and non-themed
52062 dinput HID joystick doesn't implement effect state reports.
52158 Age of Empires 3 Definitive Edition multiplayer fails to start AES problem
52163 postgresql-9.3 installer expects scrrun:filesys_GetTempName to return filename with TMP suffix
52261 Sekiro: Shadows Die Twice GOTY crashes right before gameplay starts
52285 7-zip: column titles are not rendered initially when using a theme
52298 Opening PPT with Freeoffice Presentations crashes on unimplemented function ole32.dll.OleConvertIStorageToOLESTREAMEx
52339 EzViz: Program does not respond after clicking once
52383 WXWork has high CPU usage on login screen
52426 BCryptSignHash mishandles empty arguments
52446 Normal dlls with native subsystem id are no longer processed when importing system dlls with uppercase names
----------------------------------------------------------------
Changes since 7.0:
Alex Henrie (1):
user32: Send EVENT_OBJECT_FOCUS when the focus changes.
Alexandre Julliard (47):
configure: No longer disable mountmgr.sys in a Windows build.
tools: Use flush_output_buffer() in a few more places.
tools: Add a helper function to read the contents of a file.
makefiles: Get rid of the documentation rules.
user.exe: Make sure that the thunk selector doesn't get freed.
faudio: Import upstream release 22.01.
mpg123: Import upstream release 1.29.3.
jpeg: Import upstream release 9e.
makefiles: Add helper functions to open generated include files.
makefiles: Also look for generated includes in the source file directory.
makefiles: Compare the full path when looking for generated include files.
makefiles: Add dependencies for files generated in maintainer mode.
makefiles: Add a maintainer-clean target.
makefiles: Specify the bison prefix directly in the source files.
wrc: Add a workaround for older bison versions.
wrc: Avoid using Windows types where possible.
widl: Avoid using Windows types where possible.
include: Define a few more intrinsic functions.
include: Fix prototype mismatch for server functions.
server: Define a server-side structure for LUID_AND_ATTRIBUTES.
server: Define a server-side structure for SID_AND_ATTRIBUTES.
server: Define a server-side structure for ACL.
server: Define a server-side structure for ACE.
server: Define a server-side structure for SID.
server: Don't depend on the TOKEN_GROUPS structure on the server side.
include: Remove the wine_ prefix on rbtree functions.
include: Add casts for types that may be defined as long.
d3drm: Fix a prototype mismatch.
d3dx10: Fix a prototype mismatch.
mmsystem: Fix some prototype mismatches.
win32u: Fix some prototype mismatches.
windows.globalization: Fix some prototype mismatches.
winevulkan: Fix some prototype mismatches.
wow64win: Fix some prototype mismatches.
mfmediaengine: Remove unnecessary import library.
include: Use long type by default in GUID definition.
include: Add casts to avoid printf format warnings with 'long' types.
winecrt0: Use the correct integral type.
compstui: Fix printf format warnings on 64-bit.
d3dx11: Fix printf format warnings on 64-bit.
gamingtcui: Fix printf format warnings on 64-bit.
loadperf: Fix printf format warnings on 64-bit.
msvcp60/tests: Fix printf format warnings on 64-bit.
opencl: Fix printf format warnings on 64-bit.
include: Add support for defining Win32 types as 'long' where possible.
makefiles: Force -Wformat for PE modules when using 'long' types.
makefiles: Disable printf format warnings for non-PE msvcrt modules.
Alistair Leslie-Hughes (8):
msado15: Return early if Execute doesn't return a rowset.
msdasql: Connect to DSN in IDBInitialize Initialize.
include: Add trnlcl.idl.
include: Add trnobj.idl.
msdasql/tests: Test for ITransaction* interfaces on a session.
msdasql: Fix logic when dumping diagnostics records.
msdasql: Implement ICommandPrepare Prepare.
msdasql: Add ITransactionJoin to session interface.
Andrew Eikum (1):
winmm: Don't process audio data during waveOutWrite while playing.
Andrey Gusev (1):
d3d11: Implement the ID3DUserDefinedAnnotation interface.
Arkadiusz Hiler (8):
dinput/tests: Don't consider extra IOCTL_HID_GET_STRING an error.
dinput/tests: Add static asserts for arrays that have to match in size.
include: Add HID_USAGE_SIMULATION_CLUTCH.
dinput/tests: Test HID device with steering wheel and various pedal combinations.
dinput: Implement HID wheel type detection.
winebus.sys: Enable extended BT reports for DualShock 4 controllers when requested.
winebus.sys: Process quirky DualSense bluetooth reports.
hidclass.sys: Add input.inf that matches all HID devices.
Ben Shefte (1):
ntdll: Use case insensitive comparison in is_import_dll_system().
Bernhard Kölbl (7):
widl: Allow optional interface parameter on the [activatable] attribute.
widl: Add support for the [overload] attribute.
combase/tests: Add tests for the hstring_private struct.
combase: Introduce a hstring_header struct to hstring_private.
combase: Move length from hstring_private to hstring_header.
combase: Add padding and string reference pointer to hstring_header.
combase: Reorder hstring_private elements.
Connor McAdams (9):
secur32/tests: Add more DTLS tests.
secur32: Set phNewContext to phContext in schan_InitializeSecurityContextW().
secur32: Validate output buffer size in schan_InitializeSecurityContextW().
secur32: Add support for setting DTLS timeouts.
secur32: Clear SECBUFFER_ALERT output buffer count in schan_InitializeSecurityContextW.
secur32: Properly handle NULL pInput argument for DTLS contexts in schan_InitializeSecurityContextW.
secur32: Switch back to non-blocking mode for DTLS sessions.
secur32/tests: Add tests for DTLS handshake retransmission.
secur32: Fix trace in schannel pull_adapter function.
Conor McCarthy (1):
dxgi: Allow sampling of Vulkan swapchain images for D3D12.
Damjan Jovanovic (1):
ntdll: Use the correct amd64 trap codes on *BSD.
Daniel Lehman (9):
msvcp140: Add importlib.
msvcp140_atomic_wait: Add stub dll.
msvcp140_atomic_wait: Implement __std_parallel_algorithms_hw_threads.
msvcp140_atomic_wait/tests: Add test for threadpool_work functions.
msvcp140_atomic_wait: Implement __std_create_threadpool_work.
msvcp140_atomic_wait: Implement __std_submit_threadpool_work.
msvcp140_atomic_wait: Implement __std_wait_for_threadpool_work_callbacks.
msvcp140_atomic_wait: Implement __std_close_threadpool_work.
msvcp140_atomic_wait: Implement __std_bulk_submit_threadpool_work.
Dean M Greer (1):
winemac.drv: Fix compile with pre macOS 10.12 SDKs.
Dmitry Timoshkov (1):
ieframe: Clear a being invalidated history entry.
Eric Pouech (18):
msi: Don't call RegCloseKey with uninitialized value.
dwrite: Adjust implementation to match prototype.
include/winternl.h: Fix prototype definition.
rpcss: Fix implementation declaration to match prototype.
wscript: Use correct integral type.
start: Wrap child inside a job so it gets killed when start.exe terminates.
cmd: Bail out when full path name exceeds MAX_PATH.
cmd/tests: Test paths that exceed MAX_PATH.
find: Use correct integral type.
progman: Use correct integral type.
rpcss: Use correct integral type.
include: Fix signedness in wine_dbgstr_variant().
winedbg: Use correct integral type.
winetest: Use correct integral type.
adsldp: Use correct integral type.
comctl32: Use correct integral type.
comdlg32: Use correct integral type.
crypt32: Use correct integral type.
Fabian Maurer (33):
adsldp/tests: Fix misleading indentation warnings.
advapi32/tests: Avoid "misleading indentation" warnings.
comctl32/tests: Avoid "misleading indentation" warnings.
comdlg32/tests: Avoid "misleading indentation" warnings.
comsvcs/tests: Avoid "misleading indentation" warnings.
crypt32/tests: Avoid "misleading indentation" warnings.
dbgeng/tests: Avoid "misleading indentation" warnings.
d2d1/tests: Avoid "misleading indentation" warnings.
d3d10/tests: Avoid "misleading indentation" warnings.
d3dcompiler/tests: Avoid "misleading indentation" warnings.
d3dx10_43/tests: Avoid "misleading indentation" warnings.
d3dx9_36/tests: Avoid "misleading indentation" warnings.
dwrite/tests: Avoid "misleading indentation" warnings.
dxva2/tests: Avoid "misleading indentation" warnings.
evr/tests: Avoid "misleading indentation" warnings.
hlink/tests: Avoid "misleading indentation" warnings.
kernel32/tests: Avoid "misleading indentation" warnings.
msscript/tests: Avoid "misleading indentation" warnings.
msvfw32/tests: Avoid "misleading indentation" warnings.
ntdll/tests: Avoid "misleading indentation" warnings.
ntoskrnl/tests: Avoid "misleading indentation" warnings.
ole32/tests: Avoid "misleading indentation" warnings.
oleaut32/tests: Avoid "misleading indentation" warnings.
oledb32/tests: Avoid "misleading indentation" warnings.
opcservices/tests: Avoid "misleading indentation" warnings.
gdi32/tests: Avoid "misleading indentation" warnings.
gdiplus/tests: Avoid "misleading indentation" warnings.
mf/tests: Avoid "misleading indentation" warnings.
mfplay/tests: Avoid "misleading indentation" warnings.
nsi/tests: Avoid "misleading indentation" warnings.
mlang/tests: Avoid "misleading indentation" warnings.
msi/tests: Avoid "misleading indentation" warnings.
msvcirt/tests: Avoid "misleading indentation" warnings.
Florian Will (1):
gdiplus: Disable PNG encoding filters.
Gabriel Ivăncescu (4):
ddraw: Use WINED3D_SWAPCHAIN_NO_WINDOW_CHANGES only if window is not in foreground.
ddraw: Use WINED3D_SWAPCHAIN_NO_WINDOW_CHANGES also if DDSCL_NOWINDOWCHANGES is set.
ddraw: Remove topmost style when going from exclusive mode to normal.
mshtml: Fix leak on failure in return_nsstr.
Georg Lehmann (3):
winevulkan: Update to VK spec version 1.2.203.
winevulkan: Update to VK spec version 1.3.204.
winevulkan: Support Vulkan 1.3.
Gerald Pfeifer (1):
iphlpapi: Zero-init prefix_len to avoid a compiler warning.
Giovanni Mascellani (2):
mfmediaengine: Fix a memory leak.
mfmediaengine: Add a IMFMediaEngineEx stub.
Hans Leidekker (1):
msi: Use custom action name for MsiBreak handling.
Henri Verbeet (30):
wined3d: Discard texture resources before unloading them in wined3d_texture_destroy_object().
wined3d: Use wined3d_mask_from_size() in wined3d_ffp_get_vs_settings().
wined3d: Use wined3d_mask_from_size() in wined3d_ffp_get_fs_settings().
wined3d: Properly compare integers in wined3d_pipeline_layout_vk_compare().
wined3d: Properly compare integers in wined3d_so_desc_compare().
wined3d: Properly compare integers in wined3d_bo_slab_vk_compare().
wined3d: Properly compare integers in wined3d_graphics_pipeline_vk_compare().
wined3d: Use wined3d_mask_from_size() in geometry_shader_init_stream_output().
wined3d: Use wined3d_mask_from_size() in find_ps_compile_args().
wined3d: Use wined3d_mask_from_size() in stateblock_savedstates_set_all().
d3d11/tests: Add some tests for ID3DUserDefinedAnnotation.
wined3d: Use wined3d_mask_from_size() in shader_glsl_store_uav().
wined3d: Use wined3d_mask_from_size() in shader_glsl_gather4().
wined3d: Use wined3d_mask_from_size() in shader_glsl_generate_stream_output_setup().
wined3d: Use wined3d_mask_from_size() in set_glsl_shader_program().
wined3d: Use wined3d_uint32_compare() in compare_sig().
wined3d: Use wined3d_uint32_compare() in glsl_program_key_compare().
wined3d: Use wined3d_bit_scan() in vshader_get_input().
wined3d: Use wined3d_bit_scan() in wined3d_device_process_vertices().
wined3d: Use wined3d_bit_scan() in context_update_stream_info().
wined3d: Get rid of a superfluous cast.
wined3d: Use wined3d_bit_scan() in context_preload_textures().
wined3d: Use wined3d_bit_scan() in draw_primitive_immediate_mode().
wined3d: Use wined3d_bit_scan() in wined3d_context_gl_map_fixed_function_samplers().
wined3d: Use wined3d_bit_scan() in set_glsl_shader_program().
wined3d: Use wined3d_bit_scan() in shader_glsl_load_constants_i().
wined3d: Use wined3d_bit_scan() in shader_glsl_load_constantsB().
wined3d: Use wined3d_bit_scan() in shader_generate_glsl_declarations().
wined3d: Use wined3d_bit_scan() in shader_glsl_generate_fragment_shader().
wined3d: Use wined3d_bit_scan() in shader_arb_load_np2fixup_constants().
Huw D. M. Davies (4):
winepulse: Remove unused member "mute".
widl: Remove the uuid_t typedef which causes conflicts on macOS.
winepulse: Remove unnecessary alloc_size.
winecoreaudio: Remove unnecessary buffer sizes.
Jacek Caban (2):
server: Use console_add_queue for console output.
user32: Remove _wassert workaround.
Jan Sikorski (19):
wined3d: Acquire depth/stencil state references for command lists by inspecting CS packets.
wined3d: Acquire rasterizer state references for command lists by inspecting CS packets.
wined3d: Acquire blend state references for command lists by inspecting CS packets.
wined3d: Acquire references to render-target views for command lists by inspecting CS packets.
wined3d: Acquire references to shader resource views for command lists by inspecting CS packets.
wined3d: Acquire references to unordered-access views for command lists by inspecting CS packets.
wined3d: Acquire references to depth/stencil views for command lists by inspecting CS packets.
wined3d: Acquire references to constant buffers for command lists by inspecting CS packets.
wined3d: Acquire references to cleared unordered-access views for command lists by inspecting CS packets.
wined3d: Acquire references to cleared render-target views for command lists by inspecting CS packets.
wined3d: Acquire references to indirect dispatch buffers for command lists by inspecting CS packets.
wined3d: Acquire references to indirect draw buffers for command lists by inspecting CS packets.
wined3d: Acquire references to index buffers for command lists by inspecting CS packets.
wined3d: Acquire references to stream output buffers for command lists by inspecting CS packets.
wined3d: Acquire references to vertex buffers for command lists by inspecting CS packets.
wined3d: Acquire references to updated resources for command lists by inspecting CS packets.
wined3d: Acquire references to blitted resources for command lists by inspecting CS packets.
wined3d: Acquire references to unordered-access view counter buffers for command lists by inspecting CS packets.
wined3d: Acquire references to mip-map generation shader resource views for command lists by inspecting CS packets.
Jinoh Kang (1):
ntdll/unix: Zero-extend IP_TOS byte to INT.
Liam Murphy (1):
winmm/tests: Demonstrate that WOM_DONE is not invoked reentrantly.
Louis Lenders (2):
wbemprox: Add some properties of SoftwareLicensingProduct class.
ole32: Add stub for OleConvertIStorageToOLESTREAMEx.
Matteo Bruni (1):
d3dcompiler/tests: Use the relevant d3dcompiler version in blob tests.
Michael Stefaniuc (17):
dmsynth: Drop "synth" from the synth_sink field.
dmsynth: Activate the sink from the synth Activate() method.
dmsynth: Avoid hungarian notation in the synth object.
dmsynth: Disconnect old sink, addref and init new sink.
dmusic: Call SetSynkSink() first to initialize the Synth.
dmsynth: Pass the master clock on to the sink.
dmusic: Get rid of the SynthPortImpl typedef.
dmusic: Remove SynthPortImpl from the method and vtbl names.
dmusic/tests: Fix an object leak.
dmusic: Send the master clock to the synth and not a latency clock.
dmusic: The synth port needs to get the latency clock from the synth.
dmsynth: Implement SetMasterClock() for the sink.
dmsynth: Implement the sink Init method.
dmusic: Implement the E_NOTIMPL methods of the synth port.
dmsynth: Add error handling to the synth GetPortCaps method.
dmusic: Forward the synth port GetCaps to the synth method.
dmusic/tests: Add some initial synth port tests.
Nikolay Sivov (44):
dwrite/tests: Use CRT memory allocation functions.
mfplat: Implement MFTGetInfo().
mfreadwrite/tests: Use CRT allocation functions.
dwrite: Implement GetMatchingFontsByLOGFONT().
dwrite: Move text format object implementation to a separate file.
mf/samplegrabber: Cancel pending sample timer.
mfmediaengine: Add IMFGetService stub.
mfmediaengine/tests: Do not use stack variables for async notification callbacks.
d3d10/effect: Add a structure to keep shader variables references.
d3d10/effect: Add arrays for all state variables.
d3d10/effect: Store state variables references in their own arrays.
d3d10/effect: Fix iteration in GetBackingStore() for sampler states.
d3d10/effect: Fix iteration in GetBackingStore() for blend states.
include: Fixup DWRITE_COLOR_GLYPH_RUN1 definition.
dwrite: Partially implement newer TranslateColorGlyphRun() variant.
dwrite/tests: Use a better invalid value to make a test pass reliably.
comctl32/listview: Add partial implementation of LVM_GETNEXTITEMINDEX.
wshom: Use CRT allocation functions.
d3d10/effect: Fix iteration in GetBackingStore() for depth stencil states.
d3d10/effect: Fix iteration in GetBackingStore() for rasterizer states.
d3d10/effect: Fix index access in GetSampler().
d3d10/effect: Fix index access in GetRasterizerState().
d3d10/effect: Fix index access in GetDepthStencilState().
d3d10/effect: Fix index access in GetBlendState().
version: Use same Windows 10 build number for version information.
scrrun: Use CRT allocation functions.
scrrun/dictionary: Remove typedef from object data type.
mf: Move standard quality manager stub to a separate file.
mf/tests: Add another format to Video Processor supported formats list.
mfreadwrite/reader: Add m4v format magic.
shell32: Ignore KF_FLAG_NOT_PARENT_RELATIVE in SHGetKnownFolderPath().
d3dcompiler: Implement D3DWriteBlobToFile().
d3d10/tests: Add a test with fx_4_1 binary.
mfmediaengine: Implement SetSourceFromByteStream().
mfmediaengine: Implement audio renderer configuration methods.
comctl32/tests: Add some tests for TBBUTTON.iBitmap for separators.
include: Add some ListView flags.
mfmediaengine: Handle shutdown state in GetCurrentSource().
mfmediaengine: Handle shutdown state in Play().
mfmediaengine: Handle shutdown state in Pause().
mfmediaengine: Handle shutdown state in GetBuffered().
mfmediaengine: Handle shutdown state in a few stubs.
mfmediaengine: Improve AddRange() behavior for intersecting ranges.
dwrite/tests: Remove remaining kernel32 heap calls.
Paul Gofman (39):
concrt140: Add ?_Byte_reverse_table@details@Concurrency@@3QBEB data export.
msvcp110: Add ?_Byte_reverse_table@details@Concurrency@@3QBEB data export.
msvcp120: Add ?_Byte_reverse_table@details@Concurrency@@3QBEB data export.
winhttp/tests: Also test async websockets with secure connection.
winhttp: Use separate SSL read and write buffers.
winhttp: Use a buffer for sending frame in send_frame().
winhttp: Allow receive on shutdown web socket.
winhttp: Consider short read from netconn_recv() in receive_bytes().
winhttp: Drain frames until close frame in socket_close().
winhttp: Factor out socket_send_complete() function.
winhttp: Count queued websocket send operations.
winhttp: Allow synchronous nonblocking send in WinHttpWebSocketSend() when possible.
server: Release correct sockets in poll_socket().
winhttp: Return ERROR_INVALID_OPERATION when websocket is in the wrong state.
winhttp: Set socket state to shutdown right away in WinHttpWebSocketShutdown().
winhttp: Factor out send_socket_shutdown() function.
winhttp: Use send_socket_shutdown() in WinHttpWebSocketClose().
winhttp: Move close callback call to task_socket_close().
winhttp: Factor out receive_close_status() function.
winhttp: Process server close frame in handle_control_frame().
winhttp/tests: Test closing websocket when receive is pending.
winhttp: Set socket close state in WinHttpWebSocketClose().
winhttp: Move receive callback call to task_socket_receive().
winhttp: Count queued websocket receive operations.
winhttp: Send callback for pending receives right away when closing websocket.
winhttp: Return error from WinHttpWebSocketQueryCloseStatus() if close frame was not received.
winhttp: Remove an extra pending_sends increment in WinHttpWebSocketSend().
winhttp: Append mask to output frame even if buffer length is zero.
winhttp: Attemp sync websocket send even if data doesn't fit SSL buffer.
winhttp: Attemp sync websocket send even if data doesn't fit frame buffer.
winhttp: Allow synchronous nonblocking send in send_socket_shutdown().
winhttp: Allow synchronous nonblocking send in socket_send_pong().
winhttp: Pass server initiated websocket close request to application.
winhttp/tests: Test shutting down websocket when receive is pending.
winhttp: Don't mind socket state in WinHttpWebSocketQueryCloseStatus().
winhttp: Factor out socket_close_complete() function.
winhttp: Don't queue socket_close() in WinHttpWebSocketClose() if close frame is already received.
winhttp: Don't allow socket transfers after receiving close frame.
winhttp: Don't allow queueing websocket receive if another is pending.
Piotr Caban (2):
msvcrt: Add support for demangling char{8,16,32}_t types.
msvcrt: Fix Pi constants while computing acosf.
Piotr Kleski (1):
bcrypt: Return BCryptSignHash len when only output is NULL.
Robert Wilhelm (2):
scrrun: Add test for GetTempName.
scrrun: Generate temp name with tmp suffix.
Rémi Bernon (36):
dinput/tests: Load the test driver in the WinePlugPlay group.
include: Define MEDIASUBTYPE_MSAUDIO1 in wmcodecdsp.idl.
mf/tests: Simplify static media type definition.
mf/tests: Add some WMA decoder creation tests.
dinput/tests: Add some tests for DIERR_INPUTLOST conditions.
dinput: Introduce new is_exclusively_acquired helper.
dinput: Use an enumeration instead of BOOL for acquired status.
dinput: Return DIERR_INPUTLOST when device is removed.
mf/tests: Add some WMA encoder creation tests.
mf/tests: Add some WMA encoder ProcessInput tests.
mf/tests: Add some WMA decoder SetInputType tests.
mf/tests: Add some WMA decoder SetOutputType tests.
mf/tests: Add some WMA decoder GetInputAvailableType tests.
mf/tests: Add some WMA decoder GetOutputAvailableType tests.
widl: Do not generate C++ enum typedefs in WinRT mode.
widl: Clarify declaration type names vs (reference) type names.
widl: Fix nested parameterized types C / short name output.
widl: Use "string" for HSTRING in signatures for generated UUID.
widl: Fix sign handling in parameterized types signatures.
mf/tests: Add some WMA decoder GetInputStreamInfo tests.
mf/tests: Add some WMA decoder GetOutputStreamInfo tests.
setupapi/tests: Add possible test_need_media results for Win10.
setupapi/tests: Add some service installation flags tests.
wine.inf: Start PlugPlay service on prefix initialization.
dinput/tests: Add some RegisterDeviceNotificationA and hotplug tests.
wine.inf: Start EventLogService on prefix initialization.
plugplay: Use ncacn_np instead of ncalrpc transport.
include: Add more WMA GUIDs to wmcodecdsp.idl.
wmadmod: Introduce new DLL and tests.
user32: Add a filter member to device_notification_details.
user32: Remove FIXME from RegisterDeviceNotificationA.
sechost: Support device interface notifications filtering.
ntoskrnl.exe: Enforce path case in WM_DEVICECHANGE notifications.
xinput1_3: Fix printf format warnings with long types.
windows.gaming.input: Fix printf format warnings with long types.
winexinput.sys: Fix warnings from long integer types.
Stefan Dösinger (9):
d3d11/tests: Disable cross-device ContextState tests.
d3d11/tests: Ignore random WARP failures in test_pipeline_statistics_query.
d3d9/tests: Accept Nvidia results in test_sample_mask as broken.
d3d8/tests: Accept Nvidia results in test_sample_mask as broken.
d3d8/tests: Accept a broken Windows 10 20H? result.
d3d8/tests: Accept new WARP test failure in test_updatetexture().
ddraw/tests: Accept broken depth readback of new-ish AMD GPUs.
ddraw/tests: Treat refresh rates with 1 hz difference as equal.
ddraw/tests: Don't insist on a different refresh rate if no refresh rate was requested.
Tim Clem (8):
winemac.drv: Allow foregrounding WS_EX_NOACTIVATE windows.
winemac.drv: Use Cocoa nonactivating panels for WS_EX_NOACTIVATE windows.
winemac.drv: Don't activate the app if its first window is WS_EX_NOACTIVATE.
winemac.drv: Factor out cursor clipping code to its own class.
winemac.drv: Create a protocol to represent a cursor clipping handler.
winemac.drv: Factor common cursor clipping methods into functions.
winemac.drv: Add a cursor clipping implementation using -setMouseConfinementRect:.
winemac.drv: Use -setMouseConfinementRect: for cursor clipping by default.
Zebediah Figura (11):
winhttp: Remove unused ole32 import.
d3d11: Implement ID3D11RasterizerState1.
d3d11: Implement ID3D11Device1::CreateRasterizerState1().
server: Allocate enough space for the backslash in dup_nt_name() (Valgrind).
d3d11: Report D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER.
d3d11: Report D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER.
wined3d: Handle structured buffers in wined3d_unordered_access_view_vk_clear().
include: Define InterlockedExchangeAdd64() and InterlockedExchangeAddSizeT().
wined3d: Use wined3d_buffer_load_location() in wined3d_buffer_get_memory().
wined3d: Prefer mapping a BO if the buffer has WINED3D_BUFFER_USE_BO set.
wined3d: Introduce WINED3D_LOCATION_CLEARED and use it for the initial state of buffers.
Zhiyi Zhang (20):
comctl32/listview: Support themed check boxes for LVS_EX_CHECKBOXES style.
comctl32/treeview: Support themed check boxes for TVS_CHECKBOXES style.
comctl32/status: Remove redundant background drawing code.
comctl32/status: Calculate border for part background only when theming is off.
comctl32/status: Do not draw background for status text.
uxtheme/tests: Add EnableThemeDialogTexture() tests.
comctl32/tests: Remove WM_CTLCOLORSTATIC tests for static controls.
comctl32/tests: Remove WM_CTLCOLORSTATIC tests for property sheets.
uxtheme: Do not call SetWindowTheme() in EnableThemeDialogTexture().
uxtheme: Make IsThemeDialogTextureEnabled() return TRUE for all valid flags without ETDT_DISABLE.
uxtheme: Allow EnableThemeDialogTexture() to set flags in multiple steps.
uxtheme: Hook DefDlgProc() for dialog theming.
comctl32/button: Enable parent dialog tab texture.
comctl32/static: Enable parent dialog tab texture.
comctl32/propsheet: Handle page dialog tab texture in DefDlgProc().
user32: Avoid recalculating the non-client hit-test value for NC_HandleNCMouseMove().
user32/tests: Test painting standard scroll bars in hovered state.
user32: Draw standard scroll bars in hovered state only when they were previously painted by DefWinProc().
uxtheme: Search TMT_IMAGEFILE1~7 first when drawing background for parts without glyph images.
uxtheme: Do not resize source image even if destination is smaller than sizing margins.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that the stable release Wine 7.0
is now available.
This release represents a year of development effort and over 9,100
individual changes. It contains a large number of improvements that
are listed in the release notes below. The areas of major changes are:
- Most modules converted to PE format.
- Better theming support, with a bundled theme for a more modern look.
- Vastly improved HID stack and joystick support.
- New WoW64 architecture.
The source is available from the following locations:
https://dl.winehq.org/wine/source/7.0/wine-7.0.tar.xzhttp://mirrors.ibiblio.org/wine/source/7.0/wine-7.0.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
What's new in Wine 7.0
======================
*** PE modules
- With a few exceptions, all modules can be built in PE format. The goal is to
convert the remaining modules after 7.0.
- For PE modules with an associated Unix library, the interface between the PE
part and the Unix part goes through a standard NT system call. This enables
hiding the Unix code from Windows debuggers, and switching the thread
register on platforms that require it.
- Builtin dlls are only loaded if there is a corresponding PE file on disk,
either a real binary or a fake PE module. This ensures that the application
always sees a valid PE file mapping. It can be disabled through the
WINEBOOTSTRAPMODE environment variable, used at prefix creation time.
*** WoW64
- The 64-bit Windows-on-Windows (WoW64) architecture is implemented, and
supports running a 32-bit Windows application inside a 64-bit Unix host
process, using thunks to map 32-bit NT system calls to the 64-bit NTDLL.
- WoW64 thunks are implemented for most Unix libraries, enabling a 32-bit PE
module to call a 64-bit Unix library. Once the remaining modules are
converted to PE, this will make it possible to run 32-bit applications
without installing 32-bit Unix libraries.
*** Theming
- A "Light" theme is included in Wine, with the color variants "Blue" and
"Classic Blue". It can be enabled through WineCfg.
- All the Common Controls support theming, and automatically refresh on theme
changes.
- All the builtin applications support theming, as well as High DPI rendering.
*** Graphics
- There's a new Win32u library implementing the kernel side of graphics and
window management support. Large portions of the GDI32 and USER32 libraries
are converted to use this new library. This work will continue after 7.0, and
the graphics drivers (winex11.drv, winemac.drv, etc.) will be migrated to
Win32u as well.
- The Vulkan driver supports up to version 1.2.201 of the Vulkan spec.
- Hit-testing stroked geometries using the Direct2D API is implemented.
- Some initial support for Direct2D effects (using the ID2D1Effect interface)
is implemented.
- The Direct2D API supports the ID2D1MultiThread interface.
- WindowsCodecs supports decoding images in WMP (Windows Media Photo) format,
as well as encoding images to the DDS (DirectDraw Surface) format.
- WindowsCodecs no longer supports encoding images to macOS ICNS format. This
is not supported on Windows, and was no longer used by Wine either.
*** Direct3D
- Various improvements have been made to the Vulkan renderer for the Wine
Direct3D implementation. In most cases, for Direct3D 10 and 11 applications
the Vulkan renderer should be about on-par with the older OpenGL renderer in
Wine 7.0. Like in Wine 6.0, the Vulkan renderer can be enabled by setting the
Direct3D "renderer" registry setting to "vulkan".
- The following Direct3D 10 and 11 features are implemented:
- Deferred device contexts.
- Device context state objects, and switching between them.
- Constant buffer offsetting.
- Resolving typeless multi-sample resources.
- Clearing unordered-access views of texture resources. When using the OpenGL
renderer, this requires the GL_ARB_clear_texture OpenGL extension.
- Resource copies between resources with "block-compatible" formats, like for
example DXGI_FORMAT_BC3_TYPELESS and DXGI_FORMAT_R32G32B32A32_TYPELESS.
- Clearing layered render-target views.
- Support for multiple displays ("multi-head") is implemented. In practice,
this tends to mean the ability to choose which monitor a Direct3D application
will use for full-screen mode. Note that this depends on the underlying
display drivers to accurately report the attached displays. For Wine's X11
driver, that requires proper support for version 1.4 or later of the X RandR
extension.
- Display gamma adjustment using the DXGI API is implemented. This is sometimes
used by Direct3D 10 and 11 applications to adjust screen "brightness".
- Direct3D 12 supports version 1.1 root signatures.
- When the VK_EXT_host_query_reset Vulkan extension is available, query
handling in the Vulkan renderer is slightly more efficient.
- Retrieving swapchain present counts using the DXGI API is implemented.
- A fallback path using GDI is added for swapchain presentation. This is used
in cases where OpenGL or Vulkan can't be used to present the swapchain, for
example when presenting to a window of a different process. This path is much
slower, but is often sufficient for some common use cases, like for example
applications using the Chromium Embedded Framework ("CEF") with cross-process
rendering.
- The "precise" shader instruction modifier is respected when using the GLSL
shader backend.
- The DirectDraw API supports 3D rendering to system memory surfaces when using
software device types like the "RGB", "MMX", and "Ramp" devices.
- The following additional graphics cards are recognized by the Direct3D
graphics card database:
- AMD Radeon RX 5500M
- AMD Radeon RX 6800/6800 XT/6900 XT
- AMD Van Gogh
- Intel UHD Graphics 630
- NVIDIA GT 1030
- The following HKEY_CURRENT_USER\Software\Wine\Direct3D key is removed:
- "UseGLSL"
This setting was deprecated in favor of the "shader_backend" setting in
Wine 5.0, and has been removed in this release.
*** D3DX
- The support for version 10 of the D3DX effects framework is much improved.
- D3DX 10 supports the Windows Media Photo (JPEG XR) image file format.
- Various D3DX10 texture creation functions (D3DX10CreateTextureFromMemory()
and variants) are implemented.
- A partial implementation of the ID3DX10Sprite interface is added.
- A partial implementation of the ID3DX10Font interface is added.
*** Audio / video
- The DirectShow and Media Foundation GStreamer glue is unified into a single
backend, making it easier to implement new media decoding APIs.
- The Windows Media asynchronous and synchronous reader objects are implemented
based on the WineGStreamer backend. Like other multimedia decoding libraries,
they require a functioning GStreamer installation.
- The Media Foundation support is more complete, with notably:
- Basic functionality of IMFPMediaPlayer, media item properties, support for
audio and video tracks.
- Support for sample allocator in the Source Reader.
- Improved EVR sink integration with presenter and mixer.
- Improved SAR rendering buffer behavior.
- Video sample allocator, with support for d3d9, d3d11, and system memory
buffers.
- Further improvements to EVR's presenter and mixer implementation.
- D3D11 frame output for IMFMediaEngine.
- Improvements to generic media source implementation in WineGStreamer to
support stopped and paused states, refined output type configuration.
- The QuickTime decoder library (wineqtdecoder) is removed. GStreamer is
required for all built-in multimedia codecs also on macOS.
*** Input devices
- The HID (Human Interface Device) stack implementation is more complete. This
includes HID descriptor and report parsers, report processing, as well as HID
mini-driver support.
- The winebus.sys driver backends are improved, to better describe the devices
into HID reports when pass-through is not possible, and to add standard
Physical Interface Device reports to expose force-feedback capabilities over
HID.
- There's a new DirectInput joystick backend using the improved HID stack to
communicate with winebus.sys and host devices. This backend supports
force-feedback effects using the standard HID Physical Interface Device
reports, and is also compatible with pass-through HID device which implement
it. The SDL and evdev winebus.sys Linux backends are also supported as they
implement it too. This replaces and deprecates the legacy Linux js and evdev,
and macOS IOHID backends.
- The joystick control panel is improved, as well as the interaction with
XInput-compatible devices. For such devices the joystick control panel can be
used to force DInput as the primary interface instead of XInput. This
translates to the "<joystick name>"="override" (REG_SZ) registry value in
HKCU\Software\Wine\AppDefaults\<app.exe>\DirectInput (or
HKCU\Software\Wine\DirectInput for prefix-wide setting).
- The WinMM joystick support is implemented using DInput instead of Linux evdev
or macOS IOHID, and the old joystick driver (winejoystick.drv) is removed.
- Many tests are added to the DInput module, using a virtual HID device to not
require a physical device anymore. The code is extensively and automatically
tested, including force-feedback effects with HID input / output report
validation.
*** Text and fonts
- Arabic shaping is implemented in DirectWrite, currently enabled for Arabic
and Syriac.
- The Font Set object is implemented in DirectWrite.
- The TextHost interface is properly implemented in RichEdit.
*** Mono / .NET
- The Mono engine is updated to version 7.0.0, with the following changes:
- IDispatch interface supported on COM Callable Wrappers.
- Improved support for SafeArray marshaling.
- Many other marshaling and COM interop improvements.
- Code imports from .NET Core: System.Drawing.Printing,
System.Security.Principal, WindowsFormsApplicationBase, parts of
Microsoft.VisualBasic.Interaction
- WMA and WMV support in FNA using mfplat.
- Debug symbols available separately in PDB form.
- Old VBNC compiler for Visual Basic .NET replaced with the VBC compiler from
.NET Core.
- Mono's JIT compiler generates code compatible with 64-bit macOS.
- WPF built with support for media controls.
- A replacement for the Managed DirectX API is included.
- Fixes for various bugs that prevented most WPF applications from working.
*** Internationalization
- Unicode character tables are based on version 14.0.0 of the Unicode Standard.
- The timezone data is updated, based on the information from the Olson and
Unicode CLDR databases.
- Codepages 720 (Arabic, Farsi and Urdu) and 20949 (Korean Wansung) are
supported.
- The sr-Latn-RS locale is supported.
*** Kernel
- Launching applications with the 'wine' executable invokes start.exe for any
unrecognized binary. This means that file associations work also from the
Unix command line, e.g. 'wine foo.msi'.
- The low-level NtAlertThreadByThreadId / NtWaitForAlertByThreadId
synchronization mechanism (roughly equivalent to Linux futexes) is supported,
and used to implement the higher-level synchronization primitives.
- NT debug objects are implemented and used by the kernel debugger functions.
- The dynamic registry keys for performance data are implemented.
*** C runtime
- There's a full math library implementation in the C runtime, mostly imported
from the Musl C library. The Unix math library is no longer used.
- The floating point environment functions are supported properly on all CPU
platforms.
*** Internet and networking
- IE11 compatibility mode is improved and used by default for
standard-compliant HTML documents.
- JScript EcmaScript compliant mode supports 'let' statements, Map object,
object freezing, object sealing and mutable prototype chains.
- Gecko add-on MSI packages are installed into the prefix on demand, instead of
during prefix update, to make updates faster and reduce disk space usage.
- The DTLS communication protocol is supported.
- The NSI device (Network Store Interface) is implemented, and used to provide
higher-level network services in IpHlpAPI.
- The Windows Sockets support is reimplemented to go through NTDLL and the Afd
device, following the Windows architecture.
- The various network database files (/etc/protocols, /etc/networks, etc.) are
provided and installed in the prefix. The equivalent Unix databases are no
longer used for network queries.
*** Alternative platforms
- The new Apple Silicon Macs are supported, including running x86-64 binaries
under Rosetta 2.
- GnuTLS is required on macOS for BCrypt and Secur32 support; the
macOS-specific backend implementations have been removed.
- 32-bit ARM binaries are built in Thumb-2 mode, like on Windows.
- The preloader is also used on 32-bit ARM, for a more compatible address space
layout.
- Stack unwinding is implemented on 32-bit ARM.
- More low-level system information queries like memory and battery status are
supported on FreeBSD.
*** Builtin applications
- The REG registry tool supports operating on either the 32- or 64-bit view of
the registry.
- The REG registry tool supports copying registry keys.
- The WineDump tool supports dumping Windows Metafiles, and shows more detailed
information for CodeView records.
- The Wine Debugger (winedbg) supports debugging a 32-bit target process from
the 64-bit debugger.
*** Development tools
- The IDL compiler (widl) supports loading type libraries embedded inside PE
files.
- The IDL compiler searches for type libraries in the per-platform library
search path instead of the include search path.
- The IDL compiler supports many more WinRT-specific constructs and attributes.
*** Build infrastructure
- All libraries are installed in architecture-specific directories, using names
like 'i386-windows' for PE binaries, and 'x86_64-unix' for the Unix
libraries. This enables supporting multiple architectures with a single Wine
installation, as well as Winelib cross-compilation.
- Static (.a) import libraries are used on all platforms. Wine no longer
generates the old-style .def libraries, though they are still supported for
backwards compatibility.
- The option to prefer a native DLL by default is specified through a flag in
the PE header, which can be set by passing the '--prefer-native option' to
winebuild. The previous method, handling DLL_WINE_PREATTACH in DllMain, is no
longer supported.
- The Dwarf debugging format is supported up to version 4. The Wine libraries
are built with version 4 by default.
- Unique build identifiers can be stored in the binaries by passing the
'--enable-build-id' option to configure.
- The Clang compiler in MSVC mode is supported.
*** Miscellaneous
- The Shell Folder naming is converted to use the Windows Vista+ scheme; for
instance 'My Documents' becomes 'Documents', and most things are saved under
the 'AppData' directory.
- The OpenCL library wrapper supports versions up to OpenCL 1.2.
- Paper forms are supported in various sizes in the WinSpool printer driver.
- There is initial support for MSDASQL, a Microsoft OLE DB provider for ODBC
drivers.
*** External dependencies
- The following libraries are bundled in the source tree and built as PE
libraries, so they are no longer required at the Unix level:
- Faudio
- GSM
- LCMS2
- LibJPEG
- LibJXR
- LibMPG123
- LibPng
- LibTiff
- LibXml2
- LibXslt
- Zlib
- The libraries above can still be imported as external libraries instead of
using the bundled copy, provided that they are available in PE format. This
behavior is requested with the '--with-system-dllpath' configure option,
which specifies the Unix search path for such dependencies.
- Direct3D 12 support now requires version 1.2 or later of the vkd3d library.
Version 1.2 or later of the related vkd3d-shader library was already required
by Wine 6.0 for translation of Direct3D shader to SPIR-V in the Vulkan
renderer for the Direct3D implementation.
- The deprecated HAL library is no longer supported or needed.
- The macOS QuickTime library is no longer used.
--
Alexandre Julliard
julliard(a)winehq.org