The Wine development release 6.3 is now available.
What's new in this release (see below for details):
- Better debugger support in the NT syscall interface.
- WineGStreamer library converted to PE.
- Still more WinRT support in WIDL.
- Optional support for build IDs.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.x/wine-6.3.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.x/wine-6.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 6.3 (total 24):
3591 py2exe needs partial imagehlp.BindImageEx implementation
17184 Achieve Planner 1.9.0 (.NET 1.1 app) requires explicit native override of mscoree.dll or mscoree.dll.StrongNameSignatureVerificationEx faking success
21234 Monopoly Deluxe (Zylom Games) v1.0 installer crash at the end of the installation
32742 Logos 4.x-9.x Bible software web-installer fails download files via BITS (client registered job notification callback not called)
35637 Seagate Crystal Enterprise 8.0: 'inputfileserver.exe' service needs msvcirt.dll.??0fstream@@QAE@XZ
40748 32-bit iTunes 12.1.3.6: Unusable UI
44629 Process Hacker can't enumerate handles [needs NtQuerySystemInformation(SystemExtendedHandleInformation)]
45132 CommonObjects tool (.NET app) from Google sandbox-attacksurface-analysis-tools v1.1.x needs 'ntdll.NtQuerySystemInformation' to support 'SystemExtendedHandleInformation'
45374 Yet Another Process Monitor (.NET 2.0 app) reports System.AccessViolationException ('ntdll.NtQueryObject' needs to support 'ObjectTypesInformation' info class)
46238 Cxbx crashes on unimplemented function vcomp140.dll.C2VectParallel
46962 Macromedia Director Player 4.x based games (16-bit NE) fail to run: "This program requires at least 4MB free memory to run." (The Rock)
47507 Regression: can't return to full-screen Civilization IV BTS window after Alt+Tab-ing to desktop since wine 4.10
48618 Multiple applications show black client area on startup (Wargaming.net Game Center, Electron based apps)('--disable-gpu' command line parameter is a workaround)
49689 WRC 4 crashes on loading a race (needs IXACT3EngineImpl_PrepareWave implementation)
50150 ODBC applications fail to create DSNs due to 'odbccp32.SQLWriteDSNToIni' stub
50581 Far Manager v3.0: cursor position is off by one
50620 Multiple applications crash due to DHTMLEdit 'IOleObject::GetMiscStatus' stub (Atomic Mail Sender 4.25, RSSeditor 0.9.54, High Impact eMail 5)
50652 Steam enters endless restarting cycle after launching any game
50653 Wine fails to build with clang-10.0 as a crosscompiler
50670 wineg++ cannot compile programs using shobjidl.h as of Wine 6.2
50672 .toString() implementation VT_CY behaves as if .toLocaleString() was used
50701 Multiple 32-bit ARM Thumb-2 applications cause loader to output warnings during relocation processing (Miranda, Notepad2)
50713 Commit a8856381ed9 ("ntdll: Use xsavec in x86_64 syscall dispatcher.") breaks 64-bit Wine (wine-6.2-264-ga8856381ed9)
50723 Can't recognize ... as an internal or external command, or batch script
----------------------------------------------------------------
Changes since 6.2:
Akihiro Sagawa (4):
ntdll: ObjectName should also be used in NtUnloadKey.
server: Prevent unloading a registry hive while the key is in use.
advapi32/tests: Add another key unloading test with NtUnloadKey.
krnl386.exe: Cap GetFreeSpace value to 2GB.
Alex Henrie (1):
iphlpapi: Use RtlIpv4AddressToStringA instead of inet_ntoa.
Alexandre Julliard (183):
server: Store a filename for memory views of .so dlls.
ntdll: Allocate the initial process parameters on the Unix side.
ntdll: Set the initial environment and command line in the process parameters on the Unix side.
ntdll: Also set the dynamic environment strings in the initial parameters.
ntdll: Reimplement local atom tables in user space.
server: Remove support for process-local handle tables.
server: Avoid redefining the DuplicateHandle() constants.
ntdll: Use the SECTION_IMAGE_INFORMATION bitfields where possible.
ntdll: Don't use wine/server.h from the PE side.
kernelbase: Don't use wine/server.h.
kernel32: Don't use wine/server.h.
krnl386.exe: Don't use wine/server.h.
ntdll: Remove no longer used inline function.
server: Merge the various token information queries.
winebuild: Add a --prefer-native option to set a Wine-specific flag in the PE header.
ntdll: Check the prefer-native flag in the PE header for default load order.
winedump: Print the "prefer native" Wine flag.
msvcrt40: Remove DLL_WINE_PREATTACH.
normaliz: Remove DLL_WINE_PREATTACH.
adsldpc: Use --prefer-native instead of DLL_WINE_PREATTACH.
bluetoothapis: Use --prefer-native instead of DLL_WINE_PREATTACH.
cryptdll: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3d8thk: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3dcompiler: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3dim: Use --prefer-native instead of DLL_WINE_PREATTACH.
dcomp: Use --prefer-native instead of DLL_WINE_PREATTACH.
esent: Use --prefer-native instead of DLL_WINE_PREATTACH.
feclient: Use --prefer-native instead of DLL_WINE_PREATTACH.
hid: Use --prefer-native instead of DLL_WINE_PREATTACH.
ksuser: Use --prefer-native instead of DLL_WINE_PREATTACH.
mapistub: Use --prefer-native instead of DLL_WINE_PREATTACH.
mscat32: Use --prefer-native instead of DLL_WINE_PREATTACH.
mscorwks: Use --prefer-native instead of DLL_WINE_PREATTACH.
msdelta: Use --prefer-native instead of DLL_WINE_PREATTACH.
msdrm: Use --prefer-native instead of DLL_WINE_PREATTACH.
msls31: Use --prefer-native instead of DLL_WINE_PREATTACH.
msports: Use --prefer-native instead of DLL_WINE_PREATTACH.
vcomp: Fix varargs calling conventions.
netutils: Use --prefer-native instead of DLL_WINE_PREATTACH.
npptools: Use --prefer-native instead of DLL_WINE_PREATTACH.
odbcbcp: Use --prefer-native instead of DLL_WINE_PREATTACH.
olethk32: Use --prefer-native instead of DLL_WINE_PREATTACH.
photometadatahandler: Use --prefer-native instead of DLL_WINE_PREATTACH.
regapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
resutils: Use --prefer-native instead of DLL_WINE_PREATTACH.
rtutils: Use --prefer-native instead of DLL_WINE_PREATTACH.
samlib: Use --prefer-native instead of DLL_WINE_PREATTACH.
sas: Use --prefer-native instead of DLL_WINE_PREATTACH.
scarddlg: Use --prefer-native instead of DLL_WINE_PREATTACH.
sfc: Use --prefer-native instead of DLL_WINE_PREATTACH.
srclient: Use --prefer-native instead of DLL_WINE_PREATTACH.
srvcli: Use --prefer-native instead of DLL_WINE_PREATTACH.
strmdll: Use --prefer-native instead of DLL_WINE_PREATTACH.
svrapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
utildll: Use --prefer-native instead of DLL_WINE_PREATTACH.
vulkan-1: Use --prefer-native instead of DLL_WINE_PREATTACH.
wdscore: Use --prefer-native instead of DLL_WINE_PREATTACH.
wlanui: Use --prefer-native instead of DLL_WINE_PREATTACH.
wmasf: Use --prefer-native instead of DLL_WINE_PREATTACH.
wuaueng: Use --prefer-native instead of DLL_WINE_PREATTACH.
xpsprint: Use --prefer-native instead of DLL_WINE_PREATTACH.
xpssvcs: Use --prefer-native instead of DLL_WINE_PREATTACH.
ntdll: Print the version mismatch error from the Unix side.
ntdll: Avoid sign conversion warnings in Thumb-2 relocation processing.
acledit: Use --prefer-native instead of DLL_WINE_PREATTACH.
aclui: Use --prefer-native instead of DLL_WINE_PREATTACH.
activeds: Use --prefer-native instead of DLL_WINE_PREATTACH.
apphelp: Use --prefer-native instead of DLL_WINE_PREATTACH.
atmlib: Use --prefer-native instead of DLL_WINE_PREATTACH.
authz: Use --prefer-native instead of DLL_WINE_PREATTACH.
avrt: Use --prefer-native instead of DLL_WINE_PREATTACH.
clusapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
compstui: Use --prefer-native instead of DLL_WINE_PREATTACH.
connect: Use --prefer-native instead of DLL_WINE_PREATTACH.
cryptext: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3drm: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3dx10: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3dx11: Use --prefer-native instead of DLL_WINE_PREATTACH.
d3dx9: Use --prefer-native instead of DLL_WINE_PREATTACH.
davclnt: Use --prefer-native instead of DLL_WINE_PREATTACH.
dhcpcsvc: Use --prefer-native instead of DLL_WINE_PREATTACH.
dpwsockx: Use --prefer-native instead of DLL_WINE_PREATTACH.
drmclien: Use --prefer-native instead of DLL_WINE_PREATTACH.
dwmapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
dxva2: Use --prefer-native instead of DLL_WINE_PREATTACH.
faultrep: Use --prefer-native instead of DLL_WINE_PREATTACH.
fltlib: Use --prefer-native instead of DLL_WINE_PREATTACH.
fntcache: Use --prefer-native instead of DLL_WINE_PREATTACH.
fontsub: Use --prefer-native instead of DLL_WINE_PREATTACH.
fwpuclnt: Use --prefer-native instead of DLL_WINE_PREATTACH.
glu32: Use --prefer-native instead of DLL_WINE_PREATTACH.
gpkcsp: Use --prefer-native instead of DLL_WINE_PREATTACH.
initpki: Use --prefer-native instead of DLL_WINE_PREATTACH.
inkobj: Use --prefer-native instead of DLL_WINE_PREATTACH.
itircl: Use --prefer-native instead of DLL_WINE_PREATTACH.
loadperf: Use --prefer-native instead of DLL_WINE_PREATTACH.
mfmediaengine: Use --prefer-native instead of DLL_WINE_PREATTACH.
mfplat: Use --prefer-native instead of DLL_WINE_PREATTACH.
mfplay: Use --prefer-native instead of DLL_WINE_PREATTACH.
mgmtapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
mprapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
msasn1: Use --prefer-native instead of DLL_WINE_PREATTACH.
msisip: Use --prefer-native instead of DLL_WINE_PREATTACH.
msnet32: Use --prefer-native instead of DLL_WINE_PREATTACH.
mspatcha: Use --prefer-native instead of DLL_WINE_PREATTACH.
mssign32: Use --prefer-native instead of DLL_WINE_PREATTACH.
mssip32: Use --prefer-native instead of DLL_WINE_PREATTACH.
msvcm: Use --prefer-native instead of DLL_WINE_PREATTACH.
ncrypt: Use --prefer-native instead of DLL_WINE_PREATTACH.
ninput: Use --prefer-native instead of DLL_WINE_PREATTACH.
ntdsapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
ntprint: Use --prefer-native instead of DLL_WINE_PREATTACH.
pdh: Use --prefer-native instead of DLL_WINE_PREATTACH.
pidgen: Use --prefer-native instead of DLL_WINE_PREATTACH.
printui: Use --prefer-native instead of DLL_WINE_PREATTACH.
prntvpt: Use --prefer-native instead of DLL_WINE_PREATTACH.
pstorec: Use --prefer-native instead of DLL_WINE_PREATTACH.
query: Use --prefer-native instead of DLL_WINE_PREATTACH.
qwave: Use --prefer-native instead of DLL_WINE_PREATTACH.
rasdlg: Use --prefer-native instead of DLL_WINE_PREATTACH.
rstrtmgr: Use --prefer-native instead of DLL_WINE_PREATTACH.
sccbase: Use --prefer-native instead of DLL_WINE_PREATTACH.
schannel: Use --prefer-native instead of DLL_WINE_PREATTACH.
sfc_os: Use --prefer-native instead of DLL_WINE_PREATTACH.
slbcsp: Use --prefer-native instead of DLL_WINE_PREATTACH.
slc: Use --prefer-native instead of DLL_WINE_PREATTACH.
sxs: Use --prefer-native instead of DLL_WINE_PREATTACH.
t2embed: Use --prefer-native instead of DLL_WINE_PREATTACH.
tdh: Use --prefer-native instead of DLL_WINE_PREATTACH.
traffic: Use --prefer-native instead of DLL_WINE_PREATTACH.
winebuild: Set Thumb bit in CPSR register on syscall entry.
winebuild: Fix relay entry points for Thumb mode.
winebuild: Simplify constant loading on ARM.
uiautomationcore: Use --prefer-native instead of DLL_WINE_PREATTACH.
url: Use --prefer-native instead of DLL_WINE_PREATTACH.
userenv: Use --prefer-native instead of DLL_WINE_PREATTACH.
vdmdbg: Use --prefer-native instead of DLL_WINE_PREATTACH.
virtdisk: Use --prefer-native instead of DLL_WINE_PREATTACH.
wer: Use --prefer-native instead of DLL_WINE_PREATTACH.
wevtapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
wimgapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
windowscodecsext: Use --prefer-native instead of DLL_WINE_PREATTACH.
winnls32: Use --prefer-native instead of DLL_WINE_PREATTACH.
winsta: Use --prefer-native instead of DLL_WINE_PREATTACH.
wlanapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
wmvcore: Use --prefer-native instead of DLL_WINE_PREATTACH.
wsnmp32: Use --prefer-native instead of DLL_WINE_PREATTACH.
xolehlp: Use --prefer-native instead of DLL_WINE_PREATTACH.
ntdll: Add a separate helper for creating the initial ntdll module.
ntdll: Relocate the PE ntdll if necessary.
ntdll: Initialize the ShowDotFiles option on the Unix side.
ntdll: Fix rounding the length of the runtime info parameter.
browseui: Use --prefer-native instead of DLL_WINE_PREATTACH.
credui: Use --prefer-native instead of DLL_WINE_PREATTACH.
cryptdlg: Use --prefer-native instead of DLL_WINE_PREATTACH.
cryptui: Use --prefer-native instead of DLL_WINE_PREATTACH.
evr: Use --prefer-native instead of DLL_WINE_PREATTACH.
hnetcfg: Use --prefer-native instead of DLL_WINE_PREATTACH.
inetcomm: Use --prefer-native instead of DLL_WINE_PREATTACH.
inetcpl.cpl: Use --prefer-native instead of DLL_WINE_PREATTACH.
joy.cpl: Use --prefer-native instead of DLL_WINE_PREATTACH.
localspl: Use --prefer-native instead of DLL_WINE_PREATTACH.
mscoree: Use --prefer-native instead of DLL_WINE_PREATTACH.
msctf: Use --prefer-native instead of DLL_WINE_PREATTACH.
msftedit: Use --prefer-native instead of DLL_WINE_PREATTACH.
msident: Use --prefer-native instead of DLL_WINE_PREATTACH.
msscript.ocx: Use --prefer-native instead of DLL_WINE_PREATTACH.
msvcirt: Use --prefer-native instead of DLL_WINE_PREATTACH.
msvcp60: Use --prefer-native instead of DLL_WINE_PREATTACH.
openal32: Use --prefer-native instead of DLL_WINE_PREATTACH.
scrobj: Use --prefer-native instead of DLL_WINE_PREATTACH.
scrrun: Use --prefer-native instead of DLL_WINE_PREATTACH.
shcore: Use --prefer-native instead of DLL_WINE_PREATTACH.
snmpapi: Use --prefer-native instead of DLL_WINE_PREATTACH.
spoolss: Use --prefer-native instead of DLL_WINE_PREATTACH.
sti: Use --prefer-native instead of DLL_WINE_PREATTACH.
vbscript: Use --prefer-native instead of DLL_WINE_PREATTACH.
wmiutils: Use --prefer-native instead of DLL_WINE_PREATTACH.
wmp: Use --prefer-native instead of DLL_WINE_PREATTACH.
wmphoto: Use --prefer-native instead of DLL_WINE_PREATTACH.
wshom.ocx: Use --prefer-native instead of DLL_WINE_PREATTACH.
ntdll: Don't set runtime info at all if it's empty.
ntdll: Get rid of attach_implicitly_loaded_dlls().
Alistair Leslie-Hughes (14):
msado15: _Recordset get_Fields support rowset.
msado15: Semi-implement _Connection Execute.
odbccp32: Implement SQLWriteDSNToIni/W.
xactengine3_7: Implement IXACT3Engine PrepareWave.
msado15: Add helper function to create CommandText interface.
include: Add more SQL_ defines.
msado15: Semi-stub _Recordset Open.
msado15: Implement Dispatch functions in _Connection.
msado15: Implement Dispatch functions in _Command.
msado15: Implement Dispatch functions in _Stream.
msado15: Implement Dispatch functions in Field.
msado15: Implement Dispatch functions in Fields.
msado15: Implement Dispatch functions in _Recordset.
msado15: Implement Dispatch functions in ADORecordsetConstruction.
Andrew Boyarshin (1):
widl: Support midl_pragma default option.
Anton Baskanov (4):
quartz/tests: Add tests for IMediaEventEx::SetNotifyFlags.
quartz/tests: Add tests for event notifications.
quartz: Do not send events when notifications are disabled.
quartz: Reset the event if the queue was empty in IMediaEvent::GetEvent().
Arkadiusz Hiler (1):
winebus.sys: Remove incorrect Report ID from the bus_sdl HID report descriptor.
Bernhard Reiter (1):
imagehlp: Partially implement BindImageEx().
Damjan Jovanovic (1):
wldap32: Implement setting the LDAP_OPT_REFERRALS option.
Derek Lesho (1):
winegstreamer: Implement IMFMediaSource::Stop.
Dmitry Timoshkov (1):
include/winnt.h: Fix arguments order for _InterlockedCompareExchange64() MSVC intrinsic.
Doug Kingston (1):
winealsa: Add card number to duplicate device descriptions.
Erich Hoover (6):
ntdll: Use st_rdev for special devices in get_mountmgr_fs_info.
server: Allow volume information queries to be asynchronous.
ntdll: Allow NtQueryVolumeInformationFile to make async volume information queries.
ntoskrnl.exe: Implement volume information queries for device files.
mountmgr.sys: Add support for volume information queries.
kernelbase: Reimplement GetVolumeInformation on top of GetVolumeInformationByHandle.
Esme Povirk (1):
mscoree: Remove individual vtable fixup traces.
Floris Renaud (1):
po: Update Dutch translation.
François Gouget (3):
tests: Trace the filename in winetest_wait_child_process().
tests: Add ignore_exceptions().
kernel32/tests: Ignore exceptions while testing winedbg.
Gerald Pfeifer (1):
iphlpapi: Include <netinet/in.h> in ifenum.c.
Gijs Vermeulen (1):
msvcirt: Implement remainder of fstream class.
Hans Leidekker (2):
secur32/tests: Add tests for renegotiating an SSL connection.
winhttp/tests: Add tests for client certificate authentication.
Henri Verbeet (10):
d3d11: Advertise support for shader model 4 compute shaders if compute shaders are supported.
wined3d: Recognise the read-only depth/stencil view flags in wined3d_debug_view_desc().
wined3d: Introduce a backup path for swapchain presents using GDI.
wined3d: Do not fail swapchain creation in wined3d_swapchain_vk_init() if a Vulkan swapchain could not be created.
wined3d: Unbind framebuffer state in state_unbind_resources().
d3d11: Implement d3d11_immediate_context_SwapDeviceContextState() on top of wined3d_device_set_state().
d3d10core/tests: Add a test for layered clears.
d3d11/tests: Add a test for layered clears.
wined3d: Allow layered clears.
wined3d: Load/invalidate entire views in ffp_blitter_clear_rendertargets().
Hugh McMaster (17):
reg/tests: Check for elevated privileges before cleaning up the Windows 3.1 test key and running unit tests.
reg/tests: Ensure test key is fully removed before each sequence begins.
reg/tests: Move /v* syntax tests to the 'add' and 'delete' test sequences.
reg/tests: Check for key non-existence with verify_key_nonexist().
reg/tests: Always overwrite export test file during 'export' sequence.
reg/tests: Verify registry export after each empty key test.
reg/tests: Replace RegCloseKey() with the helper function close_key().
reg/tests: Add additional tests with embedded NUL characters.
reg/tests: Add tests for forward and back slashes in key and value names.
regedit/tests: Check for elevated privileges before cleaning up the Windows 3.1 test key and running unit tests.
regedit/tests: Ensure test key is fully removed before each sequence begins.
regedit/tests: Replace RegCloseKey() with the helper function close_key().
regedit/tests: Use delete_key() and delete_tree() where possible.
regedit/tests: Add additional tests with embedded NUL characters.
regedit/tests: Add tests for forward and back slashes in key and value names.
regedit/tests: Comprehensively check for elevated privileges before starting tests.
regedit/tests: Remove elevated user checks from the Windows 3.1 test sequences.
Jacek Caban (34):
oleaut32: Use C locale in VARIANT_BstrFromReal.
conhost: Avoid assumption about the exact Unix cursor position after writing to the last column.
ntdll: Store entire XMM context in x86_64 syscall frame.
winebuild: Remove no longer needed stack alignment in x86_64 syscall dispatcher.
ntdll: Reserve space for all registers in x86_64 syscall frame.
ntdll: Store eflags in x86_64 syscall frame.
ntdll: Store instruction pointer register in x86_64 syscall frame.
ntdll: Store stack pointer in x86_64 syscall frame.
ntdll: Store segment registers in x86_64 syscall frame.
ntdll: Use syscall frame for volatile registers in x64_64 NtGetContextThread.
winebuild: Restore all x86_64 control registers in syscall dispatcher.
winebuild: Restore x86_64 FPU context and nonvolatile registers in syscall dispatcher.
mshtml: Add nsICacheInfoChannel stub implementation.
winegcc: Properly set debug info type on msvc targets.
ntdll: Introduce signal_init_syscalls.
winebuild: Factor out output_syscall_dispatcher.
ntdll: Store x86_64 YMM context in syscall frame.
ntdll: Use syscall frame for x86_64 YMM context in NtGetContextThread.
ntdll: Use syscall frames in x86_64 NtSetContextThread implementation.
ntdll: Use NtContinue in NtRaiseException.
ntdll: Use NtContinue in RtlRestoreContext.
ntdll: Use syscall dispatcher for restoring context in x86_64 NtSetContextThread implementation.
ntdll: Use xsavec in x86_64 syscall dispatcher.
ntdll: Use syscall frame in x86_64 call_raise_user_exception_dispatcher implementation.
ntdll: Don't use FeatureSet for XSAVE compaction support flag.
ntdll: Use the right cpuid for XSAVEC detection.
ntdll: Fix compacted legacy xsave area handling.
ntdll: Reserve space for full i386 context in syscall frame.
ntdll: Store all non-volatile i386 registers in syscall dispatcher.
ntdll: Use syscall frame in x86 set_full_cpu_context implementation.
include: Fix __dmb declaration.
include: Add MSVC ARM version of NtCurrentTeb.
include: Use GCC-style InterlockedCompareExchange128 implementation on clang in MSVC mode.
ntdll: Use cpu_info to check for AVX availability.
Jactry Zeng (1):
include: Avoid using C++ keyword.
Jefferson Carpenter (1):
msxml3/tests: Test mxwriter domdoc output.
Jérôme Gardou (1):
msi: Remove read-only bit when copying the package file.
Liam Middlebrook (2):
winevulkan: Handle bitmask types backed by VkFlags64.
winevulkan: Update to VK spec version 1.2.170.
Michael Müller (1):
ntdll: Implement NtQuerySystemInformation(SystemExtendedHandleInformation).
Nicholas Fraser (1):
configure: Add --enable-build-id option.
Nikolay Sivov (35):
mfplat: Fix use-after-free when releasing sample allocator.
mfplat: Handle tracked sample release condition separately from refcount update.
mfplat/allocator: Handle bind flags and usage attributes.
mfplat: Unify trace format for device manager methods.
dwrite: Pass features to stage functions.
dwrite/layout: Split run shaping between two helpers.
dwrite/layout: Grow output buffer on GetGlyphs() failure.
dwrite: Always initialize output glyph count in GetGlyphs().
dwrite: Fix character range to glyph range matching for user features.
dwrite/layout: Pass user features to shaping calls.
mfreadwrite/reader: Subscribe to allocator's release notifications.
mfreadwrite/reader: Add support for reading to SA-allocated samples.
mf/tests: Add a sample copier test for sample fields handling.
dwrite/layout: Check text range boundaries when setting properties.
dwrite/layout: Remove unnecessary argument check from GetPairKerning().
dwrite/layout: Remove unnecessary argument check from GetInlineObject().
dwrite/layout: Remove unnecessary argument check from GetFontWeight().
dwrite/layout: Remove unnecessary argument check from GetFontCollection().
mf/tests: Skip some tests on missing function.
dwrite: Correct return glyph origins for RTL runs.
dwrite: Use correct glyph origins during rendering.
dwrite: Use newer analyzer interface internally.
dwrite/layout: Add support for character spacing attributes.
winegstreamer: Fully initialize MF object creation context.
dwrite: Remove unused function.
mf/tests: Skip all tests on Vista.
wbemprox: Implement WbemContext stub.
wbemdisp: Add SWbemNamedValueSet stub.
wbemprox: Implement GetValue()/SetValue() for context object.
wbemdisp: Use context object internally for named value set.
wbemdisp: Add Methods() collection stub.
wbemdisp: Add a stub implementation of a method object.
wbemprox: Set iterator for spawned instances.
wbemdisp: Implement InParameters() property for a method object.
wbemdisp: Handle DISPATCH_PROPERTYPUT in scripting object Invoke().
Paul Gofman (7):
vcomp: Change _vcomp_fork_call_wrapper() args parameter type to void **.
vcomp: Implement C2VectParallel().
vcomp110: Add test for C2VectParallel().
msvcrt: Ignore inherited FDs with invalid handles in msvcrt_init_io().
ddraw/tests: Also test RT caps for software device.
advapi32: Return ERROR_INVALID_PARAMETER for invalid crypt objects' handles.
advapi32: Handle exceptions from dereferencing invalid crypt objects' handles.
Piotr Caban (2):
msvcrt: Improve asinf compatibility with native ucrtbase.
msvcrt: Improve acosf compatibility with native ucrtbase.
Rémi Bernon (30):
plugplay: Broadcast WM_DEVICECHANGE message asynchronously.
d3d11: Make SwapDeviceContextState truly no-op when state is NULL.
d3d11: Create an initial device ID3DDeviceContextState.
widl: Rename ifref_t iface member to type.
widl: Rename ifref_t to typeref_t.
widl: Rename ifref_list_t to typeref_list_t.
widl: Replace type_list_t with typeref_list_t.
widl: Support partially specialized parameterized type.
widl: Support WinRT parameterized interface type.
user32/tests: Add more tests for GetKeyState from background thread.
user32/tests: Add tests for GetKeyState / GetKeyboardState interactions.
user32/tests: Add tests for SetKeyboardState / GetKeyState interactions.
widl: Support WinRT delegate type.
widl: Support WinRT parameterized delegate type.
widl: Compute signatures for parameterized types.
widl: Compute uuids for parameterized types.
secur32: Return STREAM_HEADER/TRAILER buffers on SEC_I_RENEGOTIATE.
wined3d: Use a separate allocation for the device state.
wined3d: Introduce public API to set a wined3d_state object on a device.
d3d11: Always return the rectangle count in d3d11_immediate_context_RSGetScissorRects().
winex11.drv: Don't assume that GenericEvent has a window.
include: Split Windows.Foundation.Collections parameterized types.
include: Add AggregateType / GetAbiType / GetLogicalType WinRT templates.
widl: Write C++ template declarations for parameterized types.
widl: Write C++ template implementations for parameterized types.
widl: Use C++ template implementation for parameterized types.
widl: Fix C++ RuntimeClass string constants declaration.
widl: Make WinRT nested templates C++98 compatible.
widl: Strip last separator in append_namespaces if suffix is NULL.
widl: Generate helper macros for WinRT implementation.
Steve Lhomme (4):
widl: Never use the namespace ABI prefix for global types.
widl: Precompute qualified type names, and use them for C++ interfaces.
widl: Define the C type name as an alias for the C++ qualified name.
widl: Use C name when writing UUID declarations.
Torge Matthies (1):
server: Fix page size calculation in write access check.
Vijay Kiran Kamuju (2):
dhtmled.ocx: Add registration script.
dhtmled.ocx: Implement IOleObject::GetMiscStatus function.
Zebediah Figura (67):
winegstreamer: Pass the wg_parser object to gst_bus_set_sync_handler().
winegstreamer: Move filter initialization out of GST_Connect().
winegstreamer: Move GST_Connect() to the Unix library.
winegstreamer: Move wg_parser sink disconnection code to the Unix library.
winegstreamer: Retrieve wg_parser streams through Unix library functions.
winegstreamer: Do not compare FPS in wg_format_compare().
imagehlp/tests: Link directly to imagehlp and psapi.
imagehlp/tests: Use ImageNtHeader instead of RtlImageNtHeader.
imagehlp/tests: Rewrite test_bind_image_ex() using a DLL resource.
winegstreamer: Retrieve the preferred format through a Unix library function.
winegstreamer: Set the stream's current format and connected state through Unix library functions.
winegstreamer: Move get_stream_event() to the Unix library.
winegstreamer: Move wg_parser flushing to the Unix library.
winegstreamer: Move QoS notification to the Unix library.
advapi32/tests: Rename test_sid() to test_ConvertStringSidToSid().
advapi32/tests: Get rid of the test_luid() helper.
advapi32/tests: Rename test_acls() to test_InitializeAcl().
advapi32/tests: Explicitly test the ACL contents in test_AddMandatoryAce().
advapi32/tests: Skip test_token_label() if AddMandatoryAce() is not present.
winegstreamer: Move seeking to the Unix library.
winegstreamer: Move videoflip configuration to wg_parser_stream_set_current_format().
winegstreamer: Use wg_parser_stream_seek() in GST_ChangeRate().
winegstreamer: Map the output sample buffer in the Unix library.
winegstreamer: Avoid using gst_util_uint64_scale() in send_sample().
winegstreamer: Retrieve and complete read requests through Unix library functions.
advapi32/tests: Add a few tests for GetKernelObjectSecurity() parameter validation.
advapi32/tests: Add some tests for token elevation.
ntdll: Implement NtQueryInformationToken(TokenElevationType).
ntdll: Implement NtQueryInformationToken(TokenLinkedToken).
ntdll: Implement NtQueryInformationToken(TokenElevation).
winegstreamer: Move GST_BUFFER_OFFSET_NONE handling to the Unix library.
winegstreamer: Move the EOS handling from read_buffer() to the Unix library.
winegstreamer: Map the read buffer in the Unix library.
winegstreamer: Access the stream duration through a Unix library function.
winegstreamer: Avoid accessing "parser->container" from gstdemux.c.
winegstreamer: Move the wg_parser and wg_parser_stream definitions to wg_parser.c.
ntdll: Fill the handle attributes in System(Extended)HandleInformation.
ntdll: Fill the object type index in System(Extended)HandleInformation.
winegstreamer: Manually track read offsets in the media source.
winegstreamer: Manage our own thread for read requests in the media source.
winegstreamer: Explicitly translate the channel mask.
winegstreamer: Reimplement the media source on top of the wg_parser object.
quartz/tests: Add more tests for media events.
quartz: Use the graph critical section to synchronize media event methods.
quartz: Use a linked list to store media events.
quartz: Inline the WndNotify structure into struct filter_graph.
quartz: Clear pending events when disabling notifications.
quartz: Remove EC_COMPLETE from the queue when starting the graph.
winegstreamer: Use ULONGLONG instead of uint64_t in Unix library interface structures.
winegstreamer: Build with msvcrt.
quartz: Use free() to free the "pszFileName" member.
winegstreamer: Use wide-char string literals.
winegstreamer: Use malloc() instead of HeapAlloc().
winegstreamer: Remove some redundant includes.
winegstreamer: Don't export DllMain().
winegstreamer: Rename gstdemux.c to quartz_parser.c.
winegstreamer: Link to strmbase.
ntdll/tests: Avoid passing an uninitialized timeout to NtNotifyChangeKey().
winegstreamer: Rename some callbacks to more closely match GStreamer terminology.
winegstreamer: Rename some callbacks to explicitly show they are callbacks.
winegstreamer: Inline init_new_decoded_pad() into pad_added_cb().
winegstreamer: Don't make the pad caps writable in pad_added_cb().
winegstreamer: Rename gst_base_src_perform_seek() to src_perform_seek().
kernel32/tests: Add a test for async cancellation due to process exit.
server: Always set the async result when the APC object is destroyed.
quartz/vmr9: Don't release the default presenter object if it could not be created.
d3d12: Check for VK_KHR_external_memory_capabilities before using VkPhysicalDeviceIDProperties.
Zhiyi Zhang (11):
user32: Send a WM_ACTIVATE message after restoring a minimized top level window.
ntoskrnl.exe: Exclude large integer APIs from relay tracing.
user32/tests: Fix a test failure on w7u_2qxl TestBot VM.
user32/tests: Add optional messages to test sequences.
comctl32/ipaddress: Only print an error when it actually occurs.
comctl32/theme_scrollbar: Remove an unused variable.
comctl32/button: Turn off themed painting if parts are unavailable for Command Links.
uxtheme: Add Command Link part and state definitions.
uxtheme: Support more font properties.
uxtheme: Support DTT_FONTPROP for DrawThemeTextEx().
uxtheme: Remove unused code.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.2 is now available.
What's new in this release (see below for details):
- Mono engine updated to version 6.0.0, with DirectX support.
- Support for NTDLL debugger APIs.
- More WinRT support in WIDL.
- Xbox One controller fixes on Mac.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.x/wine-6.2.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.x/wine-6.2.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 6.2 (total 51):
8692 Multiple applications have non-working shell32 ShellView context menu items (Directory Opus 9 with Amiga Explorer Shell Extension, Total Commander 7.x)
22242 Paint.NET 3.5.4 installer fails with Wine-Mono
22439 Paint.NET 2.5 EULA is garbled with Wine-Mono
22635 Earth 2160 (GOG.com) can't recognize serial number
23094 Multiple application installers abort with 'runtime error R6034' (Microsoft VC++ 2008 MFC runtime and manifest missing)(AVATAR Demo, iNodeSetup 3.60, QQPlayer 3.1)
23999 Multiple applications with DRM schemes need NtQueryVirtualMemory 'MemorySectionName' info class (Crossfire HGWC, EMS SQL Manager 2010 Lite for PostgreSQL v.4.7.08, Cygwin/MSYS2, Knight Online client)
27248 Multiple games and applications need K32GetMappedFileNameW implemented (Riot Games' Valorant, Chrome Browser, Yumina the Ethereal)
28786 Wine File Explorer tree does not expand when clicked on plus '+' signs
28927 Wabbitcode 0.5.x (Z80 Assembly IDE) (.NET 4.0 app) fails to start with Wine-Mono
29709 Multiple applications crash due to missing 'dhtmled.ocx', DHTMLEdit object (Atomic Mail Sender 4.25, RSSeditor 0.9.54, High Impact eMail 5)
36791 Foxit Reader 6.2.0.0429 reports "File not found." when trying to open file via "recent files" on start page
36792 Foxit Reader 6.2 fails to maximize using 'maximize' button after double clicking top window bar / title bar to maximize and restore app window
37510 Foxit Reader 7.0.3.916 copy and paste of single or multiple annotations doesn't work
37751 WiX Toolset v3.9 installer doesn't open with Wine-Mono (metahostpolicy_GetRequestedRuntime returns CLR_E_SHIM_RUNTIME)
37842 Multiple .NET 4.0 applications crash when clipboard is accessed from multiple threads (OLE clipboard must take MTA into account)(PTC Mathcad Prime 3.0, PaintRibbon 1.x, Jeskola Buzz)
39993 OllyDbg 2.x: Manually changed FPU registers are reset to original values after single step (F7)
40008 OllyDbg 2.x hangs when trying to pause debuggee
40571 Google SketchUp 13 crashes when printing multiple consecutive times
40837 Kingsoft PC Doctor crashes while starting
42353 OllyDbg 2.x: Step In (F7) on a "jump to self" instruction never stops if it's the first instruction executed by debuggee
43422 Shadow Warrior 2: Floors are not rendered
43840 Sketchup 2017: clicking 'Ok' in 'Print Preview' or 'Print' dialog doesn't do anything (err:commdlg:PRINTDLG_ChangePrinterW DocumentProperties fails on '<printer>')
44038 RPCS3 emulator crashes due to 'kernel32.SetFileInformationByHandle' lacking support of 'FileEndOfFileInfo' info class
44826 MS Word 2013/2016 does not support Arabic text shaping in document area
46234 explorer /desktop leaks global atoms when creating desktop window
46709 VarFormatCurrency doesn't handle an already formatted string.
48323 scanf functions do not support NaN for floating point elements
48563 Runaway: A Twist of Fate renders its cursor incorrectly
48848 Python apps/scripts using 'pywinutils.delete' fail due to unimplemented COM object {3ad05575-8857-4850-9277-11b85bdb8e09}. IFileOperation in ShObjIdl_core.h
49694 mc.exe: UTF-16 decoding does not use UTF-16LE by default, breaking files without a BOM
49849 system("CLS") doesn't work
49936 modal dialog box behaves modeless
50195 x64dbg snapshots >= 2020-11-12_05-12 need ntdll.dll.NtDebugActiveProcess implementation to debug process via attach
50380 INSIDE ground texture is glitchy with Vulkan renderer
50401 Multiple Adobe products crash on unimplemented function msvcp{100,110,120,140}.dll._Wcsxfrm (Audition CS6, Audition 2020)
50407 Multiple Adobe CC products fail to start, reporting 'err:module:LdrInitializeThunk "CRClient.dll" failed to initialize' ('_Syserror_map' should return non-NULL string for unknown errors)
50409 Adobe Audition 2020 crashes on startup (msvcrt strftime_impl uses __lc_time_data struct WCHAR members but only ANSI members have been initialized by _Gettnames)
50424 std::mutex crashes on creation
50429 Serious Sam Engine / Serious Sam Classic broken MP with math functions from musl
50441 Steel Series Engine 3 systray icon does not respond to mouse clicks
50528 [Stasis 2]Broken rendering with Vulkan
50562 WRC 5 crashes on launch with Vulkan renderer
50564 Ryse: Son of Rome has broken shadows with Vulkan renderer
50565 Hitman: Absolution has broken rendering with Vulkan renderer
50569 World of Tanks ground texture is black rendered
50580 iTunes 12.11.0.26 installer doesn't recognize WinVer 'Windows 10' setting (WMI 'Win32_OperatingSystem' class uses 'GetVersionEx' API to retrieve OS version info, a deprecated API in Windows 10)
50599 Game Protect Kit (GPK) 'SDGame32.sys' kernel driver crashes on unimplemented function 'ntoskrnl.exe.KdDisableDebugger' (Dragon Nest)
50602 Far Manager redraws incorrectly after console window is resized
50610 WMI 'Win32_OperatingSystem' OS caption property descriptions for Windows 8 and 8.1 are reversed
50622 wldap32 calls Linux libraries with wrong conventions
50647 i386 DLL image icudt59.dll causes trouble on load on x86_64 ever since COR header update.
----------------------------------------------------------------
Changes since 6.1:
Akihiro Sagawa (2):
winmm/tests: Strictly test returned time format of waveInGetPostion().
winmm/tests: Get rid of unused functions.
Alexandre Julliard (44):
ntdll: Pass a debug object in the new_process request.
ntdll: Implement NtDebugActiveProcess() and NtRemoveProcessDebug().
ntdll: Implement NtSetInformationDebugObject().
ntdll: Implement NtDebugContinue().
ntdll: Implement DbgUiConvertStateChangeStructure().
ntdll: Implement NtWaitForDebugEvent().
server: Don't store the debug object in the debugger thread.
ntdll: Load the main module before the other dlls.
server: Fetch the data for the debug events from the process memory views.
server: Add a separate request to initialize the first thread of a process.
server: Move the ldt_copy pointer to the init_first_thread request.
ntdll/tests: Add tests for a few more object types.
include: Add a couple of access right flags.
gdi32/tests: Regenerate ttf files with the official fontforge version.
gdiplus/tests: Regenerate ttf files with the official fontforge version.
gdi32: Cache the codepage tables also for OpenType names mapping.
ntdll: Fix loading of section table in get_cor_header().
ntdll/tests: Fix a couple of test failures on older Windows versions.
server: Add a data type for generic access mappings.
server: Add a type descriptor to all server objects.
server: Add support for object counts in the object type information.
libwine: Don't define obsolete functions on non-x86 platforms.
server: Add generic mapping masks for all object types.
server: Use the object type information to implement access mapping.
server: Add a request to return all object types.
ntdll/tests: Add more tests for object types.
server: Implement retrieving the debug object of a process.
server: Get the process entry point from the exe image info.
ntdll: Pass the full NT path name to load_builtin_dll().
ntdll: Pass the NT name in the create_file request.
ntdll: Pass the NT name in the set_fd_name_info request.
server: Store the NT name in the fd object.
server: Return the NT name for the ProcessImageFileName query.
server: Return the NT name for the list_processes request.
server: Implement NtQueryVirtualMemory(MemorySectionName).
ntdll/tests: Add some tests for NtQueryVirtualMemory(MemorySectionName).
kernelbase: Also export the non-K32 names for the psapi functions.
kernelbase: Implement GetMappedFileNameA/W.
server: Use TEB->ArbitraryUserPointer to store the loaded dll names.
server: Report load dll events upon mapping a SEC_IMAGE view.
ntdll: Close the debug port on thread exit.
ntdll/tests: Relax a broken result on Windows.
server: Remove the load/unload_dll requests and the dll list.
kernel32/tests: Load GetMappedFileNameW() dynamically.
Alistair Leslie-Hughes (1):
include: Add mulres.idl.
Andrew Boyarshin (1):
widl: Fix handling of output_name in option parsing.
Andrew Eikum (1):
mmdevapi: Implement SpatialAudio features.
Andrey Gusev (1):
wined3d: Add AMD Radeon RX 5500M.
André Hentschel (2):
include: Make sure __int64 is correctly defined on PPC64.
wrc: Add PPC64 support.
Arkadiusz Hiler (1):
mmdevapi: Add SpatialAudio tests.
Austin English (1):
ntoskrnl.exe: Add KdDisableDebugger/KdEnableDebugger stubs.
Brendan Shanks (5):
dinput: Fix Xbox One controller D-pad on Mac.
dinput: Enable Xbox One controller View and Xbox buttons on Mac.
dinput: On Mac, always use both HID usage page and usage for comparisons.
dinput: Map Xbox One controller triggers (accelerator/brake) to Rx/Ry on Mac.
ntdll: Always use MAP_FAILED as mmap()'s error value.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Chao Long (1):
gdiplus/metafile: Implement GdipRecordMetafileFileName.
Christian Costa (1):
d3dx9: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for 32 bpp BMP with alpha.
Damjan Jovanovic (1):
wldap32: Cyrus SASL's sasl_interact_t.result should be null-terminated.
Daniel Lehman (1):
include: Fix [v]sprintf_s declarations.
David Koolhoven (1):
ntdll: Don't try to convert module to 64-bit if it doesn't contain code.
Dmitry Timoshkov (7):
wevtapi: Return fake handle from EvtOpenChannelConfig.
wevtapi: Return TRUE from EvtSetChannelConfigProperty.
wevtapi: Add EvtSaveChannelConfig() stub.
ntdll: Exclude large integer APIs from relay tracing.
wevtapi: Add EvtGetChannelConfigProperty(EvtChannelLoggingConfigLogFilePath) stub implementation.
wevtapi/tests: Add some EvtGetChannelConfigProperty() tests.
shell32: IPersistFile::Save(NULL) should use previously stored file name.
Erich Hoover (2):
mountmgr.sys: Have harddisk_ioctl return the same status as the IoStatus.
mountmgr.sys: Have mountmgr_ioctl return the same status as the IoStatus.
Esme Povirk (1):
mscoree: Update Wine Mono to 6.0.0.
Floris Renaud (1):
po: Fix Dutch spelling errors.
François Gouget (2):
windowscodecs/tests: Fix a typo in a variable name.
user32: Fix a typo in a comment.
Gabriel Ivăncescu (3):
gdi32: ExtTextOut should fail if count is larger than INT_MAX.
user32/tests: Test minimized window placement after trying to change position.
user32: Keep toplevel minimized windows offscreen if they're already.
Georg Lehmann (2):
winevulkan: Fix vkDestroyDebugUtilsMessengerEXT with NULL object.
winevulkan: Fix vkDestroyDebugReportCallbackEXT with NULL object.
Hans Leidekker (4):
wbemprox: Report the real OS version.
wbemprox: Fix Windows 8/8.1 caption.
wldap32: Convert berval structures.
wbemprox: Implement Win32_LogicalDisk.Caption.
Haoyang Chen (2):
gdiplus: Avoid negative integer overflow due to implicit type conversion.
gdiplus/tests: Test image brush transformation.
Henri Verbeet (11):
wined3d: Invalidate STATE_STENCIL_REF when switching between NULL and non-NULL depth/stencil views.
d3d11/tests: Add format compatibility tests for DXGI_FORMAT_R9G9B9E5_SHAREDEXP.
d3d10core/tests: Add format compatibility tests for DXGI_FORMAT_R9G9B9E5_SHAREDEXP.
d3d11/tests: Add format compatibility tests for compressed formats.
d3d10core/tests: Add format compatibility tests for compressed formats.
wined3d: Allow resource copies between block-compatible formats.
wined3d: Use the format block dimensions to construct the destination box for sub-resource region copies.
wined3d: Compare resource sizes in blocks in wined3d_device_copy_resource().
wined3d: Construct a separate source box in wined3d_device_copy_resource().
wined3d: Create the backbuffer rendertarget view only after calling adapter_init_3d().
wined3d: Add some TRACEs to command stream callbacks.
Hugh McMaster (1):
reg/tests: Add initial syntax tests for 'reg copy'.
Jacek Caban (5):
kernelbase: Support FileEndOfFileInfo in SetFileInformationByHandle.
mshtml: Move load_gecko() call from DllRegisterServer to DllInstall.
include: Add relogger.idl file.
winebuild: Use lld-link for static libraries on msvc target.
winebuild: Don't use llvm-lib to build static libs containing importlibs.
Jactry Zeng (2):
include: Add IFileOperation interface.
shell32: Implement IFileOperation stub.
Jan Sikorski (7):
wined3d: Store stencil reference value in wined3d_state.
wined3d: Check for stencil reference change in vulkan backend.
wined3d: Added missing states to debug_d3dstate().
wined3d: Align vertex attribute offsets to their size, if smaller than 4.
wined3d: Return E_INVALIDARG from vertexdeclaration_init() on validation failure.
d3d10core/tests: Add input layout alignment tests.
d3d11/tests: Add input layout alignment tests.
Jefferson Carpenter (1):
msxml3: Fold in reset_output_buffer.
Michael Müller (3):
kernel32: Add sr-Latn-RS locale definition.
kernel32: Update sr-Latn locale definition.
server: Grant the same access rights when req->access is zero in duplicate_token.
Nikolay Sivov (45):
gdiplus/metafile: Fix copy-paste typo when setting resolution (Coverity).
mf: Add shutdown state for the standard quality manager.
mf: Subscribe standard quality manager to clock state change events.
mf: Implement NotifyTopology() for the standard quality manager.
mfplat: Add a few MF_SA_* attributes for tracing.
mf/tests: Add some more tests for video processor transform.
mfreadwrite: Fix vtable variables types.
dwrite: Fix vtable variables types.
d2d1/tests: Add return value test (Coverity).
mfplat/tests: Add some tests for D3D11-aware sample allocator.
mfplat/tests: Test texture parameters used by sample allocator.
mf: Add missing const for vtable structures.
mfmediaengine: Fix vtable variables types.
mf/topology: Improve error handling when connecting sample copier node (Coverity).
evr/allocator: Fix sample entry leak.
mfplat: Move sample implementation to a separate file.
mfplat: Added MFMapDX9FormatToDXGIFormat().
mfplat/tests: Switch to a different texture format to enable more tests on older versions.
mfplat/tests: Add a workaround for test failures on Windows 7 VMs.
mfplat: Add a stub implementation of DXGI surface buffer.
mfplat/allocator: Add initial implementation of sample allocator.
mfplat/tests: Add some tests for sample allocator using D3D9 device.
mfplat/allocator: Keep a reference to initialization attributes.
mfplat/allocator: Add support for MF_SA_BUFFERS_PER_SAMPLE.
mfplat/tests: Fix a crash on Vista.
dwrite: Change remaining traces to have consistent format.
dwrite/layout: Implement desired orientation get/set methods.
oleaut32/tests: Remove workarounds in VarFormat* tests.
oleaut32/tests: Use wide strings in VarFormat* tests.
oleaut32: Handle preformatted strings in VarFormatCurrency().
oleaut32: Added ICreateTypeInfo2::DeleteFuncDesc().
dwrite: Call shaper masks setup only when doing substitutions.
dwrite: Track attachment chain during cursive positioning.
dwrite: Use attachment chain for marks positioning.
dwrite: Adjust comment regarding digits substitution during shaping.
evr/tests: Add some more interface checks for the allocator.
mfplat/allocator: Improve initialization handling.
mfreadwrite/reader: Keep a reference to configuration attributes.
mfreadwrite/reader: Create sample allocator for video streams.
dwrite/shaping: Make sure initial glyph buffer can fit at least one glyph per WCHAR.
explorerframe: Do not block clicks on the item button.
dwrite: Fix setting canBreakShapingAfter when applying ligatures.
dwrite/arabic: Use resolved codepoint for joining types.
dwrite/arabic: Mark glyphs with assigned action as unsafe to break.
explorerframe: Handle NSTCS_SINGLECLICKEXPAND style.
Paul Gofman (6):
vcomp100: Share the source with vcomp.
vcomp110: Share the source with vcomp.
vcomp120: Share the source with vcomp.
vcomp140: Share the source with vcomp.
cryptsp: Add dll.
opengl32: Support PFD_DEPTH_DONTCARE flag in wglChoosePixelFormat().
Piotr Caban (15):
ucrtbase: Fix _Syserror_map behavior on unknown error.
msvcrt: Make __lc_time_data more similar to native.
msvcr110: Copy utf16 strings in _Gettnames.
msvcrt: Imporve sqrt accuracy and performance on x86_64.
msvcrt: Improve sqrt accuracy and performance on i386.
msvcrt: Improve __libm_sse2_sqrt_precise implementation.
msvcr120/tests: Run strtof tests once.
msvcp90: Return required buffer size in _Strxfrm.
msvcp90: Add _Wcsxfrm implementation.
msvcr120: Don't export thiscall functions on arm.
concrt140: Add arm exports.
msvcrt: Set mxcsr denormal flag in sqrtf if needed.
msvcrt: Disable sse2 math functions in older versions of runtime.
msvcrt: Add x87 asin implementation.
msvcr120: Relax gettnames structure layout tests.
Roman Pišl (4):
conhost: Fix copy-paste error when setting windows size.
conhost: Improve notification when resizing window.
cmd: Fix handling of nested if-for expressions on a single line.
cmd: Fix handling of brackets in if-set expressions on a single line.
Rémi Bernon (57):
widl: Support WinRT flags attribute parsing.
widl: Support WinRT eventadd/eventremove attributes.
include: Define DECLSPEC_SELECTANY on MinGW.
include: Add IWMPVideoRenderConfig interface to wmprealestate.idl.
include: Add IWMPRenderConfig interface to wmprealestate.idl.
include: Add IWMPGraphCreation interface to wmpservice.idl.
include: Add WMPGC_FLAGS_SUPPRESS_DIALOGS constant to wmpservices.idl.
include: Add more DISPID constants to wmpids.h.
mscoree: Improve non-neutral assembly lookup logic.
widl: Generate WinRT runtimeclass name constants.
d3d11/tests: Add more tests for ID3D11DeviceContext1_SwapDeviceContextState.
d3d11/tests: Add missing ID3D11DeviceContext1_CSSetUnorderedAccessViews.
d3d11/tests: Add tests for ID3DDeviceContextState_SetPrivateData.
d3d11/tests: Add tests for input assembler stage state swap.
d3d11/tests: Add tests for output merger stage state swap.
d3d11/tests: Add tests for rasterizer stage state swap.
d3d11/tests: Add tests for stream output state swap.
d3d11/tests: Add tests for predicate state swap.
include: Rename class parameters to mmcss_class.
windowscodecs: Use IWICImagingFactory_CreatePalette in write_source.
wmphoto: Implement class factory for WmpDecoder.
widl: Remove useless find_type_or_error2 helper.
widl: Remove constant t parameter from find_type_or_error.
widl: Factor and cleanup coclass type declaration and definition.
widl: Factor and cleanup runtimeclass type declaration and definition.
widl: Distinguish interface declarations from interface references.
widl: Factor and cleanup interface type declaration and definition.
widl: Factor and cleanup dispinterface type declaration and definition.
widl: Factor and cleanup apicontract type declaration and definition.
widl: Factor and cleanup module type declaration and definition.
widl: Fold aIDENTIFIER / aKNOWNTYPE rules together.
wmphoto: Implement WMP decoder using jxrlib.
windowscodecs: Return E_INVALIDARG from GetFrame with NULL pointer.
configure: Silence a linker warning about no-PIC .text relocations.
ntdll: Print a warning for thread rename exceptions.
ntdll: Print a warning for debug print exceptions.
ntdll: Print a warning or an error for other exceptions.
widl: Add explicit namespace parameter to find_type_or_error.
widl: Use explicit namespace parameter for qualified names.
widl: Disallow qualified types in expressions.
widl: Remove aNAMESPACE token from the lexer.
widl: Fold inherit cases by using typename rule in qualified_type.
widl: Support referencing qualified interface names.
server: Grow rawinput buffer instead of allocating its maximum size.
widl: Support WinRT activatable attribute parsing.
widl: Support WinRT static attribute parsing.
widl: Support WinRT requires keyword.
include: Add Windows.Media.SpeechSynthesis.SpeechSynthesizer runtimeclass.
ntdll/tests: Remove traces from threadpool callbacks.
ntdll/tests: Test RtlRegisterWait with WT_EXECUTEINWAITTHREAD flag.
ntdll: Move Rtl(Un)RegisterWait code below threadpool structs.
ntdll: Don't force submit wait in TpSetWait if timeout is 0.
ntdll: Introduce new tp_object_execute helper.
ntdll: Re-implement RtlRegisterWait using TpSetWait.
kernel32: Write the wait handle before executing the callback.
widl: Support WinRT parameterized type parsing.
widl: Introduce new strappend helper.
Sebastian Lackner (1):
ntdll: Return STATUS_INVALID_DEVICE_REQUEST when trying to call NtReadFile on directory.
Timothy Pearson (2):
include: Add PPC64 endianness.
widl: Add PPC64 support.
Zebediah Figura (82):
winegstreamer: Move the "bus" field of struct parser to a new "wg_parser" object.
winegstreamer: Move the "element" field to struct wg_parser.
winegstreamer: Move the "my_src" and "their_sink" fields to struct wg_parser.
winegstreamer: Move the push offset tracking fields to struct wg_parser.
winegstreamer: Duplicate the file size into struct wg_parser.
include: Fix the definition of NOTIFYICON_VERSION[_4].
explorer: Send systray messages with SendNotifyMessage().
winemac: Send systray messages with SendNotifyMessage().
winex11: Send systray messages with SendNotifyMessage().
winegstreamer: Move the "push_thread" field to struct wg_parser.
winegstreamer: Move the playback initialization fields to struct wg_parser.
winegstreamer: Move the read request fields to struct wg_parser.
winegstreamer: Move the "flushing" field to struct wg_parser.
winegstreamer: Duplicate the "sink_connected" field in struct wg_parser.
ntoskrnl: Do not destroy the device list in enumerate_new_device().
winebus.sys: Fix the definition of ABS_TO_HID_MAP.
include: Pack HID_DESCRIPTOR.
winegstreamer: Move the "mutex" field to struct wg_parser.
winegstreamer: Move the "segment" field of struct parser_source to a new "wg_parser_stream" object.
winegstreamer: Move the GstPad fields to struct wg_parser_stream.
winegstreamer: Move the "flip" field to struct wg_parser_stream.
winegstreamer: Move the "caps" field to struct wg_parser_stream.
kernel32/tests: Correctly check for failure from FindFirstFile().
ntdll/tests: Check the alternate NT path only if it is present.
ntdll/tests: Add more tests for RtlDosPathNameToNtPathName_U().
kernel32/tests: Add some more tests for wildcards.
ntdll: Treat '>' the same as '?' in match_filename().
winegstreamer: Move the stream event fields to struct wg_parser_stream.
winegstreamer: Move the "eos" field to struct wg_parser_stream.
winegstreamer: Move the "flushing" field to struct wg_parser_stream.
winegstreamer: Avoid accessing the DirectShow peer from GStreamer callbacks.
winegstreamer: Reset the push offset in parser_init_stream().
kernelbase: Map LANG_SERBIAN_NEUTRAL in ConvertDefaultLocale().
ntdll: Map LANG_SERBIAN_NEUTRAL in RtlLocaleNameToLcid().
winegstreamer: Store the wg_parser pointer as our source pad's private data.
winegstreamer: Store the wg_parser_stream pointers also in struct wg_parser.
winegstreamer: Store the stream duration also in the wg_parser_stream structure.
winegstreamer: Use the "streams" array in wg_parser code.
winegstreamer: Factor out free_stream().
advapi32/tests: Add some tests for querying the security of pseudo-handles.
advapi32: Support GetSecurityInfo() with special root HKEY constants.
advapi32/tests: Add a couple tests for DuplicateTokenEx() access flags.
ntdll: Always return at least sizeof(PRIVILEGE_SET) in NtAccessCheck().
ntdll: Do not touch the privilege output buffers if access_check fails.
ntdll: Check the output buffer length in NtAccessCheck().
winegstreamer: Do not use gst_segment_to_running_time().
winegstreamer: Introduce an intermediate media format structure.
winegstreamer: Use struct wg_format to convert from AM_MEDIA_TYPE to GstCaps.
winegstreamer: Store the preferred stream format as a wg_format structure.
winegstreamer: Handle MPEG-1 audio formats in amt_to_wg_format().
winegstreamer: Store the current stream format in the wg_parser_stream structure.
winegstreamer: Compare wg_format structures in GST_QUERY_ACCEPT_CAPS.
winegstreamer: Use wg_format_to_caps() in GST_QUERY_CAPS.
winegstreamer: Use amt_to_wg_format() in decodebin_parser_source_query_accept().
winegstreamer: Avoid using Wine debug functions in query_sink().
winegstreamer: Don't force query_sink() onto a Wine thread.
server: Hold a reference to the iosb in the accept_req structure.
server: Terminate accept asyncs when the last socket handle is closed.
server: Hold a reference to both sockets in the accept_req structure.
server: Use a callback to free the accept_req structure.
winegstreamer: Store the wg_parser_stream pointers as our sink pads' private data.
winegstreamer: Separate parser_source and wg_parser_stream allocation.
winegstreamer: Defer source pin creation until after all pads are exposed.
winegstreamer: Pass a wg_parser pointer to signal callbacks.
winegstreamer: Avoid using Wine debug functions in existing_new_pad().
winegstreamer: Don't force existing_new_pad() onto a Wine thread.
ntoskrnl/tests: Test the contents of the user IO_STATUS_BLOCK.
ntoskrnl: Copy the IRP I/O status block to the user I/O status block in IoCompleteRequest().
ntoskrnl: Retrieve information from the user I/O status block for PnP IRPs.
ntoskrnl: Pass a KEVENT to IoBuildSynchronousFsdRequest() for PnP IRPs.
hidclass.sys: Pass a KEVENT to IoBuildDeviceIoControlRequest() in call_minidriver().
winebus.sys: Return success from IRP_MN_QUERY_CAPABILITIES.
hidclass.sys: Do not manually clean up devices on unload.
hidclass.sys: No longer track devices in a list.
wineusb.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
winebus.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
winegstreamer: Separate parser and filter initialization.
winegstreamer: Move wg_parser object creation to a new Unix library.
winegstreamer: Move GStreamer library initialization to __wine_init_unix_lib().
winegstreamer: Move wg_parser_destroy() to the Unix library.
wined3d: Support WINED3D_RTYPE_BUFFER in wined3d_check_device_format().
d3d11: Report D3D11_FORMAT_SUPPORT_BUFFER in CheckFormatSupport().
Ziqing Hui (1):
windowscodecs/tests: Fix an argument typo in ok().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.1 is now available.
What's new in this release (see below for details):
- Arabic text shaping.
- More WinRT support in WIDL.
- VKD3D version 1.2 is used for Direct3D 12.
- Support for Rosetta's memory layout on M1 Macs.
- Support for Thumb-2 mode on ARM.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.x/wine-6.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.x/wine-6.1.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 6.1 (total 37):
17848 Windows Print Preview: Lines drawn have incorrect width
21014 Dark Sector no Sound
21038 F-Secure BlackLight Engine 2.2.x (Rootkit scanner) crashes after accepting license agreement (Wine on-disk placeholder dlls sections must be padded with data up to section virtual size)
30062 Deer Hunter demo: unable to start a new game (map view unusable)
30469 Multiple .NET 2.0 applications abort with error 'System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' (SegFlex demo)
33349 Add support for 32-bit ARM Thumb-2 Wine build
35017 Rollercoaster Tycoon 3 has no music
38501 GetClipboardData(CF_UNICODETEXT) - return ANSI
39407 LabVIEW 2014 crashes on startup
42913 ACAT Dashboard, part of Intel Assistive Context-Aware Toolkit (ACAT) v1.00.0 (.NET 4.5 app) crashes with 'invalid parameter' in 'System.Drawing.Icon.Initialize' (missing support for PNG icons in user32)
43408 Quest 5.7.x (.NET 4.0 WPF app) crashes on direct access of MIL4 (Media Integration Layer, wpfgfx_v0400.dll) to internal bitmap struct/class impl (depends on exact layout)
45046 Skyrim SE: Shadow artifacts (missing handling of 'precise' shader modifier)
48685 Multiple games and applications need D3DX11CompileFromFile implementation
48714 mass effect spits error when using mouse fix
48790 mfplat:mfplat crashes on Windows 7
48870 Aldi (Buhl) Steuer 2019/2020 installer crashes
49327 Hearthstone Deck Tracker (with installed dotnet472) does not work with wine-staging 5.9 anymore
49484 test_query_process_image_info() test is broken on a not PE build
50033 WMI class SystemRestore is missing
50194 x64dbg snapshots >= 2020-11-12_05-12 crash on unimplemented function ntdll.dll.NtCreateDebugObject when attaching to process
50229 Battle.net launcher sometimes crashes after login (wine-5.22)
50256 Animate VST plugin activation doesn't work: wbem_services_ExecQuery gets no network adapters
50349 SlingPlayer crashes on launch (needs IDirectXVideoDecoderService)
50357 Star Stable Online crashes with unimplemented function dcomp.dll.DCompositionCreateDevice2
50376 Banished crashes when Antialiasing set to 3x MSAA with Vulkan renderer
50379 The Witcher 3 has broken rendering with Vulkan renderer
50386 Sniper Elite V2 some objects aren't rendered with Vulkan renderer
50387 Batman: Arkham Origins has broken dynamic shadows with Vulkan renderer
50459 Studio One 5 crashes on unimplemented function dcomp.dll.DCompositionCreateDevice
50485 Still Life 2 crashes when CSMT is disabled
50486 The Sims 3 launcher hangs
50494 ID2D1RenderTarget::DrawText(): The position and size of the drawn text is incorrect
50508 ACAT Phrase, part of Intel Assistive Context-Aware Toolkit (ACAT) v1.00.0 (.NET 4.5 app) crashes on unimplemented function 'uiautomationcore.dll.UiaRegisterProviderCallback'
50515 SofTalk 1.56 doesn't speak continuously after punctuation marks.
50525 ws2 _32 fails to build on macOS
50549 Some games fail to launch with Vulkan renderer
50570 Unknown Debian package and website in README
----------------------------------------------------------------
Changes since 6.0:
Akihiro Sagawa (6):
winmm/tests: Expect TIME_BYTES format for TIME_MS request.
winmm: Get rid of TIME_MS format support in waveOutGetPosition().
winmm/tests: Strictly test returned time format of waveOutGetPostion().
winmm: Get rid of TIME_SMPTE format support in waveOutGetPosition().
comdlg32/tests: Add a test for CF_NOSCRIPTSEL.
comdlg32: Set DEFAULT_CHARSET if CF_NOSCRIPTSEL is set.
Alex Henrie (1):
include: Add new LCMAP constants.
Alexandre Julliard (37):
msvcrt: Don't export fabsf on x86_64.
msvcrt: Implement pwctype() functions.
msvcrt: Fix some spec file discrepancies.
winebuild: Simplify ARM64 import thunks.
wordpad: Make qsort callback function cdecl.
evr: Make qsort and bsearch callback functions cdecl.
winebuild: Generate Thumb2-compatible assembly code on ARM.
winebuild: Support non-PIC mode for ARM targets.
ntdll: Make inline asm compatible with Thumb-2.
ntdll: Support Thumb mode in signal handling.
rpcrt4: Make inline asm compatible with Thumb-2.
vcomp: Make inline asm compatible with Thumb-2.
configure: Default to Thumb-2 mode for ARM.
ntdll: Always inline NtCurrentTeb() on ARM.
ntdll: Support more Dwarf pointer types.
include: Add a couple of dll characteristics.
gdi32: Merge rectangles horizontally when possible in CreatePolyPolygonRgn.
msvcp: Fix some spec file discrepancies.
d3dx9: Fix some spec file discrepancies.
winegcc: Pass the same winebuild args to all winebuild invocations.
ntdll: Add some more section information data.
ntdll: Load the COR header directly from the file handle.
ntdll: Check for valid architecture before mapping the module.
ntdll: Delay mapping a module until we have found the final one to load.
makefiles: Add missing dependency to wrc for test dll resources.
ntdll: Set the environment size in the process parameters.
ntdll: Fill the image information data also for .so builtins.
ntdll: Create a SEC_IMAGE view also for .so builtins.
server: Get rid of the exe_file parameter in the new_process request.
server: Rename debug_ctx to debug_obj.
ntdll: Implement NtCreateDebugObject().
server: Allocate handles only when returning the debug event to the client.
server: Don't store the debugger thread in debug events.
server: Store a debug object instead of a debugger thread in the process.
ntdll: Implement DbgUiGet/SetThreadDebugObject().
ntdll: Implement DbgUiConnectToDbg().
ntdll: Support the NtCreateDebugObject() flags.
Alistair Leslie-Hughes (5):
msado15: Only support put CursorLocation on Closed Recordset.
msado15: Support ADOConnectionConstruction15 on _Connection interface.
msado15: Implement ADOConnectionConstruction15 get_Session.
dsound: IDirectSoundBuffer8 GetStatus return DSBSTATUS_LOCSOFTWARE for deferred buffers.
include: Add more sal.h macros.
Arkadiusz Hiler (1):
hidclass.sys: Calculate correct bitCount for vendor-specific 1 bit repeated elements.
Biswapriyo Nath (1):
propkey.h: Added more PROPERTYKEY declarations.
Brendan Shanks (4):
winemac.drv: Use Metal to get a display's GPU info if possible.
winemac.drv: Handle non-PCI GPUs correctly.
loader: On Mac, move the top-down allocations area down to avoid Rosetta regions.
loader: On Mac, reserve an area starting at 4GB to force Rosetta's allocations higher.
Byeong-Sik Jeon (1):
gdi32: Preserve the GGO_UNHINTED bits until used.
Damjan Jovanovic (2):
mmsystem: Win16 DllEntryPoint uses HINSTANCE16, not HINSTANCE.
secur32: Implement the SECPKG_ATTR_UNIQUE_BINDINGS context attribute.
Daniel Lehman (3):
ntdll/tests: Add tests for semaphores.
ntdll/tests: Fix error messages for mutant test.
ntdll: Check event type on creation.
Derek Lesho (2):
winegstreamer: Correct mistaken enum value in ProcessMessage.
winegstreamer: Reformat type-setting functions to prevent the need for a conditionally initialized variable.
Dmitry Timoshkov (5):
shell32: Return S_OK from IShellLink::SetFlags() stub.
wbemprox: Add class SystemRestore stub implementation.
wbemprox: Flesh out a bit SystemRestore::Enable() implementation.
gdi32: Avoid best fit chars when mapping unicode character to a glyph index.
msi: Also set "MsiRunningElevated" installer property.
Floris Renaud (3):
po: Update Dutch translation.
documentation: Change obsolete Debian and Red Hat packages.
documentation: Add Dutch README translation.
Georg Lehmann (6):
winevulkan: Skip extensions that require a skipped extension.
winevulkan: Update to VK spec version 1.2.166.
winevulkan: Wrap VkSurfaceKHR in winevulkan.
winevulkan: Unwrap VkSurfaceKHR if required.
winevulkan: Don't advertise VK_EXT_headless_surface.
winevulkan: Fix surface functions if they aren't called by winevulkan.
Giovanni Mascellani (1):
winegstreamer: Wait on error conditions when initializing GStreamer.
Hans Leidekker (8):
wldap32: Properly initialize the context in ldap_sslinitW.
winhttp: Avoid a crash when the connection is closed while handling a redirect.
ws2_32: Avoid returning duplicate entries from WS_getaddrinfo.
ws2_32: Fix buffer size query in WSAAddressToStringW.
wbemprox: Implement Win32_NetworkAdapter.GUID.
wbemprox/tests: Add tests for Win32_NetworkAdapter/Configuration.
wbemprox: Handle escaped backslashes in LIKE queries.
wbemprox: Implement Win32_NetworkAdapter.ServiceName.
Haoyang Chen (2):
dwrite/layout: Handle NULL format in CreateEllipsisTrimmingSign().
d2d1: Fix text position in DrawText().
Henri Verbeet (22):
wined3d: Use glFinish() for synchronisation when cleaning up a destroyed context in wined3d_context_gl_cleanup().
wined3d: Get rid of the destination offset in wined3d_texture_vk_upload_data().
wined3d: Cleanup the staging bo on an error path in wined3d_texture_vk_upload_data().
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_append_dst_ext().
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast().
wined3d: Also trace memory types in adapter_vk_init_driver_info().
wined3d: Implement the "precise" flag in the GLSL shader backend.
wined3d: Get rid of the "UseGLSL" setting.
ddraw: Use BitBlt() for exclusive mode frontbuffer updates if the swapchain window is not in the foreground.
wined3d: Introduce wined3d_context_vk_reference_resource().
wined3d: Add some barriers between resource usage on different bind points.
wined3d: Properly convert Vulkan sample count format information.
wined3d: End the current render pass in wined3d_buffer_vk_barrier().
wined3d: Always include any depth/stencil attachment in the Vulkan framebuffer.
wined3d: Stencil test also uses the depth/stencil buffer.
wined3d: Correct the argument order of a FIXME in wined3d_texture_vk_download_data().
wined3d: Require VK_KHR_sampler_mirror_clamp_to_edge for WINED3D_TADDRESS_MIRROR_ONCE.
wined3d: Implement NULL constant buffer views for the Vulkan backend.
d3d12: Implement D3D12SerializeVersionedRootSignature() on top of vkd3d_serialize_versioned_root_signature().
d3d12: Implement D3D12CreateVersionedRootSignatureDeserializer().
d3d12: Request VKD3D_API_VERSION_1_2.
wined3d: Trace the available Vulkan extensions.
Jacek Caban (14):
jscript: Return DateInstance from create_date.
jscript/tests: Add VT_DATE handling tests.
jscript: Support VT_DATE to number conversion.
jscript: Support VT_DATE to string conversion.
jscript: Support VARIANT type in jsval_strict_equal.
ntdll: Honour alertable argument in NtContinue.
winnt.h: Fix MSVC variants of InterlockedIncrement16 and InterlockedDecrement16.
ntdll/tests: Don't assume 32-bit test module base.
jscript: Add VT_CY type support.
winebuild: Make mingw a separated platform from msvc.
mshtml/tests: Use more winetest.js helpers in documentmode.js.
mshtml: Implement IHTMLCSSStyleDeclaration2::animation property.
mshtml: Make xhr.open async argument optional in IE9+ mode.
ieframe: Implement SetQueryNetSessionCount.
Jactry Zeng (3):
d2d1: Limit source rectangle to the actual size for ID2D1RenderTarget_DrawBitmap().
d2d1: Skip empty source rectangle for ID2D1RenderTarget_DrawBitmap().
d2d1: Partially implement d2d_device_context_DrawImage().
Jan Sikorski (1):
winemac.drv: Include depth32+stencil pixel formats in enumeration.
Jeff Latimer (1):
ws2_32: Do not print an ERR message when returning WSAEWOULDBLOCK from WSAIoctl().
Liam Middlebrook (2):
winevulkan: Skip commands which are declared but not defined.
winevulkan: Update to VK spec version 1.2.168.
Martin Storsjo (2):
include: Don't use __attribute__((pcs("aapcs-vfp"))) when building in PE mode.
msvcrt: Fix reading BOM-less files opened with ccs=unicode.
Michael Stefaniuc (2):
ddraw: Remove superfluous cast to self.
d2d1/tests: Remove superfluous cast to self.
Nikolay Sivov (42):
mf: Add a helper to get associated topology node object.
dcomp: Add DCompositionCreateDevice2().
dcomp: Add DCompositionCreateDevice() stub.
dwrite: Set lookup flags for joiners.
dwrite: Propagate joiners mode to iterators.
dwrite: Use joiner modes for matching.
dwrite: Set joiners mode for gsub case.
dwrite: Use table access helpers for reading names.
dxva2: Add IDirectXVideoDecoderService stub.
d2d1: Pass zeros as text layout size for inverted rectangles in DrawText().
dwrite/layout: Fail to create layouts with negative size.
ntdll/tests: Remove skips on missing ntdll.dll.
dwrite: Fix feature mask for non-global features.
dwrite: Zero-initialize run analysis object structure.
gdi32/uniscribe: Merge Arabic joining types C and D.
gdi32/uniscribe: Get rid of shaping group values in Arabic shaping data table.
make_unicode: Make it explicit what other default joining type is.
make_unicode: Remove unused variable.
dwrite: Zero initialize font data structure.
dwrite/tests: Add some tests for text format properties.
dwrite: Add font set builder stub.
dwrite: Set script id in shaping context.
dwrite: Add a stub Arabic shaper.
dwrite/arabic: Mark some features for fallback.
dwrite: Mark features that were not found.
dwrite: Add per shaping stage functions.
dwrite: Call stage function for substitution loop.
dwrite/arabic: Set per-glyph action.
dwrite/arabic: Set per-glyph mask.
dwrite/shape: Fix iterator skipping logic on ignorable characters.
mfmediaengine: Return current session time in GetCurrentTime().
mfmediaengine: Add partial implementation of a time range object.
mfmediaengine: Return full presentation range in GetBuffered().
mf/sar: Release pending items when audio client is released.
mf/sar: Handle shutdown state in rendering callback.
mf/tests: Use interface check helper more.
mfmediaengine: Use presentation clock interface from the session.
mfmediaengine: Use existing helper to update engine state flags.
mfmediaengine: Set "ended" state when session presentation ends.
mfmediaengine: Force returned playback position after presentation ends.
mfmediaengine: Use consistent format for traces.
mf/session: Add a stub for IMFTopologyNodeAttributeEditor.
Paul Gofman (20):
d3d9/tests: Add more tests for shader validator.
dbghelp: Fix unwind opcodes on x64.
dbghelp: Support UWOP_PUSH_MACHFRAME on x64.
bcrypt: Introduce export_gnutls_datum() helper and use it in export_gnutls_pubkey_rsa().
bcrypt: Pad exported datums in export_gnutls_pubkey_ecc().
bcrypt: Pad exported datums in export_gnutls_pubkey_dsa().
bcrypt: Pad exported datums in export_gnutls_pubkey_dsa_capi().
bcrypt: Pad exported datums in key_export_ecc().
bcrypt: Pad exported datums in key_export_dsa_capi().
bcrypt: Fix padding in format_gnutls_signature().
ws2_32: Reimplement SIO_GET_INTERFACE_LIST on top of GetIpAddrTable().
ws2_32: Use if_nameindex() instead of SIOCGIFNAME.
msvcrt: Add -norelay flag to lldiv definition in spec files.
iphlpapi: Mark adapter addresses as DNS eligible when interface has a gateway.
windowscodecs: Add IWICMetadataBlockWriter stub interface.
windowscodecs: Add IWICMetadataBlockWriter stub interface for Gif encoder.
windowscodecs/tests: Add test for metadata writer.
windowscodecs: Add IWICMetadataQueryWriter stub interface.
windowscodecs: Implement CommonEncoderFrame_GetMetadataQueryWriter().
windowscodecs: Return correct error codes from BmpFrameEncode_GetMetadataQueryWriter().
Piotr Caban (2):
crypt32: Also import user/admin defined root certificates on macOS.
msvcrt: Improve memmove performance on i386 and x86_64 architectures.
Rémi Bernon (36):
d2d1/tests: Check for d2d1 math functions presence.
d2d1/tests: Introduce init_test_context().
d2d1/tests: Create a window in init_test_context_().
d2d1/tests: Create a swapchain in init_test_context_().
d2d1/tests: Retrieve the swapchain back-buffer in init_test_context_().
d2d1/tests: Create a Direct2D render target in init_test_context_().
d2d1/tests: Store the resource data pointer and row-pitch directly in struct resource_readback.
d2d1/tests: Pass a d2d1_test_context structure to compare_surface().
d2d1/tests: Pass a d2d1_test_context structure to compare_figure().
d2d1/tests: Pass a d2d1_test_context structure get_surface_readback().
d2d1/tests: Store an IDXGIDevice interface instead of an ID3D10Device1 interface in struct d2d1_test_context.
d2d1/tests: Run most tests on d3d11 as well.
include: Add windows.media.speechsynthesis.idl stub.
windowscodecs: Use create_instance instead of ImagingFactory_CreateInstance.
windowscodecs: Use IWICComponentFactory_CreateStream in GetReaderByIndex.
widl: Remove unnecessary WinRT type comments.
widl: Support WinRT marshaling_behavior attribute parsing.
d3d11: Add initial implementation of CreateDeviceContextState.
d3d11: Add initial implementation of SwapDeviceContextState.
d3d11: Capture and restore vertex shader state.
d3d11: Capture and restore geometry shader state.
d3d11: Capture and restore pixel shader state.
widl: Support WinRT mta threading attribute parsing.
widl: Support WinRT exclusiveto attribute parsing.
windowscodecs: Use IWICComponentFactory_CreateQueryReaderFromBlockReader in GetMetadataQueryReader.
windowscodecs: Move several helpers to new wincodecs_common.c source.
widl: Support WinRT runtimeclass type parsing.
include: Add VoiceInformation runtimeclass to windows.media.speechsynthesis.idl.
include: Add IWMPRemoteMediaServices interface to wmp.idl.
include: Add IWmpControls2 interface to wmp.idl.
include: Add IWMPMedia2 interface to wmp.idl.
include: Add IWMPMedia3 interface to wmp.idl.
d3d11/tests: Add more SwapDeviceContextState tests.
d3d11/tests: Add tests for hull shader state swap.
d3d11/tests: Add tests for domain shader state swap.
d3d11/tests: Add tests for compute shader state swap.
Sebastian Lackner (1):
server: Store and notify all notification events associated with a given registry handle.
Shawn M. Chapla (1):
dsound: Send CaptureBuffer stop notification whenever stopping.
Ulrich Czekalla (1):
riched20: Add check to ensure iob is a valid index into the object array.
Vijay Kiran Kamuju (1):
uiautomationcore: Add stub UiaRegisterProviderCallback function.
Zebediah Figura (79):
gdi32: Do not compare face file names in insert_face_in_family_list() if either is NULL.
winegstreamer: Get rid of the unknown_type() callback.
winegstreamer: Avoid using Wine debug functions in autoplug_blacklist().
winegstreamer: Don't force autoplug_blacklist() onto a Wine thread.
winegstreamer: Don't bother setting the GStreamer pipeline to PLAYING.
winegstreamer: Rename gstdemux_source to parser_source.
winegstreamer: Rename gstdemux to parser.
winegstreamer: Unify the decodebin parser definitions under the name "decodebin_parser".
winegstreamer: Avoid leaking GstEvent objects.
winegstreamer: Explicitly store a GstCaps pointer in the parser_source structure.
include: Move interlocked functions to winnt.h.
winegstreamer: Do not handle GST_EVENT_TAG in event_src().
winegstreamer: Do not call gst_pad_event_default().
strmbase: Rename csFilter to filter_cs.
strmbase: Move strmbase_renderer.csRenderLock into the strmbase_filter structure.
quartz/dsoundrender: Use the strmbase stream lock.
include: Move InterlockedCompareExchange128 next to the other InterlockedCompareExchange* functions.
strmbase: Acquire the streaming lock in MemInputPin_Receive().
strmbase: Acquire the streaming lock in sink_EndOfStream().
quartz/acmwrapper: Use the strmbase stream lock.
quartz/avidec: Use the strmbase stream lock.
winegstreamer: Manage our own streaming thread.
include: Use __atomic_exchange_n() for InterlockedExchange*() if possible.
include: Add InterlockedOr().
include: Add MemoryBarrier().
winegstreamer: Flush connected pins directly in SetPositions().
winegstreamer: Consistently use GST_STATE_PAUSED for test-play.
winegstreamer: Do not return GST_FLOW_NOT_LINKED if the DirectShow pin is not connected.
winegstreamer: Keep the stream in paused state for its entire lifetime.
winegstreamer: Use the "flushing" field to unblock the streaming thread when stopping.
include: Add InterlockedAnd().
include: Add InterlockedIncrement16() and InterlockedDecrement16().
include: Add YieldProcessor().
wined3d: Use YieldProcessor().
ntoskrnl: Use YieldProcessor().
winegstreamer: Move pin duration and caps retrieval to GST_Connect().
winegstreamer: Store the segment parameters in the parser_event structure.
winegstreamer: Use a pthread condition variable to wait for filter initialization.
winegstreamer: Avoid using Wine debug functions in watch_bus().
winegstreamer: Don't force watch_bus() onto a Wine thread.
server: Avoid leaking "acceptsock" on allocation failure.
server: Use default_fd_get_poll_events() for file objects.
winegstreamer: Avoid using Wine debug functions in no_more_pads().
winegstreamer: Don't force no_more_pads() onto a Wine thread.
winegstreamer: Use pthread condition variables to queue stream events.
winegstreamer: Factor out get_stream_event().
winegstreamer: Avoid using Wine debug functions in got_data_sink().
winegstreamer: Don't force got_data_sink() onto a Wine thread.
msi: Check for failure from do_msidbCustomActionTypeDll().
msi: Return an error if trying to run a 64-bit custom action in a 32-bit prefix.
ntdll/tests: Add an alignment helper.
wined3d: Make adapter_gl_clear_uav() static.
winegstreamer: Avoid using Wine debug functions in event_sink().
winegstreamer: Don't force event_sink() onto a Wine thread.
winegstreamer: Avoid using Wine debugging functions in event_src().
winegstreamer: Don't force event_src() onto a Wine thread.
winegstreamer: Avoid using Wine debugging functions in query_function().
winegstreamer: Don't force query_function() onto a Wine thread.
winegstreamer: Avoid using Wine debug functions in removed_decoded_pad().
winegstreamer: Don't force removed_decoded_pad() onto a Wine thread.
winegstreamer: Manage our own thread for read requests.
winegstreamer: Don't force request_buffer_src() onto a Wine thread.
ntdll/tests: Add more tests for registry notifications.
winegstreamer: Use the "filesize" field in push_data().
winegstreamer: Use request_buffer_src() in push_data().
winegstreamer: Avoid using Wine debug functions in push_data().
winegstreamer: Make push_data() into a POSIX thread.
include: Include ntddndis.h in ndis.h.
ndis.sys: Avoid including ntddndis.h directly.
winegstreamer: Do not flush the upstream source pin in activate_push().
winegstreamer: Don't grab filter_cs in activate_push().
winegstreamer: Avoid using Wine debug functions in activate_mode().
winegstreamer: Don't force activate_mode() onto a Wine thread.
wineboot: Set the NXSupportPolicy member of the user shared data to NX_SUPPORT_POLICY_OPTIN.
kernel32: Implement GetSystemDEPPolicy().
kernel32: Implement SetProcessDEPPolicy().
wined3d: Implement global resource memory barriers.
include: Fix the definition of PNDIS_HANDLE.
include: Define some types before including ntddndis.h.
Zhiyi Zhang (4):
wined3d: Support multiple outputs.
user32/tests: Add display DC tests.
gdi32: Report correct HORZRES and VERTRES values for GetDeviceCaps() with DCs on a specific monitor.
gdi32: Report real VREFRESH values for GetDeviceCaps() with display DCs.
Ziqing Hui (4):
gdiplus/tests: Add tests for drawing on printer DC.
gdiplus: Correctly handle UnitDisplay for printer DC.
gdiplus/tests: Add initial tests for metafile created from printer DC.
gdiplus: Record logical DPI in metafile.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine team is proud to announce that the stable release Wine 6.0
is now available.
This release represents a year of development effort and over 8,300
individual changes. It contains a large number of improvements that
are listed in the release notes below. The areas of major changes are:
- Core modules in PE format.
- Vulkan backend for WineD3D.
- DirectShow and Media Foundation support.
- Text console redesign.
This release is dedicated to the memory of Ken Thomases, who passed
away just before Christmas at the age of 51. Ken was an incredibly
brilliant developer, and the mastermind behind the macOS support in
Wine. We all miss his skills, his patience, and his dark sense of
humor.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0
======================
*** PE modules
- The core DLLs, including NTDLL, KERNEL32, GDI32, USER32, etc. are
built in PE format. This should help a number of copy protection
schemes that check that the DLL files on disk match the in-memory
contents.
- There is a new mechanism to associate a Unix library with a PE
module, to make it possible to call Unix libraries from PE for the
functions that can't be handled with Win32 APIs.
These libraries are found by replacing the PE module file extension
with .so, for instance ntdll.dll -> ntdll.so. They have to be
located next to the PE file on disk.
- Winelib modules no longer link against libwine.so, or require it at
run-time. This is a backwards incompatible change, meaning that
modules built with Wine 6.0 won't run on older Wine versions.
- The libwine library is no longer used, but it's still provided to
support running Winelib modules built against older versions. It is
deprecated however, and will be removed in a future Wine
release. Applications that explicitly call libwine functions will
need to be changed to call equivalent Win32 or Unix APIs instead.
As a consequence, the wine/library.h header has also been removed.
- PE modules can be built with their debug information split to a
separate file, to reduce the size of the files installed into the
Wine prefix.
*** Direct3D
- An experimental Vulkan renderer for WineD3D is implemented. This
requires the vkd3d-shader library in order to translate Direct3D
shaders to SPIR-V shaders. In this release, shader support in the
Vulkan renderer is limited to shader model 4 and 5 shaders. In
practice, that limits its usefulness to Direct3D 10 and 11
applications. The Vulkan renderer can be enabled by setting the
Direct3D "renderer" registry setting to "vulkan".
- The following Direct3D 11 features are implemented:
- Per render-target ("independent") blend states.
- Dual-source blending.
- Multi-sample anti-aliasing sample masks.
- Several more capability queries.
- Support for Direct3D 9 alpha-to-coverage multi-sampling is
implemented.
- When the EXT_framebuffer_multisample_blit_scaled OpenGL extension is
available, scaled multi-sample resolve operations can happen as a
single operation.
- When the ARB_buffer_storage OpenGL extension is available, it will
be used to allocate OpenGL buffer objects. This can result in minor
performance improvements with some application and driver
combinations.
- The Direct3D graphics card database recognizes more graphics cards,
and the reported driver versions have been updated.
- New or modified HKEY_CURRENT_USER\Software\Wine\Direct3D registry keys:
- "renderer" (REG_SZ)
The backend API to target. This existing setting has an additional
valid value in this release: "vulkan". Possible values are now
"gl" (default) for OpenGL, "gdi" or "no3d" for GDI, and "vulkan"
for Vulkan.
- "csmt" (REG_DWORD)
Enable or disable multi-threaded command stream features. This
existing setting has an additional valid bit-field value in this
release. Valid bit-fields in this release are:
- 0x1 Enable the multi-threaded command stream feature.
- 0x2 Enable serialization between multiple command streams in the
same application. This feature is primarily useful for
applications using multiple Direct3D instances from
different threads, in combination with OpenGL drivers that
do not properly support multi-threaded access themselves. As
of this release, this is known to affect Microsoft Office
2013 and later versions in combination with the Mesa-based
Nouveau driver.
Note that this setting is a bit-field; in order to enable both
features above, set this to 0x3.
- Removed HKEY_CURRENT_USER\Software\Wine\Direct3D registry key:
- "DirectDrawRenderer"
This setting was previously deprecated in favor of the "renderer"
setting, and has been removed in this release.
*** D3DX
- Drawing text using the ID3DXFont interface is implemented.
- The ID3D12ShaderReflection shader reflection interface is
implemented.
- The D3DX10GetImageInfoFromMemory() and related image information
query functions are implemented.
*** Graphics
- Drawing arcs, ellipses and rounded rectangles using the Direct2D API
is implemented.
- The standard sRGB color profile is installed into the prefix, for
applications that expect to load it directly.
- The Null display driver can be used as a proper display driver, for
cases when a user interface is not needed.
- WindowsCodecs supports decoding images in DDS (DirectDraw Surface)
and JPEG-XR formats, as well as encoding images to GIF format.
- The Vulkan driver creates the JSON manifest and registry entry used
by the official Vulkan loader.
- The Vulkan driver supports up to version 1.2.162 of the Vulkan spec.
- There are a number of improvements in GdiPlus, including support for
widening lines, more hatch styles, and more record types in
metafiles.
*** Audio / video
- The Media Foundation framework is more complete, including:
- Initial Media Session implementation for state changes and data
flow.
- Initial Streaming Audio Renderer (SAR) pipeline component
implementation.
- Initial Video Renderer implementation, a pipeline component
hosting EVR mixer and presenter.
- Initial Topology Loader implementation.
- Various fixes for the Source Reader.
- Initial Media Engine implementation.
- Asynchronous queues functionality is moved to rtworkq.dll.
- The AMStream (ActiveMovie Multimedia Streaming) library is more
fully implemented, including support for streaming and sample
management.
- The Video Mixing Renderer supports the following features:
- Windowless and renderless mode.
- Automatic stretching and resizing of the video to match the window
size.
- Hardware-accelerated color space conversion of YUV formats, if
supported by the underlying Direct3D implementation.
- Preservation of video aspect ratio via letterboxing.
- The Video Mixing Renderer is used as the default video renderer if
supported by the underlying Direct3D implementation, replacing the
GDI video renderer.
- The DirectShow File Writer filter is implemented.
- The DirectX Media Object (DMO) Wrapper filter is implemented. DMOs
can be automatically enumerated and plugged into the filter graph.
- The video capture filter supports reporting more information about
video formats, including supported sizes and frame rates.
- More Media Detector APIs are implemented.
- The GStreamer wrapper filter supports video and audio format
conversion within the GStreamer pipeline. This obviates the need for
extra transform filters, and accordingly the GStreamer-based YUV to
ARGB converter, audio converter, and mp3 decoder have been
removed. Any video can be output in any of several RGB and YUV
formats, allowing for better performance in some cases.
- The Enhanced Video Renderer (EVR) contains an initial default mixer
and presenter implementation using DXVA2 API.
- The XACT3 (Cross-platform Audio Creation) engine library and
interfaces are implemented through FAudio.
*** Text and fonts
- Text console support is reimplemented, using the architecture of
recent Windows versions, which is closer to the Unix way of doing
things. In particular:
- Pseudo consoles are implemented (equivalent to Unix pseudo TTYs).
- All console handling is done in the ConHost process. WineConsole
is now only a thin wrapper around ConHost.
- ConHost handles VT escape sequences, meaning that the Unix Curses
library is no longer needed.
- Default shaping features are enabled for all scripts in
DirectWrite. All types of GSUB/GPOS lookups are supported.
- In DirectWrite, CMAP data is read directly from the font without
global cache or a need to create FreeType objects, for improved
performance.
- The font initialization in GDI32 avoids loading fonts through
FreeType when possible, for faster startup times. The font registry
cache is also more efficient.
- The Uniscribe support in the USP10 library is moved into GDI32, as
per recent Windows versions.
- An initial version of the Webdings font is implemented, with only a
few glyphs at this point.
*** Input devices
- Raw input devices and messages are implemented, and used by
DirectInput instead of less efficient low-level hooks.
- An initial USB kernel driver is implemented, based on the LibUSB
library, to provide access to USB devices.
- Mouse position history is implemented, for games that want more
precise mouse positions.
- SDL controller mappings can be set through the
'SDL_GAMECONTROLLERCONFIG' environment variable.
- Plug & Play device notifications are implemented.
*** Desktop integration
- Display settings are retrieved through XRandR 1.4 if available. This
also provides support for multiple display orientations.
- There is a consistent view of the graphics adapters across the X11,
OpenGL and Vulkan APIs.
- The desktop work area layout is supported on multi-monitor setups
using the _GTK_WORKAREAS property.
*** Internationalization
- Unicode character tables are based on version 13.0.0 of the Unicode
Standard.
- Unicode normalization is fully standard-compliant, including support
for Hangul, supplementary character planes, and IDN normalization.
- Codepage and other Unicode tables are stored in external NLS files
compatible with Windows. This makes it possible to test with the
native files to track down character mapping issues.
- Codepage mapping tables are generated from Microsoft's Open
Specification data for better compatibility.
- Unicode linguistic case mappings for languages like Turkish are
implemented.
- Codepage 708 (Arabic ASMO) is supported.
*** Kernel
- Windows version compatibility mode is implemented, to only report
the newest Windows versions to applications that have declared that
they support them.
- INI file mappings are implemented, to redirect .ini file entries to
registry keys.
- Many more NT kernel objects and functions are implemented, to
support anti-cheat systems that load kernel drivers.
- A NetIO.sys kernel driver is implemented, to support copy protection
drivers that want to access the network.
- AVX registers are supported in register contexts and exception
handling on x86 platforms.
- The Kernel User Shared Data block contains up-to-date timestamps, to
avoid system calls when retrieving the current time counter.
*** C Runtime
- The C runtime import libraries provide the necessary runtime support
so that PE modules no longer depend on the MinGW runtime.
- The Wine modules are all built against the new UCRT runtime.
- Winegcc uses the new UCRT runtime by default, unless an older C
runtime library is explicitly imported.
- The C runtime supports Windows locales that use the UTF-8 codepage.
- A number of C runtime math functions are implemented internally
based on code from the Musl C library, to avoid depending on the
system math library.
- Floating point formatting is reimplemented in the C runtime to avoid
depending on the system printf function.
*** Internet and networking
- The Gecko engine is updated to version 2.47.2.
- The WebSocket API is implemented.
- JScript and VBScript report the correct location for errors in
scripts.
- There are various improvements to the LDAP and Active Directory
Service support.
- There is an initial implementation of the NDIS network driver.
- The OLE data link dialog supports configuring the ODBC data
connection.
*** Cryptography
- The BCrypt library supports additional algorithms, including DSA
keys and the 3DES cipher.
- The DSSENH (Digital Signatures) Cryptographic Provider is
implemented, and enabled by default.
*** Alternative platforms
- Support for exception handling and stack unwinding on ARM platforms
(both 32-bit and 64-bit) should be on par with the x86
architectures.
- There is initial support for ARM64 on macOS, for the new Apple
Silicon.
- Support for the obsolete 32-bit PowerPC architecture is removed. It
had been broken for some time already.
- Case-insensitive filesystem optimizations are enabled on FreeBSD.
*** Builtin applications
- WineCfg supports querying and modifying the configured Windows
version through the command line with a new /v option.
- The Shell Folders configuration in WineCfg also supports the
Downloads and Templates folders.
- The removable drive autodetection has been removed in WineCfg, now
that the dbus dynamic device support is stable.
- The FSUTIL tool supports a 'hardlink' command to create hard links.
- The FIND tool supports searching multiple files, in addition to
standard input.
- The WHOAMI tool is implemented to display the current username.
*** Development tools
- Winegcc supports generating PDB files when building PE DLLs, for
compatibility with Windows debuggers.
- DbgHelp supports GNU-style debug information also in PE files.
- Winegcc can generate an import library directly when building a DLL,
with the '-Wl,--out-implib' option.
- The various build tools also look for include and library files in
paths relative to the tool binary, to allow relocatable Winelib
installations.
- The Resource Compiler (wrc) and Message Compiler (wmc) use the
external NLS files for codepage conversions. If necessary, the path
to the external files can be specified with the '--nls-dir' option.
- There are various improvements in the gdb proxy mode in WineDbg,
including support for hardware watchpoints, and for loading symbols
from PE modules.
- The Message Compiler (wmc) handles the Unicode BOM to detect the
input file format.
- The Resource Compiler (wrc) has a '--utf8' option to specify UTF-8
input, as an alternative to putting #pragma codepage inside the
file.
- The IDL compiler (widl) supports a WinRT mode, and various
constructs specific to that mode.
- The IDL compiler (widl) supports custom attributes in type
libraries.
*** Build infrastructure
- Makefiles are no longer recursive; a single Makefile is generated to
build the entire tree, with correct dependencies between modules.
- Automake-style silent build rules are supported. They are disabled
by default, but can be enabled by passing the '--enable-silent-rules'
option to configure.
- The new LLVM-MinGW compiler is supported for PE cross-compilation.
- Building with the Clang compiler in MSVC mode is supported.
- A '-syscall' entry point flag is supported in spec files, to
generate NT-style system call entry points.
*** Miscellaneous
- The Mono engine is updated to version 5.1.1, containing the open
sourced parts of the WPF framework, and initial replacements for
some of the closed source parts.
- Most modules have been converted to use wide-character string
constants like L"abc" instead of explicit arrays, for more readable
code.
- Many of the less common timezones (for various remote islands) are
supported.
- Listviews and image buttons are supported in MSI installers.
- There is initial support for the Print Ticket API.
*** New external dependencies
- The LibUSB library is used to implement the USB driver.
- The VkD3D-Shader library is used to translate Direct3D shaders to
SPIR-V shaders for the WineD3D Vulkan renderer.
- The Curses, GLU, and Zlib libraries are no longer used.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc6 is now available.
Barring any last minute issue, this is expected to be the last
release candidate before the final 6.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/6.0/wine-6.0-rc6.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc6 (total 10):
48860 RegiStax 6: mouse does not work in open file dialog
49500 Wine is not displaying any windows (on a headless system)
49511 Kontakt (Native Instruments) runtime is broken
49575 Delphi applications no longer show their main window in the WM's taskbar
50151 World of Tanks fails to launch if LC_LANG/LC_ALL are set ja_JP
50153 HID doesn't work on macOS Catalina and Big Sur unless "Input Monitoring" permission is granted
50355 Commandos 2: Men of Courage hangs after starting
50437 wineserver crashes when running SteelSeries Engine client
50453 CDB (Part of Debugging Tools for Windows) fails resume debugging after entry point break (continue debug event: 'DBG_EXCEPTION_HANDLED' must be treated as an alias for 'DBG_CONTINUE')
50454 Icons have non-transparent background in HxD
----------------------------------------------------------------
Changes since 6.0-rc5:
Alexandre Julliard (1):
winex11: Don't delay mapping 0-sized layered windows.
André Hentschel (4):
ddraw/tests: Don't test functions directly when reporting GetLastError().
d3d8/tests: Don't test functions directly when reporting GetLastError().
dxgi/tests: Don't test functions directly when reporting GetLastError().
d3d9/tests: Don't test functions directly when reporting GetLastError().
Anton Baskanov (2):
winegstreamer: Move sample sending to a helper function.
winegstreamer: Split audio data to fit in the sample buffer.
Byeong-Sik Jeon (1):
readme: Update Korean translation.
Gabriel Ivăncescu (4):
comctl32/tests: Add more tests for 32bpp bitmaps with and without alpha, and masks.
comctl32: Remove the masked background when 32bpp bitmaps have no alpha values.
ntdll: Do not override existing context's EAX when dispatching user APC.
ntdll: Do not override existing context's RAX when dispatching user APC on x86_64.
Jacek Caban (3):
conhost: Fix wrapping search in edit_line_find_in_history.
jscript/tests: Silence noisy debug trace.
configure: Check for linker delayload support on mingw hosts.
Julian Rüger (1):
readme: Update German translation.
Kevin Puetz (1):
include: Check whether the ms_abi attribute is supported on aarch64.
Nikolay Sivov (1):
mfplat/tests: Get source events in async mode.
Piotr Caban (1):
msvcr100: Use LC_TIME code page when converting strftime data.
Qijia Liu (1):
winedbg: Distinguish -0 from 0.
Rémi Bernon (2):
windowscodecs: Copy container_count GUIDs, not bytes, in GetContainerFormats.
server: Accept DBG_EXCEPTION_HANDLED parameter in continue_debug_event.
Zebediah Figura (6):
wined3d: Use debug_d3dusage() for both usage and usage query flags.
user32/tests: Add some tests for WM_CANCELMODE.
user32/tests: Add some tests for release of capture via modal dialogs.
user32: Send WM_CANCELMODE to the current capture window after initializing a modal dialog.
ntdll: Set the process detaching flag before calling FLS callbacks.
kernel32/tests: Add a regression test for a deadlock calling FLS callbacks on process exit.
Zhiyi Zhang (1):
readme: Update Simplified Chinese translation.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.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/6.0/wine-6.0-rc5.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc5 (total 21):
21987 Acrobat 7 tryout installer complains: "This Postscript Driver or Windows Platform (Win9x/Me) not supported" (winspool.drv missing level 8/global default printer settings handling)
38166 Heroes of Might and Magic V performance issue: severe fps drop on certain maps
41593 Molot VST 0.3.1 UI: some knobs are not rendered
43852 Monkey Island Special Edition Collection: White screen and crash when starting Monkey1.exe
44243 Spire and Serum VST plugins using Direct2D render very slowly
44367 Multiple applications need d2d FillEllipse/DrawEllipse implementation (OP-X PRO II VST)
44454 Windows Media Encoder 9 refuses to install
44574 Microsoft Office 2013 client area is rendered black (Direct2D)
45096 MPC-HC 1.7.13 displays a message box: "Error creating EVR Custom renderer", "DXVA2CreateDirect3DDeviceManager9 failed"
47770 Waves Central plugin installation fails
47824 Remote Life 1.2 demo terminates with 'Cannot load library nw_elf.dll'
48142 shell32:appbar tests fail on some Windows 10 machines
49010 ilok license manager: doesn't connect to the activation server as in 4.0.2
49356 Saya No Uta (a.k.a. The Song of Saya) crashes when launching
49771 ntdll:exception causes an unhandled segmentation fault
50241 Vertical Text in NL5 schematic doesn't display correctly
50304 Control-C exits winedbg instead of stopping the inferior
50397 dlls/d3dcompiler_43/tests/hlsl_d3d11.c: error: unknown field ‘Texture2D’ specified in initializer
50408 wineboot crash to due getaddrinfo() returning NULL ai_canonname
50420 Divinity: Original Sin - Enhanced Edition crashes on startup
50423 dlls/devenum/mediacatenum.c: | function ‘property_bag_Read’ | error: unknown field ‘cPins2’ specified in initializer
----------------------------------------------------------------
Changes since 6.0-rc4:
Akihiro Sagawa (1):
readme: Update Japanese translation.
Alex Henrie (1):
winebus: Remove redundant preprocessor check for libsdl2.
Alexandre Julliard (1):
Update copyright info for 2021.
Alistair Leslie-Hughes (1):
include: Add DBACCESSORFLAGSENUM/DBBINDSTATUSENUM values.
Anton Baskanov (1):
winegstreamer: Unmap and unref the buffer and release the sample before returning.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Damjan Jovanovic (1):
ws2_32: Deal with getaddrinfo() returning NULL ai_canonname despite AI_CANONNAME.
Dean M Greer (2):
readme: Update OS X requirements.
configure: Remove Xcode 3.x check.
Esme Povirk (1):
user32/tests: Don't kill explorer to test shell window.
Jacek Caban (2):
condrv: Don't requre write access for IOCTL_CONDRV_CTRL_EVENT ioctl.
conhost: Ignore CONTROL_C_EXIT exceptions in Unix mode.
Jefferson Carpenter (1):
ntdll/tests: Clear AC flag in align check test.
Lauri Kenttä (1):
readme: Update Finnish translation.
Michael Stefaniuc (1):
msscript.ocx/tests: Use wide-char string literals.
Nikolay Sivov (1):
readme: Update Russian translation.
Paul Gofman (2):
ntdll: Use WINAPI calling convention for stub_entry_point().
user32: Add stub for SetDisplayConfig().
Qijia Liu (1):
winedbg: Remove arm_disasm_branchreg.
Sveinar Søpler (1):
readme: Update Norwegian translation.
Zebediah Figura (3):
httpapi/tests: Avoid some test failures with newer Windows 10.
devenum: Avoid initializing nameless unions in designated initializers.
server: Pass the correct size to sockaddr_from_unix() (Valgrind).
Zhiyi Zhang (1):
winex11.drv: Check that there are connected outputs before using XRandR 1.4.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.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/6.0/wine-6.0-rc4.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc4 (total 29):
24116 Cannot save game in Rainblood: Town of Death
25409 Windows Live Essentials for XP installer crashes
27229 printf() newline missing with multibyte strings
31942 Microsoft Office 2003 and Office 2003 Editions Resource Kit installers crash on startup
32061 Guild Wars: Launcher hangs sometimes
39731 Assassin's Creed IV Black Flag crashes
40430 Multiple NVIDIA installers abort due to failure to process xml config (PhysX 9.x, GeForce Now, GeForce Experience 3.x, RTX Voice)
41298 Battlefield 3 crashes during loading
41450 timestamp is missing from some debug messages
43329 Multiple applications fail to get selected path after double click last path element in IFileDialog2 folder selection dialog (Wargaming.net Game Center, Adobe DNG Converter 10.x/11.x)
43412 World of Warships: CEF screens cannot be displayed
44185 DragonAgeOrigins autorun.exe crash inside winegstreamer
44538 Tales of Zestiria doesn't start
45950 RedMon 1.9 (Redirection Port Monitor) does not work (missing support for monitors providing the MONITOR2 interface)
48587 httpapi tests are broken on Windows 8
49143 RTF Editor does not support cyrillic letters using MS Sans Serif Font
49347 Settlers III: mouse not working on start screen, game entry and statistics screen after a game, if "Automatically capture the mouse in full-screen windows" is on in winecfg
49493 Children Of Morta stays at blue stars screen after starting game.
49545 Current working directory reset to "/" executing a winegcc/wineg++ compiled program
49563 Adobe DNG converter 12.4 crashes after upgrade to Wine 5.12
49650 Bunch of Heroes (Steam) hangs with a black screen at startup
49683 Kingdom Come Deliverance crashes
49782 Elite Dangerous Horizons: crashes with wine64 5.16
49789 Tina 11 Demo crashes when run in a 64-bit prefix
50126 Writing VT_UI8 property type to a stream is not currently supported
50291 World of Warcraft Classic Fails to Close Cleanly
50354 Team Fortress 2 crashes during loading
50373 Touhou Shinpiroku trial terminates immediately
50378 dlls/amstream/tests/amstream.o error: unknown field ‘dwBitMasks’ specified in initializer
----------------------------------------------------------------
Changes since 6.0-rc3:
Akihiro Sagawa (2):
po: Update Japanese translation.
d3dx9: Avoid closing invalid handles.
Alexandre Julliard (2):
gdi32: Don't fail font creation when we are out of handles.
dwrite: Avoid a compiler warning when FreeType is missing.
Alistair Leslie-Hughes (4):
include: Add DB_LRESERVE type.
include: Add ExecuteOptionEnum typedef.
msado15: Set row_set point to NULL on close.
msado15/tests: Add test for interface ADOConnectionConstruction15.
Andrey Gusev (1):
po: Update Ukrainian translation.
André Hentschel (2):
opengl32/tests: Don't test function directly when reporting GetLastError().
kernel32/tests: Don't test functions directly when reporting GetLastError().
Biswapriyo Nath (2):
include: Add more Media Foundation error codes.
include: Add IAMCameraControl definition in axextend.idl.
Can Taşan (1):
po: Update Turkish translation.
Dmitry Timoshkov (6):
wbemprox/tests: Run StdRegProv tests using ROOT\\DEFAULT connection point.
wbemprox/tests: Add some tests for SystemRestore class.
gdi32/tests: Add some tests to show that GetGlyphIndices() should avoid best fit chars.
fonts: Correct default glyph index for MS Sans Serif font to match Windows.
shell32/tests: Remove no longer used parameter.
shell32/tests: Remove workarounds for shell32 < 5.0.
Huw D. M. Davies (1):
qcap: Avoid unused variable warning if v4l is absent.
Jacek Caban (1):
conhost: Fix copy-paste typos in selection coordinates.
Martin Storsjo (6):
asm: Separate .def/.scl/.type/.endef with newlines instead of semicolons.
winebuild: Pass -m options to dlltool for arm and arm64.
asm: Use SEH assembly when building with clang in MSVC mode.
include: Fix the signature of _InterlockedCompareExchange128.
include: Check whether the ms_abi attribute is supported on aarch64.
ntdll: Implement a no-op __chkstk for arm64.
Michael Stefaniuc (1):
winspool/tests: Use wide-char string literals.
Nikolay Sivov (1):
dwrite: Add a notice regarding HarfBuzz.
Paul Gofman (2):
ntdll: Always copy context in call_user_apc_dispatcher() on x86.
ntdll: Preserve syscall frame when calling async IO system APC.
Zebediah Figura (3):
amstream/tests: Define NONAMELESSUNION.
ucrtbase: Do not add MSVCRT_ prefix to the exported function name of _lrot*.
d3dcompiler/tests: Avoid initializing nameless unions in designated initializers.
Zhiyi Zhang (2):
gdi32/tests: Fix possible test failures in test_clip_box().
gdi32/tests: Fix test failures on Win10 1909+.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.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/6.0/wine-6.0-rc3.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc3 (total 19):
20352 Autodesk 3ds Max 9 fails to start: "adlmdll.dll failed to initialize" (failure to connect to Autodesk Licensing Service)
22009 Symantec Antivirus 10.1 installer fails due to missing Windows Event Log Service (wevtsvc)
32772 Built-in iexplore crashes on exit with Flash player 11 ActiveX plug-in installed
45699 Multiple applications crash on unimplemented function RPCRT4.dll.NdrClientCall3 (MS Office 2016 Pro Plus 64-bit/x64 installer, MS-MPI 10.x)
48808 user32:cursorinfo "wrong info cursor" failure in Chinese locale on Windows 10
49584 DbgHelp no longer can write minidumps
49614 Regression: Steam win32 client floods with "CreateSharedImage: invalid format" before crashing
49831 winetricks dotnet30sp1 fails
49832 Crysis crashes when starting a new game
49841 Provide an intermediate level of make output
49940 64Bit iexplore.exe crashes on macOS
50014 ConEmu hangs (no interaction possible with console)
50015 YUMI-UEFI broken in Wine 5.15
50052 wineconsole and mark-copy
50124 Objects are visible through each other or invisible at all with vulkan renderer (Sniper Elite V2, Banished)
50142 winedbg fails to run programs
50252 (linked ?) fonts not handled correctly since wine 5.21
50271 Wine throws virtual_setup_exception error during PSPad splash screen or while checking for updates
50343 ConEmu is extremely slow when resizing or selecting text
----------------------------------------------------------------
Changes since 6.0-rc2:
Akihiro Sagawa (3):
po: Update Japanese translation.
po: Update Japanese translation style.
po: Update Japanese translation.
Alex Henrie (2):
po: Update Catalan translation.
kernel32/tests: Add tests for Get(Active|Maximum)ProcessorCount.
Alexandre Julliard (6):
gdi32: Don't create font substitutes for identical names.
gdi32: Properly fail mapping glyph for invalid characters in fonts without encoding.
ntdll: Pass the correct handle to NtTerminateProcess().
vcomp/tests: Explicitly request signed chars.
makefiles: Make the tests also depend on the Unix library of the tested module.
ntdll: Only reset the Unix current directory on removable devices.
Biswapriyo Nath (7):
include: Add AUDCLNT_STREAMOPTIONS_AMBISONICS in audioclient.idl.
include: Add error codes in audioclient.idl.
include: Add AMBISONICS_PARAMS structure in audioclient.idl.
include: Add IAudioAmbisonicsControl interface in audioclient.idl.
include: Add more GUIDs in mfreadwrite.idl.
include: Add DEFINE_ENUM_FLAG_OPERATORS macro in mfreadwrite.idl.
include: Add DEFINE_ENUM_FLAG_OPERATORS macro in directmanipulation.idl.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Can Taşan (1):
po: Update Turkish translation.
François Gouget (4):
ws2_32/tests: Skip some raw socket tests when missing elevated privileges.
ntdll/tests: Skip some registry tests when missing elevated privileges.
ntdll/tests: The case-sensitivity tests don't need write access.
crypt32/tests: Fix a registerOIDInfo() failure when missing elevated privileges.
Haidong Yu (2):
inetcpl.cpl: Fix memory leak in security_on_initdialog.
ieframe: Fix memory leak in PersistFile_Save.
Henri Verbeet (9):
wined3d: Compare requested memory types in wined3d_bo_slab_vk_compare().
wined3d: Only clear "map_ptr" if the memory was unmapped in wined3d_allocator_chunk_vk_unmap().
wined3d: Unmap the chunk if needed in wined3d_context_vk_destroy_bo().
wined3d: Unmap the slab if needed in wined3d_context_vk_destroy_bo().
wined3d: The Vulkan blitter supports depth blits.
wined3d: Zero-initialise context_vk in wined3d_context_vk_init().
wined3d: Avoid referencing empty command buffers in wined3d_query_event_vk_issue().
wine.inf: Store Dynamic DST data for Asia/Tehran as "relative" dates.
wined3d: Do not create Vulkan 2D (array) views for UAVs on 3D resources.
Jacek Caban (9):
dbghelp: Fetch version info only for PE modules in minidumps.
ucrtbase: Improve __intrinsic_abnormal_termination stub.
msvcrt: Prefix *rot* functions.
msvcrt: Use GCC-style assembly on Clang MSVC target.
msvcrt: Use __ASM_USE_THISCALL_WRAPPER in cxx.h.
winapi: Use __alignof__ on clang.
conhost: Don't create bitmap for hidden windows.
conhost: Improve get_output_info debug traces.
widl: Don't apply call_as methods to async interface.
Jactry Zeng (1):
po: Update Simplified Chinese translation.
Michael Stefaniuc (7):
wldap32/tests: Use wide-char string literals.
hnetcfg/tests: Use wide-char string literals.
atl100/tests: Use wide-char string literals.
msi/tests: Use wide-char string literals.
schedsvc/tests: Use wide-char string literals.
qcap/tests: Use wide-char string literals.
gdi32/tests: Use wide-char string literals.
Paul Gofman (5):
ws2_32: Fix buffer size check in WSAIoctl() for SIO_GET_INTERFACE_LIST.
ntdll: Remove unwind registers save space from struct stack_layout on x64.
ntdll: Always copy context in call_user_apc_dispatcher() on x64.
ntdll: Save unwind information in KiUserApcDispatcher() on x64.
ws2_32/tests: Don't fail the test in test_wsaioctl() if only one interface is available.
Rafał Harabień (1):
d3d9: Fix handling of D3DENUM_WHQL_LEVEL.
Rémi Bernon (1):
wintrust: Don't fail CryptCATOpen on empty file or invalid data.
Zebediah Figura (5):
httpapi/tests: Sleep before calling GetOverlappedResult() in test_v2_server().
winmm: Always allocate at least MAX_PATH bytes in mmioOpenW().
winmm/tests: Test the mmioOpen() search path with various flags.
winmm/tests: Add some tests for MMIO_PARSE with long file names.
winmm: Search the default path when opening an existing file in create_file_OF().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.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/6.0/wine-6.0-rc2.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc2 (total 40):
16250 Sacred Gold Edition: cinematics do not play
29310 FirstClassClient 12.005 no login screen
32877 Gnomoria Demo crashes on launch.
33488 Print Artist 4.0 (Win 3.11/95) installer doesn't show up
34373 AirScout 0.9.9.5 (.NET 4.0 app) fails to start with Wine-Mono (System.Windows.Forms.DataVisualization.Charting.Chart.BeginInit method not implemented)
38161 Whispering Willows has missing text for Cyrillic alphabet
42152 eFax Messenger 4.4: hangs during installation
43362 Bethesda Net Launcher can`t download games
44455 Grandia 2 movies don't play
45249 Multiple applications wrapped with PE Compact v2.x protection scheme crash on startup (GOT/PIC code emitted at Win32 API entries)(Zockinger Facilitator TFFT v1.1x)
45404 LEGO Rock Raiders crashes early on launch
48362 Shadwen (32-bit version) crashes after an intro or chapter restart
48531 Commandos 2 - HD Remaster fails to launch without native .NET 4.0
48850 Mafia: The City of Lost Heaven videos playing in pink
49106 error: redefinition of typedef ‘UCHAR’ (plus 'PUCHAR’, ‘USHORT’, 'PUSHORT’, ‘ULONG’, and 'PULONG’)
49191 armv7l build broken: dlls/ntdll expression too complex (compiler default '-march=armv6' doesn't support __sync_add_and_fetch for 64-bit integers)
49455 Resident Evil Revelations 2 goes into split screen with one controller.
49467 Resident Evil Revelations 2 my directional pad does not work when analogs are enabled.
49535 Multiple applications have overly green and purple videos due to bad YUV -> RGB conversion (Final Fantasy XI Online, Megarace 3, BlazBlue Calamity Trigger, Mafia: The City of Lost Heaven)
49540 Silverlight configuration tab "Webcam / Mic" crashes without functional GL libraries
49690 winetricks dotnet35 hangs in 64-bit prefixes
49838 Backtraces no longer contain symbols
49892 WINE 5.17 never ending loop on "Setting up the windows environment..." ( Android-x86 OS running on PC)
49900 Go programs built using go-winio crash on unimplemented function ntdll.dll.RtlDefaultNpAcl
50010 Deus Ex Mankind Divided crashes if Wine is compiled with mingw
50024 signtool.exe from Windows 7 SDK fails to find certificates
50102 Starcraft fails to download cloud settings in fullscreen mode
50114 Battle.net App hangs when opening web links
50121 Commandos 2 - HD Remaster too dark with vulkan renderer
50127 Fonts are thin and pale
50139 Exact Audio Copy (EAC) 1.6 plugins not loading (dotnet20 / dotnet40)
50173 Autocad 2005 no longer launches
50175 Path of Exile: some Cyrillic and Hungul text is missing since Wine 5.20
50190 Shockwave Projector: crash on launch
50211 Quicken 2004 XG Release 2 crashes on startup
50216 Doesn't start Thunderbird (x64 portable version) any more
50228 Warframe: filtering by text does not work for Cyrillic since wine-5.14
50273 Sid Meier's Civilization III Complete crashes on start
50274 Copy paste bug in ipstats.c
50294 It's no longer possible to execute a Winelib binary built with older version of Wine
----------------------------------------------------------------
Changes since 6.0-rc1:
Alex Henrie (1):
ntdll: Remove unnecessary call to strlen from get_dos_device.
Alexandre Julliard (11):
gdi32: Always let the Freetype driver fixup the AA flags.
ntdll: Don't use the main exe path as bindir on Android.
libwine: Move the Android JNI initialization to ntdll.
libwine: Mark more functions as obsolete.
ntdll: Support the Android Java %fs register being a GDT selector.
winegcc: Look for ntdll.so instead of libwine.so to find the library directory.
libwine: Add missing wine/asm.h include.
configure: Force -static-libgcc when using libunwind.
include: Avoid redefining base types in ntdef.h.
configure: Get rid of some removed files in the install target.
makefiles: Add support for Automake-style silent make rules.
Biswapriyo Nath (6):
ntdll: Add RtlDefaultNpAcl stub.
include: Add ID2D1ColorContext interface in d2d1_1.idl.
include: Add ID2D1GradientStopCollection1 interface in d2d1_1.idl.
include: Add ID2D1ImageBrush interface in d2d1_1.idl.
include: Add ID2D1StrokeStyle1 interface in d2d1_1.idl.
include: Add ID2D1Multithread interface in d2d1_1.idl.
Charles Davis (1):
iphlpapi: Fix copy-paste error.
Haidong Yu (1):
evr: Add missing LeaveCriticalSection on creating tracking thread.
Hans Leidekker (1):
setupapi: Handle NULL source filename in build_filepathsW.
Henri Verbeet (5):
wined3d: Ensure the last mip-level is at least large enough to hold a single compressed block.
wined3d: Use an sRGB fallback format for sRGB formats in wined3d_swapchain_vk_select_vk_format().
wined3d: Do not request VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT for dynamic buffers.
wined3d: Request VK_MEMORY_PROPERTY_HOST_CACHED_BIT for WINED3D_RESOURCE_ACCESS_MAP_R buffers.
wined3d: Do not request VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT for unmappable buffers.
Jacek Caban (4):
conhost: Fix handling selection boundaries in copy_selection.
conhost: Use QS_ALLINPUT to wait for input in main loop.
dbghelp: Use WINELOADER environment variable from debuggee process in get_wine_loader_name.
setjmp.h: Use GCC-style setjmp on Clang in MSVC mode.
Jeff Smith (5):
gdiplus/tests: Use wide-char string literals for font names.
gdiplus/tests: Use wide-char string literals for file names.
gdiplus/tests: Use wide-char string literal for mimetype.
gdiplus/tests: Use wide-char string literal for metafile description.
gdiplus/tests: Use wide-char string literals for test strings.
Julian Rüger (1):
po: Update German translation.
Michael Stefaniuc (13):
msvfw32/tests: Use wide-char string literals.
oledlg/tests: Use wide-char string literals.
msctf/tests: Use wide-char string literals.
gameux/tests: Use wide-char string literals.
ieframe/tests: Use wide-char string literals.
jscript/tests: Use wide-char string literals.
scrrun/tests: Use wide-char string literals.
cryptui/tests: Use wide-char string literals.
dnsapi/tests: Use wide-char string literals.
shcore/tests: Use wide-char string literals.
version/tests: Use wide-char string literals.
wmvcore/tests: Use wide-char string literals in locale.c.
ntoskrnl/tests: Use wide-char string literals in locale.c.
Nikolay Sivov (1):
sxs: Query context that contains the GUID in SxsLookupClrGuid().
Paul Gofman (4):
ntdll/tests: Add a broken result for Win7u in test_extended_context().
ntdll: Restore non-volatile registers in call_user_exception_dispatcher() on x86_64.
kernelbase: Get language sort only when required in LCMapStringEx().
ntdll: Don't set xstate in context if xstate features are not supported.
Rafał Harabień (1):
include: Remove two D3DCAPS2 defines in d3d9 headers.
Rémi Bernon (3):
gdi32/tests: Test GetGlyphIndices with '\0' default and a glyph.
gdi32: Don't try to get glyph index when default char is 0.
gdi32: Fix gdi font leak in CreateScalableFontResourceW.
Zebediah Figura (4):
Revert "winegstreamer: Avoid performing color matrix conversions in videoconvert.".
winegstreamer: Clean up a newly allocated buffer on error in bytestream_wrapper_pull().
kernel32/tests: Add some more tests for FILE_ATTRIBUTE_REPARSE_POINT.
winegstreamer: Remove the color matrix setting for the other videoconvert as well.
Zhiyi Zhang (2):
user32/tests: Test that monitor handles are user32 handles.
user32/tests: Test that monitor enumeration is not affected by window stations and desktops.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 6.0-rc1 is now available.
This is the first release candidate for the upcoming Wine 6.0. It
marks the beginning of the yearly code freeze period. Please give this
release a good testing to help us make 6.0 as good as possible.
What's new in this release (see below for details):
- Gecko engine update.
- WindowsCodecs and QCap libraries converted to PE.
- Faster font initialization at process start.
- Support for named pipes with empty names.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/6.0/wine-6.0-rc1.tar.xzhttp://mirrors.ibiblio.org/wine/source/6.0/wine-6.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 6.0-rc1 (total 53):
15301 Biliardo 2 installer terminates on launch (32-bit Ghost-based installer uses year 2045 file date for decrypting database, triggering y2038 problem)
21881 iScreensaver Designer 3.5 crashes
28089 exception handling code touches stack for exceptions handled by the debugger
28332 Wazzal 1.2 (2002 release) crashes after clicking 'Play'
33310 Minimizing window erases chess board in Shredder Classic 4 Windows
33996 Multiple installers fail in VBScript custom actions due to missing support of Properties with Parameters (IncrediMail, LabChart Reader 8, Toad for MySQL Freeware 7.x)
34770 Some WMI applications fail when incorrectly passing WBEM_MASK_CONDITION_ORIGIN to IWbemClassObject::GetNames method
35272 Mortal Kombat Komplete Edition (Steam) crashing to desktop within graphics autoconf.
40146 Mein Verein 2016 Trial fails to install
42095 winamp: skins don't change unless app is restarted
42623 Changing current dir ~/.wine crashes Far Manager
42741 Multiple Blizzard games fail to launch (StarCraft I & II, Diablo III, Heroes of the Storm)
43567 Vietcong - game crashes during radiocalls ('kernel32.GetTickCount' clobbers ECX)
44061 Destiny 2 crashes on launch (needs non-zero TimeDateStamp field in PE file header)
44435 Call of Duty WWII crash
44502 Epic Games Launcher (Fortnight 7.x) reports 'Error: Initialization failed while advising the language notification sink to the TSF source. (0x80004001)' (unsupported ITfActiveLanguageProfileNotifySink)
44524 skyrim keypad 0~9,'*','/' is not working causing some shortcut not work.
44882 Call of Duty Infinite Warfare crashes after Splash-Screen with a Direct-X Error
45383 Xanadu Next: movies not working (avi/MPEG-4 (XviD))
45510 Sentinel HASP Runtime v6.6-7.8 driver installer reports Windows error 1053 when starting the 32-bit hardlock kernel driver service (custom imports resolver fails to locate some ntoskrnl exports)
46028 Provide separate debug/symbol info files (.pdb) for 32-bit and 64-bit Wine-Gecko 2.47+ package (unstripped 32-bit 'xul.dll' too large to be mapped)
46216 Multiple games need ThreadEnableAlignmentFaultFixup (Lords of the Fallen, Batman: Arkham Knight, Mirror's Edge: Catalyst)
46236 Far 3.0 x64 crashes starting from build 5200
46237 Far 3.0 x86 crashes starting from build 5288
47950 Ys: Memories of Celceta crashes on launch
48545 SDL GameControllerAddMapping registry keys do not work
49116 Multiple installers using "mbahost.dll" crash due to method invocation on CCW class interface (Windows 10 1903 SDK (10.0.18362.0), SQL Server Management Studio, Raid Shadow Legends)
49437 Segmentation fault (core dumped) even on winecfg or wineconsole on FreeBSD
49969 Videos are not synced in X3 Reunion
49975 Battlefield 1, 4 and V not start from with wine-staging 5.17 on
50031 The Foundation Game crashes with bundled ucrtbase
50037 wineconsole and mingw64 gdb.exe and keyboard input
50080 Burnout Paradise: The Ultimate Box crashes between intros
50094 Rockstar Games Launcher installer hyperlinks don't work
50096 Performance Regression in Secondhand Lands
50105 New Vegas Heap Replacer crashes with "Call from 0x7bc91c09 to unimplemented function d3dx9_38.dll.D3DXMatrixMultiply"
50134 Steam terminates/crashes in clean prefix.
50154 Allow using SDL_GAMECONTROLLERCONFIG to configure SDL controller mappings
50160 VstHost crashes on unimplemented function avrt.dll.AvSetMmMaxThreadCharacteristicsA
50163 Multiple applications crash with a stack overflow (Mod Organizer 2, World of Tanks, SWTOR, Audacity)
50169 Regression: Microsoft Flight Simulator X hangs on startup (bisected)
50171 32-bit PE entry point no longer called through BaseThreadInitThunk() assembly wrapper when Wine is built with LLVM MinGW
50176 Tracing with 'msvcrt' debug channel causes any application to fail with stack overflow in Wine 5.22
50179 Future Pinball: parse_hex_literal invalid literal
50188 Audacity fails to start
50189 Multiple 64-bit applications crash with Wine MinGW PE build due to violation of Windows 64-bit ABI (RSP must be 16-byte aligned when making a call to Win64 API)
50192 Python "import sys" crashes with Unhandled exception
50197 cmd and winedbg: Unable to insert some chars (*, _) with de-adnw keyboard layout
50204 wineserver from Wine 5.22-195-gcbca9f847f6 debug dumps NLS object information on shutdown
50206 Cinebench R23 needs dcomp.dll
50213 Summer Pockets (demo) complains about timezone settings.
50236 Multiple console applications using WriteFile() to write to console don't show any output since Wine 5.22 (winepath)
50240 CLR console applications loop output infinitely
----------------------------------------------------------------
Changes since 5.22:
Akihiro Sagawa (3):
ntdll: Add a timezone mapping rule for North Korea Standard Time.
quartz/tests: Add some tests for VMR7 windowless video size.
quartz/vmr9: Allow the aspect ratio parameters to be NULL in IVMRWindowlessControl::GetNativeVideoSize().
Alexandre Julliard (51):
kernel32: Implement BaseThreadInitThunk in assembly also for PE builds.
include: Add asm helper macros to define import variables.
include: Move XSTATE definitions to winnt.h.
include: Use proper dllimports for kernel32 functions.
include: Use proper dllimports for msvcrt functions.
ntdll: Make x86_64 syscall thunks position independent.
include: Only define _strnicmp() prototype when needed.
include: Make the CURRENT_STACK16 and CURRENT_DS macros available globally.
include: Add CURRENT_SS/SP macros for 16-bit code.
krnl386: Move the 16-bit stack out of the WOW32Reserved field.
ntdll: Store the syscall dispatcher also in the WOW32Reserved TEB field.
include: Force aligning stack pointer also for Mingw builds.
configure: Also disable format warnings for ARM64.
msvcrt: Fix floating-point status register size on ARM64.
kernel32/tests: Fix floating-point status register size on ARM64.
ntdll/tests: Fix a trace format on ARM64.
winebuild: Initialize entry point to avoid a compiler warning.
shell32: Silence buffer overflow compiler warnings.
winemenubuilder: Silence out of bounds compiler warning.
msxml3: Clear one extra variant in collection enumeration.
msxml3: Only allow ASCII characters in number conversion.
msvcp: Use a constant string as fprintf format.
ntdll: Avoid closing an invalid handle on process creation failure.
server: Use l_intl.nls for case mappings.
server: Create the NLS section object for the l_intl.nls file.
server: Release the l_intl fd once the mapping is created.
libport: Add both inline and non-inline versions for every Unicode function.
libport: Move the non-inline version of the string functions to libwine.
libwine: Move libwine private definitions out of the global wine/unicode.h
libport: Move the case mapping table back to libwine and stop updating it.
libport: Move the char type table back to libwine and stop updating it.
windowscodecs: Build with msvcrt.
libport: Remove the rint() function replacements.
libport: Remove the ffs() function replacement.
libport: Remove the statvfs() function replacements.
libport: Remove the strnlen() function replacement.
libport: Remove the usleep() function replacement.
libport: Remove the isfinite/isinf/isnan function replacements.
configure: Remove some no longer needed configure checks.
makedep: No longer use wine/port.h.
include: Remove some no longer used Unicode functions.
wine.inf: Create a default win.ini file.
rpcrt4/tests: Avoid a printf format warning.
hhctrl.ocx: Use stricmp() instead of _strnicmp(..., -1).
wpp: Don't try to recover from memory allocation errors.
wpp: Use standard Wine lists where possible.
wpp: Remove some dead code.
wpp: Merge preproc.c into wpp.c.
Revert "winecrt0: Make the main() and wmain() entry points cdecl."
makefiles: Get rid of the libwine.so symlink.
msvcrt: Fix _wstat() spec entry.
Alistair Leslie-Hughes (3):
msctf: Accept ITfActiveLanguageProfileNotifySink in ThreadMgr AdviseSink.
include: Add some DB_S_ defines.
odbccp32: Implement SQLRemoveDSNFromIni/w.
Andrey Gusev (2):
bcrypt: BCryptCreateHash is no longer a stub.
wined3d: Add NVIDIA GeForce GTX 1060 Mobile.
Arkadiusz Hiler (2):
user32: Fix WM_DEVICECHANGE handling.
plugplay: Send WM_DEVICECHANGE with DBT_DEVNODES_CHANGED with each event.
Austin English (1):
dcomp: Add stub dll.
Bernhard Übelacker (1):
gdi32: Avoid crash by initializing variable font_set.
Biswapriyo Nath (5):
include: Add D3D10_RAISE_FLAG structure in d3d10.idl.
include: Add D3D11_FENCE_FLAG_NON_MONITORED name in d3d11_3.idl.
include: Add D3D11_FEATURE_DATA_D3D11_OPTIONS5 structure in d3d11.idl.
include: Add D3D11_RAISE_FLAG enumeration in d3d11.idl.
include: Add D3D11_FORMAT_SUPPORT2 enumeration in d3d11.idl.
Brendan Shanks (3):
winebus.sys: Open IOHID devices individually to fix macOS Catalina and Big Sur.
winebrowser: Prefix an invalid URL with 'http://' before opening with a browser.
wine.inf: Add UrlAssociations for FTP/HTTP/HTTPS.
Damjan Jovanovic (1):
ntdll: Fix backward compatibility for struct link_map on FreeBSD.
Daniel Lehman (4):
shcore: Return ISequentialStream interface for memory stream.
msxml3: Support ISequentialStream in domdoc_transformNodeToObject.
shcore: Return failure on Read past end of memory stream.
ntdll: Handle 64-bit addresses in +seh traces on x64.
Dean M Greer (1):
configure: Don't prepend folder name for SDL.h.
Derek Lesho (14):
mf/samplegrabber: Evaluate type compatibility by comparison to the initial type.
mf/topoloader: Add partial topology resolution tests.
mf/topoloader: Move node connection responsibility to connection function.
mf/topoloader: Implement source node to sink node branch resolver.
mf/topoloader: Unstub IMFTopologyLoader::Load.
winegstreamer: Use gst_audio_info_to_caps for media type translation.
winegstreamer: Introduce audio conversion transform.
winegstreamer: Register the audio conversion transform.
winegstreamer: Implement ::GetInputAvailableType for audio conversion transform.
winegstreamer: Implement ::GetOutputAvailableType for audio conversion transform.
winegstreamer: Implement ::ProcessMessage for audio conversion MFT.
winegstreamer: Implement ::SetInputType for audio conversion transform.
winegstreamer: Implement ::SetOutputType for audio conversion transform.
winegstreamer: Implement Get(Input/Output)CurrentType functions for audio converter transform.
Dmitry Timoshkov (3):
crypt32: Add support for CRYPT_STRING_HEX to CryptBinaryToStringW.
crypt32: Fix reading and writing CRYPT_KEY_PROV_INFO certificate property.
crypt32/tests: Add some tests for CRYPT_KEY_PROV_INFO certificate property.
Erich Hoover (1):
ntdll: Fix converting large 32-bit time_t when time_t is signed.
Esme Povirk (4):
windowscodes: Move tiff encoding to the unix lib.
windowscodecs: Initialize encoder flags for png encoder.
windowscodecs: Move jpeg encoding to the unix lib.
windowscodecs: Move ICNS encoding to the unix lib.
François Gouget (13):
xactengine3_7/tests: Fix the spelling of a couple of comments.
user32/tests: Fix the spelling of a win_skip() message.
dssenh/tests: Fix the spelling of a skip() message.
qmgr/tests: Fix the spelling of an ok() message.
ole32/tests: Add a trailing linefeed to an ok() message.
ws2_32: Fix the spelling of a comment.
gdi32/tests: Fix the spelling of an ok() message.
dxgi/tests: Fix the grammar in a comment.
advapi32/tests: Don't check the display name if not in an English locale.
ntdll/tests: Don't check the load address in the WoW64 case.
msxml3/tests: Fix the spelling of a test string.
fsutils/tests: Fsutils requires elevated privileges on Windows <= 7.
mscoree/tests: The comtest registry tests may require elevated privileges.
Gabriel Ivăncescu (11):
msvcrt: Fix signature of _mbscmp.
winex11.drv: Always enable minimize/maximize functions for minimized windows.
conhost: Respect the StartupInfo's wShowWindow.
include/icmpapi: Add missing function declarations.
iphlpapi/tests: Close the ICMP handle when done.
iphlpapi/tests: Trace the ICMP reply only with debug level > 1.
iphlpapi: Move the ICMP reply retrieval to a helper function.
iphlpapi: Implement IcmpSendEcho and IcmpSendEcho2 via IcmpSendEcho2Ex.
iphlpapi: Fix adjusting data pointer after an ICMP reply.
iphlpapi: Make sure there's no gap between the ICMP_ECHO_REPLY array and the data.
iphlpapi: Store an IO_STATUS_BLOCK at the end of the reply buffer if there's enough space available.
Gerald Pfeifer (1):
advapi32/tests: Initialize luid in test_CreateRestrictedToken.
Gijs Vermeulen (7):
sapi: Fix typo in ISpVoice::SetOutput() trace.
msctf/tests: Add ITfSource::[Un]AdviseSink() test with ITfActiveLanguageProfileNotifySink.
quartz: Return VFW_E_ENUM_OUT_OF_SYNC in IEnumFilters::Skip() when enum version doesn't match graph version.
quartz: Return E_INVALIDARG when cursor is NULL in IEnumFilters::Skip().
quartz: Only return S_FALSE in IEnumFilters::Skip() if count goes past the end of the sequence.
avrt: Add AvSetMmMaxThreadCharacteristicsA/W stub.
winegstreamer: Initialise type_handler to NULL in media_stream_init_desc().
Hans Leidekker (4):
winebus.sys: Fix registry access rights for SDL controller mapping.
winebus.sys: Support setting SDL controller mapping through environment variable.
oledb32: Add a partial implementation of IErrorRecords_GetErrorInfo().
wbemprox: Mark some string properties as dynamic.
Henri Verbeet (22):
include: Update the d3d12 headers from vkd3d.
wined3d: Store the usage in struct wined3d_bo_gl.
wined3d: Use command buffer IDs for synchronisation in wined3d_buffer_gl_sync_apple().
wined3d: Reference the source/destination bo in wined3d_context_gl_copy_bo_address().
wined3d: Reference the bo in wined3d_unordered_access_view_gl_clear_uint().
wined3d: Reference the indirect buffer bo in wined3d_context_gl_draw_indirect().
wined3d: Reference the indirect buffer bo in dispatch_compute().
wined3d: Reference the stream output bo in context_load_stream_output_buffers().
wined3d: Reference the UAV bo in context_load_unordered_access_resources().
wined3d: Reference the SRV bo in context_load_shader_resources().
wined3d: Reference the constant buffer bo in context_gl_load_shader_resources().
wined3d: Reference the bo (if any) in texture2d_read_from_framebuffer().
wined3d: Reference the source/destination bo in wined3d_texture_copy_sysmem_location().
wined3d: Reference the bo in wined3d_texture_gl_upload_data().
wined3d: Reference the bo in wined3d_texture_gl_download_data_slow_path().
wined3d: Reference the bo in wined3d_texture_gl_download_data().
wined3d: Reference the bo in wined3d_buffer_gl_upload_ranges().
wined3d: Explicitly synchronise in wined3d_context_gl_map_bo_address().
wined3d: Use the "bo user" mechanism to invalidate existing bindings in wined3d_buffer_gl_destroy_buffer_object().
wined3d: Allocate a new bo for busy DISCARD maps.
wined3d: Get rid of redundant DISCARD filtering.
wined3d: Handle GL_APPLE_flush_buffer_range flushing in wined3d_context_gl_unmap_bo_address().
Jacek Caban (26):
server: Properly handle NtQueryInformationFile on console handles.
kernelbase: Use NtQueryInformationFile for consoles handles in GetFileSizeEx.
server: Support FileFsDeviceInformation queries on console handles.
server: Remove no longer needed hack for inheriting console from stdin.
conhost: Signal console in process_console_input if needed.
mshtml: Normalize bool values before passing them to Gecko.
jscript: Set error location when handling errors directly in parser.
server: Rename console_input to console.
server: Rename create_console_output to create_screen_buffer.
server: Rename unbound devices to console_input and console_output.
server: Use separated fd ops for unbound console input.
server: Use separated fd ops for unbound console output.
kernelbase: Use FileFsDeviceInformation for console handles in GetFileType.
mshtml: Update to Wine Gecko 2.47.2.
server: Remove no longer needed free_console.
server: Set console renderer thread in get_next_console_request.
cmd: Don't use WCMD_is_console_handle.
kernelbase: Remove no longer needed console handle mapping.
kernel32: Remove no longer needed CONSOLE_Init.
kernelbase: Simplify CreateFileW.
server: Block console write until conhost processes ioctl.
kernel32: Remove no longer used variables.
kernel32: Remove outdated comments.
conhost: Allow events with left alt pressed in edit_line_insert.
server: Fix handling of STATUS_ALERTED in get_next_console_request.
makedep: Use -fno-builtin for crt modules.
Jeff Smith (4):
gdiplus: Fix function name typo in comment.
gdiplus: Guard initialization of installed font collection.
jscript: Use wide-char string literals.
jscript: Clean up date formatting strings with era.
Kevin Puetz (5):
ntdll: Don't access empty IMAGE_FILE_IMPORT_DIRECTORY.
winegcc: Implement -Wl,--out-implib.
winebuild: Select all __wine_spec_exe* entry inside winebuild.
winebuild: Find main/wmain in static libraries.
winebuild: Find WinMain/wWinMain in static libraries.
Lauri Kenttä (1):
po: Update Finnish translation.
Liam Middlebrook (2):
winevulkan: Make_vulkan handle VkDeviceAddress basetype.
winevulkan: Update to VK spec version 1.2.162.
Matteo Bruni (16):
d3dx9: Correctly handle sprites array reallocation.
wined3d: Ignore WINED3DFMT_NULL rendertarget in D/S size checks.
d3d9/tests: Use get_readback_color() in test_null_format().
d3d9/tests: Test using a "NULL" texture with a smaller D/S texture.
wined3d: Use glClearDepthf() when available.
wined3d: Add a trace to wined3d_context_gl_bind_fbo().
wined3d: Introduce wined3d_context_gl_destroy_bo().
wined3d: Introduce wined3d_context_gl_create_bo().
wined3d: Use GL_ARB_buffer_storage if available.
wined3d: Get rid of an unnecessary assignment.
d3d9/tests: Make a variable static const.
d3d11: Don't explicitly check for cube map support.
wined3d: Rename d3d_synchronous debug channel to d3d_sync.
wined3d: Allow forcing commands serialization in the CS thread.
d3d9/tests: Skip pretransformed_varying_test() on 32-bit WARP.
d3d9/tests: Accept new WARP test failure in test_updatetexture().
Michael Stefaniuc (42):
comdlg32: Use wide-char string literals.
wininet: Use wide-char string literals in struct initialization.
jscript: Use wide-char string literals.
mshtml: Use wide-char string literals in html*.c.
mshtml: Use wide-char string literals for PRUnichar strings.
mmdevapi: Use wide-char string literals.
msacm32: Make the registry key variables global.
msacm32: Use wide-char string literals.
mshtml: Use wide-char string literals.
kernelbase: Use wide-char string literals.
wininet: Use wide-char string literals.
ole32: Use wide-char string literals.
ole32: Use wide-char string literals in filemoniker.c.
rpcrt4: Use wide-char string literals.
oleaut32: Use more wide-char string literals.
wbemdisp: Use wide-char string literals.
cmd: Avoid casting a const away.
cmd: Inline some simple extern WCHAR strings.
cmd: Use wide-char string literals in builtins.c.
cmd: Use wide-char string literals.
urlmon: Use wide-char string literals in struct initialization.
dmusic: Sync up the dmobject.[ch] files.
cryptdlg: Use wide-char string literals.
sti: Use wide-char string literals.
shdocvw: Use wide-char string literals.
windowscodecs: Use wide-char string literals in metadataquery.c.
windowscodecs: Use wide-char string literals in regsvr.c.
windowscodecs: Use wide-char string literals.
windowscodecs: Use wide-char string literals in struct initialization.
oleaut32: Use a string literal for an empty string.
regsvr32: Use a string literal for an empty string.
mapi32: Use wide-char string literals.
qcap: Use wide-char string literals.
msi: Use a string literal for empty strings.
urlmon: Use wide-char string literals.
ntdll: Print the correct debug string and not a random global variable.
ntdll: Use wide-char string literals in actctx.c.
ntdll: Use wide-char string literals in version.c.
ntdll: Use wide-char string literals.
xmllite: Use a string literal for an empty string.
xmllite: Drop superfluous casts to self.
localspl: Use wide-char string literals.
Nikolay Sivov (38):
mf/tests: Relax error code test for IsMediaTypeSupported() of SAR.
mf/tests: Add another test for SAR time source.
mf/session: Fix comment for the stop helper.
mf/evr: Translate EC_DISPLAY_CHANGED notification to MEStreamSinkDeviceChanged events.
evr/tests: Add some tests for presenter quality control.
mfreadwrite/reader: Alternate between selected streams for MF_SOURCE_READER_ANY_STREAM requests.
evr/presenter: Set frame size and aperture attributes for mixer output type.
evr/presenter: Add aspect ratio preserving scaling.
mfreadwrite/reader: Implement GetServiceForStream() for stream objects.
oleaut32: Use wide-char string literals.
winegstreamer: Fix possible leak on error path (Coverity).
mf/session: Propagate allocator initialization failure code (Coverity).
mfplat/mediatype: Store extra format data as MF_MT_USER_DATA when initializing from WAVEFORMATEX.
dwrite/layout: Keep automatic axes property.
dwrite/layout: Zero-initialize format structure.
dwrite/layout: Zero-initialize layout structure.
dwrite/layout: Zero-initialize initial runs and ranges.
dwrite/layout: Use consistent tracing format for default trimming sign.
dwrite/font: Use consistent traces for the font object.
dwrite/gdiinterop: Use consistent trace format for the bitmap render target.
dwrite/gdiinterop: Use consistent traces for the interop object.
dwrite/font: Reimplement HasVerticalGlyphVariants() flag using general shaping logic.
dwrite: Use font data access helpers when reading metrics tables.
mfplat: Remove duplicated attribute from tracing.
mfplat/mediatype: Do not add user data when converting from WAVE_FORMAT_EXTENSIBLE.
mf/topoloader: Set MF_TOPONODE_DECODER for the decoders.
mf/topoloader: Set MF_TOPONODE_TRANSFORM_OBJECTID for created transforms when CLSID is available.
mf/topoloader: Make sure MF_TOPONODE_STREAMID is set for all outputs.
mf/topoloader: Set MF_TOPONODE_MEDIASTART for all source nodes.
mf/topoloader: Add copier transform automatically for D3D-aware outputs.
dwrite/shaping: Merge extension subtables handling with existing helper.
dwrite: Remove explicit lookup type check in GetVerticalGlyphVariants().
dwrite: Use consistent trace format for strings object.
dwrite: Use consistent trace format for rendering parameters object.
dwrite: Use consistent trace format for font data access objects.
dwrite: Use consistent trace format for rendering object.
bcrypt: Implement RSA key pair importing.
bcrypt: Add initial support for asymmetric keys in BCryptDecrypt().
Paul Gofman (5):
server: Do not dereference symlinks specified as root directory.
server: Allow named pipes creation with device file as root directory.
server: Return STATUS_OBJECT_PATH_INVALID for noname pipe name query.
server: Allow client pipe creation with server pipe as root directory.
ntdll/tests: Test noname named pipe uniqueness.
Piotr Caban (89):
msvcrt: Update lc_category.wrefcount in __get_current_locale.
msvcrt: Remove traces from printf.
msvcrt: Fix C locale lc_time_curr refconting.
msvcrt: Introduce flags field to describe locale stored in thread data.
msvcrt: Lock _MB_CP_LOCK lock in setmbcp.
msvcrt: Return thread locale copy in get_locinfo and get_mbcinfo.
msvcrt: Reimplement _configthreadlocale function.
msvcrt: Make old locale access thread-safe in setlocale.
msvcrt: Simplify get_current_locale_noalloc implementation.
msvcrt: Don't write Unicode BOM if file is not empty in _wsopen_dispatch.
msvcrt: Implement opening Unicode files with no BOM in _wsopen_dispatch.
msvcrt: Move btowc implementation to mbcs.c file.
msvcrt: Move towctrans to wcs.c file.
msvcrt: Remove MSVCRT_lconv type.
msvcrt: Remove MSVCRT_pthreadlocinfo type.
msvcrt: Remove MSVCRT_pthreadmbcinfo type.
msvcrt: Remove MSVCRT__locale_t type.
msvcrt: Remove MSVCRT prefix from locale functions.
msvcrt: Remove MSVCRT_wchar_t type.
msvcrt: Use wide-char string literals.
msvcrt/tests: Use wide-char string literals.
msvcrt: Use type ranges definition from public header.
msvcrt: Use simple type definitions from public header.
msvcp90: Remove MSVCP_size_t type.
msvcp90: Use wide-char string literals.
msvcp90/tests: Use wide-char string literals.
msvcp90: Remove MSVCP_bool type.
msvcp60: Remove MSVCP_size_t type.
msvcp60: Use wide-char string literals.
msvcp60/tests: Use wide-char string literals.
msvcp60: Remove MSVCP_bool type.
msvcp120/tests: Use wide-char string literals.
msvcp140/tests: Use wide-char string literals.
msvcr90/tests: Use wide-char string literals.
msvcr100/tests: Use wide-char string literals.
msvcr120/tests: Use wide-char string literals.
msvcrt: Use WEOF from public header.
msvcrt: Use EOF from public header.
msvcrt: Use struct tm from public header.
msvcrt: Remove MSVCRT_ prefix from cpp.c functions.
msvcrt: Use _beginthread_start_routine_t from public header.
msvcrt: Use errno values from public header.
msvcrt: Use _onexit_table_t from public header.
msvcrt: Use printf and scanf flags from public header.
msvcrt: Use _CRT_FLOAT and _CRT_DBL from public header.
msvcrt: Use _exception definiotion from public header.
msvcrt: Use locale category definiotion from public header.
msvcrt: Remove MSVCRT_ prefix from errno.c functions.
msvcrt: Remove MSVCRT_ prefix from heap.c functions.
msvcrt: Use FILE from public header.
Revert "msvcrt: Avoid conflict with mingw __iob_func declaration.".
msvcrt: Use __utimbuf{32,64} from public header.
msvcrt: Use ctype definition from public header.
msvcrt: Use status word flags from public header.
msvcrt: Use fpclass constants from public header.
msvcrt: Use _ARGMAX from public header.
msvcrt: Use floating point exception signals definition from public header.
msvcrt: Use signal definitions from public header.
msvcrt: Use fpclassify constants from public header.
msvcrt: Use FPU control word definitions from public header.
msvcrt: Remove MSVCRT_ prefix from ctype.c functions.
msvcrt: Remove MSVCRT_ prefix from data.c functions.
msvcrt: Use heap structures and definitions from public header.
msvcrt: Use stdio.h definitions.
msvcrt: Remove MSVCRT_ prefix from environ.c functions.
msvcrt: Remove MSVCRT_ prefix from except.c functions.
msvcrt: Remove MSVCRT_ prefix from exit.c functions.
msvcrt: Remove MSVCRT_ prefix from mbcs.c functions.
msvcrt: Remove MSVCRT_ prefix from misc.c functions.
msvcrt: Remove MSVCRT_ prefix from process.c functions.
msvcrt: Remove MSVCRT_ prefix from scanf.c functions.
msvcrt: Remove MSVCRT_ prefix from string.c functions.
msvcrt: Remove MSVCRT_ prefix from time.c functions.
msvcrt: Remove MSVCRT_ prefix from wcs.c functions.
msvcrt: Remove MSVCRT_ prefix from math.c functions.
msvcrt: Remove MSVCRT_ prefix from dir.c functions.
msvcrt: Remove MSVCRT_ prefix from file.c functions.
msvcrt: Use _invalid_parameter_handler from public header.
msvcrt: Use _purecall_handler from public header.
msvcrt: Use _Dcomplex definition from public header.
msvcrt: Use _JUMP_BUFFER from public header.
include: Add corecrt_io.h header.
msvcrt: Use _finddata_t definition from public header.
msvcrt: Use _stat64 definition from public header.
msvcrt: Remove non-needed defines from msvcrt.h.
msvcrt: Remove non-needed function declarations from msvcrt.h.
msvcrt: Use _configthreadlocale arguments definition from public header.
msvcrt: Remove separate long double math funtions.
ntdll: Fix memchr implementation.
Robert Wilhelm (4):
vbscript: Support property set with parameters.
vbscript: Remove overzealous check in parse_hex_literal.
vbscript: Add parameters to FIXME in VBScript_AddTypeLib.
vbscript: Remove no longer used bool call_statement_t.is_strict member variable.
Rémi Bernon (23):
ntdll/tests: Add tests for NtOpenProcess return status.
server: Return STATUS_INVALID_CID from NtOpenProcess.
ntdll: Return failure from RtlQueryProcessDebugInformation.
gdi32/tests: Add locale-dependent face matching test.
gdi32: Compare font face names using RtlDowncaseUnicodeChar.
ntdll: Initialize local variable (valgrind).
gdi32: Load registry fonts after system fonts.
gdi32: Index scalable faces by full name in rbtree.
gdi32: Update the external keys after all fonts are loaded.
gdi32: Only request registry font path when necessary.
gdi32: Only use the registry cache for application fonts.
include: Emit assembly function size when compiling without MinGW.
widl: Add abi_prefix parameter to format_namespace.
widl: Support WinRT contractversion attribute parsing.
widl: Support WinRT apicontract type.
widl: Support WinRT contract attribute.
gdi32: Introduce struct unix_face as a ft_face wrapper.
gdi32: Store ft_face font props on unix_face.
gdi32: Introduce new opentype font parsing helpers.
gdi32: Try to parse font names without FreeType.
gdi32: Try to parse font props without FreeType.
gdi32: Use FreeType as a fallback when loading font faces.
dbghelp: Read process memory using target addresses, not debugger.
Zebediah Figura (42):
ntdll: Use a dynamically allocated buffer in find_forwarded_export() if necessary.
quartz/tests: Add some tests for IPin::EndOfStream() on the DirectSound renderer.
quartz/tests: Add some tests for IMediaSeeking on parser filters.
quartz/tests: Add some tests for parser streaming.
winegstreamer: Return the seeking start time from IMediaSeeking::GetCurrentPosition().
winegstreamer: Don't query the pad position in IMediaSeeking::SetPositions().
quartz/tests: Add some more tests for IMediaSeeking return value handling.
quartz: Correct return value handling in IMediaSeeking::GetDuration().
quartz/tests: Avoid some test failures related to timing.
quartz: Avoid autoplugging renderers in IGraphBuilder::Connect().
qcap: Remove "stub" from an implemented function.
qcap: Get rid of the VfwCapture typedef.
qcap: Call the right method to clean up the video capture stream.
qcap: Move the image buffer back into the video_capture_device structure.
qcap: Move the video capture device creation function to the function table.
qcap: Move the video capture streaming thread to vfwcapture.c.
qcap: Move the allocator management to vfwcapture.c.
qcap/tests: Add some tests for pin connection.
qcap: Return the connection type from IAMStreamConfig::GetFormat() if connected.
qcap: Directly pass AM_MEDIA_TYPE and VIDEOINFOHEADER pointers to the get_caps() operation.
qcap: Validate the index in AMStreamConfig_GetStreamCaps().
qcap: Directly pass a VIDEOINFOHEADER pointer to the get_format() operation.
qcap: Directly pass a VIDEOINFOHEADER pointer to the get_media_type() operation.
mountmgr.sys: Add a comment advertising the HKLM\Software\Wine\Ports registry key.
mp3dmod/tests: Add more tests for GetInputSizeInfo() and GetOutputSizeInfo().
qcap: Use malloc() instead of heap_alloc().
qcap: Move v4l2 support to a new Unix library.
qcap: Make video capture functions CDECL.
qcap: Build with msvcrt.
qcap: Link to strmbase.
qcap: Use wide-char string literals.
qcap: Use malloc() instead of HeapAlloc() or CoTaskMemAlloc().
qcap/tests: Add some tests for smart tee streaming using the strmbase infrastructure.
qcap/tests: Remove old tests for smart tee streaming.
qedit/tests: Add some tests for sample grabber streaming.
qedit/tests: Add some tests for sample grabber streaming events.
quartz/dsoundrender: Remove the unused "in_loop" field.
quartz/dsoundrender: Don't drop stream_cs in DSoundRender_HandleEndOfStream().
quartz/dsoundrender: Don't drop stream_cs in DSoundRender_SendSampleData().
strmbase: Don't drop csRenderLock in BaseRenderer_Receive().
qedit/nullrenderer: Don't drop csRenderLock in NullRenderer_DoRenderSample().
mfplat: Zero-initialize the device manager object.
Zhennan Cai (1):
ntoskrnl.exe: Fix a reversed spin lock loop condition.
Zhiyi Zhang (1):
wined3d: Do not use wined3d_output_get_desc() to retrieve display rotation.
Ziqing Hui (1):
d3dx10/tests: Add tests for D3DX10CreateTextureFromMemory.
--
Alexandre Julliard
julliard(a)winehq.org