The Wine development release 5.22 is now available.
What's new in this release (see below for details):
- C runtime libraries converted to PE.
- Use fontconfig cache for faster startup.
- Video playback improvements.
- 3DES cipher support.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.22.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.22.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 5.22 (total 36):
16991 Cobra 11 Nitro: No video and music at game startup
28210 Rome Total War crash at start
30668 Motocross Madness 2 needs IAMMultiMediaStream::GetState() implementation
32613 Tom Clancy's Rainbow Six: Lockdown crashes after the intro videos (needs DxDiag_SoundDevices device child nodes present)
37396 Multiple applications need "sRGB Color Space Profile.icm" (Asperite, Word 2007, Word 2010)
38014 CCCP Insurgent v2007-01-01 crashes when querying system information via DxDiag
41081 Foldit puzzle 1266 crashes at start up
42731 stack overflow when .bat script variable has more than 256 characters
43513 Ys VI: The Ark of Napishtim - videos are not playing
44884 Call of Duty Modern Warfare Remastered: Crash after splash with error about Memory/Disk space
45421 Need for Russia does not play msvideo movies
45650 chromium 32-bit sandbox expects different syscall thunks depending on Windows version
46429 Multiple games need IV50 codec to play videos (Thief Gold, Thief II: The Metal Age, Commandos 2: Men of Courage)
46478 Wordpad is slow to start with large enough number of fonts in the system
47320 Black Ops 4 Unhandled Exception When Loading gdi32.dll
47374 Thronebreaker: The Witcher Tales rendering is messed up
47846 Age Of Empires III Crash after Intro
48171 Call of Duty: Modern Warfare (2019) exception
48212 Ys: The Oath in Felghana - movies don't play
48505 WinRAR x64 4.x/5.x installer crashes on unimplemented function GDI32.dll.ScriptGetCMap
49238 Oblivion: No sound/music
49376 Light of Altair demo has no text in options menu
49490 Overwatch installer fails with new wine prefix
49526 Anno 1800: Crashes on startup
49546 Titan Quest Anniversary Edition has no text with builtin d3dx9_42
49665 Wine 5.14 won't start, but 5.12 - do!
49844 Cannot create a new file on a mounted fat volume
49907 Fallout New Vegas crashes when leaving Doc Mitchell's house
50046 wineserver persistence after setup of a WINEPREFIX
50084 Wargaming.net Game Center can't install updates since wine 5.19
50101 Ghostrunner has no sound after intro movies when prefix is set to Win10
50110 Elite Dangerous Launcher (wine-5.21): AccessViolationException Protected Memory
50116 ODBC applications fail to create/configure system DSNs with builtin 'odbccp32' (SQLConfigDataSource must remap ODBC_xxx_SYS_DSN values for ConfigDSN)
50135 explorer.exe crashes when UseXRandR and UseXVidMode are specified to be disabled in registry
50140 "Guild Wars 2 Launcher" over time consumes all available memory
50149 Chromium/MS WebView2 depends on TEB->ReservedForOle 'apt_mask' value
----------------------------------------------------------------
Changes since 5.21:
Alex Henrie (2):
urlmon: Remove unused variable has_ipv6.
urlmon: Reimplement canonicalize_ipv6address on top of ntdll functions.
Alexandre Julliard (49):
crypt32: Move the GnuTLS code to a new Unix library.
crypt32: Move the root store initialization to the Unix library.
crypt32: Build with msvcrt.
crypt32: Use wide-character string literals.
crypt32: List allowed characters instead of relying on wctype properties.
wineboot: Fall back to initial hostname if the name lookup fails.
mscms: Implement profile tag functions without relying on liblcms2.
mscms: Move liblcms support to a new Unix library.
mscms: Build with msvcrt.
setupapi: Add a few more dirids.
setupapi: Add an extension to support file copies from module resources.
winebus.sys: Move winebus.inf into the module resources.
winehid.sys: Move winehid.inf into the module resources.
wineusb.sys: Move wineusb.inf into the module resources.
mscms/tests: Avoid depending on the exact Microsoft color profile.
mscms: Install the sRGB color profile.
glu32: No longer load the Unix libGLU.
glu32: Build with msvcrt.
kernelbase: Copy MulDiv() implementation instead of forwarding.
msvcrt: Reimplement _dclass() using musl code.
msvcrt: Reimplement _fpclass().
msvcrt: Reimplement _finite().
msvcrt: Reimplement _isnan().
msvcrt: Reimplement _dsign().
msvcrt: Reimplement _chgsign().
msvcrt: Import _copysign() from musl.
msvcrt: Import fabs() from musl.
msvcrt: Import ilogb() from musl.
msvcrt: Use the global musl copyright notice.
msvcrt: Add floating point classification macros.
msvcrt: Avoid long double type in $I10_OUTPUT().
jscript: Use the standard isfinite() function.
msvcrt: Use the msvcrt math functions internally.
msvcrt: Use the msvcrt allocation functions internally.
msvcrt: Use the msvcrt ctype functions internally.
msvcrt: Use the msvcrt atoi() function internally.
msvcrt: Use the msvcrt string functions internally.
msvcrt: Move math functions to a new Unix library.
msvcrt: Remove obsolete USE_MSVCRT_PREFIX defines.
msvcrt: Enable multi-thread locking by default.
include: Use gcc builtin for HUGE_VAL.
makefiles: Don't add a default crt lib for msvcrt dlls.
makefiles: Allow modules to link to their own import library.
msvcrt: Build with msvcrt headers.
msvcrt/tests: Remove the headers test.
msvcrt: Avoid msvcrt-specific types in the Unix library interface.
msvcrt: Remove some duplicate definitions from msvcrt.h.
msvcrt: Move the fenv_t definition to the public header.
msvcrt: Use the public standard type definitions where possible in msvcrt.h.
Alistair Leslie-Hughes (12):
include: Add interface IGetDataSource.
include: Add ICommandStream interface.
include: Add ICommandProperties interface.
include: Add IConvertType interface.
include: Add ICommandPrepare interface.
include: Add IRowsetChange interface.
include: Add IRowsetUpdate interface.
xaudio2_9: Add version resource.
msi: Correct Query for loading an image.
msado15/tests: Add ADORecordsetConstruction tests.
msado15: Support ADORecordsetConstruction in _Recordset.
msado15: Implement ADORecordsetConstruction get/put Rowset.
Andrew Eikum (1):
mmdevapi: Support older version of the AudioClientProperties structure.
Anton Baskanov (7):
amstream/tests: Add comments to AMDirectDrawStream::CompletionStatus tests.
amstream: Wait for presentation time in AMDirectDrawStream::Receive.
amstream: Implement AMDirectDrawStream::GetTimePerFrame.
amstream: Factor out the common code of MediaStreamFilter seeking tests.
amstream: Implement MediaStreamFilter::IsFormatSupported.
amstream: Implement AMMultiMediaStream::GetState.
amstream: Implement AMMultiMediaStream::GetTime.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Biswapriyo Nath (6):
include: Add D2D1_PROPERTY enumeration in d2d1_1.idl.
include: Add D2D1_SUBPROPERTY enumeration in d2d1_1.idl.
include: Add D2D1_POINT_DESCRIPTION structure in d2d1_1.idl.
include: Add ID2D1GdiMetafileSink interface in d2d1_1.idl.
include: Add ID2D1GdiMetafile interface in d2d1_1.idl.
include: Add ID2D1PrintControl interface in d2d1_1.idl.
Brendan Shanks (1):
winecoreaudio.drv: Only read 'length' bytes from received MIDIPackets.
Charles Davis (10):
msvcr90/tests: Test _get_current_locale()/setlocale() interaction.
msvcrt: Make locale name string refcounted for C locale.
msvcrt: Share locale names between threadlocinfo instances.
msvcrt: Copy LC_COLLATE codepage between threadlocinfo instances.
msvcrt: Share ctype tables between threadlocinfo instances.
msvcrt: Share lconv data between threadlocinfo instances.
msvcrt: Share __lc_time_data between threadlocinfo instances.
ucrtbase: Sync __lc_time_data definitions.
msvcrt: Swap the threadlocinfo pointers in setlocale().
msvcrt: Increment refcounts for all locale data in _get_current_locale().
Damjan Jovanovic (8):
ntdll: Implement get_thread_times() on FreeBSD.
ntdll: Improve character device type detection on FreeBSD and macOS.
ntdll: Fix wrong return values in get_dir_case_sensitivity_stat().
ntdll: FAT filesystems are called "msdosfs" on FreeBSD >= 5.
ntdll: Msdosfs was case-insensitive since FreeBSD 8 or even earlier.
ntdll: Treat smbfs as case-insensitive on FreeBSD.
ntdll: Document a few other filesystem case-sensitivity cases.
cmd.exe: Increase size of WCMD_HandleTildeModifiers() buffers to MAXSTRING.
Daniel Lehman (3):
tzres: Add Lord Howe Standard Time Zone.
tzres: Add Aus Central W. Standard Time Zone.
wine.inf: Add Dynamic DST for Australian time zones.
David Torok (1):
ntdll: Add NtDebugActiveProcess stub.
Derek Lesho (4):
winegstreamer: Require media source's IMFByteStream to be seekable.
winegstreamer: Implement IMFMediaSource::GetCharacteristics.
winegstreamer: Set MF_PD_DURATION on source's presentation descriptor.
mf/session: Call session_command_complete after NotifyTopology command.
Dmitry Timoshkov (6):
crypt32/tests: Fix test failures under newer Windows versions.
advapi32/tests: Fix compilation with PSDK compiler.
advapi32: Implement LsaGetUserName.
crypt32: Make helper for copying CMSG_CMS_SIGNER_INFO attributes more generic.
crypt32: Add support for CMSG_SIGNER_AUTH_ATTR_PARAM for a being decoded signed message.
crypt32: Add support for CMSG_ENCODED_MESSAGE for a being decoded signed message.
Esme Povirk (5):
windowscodecs: Move jpeg decoding to the unix lib.
windowscodecs: Start interface for unix encoders.
windowscodecs: Move PNG encoding to the unix lib.
windowscodecs: Fix memory leak in common decoder.
windowscodecs: Fix allocation in tiff_decoder_get_metadata_blocks.
François Gouget (5):
cryptnet: Fix the spelling of the x-pkcs7-certificates MIME type.
mshtml: Fix the spelling of the filter attribute.
gdi32/tests: Avoid a D3DKMTOpenAdapterFromHdc() crash on Windows 10 >= 2004.
mmdevapi/tests: Only warn about the console when it is used.
mmdevapi/tests: Work around Initialize() render breakage on Win 10.
Georg Lehmann (1):
winevulkan: Initialize Vulkan in native_vkGetInstanceProcAddrWINE.
Gerald Pfeifer (1):
msvcrt: #include <stdarg.h> from unixlib.c.
Gijs Vermeulen (2):
sapi: Add stub SpStream object.
sapi: Add stub SpResourceManager object.
Hans Leidekker (1):
odbccp32: Map system DSN requests to user DSN requests in SQLConfigDataSource.
Haoyang Chen (1):
gdi32: Avoid exceeding the actual bitmap height.
Huw D. M. Davies (5):
riched20: Pass a para or run ptr to the char ofs propagation function.
riched20: Use row ptrs in the page up/down handlers.
riched20: Use row and para ptrs in the cursor up/down handler.
riched20: Simplify search for the cell to delete.
riched20: Move the code to clear the cell bottom out of the loop.
Jacek Caban (25):
kernel32/tests: Add more console waiting tests.
server: Support waiting on console input handles.
server: Support waiting on screen buffer handles.
kernelbase: Wait directly on console handles.
server: Remove no longer needed get_console_wait_event request.
kernel32: Allow non-console handles in DuplicateConsoleHandle.
kernel32: Allow non-console handles in CloseConsoleHandle.
conhost/tests: Initialize whole OVERLAPPED struct in fetch_console_output.
conhost: Use console debug channel.
conhost/tests: Silence debug output in child process if std output is a console.
server: Support unbound console input device.
server: Support unbound console output device.
kernel32/tests: Add more unbound console handles tests.
kernelbase: Remove no longer needed console handle handling from create_process_params.
attrib: Use CP_ACP for non-console output encoding.
fsutil: Use CP_ACP for non-console output encoding.
hostname: Use CP_ACP for non-console output encoding.
kernelbase: Move Unicode conversion from WriteConsoleA to conhost.
server: Support writing directly on console handle.
kernel32: Import WriteFile from kernelbase.
makedep: Use short debug file names.
conhost/tests: Add more ReadConsoleA tests.
kernelbase: Move Unicode conversion from ReadConsoleA to conhost.
server: Allow reading directly from console handle.
kernel32: Import ReadFile from kernelbase.
Jeff Smith (4):
user32/tests: Change misleading variable name and type.
user32/tests: Simplification of some message broadcast tests.
user32/tests: Test message broadcast to parented windows.
user32: Only child windows should not receive broadcast messages.
Kevin Puetz (7):
ole32/tests: Fix flaky test in cowait_unmarshal_thread.
widl: Parse attribute custom(guid,expr).
widl: Write ATTR_CUSTOM into typelib.
widl: Allow adding the same custdata GUID multiple times in a typelib.
oleaut32/tests: Cover Get*CustData in test_dump_typelib.
oleaut32: Fix error handling/reporting in TLB_copy_all_custdata.
oleaut32: Load GetVarCustData from MSFT-format typelib.
Liam Middlebrook (1):
winevulkan: Update to VK spec version 1.2.160.
Michael Müller (2):
dxdiagn: Enumerate DirectSound devices and add some basic properties.
dxdiagn: Calling GetChildContainer with an empty string on a leaf container returns the object itself.
Michael Stefaniuc (31):
msidb: Use wide-char string literals.
icinfo: Use wide-char string literals.
start: Use wide-char string literals.
wintab32: Use wide-char string literals.
wineps.drv: Use wide-char string literals.
gdiplus: Use wide-char string literals.
gdi32/uniscribe: Use wide-char string literals.
mscms: Use wide-char string literals.
mscms/tests: Inline a simple string.
hidclass.sys: Use wide-char string literals.
inetcpl.cpl: Trace the actual AutoConfigURL and not the value name.
inetcpl.cpl: Use wide-char string literals.
mstask: Use wide-char string literals.
vbscript: Use wide-char string literals.
kernel32: Use wide-char string literals.
taskschd: Use wide-char string literals.
userenv: Use wide-char string literals.
oleview: Inline WCHAR strings of length 1.
winmm: Use wide-char string literals.
winmm/tests: Use a string literal instead of a char array.
dpnet: Use wide-char string literals.
dxdiagn: Use wide-char string literals.
comctl32: Use wide-char string literals.
riched20: Use wide-char string literals.
riched20: Use wide-char string literals in a struct initialization.
riched20: Use zero terminated wchar strings.
riched20: Use a wchar string literal for the array of neutral chars.
itss: Use wide-char string literals.
itss: Use zero terminated WCHAR strings.
imm32: Use wide-char string literals.
mshtml: Fix spelling of fuchsia.
Nikolay Sivov (61):
gdi32: Merge in Uniscribe functionality.
mf/tests: Add a test for copier buffer handling.
mf/evr: Accept samples when prerolling.
evr/mixer: Reuse full set of type attributes for output types.
evr/mixer: Add partial implementation of sample processing.
evr/presenter: Fix error handling on object creation.
user32: Remove usp10 from delayed imports.
evr/presenter: Create sample allocator on object creation.
evr/presenter: Add a helpe for input processing.
evr/presenter: Notify renderer host about mixer latency.
evr/presenter: Add sample allocator notification callback.
evr/allocator: Call user callback when sample is returned to the pool.
mf/evr: Handle sample requests from the mixer.
mf/evr: Handle user events from the presenter.
mf/session: Provide quality manager with presentation clock.
mf/session: Notify quality manager when setting new topology.
mf/session: Notify quality manager on input/output processing.
mf/session: Forward MEQualityNotify event to the quality manager.
oledb32: Use wide-char string literals.
evr/allocator: Fix released sample pointer check.
evr/allocator: Fix reference counting for returned samples.
mf/session: Query and initialize sample allocators for capable output nodes.
mf/session: Implement support for sinks that provide sample allocators.
mf/evr: Set display window to the presenter if it was specified on sink creation.
mfplat/tests: Remove a couple of failing tests.
wordpad: Fill font selection combobox with fully processed font list.
ole32/propstorage: Handle VT_I8/VT_UI8 when serializing properties.
dxva2: Add a semi-stub for VideoProcessBlt().
evr/presenter: Add IQualProp stub.
evr/presenter: Create a swapchain for given output window.
evr/presenter: Add IMFQualityAdvise stub.
evr/mixer: Fix method function name for consistency.
mf/tests: Use a helper for supported intefaces checks.
mf/evr: Add IMFQualityAdvise stub.
mfplat/buffer: Fix byte width set for d3d9 surface buffers.
comctl32: Use wide-char string literals.
mfplat/tests: Add a helper to check for supported interfaces.
include: Guard MFVideoNormalizedRect definition in mfmediaengine.idl.
mfplat: Add EVRConfig_* attributes to tracing.
evr/sample: Reset attributes, timestamps, and flags on ::Clear().
evr/mixer: Fix output filling behaviour regarding sample properties.
evr/tests: Add more tests for supported service interfaces.
evr/presenter: Expose all interfaces for MR_VIDEO_RENDER_SERVICE.
evr/mixer: Set timestamp and duration for output samples.
evr/mixer: Improve GetService() handling of unsupported interfaces/services.
evr/presenter: Fix error code for unsupported services.
evr/presenter: Add IDirect3DDeviceManager9 as a supported interface.
evr/tests: Presenter should support IMFQualityAdviseLimits.
evr/presenter: Implement sample presenting functionality.
xmllite/reader: Use wide-char string literals.
xmllite/writer: Use wide-char string literals.
mfplat: Use wide-char string literals.
mf/evr: Add support for per-stream attributes.
evr/tests: Relax allocator initialization test.
mf/evr: Derive stream attributes from mixer input attributes.
mf/samplegrabber: Implement IMFRateSupport.
combase: Set a flag on thread id initialization.
combase: Update thread flags when entering/leaving apartments.
mf/session: Shutdown and release presentation clock on session shutdown.
mf/session: Keep a reference to the original activation object when binding sink nodes.
mf/session: Shutdown current topology when clearing presentation.
Paul Gofman (12):
crypt32: Fix adding trusted roots to store.
wininet: Correctly return error status from InternetSetFilePointer() stub.
mshtml: Check for EVENTID_LAST in ensure_doc_nsevent_handler().
bcrypt: Prevent gnutls from using system priority file.
crypt32: Prevent gnutls from using system priority file.
secur32: Prevent gnutls from using system priority file.
ws2_32: Force adding completion for error status in WS2_ConnectEx().
user32: Avoid holding display_dc_section when creating display DC.
directmanipulation: Return S_OK form viewport_SetViewportOptions stub.
ntdll: Avoid overwriting parameters with context in call_user_apc_dispatcher() on x86.
msvcrt: Save and restore rounding mode in fegetenv() / fesetenv().
ntdll: Fix SMT CPU flag reporting.
Piotr Caban (7):
ucrtbase: Add support for utf8 codepage in setlocale.
msvcrt: Mark old_locinfo as const in create_locinfo.
msvcrt: Call set_lc_locale_name in update_threadlocinfo_category.
msvcrt: locinfo->lc_name should be guarded by lc_category->wrefcount.
msvcrt: Simplify category checks in create_locinfo.
msvcrt: Lock global locale in _get_current_locale.
msvcrt: Don't overwrite threadmbcinfostruct structure in _setmbcp.
Robert Wilhelm (2):
vbscript: Allow keywords to be used as property name.
vbscript: Support properties with parameters.
Rémi Bernon (21):
bcrypt: Implement 3DES cipher support.
msvcrt: Make locale and thread helper functions CDECL.
msvcrt: Introduce noalloc current locale lookup helpers.
msvcrt: Pass temporary locale to MSVCRT__towlower_l.
msvcrt: Pass temporary locale to MSVCRT__towupper_l.
gdi32: Index font families by name in an rbtree.
gdi32: Rewrite find_face_from_filename using the rbtree.
gdi32: Rewrite find_any_face using the rbtree.
winemenubuilder: Only extract icons when association changed.
widl: Support repetition for some attributes.
widl: Restrict some keywords to WinRT mode only.
widl: Prefer mangled name over typedef in WinRT mode.
gdi32: Ignore Type 1 fonts in fontconfig enumeration.
gdi32: Move FreeType face creation to AddFaceToList.
gdi32: Load font list directly from fontconfig cache.
gdi32: Lazily create and cache fontconfig patterns.
ntdll: Stub ThreadEnableAlignmentFaultFixup info class.
include: Fix DPFLTR_MASK value to 0x80000000.
ntdll/tests: Add tests for DbgPrint* functions.
ntdll: Reimplement DbgPrint* using DBG_PRINTEXCEPTION_C.
ntdll: Raise debug exceptions when invalid heap is destroyed.
Sven Baars (5):
gdi32/tests: Fix a compiler warning.
d3dx9: Don't release textures when D3DXSPRITE_DO_NOT_ADDREF_TEXTURE is specified.
d3dx9: Fully initialize the glyph position.
d3dx9: Implement clipping of glyphs in ID3DXFont_DrawText.
d3dx9: Remove unreachable DT_SINGLELINE handling from ID3DXFont_DrawText.
Zebediah Figura (29):
quartz: Don't hold an extra reference in async_run_cb().
quartz/tests: Test releasing the graph while waiting for an asynchronous paused -> running transition.
msi: Use the global is_wow64 variable in custom_start_server().
msi/tests: Test the "VersionNT" property.
quartz/tests: Test adding and removing filters while the graph is running.
quartz: Don't stop the filter in IFilterGraph::RemoveFilter().
quartz/tests: Store a testfilter pointer inside the testpin structure.
quartz/tests: Add more tests for interaction between pin connection and graph state.
quartz: Immediately return failure from IFilterGraph::RemoveFilter() if IPin::Disconnect() fails.
makefiles: Disable implicit rules.
quartz/tests: Pass an IMediaControl to some functions.
winegstreamer: Don't fail state change methods if the sink pin is not connected.
winegstreamer: Don't fail parser_init_stream() if a source pin is not connected.
wineqtdecoder: Do not fail state change methods if source pins are not connected.
quartz: Commit the allocator directly.
amstream/tests: Commit the allocator directly.
strmbase: Remove no longer used allocator commit helpers.
strmbase: Get rid of strmbase_pin_get_media_type().
quartz/tests: Enable no longer failing tests for IBasicVideo::GetCurrentImage().
strmbase: Forbid disconnecting the sink if the filter is not stopped.
quartz/tests: Test (dis)connecting while not stopped.
qasf/tests: Test (dis)connecting while not stopped.
qcap/tests: Test (dis)connecting while not stopped.
qedit/tests: Test (dis)connecting while not stopped.
quartz/avidec: Don't send ICM_DECOMPRESS_BEGIN or ICM_DECOMPRESS_END messages if the source is disconnected.
quartz/tests: Add some tests for AVI decoder sample processing.
quartz/avidec: Don't copy the media time to the output sample.
quartz/tests: Add some tests for streaming events on the AVI decoder.
quartz/tests: Add some tests for flushing on the DirectSound renderer.
Zhiyi Zhang (3):
user32/tests: Pass a struct DEVMODEA pointer to expect_dm() for monitor tests.
winex11.drv: Adjust the priority of NoRes display settings handler to 1.
winex11.drv: Clarify parent in struct x11drv_win_data comments.
Ziqing Hui (3):
windowscodecs: Correctly set pixel format of uncompressed DDS with extended header.
d3dx10/tests: Add tests for D3DX10GetImageInfoFromResource{A, W}().
d3dx10: Implement D3DX10GetImageInfoFromResource{A, W}().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 5.0.3 is now available.
What's new in this release (see below for details):
- Various bug fixes
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0.3.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.0.3 (total 44):
7102 Microsoft Word 6.0 for Windows: copy/paste causes crash on unimplemented function ole2.dll16.OLEISCURRENTCLIPBOARD
26171 BVRP classic phone tools installer reports error 'Insufficient buffer' when trying to install print processor (AddPrintProcessorA stub should be symmetric to AddPrintProcessorW)
35903 CED1401 USB function driver fails to install (setupapi should use the original INF path as a default source path when copying files)
38020 Foxit Reader 6.12 crashes on unimplemented function msasn1.dll.ASN1_CreateModule during validation of digital signatures
44127 Metal Gear Solid V: Ground Zeroes doesn't launch
44306 Visual Novel "A Clockwork Ley-Line: The Borderline of Dusk" doesn't work with d3d9
44925 Multiple kernel drivers require 'ntoskrnl.exe.ExCreateCallback' stub to return STATUS_SUCCESS (StarForce v3, TrackMania Nations ESWC. Denuvo Anti-Cheat)
45536 Total Commander 9.x crashes on unimplemented function usp10.dll.ScriptGetFontAlternateGlyphs when Wine is not detected via named export 'ntdll.wine_get_version'
46726 Dirt Rally 2.0 does not use embedded CA cert
46818 PS4 Remote Play 2.x (.NET 4.x app) crashes on Sign-In PlayStation network (mshtml:HTMLDocument_get_cookie should not fail for 'about:blank')
48256 pwsh.exe (from Powershell-6.*) crashes after 20~50 sec: System.EntryPointNotFoundException: Unable to find an entry point named 'FreeAddrInfoEx' in DLL 'ws2_32.dll'.
48405 Battle.Net Launcher Beta crashes with Windows version set to 10
48668 rFactor2 - Physics thread slower on multiplayer mode
48779 Secret Files 3 crashes at launch (needs d3dx9_skin_info_Clone)
48938 Ashes of the Singularity: Escalation crashes on start
48959 S-Gear 2 installer does not recognize wine as Windows 10
49147 Microsoft Teams 1.3.x crashes on unimplemented function setupapi.dll.CM_Get_Device_Interface_AliasW
49178 Spitfire Audio 3.x crashes on start due to 'WTSQuerySessionInformationA' stub not initializing out parameters
49179 winetest.exe fails to run on windows arm (surface rt / armv7): procedure entry point NtCurrentTeb could not be located in the dynamic link library C:\Users\User\Desktop\winetest.exe
49189 Auslogics Registry Cleaner 8.x crashes and shows "OLE error 80004001" (SetCurrentProcessExplicitAppUserModelID stub needs to return S_OK)
49221 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes due to unhandled emulation of MSR register reads related to CPU / virtualization features (returning zero value is sufficient)
49257 Avast Free Antivirus 20.3 crashes before installing due to unimplemented function rpcrt4.dll.RpcIfInqId
49264 MultiSync installation crashes (needs _Command::get/put_CommandText)
49272 MultiSync installation crashes (msado15.dll needs {b196b284-bab4-101a-b69c-00aa00341d07} IConnectionPointContainer)
49281 FinanceExplorer crashes inside msado15.dll
49289 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExRegisterCallback
49291 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes on unimplemented function ntoskrnl.exe.ExUnregisterCallback when unloading
49303 MultiSync installation crashes (msado15.dll needs IConnectionPointContainer::FindConnectionPoint)
49322 cmudpro334 shows error on unimplemented ITaskbarList::SetOverlayIcon()
49352 JamKazam 1.0.3744 msi installer fails at 'InstallFiles' action (incorrect handling of administrative image with compressed source files)
49372 winedump crashes for sltg typelib files
49379 Altium Designer 20 crashes on missing d2d1.dll.D2D1CreateDevice
49388 MultiSync installation crashes (msado15.dll needs IConnectionPoint::Advise)
49439 Printing and scanning software for Brother L2540DW fails to install (VBScript parser can't handle a "case else" statement with a comment and no statements to execute)
49460 where.exe is missing in wine (affects Waves Central )
49487 ListView control custom draw in report view shows blank item if handler clears uItemState CDIS_SELECTED flag
49488 uninitialized bytes in server call from ntdll/server_write_file
49570 LVM_FINDITEM should do case-insensitive test for item text
49620 Tableau Desktop fails to install
49656 SAP GUI - Ws2_32.getaddrinfo crashes with non-standard service (/etc/services)
49662 Wine Internet Explorer crashes on https://[2600::]/
49664 FrostyModManager v1.0.5.9 crashes on launch
49666 Red Dead Redemption 2 requires HEAP flags offset to match Windows
49685 Gigabyte "EasyTune" service crashes in wbemprox
----------------------------------------------------------------
Changes since 5.0.2:
Aaro Altonen (8):
msado15: Implement _Command get/put CommandType.
msado15: Implement _Command get/put CommandText.
msado15: Add IConnectionPointContainer stub to _Connection.
msado15: Add IConnectionPoint stub to _Connection.
msado15: Implement IConnectionPointContainer_FindConnectionPoint.
include: Add ConnectionEventsVt definition.
msado15/tests: Add tests for IConnectionPoint::Advise/Unadvise.
msado15: Implement IConnectionPoint::Advise/Unadvise.
Akihiro Sagawa (1):
documentation: Update Japanese translation.
Alex Henrie (2):
urlmon: Call parse_host in combine_uri to set related parse_data fields.
urlmon: Fix null pointer dereference in process_hook_section (Coverity).
Alexandre Julliard (1):
setupapi: Support a WineSourceDirs section to copy files from the Wine build or data dir.
Alistair Leslie-Hughes (1):
msado15: Implement _Connection get/put ConnectionString.
Anton Baskanov (1):
amstream: Don't crash if parent is NULL in AMAudioStream:: and AMDirectDrawStream::GetMultiMediaStream.
Brendan Shanks (5):
winhttp: Treat a partial certificate chain as having an unknown/invalid CA.
whoami: Add semi-stub application to display username.
winevulkan: Don't initialize the Vulkan driver in DllMain().
ntdll: Pad HEAP structure so 'flags' offset matches recent Windows.
winemac.drv: Fix warnings for constants deprecated by macOS 10.14.
Changping Yu (2):
kernel32/tests: Add test for thread enumeration order in toolhelp.
kernel32: Adjust thread creation insertion order.
Derek Lesho (1):
msctf: Always provide a context when from GetBase/Top.
Dmitry Kislyuk (1):
vbscript: Parse empty CASE ELSE clause.
Dmitry Timoshkov (1):
winedump: Fix parsing of SLTG typelib created with some old tool.
Gijs Vermeulen (5):
wtsapi32: Implement WTSQuerySessionInformationA.
d3dx9: Implement ID3DXSkinInfo_Clone().
amstream: Don't crash on NULL ddraw in IDirectDrawMediaStream::GetDirectDraw().
wbemprox: Set obj to NULL on error in get_object().
wbemprox: Don't crash in IWbemClassObject::Put() when called with empty class object.
Hans Leidekker (3):
msado15: Fix NULL pointer dereference in close_recordset.
msi: Fix installing from administrative image with compressed source files.
ws2_32: Avoid a crash in WS_getaddrinfo when the specified service doesn't exist.
Jacek Caban (3):
winnt.h: Provide inline NtCurrentTeb implementation for mingw arm builds.
mshtml: Return NULL in IHTMLDocument2::get_cookie if InternetGetCookieExW failes.
urlmon: Remove unused flags argument from parse_host.
Jefferson Carpenter (1):
ntoskrnl.exe: Set reserved to 0 in pnp WM_DEVICECHANGE broadcast.
Jiajin Cui (1):
gdiplus: Fix crash if failed to create bitmap.
Julian Rüger (1):
documentation: Update German translation.
Louis Lenders (7):
usp10: Add stub for ScriptGetFontAlternateGlyphs.
shcore: Return S_OK in SetCurrentProcessExplicitAppUserModelID.
ws2_32: Add FreeAddrInfoEx.
setupapi: Add stub for CM_Get_Device_Interface_Alias{A,W}.
explorerframe: Return S_OK in ITaskbarList::SetOverlayIcon.
where.exe: Add stub program.
sc.exe: Fake succes for the SdSet argument.
Matteo Bruni (3):
wined3d: Add GPU information for AMD Raven Ridge.
user32: Add missing WM_WINE_CLIPCURSOR message type name.
user32: Make sure update_window_state() is always executed on the owner thread.
Nikolay Sivov (7):
d2d1: Implement D2D1CreateDevice().
dwrite: Implement IDWriteFont::Equals().
dwrite: Add partial implementation for IDWriteFontFace5::Equals().
comctl32/listview: Rename helper argument.
comctl32/listview: Use case-insensitive compare in LVM_FINDITEM.
comctl32/listview: Do no alter custom draw text colors between notification stages.
winedbg: Double dll name buffer size for unimplemented function exception.
Paul Gofman (7):
ntoskrnl.exe: Return STATUS_SUCCESS from ExCreateCallback() stub.
ntoskrnl.exe: Return zero for unknown msr registers.
ntoskrnl.exe: Add stub for ExRegisterCallback() function.
ntoskrnl.exe: Add stub for ExUnregisterCallback() function.
ws2_32: Optimize interface_bind_check() by caching adapter addresses.
winebuild: Correct hotpatching prologue in import thunks for x86_64.
shell32: Only consider copy operation multidest if the number of dst files is greater than one.
Piotr Caban (1):
msasn1: Fix buffer allocations.
Rémi Bernon (1):
kernel32: Catch process creation breakpoint exceptions.
Vijay Kiran Kamuju (12):
ole2.dll16: Add stub OleIsCurrentClipboard function.
winspool.drv: Implement AddPrintProcessorA via AddPrintProcessorW.
include: Add related ASN1encoding_s and ASN1decoding_s structs.
msasn1: Add ASN1_CreateModule stub implementation.
msasn1/tests: Add initial tests.
msasn1: Implement ASN1_CreateModule function.
msasn1: Implement ASN1_CloseModule function.
msasn1: Add partial implementation of ASN1_CreateEncoder.
msasn1: Add stub for ASN1_CloseEncoder function.
msasn1: Add partial implementation of ASN1_CreateDecoder.
msasn1: Add stub for ASN1_CloseDecoder function.
msasn1: Add stub for ASN1_Decode function.
Zebediah Figura (6):
setupapi: Reset the source file pointer when comparing files.
setupapi: Store the original INF file path in a .pnf file.
setupapi: Use the original INF source path if possible when copying files.
winecfg: Set the Current{Major, Minor}VersionNumber registry values.
wbemprox: Return WBEM_E_NOT_FOUND from get_object() if no object is available.
d3dcompiler: Iterate through the instruction list in reverse in free_instr_list() (Valgrind).
Zhiyi Zhang (2):
rpcrt4: Implement RpcIfInqId().
dwmapi: Check NULL parameter in DwmIsCompositionEnabled().
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 5.21 is now available.
What's new in this release (see below for details):
- GDI32 library converted to PE.
- More fixes for windowless RichEdit.
- A number of timezone updates.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.21.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.21.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 5.21 (total 24):
22797 'Sample1_DLLEmbedding' example from BoxedApp SDK v3.3.x (native API application virtualization scheme) crashes (needs hookable NtXXXSection API entries / NT syscalls)
25834 Adobe Reader X and XI cannot open in Protected Mode due to advapi32.dll CreateRestrictedToken being a stub
33072 dxdiag: can't retrieve network info
33162 Acrobat Reader 11 crashes on start (native API application virtualization, NtProtectVirtualMemory removes execute page protection on its own code)
45349 Multiple applications and games crash due to missing support for 64-bit syscall thunks (StreetFighter V, World of Warcraft)
45550 League of Legends 8.15+ anticheat fails due to incorrect implementation of NtQuerySystemInformation(SystemModuleInformation)
45666 Multiple Riot Games' anti-cheat / protection schemes need implementation of NtQuerySystemInformation 'SystemModuleInformationEx' info class (League of Legends 8.15+, Valorant/Vanguard)
46373 Unknown game crashes in unimplemented function msvcr80.dll._strnset_s in 1.6.2
46870 League of Legends 8.12+ fails to start a game in Vista+ mode (anticheat engine, SystemExtendedProcessInformation)
46967 GOG Galaxy doesn't run in virtual desktop
48203 Far Manager 3 broken appearance
48204 Wineconsole running Far File Manager 3 crashes as soon as you try to resize its window
48715 A Wolf RPG game freezes on map transition
49298 Path of Exile crashes when switching to Vulkan Renderer on RADV. Switching works in proton.
49449 Terraria Mobile Server (.NET 4.x) crashes with System.NotImplementedException NATUPNPLib.IUPnPNAT.get_StaticPortMappingCollection()
49610 mu online crashes after login
49739 Microsoft Flight Simulator needs netutils.dll and srvcli.dll
49785 Linking of some objects sometimes fails with undefined reference to windowscodecs GUIDs
49813 Implement debugging feedback extensions (VK_EXT_debug_utils/VK_EXT_debug_report) to forward data to Linux impl
50038 IWbemClassObject::Get method with wszName = NULL crashes inside wbemprox
50039 Wine 5.18+ fails build on Ubuntu 18.04 with libwine.so Makefile symbolic link
50049 Fallout 76 opens black screen then crashes on start
50050 Wine 5.20 build fails on Ubuntu 16.04
50077 .NET 3.5SP1 installer depends on PEB->Reserved[1] / AtlThunkSListPtr32 being 0 or 1
----------------------------------------------------------------
Changes since 5.20:
Aaron Hill (2):
qmgr/tests: Fix issues with handling of transient errors.
qmgr/tests: Test registering an IBackgroundCopyCallback2.
Akihiro Sagawa (1):
gdi32: Fix font rendering issue when child font is used.
Alexandre Julliard (54):
gdi32: Set the font file name directly at creation time.
gdi32: Move the text metrics cache into the generic font structure.
gdi32: Move the kerning pairs data into the generic font structure.
gdi32: Move the fonts directory helper functions out of freetype.c.
gdi32: Move the Add/RemoveFontResource() implementation out of freetype.c.
gdi32: Move the AddFontMemResourceEx() implementation out of freetype.c.
gdi32: Move the loading of system fonts out of freetype.c.
gdi32: Move the loading of registry fonts out of freetype.c.
gdi32: Move the loading of filesystem fonts out of freetype.c.
gdi32: Add a helper to load a font without using a face.
gdi32: Allocate the backend font data in the load_font() helper.
gdi32: Move the CreateScalableFontResource() implementation out of freetype.c.
gdi32: Move part of the GetFontUnicodeRanges() implementation out of freetype.c.
gdi32: Move part of the GetCharWidthInfo() implementation out of freetype.c.
gdi32: Move the GSUB table support out of freetype.c.
gdi32: Store child font objects directly on the child font list.
gdi32: Move the glyph index mapping for GetGlyphOutline() out of freetype.c.
gdi32: Add a helper to get the FreeType face and cleanup private data.
winebuild: Set PE timestamps to a hash of the file name.
gdi32: Move the font substitution list out of freetype.c.
gdi32: Move the font family list out of freetype.c.
gdi32: Move the face data structure out of freetype.c.
gdi32: Move the loading of font replacements out of freetype.c.
gdi32: Make the family replacement point to the family object.
gdi32: Move the font link support out of freetype.c.
gdi32: Move the creation of the child font list out of freetype.c.
gdi32: Move the dumping of the font list out of freetype.c.
gdi32: Add a helper function to create a font from a face.
gdi32: Move the font enumeration out of freetype.c.
gdi32: Move the default AA flags handling out of freetype.c.
gdi32: Move the font list reordering out of freetype.c.
gdi32: Add a separate backend function to load the font list.
gdi32: Move the font cache out of freetype.c.
gdi32: Add a helper function to create a face.
gdi32: Update the Windows font registry keys only when they have changed.
gdi32: Move the remove_font() function out of freetype.c.
gdi32: Add some helper functions for font matching.
gdi32: Move the handling of font family fallbacks out of freetype.c.
gdi32: Move the rest of the font matching code out of freetype.c.
gdi32: Move the SelectFont() implementation out of freetype.c.
gdi32: Make a few definitions private to font.c.
gdi32: Don't abort enumeration if a font fails to load.
gdi32: Store scale as an integer.
gdi32: Use FT_MulDiv() instead of the kernel32 function.
gdi32: Use ntdll functions for codepage conversions.
gdi32: Use ntdll functions for DOS<->Unix path conversions.
gdi32: Use ntdll functions for locale support.
gdi32: Use ntdll functions for heap allocations.
gdi32: Move FreeType support to a new Unix library.
gdi32: Move OSMesa support to the Unix library.
gdi32: Build with msvcrt.
include: Fix setjmp() support with 32-bit ucrtbase.
gdi32: Use wide-character string literals.
gdi32: Initialize the font gamma ramp with the other font options.
Alistair Leslie-Hughes (5):
include: Add missing DBPARAM* types and enums.
include: Add more DBGUID_* defines.
srvcli: Add stub dll.
netutils: Add stub dll.
include: Add DBPROPSTATUSENUM enum values.
Anton Baskanov (5):
amstream: Wait for the state transition to complete in AMMultiMediaStream::SetState.
amstream: Handle AMMSF_NOCLOCK flag in AMMultiMediaStream::OpenFile.
amstream: Release filter critical section before calling upstream seeking methods.
amstream: Implement MediaStreamFilter::WaitUntil.
amstream: Implement MediaStreamFilter::Flush.
Aurimas Fišeras (3):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Austin English (10):
d3d8thk: Add stub dll.
d3dim700: Add stub dll.
ddrawex: Add version resource.
dpwsockx: Add version resource.
dx8vb: Add version resource.
ksproxy.ax: Add version resource.
ksuser: Add version resource.
qdvd: Add version resource.
strmdll: Add version resource.
dpnsvr: Add version resource.
Biswapriyo Nath (1):
mf/evr: Initialize variables which are checked conditionally.
Brendan Shanks (4):
ntdll: Update the PEB structures for newer Windows versions.
dbghelp: Use PEB->CloudFileFlags instead of PEB->Reserved for debug base address.
ntdll: Rename PEB->Reserved[1] to AtlThunkSListPtr32.
include: Force stack alignment on x86_64 with Clang.
Damjan Jovanovic (1):
oleaut32: IFont never had an IPersistStreamInit interface.
Daniel Lehman (11):
wine.inf: Fix SA Eastern Standard Time Zone info.
tzres: Add Tocantins Standard Time Zone.
tzres: Add Magallanes Standard Time Zone.
tzres: Add Saint Pierre Standard Time Zone.
msvcr110/tests: Use macro to get function address.
msvcr110: Add _Context::_CurrentContext.
msvcr120/tests: Add _Context::_CurrentContext tests.
concrt140/tests: Add _Context::_CurrentContext tests.
wine.inf: Update Azerbaijan Time Zone.
wine.inf: Update Caucasus Time Zone.
wine.inf: Update Pacific SA Time Zone.
Derek Lesho (12):
winegstreamer: Insert videoconvert into decoded-video streams.
winegstreamer: Insert audioconvert into decoded audio streams.
winegstreamer: Replace gst_pad_get_current_caps with gst_pad_query_caps.
winegstreamer: Implement IMFMediaSource::CreatePresentationDescriptor.
mfreadwrite: Abort ReadSample when unable to request any samples.
winegstreamer: Implement IMFMediaSource::Start.
winegstreamer: Implement IMFMediaStream::RequestSample.
mfmediaengine: Provide the partial topology to the media session.
mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_CANPLAY upon MF_TOPOSTATUS_READY.
mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_PLAYING upon MESessionStarted.
mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_ENDED upon MESessionEnded.
winegstreamer: Implement IMFMediaStream::GetMediaSource.
Eric Kohl (1):
widl: Add the [allocate] acf attribute.
Esme Povirk (2):
windowscodecs: Move TIFF decoding to unix lib.
avifil32: Only add the first stream reference to the parent.
François Gouget (1):
oleacc/tests: Fix the window name and keyboard shortcut tests.
Georg Lehmann (5):
winevulkan: Implement VK_EXT_debug_report.
winevulkan: Don't use comments for object types.
winevulkan: Remove comment from VkEnumValue.
winevulkan: Implement VK_EXT_debug_marker.
winevulkan: Enable VK_EXT_validation_features and VK_EXT_validation_flags.
Gijs Vermeulen (8):
quartz/vmr9: Don't expose IVMRFilterConfig9 from the VMR7.
quartz/vmr9: Don't expose IVMRMonitorConfig9 from the VMR7.
quartz/vmr9: Don't expose IVMRMonitorConfig9 in renderless mode.
quartz/vmr9: Don't expose IVMRFilterConfig from the VMR9.
quartz/vmr9: Don't expose IVMRMonitorConfig from the VMR9.
include: Add INetworkEvents and some enums to netlistmgr.idl.
quartz: Implement IVMRAspectRatioControl9.
netprofm: Create a connection point object for INetworkEvents.
Giovanni Mascellani (3):
d2d1: Implement D2D1SinCos().
d2d1: Implement D2D1Tan().
d2d1: Implement D2D1Vec3Length().
Hans Leidekker (10):
msi: Use wide character string literals in action.c.
msi: Use wide character string literals in dialog.c.
msi: Use wide character string literals in msi.c.
msi: Use wide character string literals in package.c.
msi: Use wide character string literals in registry.c.
msi: Use wide character string literals in classes.c.
msi: Use wide character string literals in the remaining files.
msi/tests: Use wide character string literals.
wbemprox/tests: Test more sound device properties.
jscript: Fix allocation size in BindFunction_call.
Huw D. M. Davies (45):
riched20: Pass a row ptr to the cursor from row function.
riched20: Use row ptrs in the cursor from virtual co-ords function.
riched20: Use row and para helpers for the selection function.
riched20: Use row helpers for Home/End key handling.
riched20: Use row ptrs in the cursor to co-ordinates function.
riched20: Use row and para helpers in the extend selection function.
riched20: Use a run helper in the delete text function.
riched20: Use a row ptr in the run drawing function.
riched20: Use row and para ptrs in the ensure visible function.
riched20: Fix the struct size check in the para fmt retrieval function.
riched20: Pass para ptrs to the various para selection functions.
riched20: Use a helper function to find the first row.
riched20: Use a helper to find the next run.
riched20: Use the paragraph from the cursor.
riched20: Use a helper to retrieve the first run.
riched20: Use para and run ptrs in the table deletion function.
riched20: Use cell ptrs in the append table row function.
riched20: Use cell ptrs in the table tab handler.
riched20: Use paragraph ptrs in the table move from row start function.
riched20: Remove the table corruption check function.
riched20: Use a paragraph ptr in the stream in function.
riched20: Use paragraph ptrs in the selection link check function.
riched20: Use paragraph ptrs in the enter handler.
riched20: Use a run ptr in the rtf row handler.
riched20: Use paragraph and run ptrs in the find text function.
riched20: Use paragraph ptrs in the WM_CHAR handler.
riched20: Use a run ptr in the link notify function.
riched20: Use para and row ptrs in the EM_GETFIRSTVISIBLELINE handler.
riched20: Return a row ptr from the row from row number function.
riched20: Use run ptrs in the EM_GETLINECOUNT handler.
riched20: Use row ptrs in the EM_GETLINELENGTH handler.
riched20: Use run ptrs in the text retrieval function.
riched20: Remove unused ME_RowStart().
riched20: Use para and row ptrs in the row number from offset function.
riched20: Use a paragraph ptr in the clipboard get text function.
riched20: Use a paragraph ptr in the rtf writer function.
riched20: Use a cell helper in the split paragraph undo function.
riched20: Return a row ptr from the row creation function.
riched20: Use para_in_table() instead of IsInTable().
riched20: Pass paragraph ptrs to the para marking function.
riched20: Use more cell helpers in some of the table functions.
riched20: Use cell ptrs in the paragraph splitting and joining functions.
riched20: Use cell ptrs to link the cells.
riched20: Add next / prev run from cursor helpers.
riched20: Use paragraph and run ptrs in the cursor structure.
Jacek Caban (1):
mshtml: Ignore attempts to set read only builtin properties in IE9+ mode.
Jan Sikorski (1):
wininet: Prevent use after free in logging.
Matteo Bruni (1):
winemac: Update the stored display settings immediately.
Michael Stefaniuc (21):
wmic: Use wide-char string literals.
wmiutils: Use wide-char string literals.
wmp: Use wide-char string literals.
sapi: Zero terminate some WCHAR strings.
powrprof: Use wide-char string literals.
sapi/tests: Use wide-char string literals.
msxml3/tests: Use wide-char string literals.
appwiz.cpl: Use wide-char string literals.
appwiz.cpl: Use zero terminated wide-char strings.
serialui: Use wide-char string literals.
mshtml: Use wide-char string literals in struct initialization.
wscript: Use wide-char string literals.
wscript: Zero terminate the host version string to avoid random garbage.
wscript: Use a zero terminated wchar string.
winedevice: Don't make a variable const just to cast the const away.
winedevice: Use wide-char string literals.
svchost: Use wide-char string literals.
svchost: Inline a simple string.
pdh: Use wide-char string literals.
mpr: Use wide-char string literals.
jscript: Use wide-char string literals in struct initialization.
Myah Caron (3):
include: Introduce MEM_EXTENDED_PARAMETER.
ntdll: Stub NtAllocateVirtualMemoryEx.
kernelbase: Implement VirtualAlloc2.
Nikolay Sivov (29):
evr/mixer: Add IMFClockStateSink stub.
mf/evr: Notify mixer and presenter on clock state changes.
mf/evr: Implement OnClockSetRate().
mfplat: Add IMFGetService stub for 2D memory buffer.
evr: Implement sample allocator.
include: Remove confusing comment.
include: Add IMFVideoSampleAllocatorEx.
evr/tests: Add sample allocator test with surface-backed buffers.
mfplat: Implement MFCreateDXSurfaceBuffer().
evr/allocator: Use different buffer implementation for surface buffers.
evr: Add MFCreateDXSurfaceBuffer() forward.
evr/presenter: Set mixer output type on type negotiation.
mf/copier: Move sample copier to its own file.
mf/evr: Pass incoming samples to the mixer.
mf/evr: Notify presenter on new input.
mfplat: Consider first type entry when returning major type for stream descriptors.
mfreadwrite/tests: And some more tests for ReadSample() and failing requests.
mfplat: Implement MFFrameRateToAverageTimePerFrame().
mfmediaengine: Keep "preload" property.
mfplat: Implement MFMapDXGIFormatToDX9Format().
mfmediaengine: Add video output topology branch.
mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_FIRSTFRAMEREADY on first video sample.
mfmediaengine: Implement OnVideoStreamTick().
mfmediaengine: Implement GetNativeVideoSize().
evr/presenter: Create dedicated thread to handle presentation time.
evr/presenter: Implement GetCurrentMediaType().
mfmediaengine: Implement GetVideoAspectRatio().
mfmediaengine: Handle shutdown state in GetNativeVideoSize().
evr/sample: Use separate thread for tracking notifications.
Olivier F. R. Dierick (1):
windowscodecs: Include system header png.h before Windows headers.
Paul Gofman (3):
kernel32: Align stack in get_proc_address_wrapper().
kernelbase: Align stack in GetProcAddress() on x64.
kernel32: Add string for E_FAIL error.
Pengpeng Dong (1):
wbemprox: Implement Win32_SoundDevice.{DeviceID, PNPDeviceID}.
Robert Wilhelm (1):
vbscript: Allow keywords to be used as function name.
Rémi Bernon (4):
mscoree/tests: Test invalid assembly paths in registry.
mscoree/tests: Test querying interfaces with generated GUID.
mscoree: Fallback to assembly name if codebase path is invalid.
gdi32: Implement GdiDllInitialize stub.
Sergei Trofimovich (1):
aclocal.m4: Fix compatibility with upcoming autoconf-2.70.
Vitaly Lipatov (1):
ncrypt: Add NCryptIsKeyHandle stub.
Will Mainio (2):
msvcrt: Fix scanf with dashes in scanset.
msvcrt/tests: Add scanf tests for dashes in scanset.
Zebediah Figura (6):
ntdll: Stub NtQuerySystemInformation(SystemExtendedProcessInformation).
ntdll: Don't check "info" for NULL in NtQuerySystemInformation(SystemModuleInformation).
ntdll/tests: Add more tests for SystemModuleInformation[Ex].
ntdll: Semi-stub SystemModuleInformationEx.
quartz/tests: Add some more tests for seeking formats.
quartz: Treat a filter as supporting IMediaSeeking only if it supports TIME_FORMAT_MEDIA_TIME.
Zhiyi Zhang (12):
user32/tests: Test changing to a valid depth but zero width and height display mode.
user32: Use current width or height if a mode specifies zero width or height for ChangeDisplaySettingsExW().
wined3d: Store a struct wined3d pointer in struct wined3d_swapchain_state.
winemac.drv: Send HTMENU instead of HTCAPTION to query window activation.
winex11.drv: Update a comment.
d3d8/tests: Restore display modes at the end of test_wndproc().
d3d9/tests: Restore display modes at the end of test_wndproc().
ddraw/tests: Test display mode restoration.
d3d8/tests: Test display mode restoration.
d3d9/tests: Test display mode restoration.
dxgi/tests: Test display mode restoration.
wined3d: Restore display modes for all outputs when doing mode restoration.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.20 is now available.
What's new in this release (see below for details):
- More work on the DSS cryptographic provider.
- A number of fixes for windowless RichEdit.
- Support for FLS callbacks.
- Window resizing in the new console host.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.20.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.20.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 5.20 (total 36):
14640 Multiple OpenGL applications and games fail at ChoosePixelFormat/SetPixelFormat (Lazarus, Counterclockwise, USI T3 emulator)
30364 X3 Reunion hangs at start
33392 .NET Framework 4.0 installer misreports disk space if not enough disk space available 'Drive C: Required - 64u MB, Available - 64u MB' ('FormatMessageA/W' needs to support I64)
34558 Multiple applications and games wrapped with ASProtect 1.x-2.x protection scheme fail to start after registration (Farm Frenzy 2, Alawar, FL Studio 11.x VSTi 'Slayer2' plugin, FORScan)
35694 Serena hits deadlock on exit
35744 LabChart Reader 8 installer ends prematurely (VBScript support for class default sub missing)
36873 Multiple games have non-functional mouse input, invisible mouse cursor (Chronology, Mount & Blade II: Bannerlord)
39297 kernel32.IsValidCodePage and friends don't support code page 708.
46950 UFOHD2 crashes when trying to open camera preview
47771 Multiple games have broken mouse movement (Alan Wake, Hard Reset, Battlefield 3, Watch Dogs, Sniper Elite V2 Remastered)
47906 Alice Madness Return crashes
48336 Applications using MS ADO require Recordset Connect to be implemented (Enterprise Architect, Brickcom CMS client)
48717 Saints Row 2 needs xactengine3_2.dll
49012 Application build with .NET CoreRT crashes due to FLS callbacks not being called
49044 CPU-Z 1.92 crashing on startup
49450 Adobe Shockwave Player 11.x plugin installer fails with jscript:cc_parser_parse '&&' expression not implemented
49529 5.12 regression: Wine segfaults if the +heap debug channel is enabled
49661 Red Evil:black screen in game.
49673 Backpacker 3:Americana:unhandled exception
49679 Visual Studio 98 and Visual Basic 6 installers hang
49808 Stellaris loads very slowly
49814 FreeBSD 12.1 undebuggable crash on startup (regression)
49821 Seismobuild crashes at start
49860 Dungeons & Dragons Online 64bit client fails to start in wine-5.16, 5.17, 5.18
49904 all wine processes show a definite leak in load_libwine()
49950 d3d10:reflection tests crash
49960 The Sims Complete Collection is stuck on playing intro
49966 powershell_ise.exe fails with Unhandled Exception: System.NotImplementedException: The method or operation is not implemented. at System.Runtime.InteropServices.Marshal.ThrowEx
49982 A '(call )' line does not reset %ERRORLEVEL% to 0
49997 Capella no yakusoku: Game doesn't start (black screen)
50000 Wineconsole crashes on F8
50004 Python script hangs when pipe IPC is used
50008 Metro Exodus fails to launch since commit fde5967f725624c5ee4995dcbe22f262979c5c9c
50016 PS Remote Play can't install: "To use PS Remote Play, update your PC's OS to the latest version, and then install the Media Feature Pack from Microsoft."
50020 mf:mf tests crash on Windows 7
50025 Cannot run Line (chat app) on Wine
----------------------------------------------------------------
Changes since 5.19:
Aaron Hill (1):
cmd: Set errorlevel to 0 when 'call' is invoked with an empty string.
Akihiro Sagawa (1):
documentation: Update Japanese translation.
Alexandre Julliard (20):
makefiles: List all possible targets in the stub makefiles.
winebuild: Add __imp_ label on the import data for delayed imports.
server: Create the NLS directory.
ntdll: Make NtGetNlsSectionPtr() into a proper Nt syscall.
gdi32: Move the font driver out of freetype.c.
gdi32: Move the other exported freetype functions to the font backend table.
gdi32: Move the realized font handle allocation out of freetype.c.
gdi32: Move the font cache list out of freetype.c.
gdi32: Move the font file information out of freetype.c.
gdi32: Move the font name information out of freetype.c.
gdi32: Move the font charset information out of freetype.c.
gdi32: Move the font realization information out of freetype.c.
gdi32: Move more font metrics information to the generic font structure.
gdi32: Move the glyph metrics cache out of freetype.c.
gdi32: Move the font critical section out of freetype.c.
gdi32: Move the get_glyph_outline() helper to the font function interface.
gdi32: Move the GetFontFileData() implementation out of freetype.c.
gdi32: Move the GetGlyphIndices() implementation out of freetype.c.
gdi32: Don't bother caching the font type.
makefiles: Explicitly create destination dirs when installing symlinks.
Alistair Leslie-Hughes (5):
xactengine3_7: Initial IXACT3Engine tests.
sapi: Return a default token in ISpVoice::GetVoice
msado15: Implement _Connection Open.
server: Fix compile error when irda.h is available.
msado15: Implement _Recordset get/put CursorType.
Anton Baskanov (1):
amstream: Implement SSUPDATE_CONTINUOUS flag in IDirectDrawStreamSample::Update.
Arkadiusz Hiler (1):
user32: Implement GetMouseMovePointsEx().
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Austin English (5):
qedit: Add a version resource.
qasf: Add a version resource.
dsdmo: Add a version resource.
dplaysvr: Add stub program.
dpvsetup: Add stub program.
Brendan Shanks (2):
winemac: Remove unused GetCurrentProcess() call.
mountmgr: Avoid unnecessary permission prompts on macOS 10.15 and newer.
Damjan Jovanovic (1):
riched20: Implement ITextRange/ITextSelection Copy and Cut.
Daniel Lehman (1):
tzres: Add Eastern Standard Time (Mexico) Zone.
Derek Lesho (1):
mfplat: Fix asynchronous object creation from URL.
Dmitry Timoshkov (1):
advapi32/tests: Add QueryServiceStatusEx test for the EventLog service.
Esme Povirk (9):
windowscodecs: Add a unix library and start to use it for PNG.
windowscodecs: Start loading PNG in unix lib.
windowscodecs: Get PNG frame information from unix lib.
windowscodecs: Move PNG CopyPixels to unix lib.
windowscodecs: Use the unix library to find PNG metadata.
windowscodecs: Use unix lib to get PNG color contexts.
windowscodecs: Do not call png_read_end.
windowscodecs: Add a general wrapper around the decoder interface.
mscoree: Implement GetTokenForVTableEntry.
Georg Lehmann (3):
winevulkan: Generate helpers for wrapped handles.
winevulkan: Store a mapping from native handles to wrappers.
winevulkan: Implement VK_EXT_debug_utils.
Gijs Vermeulen (1):
qcap/capturegraph: Return E_POINTER when ICaptureGraphBuilder2::FindInterface() is called with NULL filter.
Hans Leidekker (27):
dssenh: Don't store the algorithm handle for hashes.
dssenh: Implement CPDuplicateHash.
dssenh: Implement CPDuplicateKey.
dssenh: Implement CPGenRandom.
dssenh: Set last error in CPHashData.
bcrypt: Add support for duplicating asymmetric keys.
dssenh: Implement CPExportKey.
dssenh: Implement CPSignHash.
dssenh: Implement CPVerifySignature.
dssenh: Implement CPGenKey.
bcrypt/tests: Fix a key handle leak.
bcrypt: Copy all fields in key_duplicate.
dssenh: Implement CRYPT_DELETEKEYSET.
dssenh: Implement CPGetUserKey.
dssenh: Access the hash value directly in CPSignHash and CPVerifySignature.
dssenh: Implement CPSetHashParam.
dssenh: Add support for exporting private keys.
dssenh/tests: Add tests for CryptDuplicateKey.
dssenh: Always duplicate container keys.
dssenh: Add support for importing version 3 public keys.
dssenh: Implement CRYPT_MACHINE_KEYSET.
dssenh: No longer prefer native.
bcrypt: Use internal helpers to generate hashes.
msado15: Use correct string type for default provider.
msado15: Avoid a crash with tracing on.
wbemprox: Also return system properties from IWbemClassObject::GetNames.
wbemprox: Implement IWbemClassObject::GetMethodQualifierSet.
Haoyang Chen (2):
gdiplus: Fix texture brush rotation.
wbemprox: Implement Win32_SoundDevice.Status.
Henri Verbeet (5):
wined3d: Make adapter_vk_clear_uav() static.
wined3d: Avoid accessing NULL depth/stencil state in wined3d_context_vk_update_graphics_pipeline_key().
wined3d: Clear the graphics pipeline key stencil test state when the stencil test is disabled.
wined3d: Do not invalidate STATE_RENDER(WINED3D_RS_TWOSIDEDSTENCILMODE).
wined3d: Use wined3d_get_primary_adapter_luid() if we didn't get a valid LUID from Vulkan.
Huw D. M. Davies (50):
riched20: Use a structure to hold the repaint range.
riched20: Use ME_Paragraph ptrs for the update range.
riched20: Use the table_row_start/end() helpers.
riched20: Use ME_Paragraph and ME_Run ptrs in GetCursorCoordinates().
riched20: Use ME_Paragraph ptrs in InternalDeleteText().
riched20: Use paragraph and run ptrs in InsertTextFromCursor().
riched20: Use the run and para helpers in the cursor movement functions.
riched20: Use paragraph ptrs in FindPixelPos().
riched20: Pass a run ptr to the run joining function.
riched20: Return a run ptr from the run creation function.
riched20: Return a run ptr from the run splitting function.
riched20: Don't mark the diTextStart paragraph as requiring repainting.
riched20: Don't return the diTextStart paragraph from para_prev().
riched20: Use run ptrs in SetCharFormat().
riched20: Return a run ptr from the run insert function.
riched20: Use run ptrs in GetCharFormat().
riched20: Simplify the cursor from char offset function.
riched20: Simplify the char offset from run offset function.
riched20: Remove InternalInsertTextFromCursor().
riched20: Use a run ptr in GetXForArrow().
riched20: Pass a paragraph ptr to the table update flags function.
riched20: Return a paragraph ptr from the paragraph creation function.
riched20: Use paragraph and run ptrs in the paragraph splitting function.
riched20: Pass a run ptr to, and return a para ptr from, the para splitting function.
riched20: Pass and return a paragraph ptr in the paragraph joining function.
riched20: Pass a paragraph ptr to the paragraph destruction function.
riched20: Pass a paragraph ptr to a couple of the drawing helpers.
riched20: Pass a run ptr to the run drawing function.
riched20: Use helpers in the cursor to start/end functions.
richedit: Use the correct ptr to the cell.
riched20: Pass run ptrs to the font and colour table writer function.
riched20: Pass paragraph ptrs to the paragraph property writers.
riched20: Update both co-ords during layout.
riched20: Start re-wrap loop at the beginning of any table.
riched20: Don't split the paragraph at the first \intbl.
riched20: Use the paragraph and run helpers in the delete text function.
riched20: Remove a redundant condition.
riched20: Pass a cursor ptr to the insert style retrieval function.
riched20: Pass and return paragraph ptrs in the table append row function.
riched20: Return a paragraph ptr from the table insert helper.
riched20: Return a para ptr from the insert start table row functions.
riched20: Return paragraph ptrs from the remaining table insert functions.
riched20: Use cell ptrs in the rtf parsing code.
riched20: Use cell ptrs in the rtf writing code.
riched20: Simplify some of the drawing code using a few helpers.
riched20: Use cell and para ptrs in the table border drawing function.
riched20: Use cell ptrs in the wrapping functions.
riched20: Use cell ptrs in the table position to offset function.
riched20: Use run and para ptrs in the cursor move lines function.
riched20: Remove the caret at end hack.
Jacek Caban (32):
conhost: Support window resizing.
conhost: Import scrolling support from wineconsole.
conhost: Store title as zero terminated string.
conhost: Set console window title.
kernelbase: Use conhost in AllocConsole.
wineconsole: Reimplement as AllocConsole wrapper.
kernel32: Always use conhost for WriteConsoleW.
kernel32: Always use conhost for ReadConsoleW.
kernel32: Move ReadConsole and WriteConsole to kernelbase.
kernelbase: Remove window position adjustment from SetConsoleCursorPosition.
kernelbase: Remove no longer needed free_console server call from FreeConsole.
server: Remove no longer used console requests.
server: Remove no longer needed server-side screen buffer ioctls.
server: Remove no longer needed server-side console input ioctls.
server: Remove no longer needed console_input fields.
server: Remove no longer needed screen_buffer fields.
server: Remove no longer needed console_input_events_append.
server: Remove no longer used console renderer object.
kernel32/tests: Use current console input in test_ReadConsole.
console: Don't allow blocking read ioctls on screen buffer object.
conhost: Fix check for the last history index in edit_line_find_history.
conhost: Remove no longer needed SET_CONSOLE_INPUT_INFO flags.
conhost: Remove no longer needed CHAR_INFO_MODE_TEXTSTDATTR.
conhost: Remove no longer needed SET_CONSOLE_OUTPUT_INFO flags.
conhost: Remove no longer needed condrv_input_info fields.
kernel32/tests: Add more FlushConsoleInputBuffer tests.
kernel32: Use new IOCTL_CONDRV_SCROLL ioctl for FlushConsoleInputBuffer implementation.
kernel32: Move FlushConsoleInputBuffer to kernelbase.
server: Implement console input flush in server.
kernel32: Import FlushFileBuffers from kernelbase.
conhost: Remove no longer needed non-blocking IOCTL_CONDRV_READ_INPUT.
kernelbase: Move console code page validation to conhost.
Jan Sikorski (4):
dbghelp: Avoid forwarded exports.
windowscodecs: Add a missing FIXME.
windowscodecs: Add 32bppRGBA to 32bppBGRA copy.
windowscodecs/tests: Add 32bppRGBA/BGRA converter tests.
Jeff Smith (1):
comdlg32: Set background to transparent for font dialog sample text.
Joachim Priesner (1):
ntdll: Fix read buffer overflow in find_file_in_dir().
Julian Rüger (1):
documentation: Update German translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Liam Middlebrook (1):
winevulkan: Update to VK spec version 1.2.158.
Louis Lenders (1):
dwmapi: Quiet noisy fixme.
Matteo Bruni (1):
d3dcompiler/tests: Always expect failure in test_reflection_desc_ps_output() on d3d10.
Michael Stefaniuc (40):
qmgr: Use wide-char string literals.
ntdsapi: Use wide-char string literals.
write: Use wide-char string literals.
plugplay: Use wide-char string literals.
spoolsv: Use wide-char string literals.
termsv: Use wide-char string literals.
presentationfontcache: Use wide-char string literals.
winmgmt: Use wide-char string literals.
localui: Use wide-char string literals.
localui/tests: Use strings instead of arrays of chars.
wer: Use wide-char string literals.
iexplore: Use wide-char string literals.
opcservices: Use wide-char string literals.
msisip: Use wide-char string literals.
spoolss: Use wide-char string literals.
lz32/tests: Use wide-char string literals.
taskmgr: There's no need to GetProcAddress() IsHungAppWindow().
taskmgr: SwitchToThisWindow() is available, remove alternate code path.
wbemprox: Use 0 terminated WCHAR strings in wql.y.
wbemprox: Use wide-char string literals.
explorer: Use the WCHAR string version of LoadLibrary.
taskmgr: Shell32 is imported, no need to load it again.
rpcss: Use wide-char string literals.
taskmgr: Use GetGuiResources() directly.
dsound: Use wide-char string literals.
schtasks/tests: Use wide-char string literals.
uxtheme/tests: Use wide-char string literals.
find: Use wide-char string literals.
uxtheme: Use wide-char string literals in struct initialization.
uxtheme: Use wide-char string literals.
taskmgr: Use NtQuerySystemInformation() directly.
taskmgr: Use two kernel32 functions directly.
xcopy: Use wide-char string literals.
ipconfig: Use wide-char string literals.
xcopy: Avoid an empty if-block.
msi: Use 0 terminated WCHAR strings in the SQL tokenizer.
cryptnet/tests: Change the scope of a variable from global to local.
cryptnet: Use wide-char string literals.
inetcomm: Zero terminate the mhtml WCHAR strings.
inetcomm: Use wide-char string literals.
Myah Caron (2):
kernelbase: Use command_lineW for GetCommandLineW.
kernelbase: Remove DECLSPEC_HOTPATCH for GetCommandLine[AW].
Nikolay Sivov (57):
kernelbase: Add a name for codepage 708.
dbgeng/tests: Use different flags for unsupported options.
mfplat/mediatype: Enable IMFVideoMediaType based on major type.
mfplat/mediatype: Add IMFAudioMediaType stub.
evr/mixer: Add SetOutputBounds().
evr/mixer: Use regular media type interface for input streams.
evr/mixer: Use regular media type interface for the output stream.
evr/mixer: Implement SetOutputType().
dxva2/tests: Add a test for GetVideoProcessorDeviceGuids().
d3d11/tests: Add some more tests for device context state.
mf/evr: Do not use IMFVideoMediaType when setting mixer types.
mf/evr: Trigger media type negotiation through presenter for reference stream.
evr/tests: Add a test for MF_SA_REQUIRED_SAMPLE_COUNT.
evr/mixer: Keep original media type instances for inputs.
evr/tests: Use wide string literals.
evr: Add already implemented functions from mfplat.dll.
evr: Partially implement MFCreateVideoSampleFromSurface().
evr/sample: Implement IMFDesiredSample.
evr/sample: Add a surface buffer on sample creation.
evr/sample: Implement GetService() for surface buffers.
mf/evr: Add attributes store for the sink.
mf/evr: Add default attributes on sink creation.
evr/tests: Add a mixer tests for clearing output in idle state.
mf/tests: Add a test for EVRConfig_ handling for already initialized presenter.
mf/evr: Add per-stream lock.
mf/evr: Implement NotifyPreroll().
mf/evr: Implement stream state change events.
server: Handle duplicate handles when inheriting them for the new process.
comsvcs: Create MTA without initialization thread.
include: Fix typo in IDirectXVideoProcessor argument name.
dxva2: Fix new handle flags initialization.
dxva2: Add video processor stub.
dxva2: Add GetCreationParameters().
evr/mixer: Keep one input sample per stream.
evr/mixer: Map render target type to video processor guid that supports it.
ntdll/actctx: Handle empty <dependency> element.
dxva2: Fix valid handle range test.
evr/mixer: Keep dxva device handle around.
evr/mixer: Create dxva processor when output type is set.
evr/mixer: Ignore draining command.
evr/mixer: Drop input samples on flush.
evr/mixer: Maintain streaming state flag.
comsvcs/tests: Close test thread handles.
mf/sar: Use advertised type in IsMediaTypeSupported().
evr/mixer: Implement GetInputStatus().
evr/mixer: Implement GetOutputStatus().
evr/mixer: Fill output surfaces when not streaming.
evr/mixer: Only accept single output buffer in ProcessOutput().
evr/presenter: Add IMFVideoPositionMapper stub.
evr/sample: Implement SetDirectXManager().
mf/evr: Create sample allocators on demand.
mf/evr: Set the device manager for sample allocators.
mfplat: Implement DXGI device manager handle management.
mfplat: Implement GetVideoService() for the device manager.
mf: Add default attributes for sample copier.
evr/mixer: Send sample requests when switching to streaming mode.
evr/mixer: Request more sample on successful ProcessOutput().
Paul Gofman (10):
ntdll: Always align stack in call_user_apc_dispatcher() on x86_64.
ntdll: Zero all FLS slots instances in RtlFlsFree().
ntdll: Call FLS callbacks.
ntdll: Support AVX registers for other thread in Nt{Get|Set}ContextThread().
ntdll/tests: Test getting and setting AVX registers for the other thread.
ntdll/tests: Test AVX context with debugger.
kernelbase: Fix status check in GetExitCodeProcess().
server: Add SeTcbPrivilege (SE_TCB_NAME) to the list of admin privileges.
wined3d: Add GPU information for NVIDIA GeForce GTX 1080 Mobile.
ntdll: Fix xmm registers copy offset in call_consolidate_callback() on x86_64.
Piotr Caban (3):
ucrtbase: Support UTF8 codepage in _wcstombs_l.
ucrtbase: Support UTF8 codepage in _wctomb_s_l.
ucrtbase: Support UTF8 codepage in wctomb.
Robert Wilhelm (3):
jscript: Cc_parser_parse implement '&&' expression.
vbscript: Add is_default flag to function_decl_t.
vbscript: Support class default sub.
Roman Pišl (1):
kernelbase: Fix comment and trace message in console.
Sven Baars (3):
evr/tests: Fix a test failure on Windows 7.
mmdevapi/tests: Fix some test failures on Windows <= 7.
d3dcompiler: Fix a leak on error path (Coverity).
Vijay Kiran Kamuju (1):
hnetcfg: Return S_OK in get_StaticPortMappingCollection.
Zebediah Figura (20):
strmbase: Print colorimetry information in strmbase_dump_media_type().
ws2_32/tests: Rewrite the CF_DEFER test in test_AcceptEx().
ws2_32/tests: Remove some workarounds for no longer supported versions of Windows.
ws2_32/tests: Remove workarounds from test_events().
ws2_32/tests: Fix a test failure on w10pro64.
ws2_32/tests: Add more tests for passing short buffers to AcceptEx().
wine.inf: IsInstalled is a DWORD value.
wintrust: Stub CryptCATPutMemberInfo().
wintrust: Stub CryptCATPersistStore().
wintrust: Stub CryptCATPutAttrInfo().
wintrust: Stub CryptCATPutCatAttrInfo().
mssign32: Stub SignerSign().
ws2_32/tests: Fix an intermittent test failure on w10pro64.
ws2_32: Use server-side async I/O in AcceptEx().
ws2_32: Use server-side async I/O in accept().
server: Forbid accepting into the same socket more than once.
quartz: Return the paused timestamp from IMediaSeeking::GetCurrentPosition() if the graph is running asynchronously.
winegstreamer: Respect integer promotion rules when clamping timestamp + diff.
winegstreamer: DirectShow and GStreamer proportions are inverted with respect to each other.
quartz/tests: Use compare_double() to test IBasicVideo::get_AvgTimePerFrame().
Zhiyi Zhang (4):
wined3d: Clean up swapchain state on wined3d_swapchain_init() failure paths.
ddraw/tests: Use the correct version of DirectDraw calls.
ddraw/tests: Fix possible memory leaks.
dxgi/tests: Fix a window leak in test_inexact_modes().
Ziqing Hui (2):
gdiplus/tests: Add tests for GdipMeasureString with StringFormatFlagsNoWrap.
gdiplus: Support StringFormatNoWrap for GdipMeasureString.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.19 is now available.
What's new in this release (see below for details):
- Wine Mono engine updated to 5.1.1, with WPF text formatting support.
- KERNEL32 library converted to PE.
- DSS cryptographic provider.
- Windowing support in the new console host.
- A number of exception handling fixes.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.19.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.19.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 5.19 (total 27):
15437 Multiple programs using madCodeHook crash (in-memory PE image of Wine builtins vs. ELF image on disk)
29926 Multiple games need IDirectDrawStreamSample::Update() (Beach Life, The Sims Complete Collection, Risk II, Earth 2150, Need for Russia)
31342 Multiple applications need msvcirt.dll.??0ofstream@@QAE@XZ (Trespasser, Max Payne 1, 3Dmark1999 MAX, 3Dmark2000, 3Dmark2001 SE, GraphCalc, Charon)
39123 Fairy Fencer F depends on NtQuerySystemInformation(SYSTEM_INTERRUPT_INFORMATION) volatility for random number generation
45090 (nearly) every test shows a leak in kernel32/{console,term}.c
45331 Exile: Escape From the Pit crashes after splash screen
45400 eden* (VN) some font characters display with the wrong glyph (capitals/spaces)
45489 World of Warcraft needs GetRawInputBuffer
46588 Cegid Business Line installer fails in custom script action installing "BLJNR.MSI" component.
48529 Avencast: Rise of the Mage fails to launch
49172 Always true condition `code > 0xffff` in vbscript/global.c
49367 1971 Project Helios shows a black screen
49470 Silent Hill 4 crashes when a person is suppose to scream.
49549 winetricks -q dotnet45 leaves dozens of mscorsvw.exe processes
49586 valgrind shows a leak in dlls/ntdll/env.c:set_wow64_environment()
49659 Multiple games crash on launch (Mahjong Titans, Resident Evil HD Remaster, Resident Evil 0 HD Remaster)
49857 NCLauncher2: Crypto error on a successful login
49873 Warzone 2100 crashes on unimplemented function api-ms-win-crt-convert-l1-1-0.dll.strtold
49894 Regression in "kernelbase: Use conhost to handle Unix consoles."
49895 [Regression] Steam fails to load pages
49899 Multiple games need IDirectDrawMediaStream::NewSegment() implementation (The Sims Complete Collection, Earth 2150, Beach Life, Risk II, Need for Russia)
49906 Fallout New Vegas: broken gog installation
49909 Win Toolkit v.1.4.37.20 (.NET 3.5 app) crashes with wine-mono
49911 Sebastien Loeb Rally EVO 64-bit version crashes with builtin xactengine3_7
49924 IP address control does not focus its fields on focus change
49929 Game for Windows Live installer fails with 'winetricks -q gfw'
49946 Themida-packed application crashing on multi-hop import forward
----------------------------------------------------------------
Changes since 5.18:
Akihiro Sagawa (3):
kernelbase: Improve Get{, Dynamic}TimeZoneInformation() performance.
kernelbase: Fix copy and paste error.
configure: Fix a typo in comparison.
Alexandre Julliard (25):
configure: Require 64-bit compare-and-swap support from gcc.
ws2_32: Retrieve the FQDN only when necessary in getaddrinfo().
wineboot: Set the computer name keys.
kernel32: Remove the setting of the computer name keys.
ntdll: Delay ntdll.dll loading until more initialization is done.
ntdll: Use the standard code path to load ntdll.dll.
ntdll: Use load_dll() to load kernel32 to support PE format.
kernel32: Build with msvcrt.
configure: Don't disable ntdll or kernel32 for Windows builds.
bcrypt: Add a helper function to create an asymmetric key.
bcrypt: Move the public key initialization to the generic code.
bcrypt: Move setting a symmetric key vector to the generic code.
bcrypt: Move the symmetric key initialization to the generic code.
bcrypt: Add separate backend functions for destroying symmetric/asymmetric keys.
bcrypt: Split the key structure into generic and backend-specific parts.
bcrypt: Move the backend code to a new Unix library.
bcrypt: Build with msvcrt.
ntdll: Fix handle/module confusion in Unix module loading.
gdi32: Move font codepage setup out of freetype.c.
odbc32: Use the exported names for the implementation functions.
odbc32: Move the Unix functions interface to a new Unix library.
odbc32: Build with msvcrt.
gdi32: Store the face filename as a DOS path.
gdi32: Compare DOS filenames instead of Unix stat information for font files.
gdi32: Store face data as a single binary value in the registry cache.
Alistair Leslie-Hughes (6):
xactengine3_7: Explicity copy the XACT_RUNTIME_PARAMETERS members.
include: Add more SCARD defines.
msado15: Implement _Connection Get/Put Provider.
msado15: Implement _Connection get/put Mode.
msado15: Implement _Connection get/put CursorLocation.
msado15: Implement _Command get/putref ActiveConnection.
Andrew Eikum (8):
audioclient.idl: Declare IAudioClient2.
mmdevapi: Stub implement IAudioClient2.
mmdevapi: Implement IsOffloadCapable.
mmdevapi: Implement SetClientProperties.
audioclient.idl: Declare IAudioClient3.
mmdevapi: Stub implement IAudioClient3.
include: Add a few more stream categories.
mmdevapi: Implement ActivateAudioInterfaceAsync.
Anton Baskanov (9):
amstream: Implement IDirectDrawStreamSample::CompletionStatus.
amstream: Implement IDirectDrawStreamSample::GetSampleTimes.
amstream: Implement AMDirectDrawStream::BeginFlush and ::EndFlush.
amstream: Implement AMDirectDrawStream::NewSegment.
winegstreamer: Use RGB15/16 formats instead of BGR15/16.
winegstreamer: Fix RGB565 conversion in amt_from_gst_video_info().
winegstreamer: Add a second videoconvert to handle 15/16-bit RGB formats.
winegstreamer: Expose 15/16-bit RGB formats.
amstream: Reference the multimedia stream in ddraw stream sample.
Arkadiusz Hiler (1):
gdi32: Limit GetGlyphOutlineW(uChar) to a WORD.
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Biswapriyo Nath (6):
include: Set D3D_COMPILER_VERSION to 47, if not defined.
include: Add the D3D12_SHADER_VERSION_TYPE enumeration.
include: Add MFPMPSESSION_CREATION_FLAGS enumeration in mfidl.idl.
include: Fix CancelObjectCreation name in IMFSourceResolver interface.
include: Add IMFMetadata interface in mfidl.idl.
include: Add IMFMetadataProvider interface in mfidl.idl.
Chao Long (1):
ole32: Check for NULL parameter in ReleaseStgMedium().
Christian Costa (1):
d3dx9: Ignore vertices reordering for D3DXMESHOPT_ATTRSORT in OptimizeInPlace().
Daniel Lehman (5):
vcruntime140_1: Terminate on noexcept function trying to propagate exception.
tzres: Add North Korea Time Zone.
msxml3/tests: Add some removeNamedItem tests.
msxml3: Handle namespaces in removeNamedItem.
tzres: Add Cuba Time Zone.
Derek Lesho (3):
winegstreamer: Add a GstPad wrapping the media source's bytestream.
winegstreamer: Use decodebin to initialize media streams.
winegstreamer: Implement IMFMediaStream::GetStreamDescriptor.
Dmitry Timoshkov (2):
wevtsvc: Add EventLog service stub.
sxs: Fix off by 1 error when allocating memory.
Esme Povirk (2):
mscoree: Update Wine Mono to 5.1.1.
dism: Add version resource.
François Gouget (1):
d3dcompiler_43/tests: Fix the spelling of a couple of ok() messages.
Gabriel Ivăncescu (1):
qedit/nullrenderer: Wait in Receive() while paused.
Gerald Pfeifer (1):
winevdm: Abstract references to /dosbox.
Gijs Vermeulen (1):
ucrtbase: Add [_]strtold[_l].
Hans Leidekker (13):
dssenh/tests: Get rid of workarounds for old Windows versions.
bcrypt: Fix buffer size query in BCryptSignHash.
bcrypt: Fix buffer size query in BCryptExportKey.
bcrypt: Convert legacy DSA key parameters to and from little-endian format.
bcrypt: Add support for exporting legacy DSA public keys.
bcrypt: Add support for importing legacy DSA public keys.
dssenh: Add stub implementations for a couple of functions.
dssenh: Register the DSS provider.
dssenh: Implement CPAcquireContext and CPReleaseContext.
dssenh: Implement CPCreateHash and CPDestroyHash.
dssenh: Implement CPHashData.
dssenh: Implement CPGetHashParam.
dssenh: Implement CPImportKey and CPDestroyKey.
Henri Verbeet (9):
include: Update the d3d12 headers from vkd3d.
wined3d: Copy the correct "binding_base" size in shader_spirv_select().
wined3d: Implement rasteriser discard for the Vulkan adapter.
wined3d: Initialise the list of Vulkan device extensions during adapter initialisation.
wined3d: Only store unique stream output descriptions.
wined3d: Implement vertex shader stream output in the SPIR-V shader backend.
wined3d: Implement stream output for the Vulkan adapter.
wined3d: Implement stream output queries for the Vulkan adapter.
include: Update d3d12sdklayers.idl from vkd3d.
Hirofumi Katayama (1):
comctl32/ipaddress: Focus first field on WM_SETFOCUS.
Huw D. M. Davies (13):
include: Fix TXTVIEW_INACTIVE to be -1.
riched20: Simplify FindPixelPos().
riched20: Simplify SplitByBacktracking().
riched20: Move several of the wrapping functions to use ME_Run directly.
riched20: Store a ME_Paragraph ptr in the wrap context.
riched20: Pass a ME_Paragraph ptr to WrapTextParagraph().
riched20: Pass a ME_Paragraph ptr to itemize_para().
riched20: Pass a ME_Paragraph ptr to shape_para().
riched20: Pass a ME_Paragraph ptr to the marking functions.
riched20: Use ME_Paragraph ptrs to iterate in WrapMarkedParagraphs().
riched20: Move the marked paragraph list to a rbtree.
riched20: Don't create a display context in InvalidateParagraphRange().
riched20: Use ME_Paragraph ptrs in a few of the table functions.
Jacek Caban (22):
conhost: Call ensure_tty_input_thread in IOCTL_CONDRV_PEEK implementation.
conhost: Clear out_size in IOCTL_CONDRV_READ_CONSOLE implementation.
server: Don't propagate STATUS_PENDING in get_next_console_request request.
server: Use set_active_screen_buffer for consoles attached to server.
conhost: Scroll window to cursor position when needed.
conhost: Don't create tty input thread if we don't have tty_input handle.
kernel32/tests: Move pseudo console tests before FreeConsole.
conhost: Use better default values in create_screen_buffer.
kernel32/tests: Improve current console test mode.
conhost: Initial support for creating console window.
conhost: Pump window messages when we have a window.
conhost: Import loading console config from wineconsole.
conhost: Import font selection support from wineconsole.
conhost: Import window state update from wineconsole.
conhost: Update window config in ioctl handlers when needed.
conhost: Support painting screen buffer.
conhost: Rename version.rc to conhost.rc.
conhost: Import menus from wineconsole.
conhost: Import keyboard event handling from wineconsole.
conhost: Import mouse event handling from wineconsole.
conhost: Import config dialog from wineconsole.
conhost: Import menu handling from wineconsole.
Julian Rüger (1):
po: Update German translation.
Józef Kucia (1):
include: Move the ID3D12Debug interface to d3d12sdklayers.idl.
Kevin Puetz (8):
oleaut32/tests: Include [dual] interface in test_dump_typelib.
oleaut32: FUNC_DISPATCH from dispinterface should have oVft == 0.
oleaut32: Overwrite return type when rewriting FUNCDESC to FUNC_DISPATCH.
oleaut32: Omit [lcid] parameter when rewriting FUNCDESC to FUNC_DISPATCH.
oleaut32: Make GetNames omit same parameters as GetFuncDesc.
oleaut32/tests: Add tests for rewriting FUNCDESC to FUNC_DISPATCH.
include: Fix undefined char16_t in C11.
vbscript: Implement redim preserve.
Liam Middlebrook (2):
winevulkan: Add --xml argument to make_vulkan.
winevulkan: Update to VK spec version 1.2.155.
Louis Lenders (2):
ntdll: Bump Win 10 version to 17763.
kernelbase: Return S_OK in WerSetFlags.
Martin Storsjo (6):
winebuild: Add unwind info to arm64 syscall stubs.
msvcrt: Hook up __C_specific_handler for arm64.
ntdll: Unwind to the LR register if no unwind info is available.
ntdll: Restore the original Lr value when unwinding through raise_func_trampoline on arm64.
ntdll: Clear ExceptionFlags on arm64 after running an exception handler.
ntdll: Fix nested exceptions on arm64.
Matteo Bruni (2):
winex11: Fix monitor_id_fmtW variable name typo.
winex11: Add DriverDate registry property to display adapters.
Michael Stefaniuc (80):
dswave: Simplify the stub WAVE IPersistStream_Load().
gdiplus: Remove superfluous cast to self.
shell32: Remove superfluous cast to self.
shlwapi: Remove superfluous cast to self.
oleaut32: Remove superfluous casts.
atl80/tests:Use wide-char string literals.
browseui: Use wide-char string literals.
d2d1/tests:Use wide-char string literals.
comcat/tests: Use wide-char string literals.
comsvcs/tests: Use wide-char string literals.
d3dx10/tests: Use wide-char string literals.
d3dx11/tests: Use wide-char string literals.
d3dx9/tests: Use wide-char string literals.
dhcpcsvc/tests: Use wide-char string literals.
faultrep: Use wide-char string literals.
dplayx: Use wide-char string literals.
fltmgr.sys: Use wide-char string literals.
fntcache: Use wide-char string literals.
httpapi: Use wide-char string literals.
http.sys: Use wide-char string literals.
imaadp32.acm: Use wide-char string literals.
infosoft/tests: Use wide-char string literals.
jsproxy: Use wide-char string literals.
mciqtz32: Use wide-char string literals.
msadp32.acm: Use wide-char string literals.
msftedit: Use wide-char string literals.
explorerframe: Use wide-char string literals.
mciavi32: Use wide-char string literals.
hlink: Use wide-char string literals.
mcicda: Use wide-char string literals.
mciseq: Use wide-char string literals.
dxdiagn/tests: Use wide-char string literals.
mciwave: Use wide-char string literals.
midimap: Use wide-char string literals.
mlang: Use wide-char string literals.
msacm32.drv: Use wide-char string literals.
msdmo/tests: Use wide-char string literals.
msg711.acm: Use wide-char string literals.
netcfgx/tests: Use wide-char string literals.
propsys: Use wide-char string literals.
slc/tests: Use wide-char string literals.
virtdisk/tests: Use wide-char string literals.
wiaservc: Use wide-char string literals.
xinput1_3: Use wide-char string literals.
xolehlp: Use wide-char string literals.
combase: Use wide-char string literals.
combase/tests: Use wide-char string literals.
conhost: Correct whitespace placement in a TRACE().
packager: Use wide-char string literals.
attrib: Use wide-char string literals.
cabarc: Use wide-char string literals.
clock: Use wide-char string literals.
control: Use wide-char string literals.
dxdiag: Use wide-char string literals.
extrac32: Use wide-char string literals.
hostname: Use wide-char string literals.
net: Use wide-char string literals.
schtasks: Use wide-char string literals.
vbscript/tests: Use wide-char string literals.
sc: Use wide-char string literals.
taskkill: Use wide-char string literals.
view: Use wide-char string literals.
winemine: Use wide-char string literals.
advpack: Don't use sizeof to calculate the length of a WCHAR string.
advpack: Use wide-char string literals.
atl: Use wide-char string literals.
quartz: Use wide-char string literals.
dinput8/tests: Use wide-char string literals.
dinput/tests: Use wide-char string literals.
joy.cpl: Use wide-char string literals.
avifil32: Use wide-char string literals.
msiexec: Use wide-char string literals.
bcrypt/tests: Use wide-char string literals.
msvcp110/tests: Use wide-char string literals.
progman: Use wide-char string literals.
rundll32: Use wide-char string literals.
regsvr32: Use wide-char string literals.
eject: Use wide-char string literals.
credui: Use wide-char string literals.
dpvoice: Use wide-char string literals.
Myah Caron (1):
ntoskrnl.exe: Stub MmProtectMdlSystemAddress.
Nikolay Sivov (53):
server: Inherit standard handles together with explicit handle list.
combase: Remove dead assignment (Coverity).
mfreadwrite/tests: Add return value test (Coverity).
include: Add DWRITE_MAKE_FONT_AXIS_TAG macro.
evr/mixer: Store input type attributes.
evr/mixer: Add IMFQualityAdvise stub.
evr/presenter: Add IMFGetService stub.
evr/presenter: Create device manager for the presenter.
evr/presenter: Create d3d device on presenter creation.
evr/presenter: Expose IMFVideoDisplayControl as a service.
evr/presenter: Keep video window handle.
evr/presenter: Maintain video position rectangles.
evr/presenter: Add missing method stubs.
msxml3/tests: Use wide string literals in more tests.
msxml3/tests: Fix tests failures with unreachable network resources.
comctl32/tests: Remove some workarounds from ListView tests.
rtworkq: Add remaining queue management stubs.
evr/presenter: Validate mixer's device id.
mf: Implement MFCreateVideoRenderer().
evr/presenter: Better validate input rectangles in SetVideoPosition().
evr/presenter: Check video window in SetVideoPosition().
evr/presenter: Set VIDEO_ZOOM_RECT on SetVideoPosition().
oleaut32: Do not forward IErrorInfo functions.
msxml3/tests: Use wide string literals in tests.
comctl32/tests: Remove skips from DPA tests.
ucrtbase: Add wcstold()/_wcstold_l().
msvcrt: Correct spec entries for _wcstod_l().
evr/presenter: Return default flags for GetRenderingPrefs().
evr/presenter: Check for null argument in GetVideoWindow().
evr/presenter: Validate passed handle on SetVideoWindow().
evr/mixer: Keep per-stream output rectangles.
evr/mixer: Keep per-stream zorder configuration.
evr/tests: Add some tests for presenter's GetNativeVideoSize().
evr/presenter: Request original reference frame size when attaching the mixer.
evr/presenter: Update cached native size on format negotiation.
evr/presenter: Initialize aspect ratio mode.
mfplat: Added MFBeginRegisterWorkQueueWithMMCSS().
mf/evr: Partially implement InitializeRenderer().
mf/evr: Provide device manager to the mixer.
mf/evr: Add IMFGetService stub for the streams.
mf/evr: Create sample allocator for each stream.
evr/allocator: Implement SetCallback().
evr/allocator: Implement GetFreeSampleCount().
comctl32/ipaddress: Select field contents on IPM_SETFOCUS.
comctl32/ipaddress: Fix IPM_SETFOCUS return value.
comctl32/ipaddress: Fix IPM_CLEARADDRESS return value.
comctl32/tests: Fix loop bounds.
mf/evr: Implement GetMediaTypeCount().
mf/evr: Implement GetMediaTypeByIndex().
mf/evr: Set stream media type to the mixer.
evr/mixer: Add support for MFT_SET_TYPE_TEST_ONLY for inputs.
mf/evr: Implement IsMediaTypeSupported().
nls: Build codepage data for CP708.
Owen Rudge (2):
wsdapi: Use wide character string literals.
wsdapi/tests: Use wide character string literals.
Paul Gofman (14):
wined3d: Fix 3d texture layer count for bind tracking.
wined3d: Use partial bind counts instead of partial bind flags.
kernel32/tests: Fix fiber test errors on newer Win10.
kernelbase: Move FlsAlloc() implementation to ntdll.RtlFlsAlloc().
kernelbase: Move FlsFree() implementation to ntdll.RtlFlsFree().
kernelbase: Move FlsSetValue() implementation to ntdll.RtlFlsSetValue().
kernelbase: Move FlsGetValue() implementation to ntdll.RtlFlsGetValue().
server: Check reply size when copying key full name.
server: Remove leftover dump in key_get_full_name().
ntdll: Introduce RtlProcessFlsData() and use it for FLS data destruction.
ntdll: Reimplement FLS data management on top of up to date structures.
kernel32/tests: Test FLS data storage structures.
ntdll: Allocate TEB FLS data in LdrInitializeThunk().
ntdll: Don't use PEB lock for FLS data.
Piotr Caban (7):
imm32: Exit early in ImmTranslateMessage when there was no new input.
winmm: Remove unneeded TIME_TimeToDie, the thread ends when list is empty.
winmm: Avoid allocations in timeSetEvent.
winmm: Destroy timer after calling callback.
winmm: Add more timer tests.
msvcrt: Terminate on noexcept function trying to propagate exception (i386).
msvcrt: Terminate on noexcept function trying to propagate exception (x86_64).
Robert Wilhelm (3):
vbscript: Global_Split free delimiter only if it was allocated.
vbscript: Allow public and private declarations in global scope.
vbscript: Fix return value of lookup_identifier().
Roberto Pungartnik (3):
po: Brazilian Portuguese update.
po: Update Spanish translation.
po: Update Spanish translation.
Rémi Bernon (7):
wbemprox: Set variant type to VT_NULL if BSTR is NULL.
wbemprox: Report 4095MiB video memory if it overflows.
dxgi/tests: Check that the last adapter is always WARP.
include: Split objidl.idl to objidlbase.idl.
include: Add IAgileObject to objidlbase.idl.
winex11.drv: Split clip cursor message in notify/request.
winex11.drv: Forward clip_fullscreen_window to foreground thread.
Sven Baars (3):
shell32: Fix a leak on error path (Coverity).
ntdll: Fix a memory leak (Valgrind).
vbscript: Avoid double frees on error path (Coverity).
Zebediah Figura (37):
wined3d: Free cached depth/stencil states in wined3d_device_uninit_3d().
wined3d: Move the depth write enable state to wined3d_depth_stencil_state.
wined3d: Move the stencil enable state to wined3d_depth_stencil_state.
wined3d: Move the stencil read mask to wined3d_depth_stencil_state.
wined3d: Move the stencil write mask to wined3d_depth_stencil_state.
ws2_32: Reimplement WSAEnumProtocols() using a flat array of WSA_PROTOCOLINFO structures.
ws2_32: Look for supported socket parameters if any parameters to WSASocket() are zero.
ws2_32: Add protocol information for TCP and UDP over IPv6.
ws2_32: Reimplement ws_protocol_info() using the supported_protocols array.
netprofm: Do not use the WS_ prefix.
wined3d: Move the stencil function to wined3d_depth_stencil_state.
wined3d: Move the stencil pass operation to wined3d_depth_stencil_state.
wined3d: Move the stencil fail operation to wined3d_depth_stencil_state.
wined3d: Move the stencil depth fail operation to wined3d_depth_stencil_state.
wined3d: Move the depth function to wined3d_depth_stencil_state.
wined3d: Introduce WINED3DFMT_FLAG_UNORDERED_ACCESS.
wined3d: Check for UAV support in wined3d_check_device_format.
d3d11: Report D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW in CheckFormatSupport().
d3d11/tests: Add a test for deferred context state management.
msdmo: Also handle ERROR_SUCCESS with nonzero size from RegQueryValueExW().
ws2_32: Pass Win32 socket types to the server.
ws2_32: Set default socket options in the server.
server: Return Win32 socket types from get_socket_info.
server: Remove redundant calls to sock_reselect().
d3d11/tests: Add a test for rendering with deferred contexts.
wined3d: Correct off-by-one errors when comparing against ARRAY_SIZE.
server: Introduce IOCTL_AFD_ACCEPT.
ws2_32: Use IOCTL_AFD_ACCEPT.
server: Remove the no longer used accept_socket request.
server: Introduce IOCTL_AFD_ACCEPT_INTO.
ws2_32: Use IOCTL_AFD_ACCEPT_INTO.
server: Remove the no longer used accept_into_socket request.
ws2_32/tests: Avoid using skip() or trace() for tests that should not fail.
ws2_32/tests: Make the tests less verbose by default.
ws2_32/tests: Link directly to more functions.
ws2_32/tests: Avoid ok(0, ...) where the condition can be checked directly.
qedit/tests: Add some basic tests for null renderer connection and streaming.
Zhiyi Zhang (8):
winemac.drv: Fix monitor_id_fmtW variable name typo.
dxgi/tests: Run test_get_containing_output() on d3d12 as well.
dxgi/tests: Run test_window_association() on d3d12 as well.
dxgi/tests: Run test_default_fullscreen_target_output() on d3d12 as well.
dxgi: Support creating a fullscreen swapchain on d3d12.
dxgi: Retrieve d3d12 swapchain fullscreen state from wined3d.
dxgi: Support Alt+Enter for d3d12 swapchains.
dxgi: Update swapchain containing output after Alt+Enter was used to exit fullscreen.
Ziqing Hui (4):
d3dx10: Move D3DX10GetImageInfo*() to texture.c.
d3dx10: Implement D3DX10GetImageInfoFromFileW().
d3dx10/tests: Add tests for D3DX10GetImageInfoFromFileA().
d3dx10: Implement D3DX10GetImageInfoFromFileA().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.18 is now available.
What's new in this release (see below for details):
- Vulkan shader compilation using the new vkd3d-shader library.
- USER32 library converted to PE.
- Console no longer requires the curses library.
- Support for display modes with various orientations.
- A number of syntax fixes in the WIDL compiler.
- Non-recursive makefiles.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.18.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.18.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 5.18 (total 42):
10603 IDirectSoundBufferImpl_SetFX needed for sound effects in several games
18670 QIP Infium 2.0 build 9030 crashes on exit (needs a proper implementation of WSACleanup)
21232 Multiple games and applications (Chromium-based browser engines, Blizzard games, League of Legends) crash due to hooking/anticheat validation (needs syscall thunks in ntdll.dll)
22749 Hard link creation from a Finddupe-generated batch file fails ('fsutil.exe' needs to support 'hardlink create' command)
35467 Multiple games crash on unimplemented function msvcirt.dll.??0fstream@@QAE@PBDHH@Z (Lock On: Modern Air Combat, TRON 2.0)
36960 Avencast: Rise of the Mage fails to start (D3DXCreateTextureFromFileA failed)
37254 wineconsole/curses.c fails to build on NetBSD 6.1.4
37491 wineconsole requires/uses TERM environment variable
37644 .NET console applications using System.Console.Clear() crash when directly started in terminal
38964 widl: inconsistent null pointer checks in typelib writer
39469 PreSonus Studio One 3 says it requires Windows 7 SP1 (d3d11 '{bb2c6faa-b5fb-4082-8e6b-388b8cfa90e1}', 'ID3D11DeviceContext1' not implemented)
43107 The Witcher 3 fails to detect dx11 - registry dx11>opengl applied
44422 Vectric Aspire 9 : it does not load 3d images
45433 dark souls 3: cannot change resolution in fullscreen mode
45573 League of Legends 8.12+ fails to start a game (anticheat engine, hooking of syscall return instructions)
45797 NVIDIA GeForce Experience 3.x installer fails due to 'mshtml.OleObject_{Get,Set}Extent' stubs
47251 add support for ConPTY API (pseudo console)
47491 dinput event queue is overflowing and stalling the whole game/wineserver
48396 'cmd.exe /c move file1 file2' doesn't respect non-interactive mode, causing prompt for overwrite if destination file exists
48397 'cmd.exe /c move file1 file2' doesn't overwrite existing destination file in non-interactive mode
48952 NVDA hangs on start
49038 O.E.D. v 4.0 (Oxford English Dictionary) No longer starts.
49206 ITHVNR: hooked processes segfault
49309 vbscript:run test fails in Japanese locale
49335 Dolphin EasyReader for Windows 6.04 (TTS app) crashes after completing startup wizard (needs IMarkupServices::CreateMarkupPointer method implementation)
49343 Neverwinter Online: Launcher crash on Startup
49532 .NET 4.0 and higher fail to install via winetricks
49591 Multiple GOG installers display the error message "Out of Global Vars range"
49624 Protocol error: process 0020: recvmsg: Message too long on mac OS
49643 Calling ClipCursor too frequently can cause stack overflow in foreground window thread.
49647 wine 5.14 build fails in winegstreamer on Ubuntu 16.04 and Debian 9
49738 "warning: implicit declaration of function ‘strtoumax’" when compiling PuTTY with Winelib
49765 SlingPlayer Desktop crashes on unimplemented function msvcrt._snprintf_c
49770 Firestorm viewer crashes
49774 macDriver no longer functions within macOS VM
49806 WIDL doesn't tolerate attribute [hidden] within enums.
49811 cmd /c "cd "directory"&&"somecommand.exe"" tries to cd to "directory"&&"somecommand.exe"
49820 VBScript fails to parse decimal literals between -1 and 1 without 0 in front
49834 45a63e5b3ce0e5d7fcc55ce57f315086b87f8ad7 breaks binary compatibility with 5.0 on passing main() argc
49847 Logos Bible 8: wineserver always using 100% CPU core
49850 No One Lives Forever crashes due to GetMotif stub in dmstyle
49889 wineserver shows failed assertion on shutdown
----------------------------------------------------------------
Changes since 5.17:
Akihiro Sagawa (1):
vbscript: Support non-Latin 1 characters in Asc.
Alexandre Abgrall (1):
msxml3: Fix value of 'fetched' in IEnumVARIANT::Next() for IXMLDOMSelection.
Alexandre Julliard (34):
vbscript: Add support for translating messages.
kernel32/tests: Avoid assumptions about the current working directory.
makefiles: Generate a single non-recursive makefile at the top level.
makefiles: Regenerate po files with full path information.
makefiles: Remove .. components from generated paths.
makefiles: Remove directory variables that are redundant with non-recursive make.
ntdll: Update argc when changing process name.
makefiles: Only add default libraries for Unix builds.
makefiles: Don't use default imports for Unix libraries.
makefiles: Define WINE_UNIX_LIB when building Unix libraries.
include: Don't use IsBadStringPtr in debug functions for Unix libraries.
crypt32: Move GnuTLS-specific helpers into the #ifdef.
ntdll: Add support for loading a Unix helper library from builtin dlls.
user32: Move PNG support to a new Unix library.
user32: Build with msvcrt.
user32: Use wide character string literals.
user32: Use wide character string literals for system parameter entries.
ntdll: Add inline wrappers for pthread mutex locking.
ntdll: Don't lock mutexes during process exit.
server: Add an object operation to retrieve an object name.
server: Return the device name for device files.
server: Return the device name for mailslot files.
server: Return the device name for named pipe files.
server: Implement object name information for registry keys.
server: Pass all creation arguments to the device creation functions.
server: Use OBJ_PERMANENT for permanent objects.
server: Rename make_object_static() to make_object_permanent().
server: Keep permanent objects on the standard object list.
server: Restart search from the start when releasing permanent objects at exit.
server: Initialize the object permanent flag.
makefiles: Don't build Unix object files on Windows.
include: Also define gethostname for msvcrt builds.
kernel32: Get rid of obsolete 16-bit relay functions.
kernel32: Make export directory writable to set FT_Thunk to 0.
Alistair Leslie-Hughes (6):
ws2_32: Map AI ALL_option in getaddrinfo().
include: Add inclusion guards for schema API enums.
include: Remove coclasses that don't belong to msxml6.idl.
xactengine3_7: Return S_OK from IXACT3Cue Destroy.
dmband: Semi-stub IDirectMusicBand CreateSegment.
dmstyle: Implement IDirectMusicStyle8 GetBand.
Anton Baskanov (4):
amstream: Implement AMDirectDrawStream::SetState.
amstream: Implement AMDirectDrawStream::EndOfStream.
amstream: Call ::SetFormat in AMDirectDrawStream::CreateSample.
amstream: Implement AMDirectDrawStream::Receive and IDirectDrawStreamSample::Update.
Aurimas Fišeras (3):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Biswapriyo Nath (5):
include/ddraw.h: Add missing members in DDPIXELFORMAT struct.
include/ddraw.h: Add missing UpdateOverlay flags.
include/ddraw.h: Add missing DDSCAPS2.dwCaps2 flags.
include/ddraw.h: Add DDSCAPS2.dwCaps3 flags.
include/ddraw.h: Add missing dwFlags of DD_BLTDATA struct.
Daniel Lehman (1):
wininet: Implement INTERNET_OPTION_SECURITY_CERTIFICATE flag for InternetQueryOption.
Dmitry Timoshkov (4):
setupapi/tests: Add explicit field for inf contents size.
setupapi: Treat trailing \0 in field values same way as trailing spaces.
sxs: Return correct path from IAssemblyCache::QueryAssemblyInfo().
crypt32: Fix conversion of CRYPT_KEY_PROV_INFO between store and certificate property.
Esme Povirk (1):
gdiplus/tests: Don't test point type array padding.
François Gouget (5):
vbscript: Fix the spelling of the delimiter* variables.
ntdll: Fix the spelling of the arch_context_parameters variable.
ntdll/tests: Fix the spelling of a couple of ok_() messages.
conhost/tests: Fix the spelling of a comment message.
msvcirt/tests: Fix the spelling of a couple of ok() messages.
Georg Lehmann (2):
winevulkan: Add is_alias for VkFunctionPointer.
winevulkan: Forward declare required structs for function pointer.
Gijs Vermeulen (11):
msvcr120: Add [_]strtoimax[_l] and [_]strtoumax[_l].
msxml3/tests: Add more iteration tests for IXMLDOMNamedNodeMap, IXMLDOMSchemaCollection and IXMLDOMNodeList.
msxml3: Support Reset() for IEnumVARIANTs created by create_enumvariant.
msxml3: Support retrieving more than one element in IEnumVARIANT::Next() for IXMLElementCollection.
msvcrt: Add _s[w|n]printf_c[_l].
msvcrt: Fix _snprintf_l function signature.
msvcrt: Add _snprintf_s_l.
msvcirt: Set error when file can't be opened in fstream_open_ctor.
msvcirt: Implement ofstream class.
mshtml: Implement IOleObject::[Get|Set]Extent.
dwmapi: Implement DwmIsCompositionEnabled.
Haidong Yu (3):
conhost: Add missing LeaveCriticalSection.
ws2_32: Add missing LeaveCriticalSection.
conhost: Input should be restored and input_thread handle should be closed before return.
Hans Leidekker (2):
crypt32: Set key context if PKCS12_NO_PERSIST_KEY is passed, otherwise set key provider info.
crypt32: Add support for CRYPT_MACHINE_KEYSET in PFXImportCertStore.
Haoyang Chen (1):
gdiplus: Implement GdipEnumerateMetafileSrcRectDestRect.
Henri Verbeet (3):
wined3d: Do not accumulate ended queries in wined3d_query_vk_poll().
wined3d: Implement shader_spirv_compile_vk().
wined3d: Implement sample masks for the Vulkan adapter.
Jacek Caban (42):
conhost: Introduce IOCTL_CONDRV_READ_CONSOLE ioctl.
conhost: Add support for ENABLE_ECHO_INPUT.
conhost: Add support for ENABLE_LINE_INPUT.
kernel32: Use IOCTL_CONDRV_READ_CONSOLE in ReadConsoleW when possible.
kernel32: Use NtDeviceIoControlFile directly for IOCTL_CONDRV_READ_CONSOLE and IOCTL_CONDRV_WRITE_CONSOLE.
conhost/tests: Improve handling slow conhost replies.
conhost/tests: Allow clear screen on console exit.
conhost/tests: Add ReadConsole tests.
conhost: Free screen buffer data in destroy_screen_buffer.
server: Introduce console_connection object.
kernelbase: Create console connection in init_console.
server: Allow creating unbound console connection objects.
server: Introduce IOCTL_CONDRV_BIND_PID ioctl.
server: Support creating console reference from console connection object.
kernelbase: Use console connection object in AttachConsole.
server: Remove no longer used attach_console request.
conhost: Explicitly set tty cursor position after updating output in write_console.
conhost: Signal console in tty_input if needed.
conhost: Terminate current read request when input when reading tty input fails.
conhost: Introduce Unix mode.
conhost: Use CP_UNIXCP in Unix mode.
conhost: Force using relative cursor positioning in update_read_output.
conhost: Delay creating input thread in Unix mode.
server: Introduce IOCTL_CONDRV_SETUP_INPUT ioctl.
conhost: Use IOCTL_CONDRV_SETUP_INPUT to initialize input in Unix mode.
kernelbase: Move force override logic to init_console_std_handles callers.
ntdll: Pass RTL_USER_PROCESS_PARAMETERS to get_initial_console.
ntdll: Fill console size in get_initial_console.
kernelbase: Use conhost to handle Unix consoles.
kernel32: Remove no longer used bare console support.
conhost: Fix a leak in create_screen_buffer.
wineconsole: Remove curses backend.
configure: Remove curses checks.
server: Remove support for creating bare consoles.
kernelbase: Move ReadConsoleInput.
kernel32: Move Beep implementation to conhost.
kernel32: Move Beep() to kernelbase.
conhost: Improve bound checking in fill_output.
kernelbase: Duplicate input and output handles to ensure that they are inheritable.
conhost/tests: Don't use inheritable handle for console pipe end.
conhost: Terminate pseudo console on input error.
user32: Support control characters in null driver VkKeyScanEx implementation.
Jactry Zeng (1):
comctl32: Implement WM_GETTEXTLENGTH for datetime picker.
Jiangyi Chen (1):
iphlpapi: Rename local variables shadowing the flags parameters.
Kevin Puetz (6):
rpcrt4: Fix ARM64 stack corruption in call_server_func.
oleaut32/tests: Reformat test_dump_typelib.
oleaut32/tests: Fix expect_wstr_acpval(...,NULL).
widl: All VARDESC fields of TKIND_UNION should have oInst=0.
oleaut32/tests: Cover GetVarDesc in test_dump_typelib.
widl: Remove duplicate '\n\n' in midl_info_guid.
Liam Middlebrook (1):
winevulkan: Update to VK spec version 1.2.154.
Martin Storsjo (1):
ntdll: Implement __C_specific_handler and _local_unwind for arm64.
Michael Müller (2):
ntdll: Implement NtFilterToken.
server: Implement support for creating a process with a specified token.
Michael Stefaniuc (13):
directmanipulation: Print the debug string and not the pointer to it.
winegstreamer: Drop redundant NULL check before heap_free().
xactengine3_7: Remove superfluous cast to self.
advapi32: Remove superfluous cast to self.
gdiplus/tests: Use the ARRAY_SIZE() macro.
windowscodecs/tests: Use the ARRAY_SIZE() macro.
qedit: Drop redundant NULL check before free().
dmime: Reimplement IPersistStream_Load() for SegTrigger track.
dmime: Simplify the parse_segments_list() helper.
dmime: Reimplement the segment item parser.
dmime: dmutils.h is no longer needed.
dmime: Get rid of the DMUS_PRIVATE_SEGMENT_ITEM typedef.
dmcompos: Remove the unused DMUS_PRIVATE_CHUNK struct.
Myah Caron (10):
msvcr120: Add imaxabs.
shell32: Add ShellLinkObject stubs.
shell32: Implement ShellLinkObject::get_Path.
sapi: Add AudioOutput registry keys.
sapi: Improve GetDefaultTokenId stub.
sapi: Fix MMAudioOut registry key location.
sapi: Add stubs for SpObjectToken.
sapi: Improve stub for ISpObjectToken::SetId.
dmstyle: Return S_FALSE for IDirectMusicStyle8::GetMotif.
dmband: Avoid cloning stream in parse_bands_list.
Nikolay Sivov (27):
include: Add some missing types to msxml6 typelib.
include: Handle same typelib name in msxml2.idl and msxml6.idl.
widl: Emit a guard around library contents.
combase: Use public symbol for special PS context flag.
ole32: Remove some leftovers from private header.
combase: Manage per-thread call cancellation counter.
oleacc: Use wide string constants.
oleacc/tests: Use wide string constants.
evr/mixer: Handle uninitialized input case in GetOutputAvailableType().
evr/tests: Add a test for returned input type instance.
dxva2: Implement CreateSurface().
dxva2: Return single software device for GetVideoProcessorDeviceGuids().
ole32/clipboard: Use wide string constants.
ole32/comcat: Use wide string constants.
dxva2: Return some static render target formats.
evr/mixer: Fix error handling in output types collection helper.
winedbg: Double dll name buffer size for unimplemented function exception.
include: Add an entry for ProcessIoPriority.
kernel32/tests: Link to more functions directly.
kernel32/tests: Add a test for PROC_THREAD_ATTRIBUTE_HANDLE_LIST.
server: Implement inherited handles list.
widl: Enable [hidden] attribute for enums.
widl: Allow [hidden] attribute on enum members.
widl: Add null source pointer check for typelib writer.
widl: Allow [restricted] for coclass-es.
comctl32/datetime: Do not call default procedure for WM_NCCREATE.
comctl32/tests: Use wide strings literals.
Paul Gofman (13):
d3d11: Avoid crash in _CopySubresourceRegion[1]() on NULL resources.
d3d10core/tests: Add test for NULL resource parameters for _CopySubresourceRegion().
msvcrt/tests: Test .{O|A}CP locale string.
wmc: Add Dxgi facility.
kernel32: Add string for DXGI_INVALID_CALL error.
kernel32: Add string for DXGI_ERROR_NOT_CURRENTLY_AVAILABLE error.
ntdll/tests: Test named pipe with empty name.
wined3d: Track resource binding as render target.
wined3d: Don't check for readonly depth / stencil in context_preload_texture().
wined3d: Track SRV to RTV aliasing on sub resource level.
msvcrt: Implement _mbsnextc_l().
msvcrt: Implement _mbscmp_l().
msvcrt: Implement _mbbtype_l().
Pengpeng Dong (2):
gdiplus: Initialize the dead point coordinates in "GpPointF, *ptf" to 0.
conhost: Validate width param in write_output.
Piotr Caban (13):
d3d9: Lock wined3d mutex in d3d9_device_CreateTexture().
msvcrt: Fix buffer overflow in _write function.
msvcrt: Fix _vs{w,n}printf_c function when terminating character doesn't fit into buffer.
msvcrt: Fix count parameter type in printf functions family.
msvcirt: Set error when file can't be opened in ifstream_open_ctor.
msasn1: Fix buffer allocations.
msvcrt: Use default user locale when only codepage is passed to setlocale.
msvcrt: Fix console detection in _write.
server: Don't create wait object if infinite timeout is passed to NtSetTimer.
server: Don't overflow if timeout doesn't fit into int range in get_next_timeout.
setupapi: Remove unused end parameter from next_xml_attr internal function.
setupapi: Copy all files specified in manifest on wine dll install.
gdi32: Share font_gamma_ramp structure between all DCs.
Robert Wilhelm (3):
vbscript: Parse decimal literals between -1 and 1 without 0 in front.
vbscript: Fix vanishing statements.
vbscript: Fix handling zero and negative number arguments in err.raise.
Roberto Pungartnik (1):
po: Brazilian Portuguese update.
Rémi Bernon (6):
gdi32/tests: Add test fonts with names in several languages.
gdi32: Look for another secondary font family name.
gdi32: Use explicit CDECL in gdi_image_bits.
gdi32: Use explicit CDECL in window_surface_funcs.
windowscodecs/tests: Add a simple JXR/WMP test case.
windowscodecs: Support JXR/WMP detection and formats.
Stefan Dösinger (1):
ntdll: Use the MacOS file handle limit workaround from libs/wine/loader.c.
Sven Baars (1):
ntdll: Fix some memory leaks (Valgrind).
Vijay Kiran Kamuju (1):
include: Remove duplicated defines in winnt.h.
Yongjie Yao (1):
msxml3: Fix a memory leak (Valgrind).
Zebediah Figura (23):
server: Create the Afd device.
server: Return a new, uninitialized socket when opening the Afd device.
server: Introduce IOCTL_AFD_CREATE.
ws2_32: Reimplement WSASocketW() on top of NtOpenFile() and IOCTL_AFD_CREATE.
server: Remove the no longer used create_socket request.
advapi32/tests: Test which tokens DuplicateHandle() validates access against.
advapi32/tests: Add more tests for CreateRestrictedToken().
kernelbase: Implement CreateRestrictedToken().
advapi32/tests: Add basic tests for CreateProcessAsUser().
ntdll: Pass the token to NtCreateUserProcess().
kernelbase: Pass the token to NtCreateUserProcess().
server: Check duplicated handle access against the calling thread token and target process token.
wined3d: Factor out wined3d_state_uses_depth_buffer().
winegstreamer: Don't set the buffer offset in request_buffer_src().
winegstreamer: Avoid leaking a newly allocated buffer on failure in request_buffer_src().
ws2_32: Translate WSA_FLAG_OVERLAPPED to NT overlapped flags.
ws2_32: Translate SIO_ADDRESS_LIST_CHANGE into a proper NT ioctl.
server: Move sock_ioctl() down to avoid forward declarations.
ws2_32/tests: Add more tests for WSASocket() parameters.
ws2_32: Always return WSAEINVAL if AF_UNSPEC is used with a zero protocol.
wined3d: Introduce a depth/stencil state object.
d3d11: Use wined3d depth/stencil state objects.
wined3d: Fully move the depth buffer enable state to wined3d_depth_stencil_state.
Zhipeng Zhao (1):
winex11.drv: If the end of the sequence is '\r\n', there is no need to add extra '\r'.
Zhiyi Zhang (5):
user32/tests: Fix a test failure.
user32/tests: Add display orientation tests.
winex11.drv: Sort display modes with orientation considered.
winex11.drv: Support finding a full display mode with specified orientation.
winex11.drv: Support display orientations for XRandR 1.4 display settings handler.
Ziqing Hui (2):
kernel32/tests: Add more tests for UpdateResource.
kernel32: Use uppercase name in UpdateResourceW().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that release 1.2 of vkd3d, the Direct3D to
Vulkan translation library, is now available.
This release contains improvements that are listed in the release notes below.
The main highlights are:
- Availability of libvkd3d-shader as a public library.
- Support for tessellation shaders.
- Version 1.1 root signatures.
- Stream output support.
The source is available from the following location:
https://dl.winehq.org/vkd3d/source/vkd3d-1.2.tar.xz
The current source can also be pulled directly from the git repository:
https://source.winehq.org/git/vkd3d.git/
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
for the complete list.
----------------------------------------------------------------
What's new in vkd3d 1.2
=======================
*** libvkd3d
- Newly implemented Direct3D 12 features:
- Multi-sampling.
- Reserved resources.
- Instance data step rates. This requires the
VK_EXT_vertex_attribute_divisor extension.
- `Private data' APIs for all interfaces.
- Shader-resource view component mappings.
- Indirect indexed draws.
- Indirect draws with a count buffer. This requires the
VK_KHR_draw_indirect_count extension.
- Stream output and stream output queries. This requires the
VK_EXT_transform_feedback extension.
- Predicated/conditional rendering.
- Primitive restart.
- Depth rendering without a pixel shader.
- Depth clipping. This requires the VK_EXT_depth_clip_enable extension.
- Rasteriser discard.
- Dual-source blending.
- Mapping placed resources.
- The ReadFromSubresource() and WriteToSubresource() ID3D12Resource methods.
- Simultaneous access to resources from multiple queues.
- Null-views. I.e., views without an underlying resource.
- Several more feature support queries.
- New interfaces:
- vkd3d_serialize_versioned_root_signature() and
vkd3d_create_versioned_root_signature_deserializer() provide support for
versioned root signatures.
- The vkd3d_application_info structure extends the
vkd3d_instance_create_info structure, and can be used to pass information
about the application to libvkd3d. It is analogous to the
VkApplicationInfo structure in Vulkan. Its `api_version' field should be
set to the version of the libvkd3d API that the application targets.
- The vkd3d_optional_device_extensions_info structure extends the
vkd3d_device_create_info structure, and can be used to pass a list of
device extensions to enable only when available to libvkd3d. It is
analogous to the vkd3d_optional_instance_extensions_info structure for
instance extensions.
- New environment variables:
- VKD3D_CONFIG can be used to set options that change the behaviour of
libvkd3d.
- VKD3D_TEST_BUG can be used to disable bug_if() conditions in the test
suite.
- VKD3D_TEST_FILTER can be used to control which tests are run.
- VKD3D_VULKAN_DEVICE can be used to override the Vulkan physical device
used by vkd3d.
See the README for more detailed descriptions and how to use these.
- When the VK_KHR_dedicated_allocation extension is available, dedicated
allocations may be used for committed resources.
- When the VK_KHR_image_format_list extension is available, it will be used to
inform the driver about the view formats that a particular mutable Vulkan
image can be used with. This improves performance on some Vulkan
implementations.
- When the VK_EXT_debug_marker extension is available, object names set with
the ID3D12Object SetName() method will be propagated to the underlying
Vulkan objects.
- Unordered-access view clears are supported on more formats. Previously these
were limited to integer formats for texture resources, and single component
integer formats for buffer resources.
- When the D24_UNORM_S8_UINT format is not supported by the Vulkan
implementation, the D32_SFLOAT_S8_UINT format will be used instead to
implement the D24_UNORM_S8_UINT and related DXGI formats. This is required
because the DXGI D24_UNORM_S8_UINT format is mandatory, while the Vulkan
D24_UNORM_S8_UINT format is optional.
- Various bug fixes.
*** libvkd3d-shader
- libvkd3d-shader is now available as a public instead of an internal library.
- New features:
- Tessellation shaders.
- Root signature version 1.1 serialisation, deserialisation, and conversion.
- Multi-sample masks.
- Per-sample shading.
- Early depth/stencil test.
- Conservative depth output.
- Dual-source blending.
- Stream output.
- Viewport arrays.
- Support for OpenGL SPIR-V target environments. This allows SPIR-V produced
by libvkd3d-shader to be used with GL_ARB_gl_spirv. This includes support
for OpenGL atomic counters and combined samplers.
- Preliminary support for shader model 5.1 shaders. This is still a work in
progress. Notably, support for resource arrays is not yet implemented.
- When the SPV_EXT_demote_to_helper_invocation is available, it will be used
to implement the `discard' shader instruction instead of using SpvOpKill. In
particular, this ensures the `deriv_rtx' and `deriv_rty' instruction return
accurate results after a (conditional) `discard' instruction.
- Support for using SPIR-V specialisation constants for shader parameters.
- Support for more shader instructions:
- bufinfo,
- eval_centroid,
- eval_sample_index,
- ld2ms,
- sample_b,
- sample_d,
- sample_info,
- samplepos.
- When built against SPIRV-Tools, libvkd3d-shader can produce SPIR-V shaders
in text form.
- libvkd3d-shader now has its own environment variable (VKD3D_SHADER_DEBUG) to
control debug output.
- Various shader translation fixes.
*** vkd3d-compiler
- When supported by libvkd3d-shader, text form SPIR-V is available as a target
format, in addition to the existing binary form SPIR-V target format.
- Input from standard input, and output to standard output is supported.
*** libvkd3d-utils
- To specify the libvkd3d API version to use when creating vkd3d instances,
define VKD3D_UTILS_API_VERSION to the desired version before including
vkd3d_utils.h. If VKD3D_UTILS_API_VERSION is not explicitly defined,
VKD3D_API_VERSION_1_0 will be used.
- Support for versioned root signatures is provided by the
D3D12SerializeVersionedRootSignature() and
D3D12CreateVersionedRootSignatureDeserializer() entry points.
*** build
- The minimum required version of Vulkan-Headers and SPIRV-Headers for this
release is version 1.1.113.
- The minimum required version of widl for this release is version 3.20.
- If doxygen is available, it will be used to build API documentation. By
default, documentation will be generated in HTML and PDF formats.
- If debug logs are not required or desired, defining VKD3D_NO_TRACE_MESSAGES
and VKD3D_NO_DEBUG_MESSAGES will prevent them from being included in the
build. For example, a release build may want to configure with
`CPPFLAGS="-DNDEBUG -DVKD3D_NO_TRACE_MESSAGES -DVKD3D_NO_DEBUG_MESSAGES"'.
- Microsoft Windows is now a supported target platform. To create a build for
Windows, either cross-compile by configuring with an appropriate --host
option like for example `--host=x86_64-w64-mingw32', or build on Windows
itself using an environment like MSYS2 or Cygwin.
The Wine development release 5.17 is now available.
What's new in this release (see below for details):
- ADVAPI32 library converted to PE.
- Beginnings of an NDIS network driver.
- Still more restructuration of the console support.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.17.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.17.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 5.17 (total 17):
22616 Multiple applications need msvcirt.dll.??0ifstream@@QAE@PBDHH@Z (Merriam-Webster Dictionary, Power Tab Editor, gmax 1.2, GradeBook for Windows, Microsoft Reader)
24182 Multiple games need IDirectDrawMediaStream::Get/SetFormat implementation (Need for Russia, Motocross Madness 2, The Sims Complete Collection)
30014 Multiple programs require msvcirt.dll.??0ifstream@@QAE@XZ (Wouxun KG-UV2D, Charon, Cricket 2002, Mastercook 15, GraphCalc)
35782 Tic Tac Toe Game (vbscript) cannot be played (colon used in for loop for placing multiple statements on the same line)
41005 Deadlight: Director's Cut (UE3, 64-bit) loads to a black screen
43999 GetVersion incorrectly fails to lie about the OS version when masquerading as Windows 8.1 or 10
45642 Chrome/Chromium sandbox needs x86-64 syscall thunks to match Windows
46278 Cisco Jabber 12.5 sends only first letter due to missing richedit:ITextRange functions
47048 Logitech webcam does not show picture, only grey
47642 Support conversion from GST_VIDEO_FORMAT_RGB to DirectShow-supported formats (needed by Risk II + native amstream)
48130 Launching World of Tanks from the shortcut doesn't work
48407 OllyDbg 2.x segfaults the process after attaching to it
49125 Logos Bible Software Indexing fails 64bit only 32bit works
49242 provide some way to get reported windows version via command line
49749 Visual Studio 2019 installer crashes after unpacking content
49762 Emulated virtual desktop ignores size set in winecfg
49805 Pyxel Edit crashes when clicking the "File" dropdown option.
----------------------------------------------------------------
Changes since 5.16:
Aaro Altonen (1):
ws2_32: Improve WSCGetProviderPath() stub.
Akihiro Sagawa (1):
po: Update Japanese translation.
Alex Henrie (1):
comdlg32: Fix error precedence in IFileDialog2_SetFileTypes.
Alexandre Julliard (32):
kernel32: Move the initial process breakpoint to LdrInitializeThunk().
ntdll: Call the thread entry point through BaseThreadInitThunk().
ntdll: Call the process entry point through RtlUserThreadStart().
kernel32: Remove the no longer used __wine_start_process() function.
ntdll: Get rid of the server_init_process_done() Unix library callback.
ntdll: Move the NT path conversion for exec process to the Unix library.
ntdll: Use the process parameters directly in exec_process().
ntdll: Get rid of the exec_process() Unix library callback.
ntdll: Make the reserved area functions static.
ntdll: Move the reserved area functions to avoid forward declarations.
ntdll: Add a helper function for fixed anonymous mmaps.
ntdll: Add a helper function for memory allocations through mmap().
ntdll: Add a helper function to try an mmap at a fixed address.
ntdll: Load libwine dynamically.
ntdll: Pop the Unix stack completely in call_user_apc_dispatcher().
loader: No longer depend on libwine.
libwine: Remove wine/library.h.
libwine: Make the remaining configuration functions obsolete.
makefiles: Get rid of rpath support.
makefiles: Add dependencies for the import lib symlinks.
makefiles: Expand makedep path at compile time.
makefiles: Store .pot files in a separate variable.
makefiles: Add some missing object dir references.
makefiles: Build extra targets explicitly if they are not a dependency.
advapi32: Build with msvcrt.
makefiles: Explicitly import the CRT library also for test dlls.
wineandroid.drv: Load libwine dynamically.
wineandroid.drv: Pass the source directory on the gradle command line.
makefiles: Also store the basename without object dir for generated files.
makefiles: Fix a few more object directory references.
makefiles: Remove support for generating a single makefile.
makefiles: Add separate variable to keep track of source dir font files.
Anton Baskanov (5):
amstream: Implement AMDirectDrawStream::GetFormat.
amstream: Implement AMDirectDrawStream::SetFormat.
amstream: Reject incompatible media types in AMDirectDrawStream::ReceiveConnection.
amstream: Reconnect if the new format is incompatible with the connection media type in AMDirectDrawStream::SetFormat.
amstream: Use current format to create surface in AMDirectDrawStream::CreateSample.
Arkadiusz Hiler (7):
msvcirt: Implement most of ifstream.
msvcirt: Correct the behavior of filebuf::setbuf().
msvcirt: Implement ifstream::setbuf().
msvcirt: Be more obvious in out-of-memory situations.
msvcirt: Implement _mtlock() and _mtunlock().
msvcirt: Include iostream in strstream's and stdiostream's rtti hierarchy.
msvcirt: Implement a part of fstream.
Biswapriyo Nath (7):
include/d3dcommon.idl: Add D3DDestructionNotifier interface.
include/d3dcommon.idl: Add missing names in D3D_SHADER_VARIABLE_TYPE enum.
include/d3dcommon.idl: Add missing names in D3D_NAME enum.
include/d3dcommon.idl: Add missing names in D3D_SHADER_INPUT_TYPE enum.
include/d3d10.idl: Add flags in D3D10_CREATE_DEVICE_FLAG enum.
include/d3d11.idl: Add flags in D3D11_RESOURCE_MISC_FLAG enum.
include/d3d11.idl: Add names in D3D11_FILTER enum.
Brendan Shanks (3):
winevulkan: Change make_vulkan interpreter to '/usr/bin/env python3'.
winemac.drv: Print error when no GPUs are detected.
winemac.drv: Don't fail GPU detection if some IOKit properties are missing.
Carlos Rivera (3):
kernel32/tests: Use debugstr_an to show contents of buffer.
kernel32/tests: Remove registry entry left out during test.
kernel32/tests: Change file name to avoid collision with other tests.
Chao Long (2):
ntdll: Fix a memory leak (Valgrind).
ntdll: Fix a ImagePathName memory leak (Valgrind).
Derek Lesho (5):
mfplat: Remove fallback media source.
winegstreamer: Add stub bytestream handler.
winegstreamer: Add stub media source.
winegstreamer: Implement source event methods.
winegstreamer: Implement IMFMediaSource::Shutdown.
Eric Wheeler (1):
comctl32/listview: Add Get/SetSelectedColumn() support.
Esme Povirk (1):
mscoree: Use exe basename to name the default domain.
Fabian Maurer (1):
user32/menu: Store application defined value as pointer.
Francesco Noferi (1):
cmd.exe: Fix parsing of && between quotes.
Gabriel Ivăncescu (7):
msscript.ocx/tests: Add tests for SitehWnd.
msscript.ocx: Implement IScriptControl::put_SitehWnd.
msscript.ocx: Implement IScriptControl::get_SitehWnd.
msscript.ocx: Implement IActiveScriptSiteWindow::GetWindow.
msscript.ocx: Return S_OK from the IActiveScriptSiteWindow::EnableModeless stub.
msscript.ocx: Implement UseSafeSubset properly by setting the interface safety options.
msscript.ocx: Supply a stub ServiceProvider to InvokeEx in run_procedure.
Georg Lehmann (1):
winex11.drv: Use vkGetPhysicalDeviceProperties2KHR to get gpu properties.
Gijs Vermeulen (1):
crypt32: Remove unused variable in test_CryptBinaryToString().
Hans Leidekker (12):
mountmgr: Add ioctl to read host credentials on macOS.
advapi32: Read host credentials through mountmgr.
mountmgr: Add ioctl to write host credentials on macOS.
advapi32: Write host credentials through mountmgr.
mountmgr: Add ioctl to delete host credentials on macOS.
advapi32: Delete host credentials through mountmgr.
mountmgr: Add ioctl to enumerate host credentials on macOS.
advapi32: Enumerate host credentials through mountmgr.
ntdll: Return buffer filled with random values from NtQuerySystemInformation(SystemInterruptInformation).
advapi32: Reimplement SystemFunction036 using system interrupt information.
advapi32: Use wide character string literals.
crypt32: Store CERT_KEY_CONTEXT in a platform independent way.
Isabella Bosia (7):
iphlpapi: Unify conversions to interface guid.
iphlpapi: Make the interface guids more unique.
wine.inf: Create NDIS service.
ndis.sys: Create network card registry keys.
ndis.sys: Create network card devices.
ndis.sys: Implement IOCTL_NDIS_QUERY_GLOBAL_STATS on network cards.
ndis.sys/tests: Add tests for ndis ioctls.
Jacek Caban (28):
conhost: Implement IOCTL_CONDRV_FILL_OUTPUT.
conhost: Implement IOCTL_CONDRV_SCROLL.
kernelbase: Move KERNEL32_CONSOLE_ALLOC handling to kernelbase.
kernel32/tests: Skip more FreeConsole tests on win7.
server: Introduce IOCTL_CONDRV_CTRL_EVENT ioctl.
kernelbase: Use IOCTL_CONDRV_CTRL_EVENT in GenerateConsoleCtrlEvent.
server: Support IOCTL_CONDRV_CTRL_EVENT on console server handles.
conhost: Support CTRL_C_EVENT in write_console_input.
conhost: Initialize tty output.
conhost: Support setting tty title in set_console_title.
conhost/tests: Add initial tty tests.
conhost: Synchronize tty cursor position in set_output_info.
conhost: Support tty output in write_output.
conhost/tests: Add tty output tests.
conhost: Update tty output in fill_output.
conhost: Update tty output in scroll_output.
conhost: Update tty output in IOCTL_CONDRV_ACTIVATE.
dwrite.idl: Use DEFINE_ENUM_FLAG_OPERATORS for enums that need it.
conhost: Move console input processing into a separated function.
conhost: Add tty input implementation.
conhost/tests: Add tty input tests.
kernel32/tests: Skip more tests on old Windows.
conhost: Use more standard hide cursor sequence.
conhost: Introduce IOCTL_CONDRV_WRITE_CONSOLE ioctl.
kernel32: Use IOCTL_CONDRV_WRITE_CONSOLE in WriteConsoleW when possible.
conhost/tests: Add WriteConsole tests.
kernel32/tests: Allow ENABLE_VIRTUAL_TERMINAL_PROCESSING in default mode.
conhost/tests: Wait for child process in test_pseudoconsole.
Jeff Smith (3):
qcap/tests: Test effect of setting stream format on media type enumeration.
qcap: Calculate image size and pitch when setting format.
qcap: Enumerate one media type if pin format has been set.
Jiajin Cui (1):
gdiplus: Make gdi_alpha_blend fallback to StretchBlt if current Compositing Mode is SourceCopy.
Ken Thomases (2):
dbghelp: Avoid asserting on egregiously long stabs symbol names.
mountmgr: Avoid operating on a null CFStringRef, which would crash.
Liam Middlebrook (1):
winevulkan: Fail on explicit layer usage.
Louis Lenders (1):
ntdll: RtlConvertToAutoInheritSecurityObject is NTSTATUS, not BOOL.
Martin Storsjo (4):
ntdll: Fix arm64 regression from "Clear the syscall frame on return".
ntdll: Don't truncate SP in arm64 handle_syscall_fault.
ntdll: Add ARM64 SEH unwind directives for assembly functions in PE builds.
ntdll: Fix more corner cases for arm64 packed info unwinding.
Matteo Bruni (5):
d3d11: Report D3D11_FORMAT_SUPPORT_TEXTURECUBE in CheckFormatSupport().
d3d11: Report D3D11_FORMAT_SUPPORT_MIP in CheckFormatSupport().
d3d11: Report D3D11_FORMAT_SUPPORT_MIP_AUTOGEN in CheckFormatSupport().
d3d11: Report D3D11_FORMAT_SUPPORT_BLENDABLE in CheckFormatSupport().
d3d11: Report multisample flags in CheckFormatSupport().
Myah Caron (2):
cmd.exe: Fix /Y flag for move builtin.
cmd.exe: Don't prompt for move when non-interactive.
Nikolay Sivov (28):
combase: Move stub manager.
combase: Move CoReleaseMarshalData().
combase: Move CoUnmarshalInterface().
combase: Move remaining marshalling code.
combase: Move ORPC functionality.
combase: Move currently unimplemented COM API functions.
combase: Move default memory stream implementation.
api-ms: Redirect com-private to combase.
combase: Implement local server registration via SCM.
kernelbase: Forward ConvertToAutoInheritPrivateObjectSecurity() to ntdll.
combase: Use typed list iteration macros.
evr: Create and initialize mixer transform attributes.
evr/mixer: Use same max input count symbol for GetStreamLimits().
mf/evr: Actually use custom mixer when available.
mf/evr: Implement stream sinks management functionality.
mf/evr: Add events support for video stream sinks.
mf/session: Add support for MR_VIDEO_RENDER_SERVICE service.
mf/tests: Fix tests crashes.
mf/evr: Create stream sinks for default mixer inputs.
mf/evr: Add a IMFMediaTypeHandler stub for input video streams.
mf/evr: Add GetMajorType() for the stream sink.
evr/mixer: Return initial mixing preferences.
maintainers: Get rid of removed paths.
evr/mixer: Add another set of attributes.
combase: Implement CoCreateInstanceFromApp().
ole32/tests: Use treat-as-class functions directly.
ole32/tests: Link to storage API directly.
ole32/tests: Fix test crash on recent Windows 10.
Owen Rudge (2):
winecfg: Ensure registry key is initialised before updating Windows version.
winecfg: Add /v parameter to display current Windows version.
Paul Gofman (22):
ntdll: Implement RtlGetExtendedContextLength().
kernel32: Implement InitializeContext[2]().
kernel32: Implement LocateXStateFeature().
ntdll: Implement RtlLocateLegacyContext().
ntdll: Clear CONTEXT_XSTATE flag in RtlUnwindEx().
wbemprox: Provide semi-stub implementation for client_security_QueryBlanket().
kernel32: Implement SetXStateFeaturesMask().
kernel32: Implement GetXStateFeaturesMask().
kernel32: Implement CopyContext().
ntdll: Implement saving AVX registers in NtGetContextThread().
ntdll/tests: Add tests for capturing context with xstate.
ntdll/tests: Fix exception test failures on win10pro.
ntdll/tests: Fix virtual test failures on win10pro.
d3dcompiler: Support ID3D12ShaderReflection interface in D3DReflect().
d3dcompiler/tests: Add test for reflection interfaces.
d3dcompiler/tests: Test d3d12 interface in test_reflection_desc_vs().
d3dcompiler: Set range id to bind point for sm < 5.1.
d3dcompiler/tests: Test d3d12 interface in test_reflection_constant_buffer().
d3dcompiler: Fill texture fields in D3D11_SHADER_VARIABLE_DESC with default values.
vcruntime140_1: Handle rethrowing from nested try blocks on x64.
msvcrt: Handle rethrowing from nested try blocks on x64.
d3dcompiler/tests: Test d3d12 interface in test_reflection_bound_resources().
Pengpeng Dong (1):
quartz: Return E_POINTER from IVideoWindow::get_Visible() if "visible" is NULL.
Robert Wilhelm (1):
vbscript: Colon used in for loop.
Roberto Pungartnik (1):
po: Update Brazilian Portuguese translation.
Rémi Bernon (16):
bcrypt: Return STATUS_INVALID_PARAMETER on ECC magic mismatch.
bcrypt: Export ECDSA/ECDH blobs with the correct header magic.
gdi32: Only trace new faces when they are added.
winex11.drv: Don't wait for the desktop thread to store clipping window.
widl: Search for known types in current namespace.
widl: Output interface C names in method argument list.
widl: Support fully qualified names in WinRT mode.
gdi32/tests: Test extended TTF font names and collisions.
gdi32: Introduce ft_face_get_family/style_name helpers.
gdi32: Rewrite prepend_at helper as get_vertical_name.
gdi32: Build full name from family + style when missing.
gdi32: Rename StyleName to style_name for consistency.
gdi32: Use fixed size array for family and english name.
gdi32: Compare full name before discarding faces.
kernelbase: Also pass CreateFile2 file flags to CreateFileW.
user32: Return TRUE from ShowWindow(SW_SHOW) if already visible.
Zebediah Figura (36):
quartz/vmr9: Avoid leaking the presenter's reference to the d3d9 device.
winegstreamer: Fix a leak in gstdecoder_source_get_media_type().
amstream/tests: Avoid leaking "stream" in test_find_pin().
amstream/tests: Get rid of test_renderfile().
kernel32/tests: Pass the correct size for PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE.
d3dcompiler/tests: Add more tests for SM4 constant packing.
d3dcompiler/tests: Add tests for constant buffer binding descriptors.
d3dcompiler/tests: Add tests for semantics.
d3dcompiler/tests: Add tests for samplers.
d3dcompiler: Unconditionally report special (pixel shader output) sysvals based on the semantic name.
server: Avoid a potential NULL dereference in startup_info_dump().
d3d11/tests: Test specifying the multisample mask via OMSetBlendState().
d3d10core/tests: Test specifying the multisample mask via OMSetBlendState().
d3d9/tests: Add a test for sample masks.
wined3d: Store the sample mask in wined3d_state.
wined3d: Implement OpenGL sample masks.
wined3d: Read the SM5 resource type instruction modifier.
wined3d: Read the SM5 resource data type instruction modifier.
dxgi: Add DXGI_FORMAT_NV12 and DXGI_FORMAT_YUY2.
d3d11: Add DXGI_FORMAT_NV12 and DXGI_FORMAT_YUY2.
qcap/avimux: Pass the correct field to CONTAINING_RECORD in impl_sink_from_strmbase_pin().
wintrust/tests: Add more tests for CryptCATOpen() file modes.
wintrust: Assign the file open mode directly instead of treating it as a bitmask.
wintrust: Translate a lack of open mode flags to OPEN_ALWAYS.
wintrust: Translate CRYPTCAT_OPEN_CREATENEW to CREATE_ALWAYS.
include: Add more setupapi error codes.
include: Add a couple more SIP indirect data flags.
mssign32: Use public SPC_* flag definitions.
include: Add catalog file version constants.
server: Use GENERIC_READ | GENERIC_WRITE in inherit_console().
include: Use ioctl access bits for console driver ioctls.
winegstreamer: Dereference messages dropped from watch_bus().
ws2_32: Keep a list of open sockets.
ws2_32: Close all open sockets in WSACleanup().
server: Remove no longer used enumerate_handles().
server: Remove no longer used is_fd_signaled().
Zhiyi Zhang (6):
user32: Always wait for the desktop process to be ready in load_desktop_driver().
ddraw/tests: Add display mode frequency tests.
ddraw: Report correct frequency in GetDisplayMode().
dxgi/tests: Relax closest matching mode comparison.
dxgi/tests: Fix swapchain parameter test failures on Win10 1909.
dxgi/tests: Fix output ownership test failures on Win10 1909.
Ziqing Hui (8):
d3dx10: Introduce get_d3dx10_dds_format().
d3dx10: Add D3DX10GetImageInfoFromFile{A, W}() stub implementation.
d3dx10: Add D3DX10GetImageInfoFromResource{A, W}() stub implementation.
d3dx10/tests: Introduce create_file() and delete_file().
d3dx10/tests: Introduce check_image_info().
d3dx10/tests: Add tests for D3DX10GetImageInfoFromFileW().
windowscodecs/tests: Add tests for calling WriteSource() without calling SetSize() prior to it.
windowscodecs: Correctly set output frame size for WriteSource().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.16 is now available.
What's new in this release (see below for details):
- Support for x86 AVX registers.
- Some ARM64 fixes for macOS.
- Still more restructuration of the console support.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.16.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.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 5.16 (total 21):
21150 Memorex exPressit Label Design Studio 4.x crashes when creating a new project (ieframe 'IOleObject::Advise' is a stub)
24320 Cisco Quick VPN Client (QVPN) v1.4.x tool 'DetectEnvStatus.exe' crashes
37913 Inconsistent rounding behaviour for sprintf
39712 AirDC++: Crash after finishing setup wizard
39881 d3dx9_36/tests/mesh.ok: failed on line 4145 Test text
44200 Quake Champions Instant Crash To Desktop (Steam)
46350 Armored Warfare mouse stutter
46994 Firefox doesn't load pages
47570 Builtin Split function not implemented (needed by FotoBizX Installer)
49400 Multiple Windows 10 applications need IsWow64Process2 to determine real OS architecture (ex: detect WOW64 on ARM64)
49564 Tomb Raider I (using DosBox) hangs after starting
49631 Wine does not fill in Vulkan device LUID property when running in Virtual Desktop
49648 Still Life hangs when player starts moving
49698 Unwinding with a PE based ntdll.dll fails in some cases
49712 Magic: The Gathering Arena fails to connect to server
49716 Toontown Corporate Clash's Windows Installer crashes inside IsWow64Process2
49718 ABZU broken with math functions from musl
49719 The Bat! v9.2.2.3: The 32bit version and the 64bit version crashed after startup
49728 Appear (a 4K rendering demo) crashes on unimplemented function user32.dll.SetWindowFullScreenState
49730 Number formatting broken with "nl_NL.UTF-8" (for msmoney)
49746 crash when virtual debug channel is enabled
----------------------------------------------------------------
Changes since 5.15:
Alex Henrie (2):
urlmon/tests: Work around broken Win10 in test_CoInternetCombineUrlEx.
user32: Comment out SetWindowFullScreenState.
Alexandre Julliard (21):
ntdll: Call NtContinue() from LdrInitializeThunk() instead of returning.
ntdll: Don't expect LdrInitializeThunk() to return to the Unix side.
ntdll: Unwind the syscall frame when calling KiUserApcDispatcher().
ntdll: Unwind the syscall frame in NtSetContextThread().
kernel32: Fix user handle conversion in GetConsoleWindow().
ntdll: Handle page faults happening during a syscall without dispatching the exception.
ntdll: Stop resolving imports for the Unix library.
ntdll: Avoid referencing winecrt0 exception handlers from the Unix library.
winecrt0: Move setjmpex/longjmp implementation to a separate file.
makefiles: Don't implicitly import the module itself when -nodefaultlibs is used.
winebuild: Allow syscalls to use the cdecl convention.
ntdll: Use syscalls for the server functions.
ntdll: Use syscalls for the file path conversion functions.
ntdll: Use syscalls for the Wine version functions.
ntdll: Use syscalls for a couple of Wine internal functions.
ntdll: Get rid of the server_init_process_done() Unix library callback.
ntdll: Use exported APIs instead of virtual_map_section() to load PE modules.
ntdll: Clear the syscall frame on return instead of popping the previous one.
ntdll: Clear the thread stack by hand instead of remapping zero pages.
Revert "ntdll: Get rid of the server_init_process_done() Unix library callback."
conhost: Fix some pointer cast warnings.
Alistair Leslie-Hughes (1):
include: Add more eAVEncH264VProfile enums.
Andrew Eikum (1):
winepulse: Don't rely on pulseaudio callbacks for timing.
Arkadiusz Hiler (3):
Revert "ntdll/tests: Add test to check if GetTickCount is updated after sleeping.".
winmm: Add timeGetTime() implementation.
winmm: Default to 1ms resolution like we used to.
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Biswapriyo Nath (13):
include/xaudio2.idl: Use cpp_quote for xaudio2 error codes.
include/dxgi.idl: Fix typo in DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT member name.
include/dxgi.idl: Add missing DXGI_DISPLAY_COLOR_SPACE structure.
include/dxgi1_2.idl: Add missing values in DXGI_SCALING enum.
dxgi: Fix order of functions in IDXGIFactory2 interface.
include/dxgi1_5.idl: Add missing values in DXGI_HDR_METADATA_TYPE enum.
include/dxgi1_6.idl: Add missing values in DXGI_ADAPTER_FLAG3 enum.
include/d3d11sdklayers.idl: Add d3d11 debug feature flags.
include/d3d10.idl: Use unions in D3D10_BUFFER_RTV structure.
include/d3d10.idl: Use unions in D3D10_BUFFER_SRV structure.
include/d3d10sdklayers.idl: Add D3D10Debug interface.
include/d3d10sdklayers.idl: Add D3D10SwitchToRef interface.
include/d3d11sdklayers.idl: Add D3D11SwitchToRef interface.
Brendan Shanks (1):
winevulkan: Fix vkEnumerateInstanceExtensionProperties() behavior when no Vulkan driver is present.
Carlos Rivera (1):
kernel32: Remove obsolete comment.
Damjan Jovanovic (3):
riched20: Implement ITextRange::MoveStart() and ITextRange::MoveEnd() for tomCharacter.
riched20: Implement ITextRange::Move() for tomCharacter.
riched20: Implement ITextRange::StartOf() and ITextRange::EndOf() for tomCharacter.
Daniel Lehman (2):
msvcrt/tests: Add tests for SpecialCasing.
ucrtbase/tests: Add tests for SpecialCasing.
Derek Lesho (1):
shcore: Add GetScaleFactorForDevice() stub.
Dmitry Kislyuk (1):
vbscript: Implement case-insensitive search in Replace function.
Dmitry Timoshkov (2):
ole32: Add a check for hglobal pointer to GetHGlobalFromStream.
kernelbase: Native machine is optional for IsWow64Process2.
Fabian Maurer (2):
user32: Set default user preferences to enable animations.
msvcrt/math: In _fcvt/_fcvt_s handle locale decimal separator properly.
François Gouget (2):
winapi: Remove obsolete entries from win32.api.
winapi: Update win16.api.
Gabriel Ivăncescu (13):
msscript.ocx: Implement the ScriptProcedure enumerator.
msscript.ocx: Add the ScriptError stub implementation.
msscript.ocx: Implement IScriptError::Clear.
msscript.ocx: Implement IScriptError::get_Number.
msscript.ocx/tests: Add initial tests for ScriptError.
msscript.ocx: Implement IScriptError::get_Source.
msscript.ocx: Implement IScriptError::get_Description.
msscript.ocx: Implement IScriptError::get_HelpFile.
msscript.ocx: Implement IScriptError::get_HelpContext.
msscript.ocx: Implement IScriptError::get_Text.
msscript.ocx: Implement IScriptError::get_Line.
msscript.ocx: Implement IScriptError::get_Column.
msscript.ocx: Uncache the module objects when script is restarted, but not the Procedure count.
Gijs Vermeulen (8):
fsutil: Initialize ret in hardlink() (Coverity).
shell32: Free original_dos_name with correct function in TRASH_GetDetails() (Coverity).
evr: Fix typo in video_mixer_init_dxva_videodesc() (Coverity).
amstream: Return VFW_E_CANNOT_CONNECT in IAMMultiMediaStream::OpenFile() when no renderers are present and AMMSF_NORENDER is not specified.
amstream: Return S_FALSE when IMediaSeeking::GetDuration() fails in IAMMultiMediaStream::GetDuration().
qcap/tests: Remove unused enumMediaTypes in test_smart_tee_filter() (Coverity).
quartz: Close hfile when GetFileSizeEx fails in IFileSourceFilter::Load() (Coverity).
amstream: Implement IMediaStreamFilter::ReferenceTimeToStreamTime().
Jacek Caban (38):
kernelbase: Use IOCTL_CONDRV_SET_INPUT_INFO in SetConsoleCP.
kernelbase: Use IOCTL_CONDRV_SET_INPUT_INFO in SetConsoleOutputCP.
kernelbase: Use IOCTL_CONDRV_SET_TITLE in SetConsoleTitleW.
server: Remove no longer used set_console_input_info.
wineconsole: Make sure that console process is not attached to another console.
server: Use passed console handle to inherit console for created process.
conhost: Build with -mwindows.
kernel32/tests: Fix tests on some broken Windows versions.
server: Introduce console server object.
server: Support creating console reference from console server.
kernelbase: Add CreatePseudoConsole implementation.
kernelbase: Add ClosePseudoConsole implementation.
kernel32/tests: Add CreatePseudoConsole tests.
kernelbase: Support PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE.
conhost: Add initial main loop implementation.
server: Queue console ioctls for execution in host when console server is attached.
server: Introduce get_next_console_request request.
condrv: Implement initial ioctl processing.
conhost: Implement IOCTL_CONDRV_GET_MODE.
conhost: Implement IOCTL_CONDRV_SET_MODE.
conhost: Implement IOCTL_CONDRV_GET_INPUT_INFO.
conhost: Implement IOCTL_CONDRV_SET_INPUT_INFO.
conhost: Implement IOCTL_CONDRV_GET_TITLE.
conhost: Implement IOCTL_CONDRV_SET_TITLE.
conhost: Implement IOCTL_CONDRV_WRITE_INPUT.
server: Support blocking console host ioctls.
conhost: Implement IOCTL_CONDRV_READ_INPUT.
conhost: Implement IOCTL_CONDRV_PEEK.
server: Move setting current screen_buffer into a helper.
server: Allow passing screen buffer ioctls to conhost.
conhost: Initial support for screen buffers.
server: Forward screen buffer ioctls to conhost if possible.
conhost: Implement IOCTL_CONDRV_GET_MODE.
conhost: Implement IOCTL_CONDRV_SET_MODE.
conhost: Implement IOCTL_CONDRV_GET_OUTPUT_INFO.
conhost: Implement IOCTL_CONDRV_SET_OUTPUT_INFO.
conhost: Implement IOCTL_CONDRV_WRITE_OUTPUT.
conhost: Implement IOCTL_CONDRV_READ_OUTPUT.
Jeff Smith (1):
qcap/tests: Refactor interface testing.
Julian Rüger (3):
winemine: Rename difficulty to avoid translation issues.
winemine: Widen some controls to accomodate translations.
po: Update German translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (1):
explorerframe: Return S_OK in ITaskbarList::RegisterTab.
Martin Storsjo (16):
winebuild: Use the right arm64 page/pageoff relocation syntax for darwin.
ntdll: Trust libunwind's returned pc value on arm64.
ntdll: Fix the arm64 use of libunwind for macOS.
ntdll: Fix arm64 sigcontext access for darwin.
loader: Fix the generic case in get_self_exe().
winedump: Fix dumping of rare arm64 unwind opcodes.
include: Update ARM64 context flag definitions to match current SDKs.
ntdll: Add initial tests for arm64 RtlVirtualUnwind.
ntdll: Set handler_data correctly in arm64 RtlVirtualUnwind.
ntdll/tests: Add defines for the complete set of arm64 unwidning opcodes.
ntdll/tests: Support testing float registers in the arm64 virtual unwind test.
ntdll: Implement the arm64 machine frame and context unwind opcodes.
ntdll/tests: Add a larger testcase covering most arm64 unwinding opcodes.
ntdll: Fix arm64 jump buffer float restoration.
ntdll: Capture vector registers in arm64 RtlCaptureContext.
winedump: Fix the dumping of arm64 packed float restoration.
Nikolay Sivov (34):
combase: Add a function to allocate OLE thread data.
combase: Move GetErrorInfo().
combase: Add CoGetErrorInfo() as an alias for GetErrorInfo().
combase: Move SetErrorInfo().
combase: Add CoSetErrorInfo() as an alias for SetErrorInfo().
combase: Move CoGetCallContext().
combase: Move CoSwitchCallContext().
combase: Move CoRegisterInitializeSpy()/CoRevokeInitializeSpy().
combase: Move CoWaitForMultipleHandles().
combase: Move CoRegisterMessageFilter().
combase: Move local proxy-stub registration functions.
combase: Move CoGetContextToken().
combase: Move CoGetCurrentLogicalThreadId().
kernelbase: Pass inherited handles list when creating new process.
combase: Move CoGetCurrentProcess().
ole32: Use public symbol for maximum moniker comparison data length.
dwrite: Add partial implementation for IDWriteFontFace5::Equals().
combase: Expose ROT access helpers.
ole32: Use combase for ROT access.
ole32: Get rid of typedef'ed type for apartment structure.
ole32: Simplify apartment lookup helper.
ole32: Move apartment and activation management to a separate file.
combase: Move core apartment and activation functionality.
combase: Move CoFreeUnusedLibrariesEx().
ole32: Use single static instance for ROT.
combase: Move initialisation functions.
combase: Move MTA usage functions.
combase: Move CoGetApartmentType().
combase: Move CoGetClassObject().
ole32: Use InternalIsProcessInitialized().
ole32: Remove unused helper.
combase: Move server class registration.
combase: Move global apartment state cleanup.
combase: Move thread data cleanup.
Paul Gofman (17):
ntdll: Report newer vector processor features on x86 / x64.
ntdll: Don't transfer xmm registers explicitly during context save and restore on x64.
include: Update _XSTATE_CONFIGURATION structure definition.
ntdll: Remove redundant ldmxcsr in set_full_cpu_context() on x86_64.
include: Define _XSAVE_FORMAT structure.
include: Define extended context structures.
include: Implement __cpuidex() function.
wineboot: Initialize XState features in user_shared_data.
kernel32: Implement GetEnabledXStateFeatures().
ntdll/tests: Add test for xstate in extended context.
ntdll: Support AVX context in fault exceptions on Linux x86_64.
ntdll: Restore AVX registers in NtSetContextThread() on x86_64.
ntdll: Support AVX context in fault exceptions on Linux i386.
ntdll: Restore AVX registers in NtSetContextThread() on i386.
ntdll: Also save unwind info for rbp in call_consolidate_callback() on x64.
wmc: Add Null facility.
kernel32: Add string for E_NOTIMPL error.
Piotr Caban (2):
msvcrt: Fix acosf implementation when returning Pi or Pi/2.
msvcrt: Optimize memmove implementation.
Robert Wilhelm (3):
vbscript: Implement Split.
vbscript: Implement IsArray.
vbscript: Support arrays in TypeName.
Shawn M. Chapla (6):
gdiplus: Remove outdated FIXME comment about compositing mode.
gdiplus: Add missing allocation failure checks to graphics functions.
gdiplus/tests: Add cursory GdipGetClipBoundsI checks to graphics clipping test.
gdiplus: Implement GdipGetClipBoundsI in terms of GdipGetClipBounds.
gdi32: Pass correct pointer to PolyDraw during EMR_POLYDRAW playback.
gdi32: Implement EMR_POLYDRAW16 playback.
Sven Baars (2):
kernel32: Fix some string leaks (Coverity).
kernel32: Free the right variable (Coverity).
Zebediah Figura (5):
quartz: Reimplement AM_RENDEREX_RENDERTOEXISTINGRENDERERS by forbidding renderers from IFilterMapper2::EnumMatchingFilters().
xactengine3: Reduce code duplication in xact_classes.idl.
ntdll: Read the condition variable and manipulate the lock on the PE side.
server: Report named pipe device files as type "File".
devenum: Correct the size of "name" in register_avicap_devices().
Zhiyi Zhang (9):
winex11.drv: Report a GPU same as the host primary GPU in virtual desktop mode.
winex11.drv: Initialize new display device registry display settings.
winemac.drv: Initialize new display device registry display settings.
user32/tests: Add more registry display mode tests.
winex11.drv: Store a full display mode in registry.
winex11.drv: Allow setting a 0-bit color depth display mode.
winex11.drv: Always update _NET_WM_STATE in update_net_wm_states().
winex11.drv: Support full screen windows on non-primary monitors.
winex11.drv: Support clipping full screen windows on non-primary monitors.
Ziqing Hui (24):
windowscodecs: Introduce get_pixel_format_bpp().
windowscodecs: Add tests and initial implementation for DdsFrameDecode_CopyPixels().
windowscodecs/tests: Add tests for decoding BC1 format.
windowscodecs/tests: Fix a variable name typo in decode_bc1().
windowscodecs/tests: Add tests for decoding BC2 format.
windowscodecs/tests: Add tests for decoding BC3 format.
windowscodecs/tests: Merge decode_bc*() into a single function.
windowscodecs/tests: Add macro BLOCK_WIDTH and BLOCK_HEIGHT.
windowscodecs: Add a lock for DdsFrameDecode.
windowscodecs: In struct DdsFrameDecode, add a new member "pixel_data" and rename member "data" to "block_data".
windowscodecs: More complete implementation of DdsFrameDecode_CopyPixels().
windowscodecs: Introduce decode_block() for DdsFrameDecode_CopyPixels().
windowscodecs: Add WIC pixel format information to struct dds_format.
windowscodecs: Introduce get_dds_format() to replace get_dxgi_format().
windowscodecs/tests: Expect actual WIC formats for uncompressed image.
windowscodecs/tests: Introduce is_compressed().
windowscodecs/tests: Add pixel format bpp to test_data.
windowscodecs: Remove get_pixel_format_bpp().
windowscodecs/tests: Add CopyPixels data tests for uncompressed images.
windowscodecs/tests: Fix tests for CopyBlocks.
windowscodecs: Fix DdsFrameDecode_Dds_CopyBlocks().
windowscodecs: Support uncompressed format in DdsFrameDecode_CopyPixels().
windowscodecs: Correctly set pixel format of uncompressed DDS images.
windowscodecs: Add more supported formats and fix RGB masks for RGBA1010102.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.15 is now available.
What's new in this release (see below for details):
- Initial implementation of the XACT Engine libraries.
- Beginnings of a math library in MSVCRT based on Musl.
- Still more restructuration of the console support.
- Direct Input performance improvements.
- Exception handling fixes on x86-64.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.15.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.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 5.15 (total 27):
27207 splayer auto quit while open a mp3 file
31476 Bully Scholarship Edition: 'no DirectX 9.0c compatible sound card' on start, needs xactengine3_1.dll et al.
34263 Framebuffer read-before-write causes graphical glitches
38615 DSA: Drakensang Demo fails to start, reports 'XACT Error after IXACTEngine::Initialize: unknown error code - maybe not an XACT error'
40163 Racedriver GRID: freeze in the menu
41030 Pac-Man Museum (Steam) crashes on start, needs '{bcc782bc-6492-4c22-8c35-f5d72fe73c6e}' xactengine3_7.dll
41045 Captain Morgane crashes on start: needs clsid '{0977d092-2d95-4e43-8d42-9ddcc2545ed5}' xactengine3_4.dll
41738 Cloning and releasing an IStream frees the HGLOBAL memory
43153 Gothic 1.0 from Steam freezes in new game on phrase "I'm Diego"
44059 Worms World Party Remastered (GOG version) crashes at launch in clean wine prefix version 2.21 and 2.22
44306 Visual Novel "A Clockwork Ley-Line: The Borderline of Dusk" doesn't work with d3d9
45700 Call of Duty WWII sound issues
48684 "BlazBlue: Calamity Trigger" class {94c1affa-66e7-4961-9521-cfdef3128d4f} not registered
49152 wine-mono 5.0.0 breaks rendering for disabled buttons
49325 Kea Colorinbook crashes:
49477 Some api-ms-win-core-* are not found by Forza Horizon 4
49518 Grim Dawn leaks shared memory after upgrade to Wine 5.12
49559 winevdm.exe crashes when running 16-bit installers (non-PE build only)
49593 inconsistent return code when executable is not found
49609 wine-staging-5.12 - Elite Dangerous launcher broken
49638 get-pip.py installer fails with "Access denied"
49653 Pattern Maker for Cross Stitch always displays measurement in imperial system
49656 SAP GUI - Ws2_32.getaddrinfo crashes with non-standard service (/etc/services)
49662 Wine Internet Explorer crashes on https://[2600::]/
49664 FrostyModManager v1.0.5.9 crashes on launch
49666 Red Dead Redemption 2 requires HEAP flags offset to match Windows
49685 Gigabyte "EasyTune" service crashes in wbemprox
----------------------------------------------------------------
Changes since 5.14:
Akihiro Sagawa (1):
user32: Fix wsprintfA's buffer usage when using %S.
Alex Henrie (2):
urlmon: Fix null pointer dereference in process_hook_section (Coverity).
urlmon: Call parse_host in combine_uri to set related parse_data fields.
Alexandre Julliard (10):
winebuild: Always use DllMain as entry point for the 32-bit side of a 16-bit module.
ntdll: Fix wcsncpy() implementation now that length is unsigned.
ntdll: Move the critical section fallback code out of the Unix library.
ntdll: Avoid importing RtlEnterCriticalSection/RtlLeaveCriticalSection from the Unix side.
ntdll: Implement KiUserApcDispatcher().
ntdll: Use KiUserApcDispatcher() to call user APCs.
kernelbase: Fix console ioctl output sizes.
ntdll/tests: Run exception tests under the debugger on all platforms.
ntdll: Unwind the syscall frame when calling KiUserExceptionDispatcher().
ntdll: Unwind the syscall frame when calling KiRaiseUserExceptionDispatcher().
Alistair Leslie-Hughes (14):
xactengine3_7: Return valid HRESULT from IXACT3Engine Initialize.
include: Define all CLSID/IID_IXACT3Engine versions.
xactengine3_7: Use CLSID defined from global header.
xactengine3_6: New DLL.
xactengine3_5: New DLL.
xactengine3_4: New DLL.
xactengine3_3: New DLL.
xactengine3_2: New DLL.
xactengine3_1: New DLL.
xactengine3_0: New DLL.
xactengine3_7: Trace FAudio version being used.
xactengine3_7: Don't cast interface pointers.
xactengine3_7: Correct callback to windows function.
dmime: Parse TimeSig track data.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Brendan Shanks (7):
ntdll: Use unique handle numbers in generated SMBIOS tables.
ntdll: End generated SMBIOS tables with the end-of-table structure.
ntdll: Add additional fields to generated SMBIOS baseboard info table.
ntdll: Add additional fields to generated SMBIOS chassis info table.
ntdll: Generate "system boot information" SMBIOS table.
include/msvcrt: Add stdbool.h header.
ntdll: Pad HEAP structure so 'flags' offset matches recent Windows.
Daniel Lehman (2):
wininet: Move INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT handling to helper.
ntdll/tests: Handle 32 cores.
Derek Lesho (4):
ntoskrnl.exe: Implement ObOpenObjectByName.
ntoskrnl.exe: Implement KeReadStateEvent.
ntoskrnl.exe: Implement KeInitializeApc.
ntoskrnl.exe: Add stubs for Ke(/Test)AlertThread.
Dmitry Kislyuk (3):
vbscript: Support conversion to string in InStr.
vbscript: Return correct error for null start in InStr and more tests.
vbscript: Implement case insensitive search in InStrRev function.
Dmitry Timoshkov (5):
ieframe: Deactivate UI when processing IOleObject::DoVerb(OLEIVERB_HIDE).
ole32/tests: Add tests for HGLOBAL based IStream::Clone.
ole32: Allow SetSize to move a fixed memory block.
mshtml: Add trace to IOleCommandTarget::Exec().
ieframe: When activating UI also activate the embedded document.
Esme Povirk (1):
mscoree: Use builtin XNA implementation by default.
Evgeny Litvinenko (1):
ntdll: Add check for totalram, mem_unit in struct sysinfo.
Fabian Maurer (1):
wine.inf: Map the Intl section of win.ini to the registry.
François Gouget (1):
combase: Fix the trailing linefeed of a TRACE().
Gabriel Ivăncescu (15):
iphlpapi: Update comment for SOCK_DGRAM since Linux also supports it from 3.0.
msscript.ocx: Implement the ScriptModule enumerator.
msscript.ocx: Move ScriptControl::Run implementation into a helper.
msscript.ocx: Implement ScriptModule::Run.
msscript.ocx: Implement ScriptModule::get_CodeObject.
msscript.ocx: Implement ScriptControl::get_CodeObject.
msscript.ocx: Add IScriptProcedureCollection stub implementation.
msscript.ocx/tests: Add initial tests for Script Procedures.
msscript.ocx: Implement ScriptProcedureCollection::get_Count.
msscript.ocx: Uncache the module objects when adding new code.
msscript.ocx: Implement ScriptProcedureCollection::get_Item.
msscript.ocx: Cache the procedures obtained from the ScriptProcedureCollection.
msscript.ocx: Implement ScriptProcedure::get_Name.
msscript.ocx: Implement ScriptProcedure::get_NumArgs.
msscript.ocx: Implement ScriptProcedure::get_HasReturnValue.
Gijs Vermeulen (7):
amstream/tests: Split test_IDirectDrawStreamSample().
amstream: Return E_INVALIDARG when a rect but no surface is passed in IDirectDrawMediaStream::CreateSample().
amstream: Increase parent IAMMediaStream refcount in IDirectDrawMediaStream::CreateSample().
configure: Add an option to disable QuickTime support.
wbemprox: Accept 0 and WBEM_FLAG_ALWAYS | WBEM_MASK_CONDITION_ORIGIN as flags in IWbemClassObject::GetNames().
wbemprox: Set obj to NULL on error in get_object().
wbemprox: Don't crash in IWbemClassObject::Put() when called with empty class object.
Hans Leidekker (1):
ws2_32: Avoid a crash in WS_getaddrinfo when the specified service doesn't exist.
Huw D. M. Davies (7):
maintainers: Add combase to the OLE RPC section.
ole32: Add a structure to hold memory block information.
ole32: Add a ref-count to the handle structure.
ole32: Add a constructor helper.
ole32: Allow Clone to access the original memory block.
ndis.sys: Reinstate the subsystem native option.
scsiport.sys: Reinstate the subsystem native option.
Jacek Caban (27):
configure: Build with -mcx16 on x86_64.
kernelbase: Add missing consts to ScrollConsoleScreenBuffer declaration.
ntdll: Move InterlockedCompareExchange128 support to winnt.h.
include: Introduce wincontypes.h.
include: Introduce consoleapi.h.
include: Add pseudoconsole declarations.
kernelbase: Add pseudoconsole stubs.
urlmon: Remove unused flags argument from parse_host.
include: Add missing console mode defines.
kernel32/tests: Fix ReadConsoleOutputW tests on Windows 8.
kernel32/tests: Disable ENABLE_VIRTUAL_TERMINAL_PROCESSING mode in testWriteNotWrappedProcessed.
kernel32/tests: Add an option to test current console.
kernel32/tests: Add console title tests.
kernelbase: Close PEB ConsoleHandle in FreeConsole.
kernel32: Set PEB console handle in AllocConsole.
kernelbase: Close PEB ConsoleHandle in AttachConsole.
server: Pass console handle to the child process.
kernel32: Set PEB ConsoleHandle for bare console.
kernel32: Use PEB console handle in CONSOLE_HandleCtrlC to check console connection.
kernelbase: Move CONTROL_C_EXIT handler to kernelbase.
kernelbase: Use PEB ConsoleHandle to check for console connection in AllocConsole.
kernelbase: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleCP.
kernelbase: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleOutputCP.
kernelbase: Use IOCTL_CONDRV_GET_TITLE in GetConsoleTitleW.
kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleWindow.
kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in CONSOLE_GetNumHistoryEntries.
server: Remove no longer used get_console_input_info.
Jactry Zeng (3):
d3dcompiler: Add D3D_COMPILE_STANDARD_FILE_INCLUDE support for D3DCompile2().
d3dcompiler: Implement D3DCompileFromFile().
d3dx11: Partially implement D3DX11CompileFromFile{A, W}().
Jeff Smith (4):
setupapi/tests: Change return values from coinst functions.
setupapi/tests: Add error tests for SetupDiDestroyDeviceInfoList.
setupapi: Clear error on SetupDiDestroyDeviceInfoList success.
gdiplus: Avoid a few unnecessary calculations for arc2polybezier.
Julian Rüger (1):
po: Update German translation.
Liam Middlebrook (2):
winevulkan: Harden calibrated_timestamps failure paths.
winevulkan: Update to VK spec version 1.2.149.
Louis Lenders (3):
api-ms-win-core-memory-l1-1-3: Add dll.
api-ms-win-core-file-fromapp-l1-1-0: Add dll.
api-ms-win-core-file-ansi-l2-1-0: Add dll.
Martin Storsjo (4):
ntdll: Remove a stray duplicate instruction.
ntdll: Only call putenv() if we are going to call exec().
tools: Upgrade the config.guess/config.sub scripts.
configure, msvcrt: Check for the finite() function just like finitef().
Michael Müller (2):
fsutil: Print out usage message.
fsutil: Add support for creating hardlinks.
Michael Stefaniuc (2):
dmime: Constify the chunk parameter of stream_skip_chunk().
dmime: Simplify loading/storing of the Tempo Track data.
Mikołaj Zalewski (1):
ntdll: Return from Thumb to ARM mode after assembling raise_func_trampoline_thumb.
Myah Caron (1):
kernelbase/tests: Add test for Sleep(1).
Nikolay Sivov (54):
combase: Mark 64-bit only stubs as such.
combase: Move HBRUSH marshalling functions.
combase: Move CLIPFORMAT marshalling functions.
combase: Move HBITMAP marshalling functions.
combase: Move HPALETTE marshalling stubs.
combase: Move HGLOBAL marshalling functions.
combase: Move HACCEL marshalling functions.
combase: Move CreateErrorInfo() function.
combase: Move IMalloc/IMallocSpy functionality.
ole32: Move IsValidInterface() to another file.
combase: Move FreePropVariantArray() and PropVariantClear().
combase: Move PropVariantCopy().
combase: Move CoFileTimeNow().
combase: Move CoCreateGuid().
combase: Move CoQueryProxyBlanket().
combase: Move CoSetProxyBlanket().
combase: Move CoCopyProxy().
combase: Move CoQueryClientBlanket().
combase: Move CoImpersonateClient().
combase: Move CoRevertToSelf().
combase: Add CoCreateErrorInfo() as an alias for CreateErrorInfo().
combase: Move CoGetObjectContext().
combase: Move CoGetCallState().
combase: Move CoGetActivationState().
combase: Move CoGetInstanceFromFile().
combase: Move CoGetInstanceFromIStorage().
combase: Move CoCreateInstance().
combase: Move CoGetTreatAsClass().
combase: Move ProgIDFromCLSID().
combase: Move CLSIDFromProgID().
combase: Move CLSIDFromString().
combase: Move IIDFromString().
combase: Move StringFromCLSID().
combase: Move StringFromGUID2().
combase: Move CoGetDefaultContext().
combase: Move CoMarshalHresult().
combase: Move CoUnmarshalHresult().
combase: Move CoGetInterfaceAndReleaseStream().
combase: Move CoMarshalInterThreadInterfaceInStream().
combase: Move CoCreateFreeThreadedMarshaler().
combase: Move CLSIDFromProgIDEx().
ole32: Reduce duplication for global interface table factory.
ole32: Expose ManualResetEvent as registered class.
ole32: Remove registration for Global Interface Table class.
ole32: Move more built-in classes to CoGetClassObject().
ole32: Remove now unused helper.
ole32: Remove initialized state test in CoCreateInstanceEx().
combase: Move CoCreateInstanceEx().
combase: Move CoFreeUnusedLibraries().
shell32: Silence Destination List QueryInterface() failure message.
include: Move fundamental ORPC types to separate private header.
combase: Move CoGetMarshalSizeMax().
combase: Move CoMarshalInterface().
combase: Move CoInitializeSecurity().
Paul Gofman (10):
include: Add d3d12 reflection structures.
include: Define d3d12 shader reflection interfaces.
d3dcompiler: Parse register space and range id for sm51 in d3dcompiler_parse_rdef().
d3dcompiler: Fail parsing reflection data for sm51 in versions below 47.
d3dcompiler/tests: Test bound resources' reflection for sm5.1.
ntdll/tests: Always remove hook trampoline in test_kiuserexceptiondispatcher().
ntdll: Support UWOP_PUSH_MACHFRAME opcode in RtlVirtualUnwind() on x64.
ntdll: Fix unwind from call_consolidate_callback() for PE build on x64.
ntdll: Support nested exceptions on x64.
ntdll: Don't mind epilog in RtlVirtualUnwind() in case of zero op count on x64.
Piotr Caban (17):
ucrtbase: Support overriding return value in _matherr.
msvcrt: Import sqrtf from musl.
msvcrt: Import sqrt from musl.
msvcrt: Return error on invalid character in mbstowcs.
msvcrt: Avoid allocations in _write implementation.
msvcrt: Use correct code page in _write when outputing to console.
msvcrt: Import acosf from musl.
msvcrt: Import acos from musl.
ucrtbase: Fix precision handling in %#g when printing 0.
ucrtbase: Fix away from 0 rounding in %a format.
ucrtbase: Support _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING flag in printf.
msvcrt: Import asinf from musl.
msvcrt: Import asin from musl.
msvcrt: Import atan2f from musl.
msvcrt: Import atan2 from musl.
msvcrt: Import atanf from musl.
msvcrt: Import atan from musl.
Rémi Bernon (11):
xaudio2_9: Use new FAudioCreateReverb9 interface.
ntdll/tests: Fix w2008 debugger test results.
ntdll/tests: Add broken FltSave results for w2008 / w8.
ntdll/tests: Run RtlRaiseException tests on x86_64.
wbemprox: Use empty strings instead of NULL.
user32/tests: Add basic GetRegisteredRawInputDevices tests.
user32: Implement GetRegisteredRawInputDevices.
dinput8/tests: Add DISCL_EXCLUSIVE / rawinput test.
dinput8: Add support for rawinput based devices.
dinput8: Use rawinput interface for mouse device.
dinput8: Stop using LL hooks for mouse devices.
Serge Gautherie (8):
winapi: Use $cwd variable instead of pwd command.
winapi_test: Horizontally align TEST_TYPE_SIGNED() parameter.
winapi_test: Restore horizontal alignment of macro defines.
winapi_test: PshpackN.h can only be 1/2/4/8.
winapi_test: Escape parentheses in regexp, Allow spaces around them.
winapi_test: '* long *' is 4 bytes, not pointer size, on Windows.
winapi_test: Minor $pointer_size check consistency tweak.
winapi_test: Update generated.c files.
Shawn M. Chapla (2):
gdiplus/tests: Add metafile null frame rect GDI/GDI+ interop test case.
gdiplus: Incorporate GDI frame into metafile auto-frame before scaling.
Stefan Dösinger (3):
ddraw: Thunk to surface1, not surface7 in blt.
ddraw: Thunk to surface1, not surface7 in surface_unlock.
ddraw: Thunk to surface1, not surface7 in flip.
Sven Baars (5):
sechost: Free the right variable (Coverity).
ntoskrnl.exe/tests: Add a missing argument to an ok call (Coverity).
prntvpt: Fix a null check (Coverity).
msi: Fix a leak (Coverity).
wbemprox: Avoid a use after free (Coverity).
Vijay Kiran Kamuju (13):
xactengine3_7: Add new dll.
xactengine3_7: Implement IXACT3Engine interface.
xactengine3_7: Implement IXACT3SoundBank Interface.
xactengine3_7: Implement IXACT3Cue Interface.
dbghelp: Add xmm and mxcsr register mapping functions for i386.
xactengine3_7: Implement IXACT3WaveBank Interface.
xactengine3_7: Implement IXACT3Engine::CreateStreamingWaveBank.
xactengine3_7: Implement IXACT3Wave interface.
xactengine3_7: Implement IXACT3SoundBank::Play function.
xactengine3_7: Implement IXACT3WaveBank::Play function.
xactengine3_7: Implement IXACT3Engine::RegisterNotification and IXACT3Engine::UnRegisterNotification functions.
include: Add missing WAVEBANKENTRY_FLAGS to xact3wb.h.
include: Fix the spelling of XACT_WAVE_STREAMING_PARAMETERS in xact3.h.
Vladimir Panteleev (1):
kernel32/tests: Add more GetEnvironmentVariableA/W tests.
Zebediah Figura (8):
Revert "winegstreamer: Check for failure from gst_video_info_set_format().".
server: Use a separate object for each opened mailslot device file.
msvcrt/tests: Fix some tests on Windows 2003 and earlier.
quartz/tests: Fix a test in test_basic_video().
dsound: Select the nth effect matching the given CLSID in GetObjectInPath().
wbemprox: Return WBEM_E_NOT_FOUND from get_object() if no object is available.
d3dcompiler: Iterate through the instruction list in reverse in free_instr_list() (Valgrind).
wined3d: Rename wined3d_sm4_immconst_type to wined3d_sm4_dimension.
Zhiyi Zhang (9):
dwmapi: Check NULL parameter in DwmIsCompositionEnabled().
gdi32/tests: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
user32/tests: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
user32: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
winex11.drv: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
winemac.drv: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
explorer: Zero initialize DEVMODE before passing it to EnumDisplaySettings().
user32/tests: Remove some todo_wines.
user32/tests: Fix a failing test on Windows 10 1909.
Ziqing Hui (1):
d3dx10/tests: Add more test images for DDS format.
--
Alexandre Julliard
julliard(a)winehq.org