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
The Wine development release 4.21 is now available.
What's new in this release (see below for details):
- HTTP proxy configuration through DHCP.
- Parameter block support in D3DX9.
- A few more dlls converted to PE.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.21.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.21.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.21 (total 50):
15670 .NET applications that make use of System.IO.IsolatedStorage crash (missing "HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\<UserSID>" registry subkey)
22030 LegoLand: crashes at main menu without native directmusic
23729 Need For Speed: Shift - throbbing glob around language and save game name not as noticable on Wine
23821 Super Mario Brothers X hangs in quartz?
25264 treeview wstr overrun in TVN_GETDISPINFOW (ExamXML crashes when opening an XML file)
26119 kernel32/pipe tests show some valgrind warnings
26721 Button and Static controls not painting in Win NT V6.00 and later modes
28506 kernel32/change.ok test fails occasionally on linux
28602 Ccleaner: installer has a non-fatal crash
30499 Multiple Avira AVG product installers crash due to access of undocumented PEB field "UnicodeCaseTableData" (AVG Free Edition 2012-2014, TuneUp Utilities 2014)
33284 Xin Shendiao Xialv ("The Giant Eagle and It's Companion") has some graphical issues
33352 Family Tree Maker 2012 crashes when trying to start program
34048 IE8 x64 for Server 2003 exits silently
35252 Multiple applications need ITaskScheduler::Enum implementation (lsTasks, Toad for MySQL Freeware 7.x)
36121 valgrind leaks in ntdll/tests/change.c
36266 valgrind shows several leaks in dmusic/tests/dmusic.c
36404 valgrind shows a leak in faultrep/tests/faultrep.c
36405 valgrind shows a leak in msxml3/tests/xmlview.c
36615 valgrind shows a definite leak in mshtml/tests/htmldoc.c
38300 using winegcc with stdin passes arguments in the wrong position to gcc
38659 Windows Sysinternals Process Explorer v16.x crashes on startup (registry SID profile data in 'ProfileList' must contain 'Flags' and 'ProfileImagePath' values)
39210 Dream Aquarium (screensaver) fails to read monitor power state ('{4d36e96e-e325-11ce-bfc1-08002be10318}' monitor device class registry data missing)
40970 Can't run LEGO DD anymore
43323 Beamng.drive: Cars render incorrectly
45661 Gothic 2 crashes with music enabled without native directmusic
46748 Splinter Cell: Blacklist shows some 'script code' instead of text
47414 valgrind shows a definite memory leak in dlls/ntdll/loader.c
47489 The appearance of configurable options in Audacity is broken
47547 Steam Overlay stopped working
47620 unimplemented function KERNEL32.dll.GetCurrentConsoleFontEx
47656 Crysis 1: game in DX10 cannot be started (also causing Very High graphical setting not available) in Vista and up
47724 .NET Framework 3.5 SP1 not installing
47740 dotnet20sp2: fails to install on arch and derivatives
47790 putty.exe displays an error at startup when placed in a path with accented characters.
47809 mscrt: strftime is missing some substutions
47832 FindFirstFileExW believes every directory entry has been read if NtQueryDirectoryFile underfills buffer
47935 Nextiva: Logging in fails with "Client is unable to connect to the server."
47991 motec i2 pro v1.0 data logger fails to start
48016 karafunplayer: Call from 0x7124d239 to unimplemented function shcore.dll.GetScaleFactorForMonitor, aborting
48072 Everquest Classic: Textures not working correctly
48087 Firestorm viewer can't login to Second Life grid since 4.19
48104 Graphics load improperly in LEGO Island 2
48111 myodbc-installer v5.x (part of Toad for MySQL Freeware 7.x) crashes when querying for installed drivers ('SQLGetInstalledDrivers' doesn't handle NULL 'sizeout')
48114 wine: could not open working directory L"unix\\home\\tod\\", starting in the Windows directory.
48140 Archicad 22 needs missing SHCreateDataObject from shell32
48157 SetThreadDescription() return value E_NOTIMPL crashes StarCitizen
48170 start.exe: /min no longer works
48176 cannot select drawn line in excel2003 sheet (for removal)
48178 upgrade to "version 4 stable" made EXCEL2003 unusable (even after re-installing/purging wine and EXCEL)
48188 wine fails to load, "kernelbase.dll" failed to initialize, aborting
----------------------------------------------------------------
Changes since 4.20:
Akihiro Sagawa (1):
po: Update Japanese translation.
Alex Henrie (1):
winex11: Fix off-by-one error in color value scaling.
Alexandre Julliard (62):
kernel32: Move EnumDateFormats functions to kernelbase.
kernel32: Move EnumTimeFormats functions to kernelbase.
kernel32: Move EnumCalendarInfo functions to kernelbase.
kernel32: Move Get/SetCalendarInfo to kernelbase.
appwiz.cpl: Use Unicode strings for addons file names.
mscoree: Store the Mono base directory in Unicode.
comctl32/tests: Avoid size_t in traces.
ntdll: Support SystemPerformanceInformation on non-Linux platforms.
kernel32: Move physical memory status functions to kernelbase.
kernel32: Move system information functions to kernelbase.
kernel32: Add more special cases in ConvertDefaultLocale().
ntdll: Move locale functions to a new locale.c file.
ntdll: Implement RtlLocaleNameToLcid().
kernel32: Use RtlLocaleNameToLcid().
kernel32/tests: Get rid of Unicode helper functions.
dmime: Fix duplicate const.
ntdll: Fix counting of environment strings.
ntdll: Initialize the system and user locales directly in ntdll.
kernel32: Get the initial locales from ntdll.
kernel32: Move the locale registry setup to kernelbase.
wineboot: Also set the Flags value under ProfileList.
kernel32: Move string normalization functions to ntdll.
kernel32: Move some locale functions to kernelbase.
ntdll: Handle version parsing in Unicode.
mountmgr: Don't include sys/time.h before winsock.h.
setupapi: Handle copy errors in SetupCommitFileQueueW().
makefiles: Create source dir symlinks from the makefiles.
kernel32: Avoid forwarding to advapi32.
cmd: Environment variables contain signed numbers.
msvcrt: Fix range check in wsctoul().
wininet: Import zlib inflate code.
wininet: Build with msvcrt.
cabinet: Import zlib deflate code.
cabinet: Build with msvcrt.
opcservices: Import zlib deflate code.
opcservices: Build with msvcrt.
msi: Use %define api.pure instead of %pure-parser.
msxml3: Use %define api.pure instead of %pure-parser.
vbscript: Use %define api.pure instead of %pure-parser.
wbemprox: Use %define api.pure instead of %pure-parser.
ntdll: Implement NtGetNlsSectionPtr().
ntdll: Implement RtlInitCodePageTable().
ntdll Implement RtlInitNlsTables() and RtlResetRtlTranslations().
ntdll: Generate a Windows format codepage table using the libwine data.
kernel32/tests: Add tests for NtGetNlsSectionPtr() and RtlInitCodePageTable().
kernelbase: Initialize codepage data using ntdll functions.
kernel32: Move codepage functions to kernelbase.
winhttp: Handle http_proxy variable entirely in Unicode.
wininet: Handle http_proxy variable entirely in Unicode.
cabarc: Avoid some conversion to Unix codepage.
wineboot: Keep config directory path in Unicode.
kernel32: Reimplement FoldStringW() to support composition.
kernel32: Move FoldStringW() function to kernelbase.
ntdll: Don't fail to load data file when the registry key is missing.
ntdll: Keep a valid DOS name if the initial current directory is a Unix dir.
mscoree/tests: Avoid winetest_strcmpW.
msvcrt/tests: Avoid winetest_strcmpW.
msxml3/tests: Avoid winetest_strcmpW.
shell32/tests: Avoid winetest_strcmpW.
winhttp/tests: Avoid winetest_strcmpW.
include: Remove winetest_strcmpW.
ntdll: Remove trailing \n in fatal_perror() calls.
Alistair Leslie-Hughes (11):
dmime: Rewrite IDirectMusicSegment8 GetParam.
dmstyle: Add GUID_IDirectMusicStyle support in Style Track GetParam.
dmloader: ScanDirectory doesn't specify the full path.
dmstyle: Improved tracing of the DMUS_OBJECTDESC structure.
dmloader: Stop after find first matching object.
dmloader: Rewrite cache object lookup.
dmloader: Rewrite IDirectMusicLoader8 CacheObject using find_cache_object.
dmloader: Rewrite IDirectMusicLoader8 ReleaseObject using find_cache_object.
dmloader: Support DMUS_OBJ_MEMORY cache lookups.
dmime: Trace pbMemData/llMemLength on the same line.
d3dx9: Implement D3DXCreateFragmentLinker[Ex]().
Andrey Gusev (3):
sapiaut.idl: Fix a typo.
crypt32: Fix a typo in comment.
ddraw/tests: Fix a typo in comment.
Charles Davis (7):
ntdll: Implement SystemBatteryState for Mac OS.
winegcc: Pass through -fuse-ld= to the linker.
mountmgr: Populate HKLM\HARDWARE\DEVICEMAP\Scsi here instead of in kernel32.
mountmgr: Populate HKLM\HARDWARE\DEVICEMAP\Scsi on Mac OS.
ntdll: Fix macOS build.
ntoskrnl.exe: Add tests for METHOD_NEITHER ioctl behavior.
ntdll: Fix tick count calculation on Mac.
Conor McCarthy (2):
winedbg: Use correct CALL operand size when fetching the delta.
winedbg: Add support for x86_64 indirect function call targets.
Damjan Jovanovic (3):
winedbg: Allow changing the current thread.
start.exe: STARTUPINFOW needs the STARTF_USESHOWWINDOW flag.
comctl32: Allocate the right wstr size for the TVN_GETDISPINFOW reply.
Derek Lesho (1):
setupapi: Add SetupGetInfDriverStoreLocationW stub.
Dmitry Timoshkov (2):
wineboot: Automatically create ProfileList key for current user.
kernelbase: When enumerating calendars initialize optional to 0.
François Gouget (20):
kernel32/tests: Remove an unused assignment in the comm test.
ntdll: S/4Gb/4GB/ in a comment since it refers to bytes.
kernel32/tests: Fix the lcid and expected value in a codepage ok() call.
user32/test: Start the AdjustWindowRectExForDpi() from a known state.
urlmon/tests: Fix CoInternetCombineIUri tests on Windows 10 1607 to 1709.
userenv/tests: Windows 10 1809 changed GetUserProfileDirectory().
gdi32/tests: Fix a copy/paste error in an ok() message.
comctl32/tests: Trace the iteration counter when a tooltips test fails.
gdi32/tests: CloseMetaFile() no longer destroys the metafile hdc.
wbemprox: Fix the spelling of the free_associations() function name.
rsaenh: A spelling fix in a comment.
d3dx9_36: Fix the spelling of a TRACE() message.
wmp/tests: Fix the spelling of an unused parameter name.
input: Fix the spelling of a parameter name in a function prototype.
msvcp120/tests: Tweak two ok() messages and fix their spelling.
msvcrt: Fix the spelling of a couple of TRACE() messages.
ole32: Fix the name of PropertyStorage_WriteWStringToStream().
ole32: Fix a spelling error in a function parameter name.
dxerr8: Fix the spelling of some error messages.
d3d9/tests: Fix a typo in a field name of the visual test.
Gabriel Ivăncescu (4):
vbscript: Add script TypeInfo stub.
jscript: Fix a copy-paste mistake.
jscript: Trace the pstrItemName parameter.
vbscript: Trace the pstrItemName parameter.
Gijs Vermeulen (8):
odbccp32: Handle NULL sizeout in SQLGetInstalledDrivers.
server: Add support for additional fields in set_console_output_info.
kernel32: Implement GetCurrentConsoleFontEx.
kernel32/tests: Add GetCurrentConsoleFontEx tests.
wineconsole: Add registry support for font pitch&family.
msvcrt: Avoid compiler warning.
ntdll: Fix implicit declaration of mach_port_deallocate.
kernel32: Remove unused function.
Hans Leidekker (10):
include: Add DHCP option values.
mountmgr.sys: Add support for querying DHCP parameters on Linux.
mountmgr.sys: Add support for querying DHCP parameters on macOS.
dhcpcsvc: Implement DhcpRequestParams.
mountmgr.sys: Fix the build on macOS when dbus libraries are present.
winhttp: Add support for detecting the proxy config URL via DHCP.
winhttp: Pass correct buffer size to WideCharToMultiByte.
winhttp: Build with msvcrt.
winhttp: Use wide character string literals.
wininet: Add support for detecting the proxy config URL.
Jeff Smith (20):
msvcrt: Clean up strftime tests.
msvcrt: Add additional strftime tests.
msvcrt: Correct behavior of strftime formats %c %x.
msvcrt: Add _Strftime tests for seconds.
ucrtbase: Add _Strftime tests for seconds.
ucrtbase: Add strftime format range tests.
msvcrt: Range-check fields used as array indices in _Strftime.
msvcrt: Correct behavior of time in strftime formats %X %c.
ucrtbase: Treat year more consistently in strftime.
ucrtbase: Extend range for seconds to allow for leap-second.
msvcrt: Correct day-of-month range for strftime.
msvcrt: Correct hour range for strftime.
ucrtbase: Correct day-of-week range for strftime.
msvcrt: Call invalid parameter handler for out-of-range integer.
gdi32/tests: Reserve sufficient room for DIB data.
ucrtbase: Expand tests for strftime format %g.
ucrtbase: Use correct type for year with strftime format %g.
ucrtbase: Add support for strftime format %V.
ucrtbase: Consolidate strftime code for formats %g %G %V.
ucrtbase: Add support for strftime format %r.
John Alway (2):
user32/tests: Add a test for combo resizing from smaller item height.
comctl32/tests: Add a test for combo resizing from smaller item height.
John Chadwick (5):
wintab32: Use 64-bit math in ScaleForContext.
kernel32/tests: Add test for GetSystemFirmwareTable.
kernelbase: Fix GetSystemFirmwareTable regression.
winex11.drv: Handle button events without axes.
winex11/wintab: Fix values for lcSys* and lcOut*.
João Diogo Ferreira (4):
kernel32: Fix null pointer access in GetGeoInfoW().
kernel32: Add Kosovo, UN codes and change two parents in geoinfodata.
kernel32/nls: Add LOCALE_IGEOID to all locales.
kernel32: Handle GEOCLASS_ALL in EnumSystemGeoID().
Lauri Kenttä (1):
po: Update Finnish translation.
Louis Lenders (1):
shell32: Add stub for SHCreateDataObject.
Mathew Hodson (1):
kernel32: Remove dead code.
Matteo Bruni (2):
d3dx9/tests: Test ApplyParameterBlock() while recording.
ddraw/tests: Fix a few typos.
Michael Stefaniuc (19):
dmstyle/tests: Check all IDirectMusicTrack8_IsParamSupported() types.
dmime: SegTrigger track supports all param types, even invalid ones.
dmime: The Wave track supports two additional param types.
dmime/tests: Check all IDirectMusicTrack_IsParamSupported() types.
dmband/tests: Check all IDirectMusicTrack_IsParamSupported() types.
dmstyle: The Chord track doesn't support the BandParam type.
dmcompos/tests: Check all IDirectMusicTrack_IsParamSupported() types.
dmstyle: Implement IsParamSupported() for the Audition track.
dmscript: Implement unimplemented Script track methods.
dmscript/tests: Add some Script track tests.
dmscript: Clarify TRACE in IsParamSupported method of Script track.
dmstyle: Avoid capitalized field names in IDirectMusicStyle8Impl.
dmstyle: Move 3 structs where they are used and get rid of typedefs.
dmstyle: Free lists when IDirectMusicStyleImpl is destroyed.
dmstyle: Implement IDirectMusicStyle8_EnumMotif().
dmime: The group for a track in a segment cannot be zero.
dmime/tests: Add some IDirectMusicSegment_GetTrack() tests.
dmime: Print the track groups consistently in hexadecimal.
dmime: At least trace the DMUS_FOURCC_TRACK_EXTRAS_CHUNK.
Myah Caron (1):
kernel32: Allow NtQueryDirectoryFile underfilling FileInformation.
Nikolay Sivov (31):
ole32/tests: Check more return values in moniker tests (Coverity).
strmbase: Remove unused function.
wincodecs: Remove unused function.
mfreadwrite: Start media source when stream selection changes.
mfreadwrite/tests: Add a test for reading from delected stream.
mfreadwrite/tests: Add some missing checks (Coverity).
comctl32/rebar: Fix invalid band index access.
kernel32: Use RegLoadMUIStringW() from kernelbase.
kernel32/tests: Add some tests for thread description API.
user32/combo: Simplify rectangles sizing helper.
user32/combo: Simplify child controls position update helper.
user32/combo: Remove redundant argument from text height helper.
mfplat: Do not make a copy when returning GUID attributes (Valgrind).
mfplat: Do not make a copy when setting GUID attribute (Valgrind).
mfplat/tests: Fix buffer object leak (Valgrind).
ntdll: Implement thread description as information class.
kernel32: Implement higher level API to access thread description.
user32/combo: Remove unnecessary argument from button painting helper.
user32/combo: Remove redundant argument from border painting helper.
user32/combo: Force minimal item height.
comctl32/combo: Simplify rectangles sizing helper.
comctl32/combo: Simplify child controls position update helper.
comctl32/combo: Remove redundant argument from text height helper.
comctl32/combo: Remove unnecessary argument from button painting helper.
comctl32/combo: Remove redundant argument from border painting helper.
comctl32/combo: Force minimal item height.
explorerframe: Return success from ThumbBarSetImageList().
comctl32/toolbar: Handle NULL string pointer from TBN_GETINFOTIPW.
dwrite: Update to IDWriteColorGlyphRunEnumerator1.
dwrite: Update to IDWriteTextLayout4.
dwrite: Add support for IDWriteTextFormat3 for text layout object.
Paul Gofman (16):
wined3d: Factor out wined3d_context_gl_create_wgl() function.
wined3d: Create a backup context if setting the pixel format failed in wined3d_context_gl_create_wgl_ctx().
d3dx9: Avoid double freeing samplers.
d3dx9/tests: Add test for effect parameter block.
d3dx9: Implement d3dx_effect_BeginParameterBlock().
d3dx9: Implement d3dx_effect_EndParameterBlock().
d3dx9: Implement d3dx_effect_DeleteParameterBlock().
d3dx9: Factor out set_value() function.
d3dx9: Factor out free_parameter_object_data() function.
wined3d: Handle degenerate viewport Z ranges.
d3d9/tests: Test degenerate viewport Z ranges.
d3dx9: Implement recording parameters to parameter block.
d3dx9: Implement d3dx_effect_ApplyParameterBlock().
ddraw: Fix conversion of v1 viewport from v2 in d3d_viewport_GetViewport().
ddraw: Fix conversion of v2 viewport from v1 in d3d_viewport_GetViewport2().
ddraw/tests: Backport viewport v1 / v2 conversion tests for ddraw1.
Piotr Caban (6):
msvcrt: Fix _mbstowcs_s_l return value on truncate.
msvcrt: Use correct __lc_time_data fields in strftime functions.
msvcrt: Add _Strftime tests.
ucrtbase: Add _Strftime tests.
msvcrt: Use isspace_l in string to number conversion functions.
ucrtbase: Fix hexadecimal floats parsing in strtod.
Serge Gautherie (3):
wbemprox: Always free 'new_path'.
ole32: Improve a string format.
shell32: Properly init/use icon_idx.
Stefan Dösinger (4):
d3d11/tests: Don't use empty initializer list.
includes: Newer Visual Studio versions have isfinite and friends.
include: Windows SDK C headers have snprintf.
libs/port: Use MSVC intrinsics for interlocked functions.
Sven Baars (7):
msvcp140/tests: Test _Stat() against the actual permissions of the system directory.
gdi32/tests: Fix some test SetDIBitsToDevice RLE8 test failures on Windows 2008+.
gdi32/tests: Remove the D3DKMTCreateDCFromMemory test with Width = 0.
urlmon/tests: Expect BINDSTRING_SAMESITE_COOKIE_LEVEL on newer IE11.
d3dcompiler/tests: Fix a copy-paste error.
schannel: Update SECPKG_FUNCTION_TABLE to SECPKG_INTERFACE_VERSION_8.
schannel/tests: Use a more reliable method for detecting a wrong SECPKG_INTERFACE_VERSION.
Vijay Kiran Kamuju (8):
include: Add colordlg.h header file for color dialogs.
comdlg32: Use the new colordlg.h file and update the resources.
include: Update error codes in raserror.h.
tapi/tests: Add initial tests for lineInitialize.
include: Fix definition of PHONECALLBACK in tapi.h.
shcore: Add stub for GetScaleFactorForMonitor.
include: Add definitions for ShellLinkDataBlocks in shlobj.h.
shell32: Update the LINKHEADER based on binary file format.
Vincent Povirk (1):
windowscodecs: Fix tiffformat test on current Windows 10.
Zebediah Figura (70):
strmbase: Get rid of the unused "cs" parameter to strmbase_video_init().
strmbase: Get rid of the unused segment fields from struct strmbase_pin.
d3d9: Track WINED3D_RS_ZENABLE in the primary stateblock.
d3d8: Track WINED3D_RS_POINTSIZE_MIN and WINED3D_RS_ZENABLE in the primary stateblock.
ddraw: Track WINED3D_RS_ZENABLE in the primary stateblock.
strmbase: Rename the "mtCurrent" field of struct strmbase_pin to "mt".
strmbase: Forbid (dis)connecting pins if the filter is not stopped.
wineqtdecoder: Simplify disconnecting the sink's peer in qt_splitter_destroy().
quartz/videorenderer: Avoid calling IPin::ConnectionMediaType() on our own pin.
strmbase: Avoid unnecessary use of IPin::ConnectedTo().
qedit/samplegrabber: Reimplement the source pin over the strmbase source.
strmbase: Get rid of the BaseInputPin typedef.
strmbase: Get rid of the BaseInputPinFuncTable typedef.
qedit/samplegrabber: Reimplement the sink pin over the strmbase sink.
d3d9: Track the viewport and scissor rect in the primary stateblock.
d3d8: Track the viewport and scissor rect in the primary stateblock.
quartz/tests: Add some tests for allocator negotiation on the VMR7.
quartz/tests: Add some tests for VMR7 filter state.
quartz/tests: Add some tests for flushing on the VMR7.
quartz/tests: Add some tests for VMR9 allocator negotiation.
quartz/tests: Add some tests for VMR9 filter state.
quartz/tests: Add some tests for flushing on the VMR9.
quartz/videorenderer: Make VideoRenderer_SendSampleData() infallible.
strmbase/renderer: Exit BaseRendererImpl_Receive() immediately if flush_event was signaled.
quartz/videorenderer: Get rid of filter state checks in VideoRenderer_DoRenderSample().
quartz/videorenderer: Remove some dead code.
quartz/videorenderer: Wait in Receive() while paused.
quartz/vmr9: Wait in Receive() while paused.
quartz/tests: Fix an invalid free.
quartz/tests: Relax some more timings.
quartz/tests: Fix some tests on w7u.
strmbase: Return a strmbase_pin pointer from the filter_get_pin() callback.
strmbase: Simplify SendFurther().
strmbase/transform: Check whether the source is connected in TransformFilter_Input_Receive().
quartz/acmwrapper: Call IMemInputPin::Receive() directly.
quartz/acmwrapper: Don't drop the "csReceive" mutex while calling IMemInputPin::Receive().
ddraw: Track the viewport and scissor rect in the primary stateblock.
wined3d: Export wined3d_stateblock_init_contained_states().
ddraw: Use wined3d_stateblock_* methods directly in BeginStateBlock() and EndStateBlock().
d3d8: Use wined3d_stateblock_* methods directly in BeginStateBlock() and EndStateBlock().
d3d9: Use wined3d_stateblock_* methods directly in BeginStateBlock() and EndStateBlock().
wined3d: Get rid of wined3d_device_begin_stateblock() and wined3d_device_end_stateblock().
quartz/avidec: Call IMemInputPin::Receive() directly.
quartz/avidec: Don't drop the "csReceive" mutex while calling IMemInputPin::Receive().
winegstreamer/gsttffilter: Call IMemInputPin::Receive() directly.
wineqtdecoder/qtvdecoder: Call IMemInputPin::Receive() directly.
wineqtdecoder/qtvdecoder: Don't drop the "csReceive" mutex while calling IMemInputPin::Receive().
qcap/avico: Call IMemInputPin::Receive() directly.
qcap/smartteefilter: Call IMemInputPin::Receive() directly.
qcap/vfwcapture: Call IMemInputPin::Receive() directly.
strmbase: Get rid of BaseOutputPinImpl_Deliver().
strmbase: Move tracking of EOS state to the base renderer.
d3d9: Fix a copy-paste error.
d3d8: Fix a copy-paste error.
wined3d: Get rid of the "recording" field from struct wined3d_device.
wined3d: Pass the client stateblock state to wined3d stateblock methods.
wined3d: Get rid of the "update_stateblock_state" field from struct wined3d_device.
wined3d: Get rid of the "stateblock_state" field from struct wined3d_device.
quartz/dsoundrender: Avoid taking the filter lock in IPin::EndOfStream().
strmbase: Get rid of BaseRendererImpl_BeginFlush().
strmbase: Get rid of BaseRendererImpl_EndFlush().
strmbase: Get rid of BaseRendererImpl_EndOfStream().
strmbase: Don't hold the streaming lock in IPin::BeginFlush().
quartz/systemclock: Support COM aggregation.
quartz/dsoundrender: Move DSoundRender_create() to avoid forward declarations.
quartz/dsoundrender: Delegate IReferenceClock to the system clock.
strmbase: Swap the lock order in IPin::EndFlush().
kernelbase: Implement GetOverlappedResultEx().
ntoskrnl.exe: Remove a superfluous condition.
ddraw: Track some more render states in the primary stateblock.
Zhang Shuai (1):
dssenh/tests: Add keylength tests for enhanced and schannel providers.
Zhiyi Zhang (5):
setupapi/tests: Fix timeout on win10 1809+.
setupapi/tests: Add default device registry property tests.
wine.inf: Add display and monitor classes.
setupapi: Set device SPDRP_CLASS registry property in create_device().
include: Add more date formatting flags.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 4.0.3 is now available.
What's new in this release (see below for details):
- Various bug fixes
- Updates to the National Language Support files
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.0/wine-4.0.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.0/wine-4.0.3.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.0.3 (total 54):
8848 SWAT4 Areas that should be in shadow and people are rendered solid black
12332 Microsoft Windows Server 2003 DDK SP1 installer crashes ('setupapi.SetupCloseFileQueue' should do proper handle validation before accessing members)
14695 Lifeforce demo misses codecs (msvideo1 needs to support 24 bpp output)
25180 Clonk Endeavour's intro video is not rendered correctly (iccvid does not support non-multiple of 4 video width)
27185 Futuremark PC Mark 7 (.NET 4.0 app) fails to run with Wine-Mono (mscoree:get_runtime Unrecognized version L"v4.0.20926")
28196 Test Drive Unlimited: Water is always rendered on top of everything.
31350 Multiple .NET 3.x WPF applications crash in Vista/Win7 mode due to dwmapi.DwmGetTransportAttributes stub returning E_NOTIMPL (T-Online Mediencenter Assistent, Valil.Chess, Zwift 1.0)
38182 King of Dragon Pass: can't change audio volume level
38421 Windows Media Player 9 & 10: mp3 sound plays too fast
38423 Python 3.5.x exe installer fails with Access denied error
39129 Cygwin's dash.exe crashes during installation
39614 Wine initialises a Critical Section for Mutexes by NULL instead of (void*)-1
41657 CoolQ 5.x reports network error on startup due to msscript:ScriptControl_Eval stub
42078 Dungeons & Dragons: Chronicles of Mystara needs d3dx11_43.dll.D3DX11CreateShaderResourceViewFromMemory
42374 Hardwood Solitaire can not connect to his server
43286 WSARecvMsg wrongly forbids NULL control buffers (Qt 5.7.0 based: Cannot read UDP packets: "errno 90, (Message too long)")
45218 Fallout 4 Script Extender fails to allocate trampoline buffers
45449 Add diagnostic 'mscoree.dll.CorGetSvc' stub (NGEN client) to hint at broken Microsoft .NET Frameworks installation (Wine-Mono not uninstalled and/or 'mscoree.dll' placeholders not removed prior install)
45757 Visual Studio 2017 Installer - "The installer manifest failed signature validation"
45947 Native Access crashes on unimplemented function virtdisk.dll.OpenVirtualDisk
46450 Volume Control doesn't work in Firefox videos (and browsers based on it) with PulseAudio driver
46453 The Testament of Sherlock Holmes crashes while loading level with builtin d3dx9_43
46473 Settlers IV History Edition crashes on startup
46558 win64 dotnet Space Engineers fractal noise generation broken
46655 Adobe Photoshop CC 2015.5: Tabs show completely black
46905 Multiple eventlog monitor applications go haywire (endless console spam, live-loop CPU) due to advapi32.ReadEventLogA/W returning lasterror ERROR_CALL_NOT_IMPLEMENTED
47013 winebus.sys: hidraw_set_feature_report buffer too small for some devices in SteelSeries Engine
47023 Warframe in-game screenshot fails if screenshot directory already exists
47069 Final Fantasy XIV Launcher renders black (needs better get_Busy implementation)
47082 NI System Web Server crashes on unimplemented function authz.dll.AuthzFreeResourceManager
47129 Rendering glitch in Caste Siege/Ballerburg (invalid vertex count in IDirect3DDevice3::DrawIndexedPrimitiveVB)
47137 Multiple applications from Line 6 (Yamaha Guitar Group) crash on startup (HX Edit v2.71, POD Farm 2.5)(Wine builtin 'gdiplus.dll' missing version resource)
47143 Trackbar thumb is too small in Metatrader 4 expert advisor
47178 Grand Prix Legends: Service papycpu2 doesn't load
47190 Custom protocol handler CF doesn't support aggregation
47214 Oracle Java runtime 8.211 online installer crashes in WoW64
47234 Wine fails to properly parse and import some of the standard root certificates
47236 Adobe InDesign CC 2017: crashes at startup: unimplemented function msvcp140.dll._Strxfrm
47249 CM_Set_Class_Registry_Property should use PCVOID for buffer parameter
47285 widl generates incorrect format strings when using -Oicf flag
47327 Japanese texts are overlapped in notepad when using bitmap font.
47352 Levelhead: Can't connect to game's network
47367 Some WPF 4.x apps from Windows 10 SDK (10.0.17763.x) spam console with fixme:d3d:wined3d_driver_info_init Unhandled OS version 6.3, reporting Win 8. (WinVer set to 'Windows 8.1')
47399 Mozart 11-13 crashes on startup
47418 Quickbooks 2018 installer crashes on Validating Install
47424 DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT *must* have return value
47432 bcrypt always chooses ECB mode when using AES, even if a program indicates otherwise.
47437 Final Fantasy XIV 5.0 crashes on startup when using xaudio2_8.dll
47514 AviUtl: Can't add a file to the ExEdit dialog after the first drop.
47546 Touhou 14-17 experience Spell Name and Music Room text issues starting in Wine 4.1
47564 Database mistmatch on brazillian timezone (America/Sao_Paulo)
47578 Omni-NFS 4.13's XLPD Server crashes on unimplemented function ntoskrnl.exe.MmIsThisAnNtAsSystem
47586 The Sims 1 visually freezes after alt-tabbing when in fullscreen mode
47706 ntdll: Compiler warnings regression on x86_64 [stable]
----------------------------------------------------------------
Changes since 4.0.2:
Akihiro Sagawa (4):
usp10/tests: Add advance width tests with CJK bitmap font.
usp10: Fix advance width when glyph is missing.
shell32/tests: Add DragQueryPoint tests.
shell32: Fix return value for DragQueryPoint.
Alex Henrie (2):
ntoskrnl: Add MmIsThisAnNtAsSystem().
server: Fix use after free in add_committed_range (scan-build).
Alexandre Julliard (5):
ntdll: Use the correct type for %llu scanf format.
server: Fix the returned error code for an invalid NT header offset.
widl: Use %define parse.error verbose instead of %error-verbose.
d3dcompiler: Use %define parse.error verbose instead of %error-verbose.
wbemprox: Use %define parse.error verbose instead of %error-verbose.
Alistair Leslie-Hughes (5):
authz: Add AuthzFreeResourceManager stub.
winebus.sys: Increase buffer size to match max length available.
wininet: Always set last error in InternetReadFile.
dinput: Ensure buffer doesn't overflow (Coverity).
advapi32: Don't read a value that might be uninitialized (Coverity).
Andrew Eikum (1):
ntdll: Fix memory region check in NtQueryVirtualMemory.
Andrey Gusev (1):
d3dx11: Fix D3DX11CreateShaderResourceViewFromMemory spec entry.
Aric Stewart (1):
dinput: Handle case where IOHIDDeviceGetValue fails.
Austin English (1):
advapi32: In ReadEventLogA/W, return ERROR_HANDLE_EOF instead of ERROR_CALL_NOT_IMPLEMENTED.
Bryon Roche (1):
windowscodecs: Byte swap png read/write for 16-bpp data.
Damjan Jovanovic (1):
ws2_32: WSARecvMsg allows a NULL control buffer when no control messages arrive.
Dmitry Timoshkov (6):
crypt32: CryptMsgUpdate should skip broken certificates.
urlmon/tests: Add a test for ProtocolCF_CreateInstance not supporting aggregation.
urlmon: If ProtocolCF_CreateInstance doesn't support aggregation retry without it.
windowscodecs/tests: Add a bunch of new tests for indexed format conversions.
windowscodecs: Add support for 32bppRGB, 32bppRGBA and 32bppPRGBA to format converter.
msvcrt: Fix handling of dst == src in wcscpy_s.
Enol Puente (3):
wrc: Add Asturian locale.
wmc: Support Asturian.
kernel32: Add Asturian locale.
Erich Hoover (2):
advapi32: Move the DACL combining code into a separate routine.
advapi32: Fix the initialization of combined DACLs when the new DACL is empty.
Ethan Lee (1):
xaudio2: Export functions by ordinal.
Fabian Maurer (2):
gdi32: CreatePolyPolygonRgn() returns an empty region when the area is empty.
setupapi: Correct function parameter for CM_Set_Class_Registry_PropertyA/W.
Gabriel Ivăncescu (4):
winealsa.drv: Adjust the buffer volume before sending it to ALSA.
winepulse.drv: Adjust the buffer volume before sending it to PulseAudio.
comctl32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
user32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
Gijs Vermeulen (1):
wine.inf: Update E. South America Standard Time.
Hans Leidekker (5):
bcrypt: Implement BCryptGenerate/FinalizeKeyPair for ECDH P256.
bcrypt: Ignore the size parameter in BCRYPT_CHAINING_MODE setters.
winhttp/tests: Fix some test failures.
winhttp: Propagate request errors in request_wait.
wininet/tests: Fix FTP test failures.
Henri Verbeet (2):
wined3d: Handle Windows 8.1 in wined3d_driver_info_init().
wined3d: Add GPU information for AMD VEGA12.
Jacek Caban (2):
ieframe: Keep Busy property in sync with download state.
msxml3: Fix string length handling in I[VB]SAXContentHandler::characters.
Jactry Zeng (1):
msscript: Partially implement IScriptControl::Eval().
Jeff Smith (1):
d3drm: Fix reference leak in d3drm_viewport2_Clear().
John Thomson (1):
shell32: Do not fail in SHCreateDirectoryExW for ERROR_ALREADY_EXISTS.
Kai Krakow (1):
wined3d: Add GPU information for NVIDIA GTX 1660 Ti.
Ken Thomases (1):
winemac: Fix failure to render OpenGL on macOS 10.14 (Mojave).
Kristján Gerhardsson (3):
wined3d: Add GPU information for various Mac GPUs.
wined3d: Add GPU information for AMD VEGA20.
wined3d: Add GPU information for a few more Intel KBL GPUs.
Louis Lenders (2):
dwmapi: Return DWM_E_COMPOSITIONDISABLED instead of E_NOTIMPL in DwmGetTransportAttributes.
gdiplus: Add version resource.
Martin Liska (1):
include: Avoid compound literals for WCHAR strings.
Michael Müller (5):
avifil32: Correctly handle compressed frames when desired format is specified.
wininet: Allow to set INTERNET_OPTION_HTTP_DECODING on sessions and connections.
iccvid: Fix calculation of stride and size.
msvidc32: Add support for converting 16 bit depth to 24 bit.
msvidc32: Fix calculation of stride and size.
Nikolay Sivov (7):
kernel32/tests: Add a test for critical section DebugInfo initial value.
ntdll: Initialize critical section debug info with correct pointer value.
comctl32/trackbar: Do not consider window size when initializing fixed length thumb.
kernel32/nls: Add LOCALE_SPERCENT locale data.
kernel32/nls: Add LOCALE_SPERMILLE data.
kernel32/nls: Add percent formatting values.
kernel32/nls: Add locale data for positive and negative infinity.
Owen Rudge (1):
wininet/tests: Fix http tests to reflect current state of winehq test server.
Paul Gofman (14):
d3dx9: Factor out {lock|unlock}_surface() functions.
d3dx9: Use temporary surface in D3DXFillTexture() for unmappable textures.
d3dx9: Do not ignore surface map failure in D3DXSaveSurfaceToFileInMemory().
d3dx9: Use temporary surface in D3DXSaveSurfaceToFileInMemory() for unmappable textures.
d3dx9: Use {lock|unlock}_surface() in D3DXLoadSurfaceFromMemory().
d3dx9: Pass rectangle to {lock|unlock}_surface().
wined3d: Apply stencil mask to stencil reference value.
ddraw: Fix vertex count in d3d_device3_DrawIndexedPrimitiveVB().
wined3d: Use 3 component norm for 'nrm' opcode in GLSL backend.
ddraw: Return DDERR_SURFACELOST from _GetAttachedSurface() if surface is lost.
ddraw: Restore complex attached surfaces when restoring surface.
ddraw/tests: Test restoring attached surface for ddraw4.
ddraw/tests: Test restoring attached surface for ddraw2.
ddraw/tests: Test restoring attached surface for ddraw1.
Piotr Caban (2):
msvcp: Add _Strxfrm implementation.
services: Don't double release process in service_start.
Qian Hong (1):
advapi32: Initialize the LsaLookupSids() LSA_TRANSLATED_NAME.Name string properly.
Rémi Bernon (1):
wined3d: Add GPU information for Intel UHD Graphics 620.
Stefan Dösinger (1):
include: Remove backslashes from D3D12_COLOR_WRITE_ENABLE_ALL.
Sven Baars (8):
wmp: Fix a crash in put_volume when basic_audio is NULL.
shell32: Fix an item identifier list leak (Valgrind).
user32: Fix some leaks on error path (Coverity).
msrle32: Fix a memory leak (Valgrind).
comctl32: Always free the tooltip text before setting it (Valgrind).
d3dx9: Release the full parameter name when a parameter is released (Valgrind).
d3dx9: Always free samplers (Valgrind).
shell32: Fix a use after free (Coverity).
Tim Schumacher (1):
services: Allow reading binary registry values as DWORDs.
Vijay Kiran Kamuju (12):
virtdisk: Add stub and tests for OpenVirtualDisk.
kernel/nls: Fix country name in Tatar locale.
kernel/nls: Fix LOCALE_SNAME for Azeri (Cyrillic).
kernel/nls: Fix LOCALE_SNAME for Uzbek (Cyrillic).
kernel/nls: Fix LOCALE_SNAME for Serbian (Cyrillic).
kernel/nls: Fix country name and sname in English-Caribbean locale.
kernel/nls: Fix country name in Manx Gaelic locale.
kernel/nls: Add LOCALE_SMONTHDAY to all supported languages.
kernel/nls: Fix LOCALE_SLONGDATE and LOCALE_SYEARMONTH for some chinese locales.
kernel32: Add implementation of CAL_SSHORTESTDAYNAME*.
kernel32: Add implementation for CAL_SMONTHDAY.
kernel/nls: Fix LOCALE_SABBREVCTRYNAME for Serbian.
Vincent Povirk (3):
mscoree: Accept old framework build in exe metadata.
windowscodecs: Treat 16-bit channels as little endian.
mscoree: Add diagnostic CorGetSvc stub.
Zebediah Figura (14):
setupapi: Add magic bytes to struct file_queue and validate them in SetupCloseFileQueue().
msxml3: Load the version 1 typelib before trying to access it.
widl: Use IsSimpleRef only for explicitly declared arrays.
widl: Also allocate top-level pointers to arrays as on-stack in -Oicf mode.
widl: Mark unions, user types, and ranges as IsSimpleRef.
quartz/tests: Clean up CommitDecommitTest().
quartz/tests: Add more tests for standard media samples.
quartz/memallocator: Clear some sample properties when freeing the sample.
msi: Close all handles opened by a custom action thread.
ntdll: Correctly fill DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT.
ucrtbase/tests: Add some tests for __stdio_common_vsscanf().
ucrtbase: Write the %hh prefix as a single char.
d3d8/tests: Flush events after sending SC_MAXIMIZE.
d3d9/tests: Add another flush to work around an intermittent test failure on fvwm2.
Zhiyi Zhang (3):
d3d9/tests: Add a test for stencil reference value truncation.
wined3d: Truncate stencil reference values to the stencil component size.
msctf: Add ITfContextOwnerCompositionServices stub.
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 4.20 is now available.
What's new in this release (see below for details):
- New version of the Mono engine with an FNA update.
- Code persistence in VBScript and JScript.
- Vulkan spec updates.
- Improved support for LLVM MinGW.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.20.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.20.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.20 (total 37):
10728 LEGO Island character models are textureless
13499 The Odyssey: Winds Of Athena: access violation when trying to run
16644 SimGolf v1.03 does not render terrain
16808 Password Safe crashes with page fault when renaming entries
19667 Demo for Total Annihilation: mouse scrolling of screen unworkable.
24529 TSDoctor 1.0.58 fails to run
33498 Multiple application installers need setupapi.SetupDiCallClassInstaller implementation (USB over Network 5, Microsoft Windows CE Platform Manager 4.0/sub-installer of Embedded VC++ 4.0)
34723 Resident Evil 3: changing settings during the game (in fullscreen mode) results in a crash
35821 wPrime 2.x (VB6 app) reports 'Run-time error 445: Object doesn't support this action' (needs ITextStream ReadLine method implementation)
35925 Age of Wonders III (version <1.5) has graphical issues (fbo bailing out on context_set_gl_context)
36431 valgrind shows a possible leak in shell32/tests/ebrowser.c
36538 Livestream Procaster needs D3D10CompileEffectFromMemory
38070 Multiple application installers need vbscript:Global_Replace implementation in VBScript custom actions (GEOVIA Surpac 6.x, Hog4PC 3.x)
40442 Unexplained new random comctl32:header failure (cross-compiler issue?)
40950 ProgramFiles(x86) environment variable is not created
41106 Multiple games crash at launch without native .NET 4.0 (Lethe - Episode One, A Story About My Uncle)
41119 vbscript fails to parse 'createobject("wscript.shell").run' statement
44975 Multiple applications need 'find.exe' command line tool with functionality to search for string pattern from stdin (ConEmu)
45031 HotS - taking screenshot causes client crash, needs d3dx11_42.dll.D3DX11SaveTextureToFileW
46417 Abiword 2.6.8 comboboxes should have a white background color
46578 IVMU Social Network Client (500 series) crashes when selecting menu / settings
46683 TopoEdit crashes with unimplemented function mf.dll.MFCreateVideoRendererActivate
47305 Notepad doesn't adjust caret and scroll position properly
47349 TesModManager require SetFileInformationByHandle with FileBasicInfo to properly set file timestamps
47807 Wine Mono fails to install fakedlls in a new 64-bit prefix
47815 Virtual desktop is missing window decorations
47821 gcin cannot input chinese characters
47876 mmdevapi:capture issues an invalid and fake todo
47885 games are now restricted to resolutions not bigger than the virtual desktop
47945 dinput:mouse regression on Wine
47947 wine control freezes on exit
47954 Bug in unicode path handling
47958 Mi PC Suite: It won't install (call to unimplemented function propsys.dll.PSCreatePropertyStoreFromObject)
48017 Winlink needs httpapi.dll.HttpReceiveRequestEntityBody() when using native .NET
48019 SSE register MXCSR is wrong for new threads
48067 Epic Games Launcher no longer installs
48076 compile error: ucrtbase: ‘for’ loop initial declarations are only allowed in C99 mode
----------------------------------------------------------------
Changes since 4.19:
Alexandre Julliard (33):
ucrtbase/tests: Avoid C99 for loop.
wrc: Add --sysroot option.
widl: Add strmake() helper.
widl: Add --sysroot and --nostdinc options.
makefiles: Pass --nostdinc also to widl.
ntdll: Initialize MxCsr for new threads on x86.
ntdll: Fix FPU initialization for new threads on x86-64.
server: Clarify naming of ARM64 floating-point registers.
ntdll: Initialize FPU context on ARM64.
msvcrt: Don't change FPU control word in _control87() on x86-64.
kernel32/tests: Add more tests for FPU control registers.
vcomp: Fix vcomp_fork() implementation on ARM64.
vcomp: Fix signed char issues.
winegcc: Also check magic number to detect shared libraries.
ntdll: Support running a builtin without corresponding file in RtlCreateUserProcess().
kernel32: Move support for running wineboot to ntdll.
kernel32: Move initialization of the WoW64 environment to ntdll.
ntdll: Directly allocate the final process parameters structure.
winver: Fix program exit code.
ntdll: Support running .exe.so binaries in RtlCreateUserProcess().
ntdll: Initialize earlier things that need the executable name.
ntdll: Move some initializations out of thread_init().
ntdll: Load the main binary directly in ntdll when possible.
server: Get rid of the unused file parameter in exec_process.
kernel32: Move exec process functionality to ntdll.
kernel32: Use RtlCreateUserProcess() to start new processes.
kernel32: Move support for starting Unix processes to ntdll.
kernelbase: Implement GetSystemWow64Directory2().
kernel32: Move GetSystemWow64Directory() functions to kernelbase.
kernel32: Move CreateProcess() functions to kernelbase.
shell32: Process all messages in control panel.
d3d: Revert test hacks that shouldn't have been committed.
kernel32: Get rid of LOCALE_IDEFAULTUNIXCODEPAGE.
Alistair Leslie-Hughes (14):
user32: WM_MOUSEACTIVATE should return MA_NOACTIVATE for WM_LBUTTONDOWN/HTCAPTION message.
dmstyle: IDirectMusicTrack GetParam add pointer check.
dsdmo: Added dll.
dsound/tests: Add media object query tests.
dmime: Trace dwGroupBits parameter consistently.
dmband: Handle the DirectX 7 version of DMUS_IO_INSTRUMENT structure.
dmscript: Script track IPersistStream IsDirty return S_FALSE.
dmband: Rename IDirectMusicTrack8Impl to band_track.
dinput: Keyboard device doesn't support property DIPROP_VIDPID.
dinput: Mouse device doesn't support property DIPROP_VIDPID.
dmime: SegTrigger track supports parameter GUID_IDirectMusicStyle.
dmstyle: Free list when Style track is destroyed.
dmime: Free list when Tempo track is destroyed.
dmime: Free list when SegTrigger track is destroyed.
Andrew Eikum (4):
hid: Move preparsed data definition to global header.
user32/tests: Move rawinput tests into input.c.
user32: Clean up GetRawInputDeviceInfo.
user32: Support RIDI_PREPARSEDDATA in GetRawInputDeviceInfo.
Andrew Sheldon (1):
wined3d: Add Navi 10 PCI id and device description.
Biswapriyo Nath (1):
include/netfw: Add INetFwRule2 and INetFwRule3 interfaces.
Connor McAdams (14):
d3dx10: Add D3DX10LoadTextureFromTexture() stub.
d3dcompiler: Move d3d10 reflection stubs into d3dcompiler.
d3dcompiler: Init reflection data in D3D10ReflectShader().
d3dcompiler: Implement d3d10 reflection GetDesc() method.
d3dcompiler: Implement d3d10 reflection Get{Input, Output}ParameterDesc() methods.
d3dcompiler: Implement d3d10 reflection GetResourceBindingDesc() method.
d3dcompiler: Partially implement ID3D10ShaderReflectionConstantBuffer.
d3dcompiler: Implement d3d10 GetConstantBufferByIndex().
d3dcompiler: Implement d3d10 GetConstantBufferByName().
d3dcompiler: Partially implement ID3D10ShaderReflectionVariable.
d3dcompiler: Implement ID3D10ShaderReflectionType.
d3dcompiler: Implement ID3D10ShaderReflectionVariable GetType() method.
d3dcompiler: Implement ID3D10ShaderReflectionConstantBuffer GetVariableByIndex() method.
d3dcompiler: Implement ID3D10ShaderReflectionConstantBuffer GetVariableByName() method.
Conor McCarthy (3):
kernelbase: Add stub for SetThreadDescription().
dxgi: Implement IDXGISwapChain3::ResizeBuffers1().
dxgi/tests: Add tests for IDXGISwapChain3::ResizeBuffers1().
Damjan Jovanovic (7):
comctl32: Test the treeview edit control EM_LIMITTEXT.
comctl32: Implement treeview edit control EM_SETLIMITTEXT.
comctl32: Test treeview text trimming after label editing is complete.
comctl32: Test text buffer passed to TVN_ENDLABELEDIT is always MAX_PATH chars long.
comctl32: Test overwriting of pszText contents in TVN_ENDLABELEDIT.
comctl32: Test overwriting of pszText pointer in TVN_ENDLABELEDIT.
comctl32: Implement treeview edit control text trimming and overwriting.
Derek Lesho (1):
winevulkan: Mark members of required structs as required recursively.
Dmitry Timoshkov (2):
kernelbase: Implement EqualDomainSid.
wineconsole: Fix "Select all" functionality in USER backend.
Erich Hoover (2):
qmgr: Call the notification callback when jobs complete.
msvcrt: Fix scanf file locking when returning EOF.
Fabian Maurer (6):
comctl32/tests: Add combo tests for WM_CTLCOLOR*.
user32/tests: Add combo tests for WM_CTLCOLOR*.
comctl32/combo: Properly handle WM_CTLCOLOR* messages.
user32/combo: Properly handle WM_CTLCOLOR* messages.
comctl32/edit: In EM_POSFROMCHAR return correct position for empty lines.
user32/edit: In EM_POSFROMCHAR return correct position for empty lines.
François Gouget (5):
comctl32/listbox: Do no limit item height to 255.
kernel32/tests: Windows 10 dropped support for GetConsoleFontInfo().
kernel32: Match the Windows 10 1709+ GetConsoleFontInfo().
kernel32/tests: Windows 10 dropped support for SetConsoleFont().
kernel32: Match the Windows 10 1709+ SetConsoleFont() implementation.
Gabriel Ivăncescu (17):
jscript: Set the DISPID to DISPID_UNKNOWN if unknown.
jscript: Also clear the thread_id if the script state is set to Closed.
vbscript: Store global variables in an array.
vbscript: Get rid of ident_map.
jscript: Use standard list for the queued code.
jscript: Implement script persistence.
jscript/tests: Use integers instead of booleans for counting call expectations.
jscript/tests: Add tests for pending and executed code persistence.
vbscript: Release the code list when the script is closed.
vbscript: Avoid special casing the global function when compiling a function's variables.
vbscript: Implement script persistence.
vbscript: Store the compiled classes list head into vbscode_t.
vbscript: Store the compiled functions list head into vbscode_t.
vbscript: Append to the global lists when the code is executed, rather than compiled.
vbscript: Change release_dynamic_vars to release a single variable.
vbscript/tests: Use integers instead of booleans for counting call expectations.
vbscript/tests: Add tests for pending and executed code persistence.
Hans Leidekker (2):
bcrypt: Avoid recreating cipher handles when the initialization vector doesn't change.
shell32: Fix definitions for FOLDERID_ProgramFilesX64 and FOLDERID_ProgramFilesCommonX64 on 64-bit.
Huw D. M. Davies (1):
user32: Remove unused GetAsyncKeyState() driver entry.
Jacek Caban (36):
vbscript: Support assigning to object default value.
vbscript: Store global functions in an array.
vbscript: Replace existing function for duplicated functions.
vbscript: Allow arbitrary number of arguments in builtin functions.
vbscript: Add Replace function implementation.
vbscript: Don't allow changing script state when script site is not set.
vbscript: Support changing script state to SCRIPTSTATE_INITIALIZED.
vbscript: Fix parsing call expressions.
vbscript: Lookup this object in lookup_identifier only if it's an actual VBScript object.
vbscript: Store only VBScript this objects in execution context.
vbscript: Clean up lookup_identifier.
msvcrt: Use %ls format for wchar strings in _wassert.
vbscript: Store global static arrays together with global variables.
xmllite: Update current pointer after reader_skipn call.
vbscript: Fix destroying safearrays in release_exec.
winemac.drv: Make sure that NSMiniaturizableWindowMask style mask is set before calling miniaturize.
scrrun: Rewrite text stream to use read ahead buffer.
scrrun: Add ITextStream::ReadLine implementation.
scrrun/tests: Add ITextStream::ReadLine tests.
scrrun/tests: Add test of lost trailing byte in unicode srteam.
vbscript: Move detach_global_objects call to VBScript destructor.
jscript/tests: Use wchar string literals instead of a2bstr helper.
widl: Don't use fixed size buffer in ctl2_encode_name.
widl: Don't use fixed size buffer in ctl2_encode_string.
widl: Use strmake in get_name.
configure: Get rid of no longer needed __builtin_clz check.
jscript: Treat only ASCII digits as digits.
vbscript: Treat only ASCII digits as digits.
msvcrt/tests: Add iswdigit tests.
vbscript: Always treat keywords after dot as identifiers.
winegcc: Add support for -Wl,-delayload argument.
makedep: Use -Wl,-delayload option for winebuild delayimports.
mshtml: Fix checks for digit characters.
oleaut32: Fix checks for digit characters.
shlwapi: Fix PathUndecorate[AW] implementation.
makedep: Use -Wl,-delayload on cross targets when supported by linker.
Jeff Smith (3):
msrle32: Return expected flags from GetInfo.
ucrtbase: Strftime returns 4-digit timezone for %z.
ucrtbase: Strftime %y works for years 0 to 9999.
João Diogo Ferreira (2):
kernel32: Move Get/SetUserGeoID() to after the geoinfo struct.
kernel32: Handle GEOCLASS_REGION in Get/SetUserGeoID().
Liam Middlebrook (6):
d3dx11: Add D3DX11SaveTextureToFileA/W() stub.
winevulkan: Don't add alias structs to struct-extensions list.
winevulkan: Update to VK spec version 1.1.113.
winevulkan: Update to VK spec version 1.1.114.
winevulkan: Update to VK spec version 1.1.117.
winevulkan: Update to VK spec version 1.1.126.
Louis Lenders (1):
wine.inf: Add value for DigitalProductId.
Martin Storsjo (1):
kernel32: Add a special case to EnumProcessModules for the local process.
Matteo Bruni (9):
d3dcompiler: Always expect D3D_COMPILER_VERSION to be defined.
include: Define D3D_COMPILER_VERSION if it's not already defined.
include: Expose MinPrecision field on d3dcompiler version >= 46.
d3dcompiler: Initialize MinPrecision when it exists.
d3dcompiler: Fix a couple of failure return values in >= 46 D3DReflect().
d3dcompiler/tests: Add d3dcompiler_47 tests.
d3dcompiler/tests: Add a small test for MinPrecision.
d3dcompiler/tests: Clean up test_reflection_desc_ps_output() a bit.
d3d10/tests: Add reflection test.
Micah N Gorrell (1):
ole32: Obtain stream size regardless of current position.
Michael Stefaniuc (19):
vbscript: Remove redundant NULL checks before SysFreeString().
dmstyle: Rename IDirectMusicTrack8Impl to audition_track.
dmstyle: Rename IDirectMusicTrack8Impl to chord_track.
dmstyle: Rename IDirectMusicTrack8Impl to command_track.
dmstyle: Rename IDirectMusicTrack8Impl to motif_track.
dmstyle: Rename IDirectMusicTrack8Impl to mute_track.
dmstyle: Rename IDirectMusicTrack8Impl to style_track.
dmcompos: Rename IDirectMusicTrack8Impl to chordmap_track.
dmcompos: Rename IDirectMusicTrack8Impl to signpost_track.
dmime: Rename IDirectMusicTrack8Impl to lyrics_track.
dmime: Rename IDirectMusicTrack8Impl to paramcontrol_track.
dmime: Rename IDirectMusicTrack8Impl to segment_track.
dmime: Rename IDirectMusicTrack8Impl to sequence_track.
dmime: Rename IDirectMusicTrack8Impl to sysex_track.
dmime: Rename IDirectMusicTrack8Impl to tempo_track.
dmime: Rename IDirectMusicTrack8Impl to wave_track.
dmscript: Rename IDirectMusicTrack8Impl to script_track.
d3d9/tests: Actually test a return value.
d3dx9: Remove redundant NULL check before heap_free().
Nikolay Sivov (35):
propsys/tests: Merge test files.
propsys: Add a semi-stub for PSCreatePropertyStoreFromObject().
comsvcs/tests: Rename test file.
comsvcs: Add a stub for "new" moniker.
comsvcs: Implement display name parsing for "new" moniker.
comsvcs: Implement Hash() for "new" moniker.
comsvcs: Implement IsSystemMoniker() for "new" moniker.
comsvcs: Implement Inverse() for "new" moniker.
ole32: Support BIND_OPTS3 in bind context.
mf: Add MFCreateVideoRendererActivate().
mfreadwrite/tests: Add some tests for "any"-stream requests.
comsvcs: Add GetTimeOfLastChange() for "new" moniker.
comsvcs: Add Enum() for "new" moniker.
comsvcs: Implement IPersistStream methods for "new" moniker.
comsvcs: Accept progid's when creating "new" monikers.
mfreadwrite: Use separate helpers for sync/async ReadSample().
mfreadwrite: Track source state in reader.
mfreadwrite: Return earlier on ReadSample() is stream is deselected.
ole32/tests: Remove Win9x workarounds from moniker tests.
shell32: Remove "stub" from traces.
ole32: Remove "stub" from traces.
msxml3: Remove "stub" from traces.
rpcss: Make initialization helper easier to extend.
rpcss: Implement interface to return sequential identifiers.
ole32: Reimplement CoGetCurrentProcess() to use global counter from rpcss.
ole32: Add separate enumerator implementation for IEnumSTATPROPSETSTG.
comsvcs: Implement BindToObject() for "new" moniker.
comsvcs/tests: Add some tests for "new" moniker interfaction with bind context.
comsvcs/tests: Get rid of global variable.
comsvcs: Add Reduce() for "new" moniker.
comsvcs: Add IROTData stub for "new" moniker.
comsvcs: Support progid in "new" moniker serialization stream.
comsvcs/tests: Remove traces from tests.
ole32: Add separate IEnumSTATPROPSTG implementation.
ole32: Return optional name in IEnumSTATPROPSTG::Next().
Paul Gofman (8):
d3dx9: Correctly handle NULL constant state for objects on 64 bit arch.
ddraw/tests: Add tests for alpha component in surface format conversions.
kernel32: Output a message in GetVolumeInformationW() when device has no read access.
wined3d: Check if destination texture has GPU access in glsl_blitter_supported().
wined3d: Use software decompression for converting from compressed format.
wined3d: Fixup alpha component in wined3d_texture_gl_upload_data().
ddraw/tests: Also test format conversion alpha for sysmem textures.
ddraw/tests: Backport test_surface_format_conversion_alpha() for ddraw4.
Piotr Caban (12):
msvcrt: Improve printf %I format support.
msvcrt: Enable printf %z, %t and %j formats.
msvcrt: Use %ls format for wchar strings in DoMessageBox.
ntdll: Work around futimens weak linking problem in set_file_times.
user32: Include png.h only if SONAME_LIBPNG is defined.
windowscodecs: Include png.h only if SONAME_LIBPNG is defined.
winebus: Reference PDOs added to DEVICE_RELATIONS structure.
winebus: Fix DEVICE_RELATIONS content on device removal.
ntoskrnl.exe: Store device state in volatile key.
ucrtbase: Set invalid parameter handler for all misc tests.
ucrtbase: Clean up strftime tests.
msvcrt: Call invalid parameter handler in strftime.
Rémi Bernon (21):
user32/tests: Wait and flush messages after window creation.
user32/tests: Add some wparam mask to message sequences for w1064v1809.
user32/tests: Update SetActiveWindow(0) test result for w1064v1809.
user32/tests: Skip tests expecting ascii VK wparam on non-us keyboards.
user32/tests: Add optional flags for alternative sequence on w1064v1809.
user32/tests: Flush remaining events before starting a new sequence.
user32/tests: Increase test_timers count tolerance on Windows.
user32/tests: Tweak test result for w1064v1809.
user32/tests: Synchronize with the SendMessageTimeout thread.
user32/tests: Close event at the end of the test_WaitForInputIdle test.
user32/tests: Ignore WM_WININICHANGE message in test sequences.
user32/tests: Make the test_PeekMessage3 timer fire less often.
user32/tests: Synchronize with other thread between SendMessage calls.
user32/tests: Wait longer for injected mouse event to take effect.
user32/tests: Add optional messages to test sequences.
dnsapi: Increase buffer size to fix format-overflow warning.
oleaut32: Increase buffer size to fix format-overflow warning.
winevdm: Increase buffer size to fix format-overflow warning.
opencl: Define CL_TARGET_OPENCL_VERSION 220 to fix a header warning.
winealsa.drv: Increase buffer size to fix format-overflow warning.
winmm: Fix int-to-pointer and pointer-to-int casts warnings.
Sven Baars (6):
shell32: Fix a memory leak (Valgrind).
urlmon/tests: Fix a test failure on Windows XP.
wintrust/tests: Initialize cbStruct in the ObjectTrust tests.
gdi32/tests: Update expected ExtCreateRegion behavior to represent newer Windows.
gdi32/tests: Remove some Win9x workarounds from the clipping tests.
d3dcompiler/tests: Fix some d3dcompiler_47 test failures on Windows 8.
Vijay Kiran Kamuju (1):
include: Add missing FOLDERID's to knownfolders.h.
Vincent Povirk (3):
mscoree: Update Wine Mono to 4.9.4.
Revert "mscoree: Call mono_thread_manage in GC Unsafe mode.".
msi: Use integers internally for MSIDBOPEN constants.
Zebediah Figura (56):
strmbase/transform: Reimplement IQualityControl for the source pin.
ntoskrnl.exe: Pass the correct output size to IoBuildDeviceIoControlRequest().
http.sys: Factor out get_connection().
http.sys: Allow receiving entity body data.
httpapi: Implement HttpReceiveRequestEntityBody().
d3d9/tests: Reorder two occlusion query tests to work around a timeout with llvmpipe.
d3d8/tests: Flush events after sending SC_MAXIMIZE.
userenv: Fix a copy-paste error.
userenv: Use wide character string literals.
userenv: Set the ProgramFiles(x86) and CommonProgramFiles(x86) environment variables.
userenv: Add a set_env_var() helper.
ntdll: Set the ProgramFiles(x86) and CommonProgramFiles(x86) environment variables.
ntoskrnl.exe: Implement many more properties in IoGetDeviceProperty().
ntoskrnl.exe: Stub IRP_MN_QUERY_CAPABILITIES for root-enumerated devices.
ntoskrnl.exe: Implement IRP_MN_QUERY_DEVICE_RELATIONS for root-enumerated devices.
ntoskrnl.exe: Trace the call to AddDevice().
ntdll: Fix a typo.
winebus.inf: Add new INF file and copy it to the INF directory.
winebus.sys: Implement AddDevice().
wineboot: Create a root-enumerated device object for winebus.
wine.inf: Remove registration for the winebus service.
winebus.sys: Initialize and teardown the HID backends while the bus FDO is still extant.
ntoskrnl.exe: IoInvalidateDeviceRelations() receives the parent PDO.
ntoskrnl.exe: BusRelations is also used when devices are removed.
winebus.sys: Stop creating a setupapi device.
d3d9/tests: Add another flush to work around an intermittent test failure on fvwm2.
wined3d: Introduce wined3d_stateblock_set_viewport().
d3d9: Handle stateblocks in d3d9_device_SetViewport().
d3d8: Handle stateblocks in d3d8_device_SetViewport().
ddraw: Handle stateblocks in d3d_device7_SetViewport().
configure: Install winebus.inf.
setupapi: Fix setting filepart in SetupCopyOEMInfW().
setupapi: Set the device class in SetupDiBuildDriverInfoList().
setupapi: Set the DeviceDesc value in SetupDiInstallDevice().
wined3d: Introduce wined3d_stateblock_set_scissor_rect().
d3d9: Handle stateblocks in d3d9_device_SetScissorRect().
wined3d: Introduce wined3d_stateblock_set_index_buffer().
d3d9: Handle stateblocks in d3d9_device_SetIndices().
wined3d: Introduce wined3d_stateblock_set_base_vertex_index().
d3d8: Handle stateblocks in d3d8_device_SetIndices().
wined3d: Introduce wined3d_stateblock_set_stream_source().
d3d9: Handle stateblocks in d3d9_device_SetStreamSource().
d3d8: Handle stateblocks in d3d8_device_SetStreamSource().
wined3d: Introduce wined3d_stateblock_set_stream_source_freq().
d3d9: Handle stateblocks in d3d9_device_SetStreamSourceFreq().
advapi32/tests: Remove a todo_wine.
wined3d: Introduce wined3d_stateblock_set_light().
d3d9: Handle stateblocks in d3d9_device_SetLight().
d3d8: Handle stateblocks in d3d8_device_SetLight().
ddraw: Handle stateblocks in d3d_device7_SetLight().
ddraw/tests: Expand test_coop_level_d3d_state().
wined3d: Also reset the device state to the default in wined3d_device_uninit_3d().
wined3d: Introduce wined3d_stateblock_set_light_enable().
d3d9: Handle stateblocks in d3d9_device_LightEnable().
d3d8: Handle stateblocks in d3d8_device_LightEnable().
ddraw: Handle stateblocks in d3d_device7_LightEnable().
Zhiyi Zhang (8):
winex11.drv: Introduce is_virtual_desktop().
winex11.drv: Use a separate virtual desktop display device handler.
winex11.drv: Get virtual desktop size limit from the host primary display.
winex11.drv: Move the desktop fullscreen check after desktop init.
winex11.drv: Fix NoRes mode handler having an empty mode.
user32/tests: Fix test failures on multiple monitor setup.
user32/tests: Fix monitor test failures on some systems.
d3d8: Fix incorrect types.
--
Alexandre Julliard
julliard(a)winehq.org