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 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
The Wine maintenance release 5.0.2 is now available.
What's new in this release (see below for details):
- Various bug fixes
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0.2.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.0.2 (total 46):
8439 Multiple Microsoft product installers fail due missing shell app path expansion (Visual Studio .NET 2002, 2003, Visual Foxpro 9.0)
19239 Multiple applications crash with division by zero on edit control with zero line height (eBay Turbo Lister, Clarin TX control wrapper)
29806 Hype The Time Quest: DirectX Media (DXM) v6.0 runtime installer fails (advpack.ExecuteCab should extract the INF from CAB before running the install part)
30814 Age of Empires II scrolling gets stuck after Alt-Tab away and back
31890 Multiple applications need IAudioEndpointVolume::GetMasterVolumeLevelScalar method implementation (Cisco IP Communicator, Cairo Shell v0.3.x)
39534 Bad Mojo Redux crashes on start (ddraw1_vtbl and ddraw_surface1_vtbl need to be writable)
41559 (winecfg) Add ability to change windows version via command line
43638 Multiple 4k demoscene OpenGL demos crash on startup with 'No active WGL context found' (Yermom, 'End of time' by Alcatraz and Altair)
45839 Qt 5.8 SDK installer needs 'IFileSystem.MoveFile' method implementation for maintenance tool creation step
46949 DDraw games using older windowed mode wrappers such as DirectX Windower Embedded v2.3/D3D Windower v1.x crash (ddraw_palette_vtbl and ddraw_surface{1,2,3,4,7}_vtbl need to be writable)
47621 Command link buttons in task dialog are displayed in wrong style
47794 Rockstar Games Launcher installer button images do not display
47999 Gif pictures stored in PE files are not loaded into HTML web pages via Res protocol
48186 every wine process shows a definite leak in dlls/ntdll/env.c
48471 Mismatching behavior of GetEnvironmentVariableW for empty / long values
48490 Restored minimized windows have wrong height
48495 XCP-ng Center v8.x (.NET 4.6 app) can't connect to server with self-signed certificate
48593 Multiple games play only one frame of video (Fable: The Lost Chapters, Audiosurf, Dark Souls 2, Oddworld: Munch's Oddysee)
48611 Cairo Shell v0.3.x (.NET 4.7 app) crashes due to missing 'HKCU\\Software\\Microsoft\\Windows NT\\CurrentVersion\\WinLogon\\Shell' registry sub-key
48683 iTunes v12.10.4.2 crashes on unimplemented function wmvcore.dll.WMIsContentProtected when adding folders to directory scan
48731 Just Cause crashes while loading level with builtin d3dx9_26
48732 How to Survive crashes on start (fullscreen mode)
48738 cmd.exe crashes when running certain batch files
48739 ConEmu (Windows console emulator) v19.10.12 fails to set Wininet's INTERNET_OPTION_IGNORE_OFFLINE and shows error dialog at startup
48740 ConEmu is constantly loosing focus
48747 ConEmu flickers and scrolls randomly
48750 Few missing DirectSound3D Algorithms GUID Defs
48762 IExplore immediately crashes on www.msnbc.com with a failed assertion
48801 Multiple games crash on unimplemented function d3dx11_43.dll.D3DX11GetImageInfoFromFile (Assetto Corsa 1.14.x, Project Cars)
48803 FITietokanta crashes every time after ADD-button is pressed
48806 Panzer Corps 2 needs msvcp140.dll.?_XLgamma@std@@YANN@Z
48814 Microsoft Word 6.0 for Windows installer crashes after wine-4.8-247-g0d7d0427d0
48816 The explorer doesn't support '/cd' option
48844 Magical Scramble Demo 1.20P shows white boxes instead of pictures.
48932 Wine does not display any windows unless `xrandr --auto` has been run
48960 NtQueryDirectoryFile incorrectly returns STATUS_NO_MORE_FILES when it encounters an ignored entry
48974 Multiple MSI-based installers show 'newBinaryXX' text instead of bitmap on button controls (missing support for 'msidbControlAttributesBitmap')
49005 Listview header occasionally fails to redraw when list is scrolled vertically
49034 Enlarge list width in font selection dialog
49115 Hitman (2016) and Hitman 2 (2018) fail to launch in DX11 mode
49142 Horizontal mouse scroll events (X11 buttons 6 and 7) should not be translated to back/forward events
49146 Hearts of Iron IV needs api-ms-win-crt-private-l1-1-0.dll._o_sin
49173 widl generates invalid code for Gecko's ISimpleDOM.idl
49175 Duplicated checking canonicalized inside kernelbase/path.c
49198 Denuvo Anti-Cheat 'denuvo-anti-cheat.sys' crashes in entry point (incorrect page protection restored during relocation processing)
49203 Possible incorrect usage >= instead <= in shlview.c
----------------------------------------------------------------
Changes since 5.0.1:
Akihiro Sagawa (2):
ddraw/tests: Add more managed texture tests.
ddraw: Allow to create managed textures with DDSCAPS_TEXTURE|DDSCAPS_3DDEVICE caps.
Alex Henrie (2):
mmdevapi: Report 100% volume in GetMasterVolumeLevelScalar stub.
wine.inf: Add Winlogon keys.
Alexandre Julliard (5):
user.exe: Clear out the thunk array to catch invalid winprocs.
ntdll: Don't abort directory search in single entry mode when a file is ignored.
urlmon/tests: Update winehq.org's IP address.
secur32/tests: Update for new WineHQ certificate.
wininet/tests: Update for new WineHQ certificate.
Alistair Leslie-Hughes (3):
d3dx9: Add support for D3DFMT_P8 in DDS files.
ddraw: Make palette and remaining surface vtbls writable.
shell32: Correct if condition.
Andrew Eikum (1):
winebus.sys: Don't return too early if SDL initialization succeeds.
Andrey Gusev (1):
d3dx11: Add D3DX11GetImageInfoFromFileA/W stub.
Bernhard Übelacker (1):
cmd: Fix crash in if condition parsing.
Brendan Shanks (3):
dinput: Fix crash in dump_DIEFFECT() when rglDirection is unexpectedly NULL.
dinput: Fix crash in dump_DIEFFECT() when lpvTypeSpecificParams is unexpectedly NULL.
vulkan-1: Set FILEVERSION to fix official Vulkan loader installer.
Damjan Jovanovic (5):
shell32/tests: Test shlexec argv[0], and same-named executables in a different directory.
shell32: Simplify SHELL_execute().
shell32: Pass the executable's full path from SHELL_execute() to CreateProcess().
mshtml: Fix handling res protocol resource type ids without leading '#'.
mshtml: Support implicit RT_FILE resource type in res protocol.
Dmitry Timoshkov (4):
server: All fields up to CheckSum are mandatory regardless of SizeOfOptionalHeader value.
ntdll: Don't try to map the PE file past the size of the backing file.
kernel32: On process entry store PEB address in %ebx.
kernel32/tests: Add a PE test image that resembles format of some of 8k demos.
Emilio Cobos Álvarez (1):
widl: Use DECLSPEC_ALIGN in MSVC compatible way for return types too.
Gabriel Ivăncescu (3):
quartz: Clear the WS_CHILD style instead of unparenting the window.
winex11.drv: Use a helper to retrieve the decoration rect for managed windows.
winex11.drv: Fix X11DRV_X_to_window_rect to handle windows smaller than the decoration.
Gijs Vermeulen (2):
advpack: Extract inf file before installing in ExecuteCab().
ucrtbase: Add more _o forwards.
Hans Leidekker (1):
msi: Add support for bitmap buttons.
Ilia Mirkin (1):
crypt32: Also check CERT_CHAIN_POLICY_ALLOW_UNKNOWN_CA_FLAG.
Jacek Caban (2):
scrrun: Add MoveFile implementation.
widl: Use DECLSPEC_ALIGN in MSVC compatible way.
Jeff Smith (3):
mshtml/tests: Add tests showing how toString has changed in IE9+.
jscript: Set return object's class to 'object' in Object.create.
msvcrt: Stop forwarding iswctype functions to ntdll.
Markus Engel (1):
user32: Force undefined bits in GetKeyState() and GetKeyboardState() to zero.
Martin Storsjo (2):
ntdll: Properly return errors when failing to unwind.
ntdll: Pass a nonnull handler_data when continuing after a collided unwind on arm64.
Mas Ahmad Muhammad (1):
comdlg32: Enlarge list area in CHOOSE_FONT window.
Michael Müller (2):
opengl32: Treat invalid pixel types as PFD_TYPE_RGBA in wglChoosePixelFormat.
ddraw: Make ddraw1_vtbl and ddraw_surface1_vtbl writable.
Murray Colpman (1):
winex11.drv: Interpret mouse 6/7 as horiz scroll.
Nikolay Sivov (3):
comctl32/button: Use duplicated image for drawing.
comctl32/listview: Only apply horizontal offset when setting header position.
dxgi: Translate DXGI_USAGE_UNORDERED_ACCESS to corresponding wined3d bind flag.
Owen Rudge (2):
winecfg: Add support for '/v' parameter allowing Windows version to be changed.
winecfg: Return 0 on success when setting Windows version.
Paul Gofman (1):
d3d11: Use stricmp() instead of _strnicmp(..., -1).
Piotr Caban (1):
msvcp90: Add std:_XLgamma implementation.
Roman Pišl (5):
wininet: Add stub for INTERNET_OPTION_IGNORE_OFFLINE.
user32/edit: Avoid division by zero during initialization.
wineconsole: Don't activate window when computing positions.
wineconsole: Don't allow recurrent resizing while grabbing changes.
comctl32/edit: Avoid division by zero during initialization.
Rémi Bernon (1):
winex11.drv: Remove frame when non-client area is empty.
Sven Baars (6):
ntdll: Fix a string leak in init_user_process_params (Valgrind).
setupapi: Fix a memory leak (Valgrind).
kernelbase: Fix a string leak in CreateProcessInternal (Valgrind).
ntdll: Fix a memory leak in fork_and_exec.
setupapi: Only copy driver info if SetupDiEnumDriverInfoW succeeded (Valgrind).
setupapi: Make sure the class name is always set on success in SetupDiGetINFClassW (Valgrind).
Vijay Kiran Kamuju (2):
wmvcore: Add semi-stub implementation for WMIsContentProtected.
include: Add missing GUIDs in dsound.h.
Vladimir Panteleev (4):
kernel32/tests: Fix GetLastError() checks in environment tests.
kernelbase: Preserve last error when GetEnvironmentVariableA succeeds.
kernelbase: Don't return ERROR_INSUFFICIENT_BUFFER from GetEnvironmentVariableW.
kernelbase: Fix GetEnvironmentVariableW return for empty variables.
Zebediah Figura (5):
winegstreamer: Also use GST_QOS_TYPE_OVERFLOW for samples that arrive on time.
winegstreamer: Clamp both timestamp and timestamp + diff to 0.
ntoskrnl.exe: Protect relocated pages one at a time.
ntoskrnl.exe: Protect the two relocated pages independently.
ntdll: Avoid leaking the previous environment in RtlSetCurrentEnvironment().
Zhipeng Zhao (1):
explorer: Support '/cd,' command line option.
Zhiyi Zhang (5):
winex11.drv: Ignore disconnected outputs when finding mirroring slaves.
comctl32/tests: Test button styles.
comctl32/button: Do not set BS_PUSHBUTTON and BS_DEFPUSHBUTTON style directly to Split Buttons and Command Links.
kernelbase: Check NULL canonicalized_len parameter in UrlCanonicalizeW().
setupapi: Fix a registry key handle leak.
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 5.14 is now available.
What's new in this release (see below for details):
- More restructuration of the console support.
- Initial version of the Webdings font.
- Beginnings of PE conversion of the MSVCRT libraries.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.14.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.14.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.14 (total 26):
10106 Changing CursorBlinkRate in the registry has no effect
19040 AOL 9.0 fails to install
19775 Largo Winch: crash with hardware vertex shader
38941 DOSCenter: Text colors are missing
39721 Listview custom draw in report mode uses wrong background color
43434 StarCraft: Brood War doesn't run without setting the Windows version to 2003 or Vista
43949 WINEDEBUG=+relay does not work on armv7l
44129 Bayonetta: much slower than on Windows
47161 Star Wars: The Force Unleashed II - Not show cinematics at all
47501 Toontown Rewritten: Unhandled page fault on read access to 0x00000000 at address 0x1fea2b7 (thread 0064)
48555 Helm Standalone/VST plugin 32bit version has random content in window, 64bit version works OK
48856 Renegade Ops needs D3DX10GetImageInfoFromMemory implementation
48859 PassMark PerformanceTest 10 crashes during start since wine-4.11
49418 Wargaming.net -> Game Center -> starts with the message: Unable to connect to the content service. Please check you internet connection and try again.
49436 64-bit Diablo III hangs on startup since 5.11
49474 Chaos Legion does not work with wine quartz.
49487 ListView control custom draw in report view shows blank item if handler clears uItemState CDIS_SELECTED flag
49523 Access denied opening c:\windows\system32\cmd.exe\cmd.exe
49561 After update to wine-5.12 "1c" start crashed with error Unhandled exception: page fault on read access to 0x00000000 in 64-bit code (0x00000000100fb266).
49562 Godot Engine have broken shadows and doesn't read properly settings file
49578 Battle.net wouldn't start
49581 Disk Genius needs kernel32.SetFirmwareEnvironmentVariable
49590 Battle.net Agent.exe hang/crash
49604 TES4:Oblivion hang on filter_graph.cs on Wine 5.13
49620 Tableau Desktop fails to install
49626 ntdll can be loaded multiple times into the same process
----------------------------------------------------------------
Changes since 5.13:
Alex Henrie (2):
kernel32: Stub SetFirmwareEnvironmentVariableW.
ws2_32/tests: Allow ESP and AH protocols to be missing on Windows.
Alexandre Julliard (31):
ntdll: Fix a memory leak.
ntdll: Move the LPC port syscall stubs to the Unix library.
ntdll: Move the token functions to the Unix library.
ntdll: Move the security system calls to the Unix library.
ntdll: Move various stub functions to the Unix library.
ntdll: Move the locale system calls to the Unix library.
ntdll: Set a better exit status when the main image fails to load.
ntdll: Map errno to a status also in directory functions.
ntdll: Implement KiRaiseUserExceptionDispatcher().
ntdll: Use a syscall thunk for NtClose().
ntdll: Use a syscall thunk for NtQueryPerformanceCounter().
ntdll: Avoid private Unix functions in RtlExitUserThread().
ntdll: Implement NtSetInformationProcess(ProcessThreadStackAllocation).
ntdll: Avoid private Unix functions in RtlCreateUserStack().
ntdll: Call virtual_set_large_address_space() directly from the Unix side.
winegc: Support overriding the default PE file alignment.
ntdll: Update the TEB and PEB structures for newer Windows versions.
include: Add 64-bit versions of the TEB and PEB for WoW64 mode.
ntdll: Store the thread startup info in the ntdll_thread_data structure.
ntdll: Allocate 64-bit TEB and PEB in WoW64 mode.
ntdll: Store the filesystem redirection flag in the 64-bit TEB.
winebuild: Store the syscall frame in the thread data on i386.
winebuild: Store the syscall frame in the thread data on x86_64.
winebuild: Store the syscall frame in the thread data on ARM.
winebuild: Store the syscall frame in the thread data on ARM64.
ntdll: Use a syscall thunk for NtGetContextThread().
ntdll: Reimplement RtlRaiseException() to build a correct context on ARM.
ntdll/tests: Fix vectored exception handler usage.
ntdll/tests: Enable more exception tests on ARM platforms.
ntdll/tests: Add tests for RtlCaptureContext() and NtGetContextThread() on x86_64.
ntdll/tests: Add thread context test for ARM platforms.
Alistair Leslie-Hughes (1):
ws2_32: Correct returned error code for an invalid socket.
Anton Baskanov (6):
amstream/tests: Fix AMMultiMediaStream::OpenFile test.
amstream/tests: Fix file rendering test.
amstream/tests: Add a test AVI file.
amstream/tests: Move the testfilter code above to use it in SetState tests.
amstream: Return S_OK from AMMultiMediaStream::SetState when IMediaControl::Run succeeds.
amstream: Start the stream when AMMSF_RUN is passed to AMMultiMediaStream::OpenFile.
Brendan Shanks (6):
bcrypt: Improve BCryptSecretAgreement/BCryptDestroySecret/BCryptDeriveKey stubs.
bcrypt: Add tests for BCryptSecretAgreement/BCryptDestroySecret/BCryptDeriveKey.
winemac.drv: Build cocoa_window.m with GL_SILENCE_DEPRECATION.
winemac.drv: Fix warnings for constants deprecated by macOS 10.14.
winevulkan: Update Vulkan XML URL to use raw.githubusercontent.com.
winemac.drv: Fix warnings for constants deprecated by macOS 10.12.
Daniel Lehman (1):
msvcp140_1: Add stub msvcp140_1.
Derek Lesho (1):
mountmgr.sys: Use SystemBuffer output for IOCTL_STORAGE_QUERY_PROPERTY.
Dmitry Kislyuk (1):
vbscript: Implement case insensitive comparison.
Dmitry Timoshkov (8):
usp10: Don't specify ETO_GLYPH_INDEX for bitmap fonts.
ieframe: Implement IOleObject::GetUserClassID().
ieframe: Implement IOleObject::Advise().
ieframe: Implement IOleObject::Unadvise().
ieframe: Implement IOleObject::EnumAdvise().
ieframe: IOleObject::Close() should notify OnClose() advise sink.
ieframe/tests: Add some tests for IOleObject::Advise(), IOleObject::Unadvise() and IOleObject::EnumAdvise().
fonts: Add initial version of Webdings font.
François Gouget (2):
tests: Trace elapsed time when $WINETEST_TIME is set.
winex11.drv: Fix the spelling of a comment.
Gabriel Ivăncescu (3):
ddraw/tests: Test non-primary video memory surface in test_lost_device().
ddraw: Return DDERR_WRONGMODE when attempting to restore surfaces of a lost device.
ddraw: Check the foreground window in addition to the device state in ddraw_update_lost_surfaces().
Georg Lehmann (1):
winevulkan: Avoid returning 0 for swapchain maxImageCount.
Gerald Pfeifer (1):
ntdll: Include <signal.h> for sigset_t.
Gijs Vermeulen (13):
qcap/tests: Avoid test failures in test_seeking().
wbemprox/tests: Fix test failures.
wbemprox/tests: Add a test for Win32_PhysicalMemory.ConfiguredClockSpeed.
amstream: Accept more media subtypes in AMVideoStream::ReceiveConnection().
wbemprox/tests: Add IEnumWbemClassObject::Next() tests.
wbemprox: Support retrieving more than one object in IEnumWbemClassObject::Next().
qdvd: Add a stub IDvdInfo2 interface.
amstream: Increase parent IAMMediaStream refcount in IAudioMediaStream::CreateSample().
amstream: Increase IAudioData refcount in IAudioMediaStream::CreateSample().
amstream: Implement IAudioStreamSample::GetMediaStream().
amstream: Implement IAudioStreamSample::GetAudioData().
amstream: Get rid of the IAudioStreamSampleImpl typedef.
amstream: Return correct media type info when enumerating AMAudioStream media types.
Hans Leidekker (1):
bcrypt: Allow importing private ECDSA keys.
Jacek Caban (47):
include: Add missing PROC_THREAD_ATTRIBUTE defines.
server: Introduce IOCTL_CONDRV_SET_INPUT_INFO ioctl.
wineconsole: Use IOCTL_CONDRV_SET_INPUT_INFO in WINECON_SetHistorySize.
wineconsole: Use IOCTL_CONDRV_SET_INPUT_INFO in WINECON_SetHistoryMode.
wineconsole: Use IOCTL_CONDRV_SET_INPUT_INFO in WINECON_SetEditionMode.
wineconsole: Use IOCTL_CONDRV_SET_INPUT_INFO to set console window handle.
server: Remove no longer used code from set_console_input_info.
server: Introduce IOCTL_CONDRV_SET_TITLE ioctl.
wineconsole: Use IOCTL_CONDRV_SET_TITLE ioctl.
server: Allow creating screen buffer using NtCreateFile.
kernelbase: Use NtCreateFile in CreateConsoleScreenBuffer.
server: Introduce IOCTL_CONDRV_WRITE_OUTPUT ioctl.
kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputW.
kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputAttribute.
kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputCharacterW.
kernel32: Use IOCTL_CONDRV_WRITE_OUTPUT in CONSOLE_WriteChars.
server: Remove no longer used write_console_output request.
kernel32/tests: Add more console output tests.
wineconsole: Ignore ERROR_IO_INCOMPLETE error in WINECON_GrabChanges.
wineconsole: Use ReadConsoleOutputW in WINECON_FetchCells.
condrv: Rename condrv_write_output_params to condrv_output_params.
server: Introduce IOCTL_CONDRV_READ_OUTPUT ioctl.
kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputCharacterW.
kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputAttribute.
kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputW.
server: Remove no longer used read_console_output request.
kernel32/tests: Add more console output reading tests.
server: Introduce IOCTL_CONDRV_SCROLL ioctl.
kernelbase: Use IOCTL_CONDRV_SCROLL in ScrollConsoleScreenBufferW.
server: Remove no longer used move_console_output request.
server: Use weak reference between console input and renderer objects.
server: Allow using console ioctls on renderer object.
wineconsole: Rename hSynchro to console.
wineconsole: Use renderer handle instead of hConOut where possible.
server: Remove no longer needed CONSOLE_RENDERER_ACTIVE_SB_EVENT events.
server: Remove no longer needed open_console request.
wineconsole: Use renderer handle instead of hConIn where possible.
wineconsole: Move WINECON_Spawn call to WINECON_Init.
wineconsole: Use console in/out handles only in WINECON_Init.
kernelbase: Lock console critical section when changing current console.
kernelbase: Fix handling processes using STARTF_USESTDHANDLES when setting standard handles in AllocConsole.
kernelbase: Close handles allocated by AllocConsole in FreeConsole.
kernel32/tests: Add more AllocConsole tests.
kernelbase: Use init_console_std_handles in AttachConsole.
winegcc: Support file alignment on msvc target.
winegcc: Try using msvc file align syntax if mingw-style is not supported.
configure: Use *-windows instead of *-windows-gnu as fallback cross compiler target.
Jactry Zeng (1):
wininet: Handle empty expires for cookie setting.
Jeff Smith (1):
usp10: Fix typo in comment about box drawing unicode range.
Jiajin Cui (1):
gdiplus: Fix crash if failed to create bitmap.
Joshua Ashton (1):
winevulkan: Implement VK_EXT_calibrated_timestamps.
Kevin Puetz (2):
jscript: Fix some memory problems in disp_call_value.
jscript: Fix `this` within IDispatchEx::InvokeEx.
Liam Middlebrook (1):
winevulkan: Update to VK spec version 1.2.148.
Louis Lenders (1):
sc.exe: Fake succes for the SdSet argument.
Matteo Bruni (9):
wined3d: Correctly destroy the adapter on format initialization failure in no3d mode.
wined3d: Fail adapter creation if driver version info can't be found.
wined3d: Set proper values for the guard band caps.
wined3d: Remove some unnecessary "inline" qualifiers.
wined3d: Get rid of default label in debug_cs_op() switch.
ntdll: Don't read current CPU frequency on Linux.
include: Add ID3D10Device1 forward declaration.
include: Flesh out d3dx10math.h a bit more.
d3dcompiler: Don't link to dxguid or uuid.
Myah Caron (4):
include: Add IShellLinkDual interface.
amstream: Implement IMediaStreamFilter::GetDuration.
amstream: Implement IAMMultiMediaStream::GetDuration.
amstream: Implement IMediaStreamFilter::GetStopPosition.
Nikolay Sivov (9):
comctl32/listview: Do no alter custom draw text colors between notification stages.
sxs/tests: Use wide string literal constants.
sxs: Implement surrogate data lookup in SxsLookupClrGuid().
sxs: Add support for SXS_LOOKUP_CLR_GUID_USE_ACTCTX in SxsLookupClrGuid().
combase: Move Wdtp* marshalling functions.
combase: Move HWND marshalling functions.
combase: Move HDC marshalling functions.
combase: Move HMENU marshalling functions.
combase: Move HICON marshalling functions.
Paul Gofman (2):
kernel32: Zero initialize module data in fetch_module().
iphlpapi: Fix buffer reallocation in get_pid_map().
Piotr Caban (30):
comctl32: Fix non printable characters handling in SB_SETTEXT.
msvcrt: Add _wctype table.
msvcrt: Export _pwctype table.
msvcrt: Don't use get_char_typeW in _iswctype_l.
msvcrt: Copy wcslen implementation from ntdll.
msvcrt: Copy wcscpy implementation from ntdll.
msvcrt: Copy wcscat implementation from ntdll.
msvcrt: Copy wcschr implementation from ntdll.
msvcrt: Copy wcsrchr implementation from ntdll.
msvcrt: Don't use wine/unicode.h header.
msvcrt: Don't use div and ldiv function.
msvcrt: Copy memchr implementation from ntdll.
msvcrt: Copy memcmp implementation from ntdll.
msvcrt: Copy memmove implementation from ntdll.
msvcrt: Copy memset implementation from ntdll.
msvcrt: Copy strcat implementation from ntdll.
msvcrt: Copy strchr implementation from ntdll.
msvcrt: Copy strlen implementation from ntdll.
msvcrt: Copy strncat implementation from ntdll.
msvcrt: Copy strpbrk implementation from ntdll.
msvcrt: Copy strrchr implementation from ntdll.
msvcrt: Add __STRINGTOLD_L and _atoldbl_l partial stubs.
msvcrt: Support arbitrary buffer size in bnum.
msvcrt: Introduce fpnum structure that can be used to represent 64 and 80-bit double.
msvcrt: Create 64-bit mantissa in fpnum_parse.
msvcrt: Don't depend on additional mantissa bits when rounding.
msvcrt: Don't use strtold in __STRINGTOLD_L.
msvcrt: Add __STRINGTOLD tests.
msvcrt: Fix rounding of numbers smaller than minimal subnormal.
user32: Support undocumented SC_SIZE flag that can be used to move window.
Rémi Bernon (2):
winegcc: Align sections in PE files to page size.
dbghelp: Ignore missing debug info in SymInitializeW.
Serge Gautherie (9):
winapi_test: Remove leftover PUUID_VECTOR from tests.dat.
winapi_test: Fix a verifying loop on headers, which never finds any type name.
winapi_test: Add common headers for rpcrt4 test.
winapi_test: Remove useless common headers for shlwapi test.
winapi_test: Remove useless winbase.h for wininet test.
winapi_test: Add a blank line between common and specific headers.
winapi_test: Remove MIDL_STUB_MESSAGE field exclusions.
winapi_test: Fix 'MIXERLINECONTROL[AW]' typos.
winapi: Update 'perl -w' to 'use warnings 'all''.
Shawn M. Chapla (10):
gdiplus/tests: Add metafile unknown font deserialize test.
gdiplus: Use GenericFontFamilySansSerif when missing deserialized font family.
gdiplus/tests: Add metafile FillRegion test.
gdiplus: Add FillRegion record deserialization.
gdiplus: Add FillRegion serialization.
gdiplus/tests: Add metafile LinearGradient brush test.
gdiplus: Add LinearGradient brush object serialization.
gdiplus: Fix LinearGradientBrush deserialization off-by-one errors.
gdiplus: Use FromRect constructor in LinearGradientBrush deserialization.
gdiplus/tests: Fix 'LogicalDpiY' typos in metafile tests.
Zebediah Figura (58):
ntdll/tests: Remove some workarounds for no longer supported versions of Windows.
ntdll/tests: Remove todo_wine for tests that now succeed.
ntdll/tests: Return early if ThreadHideFromDebugger isn't supported.
ntdll/tests: Remove some unnecessary checks in test_query_logicalprocex().
ntdll/tests: Make info.c less verbose by default.
quartz/videorenderer: Render preroll samples.
quartz/vmr9: Render preroll samples.
quartz/dsoundrender: Reimplement the DirectSound renderer directly on top of the strmbase filter.
strmbase: Remove some no longer used callbacks.
strmbase: Get rid of BaseRendererImpl_Receive().
strmbase: Wait for presentation time after rendering the first sample.
quartz/vmr9: Signal state change completion only after PresentImage() has been called.
quartz/tests: Add tests for IMediaSeeking::GetCurrentPosition() and EC_COMPLETE interaction.
quartz: Return the stop position from GetCurrentPosition() after all filters return EC_COMPLETE.
wine.inf: Map CursorBlinkRate to the registry.
wine.inf: Map the Windows section of win.ini to the registry.
quartz/vmr9: Return E_INVALIDARG if both texture and offscreen flags are passed to AllocateSurfaceHelper().
qcap/vfwcapture: Return VFW_S_CANT_CUE from GetState(), not Pause().
winspool: Remove the "force" parameter to WINSPOOL_SetDefaultPrinter().
winspool: Stop setting the "Devices" key.
wine.inf: Map the Devices section of win.ini to the registry.
winspool: Stop modifying the "Devices" profile section.
quartz: Allow the arguments to IMediaSeeking::GetPositions() to be NULL.
quartz: Correctly convert reference time to REFTIME in IBasicVideo::get_AvgTimePerFrame().
winegstreamer: Check for failure from gst_video_info_set_format().
wine.inf: Map the Desktop section of win.ini to the registry.
wine.inf: Map the Extensions section of win.ini to the registry.
wine.inf: Map the PrinterPorts section of win.ini to the registry.
winspool: Stop setting the PrinterPorts profile section.
wine.inf: Map the Sounds section of win.ini to the registry.
winegstreamer: Preserve the frame rate when converting video formats.
winegstreamer: Release the IAsyncReader on disconnection.
quartz/dsoundrender: Clear the DirectSound buffer on EOS.
quartz: Don't pause the graph in IMediaSeeking::SetPositions if it hasn't finished running yet.
quartz/vmr9: Allow AdviseSurfaceAllocator() to be called multiple times.
dsound/tests: Link directly to dsound.
dsound/tests: Rewrite test_effects().
dsdmo/tests: Add tests for aggregation.
dsound/tests: Move effect parameter tests to dsdmo.
dsdmo/tests: Add some tests for media types.
dsdmo: Add a stub waves reverb effect.
dsdmo: Stub IMediaObjectInPlace.
dsdmo: Stub IDirectSoundFXWavesReverb.
dsdmo: Implement IMediaObject::SetInputType().
dsdmo: Implement IMediaObject::SetOutputType().
kernel32/tests: Relax a timing test.
dsdmo: Add a stub I3DL2 reverb effect.
dsdmo: Stub IDirectSoundFXI3DL2Reverb.
dsdmo: Implement IDirectSoundFXI3DL2Reverb parameters methods.
dsdmo: Add a stub equalizer effect.
dsdmo: Stub IDirectSoundFXParamEq.
dsdmo: Implement IDirectSoundFXParamEq parameters methods.
wpp: Correct the spelling of "ellipsis".
ntdll: Compare builtins by their device and inode number directly.
ntdll: Append ntdll.dll to the builtin_modules list.
ntoskrnl.exe/tests: Add some tests for file names.
ntdll/tests: Add more tests for object names.
dbghelp: Replace another usage of GetEnvironmentVariable() with the target process's environment.
Zhiyi Zhang (23):
user32: Trace ChangeDisplaySettingsExW() results.
user32: Trace EnumDisplaySettingsExW() results.
user32/tests: Test that EnumDisplayMonitors() doesn't set error codes.
user32/tests: Add more ChangeDisplaySettings() tests.
user32: Check invalid device names in ChangeDisplaySettingsExW().
winex11.drv: Allow reporting a virtual desktop mode with the same width or height as the current mode.
winex11.drv: Migrate the virtual desktop display settings handler to a new interface.
winex11.drv: Support virtual desktop display mode enumeration using the new display settings handler interface.
winex11.drv: Cache display modes for X11DRV_EnumDisplaySettingsEx().
winex11.drv: Support setting virtual desktop display mode using the new display settings handler interface.
winex11.drv: Remove the old virtual desktop display settings handler.
user32: Check invalid device names in EnumDisplaySettingsExW().
winex11.drv: Sort display modes.
winex11.drv: Move broken NVIDIA driver detection into a function.
winex11.drv: Add set_screen_size() helper.
winex11.drv: Add XRandR 1.4 display settings handler.
winex11.drv: Remove XRandR 1.2 display settings handler.
winex11.drv: Support automatic display position adjustment.
winex11.drv: Support detaching adapters.
winex11.drv: Migrate XRandR 1.0 display settings handler to a new interface.
winex11.drv: Migrate XVidMode display settings handler to a new interface.
winex11.drv: Migrate NoRes display settings handler to a new interface.
winex11.drv: Remove the old display settings handler interface.
Ziqing Hui (13):
windowscodecs/tests: Add more RGB images for DDS tests.
windowscodecs: Add more supported DXGI formats for DDS decoder. And return the actual formats for uncompressed DDS images.
windowscodecs/tests: Add tests for DDS images with fourCC which are also uncompressed.
windowscodecs: Introduce is_compressed(). And fix some format checks.
windowscodecs: Add more formats to get_bytes_per_block_from_format().
windowscodecs/tests: Add tests for cube maps.
windowscodecs: Add support for decoding cube maps.
windowscodecs/tests: Remove the test data in test_dds_decoder_initialize().
windowscodecs/tests: Simplify init_decoder().
windowscodecs/tests: Rename test_dds_bgr565 to test_dds_rgb565.
windowscodecs/tests: Add tests for alpha and luminance image.
windowscodecs/tests: Add more compressed test DDS images.
windowscodecs: Fix alpha mode of DXT3 and DXT5 image.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.13 is now available.
What's new in this release (see below for details):
- Re-mapping of INI files to the registry.
- System call thunks in NTDLL.
- Reimplementation of floating point numbers printing.
- Beginnings of a 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.13.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.13.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.13 (total 22):
4096 IniFileMapping not Implemented (ini on win9x => Registry on NT)
18072 Core Media Player crashes on missing CLSID_DvdGraphBuilder {fcc152b7-f372-11d0-8e00-00c04fd7c08b} (qdvd.dll)
27298 The Witcher 2 Slow Performance on any setting.
28109 winmm capture tests fail on some machines
31023 CuteFTP 8.3.4 - "Encountered an improper argument." Error boxes after most actions.
32215 11game platform crashes at start
36546 Please remove `tmpfs` special treatment in ntdll / MSI packages cannot be installed from `tmpfs`
42874 Battle.net App is unable to update games
44127 Metal Gear Solid V: Ground Zeroes doesn't launch
45701 Warframe: Launcher.exe does not update, keeps relaunching itself
45876 Call of Duty: Black Ops III and Call of Duty: WWII have no mouse input when using native mfplat
47587 Call to Power II: Screen doesn't repaint after selecting main menu option
49092 Blindwrite 7 crashes with a stack overflow
49103 Call of Duty: Modern Warfare 2 Campaign Remastered mouse input is missing
49422 Dungeon Siege 1 & 2 weapons are misplaced
49438 Wine on ARM64 fails with "could not exec the wine loader" unless --enable-win64 is used
49489 Incorrect rendering in Warframe with nvidia
49496 sprintf uses locale specific decimal point when it should not.
49513 Battle.net fails to install World of Warcraft or Starcraft II
49522 Mass Effect: Andromeda doesn't recognize keyboard input since 5.12
49570 LVM_FINDITEM should do case-insensitive test for item text
49573 Sporadic page fault on 64bit prefix creation on macOS
----------------------------------------------------------------
Changes since 5.12:
Alex Henrie (1):
ws2_32: Avoid depending on system getprotoby(name|number) functions.
Alexandre Julliard (89):
ntdll: Update working set limit also when loading a builtin dll.
ntdll: Reserve memory areas on all platforms.
winebuild: Allow specifying a spec file also for Unix libraries.
winebuild: Add a -syscall entry point flag
winebuild: Add generation of system call thunks.
ntdll: Use syscalls for NtCreateFile() and NtOpenFile().
ntdll/tests: Enable a few tests on all platforms.
ntdll: Use proper flags instead of characters for printf flags.
ntdll: Use macros to define both A and W printf functions.
winebuild: Generate Windows-style syscall thunks on x86.
winebuild: Generate Windows-style syscall thunks on x86_64.
ntdll: Move NtQueryObject/NtSetInformationObject to the Unix library.
kernel32: Move RemoveDirectoryA/W() implementation to kernelbase.
mountmgr: Use wine_get_dos_file_name() instead of wine_unix_to_nt_file_name().
ntdll: Disallow relative paths in wine_unix_to_nt_file_name(), handle them in the caller.
winebuild: Fix retrieving syscall arg length on x86_64.
ntdll: Return a char pointer instead of an ANSI_STRING in nt_to_unix_file_name().
ntdll: Allocate the return buffer in the caller for wine_nt_to_unix_file_name().
ntdll: Use char pointers instead of ANSI/UNICODE_STRING in unix_to_nt_file_name().
ntdll: Allocate the buffer in the caller for wine_unix_to_nt_file_name().
ntdll: Clear the reply data on error in virtual_locked_server_call().
mountmgr: Fix handling of buffer overflows in IOCTL_MOUNTMGR_QUERY_UNIX_DRIVE.
ntdll: Use stack buffers to retrieve the drive info from mountmgr.
ntdll: Silence a noisy error.
ntdll: Add a helper function to open a file from its Unix path.
ntdll: Add a helper function to retrieve the NT headers of the main exe.
ntdll: Add a local helper function to check DOS 8.3 names.
ntdll: Move the FSCTL_PIPE_IMPERSONATE semi-stub to the server.
ntdll: Avoid using RtlInitUnicodeString() in the Unix library.
ntdll: Avoid using RtlDosPathNameToNtPathName_U() in the Unix library.
ntdll: Avoid using LdrQueryProcessModuleInformation() in the Unix library.
ntdll: Avoid using RtlQueueWorkItem() in the Unix library.
ntdll: Return the TEB pointer in NtCreateThreadEx().
ntdll: Implement RtlActivateActivationContextEx().
ntdll: Move the activation context initialization out of NtCreateThreadEx().
ntdll: Use a pthread mutex for the CD-ROM cache section.
ntdll: Use a pthread mutex for the timezone section.
ntdll: Use a pthread mutex for the mount info section.
ntdll: Use a pthread mutex for the drive info section.
ntdll: Use a pthread mutex for the current directory section.
ntdll: Use a pthread mutex for the wait on address section.
ntdll: Use malloc() to allocate the buffer in unix_to_nt_file_name().
ntdll: Use malloc() to allocate the buffer in nt_to_unix_file_name() and related helpers.
ntdll: Use malloc() to allocate the buffer in server_get_unix_name().
ntdll: Use malloc() to allocate the buffer in get_device_mount_point().
ntdll: Use malloc() to allocate the directory cache.
ntdll: Use malloc() to allocate temporary filename buffers.
ntdll: Use malloc() to allocate temporary process data.
ntdll: Use malloc() to allocate the logical processor information.
ntdll: Use malloc() to allocate the system processor information.
ntdll: Use malloc() to allocate temporary system information.
ntdll: Initialize the thread signal stack in the common code.
ntdll: Add support for FPU registers in signal context on ARM.
ntdll: Handle faults inside the signal handler also on ARM.
ntdll: Pass the stack address to the virtual_handle_fault() function.
ntdll: Add a helper function to grow the stack on guard page faults.
ntdll: Also handle stack guard page faults in virtual_handle_fault().
ntdll: Add a helper function to push the exception data to the thread stack.
ntdll: Build the exception record on the signal stack first.
ntdll: Handle signals on the signal stack also on ARM.
ntdll: Send debug event before pushing exception data on ARM.
ntdll: Send debug event before pushing exception data on ARM64.
ntdll: Send debug event before pushing exception data on x86.
ntdll: Send debug event before pushing exception data on x86_64.
ntdll: Use separate handlers for SIGSEGV/SIGILL/SIGBUS on ARM64.
ntdll: Fix RtlSizeHeap() error value for 64-bit.
ntdll: Avoid buffer underflow in find_dos_device().
kernelbase: Use FSCTL_GET_OBJECT_ID to compare file identities.
ntdll: Use syscall thunks for semaphore functions.
ntdll: Use syscall thunks for event functions.
ntdll: Use syscall thunks for mutex functions.
ntdll: Use syscall thunks for job functions.
ntdll: Use syscall thunks for timer functions.
ntdll: Use syscall thunks for wait functions.
ntdll: Use syscall thunks for keyed event functions.
ntdll: Use syscall thunks for I/O completion functions.
ntdll: Use syscall thunks for thread functions.
ntdll: Use syscall thunks for process functions.
ntdll: Use syscall thunks for file functions.
ntdll: Use syscall thunks for virtual memory functions.
ntdll: Use syscall thunks for system functions.
ntdll: Use syscall thunks for object manager functions.
ntdll: Move the registry system calls to the Unix library.
ntdll: Move the remaining file functions to the Unix library.
ntdll: Move more object manager functions to the Unix library.
ntdll: Move the atom system calls to the Unix library.
ntdll: Move some system stub functions to the Unix library.
ntdll: Move some timer stub functions to the Unix library.
ntdll: Move some power stub functions to the Unix library.
Alistair Leslie-Hughes (2):
wbemprox: Add more Win32_PhysicalMemory properties.
ws2_32: Trace SIO_IDEAL_SEND_BACKLOG_* calls.
Bernhard Rosenkränzer (1):
include: Correct a spelling error in the definition of IXACT3Engine_Initialize.
Brendan Shanks (5):
winex11.drv: Retrieve PCI IDs and device name from Vulkan.
winevulkan: Export VK_KHR_get_surface_capabilities2 functions from vulkan-1.
user32: Create separate FIXME() messages for each packet type in DisplayConfigGetDeviceInfo().
user32: Handle GET_SOURCE_NAME in DisplayConfigGetDeviceInfo().
user32/tests: Test DisplayConfigGetDeviceInfo() GET_SOURCE_NAME with valid ID and invalid LUID.
Daniel Lehman (6):
msxml3: Set internal error on loading from IStream.
msxml3: Set internal error on loading from IPersistStream.
msvcrt/tests: Check errno in strtod test.
msvcrt: Set errno in strtod.
msvcrt: Treat large exponent as overflow in strtod.
ucrtbase/tests: Check errno in strtod tests.
Dmitry Timoshkov (4):
msxml3/tests: Add some tests for XML loading with site assigned.
msxml3: IXMLDOMDocument2's ::SetSite implementation should query site for base URI.
msxml3: Use site's base URI when loading an XML file.
gdi32: Add support for GCP_USEKERNING to GetCharacterPlacement().
Esme Povirk (1):
wbemprox: Implement Win32_SoundDevice.Manufacturer.
François Gouget (3):
kernel32: FILE_SetDosError() is not used anymore so remove it.
mshtml: Fix the spelling of a MoveUnitBounded() parameter.
msvcrt: Fix the spelling of a TRACE() message.
Gabriel Ivăncescu (3):
wined3d: Don't change the swapchain window z-order if no window changes were requested.
wined3d: Don't show the window if no window changes were requested.
wined3d: Restore the window visibility and z-order upon exiting fullscreen, if requested.
Georg Lehmann (2):
winevulkan: Unwrap object for VK_EXT_private_data when needed.
vulkan-1: Add test for VK_EXT_private_data.
Gijs Vermeulen (12):
amstream: Increment/decrement IMediaStreamFilter refcount twice in multimedia_stream_create/release().
amstream/tests: Add IAMMediaStream::JoinFilter() tests.
amstream: Add graph to stream in IMediaStreamFilter::AddMediaStream().
qdvd: Add IDvdGraphBuilder stub.
amstream/tests: Fix filter leak in test_add_stream().
wbemprox/tests: Add Win32_SoundDevice tests.
gdi32: Fix some test failures when not using X11.
amstream: Add AMMediaStream::JoinFilterGraph() tests.
amstream: Implement AMMediaStream::JoinFilterGraph.
qdvd: Support aggregation.
qdvd: Add a stub dvd navigator filter.
qdvd: Add a stub IDvdControl2 interface.
Huw D. M. Davies (2):
server: Remove unnecessary 'remove' parameter from accept_hardware_message request.
include: Update some members of KUSER_SHARED_DATA.
Jacek Caban (65):
server: Always create fd for console_input object.
server: Introduce IOCTL_CONDRV_GET_INPUT_INFO ioctl.
kernelbase: Reimplement GetNumberOfConsoleInputEvents using IOCTL_CONDRV_GET_INPUT_INFO.
server: Introduce IOCTL_CONDRV_READ_INPUT and IOCTL_CONDRV_PEEK ioctls.
kernel32: Use IOCTL_CONDRV_READ_INPUT in read_console_input.
kernelbase: Reimplement PeekConsoleInputW using IOCTL_CONDRV_PEEK.
server: Get rid of no longer needed read_console_input request.
wineconsole: Use IOCTL_CONDRV_GET_INPUT_INFO in WINECON_GetServerConfig.
kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in CONSOLE_GetEditionMode.
kernelbase: Use ioctl for WriteConsoleInputW implementation.
server: Get rid of no longer needed write_console_input request.
server: Create pseudo fd for console_input_events object.
server: Introduce IOCTL_CONDRV_GET_RENDERER_EVENTS ioctl.
wineconsole: Use IOCTL_CONDRV_GET_RENDERER_EVENTS to fetch events.
server: Remove no longer needed get_console_renderer_events request.
wineconsole: Use OVERLAPPED to wait for console events.
server: Remove no longer needed supoort for signaling console_input_events object.
winebuild: Use asm_name for __wine_syscall.
kernel32/tests: Add more invalid handle tests.
server: Use separated fd ops for screen_buffer fd object.
server: Introduce IOCTL_CONDRV_GET_OUTPUT_INFO ioctl.
kernel32: Use IOCTL_CONDRV_GET_OUTPUT_INFO in get_console_font_size.
kernel32: Use IOCT_CONDRV_GET_OUTPUT_INFO in GetCurrentConsoleFontEx.
kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetLargestConsoleWindowSize.
kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleCursorInfo.
kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleScreenBufferInfo.
kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleScreenBufferInfoEx.
wineconsole: Use IOCTL_CONDRV_GET_OUTPUT_INFO in WINECON_GetServerConfig.
server: Remove no longer needed get_console_output_info request.
kernelbase: Introduce console_ioctl helper.
server: Introduce IOCTL_CONDRV_SET_OUTPUT_INFO ioctl.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleCursorInfo.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleCursorPosition.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleScreenBufferInfoEx.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleScreenBufferSize.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleTextAttribute.
kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleWindowInfo.
wineconsole: Use IOCTL_CONDRV_SET_OUTPUT_INFO in WINECON_SetConfig.
wineconsole: Use IOCTL_CONDRV_SET_OUTPUT_INFO in WINECON_SetColors.
server: Remove no longer used set_console_output_info request.
server: Introduce IOCTL_CONDRV_GET_MODE ioctl.
kernelbase: Use IOCTL_CONDRV_GET_MODE in GetConsoleMode.
kernel32: Use IOCTL_CONDRV_GET_MODE in VerifyConsoleIoHandle.
server: Introduce IOCTL_CONDRV_SET_MODE ioctl.
kernelbase: Use IOCTL_CONDRV_SET_MODE in SetConsoleMode.
server: Remove no longer needed get_console_mode and set_console_mode requests.
server: Introduce IOCTL_CONDRV_FILL_OUTPUT ioctl.
kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in FillConsoleOutputCharacterW.
kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in FillConsoleOutputAttribute.
kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in fill_console_output.
kernel32: Use IOCTL_CONDRV_FILL_OUTPUT in CONSOLE_FillLineUniform.
server: Remove no longer needed fill_console_output request.
server: Introduce IOCTL_CONDRV_GET_TITLE ioctl.
wineconsole: Use IOCTL_CONDRV_GET_TITLE in WINECON_GetConsoleTitle.
server: Trace console ioctls.
ntdll: Silence server_ioctl_file debug traces.
server: Allow creating console renderer with open_file.
server: Introduce IOCTL_CONDRV_ATTACH_RENDERER ioctl.
wineconsole: Use NtCreateFile to create renderer object.
server: Remove support for crating renderer in alloc_console request.
kernelbase: Avoid unneeded GetConsoleOutputCP calls.
server: Introduce IOCTL_CONDRV_ACTIVATE ioctl.
kernelbase: Use IOCTL_CONDRV_ACTIVATE in SetConsoleActiveScreenBuffer.
server: Remove support for SET_CONSOLE_INPUT_INFO_ACTIVE_SB.
ntdll: Always use GNU _CI* functions implementation on clang.
Kevin Puetz (4):
include: GWL_ID is not a HANDLE or pointer, and should be available on _WIN64.
include: Use __typeof__ so <guiddef.h> is compatible with -std=c++11.
include: Use unsigned int in InlineIsEqualGUID.
oleaut32: Cut off only non-empty \[0-9]+$ resource-id in RegisterTypeLib.
Matteo Bruni (8):
d3dx9: Simplify D3DXSphereBoundProbe() a bit.
wined3d: Fix / update reported driver model version.
wined3d: Automatically assign reported driver D3D version / feature level.
wined3d: Update reported AMD RX driver version.
wined3d: Update reported NVIDIA driver version for Fermi+ GPUs.
wined3d: Disable depth textures with backbuffer ORM.
wined3d: Add GPU information for AMD Raven Ridge.
wined3d: Update comment about sample_c_lz translation in GLSL.
Michael Stefaniuc (1):
dmime: Reimplement the reference list parser.
Myah Caron (2):
msvcrt: Don't reset MXCSR status in __control87_2 if control information is not changed.
ntdll/tests: Add test to check if GetTickCount is updated after sleeping.
Nikolay Sivov (30):
mfplat: Implement sample tracking.
mf: Add a sink stub for EVR.
mf/evr: Add IMFMediaSinkPreroll stub.
mf/evr: Return sink flags.
mf/evr: Track shutdown state.
mf: Make freeing function optional for object activator.
mf/evr: Create mixer object on activation.
mf/evr: Create presenter object on activation.
mf/evr: Add IMFVideoRenderer stub.
mf/evr: Add events queue support for the sink.
mf/evr: Add a stub for clock state sink.
mf/evr: Add IMFGetService stub.
evr: Respond to IMFVideoMixerControl in mixer's GetService().
mf/evr: Forward mixer service requests to the mixer.
mf/evr: Forward presenter service requests to the presenter.
mf/evr: Do not set user context for activator object.
mf/evr: Implement setting/getting sink clock.
mf/evr: Add IMFTopologyServiceLookup stub.
mf/evr: Add support for LookupService() for MR_VIDEO_RENDER_SERVICE/IMediaEventSink.
mf/evr: Return mixer's transform for MR_VIDEO_MIXER_SERVICE requests.
evr/mixer: Request EVR event sink.
mf/evr: Let mixer request necessary services.
evr/tests: Fix test crash on Windows 7.
msxml3/tests: Remove traces.
shlwapi/tests: Remove failing test.
mf/topoloader: Switch to public interface for initial topology validation.
mf/topoloader: Clone source nodes as a first layer of resulting topology.
mf/topoloader: Add a structure for iterative branch resolution.
comctl32/listview: Rename helper argument.
comctl32/listview: Use case-insensitive compare in LVM_FINDITEM.
Paul Gofman (10):
ntdll: Fix KiUserExceptionDispatcher ABI on x86.
ntdll: Don't call NtRaiseException() on x64 if debugger is not present.
ntdll: Use case sensitive search for \??\unix file names only.
ntdll: Fixup instruction pointer for EXCEPTION_BREAKPOINT in the Unix part on x86/x86_64.
ntdll: Fix stack adjustment condition in call_user_exception_dispatcher on x86_64.
ntdll: Stop search on mmap() error in try_map_free_area().
ntdll: Use MAP_FIXED_NOREPLACE flag in try_map_free_area() if available.
ntdll: Always align stack pointer in __wine_syscall_dispatcher on x64.
ntdll: Fix PE unwind info for %rsi, %rdi in KiUserExceptionDispatcher.
ntdll/tests: Test KiUserExceptionDispatcher with RtlUnwind on i386.
Piotr Caban (51):
ntdll: Fix 64-bit values printing in relay.
msvcrt: Fix _control87 ambiguous return value.
ucrtbase: Fix buffer overflow error when printing hexadecimal floating point number.
msvcrt: Move big numbers implementation to new file.
msvcrt: Reimplement floating point numbers printing.
ucrtbase: Add more printf tests.
ntdll: Ignore L length specifier in printf.
msvcrt: Use proper flags instead of characters for printf flags.
ucrtbase: Add parameters validation to _timespec32_get function.
msvcrt: Don't use strcmpW in wcscmp.
msvcrt: Don't use strcmpiW in _wcsicoll_l.
msvcrt: Don't use strcmpiW in _wcsicmp_l.
msvcrt: Don't use strncmpW in wcsncmp.
msvcrt: Don't use strncmpW in msvcrt_get_flags.
msvcrt: Don't use strncmpiW in _wcsnicoll_l.
msvcrt: Don't use strncmpiW in _wcsnicmp_l.
msvcrt: Use _wcsnicmp instead of strnicmpW.
msvcrt: Remove unused parameter in pf_integer_conv.
msvcrt: Don't use strstrW in wcsstr.
msvcrt: Use _iswctype_l in _iswspace_l function.
msvcrt: Don't use isspaceW.
msvcrt: Don't use isalnumW.
msvcrt: Don't use isalphaW.
msvcrt: Don't use iscntrlW.
msvcrt: Don't use isdigitW.
msvcrt: Don't use isgraphW.
msvcrt: Don't use islowerW.
msvcrt: Don't use isprintW.
msvcrt: Don't use ispunctW.
msvcrt: Don't use isupperW.
msvcrt: Don't use isxdigitW.
msvcrt: Improve __crtLCMapStringA implementation.
msvcrt: Don't use tolowerW in _towlower_l.
msvcrt: Don't use tolowerW in _tolower_l.
msvcrt: Don't use tolowerW and toupperW in _setmbcp_l.
msvcrt: Don't use tolowerW.
msvcrt: Don't use toupperW in _towupper_l.
msvcrt: Don't use toupperW in _toupper_l.
msvcrt: Don't use toupperW.
msvcrt: Add _ismbbkana_l implementation.
msvcrt: Add _ismbcalnum_l implementation.
msvcrt: Add _ismbcdigit_l implementation.
msvcrt: Add _ismbcgraph_l implementation.
msvcrt: Add _ismbcalpha_l implementation.
msvcrt: Add _ismbclower_l implementation.
msvcrt: Add _ismbcupper_l implementation.
msvcrt: Add _ismbcspace_l implementation.
msvcrt: Add _ismbcprint_l implementation.
msvcrt: Add _ismbcpunct_l implementation.
comctl32: Compute border size from client and window rectangles.
comctl32: Offset client area when toolbar divider is present.
Robin Kertels (2):
d3dx9: Ignore filter in D3DXLoadSurfaceFromSurface() when rects match.
d3dx9/tests: Add a few D3DXLoadSurfaceFromSurface() tests with different rects.
Rémi Bernon (10):
dxgi/tests: Add more complete window style checks.
d3d9/tests: Check device window rect after reset.
d3d9/tests: Add more visibility tests.
ddraw: Use the WINED3D_SWAPCHAIN_NO_WINDOW_CHANGES flag.
d3d9: Use WINED3D_SWAPCHAIN_RESTORE_WINDOW_STATE if extended.
user32/tests: Add more GetRawInputData tests.
user32: Use WM_INPUT message hw_id as RAWINPUT handle.
mmdevapi: Support new AUDCLNT_* creation flags.
dxgi: Implement IDXGIOutput5 and IDXGIOutput6 stubs.
dxgi: Implement IDXGISwapChain4 stub.
Serge Gautherie (6):
msvcrt: Fix ldiv() return type.
msvcrt: Remove extra pointers on lldiv() implementation and test.
crypt32: Check CRYPT_ConstructBitBlob() return value in CRYPT_ExportKeyTrans().
mlang: Fix scripts values in fnIMLangFontLink2_GetScriptFontInfo().
wininet: Get rid of user buffer in create_cookie_url().
winapi_test: Add/remove headers for urlmon test.
Shawn M. Chapla (6):
gdiplus/tests: Add metafile DrawDriverString test.
gdiplus: Make brush parameter const in brush object serialize helpers.
gdiplus/tests: Add additional logfont size tests.
gdiplus: Set font emSize to height minus internal leading.
gdiplus: Add DrawDriverString record deserialization.
gdiplus: Add DrawDriverString serialization.
Thomas Crider (1):
ntdll: Add missing LC_NUMERIC locale setting to init_locale.
Zebediah Figura (68):
ntdll: Correct a comment referring to fd_cache_section.
winegstreamer: deinterlace belongs to the "good" set, not the "base" set.
kernel32/tests: Call NtQuerySystemInformation(SystemProcessInformation) until it returns STATUS_SUCCESS.
ntdll: Reimplement NtQuerySystemInformation(SystemProcessInformation) using a single server call.
iphlpapi: Reimplement get_pid_map() using the list_processes request.
server: Remove no longer used snapshot requests.
api-ms-win-core-systemtopology-l1-1-0: New DLL.
winebuild: Fix a spelling error in a comment.
d3dcompiler/tests: Check the reflection type of bool variables.
d3dcompiler: Allow hlsl_ir_constant to contain only scalar and vector constants.
d3dcompiler: Store the "then" and "else" instruction lists directly in the hlsl_ir_if structure.
d3dcompiler: Store the loop body directly in the hlsr_ir_loop structure.
ntdll: Set the process creation time in NtQuerySystemInformation(SystemProcessInformation).
ntdll: Set the thread creation time in NtQuerySystemInformation(SystemProcessInformation).
wined3d: Mark the stateblock as dirty in wined3d_stateblock_multiply_transform().
ntdll: Fill the VM counters in NtQuerySystemInformation(SystemProcessInformation).
ntdll: Don't translate Unix virtual disks to FILE_DEVICE_VIRTUAL_DISK.
kernel32/tests: Avoid testing that WaitCommEvent() doesn't return immediately.
msdmo: Remove dead code associated with an older registry format.
msdmo: Avoid a redundant string -> GUID conversion.
msdmo: Use wide character string literals.
msdmo: Factor out any_types_match().
msdmo: Use a dynamically allocated buffer in IEnumDMO::Next().
msdmo/tests: Add tests for DMOGetTypes().
msdmo: Return S_OK from DMOGetTypes() even if the buffer is too short.
msdmo: Return the number of media types retrieved from DMOGetTypes().
msdmo: Avoid leaking key handles in DMOGetTypes().
devenum: Call DMOGetTypes() until less types are returned than were allocated.
quartz: Use calloc() in filter_graph_common_create().
quartz: Get rid of the IFilterGraphImpl typedef.
quartz/vmr9: Show the window only if auto-show is enabled.
quartz/vmr9: Auto-show the window when pausing, not when running.
qcap/smartteefilter: Return VFW_S_CANT_CUE from GetState() if paused.
quartz: Add more tracing to state change methods.
quartz: Don't sort the graph in IMediaFilter::GetState().
quartz/tests: Add more tests for asynchronous state change.
quartz: Poll in IMediaFilter::GetState().
quartz: Increase the initial streaming delay to 200 ms.
quartz: Always apply the 200 ms delay to presentation time.
quartz: Return an error code if a filter reports an incorrect state.
quartz: Run the graph asynchronously if necessary.
kernel32: Implement registry mapping in GetPrivateProfileStringW().
kernel32: Implement registry mapping in WritePrivateProfileStringW().
kernel32: Implement retrieving mapped sections.
kernel32: Implement registry mapping in GetPrivateProfileSectionNames().
kernel32: Implement registry mapping in WritePrivateProfileSection().
kernel32: Implement deleting mapped sections.
kernel32/tests: Add tests for profile registry mapping.
quartz/tests: Test previous filter states.
quartz/tests: Add some tests for media types for the DirectSound renderer.
quartz/dsoundrender: Don't check the subtype in DSoundRender_CheckMediaType().
quartz/tests: Add some tests for pin connection on the DirectSound renderer.
quartz/tests: Add some tests for allocator negotiation on the DirectSound renderer.
ntoskrnl.exe: Add tests for permanent objects.
server: Implement OBJ_PERMANENT.
ntdll: Implement NtMakeTemporaryObject().
ntoskrnl.exe: Create symbolic links as permanent objects.
kernelbase: Create DOS drive links as permanent objects.
server: Remove no longer used unlink_object request.
ntdll/tests: Remove some workarounds for no longer supported versions of Windows.
ntdll/tests: Convert DIR_TEST_CREATE_OPEN into a function.
ntdll/tests: Use wide character string literals in om.c.
ntdll/tests: Fix a copy-paste error.
quartz/tests: Add tests for DirectSound renderer filter state.
quartz/dsoundrender: Do not send quality messages.
strmbase: Get rid of the QualityControlImpl typedef.
strmbase: Set the IQualityControl vtbl in QualityControlImpl_Create().
strmbase: Store the quality control object directly in strmbase_renderer.
Zhiyi Zhang (2):
wined3d: Call wined3d_adapter_init() before initialising any adapter field.
wined3d: Use valid adapter LUIDs if they are available.
Ziqing Hui (10):
d3dx10/tests: Add more test images.
d3dx10: Implement D3DX10GetImageInfoFromMemory().
windowscodecs: Remove header and header_dxt10 in struct DdsDecoder.
windowscodecs: Add IWICWineDecoder stub for DDS decoder.
windowscodecs/tests: Add tests for DdsDecoder_Wine_Initialize().
windowscodecs: Implement DdsDecoder_Wine_Initialize().
windowscodecs: Use IWICWineDecoder_Initialize() to initialize decoders in find_decoder().
windowscodecs: Return fail for unsupported format in DdsDecoder_Initialize().
windowscodecs/tests: Add tests for decoding uncompressed DDS image.
windowscodecs: Add support for decoding uncompressed DDS image.
--
Alexandre Julliard
julliard(a)winehq.org