The Wine development release 4.16 is now available.
What's new in this release (see below for details):
- More reliable mouse grabbing in games.
- Better cross-compilation support in WineGCC.
- Improved compatibility with Windows debuggers.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.16.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.16.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 4.16 (total 16):
22038 Art of Murder Cards of Destiny: some character models are plain white
26215 Super Meat Boy shows grey textures for some objects
41258 UE4 applications crash with "Assertion failed: Count >= 0" (Epic Games Launcher, Paragon)
44338 cmd: Brackets are no deliminiter in the condition part of the if command.
45560 Windows Sysinternals 'psping' v2.x tool, part of 'PsTools' crashes when trying to ping host (needs 'iphlpapi.ParseNetworkString')
46149 Multiple applications need ntdll.dll.RtlIpv4StringToAddress{A,W,ExA,ExW} implementation (Processhacker 2.x, Icinga 2 'check_ping')
46421 μTorrent has squares in it's update-dialog
46549 Multiple .NET 4.x applications and games using 'System.Net.HttpListener' class crash due incomplete httpapi implementation (PUBG Lite Launcher, SeeSnake HQ)
46983 type command in cmd.exe with two files and stdout redirect, behavior is different
47476 Rhinoceros 6 (.NET 4.x app) fails to verify online-license: System.EntryPointNotFoundException: Unable to find an entry point named 'HttpCloseRequestQueue' in DLL 'httpapi.dll'
47524 Hearthstone black screen
47629 PotPlayer 1.7: Crash when trying to play any file
47675 Wine builtin 'services.exe' uses invalid wait object for delayed autostart services
47693 ExHIBIT (Sample Project): Can't select menu item in the title screen
47709 Zoom Edit&Share 5.0.0.0: installer crashes starting with wine-3.19
47732 This is bad bug in wine.
----------------------------------------------------------------
Changes since 4.15:
Akihiro Sagawa (7):
msvcrt/tests: Restore the multibyte codepage after the tests.
msvcrt/tests: Add more tests for _mbsspn and _mbsspnp.
msvcrt: Fix _mbsspn implementation.
msvcrt: Reimplement _mbsspnp using _mbsspn.
ucrtbase: Add strtoimax and _strtoimax_l.
ucrtbase: Add strtoumax and _strtoumax_l.
dwrite: Avoid a magic constant.
Alex Henrie (10):
ntdll: Implement RtlIpv4StringToAddress(Ex)W.
ntdll: Implement RtlIpv4StringToAddress(Ex)A.
include: Add structures and constants needed for ParseNetworkString.
iphlpapi/tests: Add tests for ParseNetworkString.
include: Add ip2string.h.
iphlpapi: Implement ParseNetworkString for IPv4 addresses and services.
server: Fix use after free in add_committed_range (scan-build).
winedbg: Fix dependence on undefined left-shift behavior (scan-build).
gdi32: Handle HeapAlloc failure in SetEnhMetaFileBits (scan-build).
winex11: Factor out array access in ConvertAttribWGLtoGLX (scan-build).
Alexandre Julliard (40):
configure: Don't link to libunwind if not necessary.
kernel32: Move interlocked functions to kernelbase.
kernel32: Move file change notification functions to kernelbase.
kernel32: Move virtual memory functions to kernelbase.
kernel32: Move heap functions to kernelbase.
kernel32: Move memory resource functions to kernelbase.
kernel32: Move global/local memory functions to kernelbase.
kernel32: Move OS version functions to kernelbase.
kernel32: Move debugger functions to kernelbase.
kernel32: Move unhandled exception functions to kernelbase.
kernel32: Move QueryPerformanceCounter/Frequency functions to ntdll.
kernel32: Move environment functions to kernelbase.
kernel32: Move process startup information functions to kernelbase.
ntdll: Allocate environment blocks from the process heap.
ntdll: Add partial implementation for IOCTL_SERIAL_GET_PROPERTIES.
kernel32: Move ioctl functions to kernelbase.
kernel32: Move console functions to kernelbase.
winebuild: Add support for the -B option.
winegcc: Fix handling of the --sysroot flag when not building inside the Wine tree.
winegcc: Support the --target option like winebuild does.
winegcc: Forward the -B options to winebuild.
configure: Check for unw_step() instead of unw_getcontext().
ntdll: Use virtual_uninterrupted_read_memory() to read code inside signal handler on x86-64.
ntdll: Use a stack_layout structure to build exception data on x86-64.
ntdll: Use a stack_layout structure to build exception data on i386.
ntdll: Factor out setup_raise_exception() on i386.
ntdll: Handle single step exception in signal handler on i386.
ntdll: Handle alignment fault in signal handler on i386.
ntdll: Handle breakpoint interrupt in signal handler on i386.
ntdll: Handle invalid %gs fault in signal handler on i386.
ntdll: Handle page faults in signal handler on i386.
ntdll: Handle ATL thunk emulation in signal handler on i386.
ntdll: Remove no longer needed function argument from setup_raise_exception() on i386.
ntdll: Use a stack_layout structure to build exception data on ARM64.
ntdll: Factor out setup_raise_exception() on ARM64.
ntdll: Handle trap exception in signal handler on ARM64.
ntdll: Handle page fault in signal handler on ARM64.
ntdll: Remove no longer needed function argument from setup_raise_exception() on ARM64.
ntdll: Avoid calling init_handler() twice in signal handler on i386.
ntdll: Use virtual_uninterrupted_read_memory() to read code inside signal handler on i386.
Alistair Leslie-Hughes (11):
dsound: Trace all DSBCAPS values.
dsound/tests: Add effect parameters tests.
wbemprox: Return NULL on error (Coverity).
dsound: Trace each special effect as it's processed.
hhctrl.ocx: Simplify extracting the help filename (Coverity).
httpapi/tests: Assign to correct type (Coverity).
http.sys: Allocate enough memory including the NULL. (Coverity).
wineqtdecoder: Add missing header.
include: Add DSFX_I3DL2REVERB defines.
include: Correct DSFX_I3DL2REVERB_ROOM_MIN value.
wininet/tests: InternetQueryOption should return a valid value for username/password when using cached credentials.
Andrew Eikum (3):
ntoskrnl.exe: Add -norelay flag for _vsnprintf.
mmdevapi: Avoid reporting odd numbers of channels.
winebus.sys: Don't WARN about backends we didn't build.
Andrey Gusev (3):
wininet/tests: Remove LPVOID cast.
winhttp/tests: Remove LPVOID casts.
dxgi: Add IDXGIDevice3 stub.
Daniel Lehman (3):
wininet: Return error from HttpQueryInfo if number argument is invalid.
wininet: Support large downloads.
ntdll/tests: Adjust timing on RtlWaitOnAddress tests.
Dmitry Timoshkov (14):
rpcrt4: Return an exception code from NdrAsyncClientCall.
localspl: Remove useless NULL checks from AddMonitor trace.
localspl: AddMonitor should create registry entry for a monitor before initializing it.
localspl: Add support for monitors providing the MONITOR2 interface.
localspl: Unload monitor in DeleteMonitor.
localspl: Use the monitor handle returned by InitializePrintMonitor2.
localspl: Fix MONITOR2.cbSize calculation when converting from MONITOREX.
localspl: Fix MONITOR2 callback prototypes.
winsplp.h: Fix MONITORINIT definition.
localspl: Add MONITORREG stub callbacks for InitializePrintMonitor2.
localspl/tests: Add support for monitors providing the MONITOR2 interface.
ntdll/tests: Fix compilation with PSDK compiler.
ntdll: Implement RtlUnicodeToUTF8N.
ole32: Turn FIXME into a TRACE for clipboard backend of QueryGetData.
Evgeny Litvinenko (1):
aclocal.m4: Allow nesting WINE_TRY_SHLIB_FLAGS.
Fabian Maurer (1):
comctl32/syslink: Properly handle '\r'.
François Gouget (21):
comctl32: Typo and spelling fixes in comments.
advapi32/tests: Spelling fixes in a couple of comments.
advapi32/tests: Spelling tweaks in ok() messages.
widl: Fix a variable name in a comment.
cabinet: A spelling fix in a variable / field name.
libwine: Fully dereference the /proc/self/exe symbolic link.
libwine: Like Linux, NetBSD has /proc/self/exe.
tests: Add support for subtests.
msi/tests: Declare the custom subtest.
ntoskrnl/tests: Declare the driver subtest.
kernel32/tests: Avoid unneeded strlen*() calls.
comctl32/tests: Tweak an ok() message to avoid a spelling error.
d3d8/tests: Spelling fixes in ok() messages.
d3d9/tests: Spelling fixes in ok() messages and a comment.
d3d10/tests: Spelling fixes in ok() messages.
d3dx9_36/tests: Spelling fixes in ok() messages.
dinput8/tests: A spelling fix in a comment.
ddraw/tests: Spelling fixes in ok() messages.
ddrawex: Tweak the createDD() name to make CodeSpell happy.
winemac.drv: Avoid an unneeded lstrlenW() call.
dwrite: A couple of spelling fixes in comments.
Gabriel Ivăncescu (4):
kernel32/locale: Set whether we used the default char when using Unix codepage.
kernel32/locale: Don't fail with non-NULL args when the Unix codepage falls back to UTF-8.
vbscript/parser: Handle lack of newlines before certain End statements.
vbscript/tests: Test lack of newline parsing before End statements.
Gerald Pfeifer (1):
dwrite/tests: Silence a compiler warning in test_fontsetbuilder.
Hans Leidekker (7):
wbemprox: Strip curly brackets from path strings.
wbemprox: Support evaluating CIM_REFERENCE expressions.
wbemprox: Perform a case insensitive match on path components.
wbemprox: Implement Win32_LogicalDiskToPartition.
wbemprox: Implement Win32_DiskDriveToDiskPartition.
wbemprox: Fix index in fill_diskdrive and fill_diskpartition.
wbemprox: Add support for evaluating ASSOCIATORS OF queries.
Huw D. M. Davies (3):
wininet: Include limits.h to define UINT_MAX and ULONG_MAX.
configure: Fix argument type of unw_step().
configure: Fix libunwind warning logic.
Jacek Caban (8):
ntdll: Move setup_exception implementation.
ntdll: Factor out setup_raise_exception.
ntdll: Handle single step exception in setup_raise_exception on x86_64.
ntdll: Handle interrupt exceptions in signal handler on x86_64.
ntdll: Call virtual_handle_fault from signal handler on x86_64.
ntdll: Remove no longer needed func argument from setup_raise_exception.
ntdll: Call send_debug_event from debug handler on x86_64.
services: Use threadpool timers for services delay loading.
Jactry Zeng (2):
mfmediaengine: Add IMFMediaEngine stub.
mfmediaengine: Merge media_engine_attributes into media_engine struct.
Ken Thomases (1):
ntdll: On Mac, use the Mach API as preferred approach to get a thread's GS.base.
Kevin Puetz (1):
objbase.h: Fix StringFromIID declaration.
Kim Malmo (1):
po: Update Norwegian translation.
Marcus Meissner (1):
iphlpapi: Fixed size to MultiByteToWideChar.
Michael Stefaniuc (3):
strmbase: Don't cast from COM object to interface.
quartz: Don't cast from COM object to interface.
d3d10: Avoid casts from COM object to interface.
Naveen Narayanan (1):
libwine: Only link libi386 with the libraries that need it.
Piotr Caban (2):
msvcrt: Match broken multi-byte character with everything in _mbsspn.
wbemdisp: Handle NULL signatures in init_members.
Rémi Bernon (9):
winex11.drv: Do not react to keyboard grab focus events.
winex11.drv: Only grab or warp the cursor when keyboard isn't grabbed.
winex11.drv: Retry last ClipCursor when grab is released.
winex11.drv: Do not set clipping_cursor when clip window map state changes.
winex11.drv: Explicitly call XUngrabPointer when clipping is released.
winex11.drv: Only call XWarpPointer if we can get exclusive pointer grab.
dnsapi: Add DnsGetCacheDataTable stub.
user32/tests: Add RegisterRawInputDevices parameter validation tests.
user32: Add parameter validation for RegisterRawInputDevices.
Sven Baars (4):
quartz: Fix some memory leaks (Coverity).
quartz/tests: Fix a memory leak (Valgrind).
hidclass.sys: Fix some memory leaks on error path (Coverity).
winex11.drv: Fix a memory leak (Coverity).
Zebediah Figura (37):
amstream: Use shorter method names for the multimedia stream.
amstream: Move multimedia_stream_create() to avoid forward declarations.
amstream: Forward IMultiMediaStream::GetMediaStream() to the stream filter.
amstream: Don't keep track of streams in the multimedia stream object.
amstream/tests: Add some tests for IEnumMediaTypes.
amstream/tests: Add more tests for media types.
amstream: Move audio and ddraw streams into separate files.
amstream: Reimplement IPin::EnumMediaTypes() for the primary video stream.
amstream: Get rid of the DirectDrawMediaStreamImpl typedef.
amstream: Reimplement IMemInputPin locally for the DirectDraw stream.
amstream: Reimplement IPin locally for the DirectDraw stream.
amstream: Use shorter method names for DirectDraw stream methods.
amstream/tests: Also test pin information for the primary audio stream.
amstream: Reimplement IPin::EnumMediaTypes() for the primary audio stream.
amstream: Get rid of the AudioMediaStreamImpl typedef.
amstream: Reimplement IMemInputPin locally for the primary audio stream.
amstream: Reimplement IPin locally for the primary audio stream.
amstream: Use shorter names for primary audio stream methods.
winegstreamer: Use strmbase_source_init().
wineqtdecoder: Use strmbase_source_init().
strmbase: Get rid of the no longer used pin constructor and destructor helpers.
qcap/avimux: Use strmbase pin methods directly.
strmbase: Store the filter as a strmbase_filter pointer in the BasePin structure.
strmbase: Get rid of the "pCritSec" member of BasePin.
http.sys: Use the SOCKET type for Windows sockets.
winegstreamer: Get rid of the unused "gstpool" field from GSTOutPin.
winegstreamer: Get rid of the "isaud" and "isvid" fields of GstOutPin.
winegstreamer: Get rid of the GSTInPin structure.
winegstreamer: Get rid of the unused "discont" field from GstImpl.
winegstreamer: Handle GST_EVENT_RECONFIGURE.
winegstreamer: Don't activate our source pad immediately after connecting.
winegstreamer: Use the global HeapAlloc() wrappers.
strmbase: Get rid of the BaseOutputPin typedef.
strmbase: Get rid of the BaseOutputPinFuncTable typedef.
winegstreamer: Use BasePinImpl_QueryAccept() and BasePinImpl_EnumMediaTypes().
winegstreamer: Get rid of the GSTImpl typedef.
winegstreamer: Get rid of the GSTOutPin typedef.
Zhiyi Zhang (4):
winemac.drv: Fix build with older macOS SDKs.
comctl32/taskdialog: Use BCM_GETIDEALSIZE to calculate button size.
user32/tests: Remove an extraneous check.
user32/tests: Fix some msg test failures.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.15 is now available.
What's new in this release (see below for details):
- Initial implementation of the HTTP service.
- Stack unwinding support on ARM64.
- Better multi-monitor support on macOS.
- RichEdit control optimizations.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.15.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.15.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 4.15 (total 28):
22383 Dragon Age: Origins - massive flickering when StrictDrawOrdering is disabled
33834 user32: multiline edit control renders tabs not correctly using usp10
34830 rpcrt4:cstub fails and crashes on Windows 8
37781 Multiple Microsoft Redistributable/Component installers running in Windows 7 mode need dummy Windows Update Service (MS .NET Framework 4.5, MS VC++ 2015 Redist)
38245 Construct 2 can't create a localhost server (needs implementation of version 1 httpapi request queues)
40868 World of Warcraft 7 (Legion expansion beta realm version) client causes a lot of seh:RtlCaptureStackBackTrace stub noise in console
41752 Need For Speed Most Wanted 2012 Corrupted Models & Textures in Game
42681 Regression: Graphics/Texture no longer render correctly in Reflex Arena
43387 valgrind shows several definite leaks in dlls/windowscodecs/tests/metadata.c
44958 Epic Games crash reporter needs 'dbgeng.DebugCreate' to support IDebugClient5 interface
45420 Titanfall 2 Multiplayer mode stuck on Attempting Connection
45843 Battleye's BEDaisy.sys expects memory allocated by ExAllocatePoolWithTag to be executable
46315 Vypress Chat 2.1.9 MSI installer crashes without native jscript
47035 widl generates typelib file with enums multiply defined
47041 wire_marshal attribute ignored and the underlying type is used instead
47049 boolean type defined as 'unsigned char' rather than 'char'
47050 typedef'd anonymous structs typedef'd names are not used in interface methods
47101 Multiple 64-bit game and application crash reporting tools need x86_64 'ntdll.RtlCaptureStackBackTrace' implementation
47149 widl generates invalid C headers when user-defined structs also have const typedef'd names
47427 Glide wrapper - Configuration buttons misbehaving
47436 `winetricks -q dotnet30sp1` fails
47442 Quickbooks 2018 installer fails during Amyuni ABS PDF driver installation, reporting 'File not found.' (needs stub 'regini.exe')
47494 SuperTux: Fullscreen mode not working on MacOSX (Invalid monitor handle)
47523 EverQuest crashes on unimplemented function KERNEL32.dll.EnumSystemFirmwareTables since build Jul 12 2019
47563 Sforzando Sample Player works but GUI is blank (unusable)
47633 Guild Wars quits silently after the splash screen
47636 Multiple games text is upside down (affects Wizard101, Touhou, Unreal Tournament)
47661 SwanSoft CNC: Crashes when clicking "tools management" button
----------------------------------------------------------------
Changes since 4.14:
Akihiro Sagawa (5):
winex11.drv: Indicate whether the drop point is non-client area.
comctl32/tests: Add tests to show no NM_RELEASEDCAPTURE notifications in the updown control.
comctl32/updown: Suppress the NM_RELEASEDCAPTURE notification.
winemac.drv: Translate the WM_DROPFILES point into client coordinates whenever possible.
winemac.drv: Indicate whether the drop point is non-client area.
Alex Henrie (1):
ntdll/tests: Add more tests for RtlIpv4StringToAddress.
Alexandre Julliard (27):
ntdll: Move some exception definitions to winnt.h.
ntdll: Share dynamic exception table functions across platforms.
winedump: Add dumping for exception info for ARM64.
include: Add support for .seh asm annotations.
winecrt0: Add .seh annotations for x86_64.
kernel32: Add .seh annotations for x86_64.
ntdll: Add .seh annotations for x86_64.
oleaut32: Add .seh annotations for x86_64.
rpcrt4: Add .seh annotations for x86_64.
vcomp: Add .seh annotations for x86_64.
msvcrt: Simplify stack layout in __crtCapturePreviousContext().
d2d1: Make qsort() callback functions cdecl.
d3dx9: Make qsort() callback functions cdecl.
dsound: Make a qsort() callback function cdecl.
inetmib1: Make bsearch() callback functions cdecl.
mfplat: Make bsearch() callback functions cdecl.
ntdll: Run signal handlers on the signal stack on ARM64.
kernelbase: Implement SetThreadStackGuarantee().
ntdll: Take stack guarantee into account when handling stack overflows.
Revert "wine/asm.h: Quote stdcall decored symbols."
Revert "winebuild: Quote stdcall decored symbols."
kernelbase: Comment out DECLSPEC_HOTPATCH on stub functions.
ntdll: Implement RtlVirtualUnwind() for ARM64.
ntdll: Add a helper function for calling RtlVirtualUnwind() on x86-64.
configure: Add support for using an external libunwind.
ntdll: Implement stack unwinding on ARM64.
mfplat: Fix a GUID name.
Alistair Leslie-Hughes (7):
include: Add IDirectSoundFX interfaces.
include: Add more ListView macros.
dbgeng: Support interfaces IDebugClient2-7.
dsound: Add missing defines.
include: Allow compiling against IDirectSound*8 interfaces.
odbccp32: Correct error when driver cannot be found.
msi: Don't error when an ODBC Data Source fails to register.
Andrey Gusev (1):
twain_32: Add missing debugstr_a.
André Hentschel (1):
ntdll: Add RtlUnwindEx spec entry for ARM64.
Austin English (2):
mscoree/tests: Mark tests as todo_wine if mono is not available on the current platform.
regini: Add stub program.
Benedikt Bär (1):
ucrtbase: Add more functions for Star Citizen 3.6.1.
Bernhard Übelacker (2):
cmd.exe: Command type with multiple files should print filenames to stderr.
cmd.exe: Change parsing of the if command to avoid parsing the operators.
Brendan Shanks (2):
dinput/tests: Test for correct guidProduct.
dinput: Add "PIDVID" guidProduct and use for non-keyboards/mice.
Carlo Bramini (1):
hhctrl.ocx: Expand environment vars in file name.
Damjan Jovanovic (5):
start.exe: Unquote the title.
cmd.exe: If there is a title given through STARTUPINFO, use it.
start.exe: Pass the "show window" flags to CreateProcess() too.
start.exe: Launch all binaries through CreateProcess().
start.exe: Search PATH for the executable to launch.
Daniel Lehman (1):
wininet/tests: Fix typo in error message.
Dmitry Timoshkov (1):
rpcrt4: Add an exception handler to NdrAsyncClientCall.
Fabian Maurer (1):
find/tests: First tests.
François Gouget (6):
dbgeng: Fix the spelling of GetInterruptTimeout().
ntdll: Fix the spelling of StoragePortClassGuid.
ninput: Fix the name of MANIPULATION_VELOCITY's velocityExpansion field.
ntoskrnl.exe: Fix the name of CONFIGURATION_TYPE's MaximumType enum entry.
wdscore: Fix the name of the WdsIterate*() stubs.
api-*-advapi32-*: Fix the name of the ConvertToAutoInheritPrivateObjectSecurity() stub.
Gijs Vermeulen (1):
ucrtbase: Add _o__mbstrlen.
Gleb Smirnoff (1):
iphlpapi: Account for structs inpcb and tcpcb being unavailable for userland in FreeBSD 12.
Hans Leidekker (8):
ntdll: Read the chassis type from sysfs.
wbemprox: Store the element size in struct array.
wbemprox: Retrieve more properties from the SMBIOS table.
wbemprox/tests: Add tests for Win32_Baseboard.
wbemprox: Avoid evaluating row conditions twice.
wbemprox: Support boolean qualifier values.
wbemprox: Implement IWbemClassObject::GetQualifierSet.
wbemprox: Implement IWbemQualifierSet::GetNames.
Henri Verbeet (6):
wined3d: Introduce WINED3D_TEXTURE_DOWNLOADABLE.
wined3d: Introduce wined3d_colour_srgb_from_linear().
wined3d: Store the sRGB constants as wined3d_vec4 structures.
wined3d: Add support for sRGB formats to wined3d_format_convert_from_float().
wined3d: Create the default samplers in adapter_vk_init_3d().
wined3d: Initialise d3d_info after quirks are applied.
Huw D. M. Davies (6):
riched20: Clearly separate the selection setting functions.
riched20: Only invalidate the selection if it's not hidden.
riched20: Move release_font_cache() further up the file.
riched20: Allow the style to remain selected in the context.
riched20: Use PatBlt() instead of FillRect() to paint the background area.
riched20: Don't calculate the para numbering data if numbering is disabled.
Isira Seneviratne (2):
cabinet/tests: Alter string declaration to include null terminator.
jscript: Replace '%pure-parser' with '%define api.pure'.
Jacek Caban (21):
jscript: Support enumerating own properties.
jscript: Add Object.defineProperties implementation.
jscript: Support properties argument in Object.create.
mshtml/tests: Add Object.defineProperties tests.
jscript: Fix Object.defineProperty return value.
vbscript/tests: Fix tests on recent win10.
vbscript: Return correct error when builtin call argument count is invalid.
vbscript: Add Asc implementation.
vbscript: Fix handling null argument in CStr.
vbscript/tests: Fix tests on some Vista versions.
vbscript: Support arrays in VarType.
vbscript: Handle long/short distinction in interpreter.
vbscript: Rename OP_long expression to OP_int.
vbscript: Support unary + expressions.
winebuild: Don't include aliases in importlib .def files.
winebuild: Don't underscore local symbols in func_declaration.
mscvrt: Always provide float variants of math functions in importlib on x86.
wine/asm.h: Quote stdcall decored symbols.
winebuild: Quote stdcall decored symbols.
vbscript: Suport + sign in exponential literals.
kernel32/tests: Add exception handling race test.
Jactry Zeng (6):
mfplat: Implement MFCreateDXGIDeviceManager().
mfplat: Implement IMFDXGIDeviceManager::ResetDevice().
mfmediaengine: Add stub dll.
include: Add mfmediaengine.idl.
mfuuid: Import mfmediaengine.h.
mfmediaengine: Add MFMediaEngineClassFactory stub.
Jeff Smith (5):
d3drm: Implement d3drm_viewport2_GetCamera().
d3drm: Implement d3drm_viewport2_SetCamera().
d3drm: Implement d3drm_viewport2_GetPlane().
d3drm: Implement d3drm_viewport2_SetPlane().
d3drm: Initialise the front and back clip distances in d3drm_viewport2_Init().
Michael Müller (1):
wuauserv: Add dummy service.
Michael Stefaniuc (1):
msi/tests: Actually test two return values.
Naveen Narayanan (1):
wineoss: Fix the -lossaudio check.
Nikolay Sivov (2):
gdiplus: Add GdipRecordMetafileStreamI().
oleaut32: Reduce noise in SAFEARRAY traces.
Paul Gofman (1):
user32: Return correct showCmd from GetWindowPlacement() for other process window.
Piotr Caban (1):
msi: Fix component Action for shared components in CostFinalize.
Richard Pospesel (4):
widl: Store the "const" type qualifier inside the decl_spec_t structure.
widl: Fail compilation if an incomplete union or enum is used in a remoted field.
widl: Add the typedef to the type library if the aliasee is an anonymous UDT.
widl: Respect wire-marshal typedefs in type libraries.
Richard Yao (1):
advapi32: Add EventWriteString stub.
Rémi Bernon (5):
msctf/tests: Add multi-threaded apartment test for ITfSource_AdviseSink.
dinput/tests: Add test to validate interactions between dinput and raw input devices.
dinput8/tests: Add test to validate interactions between dinput8 and raw input devices.
dinput8/tests: Add window name and window class name test.
dbghelp: Prevent an invalid memory access when the search path element is empty.
Steven Bell (1):
kernel32: Add stub implementation of EnumSystemFirmwareTables.
Sven Baars (9):
wmp: Fix a crash in put_volume when basic_audio is NULL.
wmp: Fix some memory leaks on error path (Coverity).
wmp: Fix a playlist leak (Valgrind).
setupapi/tests: Fix a crash in the need_media tests.
setupapi: Fix a path leak (Valgrind).
setupapi: Fix an uninitialized variable warning (Valgrind).
ntoskrnl.exe: Don't use irp after it has been freed by IoCompleteRequest (Coverity).
msvfw32/tests: Add MCIWndCreate tests.
windowscodecs/tests: Fix a memory leak (Valgrind).
Zebediah Figura (85):
ntdll: Handle version 2 unwind info on x86_64.
ntdll: Handle UWOP_EPILOG directives in x86_64 unwind info.
widl: Fix nesting of functions, pointers, and arrays.
widl: Store the "inline" function specifier inside the decl_spec_t structure.
widl: Don't store the default pointer type in the type_t structure.
ntoskrnl.exe: Fix a typo in a debug trace.
ntoskrnl.exe: Implement ObQueryNameString().
ntoskrnl.exe: Make the driver object accessible by name while in its entry point.
services: Don't redirect the image file path for kernel drivers.
ntoskrnl.exe: Export InitializeSListHead().
httpapi: Stub HttpReceiveHttpRequest().
httpapi: Stub HttpSendHttpResponse().
httpapi: Stub HttpRemoveUrl().
widl: Track whether the type has been defined yet in the statement_t and var_t structures.
widl: Create exactly one type_t object per named structure type.
widl: Create exactly one type_t object per named union type.
widl: Create exactly one type_t object per named enum type.
ntoskrnl.exe: Implement IoInitializeRemoveLockEx().
ntoskrnl.exe: Implement IoAcquireRemoveLockEx().
ntoskrnl.exe: Implement IoReleaseRemoveLockEx().
ntoskrnl.exe: Implement IoReleaseRemoveLockAndWaitEx().
httpapi/tests: Add tests for version 1 request queues.
ntoskrnl.exe: Use a manual-reset event for remove locks.
ntoskrnl.exe: Don't signal the remove lock event unless the lock is in the removed state.
ntoskrnl.exe/tests: Add tests for remove locks.
widl: Check for redefinition of named user types.
widl: Generate a name for the encapsulated union type.
widl: Handle encapsulated unions in type libraries.
widl: Write public typedefs into the typelib if they are referenced directly.
http.sys: New stub driver.
http.sys: Create a stub request queue device.
http.sys: Create a skeletal request_queue object for each file opened.
httpapi: Implement HttpCreateHttpHandle().
hidclass.sys: Avoid freeing pool memory with HeapFree().
ntoskrnl.exe: Allocate pool memory from an executable heap.
ntoskrnl.exe: Stub IoRegisterBootDriverReinitialization().
ntoskrnl.exe: Set the IRP thread also for create and close requests.
ntoskrnl.exe: Implement IoGetRequestorProcess().
setupapi/tests: Add some tests for SPFILENOTIFY_STARTCOPY.
setupapi: Fix handling of FILEOP_SKIP from the SPFILENOTIFY_STARTCOPY callback.
http.sys: Allow associating a URL with the request queue.
httpapi: Implement HttpAddUrl().
httpapi: Implement HttpRemoveUrl().
http.sys: Listen for connections on addresses associated with each request queue.
http.sys: Receive data from connected sockets.
http.sys: Parse salient data from request headers.
http.sys: Stop receiving data as long as an unread request is available.
http.sys: Find a request queue to assign new HTTP requests to.
http.sys: Allow receiving parsed HTTP requests.
http.sys: Fill out unknown verbs.
http.sys: Fill out the raw URL.
http.sys: Fill out the cooked URL.
http.sys: Fill out the local and remote addresses.
http.sys: Fill out the request headers.
http.sys: Implement HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY.
strmbase: Get rid of the "debug_info" parameter to strmbase_filter_init().
strmbase: Zero-initialize the BaseRenderer structure in strmbase_renderer_init().
evr: Consistently use base renderer methods.
evr/tests: Add some tests for IEnumPins.
evr/tests: Add some tests for IBaseFilter::FindPin().
evr/tests: Add some tests for querying pin information.
http.sys: Assign a unique ID to each request.
http.sys: Keep track of pending IOCTL_HTTP_RECEIVE_REQUEST IRPs and satisfy them when possible.
http.sys: Send a 400 Bad Request response when an invalid request is received.
httpapi: Implement HttpReceiveHttpRequest().
strmbase: Get rid of the BaseFilterFuncTable typedef.
strmbase: Get rid of the BaseFilter typedef.
amstream: Get rid of the IMediaStreamFilterImpl typedef.
amstream: Use shorter names for IMediaStreamFilter methods.
amstream: Create the stream filter when the multimedia stream is created.
http.sys: Allow sending response data.
httpapi: Implement HttpSendHttpResponse().
httpapi: Start the http service in HttpInitialize().
httpapi: Implement HttpCreateServerSession() and HttpCloseServerSession().
httpapi: Implement HttpCreateUrlGroup() and HttpCloseUrlGroup().
httpapi: Partially implement HttpSetUrlGroupProperty().
httpapi: Implement HttpAddUrlToUrlGroup() and HttpRemoveUrlFromUrlGroup().
httpapi: Implement HttpCreateRequestQueue() and HttpCloseRequestQueue().
httpapi/tests: Add some tests for version 2 request queues.
httpapi: Prefer the builtin version.
amstream/tests: Separate and expand tests for IAMMultiMediaStream::AddMediaStream().
amstream/tests: Add some tests for IAMMultiMediaStream::Initialize().
amstream/tests: Link to strmiids and uuid.
amstream: Rename amstream.c to multimedia.c.
amstream: Get rid of the IAMMultiMediaStreamImpl typedef.
Zhiyi Zhang (12):
user32: Wait for graphics driver to be ready in EnumDisplayDevicesW.
winex11.drv: Add xrandr_get_screen_resources() helper.
winex11.drv: Make screen helpers independent of Xinerama.
msctf: Check TF_GetThreadMgr error in DocumentMgr_Destructor.
d3d9/tests: Add a test for stencil reference value truncation.
wined3d: Truncate stencil reference values to the stencil component size.
winemac.drv: Add GPU initialization functions.
winemac.drv: Support GPU initialization via Metal.
winemac.drv: Add adapter initialization functions.
winemac.drv: Add monitor initialization functions.
winemac.drv: Handle display device change events.
winemac.drv: Use generic EnumDisplayMonitors and GetMonitorInfo.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 4.0.2 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/4.0/wine-4.0.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.0/wine-4.0.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 4.0.2 (total 66):
15934 Can't see Worms 2 intro films as they play (mciavi32 missing support to MCI_MCIAVI_PLAY_FULLSCREEN)
18099 No keyboard response in Super Mario 3 remake
19098 Regedit randomly crashes when deleting registry keys
21403 Shiva Editor/Evochron: Mercenary refuse to run with built-in dinput/dinput8.dll
23455 FileAlyzer 1.6.0.4, Affinity-installer-1.6.5.123 can't load PE images (needs imagehlp.ImageLoad and imagehlp.ImageUnload implementation)
26445 URLDownloadToFileW does not support FTP URLs
28847 LabChart Reader 7.x crashes due to missing wmvcore 'IWMProfileManager2', CLSID '{7a924e51-73c1-494d-8019-23d37ed9b89a}'
33845 Warframe (Steam) updater fails to replace 'Launcher.exe', reports sharing violation
33904 Face Noir demo crashes on start without native d3dx9_36 ('D3DXLoadSkinMeshFromXof' must return 'ID3DXSkinInfo' interface even with no skinning info present)
36764 Rogue Squadron 3D 1.3: Unable to setup controller in-game
37784 wine-mono does not appear in "wine uninstaller" list on a 64-bit prefix
37871 GOG.com downloader (.NET 3.5 app) wants wininet.GetUrlCacheConfigInfoA/W implementation
38087 Settlers III: mouse not working on start screen and menu (after fixing raw input bug 33479)
43356 Mass Effect (1) Steam freezes since Steam Update from 8th of July 2017
43411 Older directx games (The Sims, Revenant) - Screen not redrawing properly (needs Set/GetClipStatus implementation)
44423 Office 2007/2010 32bit - links not working
45429 Inno Setup v5.x based game-installers using 'wintb' plugin fail with: 'Runtime error 229 at <address>' (Win7+ ITaskbarList3 ThumbBar/Thumbnail semi-stubs needed)
45543 Multiple games and applications crash in dwrite due to invalid index access to cluster array (Rekordbox 5.3.0, SpellForce 3)
45703 Microsoft Office 365 applications crash on startup (Microsoft AppV ISV virtual filesystem technology requires several native and core API to be hot-patchable)
45878 Aruba digital signature crashes on missing hid.dll.HidD_FlushQueue
46019 Multiple NSIS 2.x based installers fail due to invalid module handle passed to 'kernel32.FreeLibrary', causing code dll unmapped as data dll (Adobe Digital Editions 4.5.x, ConceptDraw Office 4)
46115 Cursor in unity games moving down and to the right one pixel on any mouse interaction
46187 Windows PowerShell Core 6.2 Preview 2 for ARM32 crashes due to unhandled trap_no 0 (write watch access causes SIGSEGV)
46189 Windows PowerShell Core 6.2 Preview 2 for ARM32 crashes due to ntdll 'set_cpu_context' not restoring Thumb mode during return from exception handling
46316 Hauppauge Capture version 36187 crashes during install
46371 FFXI + Ashita random crash ingame
46579 F.E.A.R. 2: Project Origin screen is completely light grey while playing intro movie
46626 UPlay fails to start : "Error at hooking API LoadStringA" (UPlay's hooking engine can't handle ENDBR32 instruction inserted at non-hotpatch API entries due to distro build environments '-fcf-protection')
46706 Eventide H9 Control crashes on unimplemented function bthprops.cpl.BluetoothFindDeviceClose
46711 Since 3.3 other HID devices than Joysticks not supported anymore
46712 Atelier Firis config tool crashes with "Unhandled page fault on execute access"
46713 School days HQ occasional divide by zero
46721 Two quotes together (in outer quotes) not parsed correctly in argv
46754 Multiple application installers fail in VBscripts due to IWshEnvironment::Item property returning BSTR with embedded null terminator (PostgreSQL 9.3)
46761 BigNox VM VirtualBox Support Driver 'YSDrv.sys' (part of NoxPlayer 6.x) crashes on unimplemented function ntoskrnl.exe.MmBuildMdlForNonPagedPool
46772 Creo Elements/Direct Modeling Express 6.0 installer fails with VBScript parser error: parser_lex '_' not followed by newline
46800 LINE (Powered by Naver): LINE v5.12.XXX series crashes after few seconds
46807 The Sims hangs when opening menus
46811 Inquisitor: black screen after start in fullscreen mode
46812 PS4 Remote Play installer 2.8.x fails, claims 'You need the Media Feature Pack' (MsiGetDatabaseState is called from a custom action)
46845 Freelancer: character glitches in cutscenes after loading a saved game
46848 PTC Mathcad Prime 3.0 Web installer crashes on unimplemented function api-ms-win-crt-convert-l1-1-0.dll.wctrans
46863 If prefix contains "windows" drive information not available in 64-bit prefix
46881 Power World Simulator installer needs unimplemented function msi.dll.MsiSourceListForceResolutionW
46894 SIMATIC WinCC V15.1 Runtime installer (.NET 4.0) fails in CoreLib::GetPhysicalMemoryAmountWmi() (missing 'DeviceLocator' property of 'Win32_PhysicalMemory' WMI class)
46895 SIMATIC WinCC V15.1 Runtime installer (.NET 4.0) fails due to missing 'OperatingSystemSKU' property of 'Win32_OperatingSystem' WMI class
46899 SIMATIC WinCC V15.1 Runtime installer: user can't accept license terms (richedit20 ITextRange::ScrollIntoView lacks handling of 'tomEnd')
46902 SIMATIC WinCC V15.1 Runtime installer: S7Inst64.exe sub-installer crashes on unimplemented function msvcr110.dll._wcsnset_s
46903 SIMATIC WinCC V15.1 Runtime installer: AdHocSigner.exe tool crashes on unimplemented functions mssign32.dll.SignerSignEx and SignerFreeSignerContext
46906 SIMATIC WinCC V15.1 Runtime installer: SeCon tool 'SeCon_Win32.exe' crashes due to hnetcfg 'INetFwRules::get__NewEnum' not initializing out parameter
46908 Support msvcp mtx_init 'mtx_try' flag (0x2) to create a mutex object that supports test and return
46909 Missing (black) textures in Black & White
46923 X-Tension, X-Beyond The Frontier: Dynamic light breaks after opening up a menu
46928 Atelier Firis config tool doesn't show up when launched through Steam
46939 propvarutil.h: missing extern "C"
46953 Watch_Dogs crashes after intro
46971 Multiple Steam games crash with Wine 4.6 (Steam Game Overlay Renderer hook engine requires several API to be hot-patchable) (Sniper Elite V2, Sniper Elite 3, Brawlhalla)
46989 Grand Prix Legends: Wheel (Wheel, Gas, Brake) axes inputs aren't recognized
46996 Improvements to the 7.1 and 5.1 to stereo conversion
47009 msi x64 installation file created by Visual Studio cannot be uninstalled
47022 Multiple performance monitor applications fail to display system physical/committed virtual memory usage (Sysinternals Process Explorer v16.x, builtin Taskmgr)
47031 widl generates invalid typelib when importing types from multiple typelibs
47051 Microsoft Excel 2016 (Office 365) crashes on startup (Microsoft AppV ISV virtual filesystem technology requires kernel32.CreateActCtxW to be hot-patchable)
47065 Vocaloid 5 (.NET 4.x app) crashes on startup (needs 'Win32_OperatingSystem' WMI class 'SystemDrive' property)
47183 Grand Prix Legends: Only the first two axes are recognized
47262 compile error: ‘for’ loop initial declarations are only allowed in C99 mode
----------------------------------------------------------------
Changes since 4.0.1:
Alexandre Julliard (2):
kernel32: Validate handle before freeing a LOAD_LIBRARY_AS_DATAFILE module.
ntdll: Check for time conversion error to silence a compiler warning.
Alistair Leslie-Hughes (7):
regedit: Grow the buffer when modifying a DWORD value.
urlmon: Pass unescaped URLs to InternetOpenUrl in ftp protocol handler.
hid: Implement HidD_FlushQueue().
dinput: Ensure Cursor is visible on config dialog.
dinput: Allow enumeration of joysticks with DirectX 3.
dinput: Handle setting DIPROP_CALIBRATIONMODE mode in generic implementation.
vbscript: Move variable declaration outside of for.
Andrey Gusev (2):
dxgi: Add DECLSPEC_HOTPATCH to d3d11_swapchain_Present().
setupapi: Add DECLSPEC_HOTPATCH to SetupDiEnumDeviceInfo().
André Hentschel (5):
ntdll: Add stub for RtlInstallFunctionTableCallback on ARM/ARM64.
ntdll: Adjust PC according to THUMB/ARM flag.
kernel32: Add forward for RtlInstallFunctionTableCallback on ARM/ARM64.
include: Fix vararg standard call types for ARM.
ntdll: Translate signal to trap when trap code is 0 on ARM.
Austin English (1):
propvarutil.h: Add extern "C" if __cplusplus is defined.
Brendan McGrath (1):
kernel32: Allow double quote style escape in argv.
Bruno Jesus (1):
mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN.
Claudio Fontana (1):
kernel32: Allow empty profile section and key name strings.
Dmitry Timoshkov (1):
wininet: Return proper cache path from GetUrlCacheConfigInfo.
Gijs Vermeulen (8):
wmvcore: Upgrade to IWMProfileManager2.
ntoskrnl.exe: Add MmBuildMdlForNonPagedPool stub.
msvcr120: Add [to]wctrans.
hnetcfg: Initialize INetFwRules::get__NewEnum out parameter.
msvcrt: Implement _wcsnset_s.
mssign32: Add SignerSignEx stub.
mssign32: Implement SignerFreeSignerContext.
riched20: Handle tomEnd in ITextRange::ScrollIntoView.
Hans Leidekker (3):
wbemprox: Implement Win32_PhysicalMemory.DeviceLocator.
wbemprox: Implement Win32_OperatingSystem.OperatingSystemSKU.
wbemprox: Implement Win32_OperatingSystem.SystemDrive.
Henri Verbeet (1):
wined3d: Also update the "src_texture_gl" pointer when using a staging texture in the blitter.
Józef Kucia (1):
dxgi: Do not forward d3d11_swapchain_Present() to d3d11_swapchain_Present1().
Louis Lenders (8):
bthprops.cpl: Add BluetoothFindDeviceClose stub.
explorerframe: Return S_OK in ITaskbarList3 SetThumbnailTooltip method.
explorerframe: Return S_OK in ITaskbarList3 ThumbBarAddButtons.
explorerframe: Return S_OK in ITaskbarList3 ThumbBarUpdateButtons method.
msi: Add MsiSourceListForceResolution{A,W} stub.
ntdll: Add DECLSPEC_HOTPATCH to NtQueryDirectoryFile.
ntdll: Add DECLSPEC_HOTPATCH to NtQueryValueKey.
kernel32: Add DECLSPEC_HOTPATCH to CreateActCtx.
Mark Jansen (1):
imagehlp/tests: Add tests for ImageLoad, ImageUnload, GetImageUnusedHeaderBytes.
Matteo Bruni (8):
d3d9: Release system memory wined3d buffer only after the draw buffer is destroyed.
d3d8: Release system memory wined3d buffer only after the draw buffer is destroyed.
d3d9: Return failure in CheckDeviceFormat() for unsupported adapter formats.
d3d8: Return failure in CheckDeviceFormat() for unsupported adapter formats.
wined3d: Set display mode to a suitable adapter format.
d3d9: Validate vertex stride in Draw[Indexed]PrimitiveUP().
d3d8: Validate vertex stride in Draw[Indexed]PrimitiveUP().
wined3d: Avoid a GCC 8 warning.
Michael Müller (2):
imagehlp: Implement ImageLoad and cleanup ImageUnload.
d3dx9/tests: Add initial tests for dummy skin info interface.
Nikola Pavlica (2):
dsound: Revised 5.1 to stereo downmix.
dsound: Added 7.1 to stereo downmix.
Nikolay Sivov (4):
user32: Do not touch some of the values on 64-bit with SetWindowLong().
user32: Make GetWindowLong() fail for some values on 64-bit.
wshom.ocx: Fix string length returned from Check returned BSTR length.
dwrite/layout: Fix invalid index access to cluster array.
Paul Gofman (4):
ddraw: Deny adding the same light to viewports multiple times.
ddraw: Fix ddraw[1-4] light activation / deactivation.
ddraw: Improve d3d_device7_GetClipStatus() stub.
xaudio2_7: Also preserve %ebx in call_on_voice_processing_pass_start().
Piotr Caban (5):
msvcrt: Don't detect overflow in atol implementation.
msvcrt: Use correct locale when comparing strings in getenv.
msvcp90: Add support for more creation flags in _Mtx class.
msvcp140: Don't forward __ExceptionPtrDestroy to msvcr120.
msvcr110: Fix __crtGetShowWindowMode implementation.
Sebastian Lackner (4):
server: Improve handling of cursor position clipping for empty rectangle.
winex11: Forward all clipping requests to the right thread.
dinput: Do not wait for hook thread startup in IDirectInput8::Initialize.
dinput: Avoid deadlock when CS are acquired in different order.
Thomas J. Moore (1):
ntdll: Also try to stat() the drive root.
Tim Schumacher (2):
winejoystick: Add support for wheel axes.
dinput: Map wheel, gas, and brake axes as well.
Vijay Kiran Kamuju (3):
d3dx9: Generate ID3DXSkinInfo in D3DXLoadSkinMeshFromXof() when needed.
ntdll: Report system information SystemPerformanceInformation info class.
wpcap: Fix compile warnings for redefinition of PCAP_OPENFLAG_PROMISCUOUS.
Vincent Povirk (1):
uninstaller: Re-exec as 64-bit in wow64.
Vlad Bespalov (1):
user32: Make LoadString[AW] patchable.
Zebediah Figura (12):
mshtml: Open pages in the native browser in HlinkTarget_Navigate().
vbscript: Handle carriage return in more places.
hid: Fix length argument to GetOverlappedResult().
msi/tests: Test calling more functions from custom actions.
msi: Return MSIDBSTATE_ERROR when MsiGetDatabaseState() is called from a custom action.
msi: Fix handling of architecture in MSIREG_{Open, Delete}UninstallKey().
winebus.sys: Retrieve hidraw device strings from the parent USB device.
hid: Implement HidD_GetIndexedString().
devenum: Return S_FALSE from CreateClassEnumerator() if no devices exist.
d3d9/tests: Add more tests for reset state after DrawIndexedPrimitiveUP().
d3d8/tests: Port test_draw_primitive() from d3d9.
widl: Correctly set the import library offset for all imported types.
Zhiyi Zhang (2):
kernel32: Open replaced file without GENERIC_WRITE in ReplaceFileW().
dinput: Fix a possible deadlock at exit.
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 4.14 is now available.
What's new in this release (see below for details):
- New version of the Mono engine with upstream updates.
- PE dlls no longer rely on the MinGW runtime.
- Exception handling fixes on ARM64.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.14.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.14.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 4.14 (total 18):
34749 Eleusis Demo needs native dotnet40
39129 Cygwin's dash.exe crashes during installation
45449 Add diagnostic 'mscoree.dll.CorGetSvc' stub (NGEN client) to hint at broken Microsoft .NET Frameworks installation (Wine-Mono not uninstalled and/or 'mscoree.dll' placeholders not removed prior install)
46195 Multiple Windows 10 ARM64 apps need ntdll 'set_cpu_context' implementation (Windows PowerShell Core 6.2)
47074 World War Z crashes after intro logos due to unimplemented D3DKMTQueryStatistics
47514 AviUtl: Can't add a file to the ExEdit dialog after the first drop.
47546 Touhou 14-17 experience Spell Name and Music Room text issues starting in Wine 4.1
47561 Crash starting Rak24u Program
47564 Database mistmatch on brazillian timezone (America/Sao_Paulo)
47578 Omni-NFS 4.13's XLPD Server crashes on unimplemented function ntoskrnl.exe.MmIsThisAnNtAsSystem
47586 The Sims 1 visually freezes after alt-tabbing when in fullscreen mode
47594 Star Control Origins: very slow on new game. (a few minutes per frame)
47601 Process Hacker calls unimplemented ntoskrnl.exe functions SePrivilegeCheck and SeLocateProcessImageName
47605 Star citizen needs api-ms-win-crt-private-l1-1-0.dll._o_getenv
47611 LizardSystems Wi-Fi Scanner needs wlanui.dll to start
47612 LizardSystems Terminal Services Manager needs Ex functions from wtsapi32.dll
47616 LizardSystems Terminal Services Manager needs utildll.dll to start
47622 Wine 4.13 doesn't start Adobe Digital Editions 2 - works with 4.12.1
----------------------------------------------------------------
Changes since 4.13:
Akihiro Sagawa (2):
shell32/tests: Add DragQueryPoint tests.
shell32: Fix return value for DragQueryPoint.
Alex Henrie (12):
ntoskrnl: Add MmIsThisAnNtAsSystem().
ntoskrnl: Add stub for SePrivilegeCheck.
ntoskrnl: Add stub for SeLocateProcessImageName.
kernel32: Silence FIXME about FIND_FIRST_EX_LARGE_FETCH.
wtsapi32: Add stubs for WTSEnumerateProcessesEx[AW].
include: Add WTS_SESSION_INFO_1[AW].
wtsapi32: Add stubs for WTSEnumerateSessionsEx[AW].
wtsapi32: Add stubs for WTSOpenServerEx[AW].
include: Add WTS_TYPE_CLASS.
wtsapi32: Implement WTSFreeMemoryEx[AW].
wlanui: Add DLL.
utildll: Add DLL.
Alexandre Julliard (23):
makefiles: Default to an msvcrt build for static libraries.
wpcap: Avoid deprecated pcap_lookupdev().
ntdll: Reimplement thread initialization in assembler on ARM64.
ntdll: Silence FIXME for LdrResolveDelayLoadedAPI().
kernel32: Reimplement fiber switching in assembly.
kernel32: Move thread functions to kernelbase.
kernel32: Move thread pool functions to kernelbase.
kernel32: Move fiber functions to kernelbase.
kernel32: Move more thread functions to kernelbase.
kernel32: Move some process functions to kernelbase.
kernel32: Move process/thread attribute list functions to kernelbase.
kernel32: Move file handle functions to kernelbase.
kernel32: Move some file name functions to kernelbase.
kernel32: Move some module functions to kernelbase.
kernel32: Move some directory functions to kernelbase.
ntdll: Add support for saving/restoring FPU state on ARM64.
ntdll: Use the exception fault code to detect write access on ARM64.
ntdll: Preserve the stack red zone on ARM64.
ntdll: Save the context from the caller stack frame in RtlCaptureContext() on ARM64.
ntdll: Implement setting the thread context on ARM64.
ntdll: Don't run exception handlers on the signal stack on ARM64.
ntdll: Fix support for breakpoint exceptions on ARM64.
wineboot: Only use cpuid on platforms where it makes sense.
Alexey Prokhin (1):
xinput: Fix vibration capabilities.
Alistair Leslie-Hughes (5):
include: Define ADDRINFOT explicitly.
include: Add IDebugClient2-7 interfaces.
include: Complete dbgeng interfaces.
include: Added tpcshrd.h.
comctl32/listview: Don't report current item state in change notification when state change wasn't requested.
Andrew Eikum (2):
hid: Fix looking up report in HidP_GetValueCaps.
winebus.sys: Report device revision number for hidraw, too.
Benedikt Bär (1):
ucrtbase: Link missing functions to msvcrt that are needed by api-ms-win-crt-private-l1-1-0.
Charles Davis (1):
configure: Add a missing comma.
Conor McCarthy (1):
wldap32: Use ldap_memvfree() to free array allocated by libldap.
Dmitry Timoshkov (1):
msxml3: Register various XML character conversion routines if libxml2 doesn't support them.
Dridi Boukelmoune (1):
powrprof: Add PowerReadFriendlyName() stub.
François Gouget (18):
usp10/tests: A spelling fix in an ok() message.
setupapi/tests: A spelling fix in an ok() message.
windowscodecs/tests: A couple of spelling fixes in comments.
ntdll/tests: A spelling fix in a comment.
msscript.ocx: A spelling fix in a comment.
jscript/tests: A spelling fix in an ok() message.
kernel32/tests: A couple of spelling fixes in ok() call messages.
jscript: A spelling fix in a comment.
hidclass.sys: A spelling fix in an ERR() message.
dplayx: A spelling fix in a FIXME() message.
comctl32: A spelling fix in a TRACE() message.
advpack: A spelling fix in a comment.
winex11.drv: A spelling fix and slight rewording in a comment.
wlanapi/tests: Spelling fixes in ok() messages.
msvcrt: A spelling fix in a comment.
server: A spelling and slight rewording fix in a comment.
ntdll: Add a trailing '\n' to a TRACE().
jscript: Add a trailing '\n' to a WARN() message.
Gijs Vermeulen (7):
wmp: Improve playlist creation.
wmp: Implement IWMPPlaylist::get_count.
wmp: Fake success in IWMPPlaylist::appendItem.
wmp: Implement IWMPPlaylist::[get|put]_name.
wmp/tests: Add some IWMPPlaylist tests.
wine.inf: Update E. South America Standard Time.
wmp: Fix memory leak in IWMP[Media|Playlist]::put_name.
Henri Verbeet (49):
wined3d: Pass a wined3d_context_gl structure to context_set_current().
wined3d: Return a wined3d_context_gl structure from context_get_current().
wined3d: Use d3d_info to determine BGRA vertex support in context_update_stream_info().
wined3d: Get rid of the float16 fallback in context_update_stream_info().
wined3d: Use d3d_info to determine whether shader outputs need interpolation qualifiers.
wined3d: Store sRGB read control support in struct wined3d_d3d_info.
wined3d: Store sRGB write control support in struct wined3d_d3d_info.
wined3d: Store clip control support in struct wined3d_d3d_info.
wined3d: Store fixed-function alpha test support in struct wined3d_d3d_info.
wined3d: Store the maximum number of "compat" varyings in struct wined3d_d3d_limits.
wined3d: Use the format info to determine the A8_UNORM output swizzle in find_ps_compile_args().
wined3d: Move the "gl_info" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "level" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Invalidate the relevant sampler when unloading a currently bound texture.
wined3d: Get rid of the "dirtyArray" field from struct wined3d_context.
wined3d: Make the adapter responsible for swapchain creation and destruction.
wined3d: Introduce a structure for Vulkan context information.
wined3d: Setup and tear down the shader backend for the Vulkan adapter.
wined3d: Upload buffer ranges through buffer ops.
wined3d: Download buffer ranges through buffer ops.
wined3d: Make the adapter responsible for buffer creation and destruction.
wined3d: Don't call wined3d_texture_prepare_location() with a NULL context in wined3d_texture_update_desc().
wined3d: Make the adapter responsible for render target view creation and destruction.
wined3d: Make the adapter responsible for shader resource view creation and destruction.
wined3d: Make the adapter responsible for unordered access view creation and destruction.
ddraw/tests: Add a test for reported surface caps.
wined3d: Never report WINEDDSCAPS_ALPHA, WINEDDSCAPS_SYSTEMMEMORY and WINEDDSCAPS_VISIBLE.
wined3d: Always report WINEDDSCAPS_TEXTURE, WINEDDSCAPS_ZBUFFER and WINEDDSCAPS_MIPMAP.
wined3d: Report WINEDDSCAPS_BACKBUFFER and WINEDDSCAPS_FRONTBUFFER only on 3D devices.
wined3d: Report a few more ddraw surface caps on 3D devices.
wined3d: Make the adapter responsible for texture creation and destruction.
wined3d: Introduce a separate structure for OpenGL swapchain information.
wined3d: Move the backup window from struct wined3d_swapchain to struct wined3d_swapchain_gl.
wined3d: Move the context array from struct wined3d_swapchain to struct wined3d_swapchain_gl.
wined3d: Get rid of a redundant NULL check in wined3d_context_gl_acquire() (Coverity).
ddraw/tests: Fix some test failures on 64-bit ddraw.
dxgi/tests: Introduce create_window().
ddraw: Release the wined3d mutex on error paths in ddraw_surface7_Blt().
wined3d: Make the adapter responsible for sampler creation and destruction.
wined3d: Introduce a separate structure for OpenGL sampler information.
wined3d: Make the adapter responsible for query creation and destruction.
wined3d: Make the adapter responsible for flushes.
wined3d: Set WINED3D_BLT_RAW for raw blits in cpu_blitter_blit().
wined3d: Implement 3D texture clears in surface_cpu_blt_colour_fill().
wined3d: Introduce wined3d_resource_prepare_sysmem().
wined3d: Introduce wined3d_buffer_ops.buffer_prepare_location().
wined3d: Introduce wined3d_texture_ops.texture_prepare_location().
wined3d: Map/unmap bo addresses through the adapter.
wined3d: Merge wined3d_texture_upload_data() and wined3d_texture_gl_upload_data().
Huw D. M. Davies (3):
user32: Don't query the nonclient metrics unless the font info is required.
riched20: Move handling of EM_SETCHARFORMAT to a helper function.
riched20: Don't force an update when styles are changed.
Jacek Caban (34):
stdlib.h: Forward strtoll to _strtoi64.
stdio.h: Use __acrt_iob_func to access standard stream files.
winegcc: Use imported crt DLL instead of msvcrt if specified.
d3d9x: Build with ucrtbase.
gdiplus: Build with ucrtbase.
vbscript: Build with ucrtbase.
dsound: Build with ucrtbase.
winecrt0: Add __delayLoadHelper2.
winecrt0: Add DllMainCRTStartup.
msvcr70: Provide floating point function wrappers in importlib.
winegcc: Use -nodefaultlibs -nostartfiles for builtin DLLs.
kernel32/tests: Improve timeout handling in debugger tests.
server: Report only one debug event per process at the time.
jscript: Support VT_UI1 and VT_I1 types.
jscript: Allow 0x strings with explicit radix 16 in parseInt.
jscript: Add support for parametrized compound assignments.
msvcrt: Use __iob_func instead of __p__iob in __acrt_iob_func implementation.
msvcrt: Export __p__iob only on i386.
msvcrt: Avoid conflict with mingw __iob_func declaration.
include/msvcrt: Add corecrt.h header.
include/msvcrt: Include corecrt.h instead of crtdefs.h.
mshtml/tests: Fix events.html on some win10 versions.
mshtml/tests: Fix SCRIPTPROP_ABBREVIATE_GLOBALNAME_RESOLUTION tests on recent IE11 versions.
mshtml: Support semicolon in UA compatible string.
mshtml/tests: Fix XHR tests on some IE versions.
kernel32/tests: Add single step and debug service tests.
jscript: Introduce function vtbl and use it for toString implementation.
jscript: Move function destructor implementation into vtbl.
jscript: Move function call implementation into vtbl.
jscript: Move value_proc to BuiltinFunction struct.
jscript: Introduce InterpretedFunction struct.
jscript: Move function name to NativeFunction.
jscript: Implement Function.prototype.bind.
mshtml: Add Function.prototype.bind tests.
Józef Kucia (2):
wined3d: Fix memory leak in wined3d_swapchain_state_create() (Coverity).
winevulkan: Pull in bitmask dependencies for function parameters.
Kai Krakow (1):
wined3d: Add GPU information for NVIDIA GTX 1660 Ti.
Kristján Gerhardsson (2):
wined3d: Add GPU information for AMD VEGA20.
wined3d: Add GPU information for a few more Intel KBL GPUs.
Matteo Bruni (9):
d3dx9: Get rid of unused unlock_surface() argument.
d3dx9/tests: Make the pixels array static.
d3dcompiler/tests: Get rid of redundant "failed" in test strings.
d3dcompiler/tests: Trace the test index in test_fail() checks.
wined3d: Fix color mask 1-3 state setting.
wined3d: Get rid of wined3d_max_compat_varyings().
wined3d: Clean up fallback paths in wined3d_surface_blt().
wined3d: Get rid of surface_blt_special() fallback in wined3d_surface_blt().
wined3d: Allow cross-swapchain blits in the supported cases.
Michael Stefaniuc (5):
ntdll: Remove useless cast to self.
d3d12/tests: Remove useless casts to self.
dxgi/tests: Remove useless casts to self.
gdi32/tests: Remove useless casts to self.
gdi32: Remove useless casts to self.
Naveen Narayanan (1):
ntdll: Set pthread stack guard size to 0 for NetBSD.
Nikolay Sivov (4):
dwrite: Add recent script properties.
kernel32/tests: Add some tests for setting file times.
ntdll/tests: Add some tests for setting file times.
ntdll: Ignore -1 time value same as 0 when setting file times.
Paul Gofman (6):
d3dx9: Pass rectangle to {lock|unlock}_surface().
ddraw: Return DDERR_SURFACELOST from _GetAttachedSurface() if surface is lost.
ddraw: Restore complex attached surfaces when restoring surface.
ddraw/tests: Test restoring attached surface for ddraw4.
ddraw/tests: Test restoring attached surface for ddraw2.
ddraw/tests: Test restoring attached surface for ddraw1.
Peter Dons Tychsen (1):
msvcrt: Do not use casting in min/max constants.
Richard Pospesel (11):
widl: Change struct _var_t's type member to a struct _decl_spec_t.
widl: Refactor to have array type's element use decl_spec_t rather than type_t.
widl: Refactor to have pointer type's ref use decl_spec_t rather than type_t.
widl: Bump MIDL version to 5.2.202 to avoid RPC_X_WRONG_STUB_VERSION exception in ObjectStublessClient.
widl: Use type_function_get_args() instead of type_get_function_args().
widl: Use type_pointer_get_default_fc() in declare_var().
widl: Store the aliasee as a decl_spec_t structure.
widl: Pass a decl_spec_t to write_type_v().
widl: Pass a decl_spec_t to write_type_left().
widl: Pass a decl_spec_t to type_new_array().
widl: Pass a decl_spec_t to type_new_alias().
Rémi Bernon (9):
ntdll: Add alloc_type parameter to virtual_map_section and top_down to map_image.
ntdll: Directly call internal functions from APC handler.
ntdll: Change zero_bits parameter type to ULONG_PTR for NtMapViewOfSection and NtAllocateVirtualMemory.
ntdll/tests: Factor WoW64 checks and add is_win64 constant.
ntdll/tests: Use MEM_TOP_DOWN parameter to consistently fail zero_bits tests.
ntdll/tests: Update zero_bits > 31 test case to validate bitmask behavior.
ntdll: Use custom internal zero_bits_64 parameter format.
ntdll: Implement zero_bits parameter in virtual alloc functions.
winex11.drv: Print the FocusIn/FocusOut mode in trace message.
Vincent Povirk (2):
mscoree: Update Wine Mono to 4.9.2.
mscoree: Add diagnostic CorGetSvc stub.
Zebediah Figura (40):
wined3d: Inhibit the screensaver while a full-screen application has focus.
qcap: Share source with strmbase.
winegstreamer: Share source with strmbase.
wineqtdecoder: Share source with strmbase.
strmbase: Build with msvcrt.
wineqtdecoder: Fix build.
ntoskrnl.exe/tests: Add some tests for file objects.
ntoskrnl.exe/tests: Add some tests for IRP return values.
ntoskrnl.exe: Always set the IRP return size.
quartz/filtergraph: Remove type tracing from IGraphBuilder::AddSourceFilter().
quartz: Remove unnecessary tracing from GetClassMediaFile().
quartz: Always try to detect a file by extension first.
quartz: Simplify error handling in GetClassMediaFile().
quartz: Simplify error handling in process_pattern_string().
quartz: Use file APIs directly in get_media_type().
quartz: Get rid of GetFileSourceFilter() and CreateFilterInstanceAndLoadFile().
quartz/tests: Add some tests for IGraphBuilder::AddSourceFilter().
include: Add NTSTATUS severity macros.
ntoskrnl.exe: Set the IRP output buffer unless the status has both high bits set.
d3dcompiler: Get rid of the superfluous "variable" rule.
d3dcompiler: Store the arguments to a hlsl_ir_constructor as a fixed array.
d3dcompiler: Remove redundant components_count_expr_list() function.
d3dcompiler/tests: Simplify test_fail().
d3dcompiler/tests: Add a couple more tests for complex initializers.
d3dcompiler: Use the documented YYABORT macro.
d3dcompiler: Parse initializer lists using a variable-size array.
d3dcompiler: Use new_cast() in implicit_conversion().
d3dcompiler: Introduce a new_unary_expr() helper.
d3dcompiler: Introduce a new_binary_expr() helper.
widl: Get rid of fix_incomplete().
widl: Use type_function_get_args() in more places.
widl: Move the "idx" parameter from struct func_details to var_t.
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_function_decl.
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_var.
widl: Introduce type_iface_get_async_iface().
widl: Use type_iface_get_inherit() in check_async_uuid().
widl: Introduce type_array_{get,set}_ptr_tfsoff().
widl: Use the type_type field to track whether the type is an alias.
mscorwks: Prefer the native version.
widl: Store the type for casts and sizeof() expressions as a decl_spec_t.
Zhiyi Zhang (1):
msctf: Add ITfContextOwnerCompositionServices stub.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.13 is now available.
What's new in this release (see below for details):
- Support for Passport HTTP redirects.
- A bunch of header updates.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.13.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.13.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 4.13 (total 15):
35345 Multiple applications and games fail to enumerate display/monitor driver properties in registry using setupapi (Evoland (Steam), NVIDIA GeForce Experience 3.x)
39152 Monitor Test 3.2 fails to enumerate video devices/drivers in registry ('HKLM\\HARDWARE\\DeviceMap\\VIDEO', PnP Manager)
43286 WSARecvMsg wrongly forbids NULL control buffers (Qt 5.7.0 based: Cannot read UDP packets: "errno 90, (Message too long)")
46607 For Honor crash on "double free or corruption"
46763 Second Sight:bad performance
47029 A.R.E.S. Extinction Agenda 1.x (.NET 2.0, XNA 3.1 game) crashes during intro (needs IWMPMedia::put_name implementation)
47356 By default only echo errors
47411 TreeSize Free Portable exits silently on startup due to missing shell32.SHMultiFileProperties stub
47432 bcrypt always chooses ECB mode when using AES, even if a program indicates otherwise.
47437 Final Fantasy XIV 5.0 crashes on startup when using xaudio2_8.dll
47445 compile error: ‘AT_NO_AUTOMOUNT’ undeclared
47452 Ren'py unable to create displays in Wine 4.11
47473 armv7hl compile fails due to non-AAPCS variadic function calls
47479 Many D3D11 games show black or white screen with Wine 4.12.1 (Darkula by Locomalito, Magic the Gathering Arena, Battle.net, EVE Online, World of Warships)
47519 Amazon Workspaces - ABNT2 keyboard dont recognize characters
----------------------------------------------------------------
Changes since 4.12.1:
Alistair Leslie-Hughes (31):
include: Add define SS_PORT.
include: Add more defines in sal.h.
include: Add MENUGETOBJECTINFO.
include: Add UI_ANIMATION_KEYFRAME_STORYBOARD_START constant.
include: Add UI_E_* defines.
include: Add gesture defines.
include: Add recovery defines.
include: Add IPreviewHandlerFrame interface declaration.
include: Add Network Address Control defines.
msvcrt: Add strupr_s declaration.
include: Add filter.idl.
include: Added thumbcache.idl.
include: Add PF_INET6 define.
include: Correct LVINSERTMARK define.
include: Use macro SNDMSG to send messages.
include: Added missing Header_* defines.
include: Added missing Button_* defines.
include: Added Pager_* defines.
include: Added missing ListView_* defines.
include: Added Animate_IsPlaying define.
include: Added missing MonthCal_* defines.
include: Added missing DateTime_* defines.
include: Added missing ComboBox_* defines.
include: Added missing Edit_* defines.
include: Add some missing declarations.
include: Add tchar defines.
include: Define ADDRINFOT.
include: Added LVITEMINDEX.
include: Add missing D3DKMT typedefs.
gdi32: Add D3DKMTQueryStatistics stub.
include: Implement InlineIsEqualGUID.
Andrew Eikum (2):
msctf: Accept ITfUIElementSink in ThreadMgr AdviseSink.
msctf: Accept ITfInputProcessorProfileActivationSink in ThreadMgr AdviseSink.
André Hentschel (1):
kernel32/tests: Don't test functions directly when reporting GetLastError().
Austin English (1):
shell32: Add SHMultiFileProperties stub.
Charles Davis (4):
ntdll: Implement RtlCaptureStackBackTrace() for x86_64.
ntdll: Move SetThreadExecutionState() implementation to ntdll.
ntdll: Stub power request APIs.
kernel32: Forward power request functions to ntdll.
Conor McCarthy (7):
wined3d: Track windows styles per-swapchain.
dxgi: Implement d3d12_swapchain_ResizeTarget().
dxgi: Implement d3d12_swapchain_GetFullscreenState().
dxgi: Implement d3d12_swapchain_SetFullscreenState().
dxgi/tests: Run test_resize_target() on d3d12 as well.
dxgi/tests: Run test_set_fullscreen() on d3d12 as well.
dbghelp: Return NULL instead of IMAGE_NO_MAP when PE file mapping fails.
Damjan Jovanovic (3):
ws2_32: WSARecvMsg allows a NULL control buffer when no control messages arrive.
ws2_32: Implement IP_PKTINFO on *BSDs, which only have IP_RECVDSTADDR instead.
ws2_32: Avoid data corruption of WSAPROTOCOL_INFO in ws_protocol_info().
François Gouget (1):
xaudio2: Fix the optional FAudio functions check.
Gabriel Ivăncescu (1):
ntdll: Define AT_NO_AUTOMOUNT if needed.
Gerald Pfeifer (1):
windowscodecs: Move from_sRGB_component into the same section as its sole sole user.
Gijs Vermeulen (5):
wmp/tests: Add more IWMPMedia name handling tests.
wmp: Implement IWMPMedia::put/get_name.
wmp: Return E_POINTER when p is NULL in return_bstr.
wmp: Fake success in IWMPMedia::getItemInfo.
wmp: Add IWMPPlaylist stub.
Hans Leidekker (6):
winhttp: Also trace the buffer pointer in WinHttpSendRequest.
winhttp: Implement WINHTTP_QUERY_REQUEST_METHOD.
winhttp: Handle Passport redirects.
winhttp: Set last error for invalid and unimplemented header queries.
oledb32: Add support for DBTYPE_VARIANT -> DBTYPE_DATE conversion.
oledb32: Remove unnecessary casts.
Henri Verbeet (20):
wined3d: Acquire a context for the front buffer in swapchain_gl_present().
wined3d: Acquire front-buffer contexts when blitting to the drawable in texture2d_blt_fbo().
wined3d: Don't acquire a context in wined3d_texture_load_drawable().
wined3d: Pass a wined3d_context_gl structure to arbfp_free_ffpshader().
wined3d: Pass a wined3d_context structure to wined3d_vertex_pipe_ops.vp_enable().
wined3d: Setup/restore fullscreen window state inside wined3d.
wined3d: Filter messages per-window instead of per-device.
wined3d: Move the "desc" field from struct wined3d_swapchain to struct wined3d_swapchain_state.
wined3d: Pass a wined3d_context_gl structure to arbfp_free_blit_shader().
wined3d: Pass a wined3d_context_gl structure to atifs_free_ffpshader().
wined3d: Store a wined3d_context_gl structure in struct glsl_ffp_destroy_ctx.
wined3d: Pass a wined3d_context_gl structure to glsl_free_blitter_program().
wined3d: Pass a wined3d_context structure to fragment_pipeline.enable_extension().
wined3d: Rename wined3d_window_state_restore_from_fullscreen() to wined3d_swapchain_state_restore_from_fullscreen().
wined3d: Replace wined3d_swapchain_resize_target() with wined3d_swapchain_state_resize_target().
wined3d: Pass a wined3d_context_gl structure to wined3d_sampler_desc_from_sampler_states().
wined3d: Pass a wined3d_context_gl structure to swapchain_gl_set_swap_interval().
wined3d: Pass a wined3d_context_gl structure to texture_download_data_slow_path().
wined3d: Pass a wined3d_context_gl structure to wined3d_shader_resource_view_gl_bind().
wined3d: Use d3d_info to determine BGRA vertex support in wined3d_buffer_load().
Huw D. M. Davies (2):
gdi32: Use the correct type for the final parameter of FSOpenResourceFile().
shell32: On macOS don't link against CoreServices.
Jacek Caban (1):
winegcc: Always mark executables as nx compat.
Jeff Smith (4):
d3drm: Check for NULL pointer in d3drm_viewport2_GetDevice().
d3drm: Check for NULL pointer in d3drm_viewport2_GetDirect3DViewport().
d3drm: Return error if setting viewport field-of-view to zero or negative value.
d3drm: Correct parameter count of several interface defines.
Józef Kucia (2):
dxgi: Obey image count limits for Vulkan swapchains.
wined3d: Add support for GL_EXT_texture_shadow_lod.
Kristján Gerhardsson (1):
wined3d: Add GPU information for various Mac GPUs.
Martin Storsjo (4):
msvcrt: Provide the fmaf function on i386.
msvcrt: Provide the fmal function using the existing fma implementation.
msvcrt: Implement the fdim functions.
msvcrt: Implement the tgamma functions.
Nikolay Sivov (5):
kernel32/nls: Add LOCALE_SPERCENT locale data.
kernel32/nls: Add LOCALE_SPERMILLE data.
kernel32/nls: Add percent formatting values.
kernel32/nls: Add locale data for positive and negative infinity.
kernel32: Support FileBasicInfo case in SetFileInformationByHandle().
Qian Hong (1):
advapi32: Initialize the LsaLookupSids() LSA_TRANSLATED_NAME.Name string properly.
Serge Gautherie (1):
kernel32/tests: Test QueryFullProcessImageNameW() flags.
Zebediah Figura (12):
d3dcompiler: Parse type name strings.
mscorwks: New DLL.
include: Add strongname.h.
mscoree: Fix the signature for StrongNameSignatureVerification[Ex]().
mscoree: Fake success from StrongNameSignatureVerificationEx().
services: Fix the arguments to is_root_pnp_service().
secur32: Use RtlComputeCrc32().
dbghelp: Use RtlComputeCrc32().
mspatcha: Use RtlComputeCrc32().
mspatcha: Use the standard max() and min() macros.
mfplat/tests: Link to uuid.
mfplat: Implement CreatePropertyStore().
Zhiyi Zhang (4):
dxgi/tests: Test output after using Alt+Enter to switch fullscreen.
dxgi: Fix possible null output from d3d11_swapchain_GetFullscreenState.
setupapi: Support full path enumerator in SetupDiGetClassDevs.
winex11.drv: Add DriverDateData registry property to display adapters.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.12.1 is now available.
What's new in this release (see below for details):
- Fixes for broken 64-bit prefix initialization.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.12.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.12.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 4.12.1 (total 5):
46473 Settlers IV History Edition
47403 ALT+TAB results in a sticky ALT in the application when switching back
47464 64-bit WINEPREFIX creation/update fails with Wine 4.12 (wineboot crashes after building as PE file)
47467 WINEPREFIX creation/update: setupapi fails to register several dlls after building as PE file starting with Wine 4.12
47468 LINE 5.x launcher crashes on startup
----------------------------------------------------------------
Changes since 4.12:
Alexandre Julliard (5):
wineboot: Fix do_cpuid() calling convention.
kernel32: Set the path environment variables according to the WoW64 environment.
include: Make sure the JUMP_BUFFER structure is correctly aligned on x86-64
gdi32: Make GDI driver functions cdecl.
d3dcompiler: Make varargs functions WINAPIV.
Henri Verbeet (1):
wined3d: Handle context acquisition failure in wined3d_device_create_primary_opengl_context_cs().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.12 is now available.
What's new in this release (see below for details):
- Still more DLLs are built as PE files by default.
- Support for Plug & Play device drivers.
- Better support for the Visual Studio remote debugger.
- More support for enumerating display devices.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.12.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.12.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 4.12 (total 27):
18490 Multiple games fail to set pixel format on D3D device context created on desktop window (Empire: Total War, Napoleon: Total War, Utopia City)
21378 lego digital designer crashes on scrolling
27576 RT Se7en Lite installer hangs
31260 Tomb Raider 4 Broken Lighting
31737 Need For Speed Hot Pursuit (2010): Gamepad is not configured
34978 Many applications need a EnumDisplayDevicesW implementation for multi-monitor environment support (DisplayFusion, Turbo Tax 2012, WPF 4.x .NET apps, CEFv3 apps, VS Code < 1.16.0)
35413 err:module:import_dll Library libgcc_s_sjlj-1.dll not found needed by mono-2.0
36061 winedbg crash dialog shows a leak in imm32
37709 All Qt5 based applications have broken menu/combos positioning in multiple monitor setup due to GetMonitorInfo() returning the same hard-coded device name for all monitors
38421 Windows Media Player 9 & 10: mp3 sound plays too fast
41608 Golden Krone Hotel fails to launch (InitializeProcThreadAttributeList is a stub)
42374 Hardwood Solitaire can not connect to his server
45656 Acronis Storage Filter Management Driver 'fltsrv.sys' crashes on unimplemented function 'ntoskrnl.exe.KeBugCheckEx' in 'CrashOnError' mode
47013 winebus.sys: hidraw_set_feature_report buffer too small for some devices in SteelSeries Engine
47014 Multiple kernel drivers need 'ntoskrnl.exe.ExInitializePagedLookasideList' implementation (Norton 360/Symantec Eraser Control Driver)
47017 Symantec Eraser Control Driver 'eeCtrl64.sys' (Norton 360) crashes on unimplemented function ntoskrnl.exe.IoGetStackLimits
47340 Adobe Acrobat Reader DC crashes on startup with corefonts installed
47352 Levelhead: Can't connect to game's network
47367 Some WPF 4.x apps from Windows 10 SDK (10.0.17763.x) spam console with fixme:d3d:wined3d_driver_info_init Unhandled OS version 6.3, reporting Win 8. (WinVer set to 'Windows 8.1')
47385 Overwatch crashes on unimplemented function mfreadwrite.dll.MFCreateSinkWriterFromURL
47392 Drakensang Online crashes when exiting fullscreen
47399 Mozart 11-13 crashes on startup
47410 Regression in 4.10, Dune 2000 installer crashes in winevdm
47418 Quickbooks 2018 installer crashes on Validating Install
47424 DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT *must* have return value
47431 Multiple applications and games show too high CPU usage and UI slowness/lag with wine-4.11-84-g074abfe097 (EnumDisplayMonitors implementation uses expensive registry accesses)
47443 compile error: undefined reference to `clock_gettime'
----------------------------------------------------------------
Changes since 4.11:
Alexandre Julliard (127):
t2embed: Build with msvcrt.
tapi32: Build with msvcrt.
taskschd: Build with msvcrt.
tdh: Build with msvcrt.
tdi.sys: Build with msvcrt.
toolhelp: Build with msvcrt.
traffic: Build with msvcrt.
twain: Build with msvcrt.
twain_32: Build with msvcrt.
typelib: Build with msvcrt.
uianimation: Build with msvcrt.
uianimationcore: Build with msvcrt.
uiribbon: Build with msvcrt.
updspapi: Build with msvcrt.
url: Build with msvcrt.
urlmon: Build with msvcrt.
ntdll: Try to use the name of the PE file also when loading .so builtin.
advapi32: Move more event log stubs to ntdll.
advapi32: Move SHA1 implementation to ntdll.
advapi32: Move MD4 implementation to ntdll.
advapi32: Move MD5 implementation to ntdll.
usbd.sys: Build with msvcrt.
user.exe: Build with msvcrt.
userenv: Build with msvcrt.
usp10: Build with msvcrt.
uxtheme: Build with msvcrt.
vbscript: Build with msvcrt.
vcomp: Build with msvcrt.
vdhcp.vxd: Build with msvcrt.
vdmdbg: Build with msvcrt.
ver: Build with msvcrt.
version: Build with msvcrt.
virtdisk: Build with msvcrt.
vmm.vxd: Build with msvcrt.
vnbt.vxd: Build with msvcrt.
vnetbios.vxd: Build with msvcrt.
vssapi: Build with msvcrt.
vtdapi.vxd: Build with msvcrt.
vulkan-1: Build with msvcrt.
vwin32.vxd: Build with msvcrt.
advapi32: Move registry functions to kernelbase.
advapi32: Move sid functions to kernelbase.
advapi32: Move token functions to kernelbase.
advapi32: Move security descriptor functions to kernelbase.
advapi32: Move access control functions to kernelbase.
advapi32: Move performance stubs to kernelbase.
winebuild: Set the default entry point also for Windows builds.
w32skrnl: Build with msvcrt.
w32sys: Build with msvcrt.
wbemdisp: Build with msvcrt.
wdscore: Build with msvcrt.
webservices: Build with msvcrt.
wer: Build with msvcrt.
wevtapi: Build with msvcrt.
wiaservc: Build with msvcrt.
wimgapi: Build with msvcrt.
win32s16: Build with msvcrt.
win87em: Build with msvcrt.
windebug: Build with msvcrt.
windowscodecsext: Build with msvcrt.
winehid.sys: Build with msvcrt.
winemapi: Build with msvcrt.
include: Implement some inline functions in C instead of assembly.
wineps16.drv: Build with msvcrt.
wing: Build with msvcrt.
wing32: Build with msvcrt.
winnls: Build with msvcrt.
winnls32: Build with msvcrt.
winscard: Build with msvcrt.
winsock: Build with msvcrt.
winsta: Build with msvcrt.
wintab: Build with msvcrt.
wintab32: Build with msvcrt.
wintrust: Build with msvcrt.
wlanapi: Build with msvcrt.
wmasf: Build with msvcrt.
wmiutils: Build with msvcrt.
wmp: Build with msvcrt.
wmphoto: Build with msvcrt.
wmvcore: Build with msvcrt.
wow32: Build with msvcrt.
wpc: Build with msvcrt.
wsdapi: Build with msvcrt.
wshom.ocx: Build with msvcrt.
wsnmp32: Build with msvcrt.
wsock32: Build with msvcrt.
wtsapi32: Build with msvcrt.
wuapi: Build with msvcrt.
wuaueng: Build with msvcrt.
xinput1: Build with msvcrt.
xmllite: Build with msvcrt.
xolehlp: Build with msvcrt.
xpsprint: Build with msvcrt.
xpssvcs: Build with msvcrt.
kernelbase: Get rid of some string helper functions.
kernel32: Move lstr* string functions to kernelbase.
kernel32: Move event functions to kernelbase.
kernel32: Move mutex functions to kernelbase.
kernel32: Move semaphore functions to kernelbase.
kernel32: Move waitable timer functions to kernelbase.
kernel32: Move timer queue functions to kernelbase.
kernel32: Move critical section functions to kernelbase.
kernel32: Move file mapping functions to kernelbase.
kernel32: Move condition variable functions to kernelbase.
kernel32: Move I/O completion functions to kernelbase.
kernel32: Move named pipe functions to kernelbase.
kernel32: Move wait functions to kernelbase.
include: Avoid depending on wine/port.h.
d3d8: Build with msvcrt.
d3d9: Build with msvcrt.
d3d11: Build with msvcrt.
ddraw: Build with msvcrt.
ntdll: Initialize filesystem redirects before kernel32 is loaded.
d3dcompiler: Copy the C preprocessor source into d3dcompiler_43.
d3dcompiler: Build with msvcrt.
wpp: Get rid of the no longer needed callbacks.
kernelbase: Forward functions directly to ntdll where possible.
kernel32: Move resource functions to kernelbase.
kernel32: Move activation context functions to kernelbase.
configure: Error on unused command line argument to catch unknown options with clang.
wineboot: Avoid using getopt_long().
kernel32: Set environment variables for the various Wine paths.
wineps.drv: Build with msvcrt.
wineboot: Build with msvcrt.
setupapi: Build with msvcrt.
appwiz.cpl: Build with msvcrt.
mscoree: Build with msvcrt.
Alistair Leslie-Hughes (5):
wininet: Support QueryOption INTERNET_OPTION_ERROR_MASK for http.
wininet: Always set last error in HttpQueryInfoW.
wininet: Always set last error in InternetReadFile.
include: Complete IMimeHeaderTable/IMimeEnumHeaderRows interfaces.
winebus.sys: Increase buffer size to match max length available.
André Hentschel (1):
kernelbase: Return on failed allocation (Coverity).
Dmitry Timoshkov (3):
ntdll: Add '-norelay' flag for _vsnprintf().
msvcrt: Add '-norelay' flag for _vsnprintf().
msvcrt: Fix handling of dst == src in wcscpy_s.
Ethan Lee (2):
xaudio2: Add TRACE functions to CreateAudioReverb/CreateAudioVolumeMeter.
xaudio2: Export functions by ordinal.
Fabian Maurer (2):
kernel32/tests: Add sxs tests.
ntdll: Check the activation context before looking for the module basename.
Hans Leidekker (10):
wbemprox: Add support for parsing ASSOCIATORS OF queries.
include: Use WS_ prefix with struct timeval.
ntdll: Support NtQuerySystemInformation(SystemFirmwareTableInformation) on macOS.
ntdll: Fix sysfs path for the product name.
ntdll: Use a common structure for the SMBIOS table entry header.
ntdll: Use the machine ID for the system UUID on Linux.
wbemprox: Retrieve the system UUID from the SMBIOS table.
wbemprox: Build with msvcrt.
bcrypt: Ignore the size parameter in BCRYPT_CHAINING_MODE setters.
wbemprox: Add support for CIM_REFERENCE.
Henri Verbeet (50):
wined3d: Pass a wined3d_context_gl structure to find_arb_ps_compile_args().
wined3d: Pass a wined3d_context_gl structure to find_arb_vs_compile_args().
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_bind().
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_create_buffer_object().
wined3d: Move texture2d_load_drawable() to texture.c.
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_destroy_buffer_object().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_load_program_resources().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_init_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_normalmatrix_uniform().
wined3d: Move texture2d_load_renderbuffer() to texture.c.
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_texmatrix_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_material_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_lightambient_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_light_uniform().
wined3d: Handle Windows 8.1 in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_pointsize_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_load_fog_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_clip_plane_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_generate_glsl_declarations().
wined3d: Explicitly handle Windows 2 & 3 in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_pshader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_vshader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_hull_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_domain_shader().
wined3d: Use Windows 7 as fallback driver version in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_geometry_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_compute_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_pshader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_vshader().
ddraw: Use wined3d_bit_scan() in viewport_alloc_active_light_index().
wined3d: Pass a wined3d_context_gl structure to find_glsl_hull_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_domain_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_geometry_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_ffp_fragment_shader().
wined3d: Unhook swapchains in swapchain_cleanup().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_find_ffp_fragment_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_compile_compute_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_compute_shader().
wined3d: Pass a wined3d_context_gl structure to set_glsl_compute_shader_program().
wined3d: Also try to create a depth/stencil buffer for WINED3D_NO3D devices in swapchain_init().
wined3d: Pass a wined3d_context_gl structure to set_glsl_shader_program().
wined3d: Pass a wined3d_context_gl structure to glsl_blitter_get_program().
wined3d: Pass a wined3d_context_gl structure to nvts_activate_dimensions().
wined3d: Pass a wined3d_context_gl structure to wined3d_query_create_buffer_object().
wined3d: Try harder to reuse the current context.
wined3d: Pass a wined3d_context_gl structure to wined3d_query_destroy_buffer_object().
wined3d: Pass a wined3d_context_gl structure to wined3d_query_buffer_queue_result().
wined3d: Pass a wined3d_context_gl structure to wined3d_so_statistics_query_end().
wined3d: Pass a wined3d_context_gl structure to wined3d_pipeline_statistics_query_end().
wined3d: Merge wined3d_texture_download_data() and wined3d_texture_gl_download_data().
Jacek Caban (27):
ntoskrnl.exe: Implement IoGetStackLimits.
ntoskrnl.exe: Implement ExInitializePagedLookasideList.
ntoskrnl.exe: Implement ExDeletePagedLookasideList.
tdi.sys: Fix EXTRADLLFLAGS.
ntoskrnl.exe: Implement KeBugCheck and KeBugCheckEx.
mshtml/tests: Fix comment tests on recent IE versions.
mshtml/tests: Introduce set_body_html helper.
mshtml/tests: Merge text range tests.
mshtml/tests: Rename elements.js to dom.js.
mshtml/tests: Improve tests exception handling.
mshtml: Include URL pathname and query in test traces.
winedbg: Move continue_on_first_exception handling out of dbg_attach_debuggee.
winedbg: Set auto attach event after processing the first exception.
msxml3: Fix string length handling in I[VB]SAXContentHandler::characters.
ntdll: Move null terminating result to pf_vsnprintf callers.
ntdll: Implement _snprintf_s and _vsnprintf_s.
kernel32/tests: Add more debugger tests.
server: Fix debug event order in generate_startup_debug_events.
kernel32: Terminate process in unhandled exception handler.
ntdll: Implement DbgUiIssueRemoteBreakin.
kernel32: Reimplement DebugBreakProcess on top of DbgUiIssueRemoteBreakin.
winternl.h: Remove inline DbgBreakPoint version.
kernel32: Use DebugBreakProcess in DebugActiveProcess.
server: Remove no longer needed break_process.
server: Rename cpu_type_t to client_cpu_t.
winmm: Use condition variable to sleep in timer thread.
winmm: Build with msvcrt.
Jactry Zeng (4):
d3d8/tests: Add tests for 32-bit depth format support.
d3d9/tests: Add tests for 32-bit depth format support.
ddraw/tests: Add tests for 32-bit depth format support.
wined3d: Drop support for WINED3DFMT_D32_UNORM.
Jeff Smith (2):
d3drm: CreateViewport checks for non-NULL viewport pointer first.
d3drm: Fix reference leak in d3drm_viewport2_Clear().
Justin Martin (1):
d3d9: Implement d3d9_device_CreateRenderTargetEx().
Józef Kucia (2):
d3d12/tests: Add test for creating swapchain on desktop window.
dxgi: Forbid creating D3D12 swapchains on desktop window.
Ken Thomases (1):
gdi32: Also accept "\\.\DISPLAY<n>" devices names with <n> other than 1 as display devices.
Marcus Meissner (1):
mshtml: Fixed buffer size to WideCharToMultiByte.
Michael Müller (1):
wininet: Allow to set INTERNET_OPTION_HTTP_DECODING on sessions and connections.
Nikolay Sivov (20):
mfplat: Improve PROPVARIANT arguments traces.
mfplat: Add MF_LOW_LATENCY attribute GUID.
mfreadwrite: Add MFCreateSinkWriterFromURL() stub.
mshtml: Add IDocumentRange stub.
user32/tests: Use SendInput() directly.
user32/tests: Add another test for KEYEVENTF_UNICODE mode.
server: Use KEYEVENTF_UNICODE mode only when virtual key code was not specified.
mfplat: Trace MF_PD_DURATION guid.
mshtml: Add IHTMLDOMRange stub.
strmbase: Remove unused function.
dwrite: Remove unused functions.
shlwapi: Remove unused function.
d2d1: Remove unused function.
devenum: Don't free uninitialized pointer value.
kernel32: Remove unused functions.
quartz: Remove unused function.
d3d10core/tests: Use d3d10 enumeration types.
winegstreamer: Add stub Video Processor MFT.
mf: Return clock rate as session rate.
mf: Fix method name.
Paul Gofman (6):
ddraw: Factor out fixup_texture_alpha_op() function.
ddraw: Set _TSS_ALPHA_OP to _SELECT_ARG1 in case of NULL texture in fixup_texture_alpha_op().
d3d9/tests: Test sample and texture dimensions mismatch.
wined3d: Do not modify shader register maps in backends.
wined3d: Fixup 3D sampler when sampling 2D texture for PS models 2 and 3.
wined3d: Fixup 2D sampler when sampling 3D texture for PS models 2 and 3.
Zebediah Figura (61):
strmbase: Add default implementations of filter state change methods.
quartz/filesource: Use strmbase filter state change methods.
quartz/tests: Add more tests for standard media samples.
quartz/memallocator: Clear some sample properties when freeing the sample.
quartz/memallocator: Set the sample end time only if the start time is valid.
quartz/memallocator: Forbid setting the start media time without setting the end time.
quartz/memallocator: Avoid using a magic value for the start media time.
quartz/memallocator: Return S_OK when clearing the media type.
quartz/memallocator: Set the AM_SAMPLE_TYPECHANGED flag.
wined3d: Store the cursor texture in a local variable in swapchain_gl_present().
wine.inf: Add the GUID_DEVCLASS_SYSTEM class key.
ntoskrnl.exe: Add a stub PnP manager driver.
ntoskrnl.exe: Load a driver's root PnP devices when the driver is started.
setupapi: Delay-load user32.
services: Load root PnP drivers on startup.
qcap/vfwcapture: Store the source pin inline in the VfwCapture structure.
qcap/vfwcapture: Don't expose IAMStreamConfig from the filter.
quartz/parser: Don't store the sink pin in the "ppPins" array.
quartz/parser: Store the source pins as an array of Parser_OutputPin pointers.
quartz/vmr9: Return S_OK when calling IVMRFilterConfig9::SetNumberOfStreams(1).
ntoskrnl.exe: Handle some no-op PnP requests.
ntoskrnl.exe: Handle IRP_MN_QUERY_ID for root PnP devices.
ntoskrnl.exe: Stub PoStartNextPowerIrp().
ntoskrnl.exe: Implement PoCallDriver().
qcap/tests: Add some tests for IBaseFilter::EnumPins on the AVI muxer.
qcap/tests: Add some tests for IBaseFilter::FindPin() on the AVI mux filter.
qcap/tests: Add some tests for querying AVI mux pin information.
qcap/tests: Add some tests for AVI mux pin interfaces.
qcap/tests: Add some more tests for AVI mux media types.
setupapi: Also start newly installed root PnP services in SetupDiInstallDevice().
hidclass.sys: Detach the HID device before deleting it.
quartz/tests: Add some tests for VMR7 media types.
quartz/tests: Add some tests for VMR9 media types.
quartz/tests: Add some tests for IEnumMediaTypes().
qcap/tests: Add some tests for IEnumMediaTypes().
qedit/tests: Add some tests for media types.
qedit/tests: Add some tests for IEnumMediaTypes().
strmbase: Simplify IEnumMediaTypesImpl_Next().
strmbase: Fix implementation of IEnumMediaTypes::Skip().
msi: Close all handles opened by a custom action thread.
ntdll: Correctly fill DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT.
strmbase: Remove unused "ThreadSignal" event.
strmbase: Rename "evComplete" to "state_event" for clarity.
strmbase: Wait for the presentation time in BaseRendererImpl_Receive().
strmbase: Do not set RenderEvent in IBaseFilter::Run().
strmbase: Split RenderEvent into separate events for advising and flushing.
quartz/dsoundrender: Use flush_event instead of reimplementing it.
quartz/dsoundrender: Use BaseRendererImpl_Pause().
strmbase: Remove several unused callbacks.
strmbase: Rename pfnOnStartStreaming to renderer_start_stream.
strmbase: Rename pfnOnStopStreaming to renderer_stop_stream.
ntoskrnl.exe: Use the registered interface class in IoSetDeviceInterfaceState().
user32/tests: Test opening raw input devices.
services: Report a PID of 0 for drivers.
services: Do not overwrite the service type in SetServiceStatus().
winebus.sys: Create a stub mouse device.
winehid.inf: Add WINEMOUSE to the list of winehid device IDs.
include: Add ntddmou.h.
hidclass.sys: Create a mouse device interface for HID mouse devices.
user32: Introduce and use an array_reserve() helper.
user32: Factor out add_device().
Zhiyi Zhang (10):
user32: Move EnumDisplayDevicesA/W to sysparams.c.
user32: Avoid a possible race.
dxgi/tests: Add more IDXGISwapChain_Present() tests.
dxgi: Return DXGI_STATUS_OCCLUDED for minimised windows in d3d11_swapchain_present().
dxgi/tests: Add IDXGIOutput ownership tests.
winex11.drv: Use generic EnumDisplayMonitors.
winex11.drv: Use generic GetMonitorInfo.
winex11.drv: Specify enumerator when calling SetupDiGetClassDevsW.
user32: Specify enumerator when calling SetupDiGetClassDevsW.
user32: Cache monitor information.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.11 is now available.
What's new in this release (see below for details):
- Updated version of the Mono engine, including Windows.Forms.
- More DLLs are built as PE files by default.
- Faster implementation of Slim Reader/Writer locks on Linux.
- Initial support for enumerating display devices.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.11.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.11.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 4.11 (total 17):
8848 SWAT4 Areas that should be in shadow and people are rendered solid black
22253 Horizontal scrolling with the mouse wheel does not work in list views
24211 ispq crashes on 'create account' with devenum enabled and without native qcap
28153 AutoIt v3.x @DesktopRefresh macro returns 0 (device caps VREFRESH hard-coded to 0)
30822 Max Payne 3 not running
34687 Port Royale 2 crashes on startup (SymGetLineFromAddr() returns unix-style path for source file)
34741 Catzilla 1.0 doesn't work: EAccess violation
34742 Catzilla 1.0 doesn't allow to use any display resolutions other than 576p
35477 'epsilon' 64K demo/intro by mercury crashes on start up
39071 7-Zip 15.06 looks broken after being minimized
39337 Legacy of Kain: Soul Reaver crashes at intro video when being run in desktop resolution > 640x480
45218 Fallout 4 Script Extender fails to allocate trampoline buffers
47164 .NET Framework 4.0 installer fails when Wine is compiled with GCC 9.1.1
47167 Chromium Embedded Framework (CEF) applications display no content when wine is compiled with gcc-9
47327 Japanese texts are overlapped in notepad when using bitmap font.
47371 Nero CoverDesigner doesn't install - missing support for BCRYPT_RSA_SIGN_ALGORITHM
47378 ole32: native build (without-mingw) is broken
----------------------------------------------------------------
Changes since 4.10:
Akihiro Sagawa (3):
usp10: Cache ScriptString_pSize value, again.
usp10/tests: Add advance width tests with CJK bitmap font.
usp10: Fix advance width when glyph is missing.
Alexandre Julliard (168):
mf: Build with msvcrt.
mfplat: Build with msvcrt.
mfplay: Build with msvcrt.
mfreadwrite: Build with msvcrt.
mgmtapi: Build with msvcrt.
midimap: Build with msvcrt.
mlang: Build with msvcrt.
mmcndmgr: Build with msvcrt.
mmdevapi: Build with msvcrt.
mmdevldr.vxd: Build with msvcrt.
mmsystem: Build with msvcrt.
monodebg.vxd: Build with msvcrt.
mouse.drv: Build with msvcrt.
mpr: Build with msvcrt.
mprapi: Build with msvcrt.
ntdll: Don't use native subsystem heuristic against builtin modules.
fltmgr.sys: Fix duplicate dll flags.
ksecdd.sys: Fix duplicate dll flags.
msacm: Build with msvcrt.
msacm32.drv: Build with msvcrt.
msacm32: Build with msvcrt.
msadp32.acm: Build with msvcrt.
msasn1: Build with msvcrt.
mscat32: Build with msvcrt.
msctf: Build with msvcrt.
msctfp: Build with msvcrt.
msdaps: Build with msvcrt.
msdelta: Build with msvcrt.
msdmo: Build with msvcrt.
msdrm: Build with msvcrt.
msftedit: Build with msvcrt.
msg711.acm: Build with msvcrt.
ntdll: Make the __wine_spec_unimplemented_stub() copy cdecl.
imagehlp/tests: Remove a workaround for Win95.
mshtml: Build with msvcrt.
msi: Build with msvcrt.
msident: Build with msvcrt.
msimg32: Build with msvcrt.
msimtf: Build with msvcrt.
msisip: Build with msvcrt.
msisys.ocx: Build with msvcrt.
msls31: Build with msvcrt.
msnet32: Build with msvcrt.
mspatcha: Build with msvcrt.
msports: Build with msvcrt.
msrle32: Build with msvcrt.
msscript.ocx: Build with msvcrt.
mssign32: Build with msvcrt.
mssip32: Build with msvcrt.
mstask: Build with msvcrt.
jscript: Consistently use wcscmp() instead of lstrcmpW().
server: Fix the returned error code for an invalid NT header offset.
msvcp90: Avoid depending on config.h for the __builtin_clz check.
msvcm: Build with msvcrt.
msvfw32: Build with msvcrt.
msvidc32: Build with msvcrt.
msvideo: Build with msvcrt.
mswsock: Build with msvcrt.
msxml: Build with msvcrt.
msxml2: Build with msvcrt.
msxml4: Build with msvcrt.
msxml6: Build with msvcrt.
mtxdm: Build with msvcrt.
ncrypt: Build with msvcrt.
nddeapi: Build with msvcrt.
ndis.sys: Build with msvcrt.
netcfgx: Build with msvcrt.
netprofm: Build with msvcrt.
newdev: Build with msvcrt.
winebuild: Add a -munix option.
winebuild: Don't import standard C functions in Unix mode.
ntoskrnl: Make the standard C functions available for importing.
ninput: Build with msvcrt.
normaliz: Build with msvcrt.
npmshtml: Build with msvcrt.
npptools: Build with msvcrt.
ntdsapi: Build with msvcrt.
ntoskrnl: Build with msvcrt.
ntprint: Build with msvcrt.
objsel: Build with msvcrt.
odbccp32: Build with msvcrt.
ole2: Build with msvcrt.
ole2disp: Build with msvcrt.
ole2nls: Build with msvcrt.
ole32: Build with msvcrt.
oleacc: Build with msvcrt.
oleaut32: Build with msvcrt.
olecli: Build with msvcrt.
olecli32: Build with msvcrt.
oledb32: Build with msvcrt.
oledlg: Build with msvcrt.
olepro32: Build with msvcrt.
olesvr: Build with msvcrt.
olesvr32: Build with msvcrt.
olethk32: Build with msvcrt.
packager: Build with msvcrt.
pdh: Build with msvcrt.
photometadatahandler: Build with msvcrt.
pidgen: Build with msvcrt.
powrprof: Build with msvcrt.
printui: Build with msvcrt.
prntvpt: Build with msvcrt.
propsys: Build with msvcrt.
pstorec: Build with msvcrt.
makefiles: Support mixing Unix and msvcrt headers in a single module.
winecrt0: Build with msvcrt.
winecrt0: Provide our own setjmp/longjmp functions for exception handling.
ntdll: Make wine_server_call() cdecl.
ntdll: Make the standard C functions available for importing.
kernelbase: Build with msvcrt.
qmgr: Build with msvcrt.
qmgrprxy: Build with msvcrt.
query: Build with msvcrt.
qwave: Build with msvcrt.
rasapi32: Build with msvcrt.
rasdlg: Build with msvcrt.
regapi: Build with msvcrt.
resutils: Build with msvcrt.
riched20: Build with msvcrt.
riched32: Build with msvcrt.
rpcrt4: Build with msvcrt.
rsaenh: Build with msvcrt.
rstrtmgr: Build with msvcrt.
rtutils: Build with msvcrt.
ntdll: Use .so builtin if found instead of falling back to the installed PE file.
kernelbase: Revert some incorrect differences with shlwapi.
samlib: Build with msvcrt.
sapi: Build with msvcrt.
sas: Build with msvcrt.
scarddlg: Build with msvcrt.
sccbase: Build with msvcrt.
schannel: Build with msvcrt.
schedsvc: Build with msvcrt.
scrobj: Build with msvcrt.
scrrun: Build with msvcrt.
scsiport: Build with msvcrt.
sensapi: Build with msvcrt.
serialui: Build with msvcrt.
setupx: Build with msvcrt.
sfc: Build with msvcrt.
sfc_os: Build with msvcrt.
shcore: Build with msvcrt.
shdocvw: Build with msvcrt.
shell: Build with msvcrt.
shlwapi: Import string functions from kernelbase.
shlwapi: Import path functions from kernelbase.
shlwapi: Import URL functions from kernelbase.
shlwapi: Import registry functions from kernelbase.
shlwapi: Import QISearch() from kernelbase.
shlwapi: Build with msvcrt.
slbcsp: Build with msvcrt.
slc: Build with msvcrt.
snmpapi: Build with msvcrt.
sound.drv: Build with msvcrt.
spoolss: Build with msvcrt.
srclient: Build with msvcrt.
sspicli: Build with msvcrt.
sti: Build with msvcrt.
storage: Build with msvcrt.
stress: Build with msvcrt.
strmdll: Build with msvcrt.
svrapi: Build with msvcrt.
sxs: Build with msvcrt.
system.drv: Build with msvcrt.
api-ms-win-core-kernel32-legacy-l1-1-1: Use proper forwards.
winebuild: Add -import entry point flag to generate hotpatchable import thunks.
shlwapi: Add -import flag on functions imported from kernelbase.
version: Move implementation into kernelbase.
Alistair Leslie-Hughes (7):
dpnet: Remove dead code (Coverity).
dinput: Ensure buffer doesn't overflow (Coverity).
wininet: Remove unsued flag HTTP_ADDHDR_FLAG_COALESCE.
advapi32: Don't read a value that might be uninitialized (Coverity).
mshtml: Remove redundant assignments.
dbghelp: Return a dos path from SymGetLineFromAddr.
mshtml: Implement IHTMLDocument2 put/get_bgColor.
Andrew Eikum (5):
winebus.sys: Close SDL handles when a device is removed.
kernel32: Link against RT_LIBS.
dxgi/tests: Add tests for setting the fullscreen state of swapchains with destroyed windows.
dxgi: Return DXGI_ERROR_NOT_CURRENTLY_AVAILABLE if setting the fullscreen state failed.
wined3d: Validate that we got a valid window in wined3d_device_setup_fullscreen_window().
Aric Stewart (1):
winemac.drv: Send state change notifications from ImeSelect.
Dmitry Timoshkov (5):
mshtml: Fix a typo.
mshtml: Add better stub for HTMLDocument7::get_onmsthumbnailclick.
mshtml: Add recently added GUIDs to debugstr_mshtml_guid().
mshtml: Replace a useless trace with a slightly better one.
mshtml: Add support for DIID_HTMLDocumentEvents2 connection point sink.
Ethan Lee (1):
xaudio2: Fix some TRACE calls erroneously marked as stubs.
Gabriel Ivăncescu (7):
comctl32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
user32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
comctl32/edit: Get rid of useless casts.
user32/edit: Get rid of useless casts.
comctl32/listview: Get rid of useless casts.
comctl32/treeview: Get rid of useless casts.
ntdll: Add support for EXT4 per directory case folding.
Hans Leidekker (3):
bcrypt: Add stub implementations of BCryptEnumContextFunctions and BCryptFreeBuffer.
bcrypt: Add support for BCRYPT_RSA_SIGN_ALGORITHM.
msi/tests: Accept case variations for path properties.
Henri Verbeet (47):
wined3d: Pass a wined3d_context_gl structure to context_enable_clip_distances().
wined3d: Pass a wined3d_context_gl structure to context_end_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to context_map_bo_address().
wined3d: Pass a wined3d_context_gl structure to context_unload_tex_coords().
wined3d: Upload texture data through the texture ops in wined3d_cs_exec_update_sub_resource().
wined3d: Pass a wined3d_context_gl structure to context_unmap_bo_address().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_prepare_texture().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_apply_sampler_desc().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_bind().
wined3d: Upload texture data through the texture ops in surface_convert_format().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_set_compatible_renderbuffer().
wined3d: Pass a wined3d_context_gl structure to wined3d_sampler_bind().
wined3d: Pass a wined3d_context_gl structure to context_attach_gl_texture_fbo().
wined3d: Get rid of the unused "gl_info" argument to compute_texture_matrix().
wined3d: Upload texture data through the texture ops in wined3d_texture_upload_from_texture().
wined3d: Pass a wined3d_context_gl structure to context_attach_depth_stencil_fbo().
wined3d: Pass a wined3d_context_gl structure to context_attach_surface_fbo().
wined3d: Pass a wined3d_context_gl structure to context_set_fbo_key_for_render_target().
wined3d: Pass a wined3d_context_gl structure to context_generate_fbo_key().
wined3d: Download texture data through the texture ops in wined3d_texture_download_from_texture().
wined3d: Pass a wined3d_context_gl structure to context_create_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_apply_draw_buffers().
wined3d: Pass a wined3d_context_gl structure to context_set_render_offscreen().
wined3d: Pass a wined3d_context_gl structure to context_apply_blit_projection().
wined3d: Use texture2d_load_sysmem() in texture1d_load_location().
wined3d: Pass a wined3d_context_gl structure to context_bind_unordered_access_views().
wined3d: Pass a wined3d_context_gl structure to context_pause_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to context_setup_target().
wined3d: Pass a wined3d_context_gl structure to draw_primitive_arrays().
wined3d: Use wined3d_texture_gl_load_sysmem() in texture3d_load_location().
wined3d: Pass a wined3d_context_gl structure to draw_indirect().
wined3d: Pass a wined3d_context_gl structure to context_unload_vertex_data().
wined3d: Pass a wined3d_context_gl structure to context_load_vertex_data().
wined3d: Pass a wined3d_context_gl structure to context_unload_numbered_array().
wined3d: Use texture2d_load_texture() in texture1d_load_location().
wined3d: Do not acquire/release the focus window in wined3d_swapchain_set_fullscreen().
wined3d: Pass a wined3d_context_gl structure to context_unload_numbered_arrays().
wined3d: Pass a wined3d_context_gl structure to context_draw_shaded_quad().
wined3d: Pass a wined3d_context_gl structure to context_draw_textured_quad().
wined3d: Pass a wined3d_context_gl structure to destroy_dummy_textures().
wined3d: Use wined3d_texture_gl_load_texture() in texture3d_load_location().
d3drm: Introduce a d3drm_matrix structure.
wined3d: Pass a wined3d_context_gl structure to shader_arb_ps_local_constants().
wined3d: Pass a wined3d_context_gl structure to shader_arb_vs_local_constants().
wined3d: Pass a wined3d_context_gl structure to shader_arb_load_constants_internal().
wined3d: Pass a wined3d_context_gl structure to find_arb_pshader().
wined3d: Merge the wined3d_texture_gl texture ops implementations.
Huw D. M. Davies (2):
kernel32/tests: Add a test for GetTickCount().
user32: Don't access a potentially uninitialized padded_border.
Jacek Caban (1):
services: Support delayed autostart services.
Jarkko Korpi (1):
wininet: Silence no support on this platform message.
Jeff Smith (6):
d3drm: Implement the BEFORE and AFTER frame transform combine types.
d3drm: Validate that the transformation is affine in d3drm_frame3_AddTransform().
d3drm: Implement d3drm_frame3_AddTranslation().
d3drm: Implement d3drm_frame3_AddScale().
d3drm: Implement d3drm_frame3_AddRotation().
d3drm: Implement d3drm_frame3_Transform().
Martin Liska (1):
include: Avoid compound literals for WCHAR strings.
Michael Müller (1):
ddraw: Properly set DDCAPS.ddsOldCaps in ddraw7_GetCaps().
Michael Stefaniuc (1):
winebuild: Use the now available ARRAY_SIZE() macro.
Nikolay Sivov (6):
mfplat: Add MFRegisterLocalByteStreamHandler().
mfplat: Give priority to local scheme handlers.
mfplat: Give priority to local bytestream handlers.
mf: Add support for IMFSampleGrabberSinkCallback2.
mf: Forward grabber clock state change calls to user callback.
mf/tests: Add sample processing tests for Video Processor.
Paul Gofman (11):
ddraw: Factor out viewport_alloc_active_light_index() function.
ddraw: Do not limit inactive light count in viewport.
ddraw: Always activate the light when requested replacing some previous light.
ddraw/tests: Test adding a number of lights to viewport in ddraw4.
ddraw: Increase maximum active light count.
wined3d: Use 3 component norm for 'nrm' opcode in GLSL backend.
wined3d: Do not zero 'w' with zero norm for 'nrm' opcode in GLSL backend.
d3d9/tests: Add test for 'nrm' opcode.
ddraw: Store _TEXTUREMAPBLEND state instead of guessing it from wined3d states.
ddraw: Turn off legacy texture blending in d3d_device3_SetTextureStageState().
ddraw: Do not modify any states for _TEXTUREMAPBLEND if application sets the same value.
Piotr Caban (1):
libwine: Fix NORM_IGNORESYMBOLS flag handling in compare_weights.
Richard Pospesel (1):
widl: Use FC_CHAR rather than FC_BYTE for boolean typedef to match midl.exe output.
Roberto Pungartnik (2):
po: Update Brazilian Portuguese translation.
po: Update Brazilian Portuguese translation.
Rémi Bernon (10):
ntdll/tests: Move NtAllocateVirtualMemory tests that were in kernel32.
ntdll/tests: Add NtAllocateVirtualMemory tests for zero_bits behavior.
ntdll: Clarify NtAllocateVirtualMemory zero_bits parameter semantics.
ntdll/tests: Cleanup NtAllocateVirtualMemory related tests.
kernel32/tests: Fix some NtMapViewOfSection tests expectations, and add results for w1064v1809.
ntdll/tests: Move NtMapViewOfSection tests from kernel32/tests.
ntdll/tests: Add more NtMapViewOfSection tests with zero_bits.
ntdll: Clarify NtMapViewOfSection zero_bits parameter semantics.
ntdll: Pass the alignment parameter down to map_view instead of mask.
hid: Fill the HIDD_ATTRIBUTES Size member, and add a test for expected size.
Tim Schumacher (1):
wininet: Hide GetCookie flag fixme for HTTPONLY cookies.
Vincent Povirk (1):
mscoree: Update Wine Mono to 4.9.0.
Zebediah Figura (66):
ucrtbase/tests: Add some tests for __stdio_common_vsscanf().
ucrtbase: Write the %hh prefix as a single char.
ntdll: Remove no longer used interlocked_dec_if_nonzero().
ntdll: Add a futex-based implementation of SRW locks.
ntdll: Try to avoid an unnecessary syscall in fast_release_srw_exclusive().
qedit/samplegrabber: Use BaseFilterImpl_QueryVendorInfo().
quartz/filtergraph: Use the type info cache for IBasicAudio.
quartz/filtergraph: Use the type info cache for IVideoWindow.
quartz/filtergraph: Use the type info cache for IBasicVideo.
strmbase: Don't increment the pin reference count in filter_get_pin().
strmbase: Add default implementations of IUnknown methods for IBasicVideo.
quartz: Use strmbase IUnknown methods for IBasicVideo.
strmbase: Get rid of the "lpVtbl" parameter to BaseControlVideo_Init().
strmbase: Add default implementations of IUnknown methods for IVideoWindow.
quartz: Use strmbase IUnknown methods for IVideoWindow.
strmbase: Factor out strmbase_pin_init().
strmbase: Return void from InputPin_Init().
strmbase: Factor out strmbase_sink_cleanup().
qcap/avico: Store the sink pin inline in the AviCompressor structure.
qcap/smartteefilter: Store the sink pin inline in the AviCompressor structure.
widl: Mark unions, user types, and ranges as IsSimpleRef.
widl: Remove the unused "indent" parameter from write_type_tfs().
qcap/avimux: Use strmbase_sink_init() and heap_alloc_zero() in create_input_pin().
strmbase: Return void from OutputPin_Init().
strmbase: Factor out strmbase_source_cleanup().
qcap/avico: Store the source pin inline in the AviCompressor structure.
qcap/smartteefilter: Store the capture source pin inline in the SmartTeeFilter structure.
qcap/smartteefilter: Store the preview source pin inline in the SmartTeeFilter structure.
dmusic/tests: Add some tests for the master clock.
dmusic: Store the master clock as an IReferenceClock pointer.
dmusic: Implement the master clock object.
qcap/avimux: Store the source pin and AVI data inline in the AviMux structure.
quartz/filesource: Share pin and filter reference counts.
quartz/parser: Share sink pin and filter reference counts.
quartz/parser: Share source pin and filter reference counts.
strmbase/transform: Share pin and filter reference counts.
ntdll: Implement RtlCreateUserStack() and RtlFreeUserStack().
kernel32: Use RtlCreateUserStack().
ntdll/tests: Add tests for RtlCreateUserStack().
strmbase/renderer: Share pin and filter reference counts.
qcap/vfwcapture: Share pin and filter reference counts.
winegstreamer: Share sink pin and filter reference counts.
winegstreamer: Share source pin and filter reference counts.
wineqtdecoder: Share sink pin and filter reference counts.
winex11: Remove redundant calls to update_key_state().
winex11: Update the state of all keys on KeymapNotify.
wineqtdecoder/qtsplitter: Share source pin and filter reference counts.
strmbase: Share pin and filter reference counts in base pin reference counting methods.
strmbase: Use base pin reference counting methods.
quartz: Use strmbase pin reference counting methods.
qcap: Use strmbase pin reference counting methods.
winegstreamer: Use strmbase pin reference counting methods.
wineqtdecoder: Use strmbase pin reference counting methods.
quartz/filesource: Store the source pin inline in the AsyncReader structure.
quartz/filesource: Cancel I/O from all threads in IAsyncReader::BeginFlush().
quartz/filesource: Add a test for cross-thread asynchronous read requests.
quartz/systemclock: Create the advise thread after the events it depends on.
strmbase/transform: Store the pins inline in the TransformFilter structure.
strmbase/renderer: Remove some duplicated locks.
strmbase/renderer: Store the sink pin inline in the BaseRenderer structure.
quartz/filtergraph: Add tests for asynchronous state change.
d3d11/tests: Test creating and rendering to a swapchain on the desktop window.
d3d10core/tests: Test creating and rendering to a swapchain on the desktop window.
d3d9/tests: Test creating and rendering to a swapchain on the desktop window.
d3d8/tests: Test creating and rendering to a swapchain on the desktop window.
wined3d: Use a backup device context for swapchains created on the desktop window.
Zhiyi Zhang (11):
winex11.drv: Add Xinerama display device handler.
winex11.drv: Initialize GPU registry data.
winex11.drv: Initialize adapter registry data.
winex11.drv: Initialize monitor registry data.
winex11.drv: Handle display device changes.
user32: Improve EnumDisplayDevicesW stub.
user32: Implement EnumDisplayDevicesW().
dxgi/tests: Add window association tests.
dxgi: Implement dxgi_factory_GetWindowAssociation().
dxgi: Retrieve swapchains' fullscreen state from wined3d.
dxgi: Implement Alt+Enter handling.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.10 is now available.
What's new in this release (see below for details):
- Many DLLs are built as PE files by default.
- More support for installing Plug and Play drivers.
- Clock synchronization in Media Foundation.
- Volume adjustment in audio drivers.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.10.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.10.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 4.10 (total 44):
11637 Midtown Madness menus flicker
30891 Typing of the Dead: page fault in wined3d_surface_blt
34021 IE8 crashes badly when navigating to www.microsoft.com
34538 Athena's Charm Table search 0.35b crashes with Wine-Mono
35999 Need for speed carbon DEMO: can't control the car with arrow keys
37279 builtin IE "document.location.pathname" returns without leading slash
38182 King of Dragon Pass: can't change audio volume level
38396 msiexec crash with winetricks running LEGOHarryPotter
40373 Double free in RPCRT4
40768 Midtown Madness does not open: "There was an undetectable problem in loading the specified device driver"
41606 Wrong processing of WM_DROPFILES message, received only by the top level windows.
41835 LG DVD firmware updater for GH22NS30 ver. 2.0 crashes on startup
43159 The old game Knight Of Knight has black textures
43846 Prototype 1 and 2 no audio
44979 Extra system title bar should not be added around Steam
45649 chromium 32-bit sandbox hangs forever inside server_queue_process_apc
46090 TopoEdit tool from Windows 10 SDK (10.0.17763.x) needs 'ext-ms-win-shell-comctl32-init-l1-1-0.dll' stub dll
46450 Volume Control doesn't work in Firefox videos (and browsers based on it) with PulseAudio driver
46558 win64 dotnet Space Engineers fractal noise generation broken
46564 Anno 1800 closed beta crashes at launch
46723 Unreal Engine based games stuck at launch and show a black screen instead of playing video (Kholat, What Remains of Edith Finch, Draugen, Obduction)
46809 Multiple applications fail to install or crash on startup: dll dependencies from private path (LoadLibraryEx LOAD_WITH_ALTERED_SEARCH_PATH)(PS4 Remote Play 2.x. DVDVideoSoft Free YouTube to MP3 Converter 4.x)
46824 Orion Prelude (Steam) crashes with wine-mono
46942 [REGRESSION] 4.0 introduce lag / performance drop in Lara Croft the guardian of light
46982 MPGUI crashes on unimplemented function msvcp100.dll.?_Init_locks_ctor@_Init_locks@std@@CAXPAV12@@Z
47069 Final Fantasy XIV Launcher renders black (needs better get_Busy implementation)
47137 Multiple applications from Line 6 (Yamaha Guitar Group) crash on startup (HX Edit v2.71, POD Farm 2.5)(Wine builtin 'gdiplus.dll' missing version resource)
47143 Trackbar thumb is too small in Metatrader 4 expert advisor
47201 Visual Studio 2015 crashes on unimplemented KERNEL32.dll.WerUnregisterRuntimeExceptionModule
47223 D-pad input from gamepad is no longer registered in some games (regression)
47235 Steep (Uplay) crashes on unimplemented function ncrypt.dll.BCryptSecretAgreement
47236 Adobe InDesign CC 2017: crashes at startup: unimplemented function msvcp140.dll._Strxfrm
47250 Battle.net crashes with msvcp error when compiled with --without-mingw
47255 Multiple programs crash inside wined3d (Xenonauts, Overwatch, Aura 2: The Sacred Rings, Art of Murder: Cards of Destiny , LINE)
47258 The Guild II fails to start with built-in quartz
47262 compile error: ‘for’ loop initial declarations are only allowed in C99 mode
47265 Multiple Blizzard games (Diablo III, Heroes of the Storm, Overwatch, Starcraft, StarCraft II, World of Warcraft) crash immediately on launch
47274 Windows XP's cmd.exe doesn't execute batch files anymore
47280 TopoEdit tool from Windows 10 SDK (10.0.17763.x) crashes on unimplemented functions 'ext-ms-win-ntuser-windowclass-l1-1-0.dll.{Get,Set}WindowLongPtrW'
47285 widl generates incorrect format strings when using -Oicf flag
47286 VSS Test Writer Tool 'vswriter.exe' from Windows 10 SDK (10.0.17763.x) crashes on unimplemented function api-ms-win-security-lsalookup-l1-1-0.dll.LookupAccountSidLocalW
47289 Obduction: fails to render menu and crashes at launch
47290 Obduction: fails to render menu: now freezes instead of crashing
47311 Heap debugging (WINEDEBUG=+heap) broken since wine-4.6-132-g948fc85186
----------------------------------------------------------------
Changes since 4.9:
Akihiro Sagawa (7):
advapi32/tests: Add more RegLoadMUIString tests.
advapi32: RegLoadMUIString doesn't accept a string without '@' prefix.
advapi32: Expand environment variables even if REG_SZ type is used.
advapi32: Fix the error code on parse failure.
advapi32: Fix the error code on load failure.
advapi32: Cache result of LoadString.
quartz: Ensure error text is terminated with NUL character.
Alexandre Julliard (160):
acledit: Build with msvcrt.
aclui: Build with msvcrt.
activeds: Build with msvcrt.
actxprxy: Build with msvcrt.
adsldp: Build with msvcrt.
adsldpc: Build with msvcrt.
advpack: Build with msvcrt.
amsi: Build with msvcrt.
apphelp: Build with msvcrt.
atl: Build with msvcrt.
atlthunk: Build with msvcrt.
makefiles: Build fonts in quiet mode.
makefiles: Default to ms_abi for 64-bit msvcrt builds.
atmlib: Build with msvcrt.
authz: Build with msvcrt.
avifil32: Build with msvcrt.
avifile: Build with msvcrt.
avrt: Build with msvcrt.
bluetoothapis: Build with msvcrt.
browseui: Build with msvcrt.
bthprops.cpl: Build with msvcrt.
cards: Build with msvcrt.
cdosys: Build with msvcrt.
clusapi: Build with msvcrt.
combase: Build with msvcrt.
comcat: Build with msvcrt.
include/msvcrt: Add snprintf() compatibility macro.
include/msvcrt: Define more math functions.
comctl32: Build with msvcrt.
comdlg32: Build with msvcrt.
commdlg: Build with msvcrt.
compobj: Build with msvcrt.
compstui: Build with msvcrt.
comsvcs: Build with msvcrt.
connect: Build with msvcrt.
credui: Build with msvcrt.
cryptdlg: Build with msvcrt.
cryptdll: Build with msvcrt.
cryptext: Build with msvcrt.
cryptnet: Build with msvcrt.
cryptui: Build with msvcrt.
ctl3d: Build with msvcrt.
ctl3d32: Build with msvcrt.
ctl3dv2: Build with msvcrt.
include/msvcrt: Add INFINITY and NAN definitions.
include/msvcrt: Use setjmpex() instead of setjmp() on 64-bit.
include: Make the Wine exception handlers cdecl.
winecrt0: Make the main() and wmain() entry points cdecl.
d2d1: Build with msvcrt.
d3d10: Build with msvcrt.
d3d10_1: Build with msvcrt.
d3d10core: Build with msvcrt.
d3dim: Build with msvcrt.
d3drm: Build with msvcrt.
d3dx10: Build with msvcrt.
d3dx11: Build with msvcrt.
d3dx9: Build with msvcrt.
d3dxof: Build with msvcrt.
davclnt: Build with msvcrt.
dbgeng: Build with msvcrt.
msvcrt/tests: Don't use win_skip for functions that are not exported on 64-bit.
msi/tests: Don't skip a 64-bit test on Wine.
mf/tests: Initialize variable to avoid spurious test failure.
oleacc/tests: Preserve the full 64 bits of the LRESULT value.
kernel32: Simplify K32GetPerformanceInfo().
dciman32: Build with msvcrt.
ddeml: Build with msvcrt.
ddrawex: Build with msvcrt.
devenum: Build with msvcrt.
dhcpcsvc: Build with msvcrt.
dhtmled.ocx: Build with msvcrt.
difxapi: Build with msvcrt.
dispdib: Build with msvcrt.
dispex: Build with msvcrt.
display.drv: Build with msvcrt.
dmband: Build with msvcrt.
dmcompos: Build with msvcrt.
dmime: Build with msvcrt.
ntdll: Fix off-by-one allocation error.
dmloader: Build with msvcrt.
dmscript: Build with msvcrt.
dmstyle: Build with msvcrt.
dmsynth: Build with msvcrt.
dmusic: Build with msvcrt.
dmusic32: Build with msvcrt.
dplayx: Build with msvcrt.
dpnet: Build with msvcrt.
dpnhpast: Build with msvcrt.
dpvoice: Build with msvcrt.
dpwsockx: Build with msvcrt.
drmclien: Build with msvcrt.
dsound: Build with msvcrt.
dsquery: Build with msvcrt.
dssenh: Build with msvcrt.
dswave: Build with msvcrt.
dwmapi: Build with msvcrt.
dx8vb: Build with msvcrt.
dxdiagn: Build with msvcrt.
dxva2: Build with msvcrt.
esent: Build with msvcrt.
explorerframe: Build with msvcrt.
faultrep: Build with msvcrt.
feclient: Build with msvcrt.
fltlib: Build with msvcrt.
fltmgr.sys: Build with msvcrt.
fntcache: Build with msvcrt.
fontsub: Build with msvcrt.
fusion: Build with msvcrt.
fwpuclnt: Build with msvcrt.
configure: Use pkg-config to check for zlib.
winebuild: Don't even try to resolve imports for PE builds.
gameux: Build with msvcrt.
gdiplus: Build with msvcrt.
gpkcsp: Build with msvcrt.
hal: Build with msvcrt.
hhctrl.ocx: Build with msvcrt.
hid: Build with msvcrt.
hidclass.sys: Build with msvcrt.
hlink: Build with msvcrt.
hnetcfg: Build with msvcrt.
httpapi: Build with msvcrt.
iccvid: Build with msvcrt.
ieframe: Build with msvcrt.
ieproxy: Build with msvcrt.
ifsmgr.vxd: Build with msvcrt.
imaadp32.acm: Build with msvcrt.
ntdll: Add a helper function to find a module from its dlopen handle.
ntdll: Add a helper function to load a dll from a .so file.
ntdll: Load the file we got when we can't locate the corresponding builtin.
kernel32: Fix handling of LOAD_WITH_ALTERED_SEARCH_PATH when other search flags are specified.
imagehlp: Build with msvcrt.
imm32: Build with msvcrt.
inetcomm: Build with msvcrt.
inetcpl: Build with msvcrt.
inetmib1: Build with msvcrt.
infosoft: Build with msvcrt.
initpki: Build with msvcrt.
inkobj: Build with msvcrt.
inseng: Build with msvcrt.
itircl: Build with msvcrt.
itss: Build with msvcrt.
joy.cpl: Build with msvcrt.
jscript: Build with msvcrt.
jsproxy: Build with Windows sockets.
jsproxy: Build with msvcrt.
keyboard.drv: Build with msvcrt.
ksecdd.sys: Build with msvcrt.
ksuser: Build with msvcrt.
ktmw32: Build with msvcrt.
loadperf: Build with msvcrt.
localspl: Build with msvcrt.
localui: Build with msvcrt.
lzexpand: Build with msvcrt.
mapi32: Build with msvcrt.
mapistub: Build with msvcrt.
mciavi32: Build with msvcrt.
mcicda: Build with msvcrt.
mciqtz32: Build with msvcrt.
mciseq: Build with msvcrt.
mciwave: Build with msvcrt.
Alexey Prokhin (5):
dinput: Return fake DIPROP_GUIDANDPATH property for linux joysticks.
dinput: Return fake DIPROP_GUIDANDPATH property for linux input joysticks.
dinput: Return fake DIPROP_GUIDANDPATH property for OSX joysticks.
dinput/tests: Remove todo from DIPROP_GUIDANDPATH test.
dinput/tests: Check path format of DIPROP_GUIDANDPATH property.
Alistair Leslie-Hughes (11):
dinput/tests: Remove unrequired if (Coverity).
amstream: Leave critical section on success (Coverity).
bcrypt: Add BCryptDestroySecret/BCryptSecretAgreement stubs.
bcrypt: Add BCryptDeriveKey stub.
include: Add missing SYMOPT_* defines.
dbghelp: Support S_HEAPALLOCSITE entry.
dinput: Return correct value in IDirectInputDevice2 Release.
dinput: Trace reference count in a consistent way.
dbghelp: Add SymGetExtendedOption/SymSetExtendedOption stubs.
dbghelp: SymSet/GetExtendedOption support a WINE only option.
dbghelp: Use internal flag for loading native files.
Andrey Gusev (8):
ext-ms-win-shell-comctl32-init-l1-1-0: Add dll.
ext-ms-win-shell-comdlg32-l1-1-0: Add dll.
ext-ms-win-shell-shell32-l1-2-0: Add dll.
ext-ms-win-ntuser-windowclass-l1-1-0: Update spec file.
webservices: Fix misplaced parenthesis.
oledb32: Remove duplicate WINAPI.
advapi32: Implement LookupAccountSidLocalA/W.
quartz: Avoid cast for VMR9_ImagePresenter_QueryInterface.
André Hentschel (7):
setupapi/tests: Don't test functions directly when reporting GetLastError().
comctl32/tests: Don't test functions directly when reporting GetLastError().
ntoskrnl.exe/tests: Don't test functions directly when reporting GetLastError().
shcore: Fix IUnknown_AtomicRelease spec file entry.
shlwapi: Fix some spec file entries.
rpcrt4: Fix NdrServerContextMarshall spec file entry.
mpr: Fix some spec file entries.
Aric Stewart (3):
winemac.drv: Use NI_COMPOSITIONSTR/CPS_CANCEL when composition string is empty.
mshtml: Handle NULL aNode in nsContextMenuListener_OnShowContextMenu.
dinput: Handle case where IOHIDDeviceGetValue fails.
Daniel Lehman (1):
advapi32: Implement EnumDynamicTimeZoneInformation.
Derek Lesho (1):
ntoskrnl.exe: Implement KeAreApcsDisabled.
Dmitry Timoshkov (6):
ieframe: Prefer built-in version.
include/mshtml.idl: Add more interface declarations.
mshtml: Add IMarkupServices interface stub.
mshtml: Add IMarkupContainer interface stub.
mshtml: Add IDisplayServices interface stub.
mshtml.idl: Add forward declaration for IHTMLWindow flavours.
Gabriel Ivăncescu (5):
winepulse.drv: Adjust the buffer volume before sending it to PulseAudio.
winepulse.drv: Add support for A-law and u-law formats with volume changes.
winealsa.drv: Adjust the buffer volume before sending it to ALSA.
comctl32/listbox: Don't try to paint non-visible items for multi-column listboxes.
user32/listbox: Don't try to paint non-visible items for multi-column listboxes.
Hans Leidekker (1):
advapi32: Improve the SaferComputeTokenFromLevel stub.
Henri Verbeet (25):
wined3d: Pass a wined3d_context_gl structure to context_generate_rt_mask_no_fbo().
wined3d: Pass a wined3d_context_gl strcuture to find_draw_buffers_mask().
wined3d: Pass a wined3d_context_gl structure to context_activate().
wined3d: Move the WGL fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Properly check whether a context was created in swapchain_init().
wined3d: Pass a wined3d_context_gl structure to arbfp_blitter_upload_palette().
wined3d: Pass a wined3d_context_gl structure to arbfp_blit_set().
wined3d: Pass a wined3d_context_gl structure to create_dummy_textures().
wined3d: Pass a wined3d_context_gl structure to glsl_blitter_upload_palette().
wined3d: Use wined3d_texture_get_level_box() in wined3d_device_copy_resource().
wined3d: Pass a wined3d_context_gl structure to shader_resource_view_gl_bind_and_dirtify().
wined3d: Pass a wined3d_context_gl structure to context_active_texture().
wined3d: Move the "active_texture" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the blit dimension fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Make the adapter responsible for acquiring and releasing contexts.
wined3d: Move the material tracking fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "needs_set" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "valid" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_reacquire().
wined3d: Create a blitter for the Vulkan adapter.
wined3d: Move the "tid" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_bind_bo().
wined3d: Pass a wined3d_context_gl structure to context_bind_dummy_textures().
wined3d: Pass a wined3d_context_gl structure to context_copy_bo_address().
wined3d: Upload texture data through the texture ops in wined3d_cs_exec_blt_sub_resource().
Huw D. M. Davies (2):
msctfp: Define the correct PROXY_CLSID.
kernel32: Move the implementation of GetTickCount() to kernel32.
Isira Seneviratne (2):
po: Update Sinhala translation.
po: Update Sinhala translation.
Jacek Caban (18):
ntoskrnl.exe/tests: Always test DeviceIoControl result.
ntoskrnl.exe: Pass context as a structure to IRP dispatchers.
ntoskrnl.exe: Reuse IRP input buffer if it wasn't used.
ntoskrnl.exe: Set irp context handle in dispatch_irp.
wininet: Fix name and data allocation failure handling in alloc_cookie.
server: Use stored current kernel call to interpret IRP dispatch status.
server: Store IRP client pointer on server side.
server: Remove IRP from device queue before terminating async.
server: Notify kernel when IRP is terminated by server.
ntoskrnl.exe: Cancel IRPs terminated by server.
mshtml/tests: Fix tests on some recent IE versions.
mshtml/tests: Include leading path slash in location test array.
mshtml: Rewrite IHTMLLocation::get_pathname on top of IUri.
ieframe: Keep Busy property in sync with download state.
server: Use current thread for IRP calls without associated thread.
ntoskrnl.exe: Dispatch server IRPs in critical region.
server: Associate create and close IRPs with current thread.
ntoskrnl.exe: Set IRP caller thread.
Jactry Zeng (2):
riched20: Implement ITextRange::SetRange.
msscript: Return S_OK in IScriptControl::put_SitehWnd().
Jeff Smith (1):
d3drm: CreateDevice is unimplemented on Windows.
John Found (1):
winex11.drv: Allow the drop target to be a transparent window.
Józef Kucia (2):
ucrtbase: Implement _o__stricmp().
dxgi: Improve tracing in dxgi_adapter_QueryVideoMemoryInfo().
Louis Lenders (1):
gdiplus: Add version resource.
Lukáš Krejčí (1):
mciqtz32: Don't overflow seek times during multiplication.
Manuel Edelmann (1):
kernel32: Added stub for Set/GetProcessPreferredUILanguages.
Marcus Meissner (1):
qcap: Release filter only if allocated.
Michael Stefaniuc (10):
ntoskrnl: Add a macro to declare a static CRITICAL_SECTION.
ole32/tests: Avoid a cast from COM object to interface.
shell32: Don't cast from COM object to interface.
winemac.drv: Avoid casts from COM objects to interfaces.
mshtml: Use the standard field name for an inner IUnknown.
urlmon: Use the standard field name for an inner IUnknown.
mshtml: Print the debug strings and not the pointers to them.
dbghelp: Fix the spelling of a parameter.
winedbg: Fix the spelling of a comment.
winedump: Fix the spelling of a string.
Mingcong Bai (1):
po: Update Simplified Chinese translation.
Nikolay Sivov (23):
mf: Implement type handler methods for sample grabber stream.
kernelbase: Add remaining registry helpers from shlwapi.
mf: Implement presentation clock methods for sample grabber.
mf: Detach sink stream on sample grabber shutdown.
mf: Maintain sample grabber sink state.
mfplat: Add sample grabber attributes to debug tracing helper.
mf: Implement ProcessSample() for unclocked mode.
mf: Partially implement Shutdown() for media session.
mf: Raise event on session close.
mf: Get presentation clock flags from current time source.
mf: Return presentation clock properties.
mf: Forward GetTime() calls to time source.
mf: Forward GetCorrelatedTime() to time source.
comctl32/trackbar: Do not consider window size when initializing fixed length thumb.
mf: Add rate support for presentation clock.
mf/tests: Add some tests for video processor MFT.
mf/tests: Add some more Video Processor tests.
mf: Implement clock-synchronized mode for ProcessSample() in sample grabber sink.
mf: Raise sample request events for sample grabber stream.
mf: Add support for MEStreamSinkMarker event for sample grabber.
mf: Implement stream flushing for sample grabber.
mfplat: Make sure async event delivery is triggered with EndGetEvent().
mfplat: Add MFRegisterLocalSchemeHandler().
Owen Rudge (2):
oledb32: Implement support for converting to DBTYPE_I1.
oledb32/tests: Add conversion tests to DBTYPE_I1.
Paul Gofman (8):
wined3d: Scale transformed position in compute_light().
ddraw: Support D3DVOP_LIGHT in d3d_vertex_buffer7_ProcessVertices().
wined3d: Fix specular alpha value in process_vertices_stride().
ddraw/tests: Test lighting with _ProcessVertices() for ddraw4.
ddraw/tests: Test lighting with _ProcessVertices() for ddraw7.
wined3d: Compute fog factor in process_vertices_strided().
ddraw/tests: Add test for fog calculation in _ProcessVertices for ddraw7.
ddraw/tests: Fix test failures in test_lighting() on some of WARP drivers for ddraw7.
Piotr Caban (6):
ntoskrnl.exe: Add IoDetachDevice implementation.
ntoskrnl.exe: Fix IoAttachDeviceToDeviceStack implementation.
services: Don't double release process in service_start.
msvcp: Add _Strxfrm implementation.
msvcp: Fix _Lockit::_Lockit_ctor and _Lockit::_Lockit_dtor implementation.
msvcp: Add _Init_locks class implementation.
Roberto Pungartnik (1):
po: Update Brazilian Portuguese translation.
Rémi Bernon (3):
xinput: Fix rumble amount value rounding.
commdlg: Allocate memory using VirtualAlloc instead of NtAllocateVirtualMemory.
kernel32/tests: Fix NtAllocateVirtualMemory tests results on w1064v1809.
Stefan Dösinger (1):
include: Remove backslashes from D3D12_COLOR_WRITE_ENABLE_ALL.
Sven Baars (14):
kernel32/tests: Open and close the right file handle (Coverity).
d3dx9: Release the full parameter name when a parameter is released (Valgrind).
d3dx9: Always free samplers (Valgrind).
shell32: Fix a use after free (Coverity).
ntdll/tests: Fix a string leak (Valgrind).
shell32: Fix an item identifier list leak (Valgrind).
shell32/tests: Fix a memory leak (Valgrind).
propsys/tests: Fix the PropVariantToBuffer tests.
propsys/tests: Fix some ok() messages.
user32: Fix some leaks on error path (Coverity).
msrle32: Fix a memory leak (Valgrind).
msvfw32: Fix copying of a BITMAPINFO structure (Valgrind).
mmdevapi/tests: Use PropVariantClear after calling IPropertyStore_GetValue (Valgrind).
ole32: Add VT_ARRAY support to PropVariant.
Tim Schumacher (3):
dbgstr: Initialize hex list using an explicit char array.
dinput: Check for wheel axes/buttons when finding joysticks.
dinput/linuxinput: Remap wheel axes to X, Y, and Z.
Zebediah Figura (87):
setupapi: Add a basic implementation of SetupDiInstallDevice().
setupapi: Copy the INF file to C:/windows/inf/ and record it in the driver key.
setupapi: Process the .HW subsection in SetupDiInstallDevice().
setupapi: Process the .Services subsection in SetupDiInstallDevice().
quartz/vmr9: Implement IVMRWindowlessControl::SetVideoClippingWindow().
strmbase/transform: Use BaseFilterImpl_Release().
qcap/avico: Use BaseFilterImpl_Release().
winegstreamer/gstdemux: Use BaseFilterImpl_Release().
wineqtdecoder/qtsplitter: Use BaseFilterImpl_Release().
setupapi/tests: Test calling SetupDiEnumDeviceInterfaces() with a NULL device.
setupapi/tests: Add some tests for SetupDiGetClassDevs().
setupapi: Treat DIGCF_ALLCLASSES as if a NULL device class was given.
setupapi/tests: Add some tests for DIGCF_DEVICEINTERFACE.
setupapi: Set the list device class to GUID_NULL when enumerating interfaces.
setupapi/tests: Add some tests for SetupDiGetDeviceInfoListDetail().
setupapi: Avoid adding duplicate devices in SetupDiGetClassDevs().
strmbase/renderer: Add a destructor callback.
quartz/dsoundrender: Use BaseFilterImpl_Release().
quartz/parser: Get rid of the "fnCleanup" member of ParserImpl.
quartz/parser: Pass a BaseFilterFuncTable to Parser_Create().
quartz/avisplit: Use BaseFilterImpl_Release().
quartz/mpegsplit: Use BaseFilterImpl_Release().
quartz/waveparser: Use BaseFilterImpl_Release().
quartz: Use strmbase filter methods directly.
qcap/avimux: Use BaseFilterImpl_Release().
qcap/avimux: Use strmbase filter methods directly.
widl: Use IsSimpleRef only for explicitly declared arrays.
widl: Also allocate top-level pointers to arrays as on-stack in -Oicf mode.
widl: Remove an unused variable.
widl: Write array pointers as FC_OP pointers if appropriate.
widl: Non-top-level conformant arrays are always [ref] by default.
include: Add newdev.h.
newdev: Correct definition of DiInstallDriver().
newdev: Implement UpdateDriverForPlugAndPlayDevices().
quartz/tests: Add more tests for aggregation.
qcap/audiorecord: Fix aggregation support.
qcap/tests: Add more tests for aggregation.
strmbase: Reimplement BaseFilterImpl_QueryInterface() using a callback.
quartz/filesource: Use BaseFilterImpl_QueryInterface().
winebus.sys: Use the winebus driver to create all devices.
winebus.sys: Move udev configuration values to the winebus service key.
winebus.sys: Avoid IoCreateDriver().
quartz/mpegsplit: Use BaseFilterImpl_QueryInterface().
qcap/avimux: Use BaseFilterImpl_QueryInterface().
winegstreamer/gstdemux: Use BaseFilterImpl_QueryInterface().
strmbase/renderer: Add a QueryInterface() callback.
quartz/dsoundrender: Use BaseFilterImpl_QueryInterface().
ntoskrnl.exe: Move PNP code to a separate file.
qcap/avico: Use BaseFilterImpl_QueryInterface().
strmbase: Support aggregation in the base filter.
quartz/videorenderer: Use strmbase filter aggregation support.
quartz/vmr9: Use strmbase filter aggregation support.
qcap/audiorecord: Use strmbase filter aggregation support.
ntoskrnl.exe: Fix handling of reference string in IoRegisterDeviceInterface().
winebus.sys: Make the device and instance IDs consistent.
winebus.sys: Just report the bus ID when enumerating compatible IDs.
qcap/smartteefilter: Use strmbase filter aggregation support.
qcap/vfwcapture: Use strmbase filter aggregation support.
qedit/nullrenderer: Use strmbase filter aggregation support.
qedit/samplegrabber: Use strmbase filter aggregation support.
evr: Return E_NOINTERFACE when aggregation is requested with an interface other than IUnknown.
evr: Use strmbase filter aggregation support.
ntoskrnl.exe: Free device IDs from pool.
winebus.sys: Allocate IRP return buffers from paged pool.
hidclass.sys: Allocate IRP return buffers from paged pool.
ntoskrnl.exe: Use SetupDiOpenDeviceInfo().
ntoskrnl.exe: Correctly handle instance IDs.
strmbase: Get rid of BaseRendererImpl_QueryInterface().
strmbase: Support aggregation in the base transform filter.
qedit/samplegrabber: Use BaseFilterImpl_FindPin().
qcap/avico: Use BaseFilterImpl_QueryFilterInfo().
qcap/avico: Use BaseFilterImpl_QueryVendorInfo().
hidclass.sys: Use PDRIVER_ADD_DEVICE.
hidclass.sys: Get rid of unused minidriver parameter to HID_DeleteDevice().
ntoskrnl.exe: Dispatch user IRPs to the top of the device stack.
ntoskrnl.exe: Send PnP IRPs to the top of the device stack.
ntoskrnl.exe: Implement automatically generated device names.
strmbase: Add a cached implementation of IDispatch and use it in IBasicVideo.
strmbase: Use the type info cache for IVideoWindow.
strmbase: Use the type info cache for IMediaPosition.
quartz/dsoundrender: Use the type info cache for IBasicAudio.
strmbase: Get rid of IBasicAudio implementation.
strmbase: Get rid of base IDispatch implementation.
winehid.inf: Add new INF file and copy it to the INF directory.
ntoskrnl.exe: Use INF files to locate function drivers.
wine.inf: Remove no longer used CriticalDeviceDatabase entries.
wine.inf: Remove registration for the winehid service.
Zhiyi Zhang (8):
gdi32/tests: Add D3DKMTCheckOcclusion tests.
gdi32: Implement D3DKMTOpenAdapterFromGdiDisplayName.
gdi32: Implement D3DKMTCloseAdapter.
gdi32: Implement D3DKMTCreateDevice.
gdi32: Implement D3DKMTDestroyDevice.
user32/tests: Test restore window messages.
winex11.drv: Activate window when restoring from iconic state.
winemac.drv: Activate window when restoring from iconic state.
Zixing Liu (1):
po: Update Simplified Chinese translation.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.9 is now available.
What's new in this release (see below for details):
- Initial support for installing Plug and Play drivers.
- Support for building 16-bit modules in PE format.
- A lot of code moved to the new KernelBase DLL.
- Various game controller fixes.
- Use higher performance system clocks if available.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.9.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.9.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.9 (total 24):
27185 Futuremark PC Mark 7 (.NET 4.0 app) fails to run with Wine-Mono (mscoree:get_runtime Unrecognized version L"v4.0.20926")
34764 .NET Framework 3.5 SP1 based WPF applications crash on direct access of MIL (Media Integration Layer) to internal bitmap struct/class impl (depends on exact layout)
36764 Rogue Squadron 3D 1.3: Unable to setup controller in-game
36981 Flexera InstallShield 20.x based installers crash in NdrProxyInitialize (Samsung Kies 3, Designspark 6.1, Exelis ENVI 5.x)
41657 CoolQ 5.x reports network error on startup due to msscript:ScriptControl_Eval stub
43738 "MegaTagmension Blanc + Neptune VS Zombies" - Character models don't render
46406 TreePad X Enterprise (single user) 12GB v7.17.0: Garbled Text When Creating or Editing a Node/Tree Name
46655 Adobe Photoshop CC 2015.5: Tabs show completely black
46682 TopoEdit crashes with unimplemented function mf.dll.MFCreateAudioRendererActivate
46849 Vietcong: taking handmap causes crash (ProcessVertices)
47044 64-bit MRAC Anti-Cheat (My.Com Warface) kernel service fails in driver entry point due to missing 'ntoskrnl.exe.{ExAcquireFastMutex,ExReleaseFastMutex}'
47085 Spellforce 3 has misplaced text in main menu
47178 Grand Prix Legends: Service papycpu2 doesn't load
47183 Grand Prix Legends: Only the first two axes are recognized
47185 `winetricks -q msxml3` hangs
47188 Gamepad input no longer works (regression)
47190 Custom protocol handler CF doesn't support aggregation
47209 Gamepad input no longer works again (regression)
47214 Oracle Java runtime 8.211 online installer crashes in WoW64
47219 "winetricks -q ie8" hangs
47222 World of Tanks 1.5.0 launcher 'WotLauncher.exe' (0.3.x) crashes with Wine-Staging 4.7
47226 Incorrect crash information displayed for unimplemented function stubs when 64-bit Wine builtins are cross-compiled in PE format (Mingw-w64, MS x64 calling convention)
47238 Osmos refuses to start with built-in msvcp90
47249 CM_Set_Class_Registry_Property should use PCVOID for buffer parameter
----------------------------------------------------------------
Changes since 4.8:
Akihiro Sagawa (10):
advapi32/tests: Add basic RegLoadMUIString tests.
advapi32: Support the base directory parameter in RegLoadMUIString.
advapi32: Improve parameter sanity checks in RegLoadMUIString.
advapi32: Improve load_string to return error code.
advapi32: Remove useless RegLoadMUIStringA implementation.
advapi32: Return required buffer size in RegLoadMUIString.
kernel32: Add traces to time zone functions.
advapi32/tests: Add RegLoadMUIString tests with REG_MUI_STRING_TRUNCATE flag.
advapi32: Factor out load_mui_string().
advapi32: Implement REG_MUI_STRING_TRUNCATE flag.
Alexandre Julliard (70):
include: Move inline assembly definitions to a new wine/asm.h header.
winecrt0: Store the appropriate longjmp() function in the exception frame.
winecrt0: Reimplement __wine_rtl_unwind() as a proper asm function.
winecrt0: Don't build unneeded code for Windows platforms.
configure: Rename WINE_CROSSTEST to WINE_CROSS_PE.
configure: Don't allow using config.h when cross-compiling.
dinput/tests: Remove duplicate const.
dinput8/tests: Remove duplicate const.
winebus.sys: Avoid ssize_t.
msvcp80: Fix the spec entries of the num_put_char/short/wchar functions.
msvcr: Fix the _NonReentrantPPLLock__Scoped_lock_ctor() spec entries.
msvcr: Fix the event_wait() spec entries.
vssapi: Fix the VSSAPI_CVssWriter_Initialize() spec entry.
include: Define fastcall assembly wrappers globally.
include: Define thiscall assembly wrappers globally.
riched20: Declare thiscall functions as __thiscall.
winebuild: Support Windows-style name mangling for fastcall functions.
include: Use the __fastcall attribute directly for the Windows build.
include: Use the __thiscall attribute directly for the Mingw build.
include: Pass function name directly to the __ASM_STDCALL macro.
winegcc: Use -static-libgcc for the Windows build.
msvcp90: Use the standard -mno-cygwin build flag.
msvcp100: Use the standard -mno-cygwin build flag.
msvcp110: Use the standard -mno-cygwin build flag.
msvcp120: Use the standard -mno-cygwin build flag.
msvcp140: Use the standard -mno-cygwin build flag.
vcruntime140: Use the standard -mno-cygwin build flag.
msvcp60: Use the standard -mno-cygwin build flag.
msvcp70: Use the standard -mno-cygwin build flag.
msvcp71: Use the standard -mno-cygwin build flag.
msvcp80: Use the standard -mno-cygwin build flag.
msvcirt: Use the standard -mno-cygwin build flag.
msvcrt20: Use the standard -mno-cygwin build flag.
msvcrt40: Use the standard -mno-cygwin build flag.
makefiles: Remove the check for msvcr* imports.
msvcrt: Update arguments for some forwarded functions.
cabarc: Remove duplicate defines.
cabinet/tests: Remove duplicate defines.
winebuild: Support relay debugging for PE builtin dlls.
makefiles: Don't depend on cross import library if not necessary.
makefiles: Use -fshort-wchar when building with msvcrt.
winebuild: Don't change %fs and %gs when calling 16-bit register functions.
winebuild: Store wine_ldt_copy pointer in the NE header at load time.
include: Don't allow using wine/library.h with msvcrt.
ntdll: Set LDR_WINE_INTERNAL flag also for PE builtins.
winebuild: Use cdecl calling convention for stub exceptions.
winebuild: Add 16-bit support for PE builds.
makefiles: Support cross-compilation of 16-bit libraries.
setupapi: Extract the 16-bit fake dll from the 32-bit PE one.
winedump: Print fake dll information also for NE files.
msvcrt: Add the static object files to all the msvcrt import libraries.
user.exe: Avoid using libwine functions.
toolhelp: Avoid using libwine functions.
rundll.exe: Build with msvcrt.
winhelp.exe: Build with msvcrt.
winoldap.mod: Build with msvcrt.
make_unicode: Add a wctype table in kernel32 for GetStringTypeW().
make_unicode: Store the C2_* values directly in the kernel32 wctype table.
make_unicode: Use a two-level table for the kernel32 wctype table.
make_unicode: Generate a separate table for BiDi direction type in usp10.
make_unicode: Store the full BiDi direction type in the table.
make_unicode: Avoid including wine/unicode.h in generated files.
dwrite: Use the same BiDi direction table as usp10.
gdi32: Use the same BiDi direction table as usp10.
make_unicode: Remove duplicate DECLSPEC_HIDDEN.
ntdll: Don't pass DLL_WINE_PREATTACH to the TLS callbacks.
setupapi/tests: Avoid size_t in traces.
quartz/tests: Add braces to avoid a clang warning.
ucrtbase: Move the vsnprintf() wrapper function to the ucrtbase import library.
makefiles: Add install dependency for PE builtins.
Alistair Leslie-Hughes (6):
dinput: Allow enumeration of joysticks with DirectX 3.
dinput: Handle setting DIPROP_CALIBRATIONMODE mode in generic implementation.
wineqtdecoder: Fix compile on MacOS.
dinput: Improve returned flags in Mouse GetObjectInfo.
dinput: Support DIDEVICEINSTANCE_DX3 for keyboard GetDeviceInfo.
include: Add helicopter Direct Input defines.
Andreas Maier (2):
jscript: Implement Enumerator object.
jscript/tests: Add more Enumerator tests.
Andrew Eikum (4):
winebus.sys: Fix report length calculation.
winebus.sys: Add missing padding between hatswitch and constant.
hid: Fix usage value mask.
msvcrt: Implement fma and fmaf.
André Hentschel (1):
include: Fix ASM_CFI definition.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Dmitry Timoshkov (11):
windowscodecs: Improve compatibility of IMILBitmap interface.
windowscodecs: Add support for IMILBitmapScaler interface.
windowscodecs/tests: Add some tests for IMILBitmap and IMILBitmapScaler interfaces.
windowscodecs: Correct IWICBitmapScaler::CopyPixels() error for not initialized case.
windowscodecs: Simplify some IMILBitmapScaler forwarders.
urlmon: Add support for PARSE_UNESCAPE to CoInternetParseUrl.
urlmon: Add ShouldShowIntranetWarningSecband stub.
urlmon: Add GetIUriPriv stub.
urlmon: Add CoInternetGetBrowserProfile stub.
urlmon/tests: Add a test for ProtocolCF_CreateInstance not supporting aggregation.
urlmon: If ProtocolCF_CreateInstance doesn't support aggregation retry without it.
Ethan Lee (1):
xaudio2: Use new features from FAudio 19.06 (but keep compatibility for <=19.05).
Fabian Maurer (2):
gdi32: CreatePolyPolygonRgn() returns an empty region when the area is empty.
setupapi: Correct function parameter for CM_Set_Class_Registry_PropertyA/W.
Gijs Vermeulen (1):
crypt32/tests: Fix some memory leaks (Valgrind).
Hans Leidekker (1):
ntdll: Fix breakpoint exception address on 64-bit Linux.
Henri Verbeet (35):
wined3d: Pass a wined3d_context_gl structure to context_update_tex_unit_map().
wined3d: Pass a wined3d_context_gl structure to draw_primitive_immediate_mode().
wined3d: Move the texture unit map from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "blit_vbo" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the occlusion query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the fence fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the timestamp query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the stream-output statistics query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the pipeline statistics query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_apply_clear_state().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_state_blit().
wined3d: Pass a wined3d_context_gl structure to context_check_fbo_status().
wined3d: Pass a wined3d_context_gl structure to context_set_draw_buffer().
wined3d: Pass a wined3d_context_gl structure to context_texture_update().
wined3d: Pass a wined3d_context_gl structure to context_bind_fbo().
wined3d: Pass a wined3d_context_gl structure to context_destroy_fbo().
wined3d: Pass a wined3d_context_gl structure to context_reuse_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_destroy_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_find_fbo_entry().
wined3d: Use context_acquire() in wined3d_swapchain_cs_init().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_state().
wined3d: Pass a wined3d_context_gl structure to context_queue_fbo_entry_destruction().
wined3d: Pass a wined3d_context_gl structure to context_apply_compute_state().
wined3d: Use wined3d_texture_get_level_box() in wined3d_device_update_texture().
wined3d: Move the FBO fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_get_offscreen_gl_buffer().
wined3d: Pass a wined3d_context_gl structure to wined3d_context_gl_restore_pixel_format().
wined3d: Pass a wined3d_context_gl structure to context_set_pixel_format().
wined3d: Use wined3d_texture_get_level_box() in texture2d_load_texture().
wined3d: Pass a wined3d_context_gl structure to context_set_gl_context().
wined3d: Pass a wined3d_context_gl structure to context_update_window().
wined3d: Pass a wined3d_context_gl structure to context_enter().
wined3d: Pass a wined3d_context_gl structure to context_get_rt_size().
wined3d: Use wined3d_texture_get_level_box() in wined3d_texture_create().
Huw D. M. Davies (11):
configure: Don't define HAVE_CLOCK_GETTIME on macOS.
ntdll: Implement RtlGetSystemTimePrecise().
kernel32: Implement GetSystemTimePreciseAsFileTime() using RtlGetSystemTimePrecise().
ntdll: Use CLOCK_REALTIME_COARSE for NtQuerySystemTime() if it has sufficient resolution.
kernel32: Replace macros with inline helpers.
kernel32: Simplify TIME_CompTimeZoneID() by passing time as LONGLONG.
kernel32: Simplify is_not_current().
kernel32: Forward GetSystemTimeAsFileTime() to NtQuerySystemTime().
ntdll: Mark monotonic_counter() as inline.
ntdll: Extend NtGetTickCount() to return 64-bits. Forward kernel32 functions to it.
explorer: Set the default driver to mac,x11 in all cases.
Isira Seneviratne (1):
po: Update Sinhala translation.
Jacek Caban (12):
ntoskrnl.exe: Implement ExAcquireFastMutex and ExReleaseFastMutex.
ntoskrnl.exe: Implement PsGetProcessInheritedFromUniqueProcessId.
ntddk.h: Add a few more declarations.
urlmon/tests: Make ParseUrl call tests more strict.
jscript: Allow calling eval function from external code.
ntoskrnl.exe: Implement PsGetThreadProcessId.
mshtml: Fix window size in IOleDocumentView::SetRect implementation.
mshtml: Return rect relative to parent window in IOleDocumentView::GetRect.
mshtml: Implement IOleInPlaceObjectWindowless::SetObjectRects.
ntdll: Introduce wait_async helper.
server: Store pending flag in async object.
server: Always block overlapped device requests until driver dispatches them.
Jactry Zeng (1):
msscript: Partially implement IScriptControl::Eval().
Jimi Huotari (1):
winegstreamer: Fix spelling of 'initialized' in a TRACE().
Józef Kucia (1):
setupapi: Avoid debugstr buffer overflow.
Lauri Kenttä (1):
po: Update Finnish translation.
Marcus Meissner (1):
setupapi: Fix size to MultiByteToWideChar().
Martin Storsjo (2):
msvcrt: Hook up _setjmpex for arm64 as well.
ntdll: Avoid truncating a nonzero exit code to zero in unix.
Matteo Bruni (15):
wined3d: Avoid a GCC 8 warning.
d3d9: Always allow read and write map access to non-DEFAULT buffers.
d3d8: Always allow read and write map access to non-DEFAULT buffers.
wined3d: Pass a wined3d_context_gl structure to context_load_numbered_arrays().
wined3d: Pass a wined3d_context_gl structure to context_update_stream_sources().
wined3d: Avoid some redundant glVertexAttrib4f() calls.
wined3d: Add ARB_TEXTURE_MIRROR_CLAMP_TO_EDGE to core_extensions[].
winecfg: Don't mark glu32 as builtin-only.
wined3d: Always report support for ZBIAS and MIPMAPLODBIAS raster caps in the Vulkan backend.
wined3d: Report WINED3DPRASTERCAPS_MIPMAPLODBIAS only when supported.
wined3d: Assign 9_x feature levels more accurately.
d3d8: Check the WINED3DPRASTERCAPS_DEPTHBIAS cap bit to report D3DPRASTERCAPS_ZBIAS.
ddraw: Check the WINED3DPRASTERCAPS_DEPTHBIAS cap bit to report D3DPRASTERCAPS_ZBIAS.
wined3d: Get rid of WINED3DPRASTERCAPS_ZBIAS.
wined3d: Report WINED3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS when possible.
Michael Stefaniuc (3):
mfplat: Print the debug strings and not the pointers.
msctf: Remove useless cast to self.
kernel32/tests: Use the ARRAY_SIZE() macro.
Nikolay Sivov (50):
mf: Add stubs to create audio renderer sink.
mf: Add support for async commands for media session.
dwrite/layout: Use a helper to update layout metrics.
dwrite/layout: Use array allocation helper for typography features.
dwrite/font: Use existing helper for CreateFontFace().
dwrite/layout: Fix layout metrics width for whitespace-only lines.
dwrite/layout: Use interface pointer in text format method traces.
dwrite: Improve returned design glyph metrics.
dwrite: Use array allocation helper to manage family entries.
dwrite: Use array allocation helper to manage collection entries.
dwrite: Use array allocation helper for in-memory loader.
dwrite/analyzer: Use array allocation helper for fallback builder.
dwrite: Use array allocation helper for strings object.
dwrite/layout: Use array allocation helper for line metrics.
dwrite/tests: Fix a typo in test message.
kernelbase: Duplicate some path handling functions from shlwapi.
mf/session: Add stubs for playback rate API.
mf: Create presentation clock on session creation.
xaudio2: Fix 32-bit build.
kernelbase: Duplicate more path API from shlwapi.
kernelbase: Add QISearch().
kernelbase: Duplicate some of strings functions from shlwapi.
mfplat: Handle null destination for GetItem().
mf: Slightly improve topoloader Load().
kernelbase: Use a helper to get character C1 type.
kernelbase: Add string handling functions from user32.
kernelbase: Add LoadString() exports.
kernelbase: Add some more string handling functions from shlwapi.
mfplat: Return properties for system time source.
mfplat: Create system clock instance per system time source.
kernelbase: Add remaining string handling functions from shlwapi.
mf: Add sample grabber sink stub.
mf: Add IMFMediaTypeHandler stub for grabber stream.
mf: Add clock state sink stub for grabber.
mf: Add events support for grabber stream.
mf: Add events support for grabber sink.
comctl32/tooltips: Add a helper to free tool text.
comctl32/tooltips: Add a helper to set tool text.
comctl32/tooltips: Remove redundant condition.
kernelbase: Add most of path API from shlwapi.
mferror: Add some more error messages.
kernelbase: Add some URL API functions from shlwapi.
kernelbase: Remove helpers that are no longer necessary.
kernelbase: Add more URL API functions from shlwapi.
kernelbase: Add remaining path functions.
kernelbase: Add GetAcceptLanguages().
kernelbase: Add remaining URL functions.
kernelbase: Add SHLoadIndirectString().
kernelbase: Add some registry helpers from shlwapi.
mfplat: Add timestamp support for system time source.
Paul Gofman (13):
ddraw/tests: Test lighting with ambient light and material in ddraw1.
ddraw: Fix setting current viewport for ddraw1.
ddraw: Enable lighting only if material is set in d3d_execute_buffer_execute().
wined3d: Move validate_material_colour_source() to wined3d_private.h.
wined3d: Factor out compute_normal_matrix() function.
wined3d: Factor out wined3d_get_material_colour_source() function.
wined3d: Use the correct colour sources in process_vertices_strided().
wined3d: Move multiply_vector_matrix() to wined3d_private.h.
wined3d: Implement lighting with directional lights in process_vertices_strided().
ddraw/tests: Backport test_specular_lighting() for ddraw1.
wined3d: Implement point lights in process_vertices_strided().
wined3d: Implement spot lights in process_vertices_strided().
wined3d: Implement parallel point lights in process_vertices_strided().
Philip Rebohle (1):
d3dcompiler: Accept a stat chunk size of 28 for reflection.
Piotr Caban (13):
hid: Change format of preparsed data.
hidclass.sys: Remove no longer used features list.
hidclass.sys: Support descriptors with over 10 individual usages in feature.
hid: Set button values in HidP_SetUsages function.
hid: Fix error handling in HidP_SetUsages.
hidclass.sys: Limit written data to the actual report size.
winebus.sys: Fix typo in endpoint name.
winebus.sys: Correctly set HID device input number in device endpoint path.
winebus.sys: Restore IG_ substring in gamepads endpoint path.
kernel32: Add more CompareStringW tests.
libwine: Add helper function to compare character weights.
libwine: Decompose characters before comparing in wine_compare_string.
libwine: Ignore 0 weights as described in Unicode collation algorithm.
Roman Stingler (3):
include: Added some process creation Flags.
kernel32: Added some Numa stubs.
kernel32: Add stub WerUnregisterRuntimeExceptionModule.
Sven Baars (1):
comctl32: Always free the tooltip text before setting it (Valgrind).
Tim Schumacher (3):
services: Allow reading binary registry values as DWORDs.
joy.cpl: Check if effect is allocated before releasing it.
joy.cpl: Fix high CPU load in FF test window.
Zebediah Figura (90):
quartz: Make Parser_OutputPin_BreakConnect() a local helper.
winegstreamer: Make GSTOutPin_BreakConnect() a local helper.
wineqtdecoder: Make QTOutPin_BreakConnect() a local helper.
strmbase: Get rid of the "pfnBreakConnect" field from BaseOutputPinFuncTable.
setupapi: Handle an empty string for the source file in SetupQueueCopySection().
strmbase: Remove function pointers from the IEnumPinsImpl structure.
wineqtdecoder: Fix implementation of QT_GetPin().
strmbase: Determine the pin count using the GetPin() callback.
strmbase: Get rid of the "pfnGetPinCount" callback.
winegstreamer: Use CONTAINING_RECORD instead of casting.
strmbase: Use heap_alloc_zero() in enum_pins_create().
strmbase: Don't store the media type list locally.
strmbase: Get rid of the ENUMMEDIADETAILS structure.
strmbase: Return void from BaseFilter_Init().
strmbase: Get rid of the "filterVtbl" parameter to TransformFilter_Construct().
strmbase: Factor out strmbase_renderer_cleanup().
quartz/videorenderer: Use strmbase_renderer_cleanup().
quartz/vmr9: Use strmbase_renderer_cleanup().
quartz/dsoundrender: Use strmbase_renderer_cleanup().
qedit/nullrenderer: Use strmbase_renderer_cleanup().
strmbase: Get rid of BaseRendererImpl_Release().
setupapi: Implement SetupDiGetDeviceInstallParams().
setupapi: Implement SetupDiSetDeviceInstallParams().
setupapi/tests: Add some basic tests for SetupDi{Get, Set}DeviceInstallParams().
setupapi: Implement SetupDiGetActualSectionToInstallA().
setupapi: Define the correct platform extensions for each architecture.
setupapi/tests: Add tests for SetupDiGetActualSectionToInstall().
setupapi: Return the section name in SetupDiGetActualSectionToInstall() even if it doesn't exist.
quartz: Use CONTAINING_RECORD instead of casting.
qedit/samplegrabber: Correctly delegate IUnknown methods on the IMemInputPin interface.
amstream: Reimplement IMediaStreamFilter::EnumPins().
amstream: Reimplement IBaseFilter methods in the media stream filter.
setupapi/tests: Add some tests for SetupInstallFile().
setupapi: Retrieve the default destination path in SetupInstallFile().
setupapi: Clear the Win32 error if no copy was necessary.
setupapi: Don't fail a queued copy if no copy was necessary.
quartz/tests: Add some tests for IMediaSeeking on the filter graph.
qcap/tests: Clean up test_AviMux_QueryInterface().
qcap/tests: Add some tests for IMediaSeeking on the AVI mux filter.
strmbase/transform: Don't expose IMediaSeeking from the filter.
strmbase/transform: Don't expose IMediaPosition from the filter.
strmbase/transform: Don't expose IQualityControl from the filter.
quartz/filtergraph: Don't require IAMFilterMiscFlags when performing seek operations.
mshtml: Fix a copy-paste error.
mshtml: Avoid passing invalid memory to DispCallFunc().
msxml3: Load the version 1 typelib before trying to access it.
setupapi: Add an initial implementation of SetupDiBuildDriverInfoList().
setupapi: Check for compatible platforms in SetupDiBuildDriverInfoList().
setupapi: Implement directory search in SetupDiBuildDriverInfoList().
setupapi: Implement SetupDiEnumDriverInfo().
setupapi/tests: Add tests for building and enumerating driver lists.
setupapi: Add a semi-stub implementation of SetupDiSelectBestCompatDrv().
widl: Fix proxy vtbl generation in -Oi mode.
rpcrt4: Fail with CO_E_OBJNOTCONNECTED when trying to call methods on a disconnected proxy.
rpcrt4: Factor out get_handle_desc_size().
rpcrt4: Handle exceptions in a larger portion of NdrClientCall().
rpcrt4: Use a FINALLY block to clean up in do_ndr_client_call().
quartz/tests: Add some tests for IFilterGraph::SetDefaultSyncSource().
quartz/filtergraph: Don't require IAMFilterMiscFlags in IFilterGraph::SetDefaultSyncSource().
quartz/videorenderer: Don't expose IAMFilterMiscFlags.
quartz/dsoundrender: Don't expose IAMFilterMiscFlags.
qedit/nullrenderer: Don't expose IAMFilterMiscFlags.
strmbase: Rename BaseFilter_Destroy() to strmbase_filter_cleanup().
strmbase: Return void from strmbase_filter_cleanup().
evr: Use strmbase_filter_cleanup().
strmbase/transform: Use BaseFilter_Destroy().
qcap/avimux: Use BaseFilter_Destroy().
setupapi: Implement SetupDiRegisterCoDeviceInstallers().
setupapi: Add a basic implementation of SetupDiCallClassInstaller().
setupapi: Implement custom class installers in SetupDiCallClassInstaller().
setupapi: Call DIF_DESTROYPRIVATEDATA when deleting a device.
setupapi: Implement class co-installers in SetupDiCallClassInstaller().
setupapi: Implement device-specific co-installers in SetupDiCallClassInstaller().
qcap/smartteefilter: Use strmbase_filter_cleanup().
qcap/avico: Use strmbase_filter_cleanup().
qcap/audiorecord: Use strmbase_filter_cleanup().
qedit/samplegrabber: Use strmbase_filter_cleanup().
quartz/parser: Use strmbase_filter_cleanup().
setupapi: Implement SetupDiInstallDriverFiles().
setupapi: Process interface sections in SetupDiInstallDriverFiles().
setupapi: Implement SetupDiInstallDeviceInterfaces().
strmbase: Use an unsigned int for the GetPin() callback.
strmbase: Rename pfnGetPin to filter_get_pin.
strmbase: Remove unnecessary calling convention from the filter_get_pin() callback.
strmbase: Reimplement BaseFilterImpl_Release() using a destructor callback.
quartz/filesource: Use BaseFilterImpl_Release().
setupapi/tests: Clean up and expand tests for SetupCopyOEMInf().
setupapi: Check all INF files in SetupCopyOEMInf().
setupapi: Always fill output parameters in SetupCopyOEMInfA().
setupapi: Fix error handling in SetupInstallServicesFromInfSection().
Zhiyi Zhang (7):
gdi32/tests: Add D3DKMTOpenAdapterFromGdiDisplayName tests.
gdi32/tests: Add D3DKMTOpenAdapterFromHdc tests.
gdi32/tests: Add D3DKMTCloseAdapter tests.
gdi32/tests: Add D3DKMTCreateDevice tests.
gdi32/tests: Add D3DKMTDestroyDevice tests.
gdi32/tests: Add D3DKMTCheckVidPnExclusiveOwnership tests.
gdi32/tests: Add D3DKMTSetVidPnSourceOwner tests.
--
Alexandre Julliard
julliard(a)winehq.org