The Wine development release 5.3 is now available.
What's new in this release (see below for details):
- More work towards Ucrtbase runtime support.
- Full support for Unicode normalization.
- Improvements in Shell Folders handling.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.3.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.3 (total 29):
13925 IKEA Home Planner 2010 2D and 3D graphical views show only garbage
18234 Lotus Approach (MDI app): double clicking minimized MDI child windows (icons) results in "About Wine" instead of maximize
22974 "Shell folders" settings are reset after each wine update
34622 Multiple games need DMO Wrapper Filter, 'qasf.dll' (Neocron, Age of empires III Steam, .NET XNA 3.x/4.x games using Media classes) (`winetricks qasf` is a workaround)
37073 Trees not rendered correctly in Far Cry 2 when anti-aliasing enabled
40649 apps (e.g. sysinternals' ADExplorer) that require ActiveDirectory connections/ADsOpenObject fail
42038 Cannot scroll documents being compared in winmerge (Followup to bug 20695)
42764 Proteus direct 3D render problem
43465 Unit Test: ComboBox Dropdown does not work if Style is set and no scrollbar required
43814 Multiple games require IMFSourceReader ReadSample Implementation (Danganronpa V3, Resident Evil 2 1-Shot Demo)
47857 Logos Bible Software (.Net 4.7.2 app) crashes in win8/10 (because IsNormalizedString is just a stub)
47884 msi:action systematically times out on Windows 2003
47992 msi:action tests fail when running them twice
48136 Wine can't be started, log notice: wineboot failed to start wineboot c00000e5
48229 Regression on Automobilista. A lot of cars and tracks are not shown on Game menu
48302 Warhammer Online doesn't render without d3dx9_34
48386 Some CPU features are not reported for Intel CPU (Detroit: Become Human is affected)
48387 User shared data area should have NumberOfPhysicalPages field filled in (used by Detroit: Become Human)
48484 winecfg doesn't allow disabling Desktop Integration for Downloads
48510 Lotus Organizer 97 crashes when selecting a Backup folder using 'Browse' button
48549 Arma Cold War Assault: Cursor stuck at low fps since Wine 5.0-rc6
48557 Multiple installers crash (Hot Wired, Croc installer) : Setup is unable to initialize the language dialogbox: Error 106
48569 Infinite drag & drop loop crashes WinSCP
48577 DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY and other enums are the wrong size
48594 AnyDesk crashes directly on startup (low WORD of instance handle must be ignored when looking up window classes)
48646 QQMusicAgent crashes when started after installation
48648 Gothic II Night of the Raven:unhandled exception in Wine 5.2
48657 GdipGetNearestColor crash in Subtitle Edit
48669 iphlpapi.NotifyUnicastIpAddressChange() should call the callback initially if requested (required for Far Cry 5 online mode)
----------------------------------------------------------------
Changes since 5.2:
Akihiro Sagawa (7):
user32/tests: Use wide string literals in wsprintf tests.
user32/tests: Add wsprintfA %C conversion tests.
user32: Fix wsprintfA %C conversion.
shlwapi: Fix wnsprintfA/wvnsprintfA %C conversion.
user32: Add wsprintfW %C tests.
user32: Fix wsprintfW %C conversion.
shlwapi: Fix wnsprintfW/wvnsprintfW %C conversion.
Alex Henrie (3):
iphlpapi/tests: Add tests for GetTcp6Table.
iphlpapi: Implement GetTcp6Table on Linux.
ntdll/tests: Add more tests for RtlIpv6StringToAddress.
Alexandre Julliard (22):
unicode: Move the compatibility decomposition table to ntdll.
unicode: Copy the composition table to ntdll.
libport: Move the composition tables back to libwine and stop updating them.
unicode: Add support for high Unicode planes to the combining class table.
unicode: Add support for high Unicode planes in decomposition tables.
unicode: Add support for high Unicode planes in composition tables.
ntdll: Add support for Hangul Unicode normalization.
unicode: Generate compositions on the fly based on the decomposition table.
unicode: Remove non-starter and compatibility compositions from the table.
unicode: Take into account explicit composition exclusions.
unicode: Use the standard compression function for the casemap table.
wine.inf: Add registry keys for normalization forms.
kernel32/tests: Add more normalization tests.
winedump: Add dumping of normalization NLS files.
unicode: Generate the NLS files for normalization forms.
ntdll: Use external NLS files for Unicode normalization.
kernelbase: Use external NLS files for Unicode composition.
ntdll: Implement RtlIsNormalizedString().
unicode: Remove no longer used normalization tables.
ver: Use the 16-bit resource function in GetFileVersionInfo16().
kernel32/tests: Add some tests for Idn functions.
ntdll: Allow final null in RtlNormalizeString() even if 0 is an invalid character.
Alistair Leslie-Hughes (2):
oledb32: Ensure provider is selected before changing tabs.
dmstyle: IDirectMusicStyle8 GetDefaultBand return S_FALSE.
Anton Baskanov (3):
amstream: Implement AMAudioStream::GetFormat.
amstream: Implement AMAudioStream::SetFormat.
amstream: Reject incompatible media types in AMAudioStream::ReceiveConnection.
Aurimas Fišeras (3):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Biswapriyo Nath (1):
include/dxva2api.idl: Add function declarations.
Brendan Shanks (3):
wineboot: Populate BIOS registry keys.
ntdll: Add system family and SKU to generated SMBIOS tables.
wbemprox: Add embedded controller and system BIOS release numbers to Win32_BIOS.
Connor McAdams (1):
d3d10: Introduce an effect buffer variable structure.
Daniel Lehman (4):
include: Fix compile error with C++ winelib.
include: Update wcstok declarations.
tzres: Add Aleutian Time Zone.
wintrust: Set last error in WinVerifyTrust.
Dirk Niggemann (1):
toolhelp: Return correct handle, address, flag and lock values in LocalNext() for moveable blocks.
Dmitry Timoshkov (8):
widl: Generate name for a tagless union.
widl: If a variable doesn't have a name provide an autogenerated one.
activeds.tlb: Add typelib.
ole32: Correct MkParseDisplayName spec entry.
activeds: Implement ReallocADsMem.
activeds: Implement AllocADsStr and FreeADsStr.
user32/tests: Add some tests for classes with non-zero low word instance.
server: Ignore low word of a class instance when looking up for a window class.
Florian Will (5):
gdiplus: Refactor to split up encode_image_wic().
include: Add enums and GUID required for GdipSaveAdd().
gdiplus: Add GdipSaveAddImage() stub.
gdiplus/tests: Add multi-page tiff file saving test.
gdiplus: Implement GdipSaveAddImage() and GdipSaveAdd().
François Gouget (11):
kernel32/tests: Clarify the process's quotes handling comment.
advapi32/tests: Simplify the name of the test unit for child processes.
msvcrt: Add _CRT_INT_MAX to corecrt.h.
msvcrt: Old versions of _vsnprintf() treat the size as a signed int.
shell32/tests: Simplify the name of the test unit for child processes.
msvcrt/tests: Simplify the name of the test unit for child processes.
kernel32/tests: Simplify the name of the test unit for child processes.
kernel32/tests: Avoid a race in test_WaitForJobObject().
kernel32/test: Simplify a couple of calls to 'process exit'.
kernel32/tests: Check if CreateProcess() resets STARTUPINFO/PROCESS_INFORMATION.
gdi32/tests: Remove unnecessary metafile handle traces.
Gabriel Ivăncescu (14):
vbscript: Move the named_item_t definition.
vbscript: Implement separate script dispatch objects for each named item.
vbscript/tests: Add tests for named item script dispatches.
vbscript: Return the dispatch object directly in retval, rather than its value.
jscript: Initialize the script context in SetScriptSite.
jscript: Move the clear_script_queue up to SCRIPTSTATE_INITIALIZED.
jscript: Move the named_item_t definition.
jscript: Lookup the named item using a helper function.
jscript: Implement the SCRIPTITEM_CODEONLY flag.
jscript: Preserve the 'enter_notified' field when an error occurs.
vbscript: Return the item's disp when it does not have the SCRIPTITEM_CODEONLY flag, rather than the script dispatch.
hid: Implement HidP_GetUsageValueArray.
jscript: Reference-count the named items.
vbscript: Don't create script dispatches for items with the SCRIPTITEM_GLOBALMEMBERS flag.
Hans Leidekker (5):
bcrypt: Support retrieving the PaddingSchemes property for RSA.
wbemprox: Implement Win32_PhysicalMemory.FormFactor.
wbemprox: Implement Win32_DesktopMonitor.Name.
wbemprox/tests: Use wide character string literals.
crypt32/tests: Update *.winehq.org certificate.
Jacek Caban (55):
configure: Use -nostartfiles -nodefaultlibs in cross compiler checks.
stdio.h: Add snprintf inline wrapper.
makedep: Define _UCRT in modules that link to ucrtbase.
stdio.h: Add ucrt version of vsnprintf inline wrapper.
include: Add corecrt_wio.h header.
include: Move __acrt_iob_func declaration to corecrt_wstdio.h.
stdio.h: Add ucrt _vsnprintf_s declaration.
stdio.h: Add ucrt _vscprintf declaration.
stdio.h: Add ucrt vsprintf declaration.
stdio.h: Add ucrt vsprintf_s declaration.
stdio.h: Add ucrt _vsprintf_p_l declaration.
stdio.h: Add ucrt vfprintf declaration.
stdio.h: Add ucrt vfprintf_s declaration.
include: Add corecrt_wtime.h file.
include: Include sys/stat.h from wchar.h.
stdio.h: Add ucrt _scprintf declaration.
stdio.h: Add ucrt _snprintf_s declaration.
stdio.h: Add ucrt fprintf and fprintf_s declarations.
stdio.h: Add ucrt printf and vprintf declarations.
stdio.h: Add ucrt printf_s and vprintf_s declarations.
stdio.h: Add ucrt sprintf_s declaration.
stdio.h: Add ucrt fscanf and fscanf_s declarations.
stdio.h: Add ucrt scanf and scanf_s declarations.
stdio.h: Add ucrt sscanf and sscanf_s declarations.
stdio.h: Add ucrt _snscanf_l declaration.
include: Add new corecrt_wctype file.
winegcc: Recognize -rtlib as linker argument.
winegcc: Treat -target argument as an alias to --target for clang compatibility.
winegcc: Clean up output file on error.
corecrt_wstdio.h: Add ucrt _snwprintf, swprintf and _swprintf declarations.
corecrt_wstdio.h: Add ucrt _snwprintf_s and _vsnwprintf_s declarations.
corecrt_wstdio.h: Add ucrt _scwprintf and _vscwprintf declarations.
corecrt_wstdio.h: Add ucrt _vscwprintf_p_l and _vswprintf_p_l declarations.
corecrt_wstdio.h: Add ucrt fwprintf and vfwprintf declarations.
corecrt_wstdio.h: Add ucrt fwprintf_s and vfwprintf_s declarations.
corecrt_wstdio.h: Add ucrt fwscanf and fwscanf_s declarations.
corecrt_wstdio.h: Add ucrt swprintf_s and vswprintf_s declarations.
include: Add corecrt_wstdlib.h header.
corecrt_wstdio.h: Add ucrt swscanf and swscanf_s declarations.
corecrt_wstdio.h: Add ucrt wprintf and vwprintf declarations.
corecrt_wstdio.h: Add ucrt wprintf_s and vwprintf_s declarations.
corecrt_wstdio.h: Add ucrt wscanf and wscanf_s declarations.
include: Add corecrt_wstring.h header.
include: Make time.h compatible with ucrt.
include: Make corecrt_wtime.h compatible with ucrt.
include: Make corecrt_wio.h compatible with ucrt.
include: Make sys/stat.h compatible with ucrt.
winebuild: Check more target components for platform string.
winegcc: Check more target components for platform string.
stdlib.h: Make externs declarations compatible with ucrt.
include: Add corecrt_startup.h header.
msvcrt: Use more public declarations in exe entry points.
winegcc: Fix passing -delayload argument to linker.
winegcc: Don't pass ld command to winebuild when building PE file.
vbscript: Lookup host global object in interp_me instead of storing it in script context.
Jeff Smith (7):
gdiplus: Each pen dash array element must be greater than zero.
gdiplus/tests: Test path widening on capped lines.
gdiplus: Fix LineCapRound path widening.
gdiplus: Fix LineCapTriangle path widening.
gdiplus: Add LineCapSquareAnchor path widening.
gdiplus: Add LineCapRoundAnchor path widening.
gdiplus: Add LineCapDiamondAnchor path widening.
Lauri Kenttä (2):
oledb32: Resize dialog fields to accomodate translations.
po: Update Finnish translation.
Liam Middlebrook (1):
winevulkan: Fix two spelling errors in make_vulkan.
Matteo Bruni (16):
wined3d: Use a bitmask for the {v, p}s_const_f fields in struct wined3d_saved_states.
wined3d: Check the actual device limit in wined3d_stateblock_set_*s_consts_f().
wined3d: Get rid of the contained_*s_consts_* arrays.
maintainers: Drop Józef Kucia.
maintainers: Move d3d10 and d3d10_1 under Direct3D helper libraries.
d3dcompiler: Get rid of now unused BWRITERVS_SWIZZLE_{SHIFT, MASK}.
d3d8: Fix texture stage index checks.
wined3d: Rename struct wined3d_map_range to struct wined3d_range.
wined3d: Optimize scanning changed shader constants in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed transform states in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed render states in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed texture states in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed sampler states in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed stream states in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed textures in wined3d_device_apply_stateblock().
wined3d: Optimize scanning changed clip planes in wined3d_device_apply_stateblock().
Michael Stefaniuc (9):
msxml3/tests: Get rid of a2bstr().
msxml3/tests: Just use a wchar string literal instead of _bstr_().
urlmon/tests: Get rid of strcmp_wa() in misc.c.
urlmon/tests: Get rid of strcmp_wa() in protocol.c.
kernel/tests: Get rid of strcmp_aw() / strlen_aw().
urlmon/tests: Get rid of a2w() in misc.c.
urlmon/tests: Get rid of strcmp_aw() in sec_mgr.c.
urlmon/tests: Get rid of a2w() in sec_mgr.c.
vbscript/tests: Get rid of strcmp_wa().
Nikolay Sivov (32):
mfplat/tests: Use wide string literals.
scrrun/tests: Use wide string literals.
wschom/tests: Use wide string literals.
mfplat: Fix media type compare logic regarding user data.
mferror: Add some more clock error codes.
mf: Implement timer functionality for presentation clock.
mf: Use more descriptive name for one of the impl_from_* helpers.
kernel32/tests: Link to activation context API directly.
mf: Shut down quality manager on session shutdown.
mf: Request another sample from sample grabber in clock-ignoring mode.
oleaut32/tests: Link to activation context API directly.
vcomp/tests: Link to activation context API directly.
kernel32/tests: Link to activation context API directly.
ole32/tests: Link to activation context API directly.
user32/tests: Link to activation context API directly.
mf: Add MFCreateSimpleTypeHandler().
mf/tests: Add some tests for SAR time source.
gdi32/tests: Reduce some tracing noise in font tests.
include: Add more Media Foundation error codes.
mf: Add support for returning slowest/fastest rates for session.
mf: Subscribe for next pipeline object event after processing current one.
mf: Create separate topology object and use it as current.
mf: Use separate list for source streams.
mf: Use generic enum for object states.
mf: Keep a list of output streams.
mf: Query for optional event generator for sinks.
mf: Add support for MESessionCapabilitiesChanged event.
mf: Implement two-step session transition to running state.
mf: Track stream sinks state to maintain session state.
mf: Implement Pause() command for media session.
mf: Allow restarting from paused state.
mf: Implement Stop() command for media session.
Olivier F. R. Dierick (10):
shell32: Move _SHCreateSymbolicLinks() above shell folders lookup functions.
shell32: Add helper functions for XDG directories lookup and resource deallocation.
shell32: Add a helper function to create 'My Stuff' sub dirs in 'My Documents'.
shell32: Add a helper function to create a shell folder from CSIDL and return its unix path.
shell32: Move 'My Documents' symbolic link creation in a separate function.
shell32: Move 'My Stuff' symbolic link creation in a separate generic function.
shell32: Move 'Desktop' symbolic link creation to a separate function.
shell32: Add a function to create one specific symbolic link at a time for user dirs.
shell32: Create user folder symlinks on lookup and only if it's missing.
winecfg: Add Downloads and Templates to shell folders UI interface.
Paul Gofman (9):
ntdll: Fill NumberOfPhysicalPages field in user shared data area.
ntdll: Report rdtsc processor feature if supported.
wined3d: Introduce wined3d_bitmap_is_set().
wined3d: Support AMD alpha to coverage state.
wined3d: Support NVIDIA alpha to coverage state.
d3d9/tests: Test alpha to coverage state capture.
d3d9/tests: Do not use NVIDIA mode in test_alpha_to_coverage() if the reported GPU is AMD.
iphlpapi: Support InitialNotification flag in NotifyUnicastIpAddressChange().
iphlpapi: Return NO_ERROR from NotifyUnicastIpAddressChange() semi-stub.
Piotr Caban (2):
dbghelp: Support 32 and 64-bit binaries in ImageDirectoryEntryToDataEx.
dbghelp: Use RtlImageDirectoryEntryToData in pe_load_msc_debug_info.
Roman Pišl (2):
ole32: Avoid calling QueryContinueDrag recursively.
shell32: Avoid crash on WM_WINDOWPOSCHANGING in BrsFolderDlgProc.
Rémi Bernon (1):
dinput: Increase device buffer size to 1024.
Stefan Dösinger (3):
ddraw/tests: Clear the DXT3 destination surface manually.
ddraw/tests: P8 -> RGB blits are broken on WARP 1709 and newer.
ddraw/tests: WARP returns SURFACELOST when flipping a surface in normal mode.
Sven Baars (8):
gdi32/tests: Add some more GetCharacterPlacement tests.
gdi32: Handle 0 count in GetCharacterPlacementW.
user32: Add EnableNonClientDpiScaling stub.
d3dx9/tests: Add more ID3DXFont_DrawTextW tests.
d3dx9: Reimplement make_pow2() in d3dx9_private.h.
d3dx9: Implement ID3DXFont_PreloadGlyphs.
d3dx9: Implement ID3DXFont_GetGlyphData.
d3dx9: Implement ID3DXFont_PreloadCharacters.
Vijay Kiran Kamuju (1):
include: Update fields of SYSTEM_TIMEOFDAY_INFORMATION.
Vincent Povirk (1):
mscoree: Remove appdomain tracking.
Zebediah Figura (95):
strmbase: Also match a GUID_NULL formattype as a wildcard in source_Connect().
strmbase: Don't check the subtype when determining if a media type is partial.
strmbase: Don't treat GUID_NULL in enumerated types as a wildcard.
d3d9: Make shader validator traces less verbose.
d3d9: Retrieve transform states from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetTransform() and d3d9_device_MultiplyTransform().
d3d9: Retrieve clip planes from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetClipPlane().
include: Add dmodshow.idl and IDMOWrapperFilter.
include: Add IDMOQualityControl and IDMOVideoOutputOptimizations.
qasf: Add a stub DMO wrapper filter.
qasf/dmowrapper: Add a stub IDMOWrapperFilter interface.
qasf/dmowrapper: Add an initial implementation of IDMOWrapperFilter::Init().
d3d9: Retrieve the material from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetMaterial().
d3d9: Retrieve light state from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetLight() and d3d9_device_LightEnable().
qasf/dmowrapper: Create sink and source pins for each stream.
qasf/dmowrapper: Implement sink connection.
qasf/dmowrapper: Implement source connection.
qasf/tests: Add tests for filter state.
qasf/dmowrapper: Call IMediaObject::Flush() when cleaning up the stream.
d3d9: Use ARRAY_SIZE in d3d9_device_GetStreamSource().
d3d9: Validate the stream index in d3d9_device_SetStreamSource().
wined3d: Remove the no longer used extra stream state.
d3d8: Set the primary stateblock when executing draw calls.
d3d8: Stop setting the device state in d3d8_device_SetIndices().
d3d8: Stop setting the device state in d3d8_device_SetStreamSource().
d3d8: Retrieve the vertex shader from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetVertexShader().
winegstreamer: Decommit the source allocator when cleaning up the stream.
strmbase/renderer: Return S_FALSE when pausing the stream if approprate.
quartz/tests: Add a test for cyclic connections.
quartz/filtergraph: Use IFilterGraph2::ConnectDirect() instead of calling IPin::Connect().
quartz/filtergraph: Maintain a topologically sorted list of filters.
quartz/filtergraph: Don't check for cyclic connections in IFilterGraph2::Connect().
quartz/filtergraph: Iterate over all filters in state change methods.
qasf/dmowrapper: Implement receiving and delivering samples.
qasf/tests: Add tests for IPin::NewSegment().
qasf/dmowrapper: Flush the DMO on receiving EOS.
qasf/dmowrapper: Flush the DMO on IPin::EndFlush().
qasf/dmowrapper: Implement seeking via pass-through.
d3d8: Retrieve vertex shader constants from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetVertexShaderConstant().
d3d8: Retrieve the pixel shader from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetPixelShader().
d3d8: Retrieve pixel shader constants from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetPixelShaderConstant().
d3d8: Retrieve textures from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetTexture().
d3d8: Retrieve texture states from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetTextureStageState().
mp3dmod: Implement IMediaObject::GetStreamCount().
mp3dmod: Implement IMediaObject::GetInputStreamInfo().
mp3dmod: Implement IMediaObject::GetOutputStreamInfo().
mp3dmod: Implement IMediaObject::GetInputType().
mp3dmod: Implement IMediaObject::SetInputType().
mp3dmod: Implement IMediaObject::GetOutputType().
mp3dmod: Implement IMediaObject::GetInputSizeInfo().
mp3dmod: Implement IMediaObject::GetOutputSizeInfo().
mp3dmod: Verify the format type in IMediaObject::SetOutputType().
d3d8: Retrieve transform states from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetTransform() and d3d8_device_MultiplyTransform().
d3d8: Retrieve clip planes from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetClipPlane().
d3d8: Retrieve the material from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetMaterial().
mp3dmod/tests: Test IMediaBuffer reference counting.
mp3dmod: Release a held buffer on destruction.
mp3dmod: Handle a NULL buffer passed to IMediaObject::ProcessOutput().
mp3dmod: Implement IMediaObject::Flush().
mp3dmod: Implement IMediaObject::Discontinuity().
d3d8: Retrieve the viewport from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetViewport().
d3d8: Retrieve light state from the primary stateblock.
d3d8: Stop setting the device state in d3d8_device_SetLight() and d3d8_device_LightEnable().
ddraw: Avoid leaking the primary stateblock.
ddraw: Set the primary stateblock when executing draw calls.
ddraw: Retrieve textures from the primary stateblock.
ddraw: Stop setting the device state when setting textures.
ddraw: Retrieve sampler states from the primary stateblock.
ddraw: Stop setting the device state when setting sampler states.
kernel32/tests: Add more tests for DefineDosDevice().
kernel32: Reimplement DefineDosDevice() on top of NT symbolic links.
winegstreamer: Don't query or set GStreamer duration if the filter is stopped.
winegstreamer: Don't fail seeking methods if we couldn't query duration.
winegstreamer: Defer a seek to pause time if necessary.
winegstreamer: Use nAvgBytesPerSec to determine buffer size only for raw audio formats.
ddraw: Retrieve transform state from the primary stateblock.
ddraw: Stop setting the device state when setting transforms.
ddraw: Retrieve clip planes from the primary stateblock.
ddraw: Stop setting the device state in d3d_device7_SetClipPlane().
d3dcompiler/tests: Rewrite to use a separate d3d9 device for each test.
d3dcompiler/tests: Port some tests to shader model 4.
d3dcompiler/tests: Add a test for the comma operator.
Zhiyi Zhang (3):
dxgi: Check NULL adapter parameter in dxgi_factory_EnumAdapterByLuid().
dxgi: Check NULL output parameter in dxgi_adapter_EnumOutputs().
gdiplus: Fix a possible NULL pointer reference in GdipGetNearestColor().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.2 is now available.
What's new in this release (see below for details):
- More compatible codepage mapping tables.
- Support for using the null display driver as a real driver.
- Better UTF-8 support in the Resource and Message Compilers.
- Fixes for using ucrtbase as C runtime.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.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.2 (total 22):
14697 OllyDbg 2.x freezes sometimes during processing of debug events (debug events can block completion of queued user APCs)
18159 Lotus Approach (MDI app) has extra caption buttons and Control box
18933 Free PDF to Word Doc converter doesn't work, window empty/hangs on launch (appinstall)
34848 PDF-XChange Viewer 2.5.213 crashes when switching between document tabs
36059 Multiple Steam games fail to install DirectX runtime prerequisite, resulting in repeated install attempt on startup ('xinput1_3.dll' locked by client)
36521 Star Wars rebellion update 1.01 crashes on start (quoted process command line only created with special 'My Documents' folder)
43934 SumatraPDF 3.1.2 has very narrow buttons in its installer
45462 PDF X-Change Viewer (all versions) cannot click dialog box in menu
45481 Spintires: MudRunner crashes at launch
46619 Lineage 2 crashes (godworld.ru private server)
46735 Multiple applications need Direct3DShaderValidatorCreate9() implementation (The Sims 2 demo, Armed Assault)
47018 Multiple applications show transparent bitmap images on static controls with black background (comctl32 lacking support for painting 32-bit BMPv3 with alpha channel)
47718 x86_64-w64-mingw32-strip strip dlls make wine failed start
48122 Arturia MIDI Control Center crashes on unimplemented function ntoskrnl.exe.RtlIsNtDdiVersionAvailable
48392 Multiple applications crash on unimplemented function WS2_32.dll.WSCSetApplicationCategory (Verbum 8, Lineage 2's SmartGuard 3.0)
48408 mixthread monopolizes buffer_list_lock if WaitForSingleObject returns quickly, causing livelock and game freeze
48424 xl-r8r: Crashes right after splash screen (apparently because vga.dll is missing)
48480 dlls/krnl386.exe16 - thunk.c argument logic incorrect for CallProcEx32W16
48489 .Net 4.7+ requires GpFontFamily to be referenced counted instead of cloning.
48541 Affinity Photo trial (1.7.2) crashes:Call from 0x7b00fa3d to unimplemented function mscms.dll.WcsGetDefaultColorProfileSize
48561 Cadence Allegro Professional 16.6 crashes at startup
48571 Firefox 72.0.* crashes on every tab (unless dwrite is disabled)
----------------------------------------------------------------
Changes since 5.1:
Akihiro Sagawa (7):
user32/tests: Add wsprintfA %S conversion tests.
user32: Fix wsprintfA %S conversion.
shlwapi: Fix wnsprintfA/wvnsprintfA %S conversion.
user32/tests: Add wsprintfW %S conversion tests.
user32: Fix wsprintfW %S conversion.
shlwapi: Fix wnsprintfW/wvnsprintfW %S conversion.
gdi32: Fix function names in comments.
Alex Henrie (10):
iphlpapi: Consolidate append_*_row functions.
include: Add remaining MIB_TCP6 types.
iphlpapi: Remove unnecessary memcpy from build_udp6_table.
iphlpapi/tests: Build rotating buffers into ntoa and ntoa6.
ntdll/tests: Add more tests for RtlIpv6StringToAddress.
iphlpapi: Get rid of dummy arguments to sscanf.
include: Add GetIcmpStatisticsEx.
iphlpapi/tests: Print a message when skipping GetUdp6Table tests.
iphlpapi/tests: Don't allow skipping ParseNetworkString tests on Wine.
iphlpapi/tests: Drop workarounds for Windows <= 2000.
Alexandre Julliard (51):
kernelbase: Use RtlNormalizeString() directly in FoldStringW().
libport: Move Unicode normalization implementation to ntdll.
kernel32/tests: Add some NormalizeString() tests.
ntdll: Add parameter checking in RtlNormalizeString().
ntdll: Fix estimated buffer sizes in RtlNormalizeString().
kernelbase: Fix NormalizeString() return value and last error.
unicode: Store variable-length sequences also for the main decomposition table.
unicode: Store recursive decompositions directly in the tables.
unicode: Avoid copying the decomposition data when not necessary.
unicode: Expand surrogates in decomposition tables.
unicode: Move the combining class table to ntdll.
kernel32/tests: Optionally test the entire NormalizationTest.txt file.
wrc: Directly implement UTF-8 conversions.
wmc: Directly implement UTF-8 conversions.
libport: Move wine_fold_string implementation back to libwine and make it obsolete.
libport: Move wine_compare_string implementation back to libwine and make it obsolete.
libport: Move wine_cpsymbol functions back to libwine and make them obsolete.
libport: Move wine_utf8 functions back to libwine and make them obsolete.
libport: Move the digitmap table back to libwine and stop updating it.
libport: Move the collation table back to libwine and stop updating it.
wmc: Reimplement input format detection to correctly handle Unicode BOM.
wmc: Set the output format from the output file name.
wmc: Add trailing newlines to error messages.
wmc: Always output resource strings in Unicode format.
winegcc: Make the WINEBUILD variable take precedence over the bin directory.
wrc: Add a helper function to terminate the resource data.
wrc: Simplify the put_string() helper function.
wrc: Export the convert_string_utf8() helper function.
wrc: Add an option to set the input codepage to UTF-8.
wrc: Avoid converting Unicode strings back to Ansi.
wrc: Set the output format from the output file name.
unicode: Add JIS-0212 mappings to the 20932 (EUC-JP) codepage table.
unicode: Support fetching a zip containining the data files.
unicode: Use codepage files from Microsoft's Open Specification data.
unicode: Remove some codepages that don't exist on Windows.
setupapi: Use wide character string literals.
setupapi: Support a WineSourceDirs section to copy files from the Wine build or data dir.
makefiles: Move l_intl.nls to a new nls directory.
unicode: Generate nls files for the codepage tables.
ntdll: Use external codepage tables for the Unix codepage too.
wrc: Add --nls-dir option.
wmc: Add --nls-dir option.
wrc: Use external NLS files for codepage conversions.
wmc: Use external NLS files for codepage conversions.
libport: Move wine_cp_mbstowcs implementation back to libwine and make it obsolete.
libport: Move wine_cp_wcstombs implementation back to libwine and make it obsolete.
libport: Move the codepage table functions back to libwine and make them obsolete.
libport: Move the codepage tables back to libwine and stop updating them.
ntdll: Don't allow unsupported codepages as Unix codepage.
ntdll: Add script to generate the error mapping list.
ntdll: Add more error mappings.
Alistair Leslie-Hughes (7):
include: Add cdosys.idl.
oledb32: Add page for ODBC connections to datalink dialog.
include: Add X3DAUDIO_CALCULATE_* defines.
include: Add more x3daudio defines.
oledb32: Add Advanced page to datalink dialog.
d3dx9: Implement D3DXCreateKeyframedAnimationSet.
oledb32: Add All page to data Link dialog.
Andrew Eikum (1):
winealsa.drv: Clean up midiOpenSeq.
Andrew Wesie (3):
ntdll: Add NtQueryVirtualMemory(MemoryWorkingSetExInformation).
kernel32: Make QueryWorkingSetEx use MemoryWorkingSetExInformation.
psapi/tests: Test QueryWorkingSetEx.
Aurimas Fišeras (5):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Biswapriyo Nath (1):
include: Update winhttp.h.
Brendan Shanks (6):
wbemuuid: Add library.
wined3d: Add GPU information for NVIDIA GeForce GTX 1060 3GB.
include: Fix size of DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum.
include: Fix size of tomConstants enum.
include: Fix size of RecordCreateOptionsEnum.
ntoskrnl: Fix emulation of RIP-relative addressing.
Christian Costa (1):
d3dx9: Support D3DFMT_X8L8V8U8 in DDS files.
Daniel Lehman (6):
msvcrt/tests: Add some wcstombs_s_l tests.
msvcrt: Don't set error in wcstombs_s_l if no characters to convert.
msvcrt: Set return value on all paths in wcstombs_s_l.
include: Add some E_* defines.
crypt32: Implement CryptBinaryToStringW(HEXRAW).
tzres: Add Haiti Time Zone.
Derek Lesho (5):
mfplat: Make functionality of GetMediaTypeHandler more clear.
msctf: Always provide a context when from GetBase/Top.
mfplat: Implement IMFByteStream::GetLength() for file streams.
mfplat: Implement IMFByteStream::SetCurrentPosition() for file streams.
mfplat/tests: Add more comprehensive media source tests.
Dirk Niggemann (1):
krnl386.exe: Make CallProcEx32W16 clear CPEX_DEST_CDECL flag before looping over arguments.
Dmitry Timoshkov (18):
comctl32/tests: Add a test for notification messages order in the monthcal control.
comctl32: For multiselect monthcal control send MCN_SELCHANGE notification on WM_LBUTTONDOWN event.
ntdll: Split logic for MemoryBasicInformation into a separate function.
user32/tests: Add some tests for Static/SS_BITMAP control.
comctl32/tests: Add some tests for Static/SS_BITMAP control.
gdiplus: Make GdipGetNearestColor print FIXME only if indexed bitmap is associated with the graphics object.
comctl32: Switch to using a structure for extra storage.
comctl32: Create an internal copy for 32-bpp bitmaps with an alpha channel for Static control.
comctl32/tests: Add more tests for Static/SS_BITMAP control.
gdiplus: Print fixme in GdipGetNearestColor only once.
include: Add adserr.h.
activeds: Implement ADsOpenObject.
activeds: Implement AllocADsMem and FreeADsMem.
kerberos: Add support for SECQOP_WRAP_NO_ENCRYPT to SpSealMessage.
include/iads.idl: Remove duplicate interface definition.
adsldp: Add LDAPNamespace stubs.
adsldp: Add IADsOpenDSObject stubs.
adsldp/tests: Add some tests for LDAPNamespace.
Donna Whisnant (1):
mshtml.idl: Fix duplicated dispinterface functions.
Fabian Maurer (1):
kernel32/tests: Make sure test doesn't depend on previous state.
François Gouget (7):
tests: Don't initialize static variables to 0.
configure: Fix a typo in a comment.
bcrypt: Make format_gnutls_signature() static.
kernel32: Export kernel32's FlushFileBuffers() implementation.
tests: Limit spam from todos, skips and traces when winetest_debug==1.
tests: Restore the colon in the test summary line.
tests: Restore the colon in the todo, skip and trace lines.
Gabriel Ivăncescu (5):
vbscript: Return the named item itself from lookup_named_item.
vbscript: Lookup the named item in compile_script.
vbscript: Fail if we have no context in InvokeEx.
vbscript: Use a helper function to lookup the global functions.
vbscript: Implement the SCRIPTITEM_CODEONLY flag.
Gerald Pfeifer (1):
wldap32: Define a debug channel only when we are using it.
Giovanni Mascellani (1):
d2d1: Trim rasterization area when drawing Bézier curves.
Hans Leidekker (2):
bcrypt: Support BCRYPT_HASH_REUSABLE_FLAG in BCryptOpenAlgorithmProvider.
winhttp/tests: Use wide character string literals.
Henri Verbeet (1):
wined3d: Properly validate the stage index in wined3d_stateblock_set_texture_stage_state() (Coverity).
Hermès Bélusca-Maïto (1):
atl: Fix the ATL_WNDCLASSINFOW::m_szAutoName member definition and construction.
Ilia Mirkin (2):
crypt32: Also check CERT_CHAIN_POLICY_ALLOW_UNKNOWN_CA_FLAG.
crypt32/tests: Additional test for skipping unknown CAs.
Jacek Caban (43):
jscript: Propagate Invoke error code using jsexcept_t.
jscript: Store error location in jsexcept_t.
jscript: Support propagating error message.
jscript: Delay error object creation for builtin errors with message string until it's needed.
jscript: Propagate parser error location.
jscript: Propagate compiler error location.
jscript: Return error source and description from GetExceptionInfo.
jscript: Add GetSourcePosition implementation.
vbscript: Don't convert hex literals ending with '&' to short in parse_hex_literal.
vbscript: Add SetScriptState(SCRIPTSTATE_CLOSED) implementation.
vbscript: Silence QueryInterface FIXME.
wscript/tests: Get rid of strcmp_wa.
wscript/tests: Get rid of mystrchr.
ole32: Silence noisy ERRs.
guiddef.h: Remove GUID_NULL declaration.
widl: Check dispinterfaces for duplicated methods.
jscript: Add GetSourceLineText implementation.
mshtml/tests: Get rid of is_prefix_wa.
guiddef.h: Improve __uuidof implementation.
atl: Allow only ASCII digit for registrar binary values.
crypt32: Allow only ASCII digits in CRYPT_AsnEncodeNumericString.
propsys: Allow only ASCII digits in PSPropertyKeyFromString.
quartz: Fix hex digit checks in process_pattern_string.
setupapi: Fix hex digit check in SetupGetBinaryField.
wbemprox: Fix checking for digit characters.
winhttp: Fix digit character check in parse_port.
webservices: Fix digit character checks.
quartz: Remove unused functions.
oleaut32/tests: Use Unicode strings for file names.
oleaut32/tests: Add test of reference typelib caching.
oleaut32: Move TKIND_DISPATCH logic to ITypeInfoImpl_GetInternalFuncDesc.
oleaut32: Return missing function custom data as VT_EMPTY.
oleaut32: Use ITypeInfoImpl_GetInternalFuncDesc in a few more places.
makedep: Use -mno-cygwin for linking modules with no sources.
user32: Allow using null driver as a normal graphics driver.
tchar.h: Fix some macros.
corecrt_wstdio.h: Add new file and use it instead of duplicating declarations in stdio.h and wchar.h.
makedep: Use msvcrt headers for objects inside importlibs.
user32: Initialize module handle to NULL for null driver.
stdio.h: Provide sprintf and _snprintf as inline wrappers.
corecrt_stdio_config.h: Add new header file.
include: Move NULL define to corecrt.h.
ucrtbase: Use public headers for _vsnprintf implementation.
Jacek Konieczny (2):
winealsa.drv: Allow external MIDI port connection changes.
winealsa.drv: Send MIDI events to port subscribers.
Jeff Smith (2):
gdiplus: Fix calculation for 32-bit PARGB to ARGB conversion.
gdiplus: Round up when converting from 32-bit ARGB to PARGB.
Julian Rüger (1):
po: Update German translation.
Kevin Puetz (14):
oleaut32: Use GetFinalPathNameByHandle to canonicalize file path.
atlbase.h: Fix some declarations on win64.
objbase.h: Add COWAIT_DEFAULT declaration.
mshtml.idl: Fix IHTMLComputedStyle declaration.
ntdll: Allow NULL lpAssemblyDirectoryName in find_actctx_dll.
kernelbase: Allow NULL lpAssemblyDirectoryName in find_actctx_dllpath.
oleaut32: Search cache for requested typeinfo in GetRefTypeInfo.
oleaut32: Fix handling resource IDs in paths when registering typelib helpdir.
oleaut32: Return function description as TLBFuncDesc from ITypeInfoImpl_GetInternalDispatchFuncDesc.
oleaut32: Use ITypeInfoImpl_GetInternalFuncDesc in ITypeInfo2_fnGetFuncCustData.
include: Introduce WINE_UNICODE_CHAR16 that allows using char16_t as Windows WCHAR.
basetyps.h: Don't typedef wchar_t for C++.
tchar.h: Allow using header without msvcrt.
wtypes.idl: Support OLESTR macro with non-native wchar_t.
Lauri Kenttä (1):
po: Update Finnish translation.
Liam Middlebrook (1):
winevulkan: Handle bitmask pointers for spec generation.
Louis Lenders (1):
vga: Add stub dll.
Marcus Meissner (2):
mshtml: Use ARRAY_SIZE instead of sizeof in MultiByteToWideChar.
ieframe: Use ARRAY_SIZE for GetLongPathNameW.
Matteo Bruni (2):
d3dcompiler: Free variable definitions data on allocation errors.
d3dcompiler/tests: Make test_reflection_constant_buffer() work on d3d10.
Michael Müller (1):
setupapi: Implement SP_COPY_IN_USE_NEEDS_REBOOT.
Michael Stefaniuc (29):
bcrypt/tests: Get rid of strcmp_wa().
itss/tests: Get rid of a2w() and strcmp_wa().
propsys/tests: Get rid of strcmp_wa().
oleaut32/tests: Get rid of strcmp_wa().
shlwapi/tests: Get rid of strcmp_wa().
winhttp/tests: Get rid of strcmp_wa().
winmm/tests: Get rid of strcmp_wa().
inetcomm/tests: Get rid of strcmp_wa().
inetcomm/tests: Get rid of a2w().
ieframe/tests: Get rid of a2bstr() in ie.c.
mshtml/tests: Get rid of strcmp_wa() in script.c.
ieframe/tests: Get rid of a2bstr() and strcmp_wa().
msscript.ocx/tests: Get rid of a2bstr().
mshtml/tests: Get rid of a2bstr() in script.c.
mshtml/tests: Get rid of strcmp_wa() in htmldoc.c.
mshtml/tests: Get rid of a2bstr() in htmldoc.c.
mshtml/tests: Get rid of wstr_contains().
mshtml/tests: Get rid of strcmp_wa() in activex.c.
mshtml/tests: Get rid of a2bstr() in activex.c.
mshtml/tests: Avoid a2bstr() on string literals in dom.c.
mshtml/tests: Get rid of a2bstr() in dom.c.
mshtml/tests: Get rid of a2bstr() in events.c.
mshtml/tests: Get rid of strcmp_wa() in events.c.
mshtml/tests: Get rid of strcmp_wa() in xmlhttprequest.c.
mshtml/tests: Get rid of a2bstr() in xmlhttprequest.c.
dmime/tests: Move some ok() calls to make it clear what is being tested.
dmime: Split out the perf default port creation.
dmime: Create a port in the perf CreateStandardAudioPath().
dmime: Implement IDirectMusicPerformance8_PChannelInfo().
Nikolay Sivov (49):
shdocvw: Forward WhichPlatform() to shlwapi.
shlwapi: Use public definitions for WhichPlatform().
shlwapi: Fix SHGetViewStatePropertyBag() prototype.
shlwapi: Fix spec entries for SHFormatDateTime().
shlwapi: Add header entries for SHIsLowMemoryMachine().
include: Add some newer Edit messages.
ole32/tests: Add some tests for MonikerCommonPrefixWith().
ole32/tests: Use helper to test display names.
dwrite: Fix potential strings object leak (Coverity).
dwrite: Do not create intermediate object to return face reference from family.
dwrite: Implement GetFontFaceReference() for fontfaces.
dwrite: Return static axis values for weight/width/italic properties.
rtworkq: Add a stub dll.
rtworkq: Add RtwqCreateAsyncResult().
rtworkq: Add RtwqStartup()/RtwqShutdown().
rtworkq: Add RtwqPutWaitingWorkItem().
rtworkq: Add RtwqCancelWorkItem().
rtworkq: Add RtwqScheduleWorkItem().
rtworkq: Add periodic callbacks.
rtworkq: Add RtwqAllocateWorkQueue().
mfplat: Forward async queue functionality to rtworkq.
gdi32: Retry with hinting disabled if glyph load failed in hinted mode.
rtworkq: Add RtwqSetLongRunning().
rtworkq: Add partial implementation of RtwqLockSharedWorkQueue().
rtworkq: Add deadline management stubs.
xmllite/tests: Get rid of strcmp_wa().
shell32/tests: Get rid of strcmp_wa().
shell32/tests: Fix some compiler warnings on sprintf() buffer sizes.
include: Add the rest of async callback flags.
rtworkq: Use IUnknown wrapper for work item management.
rtworkq: Store item priority and callback flags.
rtworkq: Add a structure for queue initialization parameters.
rtworkq: Initialize queue with specific set of functionality.
rtworkq: Add support for serial work queues.
mfplat: Add MFAllocateSerialWorkQueue() export.
dwrite: Add partial implementation for IDWriteFontFaceReference1::CreateFontFace().
crypt32/tests: Detect missing HEXRAW support by output.
crypt32: Fix CryptBinaryToStringW() to return required length properly.
api-ms: Update EnumDisplayDevicesW() entries.
ntdll: Add threadpool stack information exports.
kernel32: Add threadpool stack information exports.
kernel32: Add StartThreadpoolIo() stub.
ole32: Implement MTA pinning with CoIncrementMTAUsage()/CoDecrementMTAUsage().
dwrite/tests: Use wide string literals for some tests.
ole32: Fix CoGetApartmentType() return value for implicit MTA case.
rtworkq: Initialize MTA on startup.
mfplat/tests: Add some tests for COM initialization in work queues threads.
wincodecs: Return WINCODEC_ERR_PALETTEUNAVAILABLE for jpeg decoder frame.
ntdll: Add missing spec file entry for TpStartAsyncIoOperation().
Paul Gofman (1):
kernel32: Add semi-stub for LoadPackagedLibrary().
Piotr Caban (2):
msvcp90: Don't pass NULL as reference in runtime_error and logic_error constructors.
ucrtbase: Added stub for _get_FMA3_enable.
Rémi Bernon (26):
server: Improve APC error handling when alloc_handle fails.
server: Use STATUS_KERNEL_APC to indicate system APCs.
ntdll: Reorder code to make the select logic clearer.
ntdll: Use the status to tell user APC from system APC.
ntdll: Handle system APCs in a separate inner loop.
ntdll: Process system APCs while the signals are blocked.
wpp: Do not pass NULL %s to fprintf.
advapi32/tests: Fix some format-overflow warnings.
advpack/tests: Fix some format-overflow warnings.
fusion/tests: Fix some format-overflow warnings.
kernel32/tests: Fix some format-overflow warnings.
setupapi/tests: Fix some format-overflow warnings.
shell32/tests: Fix some format-overflow warnings.
user32/tests: Fix some format-overflow warnings.
version/tests: Fix some format-overflow warnings.
services/tests: Fix some format-overflow warnings.
msvcrt/tests: Fix some format-overflow warnings.
ntdll/tests: Fix some format-overflow warnings.
hid/tests: Call CancelIo before closing device.
hid: Add HidP_GetLinkCollectionNodes stub.
hid/tests: Add tests for HidP_GetLinkCollectionNodes.
hid: Implement HidP_GetLinkCollectionNodes.
mscoree/tests: Fix some format-overflow warnings.
configure: Re-enable warnings disabled with Wno-format.
server: Validate status in continue_debug_event.
msi/tests: Fix some format-overflow warnings.
Stefan Dösinger (1):
ddraw/test: Completely disable the refcount stealing GetClipper call.
Sven Baars (2):
wined3d: Avoid accessing freed memory in wined3d_view_gl_destroy() (Valgrind).
ddraw/tests: Reverse cleanup order in test_coop_level_threaded().
Vijay Kiran Kamuju (1):
ws2_32: Add stub for WSCSetApplicationCategory.
Zebediah Figura (81):
dsound: Use an SRW lock for buffer_list_lock.
dsound: Use an SRW lock for the buffer lock.
quartz/tests: Add tests for IFilterGraph::Reconnect().
quartz/filtergraph: Implement IFilterGraph2::ReconnectEx().
quartz/tests: Use BaseOutputPinImpl_AttemptConnection().
quartz/tests: Add some tests for file source pin connection.
quartz/filesource: Accept any non-null subtype.
quartz/tests: Add tests for AVI splitter pin connection.
quartz/tests: Improve tests for AVI splitter filter state.
quartz/tests: Add tests for MPEG splitter pin connection.
qedit/tests: Add some tests for sample grabber pin connection.
qcap/tests: Add some more tests for smart tee pin connection.
strmbase: Rename the "pFuncsTable" member of struct strmbase_pin to "ops".
strmbase: Clean up source_Connect().
strmbase: Access our own media types directly in source_Connect().
strmbase: Simplify CompareMediaTypes().
strmbase: Check if the pin is already connected in source_Connect().
ddraw: Apply the device state before executing a draw call.
ddraw: Stop setting the device state in d3d_device7_SetRenderState().
ddraw: Stop setting the device state when setting some default render states.
wined3d: Fix the spelling of a comment.
d3d9: Set the primary stateblock when executing draw calls.
d3d9: Stop setting the device state in d3d9_device_SetStreamSource().
d3d9: Stop setting the device state in d3d9_device_SetIndices().
d3d9: Retrieve stream frequency state from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetStreamSourceFreq().
wined3d: Implement casting int to uint.
strmbase: Always return VFW_E_TYPE_NOT_ACCEPTED if the pin_query_accept() callback fails.
qedit/samplegrabber: Use BaseOutputPinImpl_AttemptConnection().
qedit/samplegrabber: Initialize the media type filter to use wild cards instead of "None" types.
qedit/samplegrabber: Rename the "mtype" field to "filter_mt".
qedit/samplegrabber: Use strmbase media type helpers.
d3d9: Reset the viewport and scissor rect for extended devices in d3d9_device_reset().
d3d9: Stop setting the device state in d3d9_device_SetViewport().
d3d9: Stop setting the device state in d3d9_device_SetScissorRect().
d3d9: Retrieve the vertex declaration from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetVertexDeclaration().
d3d9: Stop setting the device state in d3d9_device_SetFVF().
qedit/samplegrabber: Don't overwrite the filter media type in sample_grabber_sink_connect().
qedit/samplegrabber: Implement sample_grabber_source_query_accept().
qedit/samplegrabber: Correctly implement sample_grabber_source_get_media_type().
qedit/samplegrabber: Don't verify the format block in sample_grabber_sink_connect().
qedit/samplegrabber: Reconnect the sink pin if necessary.
d3d9: Retrieve the vertex shader from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetVertexShader().
d3d9: Retrieve the pixel shader from the primary stateblock.
d3d9: Return a stub interface from Direct3DShaderValidatorCreate9().
setupapi/tests: Add some tests for COM self-registration.
setupapi: Initialize COM if necessary when registering DLLs.
devenum: Remove no longer necessary call to CoInitialize().
quartz: Remove no longer necessary call to CoInitialize().
strmbase: Remove no longer necessary call to CoInitialize().
winecrt0: Make __wine_(un)register_resources() cdecl.
quartz/tests: Add some tests for IBasicVideo::GetCurrentImage().
quartz/vmr9: Reimplement VMR9_GetStaticImage().
quartz/videorenderer: Clean up VideoRenderer_GetStaticImage().
quartz/videorenderer: Track the current sample locally.
strmbase: Get rid of current sample tracking.
d3dcompiler: Store the swizzle unshifted.
d3dcompiler: Dump flattened IR more accurately.
d3dcompiler: Use wine_dbg_printf() to dump HLSL IR.
d3dcompiler: Dump loops.
d3d9: Retrieve vertex shader constants from the primary stateblock.
d3d9: Stop setting the device state when setting vertex shader constants.
d3d9: Stop setting the device state in d3d9_device_SetPixelShader().
d3d9: Retrieve pixel shader constants from the primary stateblock.
d3d9: Stop setting the device state when setting pixel shader constants.
quartz/vmr9: Fix copying from the d3d9 surface if the pitch doesn't match the width.
d3d9: Retrieve textures from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetTexture().
d3d9: Retrieve sampler states from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetSamplerState().
d3d9: Retrieve texture states from the primary stateblock.
d3d9: Stop setting the device state in d3d9_device_SetTextureStageState().
d3dcompiler: Return an instruction list instead of a single instruction from nodes representing expressions.
d3dcompiler: Handle loops in free_instr().
d3dcompiler: Parse the comma operator.
d3dcompiler: Get rid of the unused "subexpressions" field of struct hlsl_ir_expr.
quartz/filesource: Zero-initialize the file source filter.
winegstreamer: Read samples synchronously in push_data().
winegstreamer: Negotiate allocators per source pin.
Zhiyi Zhang (13):
setupapi: Implement SetupDiOpenDeviceInterfaceRegKey().
user32/tests: Add more ChangeDisplaySettings tests.
user32/tests: Add more EnumDisplaySettings tests.
wined3d: Add GPU information for NVIDIA GeForce GTX 1650 SUPER.
d3d8/tests: Add multiple adapters tests.
d3d9/tests: Add multiple adapters tests.
dxgi/tests: Add multiple adapters tests.
user32: Move ChangeDisplaySettingsExW() common code to user32.
user32: Trace more ChangeDisplaySettingsExW() flags.
user32: Fix ChangeDisplaySettingsExW() minimum size check.
winex11.drv: Calculate mask in X11DRV_resize_desktop().
user32: Handle NULL device parameter in EnumDisplaySettingsExW().
user32: Handle NULL device and not NULL mode parameters in ChangeDisplaySettingsExW().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.1 is now available.
What's new in this release (see below for details):
- Support for using LLVM-MinGW as PE cross-compiler.
- Better reporting of error location in JScript and VBScript.
- Support for relocatable installation of the Winelib tools.
- Ellipse drawing in Direct2D.
- OLE monikers improvements.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.x/wine-5.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.x/wine-5.1.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 5.1 (total 32):
21702 Continuum 0.40 crashes at start up screen
22006 Multiple applications require support for thread and process security descriptors (Continuum 0.40, Acrobat Reader DC 2015)
23261 Industry Giant 2 demo crashes with DDERR_UNSUPPORTEDMODE message
28059 3DAnalyzer: Hangs when selecting certain exe's
33159 Loading a .dll without relocations fails under Mac OS X (needs preloader)
35351 Allow configuring modifier key mapping
36813 wineconsole: no text without winetricks corefonts
39229 Dragon Age Inquisition crashes
40013 MSYS2 based "Git for Windows" 2.7 fails to install due to 'rebase.exe' tool crashing or hanging in post-install steps
40482 Support set title in start, needed by latest MSYS2
42249 Speccy v1.30 installer crashes (registry SID profile data in 'ProfileList' must contain 'ProfileImagePath' key value)
42554 The Magic School Bus Explores The Solar System crashes while loading
43499 The Legend of Heroes: Trails of Cold Steel - Graphical glitches
43505 Star Wars: Starfighter - screen out of monitor borders
43514 Beamng.drive: wrong sunshine reflection
44618 MindManager Pro v7.0: MSI installer complains "CustomAction unhandled action type 7"
44917 Unable to run DTS MAster Audio Suite Encoder
45049 Multiple programs need d2d1 CreateRoundedRectangleGeometry (playchessV7, Paint.Net 4.*)
45148 Overwatch: left control, left shift keybindings don't work
45501 Darksiders - Slow player movement with builtin d3dx9_42
45742 Sniper Elite V2 has no sound
45847 Warframe installer update/download gets stuck due to corruption on large files in 'Bulk Download' mode (tries over and over again)
45879 Aruba Key crashes on unimplemented function setupapi.dll.CM_Request_Device_EjectA when clicking 'remove' button
46005 Multiple games and applications fail due to missing interface proxy information in registry (oleautomation/dual interfaces referenced in coclass section inside of library block)
47668 Logos 8 (.NET/WPF 4.7.2 application) fails to download resources (needs ReOpenFile implementation)
48018 QuickTime 7.0.x installer fails, 'rundll32.exe "C:\Program Files (x86)\QuickTime\QTSystem\QTJava.dll,QTPostInstallProc"' crashes due to invalid cdecl dll entry
48064 qmgr:job started failing on XP on Sep 09
48150 ddraw:ddraw{2,4} show new test failures
48313 Sysinternals CpuStres crashes on unimplemented function kernel32.dll.GetThreadIdealProcessorEx
48338 DIB images with bpp <= 8 get wrong palette when converted to GpBitmap
48371 Home Designer Suite 21.3.1.1x64 reports "Error #272000009 A serious error occurred (SEH)."
48491 _searchenv & co do not understand quoted directories
----------------------------------------------------------------
Changes since 5.0:
Alexandre Julliard (33):
configure: Allow out-of-tree builds from an unclean source tree.
rundll32: Add wrapper to call entry point on i386.
winedump: Add dumping of case mapping NLS files.
winedump: Add dumping of codepage NLS files.
wmc: Get rid of some unused codepage information.
unicode: Use existing helpers to build the l_intl.nls file.
unicode: Remove case mappings that don't round-trip.
unicode: Use existing helpers to build the sortkeys table.
unicode: Specify a bit width instead of a format when dumping arrays.
msvcrt: Fetch locale codepage directly as an integer.
adsldp/tests: Get rid of strchrW().
crypt32/tests: Get rid of strncmpW().
devenum/tests: Get rid of strchrW() and strncmpW().
mapi32/tests: Get rid of strcmpW().
mlang/tests: Get rid of strstrW().
mscoree/tests: Get rid of strrchrW().
mshtml/tests: Get rid of strstrW().
oleaut32/tests: Get rid of strcmpW().
oledlg/test: Get rid of strstrW().
shell32/tests: Get rid of strcmpW().
shlwapi/tests: Get rid of strcmpW().
user32/tests: Get rid of strncmpW() and strcpyW().
sfnt2fon: Directly store the codepage tables for the few encodings we need.
unicode: Use a standard two-level mapping table for the digit map.
unicode: Use a standard two-level mapping table for the mirror map.
unicode: Use a standard two-level mapping table for the sortkeys map.
unicode: Try harder to reuse subsequences when compressing data arrays.
libwine: Make some functions obsolete.
libwine: Make the debug functions obsolete.
libwine: Make some loader functions obsolete.
wrc: Also search the include dir relative to the binary path.
widl: Also search the include dir relative to the binary path.
winegcc: Also search the include and lib dirs relative to the binary path.
Alistair Leslie-Hughes (9):
dmime: IDirectMusicPerformance8_FreePMsg Release the unknown pointer.
include: Add directmanipulation.idl.
include: Add _Inout_updates_bytes_opt_ define.
include: Add remaining DBPROPSET_* GUID's.
include: Add enum DBPROPFLAGSENUM.
msado15: Implement _Recordset get_CursorLocation and put_CursorLocation.
msado15: Implement _Connection get/put ConnectionString.
d3dx9/tests: Add some tests for ID3DXFont_DrawText().
include: Add xact3wb.h.
Andrew Eikum (6):
winebus.sys: Don't return too early if SDL initialization succeeds.
dinput: Fix V/A/FSlider dwOfs values in c_dfDIJoystick2.
dinput: Add missing ASPECT flags for c_dfDIJoystick2.
dinput: Add missing ASPECT flags to c_dfDIJoystick.
xinput: Implement XInputGetKeystroke.
dxgi/tests: Test the fullscreen state after the swapchain window is destroyed.
Biswapriyo Nath (2):
include: Update dxva2api.idl.
include: Update thumbcache.idl file.
Brendan Shanks (2):
user32: Pack messages sent with SendNotifyMessage().
user32: Support SetWindowPos() SWP_ASYNCWINDOWPOS flag.
Charles Davis (5):
msvcrt: Implement _ispunct_l().
msvcrt: Correct return value of ___mb_cur_max_l_func().
setupapi: Implement CM_Get_DevNode_Property[_Ex]W().
msvcrt: Fix the btowc() function.
gdi32: Add D3DKMTSetQueuedLimit() stub.
Daniel Lehman (3):
msxml3/tests: Fix copy & paste in traces.
vcruntime140_1: Add stub dll.
ucrtbase: Use given context in wcstok.
Dmitry Timoshkov (6):
gdiplus: If the font unit is not pixels scaling should not be applied.
gdiplus: GdipCreateBitmapFromHBITMAP should use palette from the GDI bitmap.
gdiplus: Reimplement GdipCreateBitmapFromGdiDib by using GdipCreateBitmapFromHBITMAP.
gdiplus/tests: Add more tests for GdipCreateBitmapFromHBITMAP and palette images.
gdiplus/tests: Add tests for FontFamily object management.
gdiplus: Create FontFamily objects only once for the FontCollection.
Evan Tang (1):
kernel32/lzexpand: Fix uninitialized read in read_header.
Fabian Maurer (1):
find/tests: Add tests for file based search.
François Gouget (1):
advapi32/tests: Avoid failure when GetServiceKeyName() gets a smart quote.
Gabriel Ivăncescu (1):
comctl32/datetime: Simplify last digits calculation.
Gerald Pfeifer (2):
winedump: Add a default case to numeric_leaf().
msi: Properly declare variables in msi/tests/utils.h as extern.
Giovanni Mascellani (9):
d2d1: Fix miter drawing for degenerated rectangles.
d2d1: Implement rounded rectangle drawing.
d2d1: Implement ellipse drawing.
d2d1/tests: Add tests for rounded rectangle drawing.
d2d1/tests: Add geometry filling tests.
d2d1/tests: Check that hollow figures are not filled.
d2d1: Do not fill hollow figures.
d2d1/tests: Test that hollow figures do not impact geometry bounds.
d2d1: Ensure that hollow figures do not impact geometry bounds.
Hans Leidekker (1):
msi: Add support for custom action type 7.
Henri Verbeet (9):
wined3d: Create Vulkan buffers.
wined3d: Store a gl_info pointer in struct shader_glsl_ctx_priv.
wined3d: Store a gl_info pointer in struct shader_arb_ctx_priv.
wined3d: Get gl_info from the context in wined3d_device_create_primary_opengl_context_cs().
wined3d: Implement mapping Vulkan buffers.
d3d9/tests: Introduce adapter_is_amd().
wined3d: Get rid of the "DirectDrawRenderer" setting.
d2d1: Pass previous and next vectors to d2d_geometry_outline_add_join().
d2d1: Rename d2d_ellipse_geometry_GetRoundedRect() to d2d_ellipse_geometry_GetEllipse().
Jacek Caban (56):
vbscript/tests: Add error position tests.
vbscript: Alloc vbscode_t before parsing the script.
vbscript: Store source location in statement_t.
vbscript: Store source location in instr_t.
vbscript: Store source cookie and starting line in vbscode_t.
vbscript: Use parser_error to set unhandled parser error.
vbscript: Simplify option explicit parsing.
vbscript: Pass parser error location to compiler.
vbscript: Support reporting error location to script host.
jscript: Use parser location to calculate function body string.
jscript: Always set parser error code on error.
jscript: Store source location in statement_t.
include: Add wWinMain declaration.
makedep: Link importlib object files into module only when it's explicitly imported.
winegcc: Add support for -Wl,--entry argument.
msvcrt: Provide EXE entry points in importlib.
winegcc: Use Wine crt when linking builtin EXEs.
ddraw/tests: Don't use log2f to avoid mingwex dependency.
jscript: Introduce jsstr_to_bstr helper.
jscript: Store source position in instr_t.
jscript/tests: Add more error reporting tests.
jscript/tests: Add more script enter notification tests.
msvcrt: Provide exp2f in importlib.
winegcc: Use Wine crt when linking to msvcrt.
vbscript: Overflow hex literals in 16-bit range.
vbscript: Fix VT_UNKNOWN handling in set statements.
vbscript: Fix VT_UNKNOWN handling in is expressions.
scrrun: Add MoveFile implementation.
mshtml/tests: Get rid of strstr_wa.
msvcrt/tests: Avoid using msvcrt.h header.
include: Use dllimport attribute for string.h functions.
jscript: Use internal jsdisp calls only within the same script context.
jscript: Store source context and starting line in bytecode_t.
jscript: Support DISP_E_EXCEPTION InvokeEx result.
jscript: Use separated jsexcept_t instance for each external call.
jscript: Store separated flag indicating if current exception value is valid.
jscript: Store error code in jsexcept_t.
jscript: Use enter_script and leave_script to call script site notifications.
jscript: Add IActiveScriptError implementation.
vbscript: Allow assignment left expression to be member expression.
vbscript: Allow any call expression to be used in set statement.
rpcrt4: Use MustFree for all non-base types in get_param_pointer_info.
mshtml/tests: Get rid of a2bstr from style.c.
mshtml/tests: Get rid of wstr_contains.
mshtml/tests: Get rid of strcmp_wa from style.c.
jscript: Suport generic error object for exception with no associated JavaScript exception value.
jscript: Factor out format_error_message implementation.
jscript: Directly return error code instead of using throw_generic_error.
jscript: Directly return error code instead of using throw_range_error.
jscript: Directly return error code instead of using throw_reference_error.
jscript: Directly return error code instead of using throw_regexp_error.
jscript: Directly return error code instead of using throw_uri_error.
jscript: Directly return error code instead of using throw_syntax_error.
jscript: Directly return error code instead of using throw_type_error in date.c.
jscript: Directly return error code instead of using throw_type_error where possible.
mshtml/tests: Get rid of strcmp_wa from dom.c.
Jeff Smith (5):
gdiplus/tests: Add another GdipGetPathGradientCenterPoint test.
gdiplus: Calculate centroid of path as default center of path gradient.
d3drm/tests: Add some viewport projection type tests.
d3drm: Return D3DRMERR_BADOBJECT from d3drm_viewport2_SetProjection() for uninitialised viewports.
d3drm: Return ~0u from d3drm_viewport2_GetProjection() for uninitialised viewports.
Kevin Puetz (1):
rpcrt4: Fix ITypeInfo leak in get_iface_info.
Liam Middlebrook (2):
winevulkan: Support functions with basic_c return types.
winevulkan: Update to VK spec version 1.1.130.
Louis Lenders (1):
ntoskrnl.exe: Add stub for RtlIsNtDdiVersionAvailable.
Michael Cronenworth (12):
crypt32: Global variable compatibility update for gcc 10.
dsound: Global variable compatibility update for gcc 10.
mshtml: Global variable compatibility update for gcc 10.
secur32: Global variable compatibility update for gcc 10.
winebus: Global variable compatibility update for gcc 10.
wbemprox: Global variable compatibility update for gcc 10.
xinput: Global variable compatibility update for gcc 10.
twain_32: Global variable compatibility update for gcc 10.
msi: Global variable compatibility update for gcc 10.
webservices: Global variable compatibility update for gcc 10.
gphoto2.ds: Global variable compatibility update for gcc 10.
sane.ds: Global variable compatibility update for gcc 10.
Michael Stefaniuc (14):
dmloader: Use wide-char string literals.
dmusic: Use wide-char string literals.
dmstyle: Partially implement Audition track GetParam/SetParam methods.
dmstyle: Partially implement Chord track GetParam/SetParam methods.
dmstyle: Partially implement Command track GetParam/SetParam methods.
dmstyle: Partially implement Motif track GetParam/SetParam methods.
dmstyle: Partially implement Mute track GetParam/SetParam methods.
dmstyle: Partially implement Style track GetParam/SetParam methods.
dmstyle/tests: Add GetParam/SetParam tests for unsupported types.
dmsynth: Avoid the LPDIRECTMUSICSYNTHSINK type.
dmsynth: Avoid the LPDIRECTMUSICSYNTH8 type.
dmcompos: Partially implement Chord Map track GetParam/SetParam methods.
dmscript: Implement the Script track GetParam/SetParam methods.
dmime: Get rid of the DMUSIC_PRIVATE_PCHANNEL typedef.
Nikolay Sivov (63):
ole32: Fix bind speed used in BindToObject() of item moniker.
ole32: Fix bind speed used in ParseDisplayName() for item moniker.
mshtml: Implement IHTMLScriptElement::get_htmlFor().
mshtml: Implement IHTMLWindow7::get_pageXOffset/pageYOffset.
ole32: Handle GetObject() failure in ParseDisplayName() for item moniker.
ole32: Pass correct display name in ParseDisplayName() for item moniker.
ole32: Lock item container on ParseDisplayName().
ole32: Lock item container on BindToObject().
ole32: Fix IsEqual() for item moniker.
dwrite: Add a helper specifically for TryGetFontTable().
dwrite: Evaluate IsSymbolFont() flag at font level.
dwrite: Evaluate IsMonospacedFont() flag at font level.
dwrite: Evaluate IsColorFont() flag at font level.
dwrite: Update for newer font string names.
dwrite: Implement GetFaceNames() for fontfaces.
dwrite: Implement GetFamilyNames() for fontfaces.
dwrite: Access font data directly at font level for GetInformationalStrings().
dwrite: Implement GetInformationalStrings() for fontfaces.
dwrite: Enable DWRITE_INFORMATIONAL_STRING_WEIGHT_STRETCH_STYLE_FAMILY_NAME for GetInformationalStrings().
ole32: Add support for non-default counter for anti moniker.
ole32: Fix IsEqual() for antimoniker.
ole32: Fix comparison data for antimoniker.
ole32: Fix CommonPrefixWith() for antimoniker, when other is also antimoniker.
mf: Simplify clock notification handling.
dwrite: Add support for dlng/slng metadata.
dwrite: Implement IDWriteFont::Equals().
dwrite/tests: Add a test for creating system collection with explicit family model.
dwrite: Do not create fontface instance for GetUnicodeRanges().
ole32: Add support for writing VT_BSTR properties.
ole32: Check buffer bounds when reading storage properties.
ole32: Add partial support for reading VT_VECTOR properties.
ole32: Validate offsets when reading storage dictionary.
ole32: Fix string buffer size.
wineboot: Do not use SHGetMalloc() internally.
shell32: Do not use SHGetMalloc() internally.
ole32: Fix equality check in CommonPrefixWith() for pointer moniker.
ole32/tests: Test default item moniker instance.
ole32: Remove some internal helpers for item moniker.
ole32: Fix IsRunning() for item moniker.
ole32: Lock item container on BindToStorage().
ucrtbase: Add _query_new_handler() and _query_new_mode().
user32: Improve window state handling in SetScrollInfo().
mfplat: Add MFCreateTransformActivate().
mfplat: Add support for local MFT registration.
ole32: Implement custom marshalling for pointer monikers.
ole32/tests: Add some ComposeWith() tests with antimoniker at the right side.
ole32: Add a helper to create antimoniker of specific order.
ole32: Fix (pointer moniker + antimoniker) composing.
ole32: Fix (item moniker + antimoniker) composing.
ole32: Fix (file moniker + antimoniker) composing.
ole32: Get rid of redundant pointer check.
ole32: Enumeration is not supported for pointer monikers.
ole32: Get rid of pointer moniker initialization helper.
ole32: Fix a leak when creating pointer moniker through activation.
ole32: Fix a leak when creating antimoniker through activation.
wincodecs: Add 32RGBA -> 24BGR conversion path.
include: Fix QITAB definition.
msi: Change unknown platform enum entry name.
ole32: Respond to CLSID in antimoniker interface query.
ole32: Respond to CLSID in pointer moniker interface query.
ole32: Respond to CLSID in class moniker interface query.
ole32: Respond to CLSID in file moniker interface query.
ole32: Respond to CLSID in item moniker interface query.
Paul Gofman (4):
d3d9/tests: Add test for alpha to coverage.
include: Add Vista+ PEB_LDR_DATA structure fields.
d3d9/tests: Test more formats in srgbtexture_test().
wined3d: Support sRGB reads for WINED3DFMT_B5G6R5_UNORM.
Piotr Caban (8):
msvcrt: Add support for quoted paths in _searchenv.
msvcrt: Add support for quoted paths in _searchenv_s.
msvcrt: Don't duplicate _searchenv_s code in _searchenv.
msvcrt: Add support for quoted paths in _wsearchenv_s.
msvcrt: Don't duplicate _wsearchenv_s code in _wsearchenv.
msvcrt: Respect allocation mode in malloc.
msvcrt: Use _callnewh in operator new implementation.
msvcrt: Reimplement _set_new_mode function.
Qian Hong (1):
advapi32: Fix the name and use of DOMAIN_GROUP_RID_USERS.
Roman Pišl (1):
kernelbase: Implement GetThreadIdealProcessorEx stub.
Rémi Bernon (2):
ntdll: Don't change RtlWaitOnAddress size after user invoke_apc.
include: Add DBG_REPLY_LATER NTSTATUS code.
Stefan Dösinger (11):
ddraw/tests: Disable a test that causes heap corruption on some Nvidia.
ddraw/tests: Mark a Geforce 9600 misbehavior broken().
ddraw/tests: Don't leak overlay if DWM cannot be disabled.
ddraw/tests: The Windows XP r200 driver does not report DDSCAPS_OWNDC.
ddraw/tests: WinXP drivers don't necessarily set dib.dsBm.bmBits.
ddraw/tests: Don't COLORFILL a surface with a clipper.
ddraw/tests: Don't rely on the implicit vertex color in test_viewport.
ddraw/tests: Dx9 and earlier cards have problems with HW blits to R5G5B5A1.
ddraw/tests: Changing only viewport Z range is broken on r500 on Win10.
ddraw/tests: R200 rejects some bad draw calls.
ddraw/tests: Init the lock desc before using it.
Sven Baars (3):
d3dx9/tests: Use Tahoma in all font tests.
d3dx9/tests: Get rid of redundant handling for D3DXCreateFontA() failures.
d3dx9/tests: Add some more ID3DXFont tests.
Vijay Kiran Kamuju (3):
include: Add missing defines to icm.h.
mscms: Add stub for WcsGetDefaultColorProfileSize.
mscms: Add stub for WcsGetDefaultRenderingIntent.
Vladimir Panteleev (1):
kernel32/tests: Fix GetLastError() checks in environment tests.
Zebediah Figura (79):
compobj: Manually define the IMalloc16 structure.
compobj: Get rid of _xmalloc16().
compobj: Store the IMalloc pointer as a SEGPTR.
compobj: Always set the IMalloc pointer in CoInitialize().
compobj: Reference the IMalloc pointer in CoInitialize().
compobj: Reference the returned IMalloc pointer in CoGetMalloc().
compobj: Implement reference counting for the standard allocator.
qedit: Use wide character string literals.
amstream: Use wide character string literals.
evr: Use wide character string literals.
shell32/tests: Fix some failures in test_contextmenu().
ddraw/tests: Fix some test failures.
quartz: Simplify FilterGraph2_AddFilter().
quartz: Simplify FilterMapper3_CreateCategory().
quartz: Simplify FilterMapper3_UnregisterFilter().
quartz: Simplify FilterMapper3_RegisterFilter().
quartz: Simplify FilterMapper_RegisterFilter().
quartz: Simplify FilterMapper_RegisterPin().
quartz: Simplify FilterMapper_RegisterPinType().
quartz: Simplify FilterMapper_UnregisterFilter().
quartz: Simplify FilterMapper_UnregisterPin().
quartz: Use wide character string literals.
msctf/tests: Fix some test failures on Windows 10.
winegstreamer: Rename the "ppPins" element of struct gstdemux to "sources".
winegstreamer: Rename the "cStreams" element of struct gstdemux to "source_count".
winegstreamer: Fix pin enumeration order for the AVI and WAVE parsers.
quartz/tests: Add more tests for parser media types.
winegstreamer: Implement IPin::QueryAccept() for the WAVE parser source.
http.sys: Translate WSAEADDRINUSE to STATUS_SHARING_VIOLATION.
winegstreamer: Implement IPin::QueryAccept() for the AVI splitter source.
winegstreamer: Implement IPin::QueryAccept() for the MPEG splitter source.
winegstreamer: Split the implementation of source_get_media_type().
winegstreamer: Support converting color spaces within the splitter filter.
winegstreamer: Get rid of the YUV-to-(A)RGB converters.
wined3d: Introduce wined3d_device_apply_stateblock().
d3d9: Apply the device state before executing a draw call.
d3d9: Handle multisample depth resolve in d3d9_device_SetRenderState().
d3d9: Stop setting the device state in d3d9_device_SetRenderState().
d3d9: Stop setting the device state when setting the default ZENABLE state.
winegstreamer: Report MEDIASUBTYPE_IEEE_FLOAT for float types.
winegstreamer: Correctly represent non-32-bit float types.
winegstreamer: Append an audioconvert element to raw audio streams.
winegstreamer: Allow converting to 16-bit 2-channel PCM within the splitter filter.
winegstreamer: Get rid of the AudioConvert filter.
rpcrt4: Use a critical section for the context handle lock.
kernelbase: Implement ReOpenFile().
httpapi: Stub HttpSetRequestQueueProperty().
winegstreamer: Get rid of the mp3 decoder.
strmbase: Remove some no longer used callbacks.
strmbase: Merge enumpins.c into filter.c.
strmbase: Return S_FALSE from IEnumPins::Next() when the pin count changes.
strmbase: Move the IEnumMediaTypes implementation to pin.c.
d3d8: Apply the device state before executing a draw call.
d3d8: Handle multisample depth resolve in d3d8_device_SetRenderState().
d3d8: Stop setting the device state in d3d8_device_SetRenderState().
d3d8: Stop setting the device state when setting the default ZENABLE and POINTSIZE_MIN states.
quartz/filesource: Use a completion port to handle asynchronous requests.
quartz/filesource: Clean up FileAsyncReader_RequestAllocator().
quartz/filesource: Store the media type directly in the AsyncReader structure.
qcap/tests: Expand tests for smart tee aggregation.
quartz: Trace the requested properties in IMemAllocator::SetProperties().
ddraw: Update the primary stateblock in d3d_device1_SetMatrix().
ddraw: Update the primary stateblock in d3d_device3_SetTransform() and d3d_device3_MultiplyTransform().
ddraw: Update the primary stateblock in update_clip_space().
ddraw: Update the primary stateblock in d3d_device3_SetRenderState().
widl: Output a registry script for all interfaces written into the typelib.
include: Don't use the printf format attribute when compiling against msvcrt and not cross-compiling.
mapi32: Use the %I length modifier to print pointer-size integers.
strmbase: Fix printing negative values in debugstr_time().
quartz: Introduce a helper to trace reference time.
strmbase: Store the filter name and graph directly in the strmbase_filter structure.
strmbase: Rename the "pClock" member of struct strmbase_filter to "clock".
strmbase: Trace the filter name in IBaseFilter methods.
strmbase: Trace the pin and filter names in IPin and IMemInputPin methods.
ntdll/tests: Add more tests for printf format specifiers.
ntdll: Support the %I format modifier.
kernelbase: Use the %I length modifier to print pointer-size integers.
advapi32/tests: Clean up and expand tests for LsaLookupSids().
advapi32: Return the string SID if LookupAccountSid() fails.
Zhiyi Zhang (3):
rasenh/tests: Fix a test failure.
vulkan-1/tests: Fix some test failures.
msvcrt/tests: Fix some test failures.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that the stable release Wine 5.0
is now available.
This release represents a year of development effort and over 7,400
individual changes. It contains a large number of improvements that
are listed in the release notes below. The main highlights are:
- Builtin modules in PE format.
- Multi-monitor support.
- XAudio2 reimplementation.
- Vulkan 1.1 support.
This release is dedicated to the memory of Józef Kucia, who passed
away in August 2019 at the young age of 30. Józef was a major
contributor to Wine's Direct3D implementation, and the lead developer
of the vkd3d project. His skills and his kindness are sorely missed by
all of us.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
What's new in Wine 5.0
======================
*** PE modules
- Most modules are built in PE format (Portable Executable, the
Windows binary format) instead of ELF when the MinGW compiler is
available. This helps various copy protection schemes that check
that the on-disk and in-memory contents of system modules are
identical.
- The actual PE binaries are copied into the Wine prefix instead of
the fake DLL files. This makes the prefix look more like a real
Windows installation, at the cost of some extra disk space.
- Modules that have been converted to PE can use standard wide-char C
functions, as well as wide-char character constants like L"abc".
This makes the code easier to read.
- Not all modules have been converted to PE yet; this is an ongoing
process that will continue during the Wine 5.x development series.
- The Wine C runtime is updated to support linking to MinGW-compiled
binaries; it is used by default instead of the MinGW runtime when
building DLLs.
*** Graphics
- Multiple display adapters and monitors are properly supported,
including dynamic configuration changes.
- The Vulkan driver supports up to version 1.1.126 of the Vulkan spec.
- The WindowsCodecs library is able to convert more bitmap formats,
including palette-indexed formats.
*** Direct3D
- Fullscreen Direct3D applications inhibit the screensaver.
- DXGI swapchain presents inform the application when the
corresponding window is minimized. This typically allows
applications to reduce CPU usage while minimized, and is in some
cases required to allow the application window to be restored again.
- Switching between fullscreen and windowed modes using the standard
Alt+Enter combination is implemented for DXGI applications.
- The following features are implemented for Direct3D 12 applications:
- Switching between fullscreen and windowed.
- Changing display modes.
- Scaled presents.
- Swap intervals.
These features were previously already implemented for earlier
versions of the Direct3D API.
- The handling of various edge cases is improved. Among others:
- Out of range reference values for the alpha and stencil tests.
- Sampling 2D resources with 3D samplers and vice versa.
- Drawing with mapped textures and buffers.
- Usage of invalid DirectDraw clipper objects.
- Creating Direct3D devices on invalid Windows, like the desktop
window.
- Viewports with a minimum Z larger than or equal to the maximum Z.
- Resources bound through both shader-resource views and
render-target or depth-stencil views at the same time.
- Blits between formats with and without alpha components.
Since well-behaved applications don't rely on these edge cases, they
typically only affect one or two applications each. There are
nevertheless quite a number of them.
- Dirty texture regions are tracked more accurately for Direct3D 8 and 9
texture uploads.
- Uploads of S3TC-compressed 3D textures require less address space.
Since 3D textures can be potentially large, and address space
exhaustion is a concern for 32-bit applications, S3TC-compressed 3D
textures are uploaded per-slice, instead of in a single upload.
- The ID3D11Multithread interface is implemented.
- Various lighting calculation fixes and improvements for older
DirectDraw applications have been made.
- Limited support for blits across swapchains is implemented.
- More shader reflection APIs are implemented.
- The wined3d CPU blitter can handle compressed source resources.
Support for compressed destination resources was already implemented
in a previous release.
- The Direct3D graphics card database recognizes more graphics cards.
- New HKEY_CURRENT_USER\Software\Wine\Direct3D registry keys:
- "shader_backend" (REG_SZ)
The shader backend to use. Possible values are "glsl" (default)
for GLSL, "arb" for ARB vertex/fragment programs and "none" to
disable shader support.
- "strict_shader_math" (REG_DWORD)
Enable (0x1) or disable (0x0, default) stricter translation of
Direct3D shaders, potentially at a performance cost. This
currently only makes a difference with the default GLSL shader
backend in combination with the proprietary NVIDIA drivers.
- Deprecated HKEY_CURRENT_USER\Software\Wine\Direct3D registry key:
- "UseGLSL"
This has been superseded by the "shader_backend" setting above.
*** D3DX
- Support for compressing textures using S3TC-compression is
implemented.
- Various operations, like e.g. texture fills, on unmappable surfaces
are implemented more correctly. Previously their implementation
relied on the underlying Direct3D implementation not enforcing
mapping restrictions.
- Various improvements and fixes have been made to the effect
framework.
*** Kernel
- Most of the functions that used to be in Kernel32 are moved to
KernelBase, to follow the architecture of recent Windows versions.
- Libraries of the wrong 32/64-bitness are ignored when found in the
search path, to enable loading the correct one if it's found further
in the path.
- Kernel objects are better emulated for device drivers that expect to
manipulate objects from the kernel side.
- The kernel-level synchronization objects like spin locks, fast
mutexes, remove locks, and resource variables are implemented.
- The system battery state is properly reported to applications.
*** User interface
- Minimized windows are displayed using their title bar instead of the
old Windows 3.1-style icons.
- The new button styles Split Buttons and Command Links are
implemented.
- The Edit control sets margins correctly also for CJK fonts.
*** Desktop integration
- Symbolic links to the corresponding Unix directories are created for
the 'Downloads' and 'Templates' folders.
*** Input devices
- Plug & Play device drivers can be installed and loaded on startup.
- Game controllers are better supported, including proper support for
hat switch, wheel, gas and brake controls.
- The old joystick API of Linux versions earlier than 2.2 is no longer
supported.
*** .NET
- The Mono engine is updated to version 4.9.4, including parts of the
Windows Presentation Foundation (WPF) framework.
- The Gecko and Mono add-ons support shared installation, where the
files are used directly from a global location under /usr/share/wine
instead of being copied into every new prefix.
*** Internet and networking
- The Gecko engine is refreshed to support recent toolchains.
- A number of new HTML APIs are implemented.
- MSHTML supports some SVG elements.
- Error object and exception propagation are supported in VBScript.
- A number of VBScript builtin functions are implemented.
- JScript EcmaScript compliant mode is extended to support more
features.
- JScript and VBScript script objects expose type info interfaces.
- The HTTP proxy configuration can be retrieved through DHCP.
- Passport HTTP redirects are supported.
- The HTTP service and corresponding client-side library (HTTPAPI) are
partially implemented.
*** Cryptography
- ECC (elliptic-curve) keys are supported when using GnuTLS.
- Importing keys and certificates from PFX blobs is implemented.
- The PBKDF2 key derivation algorithm is supported.
*** Text and fonts
- OpenType positioning features are supported in DirectWrite, and
enabled for Latin script by default, including kerning.
- Font data access is made safer by validating the various data tables
before using them.
- DirectWrite interfaces are updated to a recent SDK, implementing
some of the latest API additions.
*** Audio / Video
- The XAudio2 libraries are reimplemented to use the external FAudio
library, for better compatibility.
- The Media Foundation libraries are fleshed out, including:
- Support for builtin and user async work queues.
- Ability to submit periodic callbacks, waiting, scheduled, and
regular work items, with support for item priority.
- Support for media event queues.
- Various core API to handle media type objects, stream and
presentation descriptors, object attributes, byte stream objects,
samples and buffers.
- Initial Source Resolver implementation.
- Initial implementation of Source Reader API.
- Implementation for Sample Grabber object.
- Core support for building topology objects.
- Builtin presentation clock implementation, started implementing
Media Session functionality.
- The video capture filter has been ported to use v4l2 instead of the
deprecated v4l1 API, allowing the use of some cameras which do not
support v4l1.
- Support for YUV to RGB translation and reading from v4l2 devices
using mmap() has been removed; we now depend on libv4l2 for both of
these things.
- The builtin AVI, MPEG-I, and WAVE decoders have been removed; we now
depend on GStreamer or the Mac QuickTime Toolkit to decode such
media files.
- Some more VMR7 configuration APIs are implemented.
- The sound drivers support per-channel volume adjustments.
*** Internationalization
- Unicode character tables are based on version 12.1.0 of the Unicode
Standard.
- Unicode normalization is implemented.
- The geographic region id is automatically set in the registry based
on the current locale. It can be modified if necessary under
HKEY_CURRENT_USER\Control Panel\International\Geo.
- The Sinhalese and Asturian locales are supported.
- Codepage 28601 (Latin/Thai) is supported.
*** RPC/COM
- The typelib marshaller supports complex structs and arrays.
- There is an initial implementation of the Windows Script runtime
library.
- There is an initial implementation of the Microsoft ActiveX Data
Objects (ADO) library.
*** Installers
- Microsoft Installer (MSI) Patch Files are supported.
- The WUSA tool (Windows Update Standalone Installer) supports
installing .MSU update files.
*** ARM platforms
- Exception unwinding is implemented for ARM64, using the libunwind
library.
- OLE stubless proxies are supported on ARM64.
*** Development tools / Winelib
- The Visual Studio remote debugger can be used to debug applications
running under Wine.
- The Debug Engine library (DBGENG) is partially implemented.
- Binaries built for a Windows target no longer depend on the libwine
library, to enable them to run on Windows without any extra
dependencies. The libwine library is no longer built for Windows at
all.
- The Resource Compiler and IDL Compiler support a '--sysroot' option
to allow locating header files in cross-compile environments.
- Winegcc supports the options '--target', '--wine-objdir',
'--winebuild' and '-fuse-ld' that make it easier to use as a
cross-compiler, or with custom toolchains.
- The wine/unicode.h header is no longer available to applications,
since the functions will ultimately be removed and replaced by the
standard C runtime wide character functions.
*** Build infrastructure
- Test binaries are built in PE format if MinGW is available, so the
same test binary can run on both Wine and Windows. The 'crosstest'
make target is no longer needed or supported.
- The 'fastcall' calling convention is supported in spec files. It
uses the correct name mangling for Windows builds.
- A '-import' entry point flag is supported in spec files, to mark
functions that need a hotpatch code prefix to be generated for their
import thunks.
- Winebuild supports a '--builtin' option to add a special signature
to PE binaries to mark them as Wine builtins.
*** Builtin applications
- The CHCP tool is implemented. It allows setting the console codepage.
- The MSIDB tool is implemented. It allows manipulating MSI databases.
*** Performance improvements
- The various time functions use higher performance system clocks if
available, to reduce the overhead in the rendering loop of many
games.
- File lookups take advantage of the ext4 filesystem case folding
support if it's enabled on the directory being searched.
- No-data style listboxes (LBS_NODATA) have better performance for
large numbers of items.
- Slim Reader/Writer locks, keyed events, and condition variables use
futexes on Linux to avoid wineserver round trips.
*** New external dependencies
- The MinGW-w64 cross-compiler is used to build modules in PE format.
- The FAudio library is used to implement XAudio2.
- The Inotify library is used for file change notifications on BSD
platforms.
- The Unwind library is used for exception handling on ARM64.
- The Video4Linux version 2 library is used instead of version 1.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc6 is now available.
Barring any last minute issue, this is expected to be the last
release candidate before the final 5.0.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc6.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc6.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-rc6 (total 21):
20465 Brothers In Arms Hell's Highway : Setup asks for DVD for every .cab file (SetupPromptForDiskA/W should only show a dialog if the file doesn't exist)
37598 Double dark line inside default button, e.g. 'OK' / 'SAVE'
41459 32bit 7zFM.exe closes unexpectedly with error "The system cannot allocate the required amount of memory"
43271 Tomb Raider (2013) - unable to use interact key with CSMT
43272 Crash after click Start button in virtual desktop mode when using Steam
44408 Tetris for Windows has wrong colors for the game pieces and the score box
44594 MindManager Pro v7.0 shows XML processing error on startup (needs support for 'exhaustive-errors', 'external-general-entities' and 'external-parameter-entities' features in MSXML SAX reader)
44664 The Five Cores - distorted rendering
45732 Far Cry 5 Cannot Steer Land Vehicles
46036 7-Zip: Endless / infinite dialogs open when you copy a selection of directories from within one .zip file into another
46361 Sonic Mania freezes/crashes when we use a gamepad on 4.0+
46616 ABBYY FineReader 14 crashes during installation
47433 Accel World vs. Sword Art Online needs WTSRegisterSessionNotificationEx() to return true.
47923 kernel32:debugger tests sometimes fail on Windows 10
48335 Serious Sam Classic TFE/TSE crash on saving the game
48416 wine: Call from 0x7bc7b154 to unimplemented function api-ms-win-core-rtlsupport-l1-2-0.dll.RtlInstallFunctionTableCallback, aborting
48444 Dark Messiah of Might and Magic demo: crash on start
48452 The Witcher Enhanced Edition (GOG) some HUD graphics distorted starting wine 5.0-rc4
48454 Acrobat Reader 11 crashes a few seconds after startup
48458 Changes to scanf.c and scanf.h have resulted in Star Citizen incorrectly showing green lighting
48469 Pale Moon crashes when loading web page from address bar
----------------------------------------------------------------
Changes since 5.0-rc5:
Alexandre Julliard (4):
kernel32: Catch stack overflow faults in IsBad*Ptr() functions.
winecfg: Fix list of configurable dlls to account for PE files.
msvcrt: Use unsigned comparisons in strcmp and strncmp.
wine.inf: Remove the winebus service also for ARM64.
Alistair Leslie-Hughes (2):
dinput: Cap the buffer size to 20.
gdiplus: Check status as well before using bitmap.
Andrew Eikum (1):
mscoree: Don't print FIXME for unused config file elements.
André Hentschel (1):
d3dx9: Fix some spec file entries.
Can Taşan (1):
po: Update Turkish translation.
Charles Davis (1):
dbghelp: Look for .eh_fram if no .eh_frame is found.
Gabriel Ivăncescu (4):
strmbase: Detach the window from the parent before destroying it.
quartz/tests: Test video window parent's WM_DESTROY notification.
winex11.drv: Don't confine the pointer to any window when just checking for active grab.
msctf: Clear the corresponding DocumentMgr pointers for Associated Focus Windows on destruction.
Jacek Caban (9):
jscript/tests: Use wide char string literals instead of parse_script_with_error_a.
jscript/tests: Use wide char string literals instead of parse_htmlscript_a.
jscript/tests: Use wide char string literals instead of parse_script_a.
jscript/tests: Use wide char string literals instead of a2bstr.
jscript/tests: Use wide char string literals instead of strcmp_wa.
jscript/tests: Use wide char strings in a few more places.
kernel32/tests: Skip instruction pointer check of the last exception in exception race tests.
jscript/tests: Use wide char string literals in activex.c.
jscript/tests: Use wide char string literals in caller.c.
Jeff Smith (1):
user.exe16: Releasing DC does not disable it.
Michael Müller (2):
setupapi: Add support for IDF_CHECKFIRST flag in SetupPromptForDiskW.
setupapi/tests: Add test for IDF_CHECKFIRST and SetupPromptForDiskA/W.
Nikolay Sivov (2):
comctl32/tests: Add some more ListView customdraw tests.
dwrite/tests: Improve DrawUnderline() test reliability by using text tested font actually supports.
Paul Gofman (1):
d3dx9: Pass D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY when appropriate.
Piotr Caban (5):
msvcrt: Pass catch_func_nested_frame struct to cxx_frame_handler.
msvcrt: Pass catch_func_nested_frame struct to call_catch_block.
msvcrt: Fix handling tryblocks inside current catch block on nested exception.
msvcrt: Fix floating point numbers scanning when null-byte is preceding the number.
urlmon: Fix CoInternetParse{Url,IUri} spec entry.
Zebediah Figura (11):
httpapi/tests: Avoid depending on the availability of specific ports.
netapi32/tests: Fix the size passed to GetUserNameW() and GetComputerNameW() (Coverity).
include: Add more NTSTATUS codes.
rpcrt4/tests: Pass the default maximum call limit to RpcServerListen().
comdlg32/tests: Use GetTempPathA() instead of the current directory in test_extension().
explorerframe/tests: Remove some failing tests.
user32/tests: Fix some test failures with Windows 10.
msi/tests: Fix test_feature_override() to properly clean up its features on removal.
msi/tests: Fix a crash on Windows 10.
urlmon/tests: Avoid testing that only certain interfaces are queried.
urlmon/tests: Make the url tests a bit less verbose by default.
Zhiyi Zhang (2):
ntdll: Fix some Rtl* functions having wrong calling convention.
api-ms-win-core-rtlsupport-l1-2-0: Add missing spec file entries.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc5 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc5.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc5.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-rc5 (total 19):
9609 graphical glitches running Tom Clancy's Splinter Cell Demo (need better FBO stencil buffer support)
25728 UFO: Extraterrestrials Gold - crash at start caused by wine's built-in dsound/directmusic
34041 Skyrim (Steam) hangup on quit
34379 Splinter Cell: Blacklist voice stuttering
35194 Emperor: Battle for Dune does not show compressed textures
40720 Splinter Cell: Blacklist changing sound level has no effect
40721 Splinter Cell: Blacklist some voices/sounds overlap each other
40859 Builtin wbemprox.dll load error for multiple games (Colin McRae DiRT 2, Burnout Paradise)
42558 The Old City: Leviathan sound periodically has crackle effect
42930 Graphical glitches in "Giants Citizen Kabuto"
45323 Rayman Origins, UPlay: Sound effects don't work but music and ambience do
45396 The Evil Within: no audio in game
46972 Adobe DNG Converter 11.2+ runs into Call to unimplemented function api-ms-win-core-winrt-error-l1-1-0.dll.GetRestrictedErrorInfo
47974 X Rebirth - wined3d GL_INVALID_OPERATION dimensions must be identical with current filtering modes
48293 Battle.net App lags when clicking UI elements
48357 Wine 5.0-rc2 prevents multiple apps from connecting to servers (Origin; Dungeons and Dragons Online; Lord Of the Rings Online)
48415 The Magic School Bus Explores The Solar System fails to install
48417 32-bit PE 'kernelbase.dll' has default imagebase 0x10000000 when built with llvm-mingw, preventing non-relocatable native executables from being loaded
48420 Warframe equipment mouse-overs no longer highlight the item
----------------------------------------------------------------
Changes since 5.0-rc4:
Alex Henrie (1):
ntdll/tests: Fix expected RtlIpv6StringToAddress terminator output.
Alexandre Julliard (4):
ntdll: Make loop counter signed.
kernelbase: Remove trailing dot in GetComputerNameExW() when domain name is empty.
kernelbase: Set an explicit load address.
kernel32/tests: Remove some workarounds for old Windows versions.
Alistair Leslie-Hughes (2):
dmime: IDirectMusicSegment8 SetLoopPoints support zero start/end.
d3dx9: Make ID3DXLine::OnResetDevice() return S_OK.
Andrey Gusev (3):
webservices: Fix misplaced parenthesis.
mshtml/tests: Fix a typo.
scrobj/tests: Fix a typo.
André Hentschel (7):
advapi32/tests: Don't test function directly when reporting GetLastError().
comctl32: Fix Str_SetPtr[AW] spec file entries.
dbghelp: Fix MiniDumpWriteDump spec file entry.
gdiplus: Fix some spec file entries.
ole32: Fix some spec file entries.
user32: Fix some spec file entries.
gdi32: Fix some spec file entries.
Damjan Jovanovic (1):
server: Revert b4a1d80ae35d35f5c170e101922bf1563488be18 for now.
Derek Lesho (2):
bcrypt/tests: Add test for BCryptSecretAgreement.
bcrypt/tests: Add tests for BCRYPT_KDF_HASH.
Erich Hoover (1):
webservices: Use sscanf to convert strings to doubles.
Hans Leidekker (3):
winhttp/tests: Fix a test failure.
wininet/tests: Make a check for available data less strict.
wininet/tests: Fix test failures on Windows XP.
Jacek Caban (2):
include: Add roerrorapi.h header.
wmp/tests: Don't use round to avoid dependency on mingwex.
Kim Malmo (2):
po: Update Norwegian translation.
po: Fix a typo in Norwegian translation.
Louis Lenders (1):
combase: Add GetRestrictedErrorInfo and RoOriginateLanguageException stubs.
Matteo Bruni (3):
ucrtbase: Export _o_to{lower, upper}() as to{lower, upper}().
ucrtbase: Add _o_fmod() and _o_fmodf().
ucrtbase/tests: Add tests for the various tolower() and toupper() variants.
Michael Stefaniuc (1):
dmime/tests: Destroy the performance on an error path (Valgrind).
Nikolay Sivov (25):
include: Update CTF_ flags.
include: Update shell link flags enum.
shlwapi: Fix spec entry for QISearch().
jscript/tests: Add missing checks for Close() calls (Coverity).
shell32/tests: Remove workarounds for SHGetFolderLocation().
shell32/tests: Get rid of SHGetMalloc() in tests.
shell32/tests: Use ILFree() directly.
shell32/tests: Use GetLongPathNameA() directly in tests.
shell32/tests: Use GetShortPathNameA() directly in tests.
kernel32/tests: Remove GetLongPathName() workarounds.
kernel32: Fix spec entries for GetLongPathName().
ole32/tests: Link to CoInitializeEx() directly.
shell32/tests: Use ILIsEqual() directly.
shell32/tests: Remove some more workarounds from shelllink tests.
gdi32/tests: Remove some workarounds in font tests.
gdi32/tests: Remove workarounds for SetLayout().
oleaut32/tests: Remove some workarounds for functions that are assumed to be available.
user32/tests: Add some more SetScrollInfo() tests.
shell32/tests: Use SHParseDisplayName() directly.
user32/tests: Remove some workarounds for older Windows versions.
d3d8/tests: Use GetCursorInfo() directly.
advapi32/tests: Remove some workarounds for older versions.
user32/tests: Use device context layout functions directly.
advapi32/tests: Use CreateWellKnownSid() directly.
advapi32/tests: Remove some workarounds in Crypt* tests.
Paul Gofman (1):
user32/tests: Handle results on Win10 in test_Image_StretchMode().
Piotr Caban (1):
ucrtbase: Fix end pointer setting in parse_double on partial nan/infinity match.
Thomas Faber (1):
setupapi/tests: Remove an unused variable.
Zebediah Figura (17):
shell32/tests: Avoid testing that only certain services are requested by IObjectWithSite::SetSite().
ntdll: Fix a typo in get_current_directory().
kernel32/tests: Fix some codepage test failures with Windows 10.
user32/tests: Make the DDE tests less verbose by default.
user32/tests: Relax WindowFromDC() tests a bit.
user32/tests: Get rid of the test for DC handle reuse.
gdi32/tests: Separate and expand tests for GetClipBox().
gdi32/tests: Clarify return values from IntersectClipRect() and ExcludeClipRect().
user32/tests: Avoid testing that GDI handles are no longer valid.
user32/tests: Fix a dialog test failure on Windows 10.
wininet/tests: Don't test that the URL cache is used for persistent cookies.
wininet/tests: Simplify test_InternetErrorDlg().
wininet/tests: Fix some test failures with Windows 10.
user32/tests: Fix some test failures on Windows 10.
netapi32/tests: Rewrite UNC/HTTP conversion tests.
netapi32/tests: Use wide character string constants.
netapi32/tests: Remove some workarounds for no longer supported versions of Windows.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc4 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc4.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc4.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-rc4 (total 15):
12321 Some WinInet tests are invalid
12359 Multiple apps can't detect audio CDs (affects Express Rip, Exact Audio Copy, dbpoweramp CD Ripper)
12363 Exact Audio Copy hangs early when in "native win32" mode.
14715 TopStyle can't preview with wine's built in browser
30039 Can't download Adobe Photoshop CS 5 trial - Adobe Download Assistant can't log in
30102 ieframe/webbrowser test often crashes
33068 PDF-XChange Viewer 2.5.x (32-bit and 64-bit) crashes when trying to save changes/annotations to PDF file
40779 PDF Eraser 1.5 (.NET 4.0 app): Paste of license data from clipboard fails with Wine-Mono
43540 Cosmoteer: ships in game not rendered
44026 Content Manager crashes
44994 Pokemon Reborn crashes when starting
46230 dlls/wininet/http: build failure on NetBSD
47498 Touhou Danmakufu 0.12m crashes on startup in 4.12.1
47820 Magic: The Gathering Arena installer needs powershell.exe (cannot find it)
48374 Divinity: Original Sin 2 - Icons in inventory are invisible (...again!)
----------------------------------------------------------------
Changes since 5.0-rc3:
Alex Henrie (1):
po: Fix typo in Catalan translation.
Alexandre Julliard (2):
ntdll: Fix memory leak in RtlNormalizeString().
Update copyright info for 2020.
Erich Hoover (3):
msvcrt: Rework strtod_helper to be reusable.
msvcrt: Use parse_double for wcstod.
msvcrt: Use parse_double for scanf floats.
François Gouget (1):
user32/tests: Don't trace the test_topmost() window handles.
Gabriel Ivăncescu (2):
quartz: Reset the advise thread's timeout on each iteration.
wined3d: Return FALSE rather than E_FAIL in wined3d_context_gl_create_wgl_ctx.
Hans Leidekker (2):
qmgr/tests: Fix test failures on Windows XP.
msi/tests: Avoid test failure when running as an unprivileged user.
Jacek Caban (4):
kernel32/tests: Get rid of no longer needed win9x checks.
kernel32/tests: Use WAIT_EVENT_TIMEOUT in wait_for_breakpoint.
kernel32/tests: Don't use blackbox for crashing process.
kernel32/tests: Avoid function pointers for functions present since XP.
Kim Malmo (1):
po: Update Norwegian translation.
Lauri Kenttä (1):
po: Update Finnish translations.
Matteo Bruni (2):
d3dcompiler/tests: Load the correct d3dcompiler DLL in the HLSL tests.
d3dcompiler/tests: Load the correct d3dcompiler DLL in the asm tests.
Nikolay Sivov (5):
include: Update DWRITE_INFORMATIONAL_STRING_ID enum.
kernelbase: Fix a typo in weights comparison helper (Coverity).
vbscript/tests: Add missing checks for Close() calls (Coverity).
strmbase: Fix fixed size buffer copy in JoinFilterGraph() (Coverity).
ole32/tests: Add some return value checks (Coverity).
Piotr Caban (5):
msvcrt: Improve strtod precision.
webservices: Fix WsWriteText test crash on Windows 10.
ucrtbase: Fix 0 parsing in parse_double.
msvcrt: Update consumed in all scanf variants on end of input.
msvcrt: Don't use ungetc when reading double in scanf.
Vijay Kiran Kamuju (1):
include: Add IWbemContext and IWbemCallResult interface and other class definitions.
Zebediah Figura (14):
ntdll/tests: Fix some test failures with Windows 10.
quartz/tests: Skip the IVideoWindow tests if connecting returns E_FAIL.
kernel32: Exclude IsBadStringPtrA() from relay traces.
kernel32/tests: Fix a test failure on Windows 10.
user32/tests: Work around a failure on Windows < Vista.
ntdll: Avoid debug traces in _vsnprintf().
ole32/tests: Fix some failures on Windows 10.
ole32/tests: Only test the original SChannelHookCallInfo structure.
ole32/tests: Get rid of some workarounds for no longer supported versions of Windows.
ole32/tests: Make the tests less verbose by default.
winegstreamer: Catch errors while waiting for pin connection.
ntdll/tests: Fix some exception test failures.
mfplat/tests: Link dynamically to d3d11.
d3dcompiler/tests: Load d3dx9_36.dll dynamically.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc3 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc3.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc3.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-rc3 (total 46):
11633 Blood 2: The Chosen Launcher audio bug
11998 NEXON client installers using embedded IE browser control: buttons don't respond to click (Lunia Senki, Combat Arms, War Rock)
12675 Lego Racers crashes trying to play videos when Indeo 5 codec is not installed
12941 International Football 2000: crashes when launching in Direct3D mode
14901 MoveFile fails when used to recase some letters of the filename
17766 Empire Earth crashes on start without native directmusic
21218 Pac-Man All Stars: Story Mode starts with page fault on read access
21715 Blitz3d demo version can't show samples
21791 3D Rad demo "BeltBall" full screen display shows as tiny black rectangle
22278 swkotor crashes on videos
23002 Dynamic HTML Editor unusable due to screen refresh problem
23525 Daytona USA Evolutions: some text/graphics are black, should be colored
24740 Trinklet Supreme crashes on startup
24946 uTorrent 2.2.0 hangs on startup (FD_WRITE event is reported over and over in WSAEnumNetworkEvents for a bound UDP socket)
26566 Gabriel Knight 3: visual glitches in DirectDraw HAL mode
27525 Active Worlds 5.x/6.x shows 3D-world view/window separated from main window (embedded browser control)
31562 crash in mmdevapi/MMDevCol_GetCount() using lithtech game engine.
33829 explorer.exe crashes with simsun.ttc in non-english locale
33908 Undercover: Operation Wintersun demo freezes on start
34232 Rigs of Rods: dropdown menus have too small height
34383 BoulderDashPortal does not start
35412 wine's cmd fails on if not exist foo\nul
35613 Foxit Reader 6.12: 'Show Certificate' button is greyed out after failure to validate digital signature
36878 You Don't Know Jack V1 XL: Not possible to accept license agreement in installer
37574 Everyday Shooter -- crackling/popping sound
37900 Xara Photo Graphic Designer 2013 (8.1.1) crashes on startup
39084 Simpsons Hit & Run regression: fullscreen glitching
39809 Empires: Dawn of the Modern World crash on startup
41619 Lego Racers: crashes when moving the mouse
43115 Metal Slug 1, X, 3 (GOG.com) fail to start
43368 HashMyFiles: Drag & Drop from native File Managers (Dolphin, Nautilus, ...) does not work
44019 Stud.io: parts not showing in the Building Palette
44062 Hedgewars 0.9.23 crashes on start
44773 LEGO Pirates of the Caribbean DEMO crashes on startup
44798 New Bugs on Epic Games
45608 Flintest: Garbled Text
47428 mouse input skipping / jitter in conjunction with xf86-video-amdgpu in almost every game
47484 `winetricks -q dotnet20sp1` fails when compiled with mingw (failure to relocate PE builtin ngen.exe)
47710 objidl.h contains invalid C++
47969 Taiga: Crashes on changing the grouping in seasons
48141 Total Commander: launching of native linux commands for file associations is broken
48180 Divinity: Original Sin 2 - Icons in inventory are invisible
48324 cl.exe fails to compile valid code with float constant due to error C2177: constant too big
48349 Steam doesn't display main window
48350 TrackMania Forever: Dialog after running the ingame benchmark doesn't show up
48358 Dell Latitude E6440 BIOS updater crashes on unimplemented function ntoskrnl.exe.KeSetImportanceDpc
----------------------------------------------------------------
Changes since 5.0-rc2:
Alex Henrie (2):
ntoskrnl: Add KeSetImportanceDpc stub.
po: Update Catalan translation.
Alexandre Julliard (2):
d3d8: Remove redundant includes.
ntdll: Fix memory corruption in RtlNormalizeString().
Damjan Jovanovic (1):
winex11.drv: Ignore .dwAspect in FORMATETC during XDnD.
Dmitry Timoshkov (2):
ntdll: Use default casemap and codepage file names if the value in registry is empty.
msscript.ocx/tests: Fix a typo.
Erich Hoover (2):
ntdll: Drop support for floating point numbers in sscanf.
msvcrt: Fix [str|wcs]tod result being compared against FLT_MAX.
Jeff Smith (1):
include: Declare _STGMEDIUM_UNION type except when it violates C spec.
Martin Storsjo (1):
msvcrt: Only export __p__* functions on i386.
Michael Stefaniuc (2):
dmstyle: Avoid cloning the IStream in parse_style_form().
dmcompos/tests: Add Chord track GetParam/SetParam tests.
Nikolay Sivov (6):
dwrite/tests: Improve coverage of IsMonospacedFont() tests.
dwrite/tests: Add IsColorFont() tests.
ole32/tests: Use heap-based object for custom moniker.
ole32/tests: Add a test for bind speed used by item moniker BindToObject().
ole32/tests: Add some tests for item moniker ParseDisplayName().
include: Update DWRITE_FONT_PROPERTY_ID enum.
Piotr Caban (3):
msvcr90: Fix compilation warning in __AdjustPointer tests.
msvcrt/tests: Improve doubles comparison in strtod and atodbl tests.
msvcr90/tests: Improve floats comparison in _atoflt tests.
Rémi Bernon (7):
user32/tests: Move TEST_MOUSEACTIVATE to test_defwinproc.
user32/tests: Return MA_ACTIVATE to WM_MOUSEACTIVATE on main test window.
winex11.drv: Send HTMENU instead of HTCAPTION to query window activation.
ntdll: Rename find_free_area to find_reserved_free_area.
ntdll: Split view search initialization to find_view_inside_range function.
ntdll: Replace incorrect find_free_reserved_area function call.
ntdll: Start find_free_area from address_space_start instead of 0.
Steve Lhomme (2):
include: Add dxgidebug.idl.
include: Add D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT.
Zebediah Figura (9):
winegstreamer: Recognize the "video/x-cinepak" type.
ole32/tests: Avoid testing exact sequences of IUnknown methods.
ole32/tests: Rewrite and expand test_data_cache_updatecache().
ole32/tests: Make the tests less verbose by default.
oleaut32/tests: Avoid testing that GDI objects are invalid.
ntdll/tests: Remove a no longer reliable test.
user32/tests: Remove unnecessary uses of CREATE_SUSPENDED.
user32/tests: Get rid of some Windows 9x workarounds.
user32/tests: Work around failures on Windows 10 version 1607.
Zhiyi Zhang (5):
configure: Update Xinerama and XRandR extension help strings.
user32/tests: Mark some GetDeviceCaps() tests as todo on Wine.
winhttp: Initialize a return variable.
include: Fix SetupDiOpenDeviceInterfaceRegKey() prototype.
include: Add GUID_DEVINTERFACE_MONITOR.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc2 is now available.
What's new in this release (see below for details):
- Bug fixes only, we are in code freeze.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc2.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc2.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-rc2 (total 36):
10696 Direct3D mode in Age of Wonders 2 demo is unusably slow and glitchy
18879 The Sims 3: Textures go Black and sometimes Abnormal patterns.
26276 StarFisher: Crashes when entering a New Event
30506 GdipGraphicsClear() needs to overwrite pixels, not alpha blend (Text misrendered in Brain Workshop)
31399 Pegasus Mail 4.6x is crashing
31543 Warface not started
35205 WOLF RPG Editor 2.10: Updating the whole texture in IDirect3DDevice9::UpdateTexture() breaks font caches
35731 Startopia: menu contents flicker
38054 DoDragDrop() should abort when IDropSource::QueryContinueDrag fails
38596 Photo Ninja 1.2.5 (32 bit) crashes on startup
38981 Super Mario Bros X v1.3.x crashes when starting game with sound enabled
39804 Algodoo v2.1.0 crashes on startup
42942 Disgen 2016: Fatal error when adding a person to the database (Sqlite).
43189 Christmas Magic crashes on start without native d3drm
44734 D3D accelerates can't be enabled in Plants Vs Zomies ,When this is selected,It says hardware not supported.
46981 winetricks -q --verify dotnet461 crashes under win64
47275 winecfg fails to connect to mountmgr on 64-bit
47350 Winecfg crashes on exit (macOS wine built without mingw)
47364 COM ports do not work
47565 winetricks vcrun* verbs fail with Wine 4.12(+), when using a 32-bit WINEPREFIX
47649 Wavelab 6 Installs but cannot launch (Mingw generates misplaced stack pointer in DECLSPEC_HOTPATCH stubs for 32-bit)
47817 Gameforge Client: Cannot launch TERA
47856 Logos Bible Software (.Net 4.7.2 app) crashes in win8/10 (probably RtlQueryUnbiasedInterruptTime insufficiency)
47959 WINE fails to configure on CYGWIN
47993 Epic Games Launcher crashes at the installation
48059 IMVU Social Network Client hangs
48088 Wrong color mapping with client-side graphics on 256-color X server
48160 cl.exe (visual studio 2017) fails to compile c++ due to error C2177: constant too big
48183 Running most applications causes a crash in krnl386.exe DllMain() when the Windows version is set to non-NT
48239 MTGA Launcher fails to download the game (regression)
48261 Batman: Arkham Knight hangs when trying to close upgrade screen
48273 Relay debugging is broken in a --without-mingw build
48288 kernelbase: Japanese character wrongly reported as invalid.
48300 timezone info not found for 'CET' spam on prefix creation
48304 Mail.ru Game Center incorrectly determines the version of Windows that is being used, therefore it does not start, because it requires at least Windows 7.
48314 Building wine on CentOS7 fails due to lack of libkrb5
----------------------------------------------------------------
Changes since 5.0-rc1:
Akihiro Sagawa (2):
kernel32/tests: Refactor MB_ERR_INVALID_CHARS tests.
kernelbase: Use translated Unicode default char to check invalid chars.
Alexandre Julliard (21):
libport: Fix the Cygwin build.
kernel32: Duplicate OutputDebugStringA implementation.
api-ms-win-core-localization: Add spec entry for FindNLSString().
ntdll: Fix RtlQueryUnbiasedInterruptTime() prototype.
ntdll: Fix loading the main binary as PE file with an explicit dll override.
msvcrt/tests: Add some tests for wcstoi64().
msvcrt: Fix wcstoul() to behave identically to strtoul().
include: Allow using debug.h in tests.
advapi32/tests: Use debug.h functions.
d3dx9_36/tests: Fix some constant conversion warnings.
oledb32/tests: Fix a constant conversion warning.
winmm/tests: Fix a constant conversion warning.
msvcp120/tests: Don't use const pointers to avoid compiler warnings.
ntdll: Silence the timezone fixme when the registry is empty.
tools: Upgrade the autoconf scripts.
winebuild: Add a --builtin option to mark PE files as builtins.
winegcc: Use winebuild to set the builtin flag.
makefiles: Add the builtin flag again after stripping.
configure: Disable gssapi also when linking with kerberos doesn't work.
winex11: Use the default color table for window surfaces on 8bpp displays.
winecrt0: Preserve last error when loading debug functions.
Alistair Leslie-Hughes (3):
dmloader: Release objects on error paths (Coverity).
oledb32/tests: Add PromptNew interactive test.
dmime: IDirectMusicAudioPath Release primary buffer.
André Hentschel (3):
kernel32: Fix some spec file entries.
mapi32: Fix some spec file entries.
rpcrt4: Fix RpcNetworkIsProtseqValid[AW] spec file entries.
Charles Davis (4):
kernel32: Forward OpenThreadToken() to kernelbase.
kernel32: Forward OpenProcessToken() to kernelbase.
winemac.drv: Pass the CAMetalLayer to MoltenVK.
winemac.drv: Support VK_EXT_metal_surface.
Damjan Jovanovic (2):
ws2_32: Remove an unneeded todo_wine.
wineserver: Avoid spurious FD_WRITE on repeated calls to WSAEventSelect().
Erich Hoover (2):
msvcrt: Implement strtod without using 'long double'.
msvcrt: Implement wcstod without using 'long double'.
Jacek Caban (6):
jscript/tests: Allow GetTypeInfo calls.
rpcrt4: Fix implicit in attribute handling in write_param_fs.
rpcrt4: Support VT_BSTR in get_param_pointer_info.
wininet: Add missing schemes to url_schemes.
wininet: Don't set default gopher protocol in InternetCrackUrlW.
configure: Allow setting CROSSLDFLAGS by configure.
Louis Lenders (1):
kernel32: Update version to win7.
Michael Stefaniuc (6):
dmband/tests: Use wide-char string literals.
dmime/tests: Use wide-char string literals.
dmstyle/tests: Use wide-char string literals.
dswave/tests: Use wide-char string literals.
dmime: Use a rbtree to store the PChannels of a performance.
dmime/tests: Add PChannel tests.
Nikolay Sivov (13):
ole32/tests: Add tests for system moniker identification queries.
ole32/tests: Add some tests for item moniker equality.
ole32/tests: Test inverse moniker type.
ole32/tests: Add some tests for combined antimonikers.
ole32/tests: Remove trace noise from moniker tests.
ole32/tests: Add equality tests for antimonikers.
ole32/tests: Add some more tests for item moniker hashing.
ole32/tests: Add PropVariantCopy() test for BSTR with embedded null.
include: Add I1 vector definitions for PROPVARIANT.
ole32/tests: Add some tests for Reduce().
dwrite/tests: Improve coverage of IsSymbolFont() tests.
ole32/tests: Add a trivial test for IMoniker::Enum().
po: Update some Russian strings.
Zebediah Figura (6):
ntdll: Return -1 from Unix code page conversion functions if an error was encountered.
winegstreamer: Clear the "reader" and "allocator" fields if connection fails.
qedit/samplegrabber: Clean up the pins in sample_grabber_destroy().
qedit/samplegrabber: Consistently use the "pMemInputPin" member of struct strmbase_source.
qedit/samplegrabber: Fix a typo in format type negotiation.
rpcrt4: Fix ITypeInfo ref count handling.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 5.0-rc1 is now available.
This is the first release candidate for the upcoming Wine 5.0. It
marks the beginning of the yearly code freeze period. Please give this
release a good testing to help us make 5.0 as good as possible.
What's new in this release (see below for details):
- Gecko update, with support for running from a global location.
- Unicode data updated to Unicode version 12.1.
- Initial version of the MSADO (ActiveX Data Objects) library.
- Update installation support in the WUSA (Windows Update Standalone) tool.
- More progress on the kernel32/kernelbase restructuring.
- Support for signing with ECDSA keys.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/5.0/wine-5.0-rc1.tar.xzhttp://mirrors.ibiblio.org/wine/source/5.0/wine-5.0-rc1.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-rc1 (total 37):
12406 Microsoft Document Explorer 2008 crashes when using MS Help 2 URL from command line (ieframe's WebBrowser COM object doesn't support aggregation)
13020 wintetris 1.01 background color wrong sometimes
21249 Midtown Madness 2 (v1.1NoCD): memMemoryAllocator::FindHeap failed on ptr 2056d18
26757 Multiple Microsoft installers need implementation of Windows Update Standalone Installer 'Wusa.exe' to support '.msu' packages (.NET Framework 4.5.x/4.6.x/Win Vista+, IE8/Win Vista+, IE10/Win7 mode)
37793 FIFA Online 3 launcher crashes on startup ('SEC_RESERVE' attribute has no effect for file mapping objects that are backed by physical files)
38817 FXCM Trading Station II installer reports 'OLE error 80004001' when running as 'Windows Vista' or higher ('ITaskbarList3::ThumbBarSetImageList' is a stub)
38830 Symenu 4.11 (.NET 2.0 app) crashes on startup with Wine-Mono
39643 DM Genie 2.x (VB6 app) fails on startup with 'Automation error. ... Check the Scripting function Skill Bonus'
39692 64-bit dlls/msdaps/row_server_p.c generates build warnings (discarded "const" qualifier)
40489 wbemprox does not support ASSOCIATORS query
41639 Wine with freetype 2.7 causes font rendering issues
42046 VSDC Video Editor. Crashes in ole32 when opening.
42051 Costume Quest 2 crashes when using DX11 renderer
43447 Geometry Wars 3 doesn't spawn a window
43644 Disk free space incorrect on file systems with more than 2TB free
43817 Multiple .NET applications (Chime, DxO Photolab 2 trial) crash, need RegisterApplicationRecoveryCallback to return S_OK
44456 Multiple Windows 7+ games and applications crash due missing 'kernel32.dll' -> 'kernelbase.dll' load-time dependency (64-bit Football Manager 2017, IP Camera Viewer 4.x)
44842 Listview returns item data fields when called for unset subitems
44883 warframe crashes with builtin xaudio2, needs IXAudio2::CommitChanges
46196 Beat Hazard 2: Crashing if no GeoID is set, missing country code and flag.
46262 Beat Hazard 2: Small window size after minimizing
46535 Exception FindFirstFileExW_rep in ntdll, by Mod Organizer (Skyrim)
46842 C# 'double.TryParse( String.Empty, out number)' incorrectly succeeds with .NET Framework 4.0 and WinVer set to 'Windows 7'
47126 GCC 9.x compilation warnings for Wine 4.7
47459 ListBox LB_SETSEL doesn't scroll to newly selected item
47960 chcp.com does not exist
48077 UPlay fails to start : "Error at hooking API NtProtectVirtualMemory" (UPlay's hooking engine can't handle ENDBR32 instruction inserted at non-hotpatch API entries due to distro build environments '-fcf-protection')
48082 Visual C++ Express 2005 needs shell32.PathResolveW implementation (or fake success)
48153 Mono's ProcessTest.Start1_FileName_Whitespace test fails
48185 Applications crashing with "Not enough memory to run application"
48211 Regression: midl.exe fails to execute MIDL engine
48234 Multiple ODBC applications using Bulk Copy Program (BCP) API need 'odbcbcp.dll' (Odin Diet)
48240 Build error in cabinet/bcrypt gnutls.c in current git
48242 IXMLDOMDocument_load() paths aren't URL-unescaped (Microsoft Document Explorer 2008 startup error)
48245 wbemlocator parse_resource contains non-null terminated string, causing garbage output in trace logs
48271 Qt5 dropdown menu and combobox does not show on click
48277 dotnet30sp1 fails to install
----------------------------------------------------------------
Changes since 4.21:
Akihiro Sagawa (6):
d3d9/tests: Add out-of-bounds region tests.
d3d8/tests: Add out-of-bounds region tests.
wined3d: Validate dirty regions in wined3d_texture_add_dirty_region().
wined3d: Record dirty regions for d3d9 textures.
wined3d: Update a part of the texture if dirty regions are tracked.
d3d8: Support texture dirty regions.
Alex Henrie (1):
shell32: Symlink the Downloads and Templates folders too.
Alexandre Julliard (62):
kernelbase: Fix assumptions about 0-size output buffer in ntdll Unicode conversion functions.
kernel32: Fix assumptions about 0-size output buffer in ntdll Unicode conversion functions.
ntdll: Implement custom codepage conversion functions.
ntdll: Avoid memory allocations in RtlUpcaseUnicodeString functions.
ntdll: Reimplement multibyte to Unicode conversion functions using the Win32-format tables.
ntdll: Reimplement Unicode to multibyte conversion functions using the Win32-format tables.
ntdll: Reimplement Unicode case mapping functions using the Win32-format tables.
ntdll: Get rid of __wine_init_codepages().
kernelbase: Verify that the file can be opened when looking for an executable.
jscript: Always check for errors in UTF8 conversions.
ntdll: Reimplement RtlUnicodeToUTF8N.
ntdll: Implement RtlUTF8ToUnicodeN.
ntdll: Use the Rtl UTF8 conversion functions.
kernel32: Use the Rtl UTF8 conversion functions.
kernel32: Initialize argv from the dll entry point.
kernel32: Move some initialization code to ntdll.
user32: Forward string calls to kernelbase.
server: Determine the server directory in the server itself.
server: Determine the prefix directory in the server itself.
server: No longer depend on libwine.
ntdll: Fix DBCS mappings in RtlCustomCPToUnicodeN().
ntdll: Fix contents of the glyph table in generated codepage data.
kernelbase: Reimplement MultiByteToWideChar() using Win32-format codepage tables.
kernelbase: Reimplement WideCharToMultiByte using Win32-format codepage tables.
winecrt0: Create the Ansi argv from the Unicode one.
msvcrt: Create the Ansi argv from the Unicode one.
kernel32: Remove initialization of the global argv.
kernel32: Use MultiByteToWideChar() and WideCharToMultiByte() from kernelbase.
kernel32: Move Get/SetLocaleInfoW() to kernelbase.
configure: Disable gcc control flow protection.
configure: Disable gcc stack protection.
configure: Get rid of the gcc strength-reduce bug check.
kernel32: Move GetStringType functions to kernelbase.
kernelbase: Directly use the wctype table for the IsChar* functions.
kernel32: Move LCMapString functions to kernelbase.
kernel32: Move the CompareString functions to kernelbase.
kernel32: Move GeoID functions to kernelbase.
kernel32: Remove __wine_kernel_init().
kernelbase: Add an OpenConsoleW() replacement wrapper.
kernelbase: Add IsBadStringPtr() replacement functions.
kernel32: Move timezone functions to kernelbase.
server: Add status code for ELOOP error.
ntdll: Add status code for ELOOP error.
kernel32: Move FindFirst/NextFile functions to kernelbase.
kernelbase: Avoid calling some kernel32 functions.
kernelbase: Redirect heap allocation functions to ntdll.
kernel32: Remove heap function replacements.
kernelbase: Use exception handlers instead of IsBad* functions.
kernelbase: Avoid using OpenFile().
makefiles: Install only exe files in the bin directory.
kernelbase: Save registry keys directly to the destination file.
server: Support passing a handle to get_console_wait_event.
kernelbase: Use a direct server call instead of GetConsoleInputWaitHandle().
kernelbase: Move some console support back to kernel32.
include: Move timezone definitions to timezoneapi.h.
kernelbase: Reimplement EnumDynamicTimeZoneInformation() using GetTimeZoneInformationForYear().
kernelbase: Implement DnsHostnameToComputerNameExW().
kernelbase: Implement the Get/SetComputerName functions.
kernel32: Use the Get/SetComputerName functions from kernelbase.
kernel32: Disable relay trace for __wine_start_process().
kernelbase: Remove support for LZ files in 32-bit version functions.
kernelbase: No longer import kernel32.
Alistair Leslie-Hughes (9):
odbccp32: Implement SQLConfigDataSource/W.
wineqtdecoder: Fix some copy-paste errors.
loader: Install msado15.dll into the correct location.
msado15: Support all interfaces in _Recordset QueryInterface.
msado15: Implement _Connection_get_State.
msado15: Implement _Connection_get_CommandTimeout and _Connection_put_CommandTimeout.
oledb32: Implement IDataSourceLocator PromptNew.
msado15: Add ISupportErrorInfo support to _Connection.
msado15: Add _Command stub interface.
Anastasios Simeonidis (3):
ntdll: Move relationship filtering to create_logical_proc_info.
ntdll: Implement relationship filtering for create_logical_proc_info on linux.
ntdll/tests: Add relationship tests for NtQuerySystemInformationEx.
Andrey Gusev (14):
dxgi/tests: Fix a typo in ok() message.
uianimation: Remove duplicate WINAPI.
mapi32: Reorder the WINAPI with the HRESULT.
kernel32/tests: Reorder the WINAPI with the void.
sapiaut.idl: Fix a typo.
ieframe/tests: Fix a typo in ok() message.
kernelbase/tests: Fix a typo in ok() message.
ieframe/tests: Fix a typo in ok() message.
mshtml/tests: Fix a typo in ok() message.
mshtml/tests: Fix a typo in ok() message.
po: Update Ukrainian translation.
ieframe/tests: Fix a typo in ok() message.
ntoskrnl.exe/tests: Fix typos in ok() messages.
ole32: Fix typos in comments.
Aurimas Fišeras (2):
po: Update Lithuanian translation.
po: Update Lithuanian translation.
Austin English (1):
httpapi: Return ERROR_SUCCESS for unimplemented flags in HttpInitialize.
Bernat Arlandis (1):
dinput: Log effect directions, and use effective flags.
Biswapriyo Nath (1):
include: Update d3d9caps.h header file.
Charles Davis (4):
winemac.drv: Also stop dragging if we receive a mouse up event.
iphlpapi: Set the SpecificPortBind bit if the caller wants it on BSD.
iphlpapi: Correct Forwarding value from GetIpStatistics(Ex)() on *BSD.
iphlpapi: Implement some more IpStatistics on BSD.
Damjan Jovanovic (4):
msxml3: All string passed to IXMLDOMDocument_load() need to be URL-unescaped.
ieframe: Implement COM aggregation in WebBrowser.
gdiplus: Start implementing CompositingModeSourceCopy.
gdiplus: GdipGraphicsClear() should overwrite pixels, not alpha blend.
Derek Lesho (7):
winex11: Set the scan code prefix when necessary.
winemac: Set the scan code prefix when necessary.
wineandroid: Set the scan code prefix when necessary.
users/tests: Test scan code prefix for MAPVK_VK_TO_VSC_EX.
bcrypt: Add support for signing hashes with ECDSA keys.
bcrypt: Add more BCryptSignHash tests.
bcrypt: Add fallback when gnutls_decode_rs_value isn't present.
Erich Hoover (3):
chcp: Add a stub application for changing the codepage.
chcp: Return the active code page when called without arguments.
chcp: Set the global codepage when called with an argument.
Ethan Lee (1):
wined3d: Add Intel HD 615 PCI id and device description.
François Gouget (51):
vbscript/tests: Fix the name of a vbscript variable in the run test.
user32/tests: Avoid an unneeded (&commented out) strlen() call.
user32/tests: Avoid an unneeded lstrlenA() call.
user32/tests: Avoid a couple of unneeded strlen() calls.
user32: Fix the spelling of a TRACE() message.
comctl32/tests: Avoid an unneeded strlen() call.
comctl32/tests: Avoid a couple of unneeded lstrlenA() calls.
cmd: Fix the spelling of a WINE_TRACE() message and a comment.
wmvcore: Fix the spelling of WMReaderAdvanced6_SetProtectStreamSamples().
shlwapi/tests: Fix the spelling of a couple of ok() messages.
kernel32/tests: Trace LastError when GetPhysicallyInstalledSystemMemory() fails.
winhttp/tests: Fix the spelling of ok() and skip() messages and a comment.
oleaut32: Fix the spelling of a FIXME() message.
user32/tests: Fix the spelling of an ok() message.
winedbg: Avoid unneeded strlen() calls.
cmd: Avoid unneeded strlenW() calls.
msado15: Fix the name of the GetString() delimiter parameters.
jscript: Fix the spelling of a couple of comments.
riched32/tests: Avoid an unneeded strlen() call.
msvcrt/tests: Avoid an unneeded strlen() call.
qcap/tests: Avoid an unneeded lstrlenW() call.
kernelbase/tests: Avoid an uneeded lstrlenW() call.
winedbg: Fix the spelling of various messages and the README.
ws2_32/tests: Fix the spelling of a couple of ok() messages.
winecfg: Avoid an unneeded strlen() call.
dmloader: Fix the spelling of a TRACE() message and a comment.
msxml3/tests: Avoid an unneeded lstrlenW() call.
winex11.drv: Fix the spelling of a WARN() message.
dmime/tests: Fix the spelling of a performance ok() message.
winemac.drv: Fix the spelling of a couple of comments.
vbscript/tests: Fix the spelling of a vbscript comment.
d3dx9_36: Fix the spelling of a comment.
shell32: Fix the spelling of a variable name.
urlmon/tests: Fix the spelling of a variable name.
usp10: Fix the spelling of some index array variables and function.
wined3d: Fix the spelling of some comments.
include: Fix the spelling of some comments.
wineps.drv: Avoid unneeded abbreviations in comments.
ole32: Fix the spelling of a couple of comments.
usp10: Fix the spelling of some comments.
wininet: Fix the spelling of a comment.
ntdll: Fix the spelling of some comments.
oleaut32: Fix the spelling of some comments.
msxml3: Fix the spelling of some comments.
shlwapi: Fix the spelling of a couple of comments.
winevulkan: Fix the spelling of a make_vulkan comment.
winevulkan: Fix the spelling of an ERR() message.
urlmon/tests: Fix the spelling of a comment.
user32: Fix the spelling of a comment.
shell32: Tweak / fix the MS-DOS name in a comment.
quartz: Fix the name of a type in a comment.
Gabriel Ivăncescu (48):
vbscript: Move the global lists to the script dispatch object.
vbscript: Reference count the vbscode_t.
vbscript: Copy the variable names into the script dispatch's heap.
vbscript: Store the necessary function and variable info in the script TypeInfo.
vbscript: Implement ScriptTypeInfo_GetTypeAttr.
vbscript: Implement ScriptTypeInfo_GetFuncDesc.
vbscript: Implement ScriptTypeInfo_GetVarDesc.
vbscript: Implement ScriptTypeInfo_GetIDsOfNames.
vbscript: Implement ScriptTypeInfo_GetTypeComp.
vbscript/tests: Add initial tests for the script TypeInfo.
vbscript: Don't free procs allocated in the heap pool.
vbscript: Implement ScriptTypeComp_Bind.
vbscript: Implement ScriptTypeComp_BindType.
vbscript/tests: Add tests for the script TypeInfo's TypeComp binds.
vbscript: Remove unused field.
jscript: Add script TypeInfo stub.
vbscript: Implement ScriptTypeInfo_GetNames.
vbscript: Implement ScriptTypeInfo_GetRefTypeOfImplType.
vbscript: Implement ScriptTypeInfo_GetRefTypeInfo.
vbscript: Implement ScriptTypeInfo_GetImplTypeFlags.
vbscript: Implement ScriptTypeInfo_Invoke.
vbscript: Implement ScriptTypeInfo_GetDocumentation.
vbscript: Implement ScriptTypeInfo_GetDllEntry.
vbscript: Implement ScriptTypeInfo_AddressOfMember.
vbscript: Implement ScriptTypeInfo_CreateInstance.
vbscript: Implement ScriptTypeInfo_GetMops.
vbscript/tests: Add more tests for the script TypeInfo.
jscript: Keep a pointer to the bytecode in function_code_t.
jscript: Store the necessary function and variable info in the TypeInfo.
jscript: Implement ScriptTypeInfo_GetTypeAttr.
jscript: Implement ScriptTypeInfo_GetFuncDesc.
jscript: Implement ScriptTypeInfo_GetVarDesc.
jscript: Implement ScriptTypeInfo_GetIDsOfNames.
jscript: Implement ScriptTypeInfo_GetTypeComp.
jscript: Implement ScriptTypeComp_Bind.
jscript: Implement ScriptTypeComp_BindType.
jscript/tests: Add initial tests for the script TypeInfo.
jscript: Implement ScriptTypeInfo_GetNames.
jscript: Implement ScriptTypeInfo_GetRefTypeOfImplType.
jscript: Implement ScriptTypeInfo_GetRefTypeInfo.
jscript: Implement ScriptTypeInfo_GetImplTypeFlags.
jscript: Implement ScriptTypeInfo_Invoke.
jscript: Implement ScriptTypeInfo_GetDocumentation.
jscript: Implement ScriptTypeInfo_GetDllEntry.
jscript: Implement ScriptTypeInfo_AddressOfMember.
jscript: Implement ScriptTypeInfo_CreateInstance.
jscript: Implement ScriptTypeInfo_GetMops.
jscript/tests: Add more tests for the script TypeInfo.
Gijs Vermeulen (5):
msvcrt: Optimize _strlwr implementation in C locale.
secur32: Avoid compiler warning.
winemac: Avoid some compiler warnings.
shell32: Implement PathResolve.
shell32/tests: Add PathResolve tests.
Hans Leidekker (40):
wusa: Add support for extracting MSU files.
wusa: Parse assembly manifests.
wusa: Parse update descriptions.
wusa: Install updates.
msado15: Add typelib.
msado15: Add a stub _Connection implementation.
msado15: Add a stub _Recordset implementation.
msado15: Add a stub _Stream implementation.
msado15: Implement _Stream_put_Type and _Stream_get_Type.
bcrypt: Handle SHA1 hash in key_asymmetric_verify.
msado15: Implement _Stream_Open and _Stream_Close.
msado15: Implement _Stream_get_State.
msado15: Implement _Stream_Read and _Stream_Write.
msado15: Implement _Stream_get_Position and _Stream_put_Position.
msado15: Implement _Stream_get_Size.
wbemprox: Use a terminated string in parse_resource.
msado15: Implement _Stream_get_EOS.
msado15: Implement _Stream_get_LineSeparator and _Stream_put_LineSeparator.
msado15: Implement _Stream_get_Mode and _Stream_put_Mode.
msado15: Implement _Stream_get_Charset and _Stream_put_Charset.
msado15: Implement _Stream_ReadText and _Stream_WriteText.
winhttp/tests: Show that WINHTTP_OPTION_SECURE_PROTOCOLS can't be set on connection handles.
msado15: Implement _Stream_SetEOS.
msado15: Implement _Recordset_get_Fields.
msado15: Implement Fields__Append and Fields_Append.
msado15: Implement Fields_get_Count.
msado15: Implement Field_put_Type, Field_put_DefinedSize and Field_put_Attributes.
msado15: Implement Field_get_Name and Field_get_Type.
msado15: Implement Fields_get_Item.
msado15: Implement Field_get_Attributes and Field_get_DefinedSize.
msado15: Implement Field_get_Value and Field_put_Value.
msado15: Implement _Recordset_Open and _Recordset_Close.
msado15: Implement _Recordset_AddNew.
msado15: Implement _Recordset_get_State.
msado15: Implement _Recordset_get_BOF and _Recordset_get_EOF.
msado15: Implement _Recordset_get_RecordCount.
msado15: Implement _Recordset_MoveNext and _Recordset_MovePrevious.
msado15: Implement _Recordset_MoveFirst and _Recordset_MoveLast.
msado15: Add ISupportErrorInfo support to Field, Fields and _Recordset.
msado15: Prevent multiple Open/Close of a _Recordset.
Hari Saksena (1):
kernelbase: Fix ullAvailPageFile showing wrong memory info.
Henri Verbeet (13):
wined3d: Finish the CS before removing the context in adapter_vk_uninit_3d().
wined3d: Do not set depth/stencil sizes on colour formats.
wined3d: Store texture sub-resource buffer objects as uintptr_t.
wined3d: Destroy PBOs in wined3d_texture_gl_destroy_object().
wined3d: Do not download textures to WINED3D_LOCATION_BUFFER in wined3d_texture_gl_unload().
wined3d: Unload buffer resources through buffer ops.
wined3d: Unload texture resources through texture ops.
wined3d: Unload resources in wined3d_device_uninit_3d().
wined3d: Pass a pointer to the counter buffer to wined3d_view_gl_destroy().
wined3d: Destroy GPU resources from the CS thread in adapter_vk_uninit_3d().
wined3d: Avoid accessing gl_info in wined3d_buffer_init().
wined3d: Introduce WINED3D_BIND_INDIRECT_BUFFER.
wined3d: Store Vulkan physical device memory properties in the wined3d_adapter_vk structure.
Jacek Caban (9):
jscript: Import to_int32 implementation from WebKit.
oleaut32: Fix sharing options in TLB_ReadTypeLib.
makedep: Build implib cross object files with -fno-builtin.
msvcrt: Provide exp2 in importlib.
mshtml: Refactor Gecko loading code.
mshtml: Support loading Gecko from global location.
winnt.h: Add missing NTSYSAPI attributes.
mshtml: Update to Wine Gecko 2.47.1.
configure: Silence -Wincompatible-library-redeclaration warning.
Jactry Zeng (5):
sapi: Implement ISpeechVoice stub.
sapi: Implement ISpVoice stub.
sapi: Add IConnectionPointContainer stub for ISpVoice.
sapi: Implement ISpeechFileStream stub.
sapi: Implement ISpStream stub.
Jeff Smith (5):
ucrtbase: Improve strftime special test cases for %c %r formats.
msvcrt: Factor out code for creating lc_time_data structure.
msvcrt: Create global C locale __lc_time_data struct.
ucrtbase: Correct behavior of strftime formats %c %r.
kernel32/tests: Allow for differing fpu_cw returned on Windows XP.
João Diogo Ferreira (3):
kernel32: Properly handle GEO_NATION and GEO_ID in GetGeoInfoW().
kernel32: Make GetUserGeoID() always succeed if geoclass is valid.
kernelbase: Update GeoID when locale has changed.
Julian Rüger (1):
po: Update German translation.
Ken Thomases (4):
winemac: Only manipulate an NSOpenGLContext's view on the main thread.
dbghelp: Fix reading the address of the target's dyld image info from its PEB.
dbghelp: Fix reading the target's dyld image info, based on its CPU architecture.
configure: Remove no-longer-needed check for mach-o/dyld_images.h header file.
Louis Lenders (4):
odbcbcp: Add new stub dll.
wine.inf: Install powershell.exe in WindowsPowerShell/v1.0/.
kernel32: Return S_OK in RegisterApplicationRecoveryCallback stub.
wine.inf: Add powershell location to the path.
Mathew Hodson (3):
riched20/tests: Fix function names in two ok() messages.
kernel32/tests: Trace the mapped string when FoldStringW fails.
kernel32/tests: Add broken result for Windows XP and 2003.
Matteo Bruni (1):
d3dcompiler/tests: Fix parameter desc test on d3d10.
Michael Müller (1):
ole32: Fix property name handling for dictionary entries in CP_UNICODE case.
Michael Stefaniuc (35):
dmime: Remove the 'enabled' field from the Tempo track.
dmime: Implement the Lyrics track param methods.
dmime: Implement the ParamControl track param methods.
dmime: Implement the SegTrigger track Get/SetParam.
dmime: Partial implementation of the Marker track Get/SetParam.
dmime: Partial implementation of the Wave track Get/SetParam.
dmime: Partial implementation of the TimeSig track Get/SetParam.
dmime: Partial implementation of the Tempo track SetParam().
dmime: Tempo track supports only GUID_TempoParam in GetParam().
dmime/tests: Add GetParam/SetParam tests for unsupported types.
dmime/tests: Add more GetTrack() tests.
dmime: Fix index handling in segment GetParam().
dmime/tests: Add segment GetParam/SetParam tests.
dmband: Add partial implementation of Band track GetParam/SetParam.
dmloader: Remove commented out dead code.
dmband: Get rid of the redundant debugstr_DMUS_OBJECTDESC().
msado15: Print the debug strings and not the pointers to them.
mountmgr.sys: Use the ARRAY_SIZE() macro.
winetest: Remove superfluous cast to self.
dmband: Move debugstr_fourcc() to dmobject.h.
dmband: Move debugstr_dmguid() to dmobject.c.
dmband: Use only the 'dmfile' debug channel in dmutils.c.
dmband: Simplify dump_DMUS_OBJECTDESC() and move it to dmobject.c.
dmloader: Just use dump_DMUS_OBJECTDESC().
dmloader: Get rid of the 'dmdump' debug channel.
dmloader: Use the debug functions provided by dmobject.[ch].
dmime: Use the debug functions provided by dmobject.[ch].
dmcompos: Use the debug functions provided by dmobject.[ch].
dmscript: Use the debug functions provided by dmobject.[ch].
dmstyle: Use the debug functions provided by dmobject.[ch].
dmusic: Use the debug functions provided by dmobject.[ch].
dswave: Use the debug functions provided by dmobject.[ch].
dmloader: Get rid of single use debugstr_dmreturn().
dmloader: Simplify tracing of the DMUS_CONTAINER_NOLOADS flag.
dmloader: Simplify tracing of DMUS_CONTAINED_OBJF_KEEP flag.
Nikolay Sivov (46):
dwrite: Update to IDWriteFontFace5.
dwrite/tests: Add some tests for IDWriteFontResource.
dwrite: Update to IDWriteFactory7 stub.
ntdll: Use better type for thread description info structure.
ntdll: Add support for querying thread suspend count.
mfplat: Use underlying stream access mode for bytestream capabilities.
mfplat: Set origin name attribute for stream based bytestreams too.
comctl32/tests: Merge header items test with existing function.
comctl32/listview: Fix LVM_GETITEM for out-of-range iSubItem case.
dwrite: Add partial implementation for IDWriteFontResource.
dwrite: Respond to IDWriteFontFace5 queries.
dwrite: Use IDWriteFactory7 internall for fontfaces.
dwrite: Implement GetFontResource() for fontface.
dwrite: Add newer CreateFontFaceReference() variant.
dwrite: Use IDWriteFactory7 for fontface reference object.
dwrite: Use IDWriteFactory7 for collections internally.
dwrite: Use IDWriteFactory7 for layout internally.
dwrite: Use IDWriteFactory7 for gdiinterop.
dwrite: Use IDWriteFactory7 for analyzer.
dwrite: Remove unnecessary casts.
dwrite/tests: Add some tests for reference objects.
oleaut32/typelib: Add a helper to update custom data lists on reallocation.
oleaut32/typelib: Implement DeleteImplType().
ntdll/tests: Enable some more string API tests.
oleaut32/typelib: No need to query self for supported interface.
dwrite: Compare axis values when testing for face reference equality.
dwrite: Implement returning axis values from face reference.
Update to Unicode 12.1.
comctl32/listview: Use wcsnicmp() instead of a local helper.
oleaut32/typelib: Get rid of redundant argument in typeinfo lookup helper.
oleaut32/typelib: Simplify variable and function description lookup helpers.
oleaut32/tests: Use TYPEKIND values.
oleaut32/tests: Add some more tests for GetRefTypeInfo() in case of dual interface.
user32/listbox: Scroll to specified caret index.
user32/listbox: Update caret index on LB_SETSEL.
comctl32/listbox: Scroll to specified caret index.
comctl32/listbox: Update caret index on LB_SETSEL.
ole32: Get rid of some casts in DWORD serialization helper.
ole32: Get rid of casts in WORD serialization helper.
ole32: Get rid of casts in GUID serialization helper.
ole32: Get rid of casts in 64-bit int serialization helper.
ole32/tests: Fix return value trace.
ole32: Use more appropriate type for codepage arguments.
ole32: Properly handle NULL delimiter for item monikers.
ole32: Improve maximum storage size returned for generic composite monikers.
ole32: Handle optional WCHAR data when loading item moniker.
Patrick Hibbs (1):
wtsapi32: Make WTSRegisterSessionNotificationEx's return consistent with WTSRegisterSessionNotification.
Paul Gofman (9):
ddraw/tests: Skip test_colorkey_precision() test on WARP.
wined3d: Support stretching compressed format surfaces in surface_cpu_blt().
ddraw/tests: Add test for stretching compressed format surfaces.
ntdll: Add DECLSPEC_HOTPATCH to NtProtectVirtualMemory().
include: Add STARTUPINFOEX structure definition.
kernel32/tests: Add a basic test for PROC_THREAD_ATTRIBUTE_PARENT_PROCESS process creation attribute.
kernelbase: Support PROC_THREAD_ATTRIBUTE_PARENT_PROCESS in CreateProcessInternalW().
server: Support creating processes with specified parent.
kernel32/tests: Test invalid parent handle in test_parent_process_attribute().
Piotr Caban (8):
msvcrt: Don't depend on how __lc_time_data was allocated in _Getdays.
msvcrt: Don't depend on how __lc_time_data was allocated in _W_Getdays.
msvcrt: Don't depend on how __lc_time_data was allocated in _Getmonths.
msvcrt: Don't depend on how __lc_time_data was allocated in _W_Getmonths.
msvcrt: Don't depend on how __lc_time_data was allocated in _Gettnames.
msvcrt: Mark __lc_time_data strings const.
kernel32: Set all %eax bits on Wow64EnableWow64FsRedirection return.
msvcrt: Support mixing length and width in scanf format.
Rémi Bernon (1):
widl: Cast freed pointers to void* to fix discarded-array-qualifiers warning.
Vijay Kiran Kamuju (1):
include: Add missing defines for tokens in winnt.h.
Vincent Povirk (1):
mscoree: Ignore empty privatePath.
Zebediah Figura (56):
strmbase: Don't hold the filter lock while calling IPin::NewSegment().
strmbase/transform: Hold the streaming lock for the entirety of Receive().
winegstreamer/gsttffilter: Don't drop the streaming lock in Gstreamer_transform_ProcessEnd().
d3d9: Use wined3d_stateblock_get_state() in d3d9_device_GetRenderState().
d3d8: Use wined3d_stateblock_get_state() in d3d8_device_GetRenderState().
ddraw: Retrieve render state from the primary stateblock.
wined3d: Move the wined3d_light_state structure to the wined3d_stateblock structure.
wined3d: Introduce wined3d_stateblock_get_state().
wined3d: Store the blend factor in the stateblock as a render state.
strmbase: Use a separate critical section for the SourceSeeking structure.
winegstreamer: Don't hold the filter lock from the pad-added or pad-removed callbacks.
winegstreamer: Also wait for the no-more-pads signal when pausing the filter.
winegstreamer: Use strmbase state change methods.
winegstreamer: Fix the timeout passed to gst_element_get_state().
wineqtdecoder: Use strmbase filter state change methods.
wineqtdecoder: Don't expose IMediaSeeking from the sink pin.
wineqtdecoder: Don't expose IMediaSeeking from the filter.
qedit/samplegrabber: Use BaseFilterImpl_JoinFilterGraph().
qcap/avico: Use strmbase filter state change methods.
qcap/avimux: Use strmbase filter state change methods.
qcap: Rework v4l2 state change logic.
strmbase: Get rid of the "vtbl" parameter to strmbase_filter_init().
strmbase: Correctly implement IVideoWindow::NotifyOwnerMessage().
quartz/vmr9: Create the rendering window when the filter is created.
quartz/tests: Port IVideoWindow tests to the VMR.
strmbase: Create the video window with the correct styles.
wined3d: Introduce wined3d_stateblock_multiply_transform().
ddraw: Update the primary stateblock in d3d_device7_MultiplyTransform().
d3d9: Update the primary stateblock in d3d9_device_MultiplyTransform().
d3d8: Update the primary stateblock in d3d8_device_MultiplyTransform().
wineqtdecoder: Move the SourceSeeking structure to the source pin.
winegstreamer: Use BasePinImpl_QueryInterface().
wineqtdecoder: Use BasePinImpl_QueryInterface().
qcap/avimux: Use BasePinImpl_QueryInterface().
qcap/avimux: Use BaseOutputPinImpl_Disconnect().
qcap/avimux: Use BaseOutputPinImpl_Connect().
strmbase: Get rid of the "vtbl" argument to strmbase_source_init().
strmbase: Combine the SetMediaType() and CompleteConnect() callbacks.
strmbase: Pass an AM_MEDIA_TYPE pointer to CompleteConnect().
strmbase: Add callbacks for sink (dis)connection.
strmbase/transform: Use base sink connection methods.
strmbase/renderer: Use base sink connection methods.
strmbase: Check for a NULL media type in IPin::ReceiveConnection().
qcap/avimux: Use strmbase sink connection methods.
winegstreamer: Store the sink as a strmbase_sink structure.
winegstreamer: Use base sink connection methods.
qcap/avico: Use base sink connection methods.
qedit/samplegrabber: Use strmbase sink connection methods.
wineqtdecoder: Store the sink as a strmbase_sink structure.
wineqtdecoder: Use base sink connection methods.
strmbase: Introduce callbacks for streaming events.
strmbase/transform: Use base sink streaming methods.
strmbase/renderer: Use base sink streaming methods.
winegstreamer: Use base sink streaming methods.
wineqtdecoder: Use base sink streaming methods.
strmbase: Get rid of the "vtbl" parameter to strmbase_sink_init().
Zhiyi Zhang (3):
user32/tests: Import functions if possible.
user32/tests: Test cursor clip rectangles in per-monitor aware context.
user32/tests: Use a higher resolution in test_ChangeDisplaySettingsEx().
--
Alexandre Julliard
julliard(a)winehq.org