The Wine development release 4.14 is now available.
What's new in this release (see below for details):
- New version of the Mono engine with upstream updates.
- PE dlls no longer rely on the MinGW runtime.
- Exception handling fixes on ARM64.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.14.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.14.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.14 (total 18):
34749 Eleusis Demo needs native dotnet40
39129 Cygwin's dash.exe crashes during installation
45449 Add diagnostic 'mscoree.dll.CorGetSvc' stub (NGEN client) to hint at broken Microsoft .NET Frameworks installation (Wine-Mono not uninstalled and/or 'mscoree.dll' placeholders not removed prior install)
46195 Multiple Windows 10 ARM64 apps need ntdll 'set_cpu_context' implementation (Windows PowerShell Core 6.2)
47074 World War Z crashes after intro logos due to unimplemented D3DKMTQueryStatistics
47514 AviUtl: Can't add a file to the ExEdit dialog after the first drop.
47546 Touhou 14-17 experience Spell Name and Music Room text issues starting in Wine 4.1
47561 Crash starting Rak24u Program
47564 Database mistmatch on brazillian timezone (America/Sao_Paulo)
47578 Omni-NFS 4.13's XLPD Server crashes on unimplemented function ntoskrnl.exe.MmIsThisAnNtAsSystem
47586 The Sims 1 visually freezes after alt-tabbing when in fullscreen mode
47594 Star Control Origins: very slow on new game. (a few minutes per frame)
47601 Process Hacker calls unimplemented ntoskrnl.exe functions SePrivilegeCheck and SeLocateProcessImageName
47605 Star citizen needs api-ms-win-crt-private-l1-1-0.dll._o_getenv
47611 LizardSystems Wi-Fi Scanner needs wlanui.dll to start
47612 LizardSystems Terminal Services Manager needs Ex functions from wtsapi32.dll
47616 LizardSystems Terminal Services Manager needs utildll.dll to start
47622 Wine 4.13 doesn't start Adobe Digital Editions 2 - works with 4.12.1
----------------------------------------------------------------
Changes since 4.13:
Akihiro Sagawa (2):
shell32/tests: Add DragQueryPoint tests.
shell32: Fix return value for DragQueryPoint.
Alex Henrie (12):
ntoskrnl: Add MmIsThisAnNtAsSystem().
ntoskrnl: Add stub for SePrivilegeCheck.
ntoskrnl: Add stub for SeLocateProcessImageName.
kernel32: Silence FIXME about FIND_FIRST_EX_LARGE_FETCH.
wtsapi32: Add stubs for WTSEnumerateProcessesEx[AW].
include: Add WTS_SESSION_INFO_1[AW].
wtsapi32: Add stubs for WTSEnumerateSessionsEx[AW].
wtsapi32: Add stubs for WTSOpenServerEx[AW].
include: Add WTS_TYPE_CLASS.
wtsapi32: Implement WTSFreeMemoryEx[AW].
wlanui: Add DLL.
utildll: Add DLL.
Alexandre Julliard (23):
makefiles: Default to an msvcrt build for static libraries.
wpcap: Avoid deprecated pcap_lookupdev().
ntdll: Reimplement thread initialization in assembler on ARM64.
ntdll: Silence FIXME for LdrResolveDelayLoadedAPI().
kernel32: Reimplement fiber switching in assembly.
kernel32: Move thread functions to kernelbase.
kernel32: Move thread pool functions to kernelbase.
kernel32: Move fiber functions to kernelbase.
kernel32: Move more thread functions to kernelbase.
kernel32: Move some process functions to kernelbase.
kernel32: Move process/thread attribute list functions to kernelbase.
kernel32: Move file handle functions to kernelbase.
kernel32: Move some file name functions to kernelbase.
kernel32: Move some module functions to kernelbase.
kernel32: Move some directory functions to kernelbase.
ntdll: Add support for saving/restoring FPU state on ARM64.
ntdll: Use the exception fault code to detect write access on ARM64.
ntdll: Preserve the stack red zone on ARM64.
ntdll: Save the context from the caller stack frame in RtlCaptureContext() on ARM64.
ntdll: Implement setting the thread context on ARM64.
ntdll: Don't run exception handlers on the signal stack on ARM64.
ntdll: Fix support for breakpoint exceptions on ARM64.
wineboot: Only use cpuid on platforms where it makes sense.
Alexey Prokhin (1):
xinput: Fix vibration capabilities.
Alistair Leslie-Hughes (5):
include: Define ADDRINFOT explicitly.
include: Add IDebugClient2-7 interfaces.
include: Complete dbgeng interfaces.
include: Added tpcshrd.h.
comctl32/listview: Don't report current item state in change notification when state change wasn't requested.
Andrew Eikum (2):
hid: Fix looking up report in HidP_GetValueCaps.
winebus.sys: Report device revision number for hidraw, too.
Benedikt Bär (1):
ucrtbase: Link missing functions to msvcrt that are needed by api-ms-win-crt-private-l1-1-0.
Charles Davis (1):
configure: Add a missing comma.
Conor McCarthy (1):
wldap32: Use ldap_memvfree() to free array allocated by libldap.
Dmitry Timoshkov (1):
msxml3: Register various XML character conversion routines if libxml2 doesn't support them.
Dridi Boukelmoune (1):
powrprof: Add PowerReadFriendlyName() stub.
François Gouget (18):
usp10/tests: A spelling fix in an ok() message.
setupapi/tests: A spelling fix in an ok() message.
windowscodecs/tests: A couple of spelling fixes in comments.
ntdll/tests: A spelling fix in a comment.
msscript.ocx: A spelling fix in a comment.
jscript/tests: A spelling fix in an ok() message.
kernel32/tests: A couple of spelling fixes in ok() call messages.
jscript: A spelling fix in a comment.
hidclass.sys: A spelling fix in an ERR() message.
dplayx: A spelling fix in a FIXME() message.
comctl32: A spelling fix in a TRACE() message.
advpack: A spelling fix in a comment.
winex11.drv: A spelling fix and slight rewording in a comment.
wlanapi/tests: Spelling fixes in ok() messages.
msvcrt: A spelling fix in a comment.
server: A spelling and slight rewording fix in a comment.
ntdll: Add a trailing '\n' to a TRACE().
jscript: Add a trailing '\n' to a WARN() message.
Gijs Vermeulen (7):
wmp: Improve playlist creation.
wmp: Implement IWMPPlaylist::get_count.
wmp: Fake success in IWMPPlaylist::appendItem.
wmp: Implement IWMPPlaylist::[get|put]_name.
wmp/tests: Add some IWMPPlaylist tests.
wine.inf: Update E. South America Standard Time.
wmp: Fix memory leak in IWMP[Media|Playlist]::put_name.
Henri Verbeet (49):
wined3d: Pass a wined3d_context_gl structure to context_set_current().
wined3d: Return a wined3d_context_gl structure from context_get_current().
wined3d: Use d3d_info to determine BGRA vertex support in context_update_stream_info().
wined3d: Get rid of the float16 fallback in context_update_stream_info().
wined3d: Use d3d_info to determine whether shader outputs need interpolation qualifiers.
wined3d: Store sRGB read control support in struct wined3d_d3d_info.
wined3d: Store sRGB write control support in struct wined3d_d3d_info.
wined3d: Store clip control support in struct wined3d_d3d_info.
wined3d: Store fixed-function alpha test support in struct wined3d_d3d_info.
wined3d: Store the maximum number of "compat" varyings in struct wined3d_d3d_limits.
wined3d: Use the format info to determine the A8_UNORM output swizzle in find_ps_compile_args().
wined3d: Move the "gl_info" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "level" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Invalidate the relevant sampler when unloading a currently bound texture.
wined3d: Get rid of the "dirtyArray" field from struct wined3d_context.
wined3d: Make the adapter responsible for swapchain creation and destruction.
wined3d: Introduce a structure for Vulkan context information.
wined3d: Setup and tear down the shader backend for the Vulkan adapter.
wined3d: Upload buffer ranges through buffer ops.
wined3d: Download buffer ranges through buffer ops.
wined3d: Make the adapter responsible for buffer creation and destruction.
wined3d: Don't call wined3d_texture_prepare_location() with a NULL context in wined3d_texture_update_desc().
wined3d: Make the adapter responsible for render target view creation and destruction.
wined3d: Make the adapter responsible for shader resource view creation and destruction.
wined3d: Make the adapter responsible for unordered access view creation and destruction.
ddraw/tests: Add a test for reported surface caps.
wined3d: Never report WINEDDSCAPS_ALPHA, WINEDDSCAPS_SYSTEMMEMORY and WINEDDSCAPS_VISIBLE.
wined3d: Always report WINEDDSCAPS_TEXTURE, WINEDDSCAPS_ZBUFFER and WINEDDSCAPS_MIPMAP.
wined3d: Report WINEDDSCAPS_BACKBUFFER and WINEDDSCAPS_FRONTBUFFER only on 3D devices.
wined3d: Report a few more ddraw surface caps on 3D devices.
wined3d: Make the adapter responsible for texture creation and destruction.
wined3d: Introduce a separate structure for OpenGL swapchain information.
wined3d: Move the backup window from struct wined3d_swapchain to struct wined3d_swapchain_gl.
wined3d: Move the context array from struct wined3d_swapchain to struct wined3d_swapchain_gl.
wined3d: Get rid of a redundant NULL check in wined3d_context_gl_acquire() (Coverity).
ddraw/tests: Fix some test failures on 64-bit ddraw.
dxgi/tests: Introduce create_window().
ddraw: Release the wined3d mutex on error paths in ddraw_surface7_Blt().
wined3d: Make the adapter responsible for sampler creation and destruction.
wined3d: Introduce a separate structure for OpenGL sampler information.
wined3d: Make the adapter responsible for query creation and destruction.
wined3d: Make the adapter responsible for flushes.
wined3d: Set WINED3D_BLT_RAW for raw blits in cpu_blitter_blit().
wined3d: Implement 3D texture clears in surface_cpu_blt_colour_fill().
wined3d: Introduce wined3d_resource_prepare_sysmem().
wined3d: Introduce wined3d_buffer_ops.buffer_prepare_location().
wined3d: Introduce wined3d_texture_ops.texture_prepare_location().
wined3d: Map/unmap bo addresses through the adapter.
wined3d: Merge wined3d_texture_upload_data() and wined3d_texture_gl_upload_data().
Huw D. M. Davies (3):
user32: Don't query the nonclient metrics unless the font info is required.
riched20: Move handling of EM_SETCHARFORMAT to a helper function.
riched20: Don't force an update when styles are changed.
Jacek Caban (34):
stdlib.h: Forward strtoll to _strtoi64.
stdio.h: Use __acrt_iob_func to access standard stream files.
winegcc: Use imported crt DLL instead of msvcrt if specified.
d3d9x: Build with ucrtbase.
gdiplus: Build with ucrtbase.
vbscript: Build with ucrtbase.
dsound: Build with ucrtbase.
winecrt0: Add __delayLoadHelper2.
winecrt0: Add DllMainCRTStartup.
msvcr70: Provide floating point function wrappers in importlib.
winegcc: Use -nodefaultlibs -nostartfiles for builtin DLLs.
kernel32/tests: Improve timeout handling in debugger tests.
server: Report only one debug event per process at the time.
jscript: Support VT_UI1 and VT_I1 types.
jscript: Allow 0x strings with explicit radix 16 in parseInt.
jscript: Add support for parametrized compound assignments.
msvcrt: Use __iob_func instead of __p__iob in __acrt_iob_func implementation.
msvcrt: Export __p__iob only on i386.
msvcrt: Avoid conflict with mingw __iob_func declaration.
include/msvcrt: Add corecrt.h header.
include/msvcrt: Include corecrt.h instead of crtdefs.h.
mshtml/tests: Fix events.html on some win10 versions.
mshtml/tests: Fix SCRIPTPROP_ABBREVIATE_GLOBALNAME_RESOLUTION tests on recent IE11 versions.
mshtml: Support semicolon in UA compatible string.
mshtml/tests: Fix XHR tests on some IE versions.
kernel32/tests: Add single step and debug service tests.
jscript: Introduce function vtbl and use it for toString implementation.
jscript: Move function destructor implementation into vtbl.
jscript: Move function call implementation into vtbl.
jscript: Move value_proc to BuiltinFunction struct.
jscript: Introduce InterpretedFunction struct.
jscript: Move function name to NativeFunction.
jscript: Implement Function.prototype.bind.
mshtml: Add Function.prototype.bind tests.
Józef Kucia (2):
wined3d: Fix memory leak in wined3d_swapchain_state_create() (Coverity).
winevulkan: Pull in bitmask dependencies for function parameters.
Kai Krakow (1):
wined3d: Add GPU information for NVIDIA GTX 1660 Ti.
Kristján Gerhardsson (2):
wined3d: Add GPU information for AMD VEGA20.
wined3d: Add GPU information for a few more Intel KBL GPUs.
Matteo Bruni (9):
d3dx9: Get rid of unused unlock_surface() argument.
d3dx9/tests: Make the pixels array static.
d3dcompiler/tests: Get rid of redundant "failed" in test strings.
d3dcompiler/tests: Trace the test index in test_fail() checks.
wined3d: Fix color mask 1-3 state setting.
wined3d: Get rid of wined3d_max_compat_varyings().
wined3d: Clean up fallback paths in wined3d_surface_blt().
wined3d: Get rid of surface_blt_special() fallback in wined3d_surface_blt().
wined3d: Allow cross-swapchain blits in the supported cases.
Michael Stefaniuc (5):
ntdll: Remove useless cast to self.
d3d12/tests: Remove useless casts to self.
dxgi/tests: Remove useless casts to self.
gdi32/tests: Remove useless casts to self.
gdi32: Remove useless casts to self.
Naveen Narayanan (1):
ntdll: Set pthread stack guard size to 0 for NetBSD.
Nikolay Sivov (4):
dwrite: Add recent script properties.
kernel32/tests: Add some tests for setting file times.
ntdll/tests: Add some tests for setting file times.
ntdll: Ignore -1 time value same as 0 when setting file times.
Paul Gofman (6):
d3dx9: Pass rectangle to {lock|unlock}_surface().
ddraw: Return DDERR_SURFACELOST from _GetAttachedSurface() if surface is lost.
ddraw: Restore complex attached surfaces when restoring surface.
ddraw/tests: Test restoring attached surface for ddraw4.
ddraw/tests: Test restoring attached surface for ddraw2.
ddraw/tests: Test restoring attached surface for ddraw1.
Peter Dons Tychsen (1):
msvcrt: Do not use casting in min/max constants.
Richard Pospesel (11):
widl: Change struct _var_t's type member to a struct _decl_spec_t.
widl: Refactor to have array type's element use decl_spec_t rather than type_t.
widl: Refactor to have pointer type's ref use decl_spec_t rather than type_t.
widl: Bump MIDL version to 5.2.202 to avoid RPC_X_WRONG_STUB_VERSION exception in ObjectStublessClient.
widl: Use type_function_get_args() instead of type_get_function_args().
widl: Use type_pointer_get_default_fc() in declare_var().
widl: Store the aliasee as a decl_spec_t structure.
widl: Pass a decl_spec_t to write_type_v().
widl: Pass a decl_spec_t to write_type_left().
widl: Pass a decl_spec_t to type_new_array().
widl: Pass a decl_spec_t to type_new_alias().
Rémi Bernon (9):
ntdll: Add alloc_type parameter to virtual_map_section and top_down to map_image.
ntdll: Directly call internal functions from APC handler.
ntdll: Change zero_bits parameter type to ULONG_PTR for NtMapViewOfSection and NtAllocateVirtualMemory.
ntdll/tests: Factor WoW64 checks and add is_win64 constant.
ntdll/tests: Use MEM_TOP_DOWN parameter to consistently fail zero_bits tests.
ntdll/tests: Update zero_bits > 31 test case to validate bitmask behavior.
ntdll: Use custom internal zero_bits_64 parameter format.
ntdll: Implement zero_bits parameter in virtual alloc functions.
winex11.drv: Print the FocusIn/FocusOut mode in trace message.
Vincent Povirk (2):
mscoree: Update Wine Mono to 4.9.2.
mscoree: Add diagnostic CorGetSvc stub.
Zebediah Figura (40):
wined3d: Inhibit the screensaver while a full-screen application has focus.
qcap: Share source with strmbase.
winegstreamer: Share source with strmbase.
wineqtdecoder: Share source with strmbase.
strmbase: Build with msvcrt.
wineqtdecoder: Fix build.
ntoskrnl.exe/tests: Add some tests for file objects.
ntoskrnl.exe/tests: Add some tests for IRP return values.
ntoskrnl.exe: Always set the IRP return size.
quartz/filtergraph: Remove type tracing from IGraphBuilder::AddSourceFilter().
quartz: Remove unnecessary tracing from GetClassMediaFile().
quartz: Always try to detect a file by extension first.
quartz: Simplify error handling in GetClassMediaFile().
quartz: Simplify error handling in process_pattern_string().
quartz: Use file APIs directly in get_media_type().
quartz: Get rid of GetFileSourceFilter() and CreateFilterInstanceAndLoadFile().
quartz/tests: Add some tests for IGraphBuilder::AddSourceFilter().
include: Add NTSTATUS severity macros.
ntoskrnl.exe: Set the IRP output buffer unless the status has both high bits set.
d3dcompiler: Get rid of the superfluous "variable" rule.
d3dcompiler: Store the arguments to a hlsl_ir_constructor as a fixed array.
d3dcompiler: Remove redundant components_count_expr_list() function.
d3dcompiler/tests: Simplify test_fail().
d3dcompiler/tests: Add a couple more tests for complex initializers.
d3dcompiler: Use the documented YYABORT macro.
d3dcompiler: Parse initializer lists using a variable-size array.
d3dcompiler: Use new_cast() in implicit_conversion().
d3dcompiler: Introduce a new_unary_expr() helper.
d3dcompiler: Introduce a new_binary_expr() helper.
widl: Get rid of fix_incomplete().
widl: Use type_function_get_args() in more places.
widl: Move the "idx" parameter from struct func_details to var_t.
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_function_decl.
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_var.
widl: Introduce type_iface_get_async_iface().
widl: Use type_iface_get_inherit() in check_async_uuid().
widl: Introduce type_array_{get,set}_ptr_tfsoff().
widl: Use the type_type field to track whether the type is an alias.
mscorwks: Prefer the native version.
widl: Store the type for casts and sizeof() expressions as a decl_spec_t.
Zhiyi Zhang (1):
msctf: Add ITfContextOwnerCompositionServices stub.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.13 is now available.
What's new in this release (see below for details):
- Support for Passport HTTP redirects.
- A bunch of header updates.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.13.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.13.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.13 (total 15):
35345 Multiple applications and games fail to enumerate display/monitor driver properties in registry using setupapi (Evoland (Steam), NVIDIA GeForce Experience 3.x)
39152 Monitor Test 3.2 fails to enumerate video devices/drivers in registry ('HKLM\\HARDWARE\\DeviceMap\\VIDEO', PnP Manager)
43286 WSARecvMsg wrongly forbids NULL control buffers (Qt 5.7.0 based: Cannot read UDP packets: "errno 90, (Message too long)")
46607 For Honor crash on "double free or corruption"
46763 Second Sight:bad performance
47029 A.R.E.S. Extinction Agenda 1.x (.NET 2.0, XNA 3.1 game) crashes during intro (needs IWMPMedia::put_name implementation)
47356 By default only echo errors
47411 TreeSize Free Portable exits silently on startup due to missing shell32.SHMultiFileProperties stub
47432 bcrypt always chooses ECB mode when using AES, even if a program indicates otherwise.
47437 Final Fantasy XIV 5.0 crashes on startup when using xaudio2_8.dll
47445 compile error: ‘AT_NO_AUTOMOUNT’ undeclared
47452 Ren'py unable to create displays in Wine 4.11
47473 armv7hl compile fails due to non-AAPCS variadic function calls
47479 Many D3D11 games show black or white screen with Wine 4.12.1 (Darkula by Locomalito, Magic the Gathering Arena, Battle.net, EVE Online, World of Warships)
47519 Amazon Workspaces - ABNT2 keyboard dont recognize characters
----------------------------------------------------------------
Changes since 4.12.1:
Alistair Leslie-Hughes (31):
include: Add define SS_PORT.
include: Add more defines in sal.h.
include: Add MENUGETOBJECTINFO.
include: Add UI_ANIMATION_KEYFRAME_STORYBOARD_START constant.
include: Add UI_E_* defines.
include: Add gesture defines.
include: Add recovery defines.
include: Add IPreviewHandlerFrame interface declaration.
include: Add Network Address Control defines.
msvcrt: Add strupr_s declaration.
include: Add filter.idl.
include: Added thumbcache.idl.
include: Add PF_INET6 define.
include: Correct LVINSERTMARK define.
include: Use macro SNDMSG to send messages.
include: Added missing Header_* defines.
include: Added missing Button_* defines.
include: Added Pager_* defines.
include: Added missing ListView_* defines.
include: Added Animate_IsPlaying define.
include: Added missing MonthCal_* defines.
include: Added missing DateTime_* defines.
include: Added missing ComboBox_* defines.
include: Added missing Edit_* defines.
include: Add some missing declarations.
include: Add tchar defines.
include: Define ADDRINFOT.
include: Added LVITEMINDEX.
include: Add missing D3DKMT typedefs.
gdi32: Add D3DKMTQueryStatistics stub.
include: Implement InlineIsEqualGUID.
Andrew Eikum (2):
msctf: Accept ITfUIElementSink in ThreadMgr AdviseSink.
msctf: Accept ITfInputProcessorProfileActivationSink in ThreadMgr AdviseSink.
André Hentschel (1):
kernel32/tests: Don't test functions directly when reporting GetLastError().
Austin English (1):
shell32: Add SHMultiFileProperties stub.
Charles Davis (4):
ntdll: Implement RtlCaptureStackBackTrace() for x86_64.
ntdll: Move SetThreadExecutionState() implementation to ntdll.
ntdll: Stub power request APIs.
kernel32: Forward power request functions to ntdll.
Conor McCarthy (7):
wined3d: Track windows styles per-swapchain.
dxgi: Implement d3d12_swapchain_ResizeTarget().
dxgi: Implement d3d12_swapchain_GetFullscreenState().
dxgi: Implement d3d12_swapchain_SetFullscreenState().
dxgi/tests: Run test_resize_target() on d3d12 as well.
dxgi/tests: Run test_set_fullscreen() on d3d12 as well.
dbghelp: Return NULL instead of IMAGE_NO_MAP when PE file mapping fails.
Damjan Jovanovic (3):
ws2_32: WSARecvMsg allows a NULL control buffer when no control messages arrive.
ws2_32: Implement IP_PKTINFO on *BSDs, which only have IP_RECVDSTADDR instead.
ws2_32: Avoid data corruption of WSAPROTOCOL_INFO in ws_protocol_info().
François Gouget (1):
xaudio2: Fix the optional FAudio functions check.
Gabriel Ivăncescu (1):
ntdll: Define AT_NO_AUTOMOUNT if needed.
Gerald Pfeifer (1):
windowscodecs: Move from_sRGB_component into the same section as its sole sole user.
Gijs Vermeulen (5):
wmp/tests: Add more IWMPMedia name handling tests.
wmp: Implement IWMPMedia::put/get_name.
wmp: Return E_POINTER when p is NULL in return_bstr.
wmp: Fake success in IWMPMedia::getItemInfo.
wmp: Add IWMPPlaylist stub.
Hans Leidekker (6):
winhttp: Also trace the buffer pointer in WinHttpSendRequest.
winhttp: Implement WINHTTP_QUERY_REQUEST_METHOD.
winhttp: Handle Passport redirects.
winhttp: Set last error for invalid and unimplemented header queries.
oledb32: Add support for DBTYPE_VARIANT -> DBTYPE_DATE conversion.
oledb32: Remove unnecessary casts.
Henri Verbeet (20):
wined3d: Acquire a context for the front buffer in swapchain_gl_present().
wined3d: Acquire front-buffer contexts when blitting to the drawable in texture2d_blt_fbo().
wined3d: Don't acquire a context in wined3d_texture_load_drawable().
wined3d: Pass a wined3d_context_gl structure to arbfp_free_ffpshader().
wined3d: Pass a wined3d_context structure to wined3d_vertex_pipe_ops.vp_enable().
wined3d: Setup/restore fullscreen window state inside wined3d.
wined3d: Filter messages per-window instead of per-device.
wined3d: Move the "desc" field from struct wined3d_swapchain to struct wined3d_swapchain_state.
wined3d: Pass a wined3d_context_gl structure to arbfp_free_blit_shader().
wined3d: Pass a wined3d_context_gl structure to atifs_free_ffpshader().
wined3d: Store a wined3d_context_gl structure in struct glsl_ffp_destroy_ctx.
wined3d: Pass a wined3d_context_gl structure to glsl_free_blitter_program().
wined3d: Pass a wined3d_context structure to fragment_pipeline.enable_extension().
wined3d: Rename wined3d_window_state_restore_from_fullscreen() to wined3d_swapchain_state_restore_from_fullscreen().
wined3d: Replace wined3d_swapchain_resize_target() with wined3d_swapchain_state_resize_target().
wined3d: Pass a wined3d_context_gl structure to wined3d_sampler_desc_from_sampler_states().
wined3d: Pass a wined3d_context_gl structure to swapchain_gl_set_swap_interval().
wined3d: Pass a wined3d_context_gl structure to texture_download_data_slow_path().
wined3d: Pass a wined3d_context_gl structure to wined3d_shader_resource_view_gl_bind().
wined3d: Use d3d_info to determine BGRA vertex support in wined3d_buffer_load().
Huw D. M. Davies (2):
gdi32: Use the correct type for the final parameter of FSOpenResourceFile().
shell32: On macOS don't link against CoreServices.
Jacek Caban (1):
winegcc: Always mark executables as nx compat.
Jeff Smith (4):
d3drm: Check for NULL pointer in d3drm_viewport2_GetDevice().
d3drm: Check for NULL pointer in d3drm_viewport2_GetDirect3DViewport().
d3drm: Return error if setting viewport field-of-view to zero or negative value.
d3drm: Correct parameter count of several interface defines.
Józef Kucia (2):
dxgi: Obey image count limits for Vulkan swapchains.
wined3d: Add support for GL_EXT_texture_shadow_lod.
Kristján Gerhardsson (1):
wined3d: Add GPU information for various Mac GPUs.
Martin Storsjo (4):
msvcrt: Provide the fmaf function on i386.
msvcrt: Provide the fmal function using the existing fma implementation.
msvcrt: Implement the fdim functions.
msvcrt: Implement the tgamma functions.
Nikolay Sivov (5):
kernel32/nls: Add LOCALE_SPERCENT locale data.
kernel32/nls: Add LOCALE_SPERMILLE data.
kernel32/nls: Add percent formatting values.
kernel32/nls: Add locale data for positive and negative infinity.
kernel32: Support FileBasicInfo case in SetFileInformationByHandle().
Qian Hong (1):
advapi32: Initialize the LsaLookupSids() LSA_TRANSLATED_NAME.Name string properly.
Serge Gautherie (1):
kernel32/tests: Test QueryFullProcessImageNameW() flags.
Zebediah Figura (12):
d3dcompiler: Parse type name strings.
mscorwks: New DLL.
include: Add strongname.h.
mscoree: Fix the signature for StrongNameSignatureVerification[Ex]().
mscoree: Fake success from StrongNameSignatureVerificationEx().
services: Fix the arguments to is_root_pnp_service().
secur32: Use RtlComputeCrc32().
dbghelp: Use RtlComputeCrc32().
mspatcha: Use RtlComputeCrc32().
mspatcha: Use the standard max() and min() macros.
mfplat/tests: Link to uuid.
mfplat: Implement CreatePropertyStore().
Zhiyi Zhang (4):
dxgi/tests: Test output after using Alt+Enter to switch fullscreen.
dxgi: Fix possible null output from d3d11_swapchain_GetFullscreenState.
setupapi: Support full path enumerator in SetupDiGetClassDevs.
winex11.drv: Add DriverDateData registry property to display adapters.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.12.1 is now available.
What's new in this release (see below for details):
- Fixes for broken 64-bit prefix initialization.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.12.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.12.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 4.12.1 (total 5):
46473 Settlers IV History Edition
47403 ALT+TAB results in a sticky ALT in the application when switching back
47464 64-bit WINEPREFIX creation/update fails with Wine 4.12 (wineboot crashes after building as PE file)
47467 WINEPREFIX creation/update: setupapi fails to register several dlls after building as PE file starting with Wine 4.12
47468 LINE 5.x launcher crashes on startup
----------------------------------------------------------------
Changes since 4.12:
Alexandre Julliard (5):
wineboot: Fix do_cpuid() calling convention.
kernel32: Set the path environment variables according to the WoW64 environment.
include: Make sure the JUMP_BUFFER structure is correctly aligned on x86-64
gdi32: Make GDI driver functions cdecl.
d3dcompiler: Make varargs functions WINAPIV.
Henri Verbeet (1):
wined3d: Handle context acquisition failure in wined3d_device_create_primary_opengl_context_cs().
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.12 is now available.
What's new in this release (see below for details):
- Still more DLLs are built as PE files by default.
- Support for Plug & Play device drivers.
- Better support for the Visual Studio remote debugger.
- More support for enumerating display devices.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.12.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.12.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.12 (total 27):
18490 Multiple games fail to set pixel format on D3D device context created on desktop window (Empire: Total War, Napoleon: Total War, Utopia City)
21378 lego digital designer crashes on scrolling
27576 RT Se7en Lite installer hangs
31260 Tomb Raider 4 Broken Lighting
31737 Need For Speed Hot Pursuit (2010): Gamepad is not configured
34978 Many applications need a EnumDisplayDevicesW implementation for multi-monitor environment support (DisplayFusion, Turbo Tax 2012, WPF 4.x .NET apps, CEFv3 apps, VS Code < 1.16.0)
35413 err:module:import_dll Library libgcc_s_sjlj-1.dll not found needed by mono-2.0
36061 winedbg crash dialog shows a leak in imm32
37709 All Qt5 based applications have broken menu/combos positioning in multiple monitor setup due to GetMonitorInfo() returning the same hard-coded device name for all monitors
38421 Windows Media Player 9 & 10: mp3 sound plays too fast
41608 Golden Krone Hotel fails to launch (InitializeProcThreadAttributeList is a stub)
42374 Hardwood Solitaire can not connect to his server
45656 Acronis Storage Filter Management Driver 'fltsrv.sys' crashes on unimplemented function 'ntoskrnl.exe.KeBugCheckEx' in 'CrashOnError' mode
47013 winebus.sys: hidraw_set_feature_report buffer too small for some devices in SteelSeries Engine
47014 Multiple kernel drivers need 'ntoskrnl.exe.ExInitializePagedLookasideList' implementation (Norton 360/Symantec Eraser Control Driver)
47017 Symantec Eraser Control Driver 'eeCtrl64.sys' (Norton 360) crashes on unimplemented function ntoskrnl.exe.IoGetStackLimits
47340 Adobe Acrobat Reader DC crashes on startup with corefonts installed
47352 Levelhead: Can't connect to game's network
47367 Some WPF 4.x apps from Windows 10 SDK (10.0.17763.x) spam console with fixme:d3d:wined3d_driver_info_init Unhandled OS version 6.3, reporting Win 8. (WinVer set to 'Windows 8.1')
47385 Overwatch crashes on unimplemented function mfreadwrite.dll.MFCreateSinkWriterFromURL
47392 Drakensang Online crashes when exiting fullscreen
47399 Mozart 11-13 crashes on startup
47410 Regression in 4.10, Dune 2000 installer crashes in winevdm
47418 Quickbooks 2018 installer crashes on Validating Install
47424 DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT *must* have return value
47431 Multiple applications and games show too high CPU usage and UI slowness/lag with wine-4.11-84-g074abfe097 (EnumDisplayMonitors implementation uses expensive registry accesses)
47443 compile error: undefined reference to `clock_gettime'
----------------------------------------------------------------
Changes since 4.11:
Alexandre Julliard (127):
t2embed: Build with msvcrt.
tapi32: Build with msvcrt.
taskschd: Build with msvcrt.
tdh: Build with msvcrt.
tdi.sys: Build with msvcrt.
toolhelp: Build with msvcrt.
traffic: Build with msvcrt.
twain: Build with msvcrt.
twain_32: Build with msvcrt.
typelib: Build with msvcrt.
uianimation: Build with msvcrt.
uianimationcore: Build with msvcrt.
uiribbon: Build with msvcrt.
updspapi: Build with msvcrt.
url: Build with msvcrt.
urlmon: Build with msvcrt.
ntdll: Try to use the name of the PE file also when loading .so builtin.
advapi32: Move more event log stubs to ntdll.
advapi32: Move SHA1 implementation to ntdll.
advapi32: Move MD4 implementation to ntdll.
advapi32: Move MD5 implementation to ntdll.
usbd.sys: Build with msvcrt.
user.exe: Build with msvcrt.
userenv: Build with msvcrt.
usp10: Build with msvcrt.
uxtheme: Build with msvcrt.
vbscript: Build with msvcrt.
vcomp: Build with msvcrt.
vdhcp.vxd: Build with msvcrt.
vdmdbg: Build with msvcrt.
ver: Build with msvcrt.
version: Build with msvcrt.
virtdisk: Build with msvcrt.
vmm.vxd: Build with msvcrt.
vnbt.vxd: Build with msvcrt.
vnetbios.vxd: Build with msvcrt.
vssapi: Build with msvcrt.
vtdapi.vxd: Build with msvcrt.
vulkan-1: Build with msvcrt.
vwin32.vxd: Build with msvcrt.
advapi32: Move registry functions to kernelbase.
advapi32: Move sid functions to kernelbase.
advapi32: Move token functions to kernelbase.
advapi32: Move security descriptor functions to kernelbase.
advapi32: Move access control functions to kernelbase.
advapi32: Move performance stubs to kernelbase.
winebuild: Set the default entry point also for Windows builds.
w32skrnl: Build with msvcrt.
w32sys: Build with msvcrt.
wbemdisp: Build with msvcrt.
wdscore: Build with msvcrt.
webservices: Build with msvcrt.
wer: Build with msvcrt.
wevtapi: Build with msvcrt.
wiaservc: Build with msvcrt.
wimgapi: Build with msvcrt.
win32s16: Build with msvcrt.
win87em: Build with msvcrt.
windebug: Build with msvcrt.
windowscodecsext: Build with msvcrt.
winehid.sys: Build with msvcrt.
winemapi: Build with msvcrt.
include: Implement some inline functions in C instead of assembly.
wineps16.drv: Build with msvcrt.
wing: Build with msvcrt.
wing32: Build with msvcrt.
winnls: Build with msvcrt.
winnls32: Build with msvcrt.
winscard: Build with msvcrt.
winsock: Build with msvcrt.
winsta: Build with msvcrt.
wintab: Build with msvcrt.
wintab32: Build with msvcrt.
wintrust: Build with msvcrt.
wlanapi: Build with msvcrt.
wmasf: Build with msvcrt.
wmiutils: Build with msvcrt.
wmp: Build with msvcrt.
wmphoto: Build with msvcrt.
wmvcore: Build with msvcrt.
wow32: Build with msvcrt.
wpc: Build with msvcrt.
wsdapi: Build with msvcrt.
wshom.ocx: Build with msvcrt.
wsnmp32: Build with msvcrt.
wsock32: Build with msvcrt.
wtsapi32: Build with msvcrt.
wuapi: Build with msvcrt.
wuaueng: Build with msvcrt.
xinput1: Build with msvcrt.
xmllite: Build with msvcrt.
xolehlp: Build with msvcrt.
xpsprint: Build with msvcrt.
xpssvcs: Build with msvcrt.
kernelbase: Get rid of some string helper functions.
kernel32: Move lstr* string functions to kernelbase.
kernel32: Move event functions to kernelbase.
kernel32: Move mutex functions to kernelbase.
kernel32: Move semaphore functions to kernelbase.
kernel32: Move waitable timer functions to kernelbase.
kernel32: Move timer queue functions to kernelbase.
kernel32: Move critical section functions to kernelbase.
kernel32: Move file mapping functions to kernelbase.
kernel32: Move condition variable functions to kernelbase.
kernel32: Move I/O completion functions to kernelbase.
kernel32: Move named pipe functions to kernelbase.
kernel32: Move wait functions to kernelbase.
include: Avoid depending on wine/port.h.
d3d8: Build with msvcrt.
d3d9: Build with msvcrt.
d3d11: Build with msvcrt.
ddraw: Build with msvcrt.
ntdll: Initialize filesystem redirects before kernel32 is loaded.
d3dcompiler: Copy the C preprocessor source into d3dcompiler_43.
d3dcompiler: Build with msvcrt.
wpp: Get rid of the no longer needed callbacks.
kernelbase: Forward functions directly to ntdll where possible.
kernel32: Move resource functions to kernelbase.
kernel32: Move activation context functions to kernelbase.
configure: Error on unused command line argument to catch unknown options with clang.
wineboot: Avoid using getopt_long().
kernel32: Set environment variables for the various Wine paths.
wineps.drv: Build with msvcrt.
wineboot: Build with msvcrt.
setupapi: Build with msvcrt.
appwiz.cpl: Build with msvcrt.
mscoree: Build with msvcrt.
Alistair Leslie-Hughes (5):
wininet: Support QueryOption INTERNET_OPTION_ERROR_MASK for http.
wininet: Always set last error in HttpQueryInfoW.
wininet: Always set last error in InternetReadFile.
include: Complete IMimeHeaderTable/IMimeEnumHeaderRows interfaces.
winebus.sys: Increase buffer size to match max length available.
André Hentschel (1):
kernelbase: Return on failed allocation (Coverity).
Dmitry Timoshkov (3):
ntdll: Add '-norelay' flag for _vsnprintf().
msvcrt: Add '-norelay' flag for _vsnprintf().
msvcrt: Fix handling of dst == src in wcscpy_s.
Ethan Lee (2):
xaudio2: Add TRACE functions to CreateAudioReverb/CreateAudioVolumeMeter.
xaudio2: Export functions by ordinal.
Fabian Maurer (2):
kernel32/tests: Add sxs tests.
ntdll: Check the activation context before looking for the module basename.
Hans Leidekker (10):
wbemprox: Add support for parsing ASSOCIATORS OF queries.
include: Use WS_ prefix with struct timeval.
ntdll: Support NtQuerySystemInformation(SystemFirmwareTableInformation) on macOS.
ntdll: Fix sysfs path for the product name.
ntdll: Use a common structure for the SMBIOS table entry header.
ntdll: Use the machine ID for the system UUID on Linux.
wbemprox: Retrieve the system UUID from the SMBIOS table.
wbemprox: Build with msvcrt.
bcrypt: Ignore the size parameter in BCRYPT_CHAINING_MODE setters.
wbemprox: Add support for CIM_REFERENCE.
Henri Verbeet (50):
wined3d: Pass a wined3d_context_gl structure to find_arb_ps_compile_args().
wined3d: Pass a wined3d_context_gl structure to find_arb_vs_compile_args().
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_bind().
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_create_buffer_object().
wined3d: Move texture2d_load_drawable() to texture.c.
wined3d: Pass a wined3d_context_gl structure to wined3d_buffer_gl_destroy_buffer_object().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_load_program_resources().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_init_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_normalmatrix_uniform().
wined3d: Move texture2d_load_renderbuffer() to texture.c.
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_texmatrix_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_material_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_lightambient_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_ffp_vertex_light_uniform().
wined3d: Handle Windows 8.1 in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_pointsize_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_load_fog_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_clip_plane_uniform().
wined3d: Pass a wined3d_context_gl structure to shader_generate_glsl_declarations().
wined3d: Explicitly handle Windows 2 & 3 in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_pshader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_vshader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_hull_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_domain_shader().
wined3d: Use Windows 7 as fallback driver version in wined3d_driver_info_init().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_geometry_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_compute_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_pshader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_vshader().
ddraw: Use wined3d_bit_scan() in viewport_alloc_active_light_index().
wined3d: Pass a wined3d_context_gl structure to find_glsl_hull_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_domain_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_geometry_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_ffp_fragment_shader().
wined3d: Unhook swapchains in swapchain_cleanup().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_find_ffp_fragment_shader().
wined3d: Pass a wined3d_context_gl structure to shader_glsl_compile_compute_shader().
wined3d: Pass a wined3d_context_gl structure to find_glsl_compute_shader().
wined3d: Pass a wined3d_context_gl structure to set_glsl_compute_shader_program().
wined3d: Also try to create a depth/stencil buffer for WINED3D_NO3D devices in swapchain_init().
wined3d: Pass a wined3d_context_gl structure to set_glsl_shader_program().
wined3d: Pass a wined3d_context_gl structure to glsl_blitter_get_program().
wined3d: Pass a wined3d_context_gl structure to nvts_activate_dimensions().
wined3d: Pass a wined3d_context_gl structure to wined3d_query_create_buffer_object().
wined3d: Try harder to reuse the current context.
wined3d: Pass a wined3d_context_gl structure to wined3d_query_destroy_buffer_object().
wined3d: Pass a wined3d_context_gl structure to wined3d_query_buffer_queue_result().
wined3d: Pass a wined3d_context_gl structure to wined3d_so_statistics_query_end().
wined3d: Pass a wined3d_context_gl structure to wined3d_pipeline_statistics_query_end().
wined3d: Merge wined3d_texture_download_data() and wined3d_texture_gl_download_data().
Jacek Caban (27):
ntoskrnl.exe: Implement IoGetStackLimits.
ntoskrnl.exe: Implement ExInitializePagedLookasideList.
ntoskrnl.exe: Implement ExDeletePagedLookasideList.
tdi.sys: Fix EXTRADLLFLAGS.
ntoskrnl.exe: Implement KeBugCheck and KeBugCheckEx.
mshtml/tests: Fix comment tests on recent IE versions.
mshtml/tests: Introduce set_body_html helper.
mshtml/tests: Merge text range tests.
mshtml/tests: Rename elements.js to dom.js.
mshtml/tests: Improve tests exception handling.
mshtml: Include URL pathname and query in test traces.
winedbg: Move continue_on_first_exception handling out of dbg_attach_debuggee.
winedbg: Set auto attach event after processing the first exception.
msxml3: Fix string length handling in I[VB]SAXContentHandler::characters.
ntdll: Move null terminating result to pf_vsnprintf callers.
ntdll: Implement _snprintf_s and _vsnprintf_s.
kernel32/tests: Add more debugger tests.
server: Fix debug event order in generate_startup_debug_events.
kernel32: Terminate process in unhandled exception handler.
ntdll: Implement DbgUiIssueRemoteBreakin.
kernel32: Reimplement DebugBreakProcess on top of DbgUiIssueRemoteBreakin.
winternl.h: Remove inline DbgBreakPoint version.
kernel32: Use DebugBreakProcess in DebugActiveProcess.
server: Remove no longer needed break_process.
server: Rename cpu_type_t to client_cpu_t.
winmm: Use condition variable to sleep in timer thread.
winmm: Build with msvcrt.
Jactry Zeng (4):
d3d8/tests: Add tests for 32-bit depth format support.
d3d9/tests: Add tests for 32-bit depth format support.
ddraw/tests: Add tests for 32-bit depth format support.
wined3d: Drop support for WINED3DFMT_D32_UNORM.
Jeff Smith (2):
d3drm: CreateViewport checks for non-NULL viewport pointer first.
d3drm: Fix reference leak in d3drm_viewport2_Clear().
Justin Martin (1):
d3d9: Implement d3d9_device_CreateRenderTargetEx().
Józef Kucia (2):
d3d12/tests: Add test for creating swapchain on desktop window.
dxgi: Forbid creating D3D12 swapchains on desktop window.
Ken Thomases (1):
gdi32: Also accept "\\.\DISPLAY<n>" devices names with <n> other than 1 as display devices.
Marcus Meissner (1):
mshtml: Fixed buffer size to WideCharToMultiByte.
Michael Müller (1):
wininet: Allow to set INTERNET_OPTION_HTTP_DECODING on sessions and connections.
Nikolay Sivov (20):
mfplat: Improve PROPVARIANT arguments traces.
mfplat: Add MF_LOW_LATENCY attribute GUID.
mfreadwrite: Add MFCreateSinkWriterFromURL() stub.
mshtml: Add IDocumentRange stub.
user32/tests: Use SendInput() directly.
user32/tests: Add another test for KEYEVENTF_UNICODE mode.
server: Use KEYEVENTF_UNICODE mode only when virtual key code was not specified.
mfplat: Trace MF_PD_DURATION guid.
mshtml: Add IHTMLDOMRange stub.
strmbase: Remove unused function.
dwrite: Remove unused functions.
shlwapi: Remove unused function.
d2d1: Remove unused function.
devenum: Don't free uninitialized pointer value.
kernel32: Remove unused functions.
quartz: Remove unused function.
d3d10core/tests: Use d3d10 enumeration types.
winegstreamer: Add stub Video Processor MFT.
mf: Return clock rate as session rate.
mf: Fix method name.
Paul Gofman (6):
ddraw: Factor out fixup_texture_alpha_op() function.
ddraw: Set _TSS_ALPHA_OP to _SELECT_ARG1 in case of NULL texture in fixup_texture_alpha_op().
d3d9/tests: Test sample and texture dimensions mismatch.
wined3d: Do not modify shader register maps in backends.
wined3d: Fixup 3D sampler when sampling 2D texture for PS models 2 and 3.
wined3d: Fixup 2D sampler when sampling 3D texture for PS models 2 and 3.
Zebediah Figura (61):
strmbase: Add default implementations of filter state change methods.
quartz/filesource: Use strmbase filter state change methods.
quartz/tests: Add more tests for standard media samples.
quartz/memallocator: Clear some sample properties when freeing the sample.
quartz/memallocator: Set the sample end time only if the start time is valid.
quartz/memallocator: Forbid setting the start media time without setting the end time.
quartz/memallocator: Avoid using a magic value for the start media time.
quartz/memallocator: Return S_OK when clearing the media type.
quartz/memallocator: Set the AM_SAMPLE_TYPECHANGED flag.
wined3d: Store the cursor texture in a local variable in swapchain_gl_present().
wine.inf: Add the GUID_DEVCLASS_SYSTEM class key.
ntoskrnl.exe: Add a stub PnP manager driver.
ntoskrnl.exe: Load a driver's root PnP devices when the driver is started.
setupapi: Delay-load user32.
services: Load root PnP drivers on startup.
qcap/vfwcapture: Store the source pin inline in the VfwCapture structure.
qcap/vfwcapture: Don't expose IAMStreamConfig from the filter.
quartz/parser: Don't store the sink pin in the "ppPins" array.
quartz/parser: Store the source pins as an array of Parser_OutputPin pointers.
quartz/vmr9: Return S_OK when calling IVMRFilterConfig9::SetNumberOfStreams(1).
ntoskrnl.exe: Handle some no-op PnP requests.
ntoskrnl.exe: Handle IRP_MN_QUERY_ID for root PnP devices.
ntoskrnl.exe: Stub PoStartNextPowerIrp().
ntoskrnl.exe: Implement PoCallDriver().
qcap/tests: Add some tests for IBaseFilter::EnumPins on the AVI muxer.
qcap/tests: Add some tests for IBaseFilter::FindPin() on the AVI mux filter.
qcap/tests: Add some tests for querying AVI mux pin information.
qcap/tests: Add some tests for AVI mux pin interfaces.
qcap/tests: Add some more tests for AVI mux media types.
setupapi: Also start newly installed root PnP services in SetupDiInstallDevice().
hidclass.sys: Detach the HID device before deleting it.
quartz/tests: Add some tests for VMR7 media types.
quartz/tests: Add some tests for VMR9 media types.
quartz/tests: Add some tests for IEnumMediaTypes().
qcap/tests: Add some tests for IEnumMediaTypes().
qedit/tests: Add some tests for media types.
qedit/tests: Add some tests for IEnumMediaTypes().
strmbase: Simplify IEnumMediaTypesImpl_Next().
strmbase: Fix implementation of IEnumMediaTypes::Skip().
msi: Close all handles opened by a custom action thread.
ntdll: Correctly fill DataTransferLength in SCSI_PASS_THROUGH and SCSI_PASS_THROUGH_DIRECT.
strmbase: Remove unused "ThreadSignal" event.
strmbase: Rename "evComplete" to "state_event" for clarity.
strmbase: Wait for the presentation time in BaseRendererImpl_Receive().
strmbase: Do not set RenderEvent in IBaseFilter::Run().
strmbase: Split RenderEvent into separate events for advising and flushing.
quartz/dsoundrender: Use flush_event instead of reimplementing it.
quartz/dsoundrender: Use BaseRendererImpl_Pause().
strmbase: Remove several unused callbacks.
strmbase: Rename pfnOnStartStreaming to renderer_start_stream.
strmbase: Rename pfnOnStopStreaming to renderer_stop_stream.
ntoskrnl.exe: Use the registered interface class in IoSetDeviceInterfaceState().
user32/tests: Test opening raw input devices.
services: Report a PID of 0 for drivers.
services: Do not overwrite the service type in SetServiceStatus().
winebus.sys: Create a stub mouse device.
winehid.inf: Add WINEMOUSE to the list of winehid device IDs.
include: Add ntddmou.h.
hidclass.sys: Create a mouse device interface for HID mouse devices.
user32: Introduce and use an array_reserve() helper.
user32: Factor out add_device().
Zhiyi Zhang (10):
user32: Move EnumDisplayDevicesA/W to sysparams.c.
user32: Avoid a possible race.
dxgi/tests: Add more IDXGISwapChain_Present() tests.
dxgi: Return DXGI_STATUS_OCCLUDED for minimised windows in d3d11_swapchain_present().
dxgi/tests: Add IDXGIOutput ownership tests.
winex11.drv: Use generic EnumDisplayMonitors.
winex11.drv: Use generic GetMonitorInfo.
winex11.drv: Specify enumerator when calling SetupDiGetClassDevsW.
user32: Specify enumerator when calling SetupDiGetClassDevsW.
user32: Cache monitor information.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.11 is now available.
What's new in this release (see below for details):
- Updated version of the Mono engine, including Windows.Forms.
- More DLLs are built as PE files by default.
- Faster implementation of Slim Reader/Writer locks on Linux.
- Initial support for enumerating display devices.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.11.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.11.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.11 (total 17):
8848 SWAT4 Areas that should be in shadow and people are rendered solid black
22253 Horizontal scrolling with the mouse wheel does not work in list views
24211 ispq crashes on 'create account' with devenum enabled and without native qcap
28153 AutoIt v3.x @DesktopRefresh macro returns 0 (device caps VREFRESH hard-coded to 0)
30822 Max Payne 3 not running
34687 Port Royale 2 crashes on startup (SymGetLineFromAddr() returns unix-style path for source file)
34741 Catzilla 1.0 doesn't work: EAccess violation
34742 Catzilla 1.0 doesn't allow to use any display resolutions other than 576p
35477 'epsilon' 64K demo/intro by mercury crashes on start up
39071 7-Zip 15.06 looks broken after being minimized
39337 Legacy of Kain: Soul Reaver crashes at intro video when being run in desktop resolution > 640x480
45218 Fallout 4 Script Extender fails to allocate trampoline buffers
47164 .NET Framework 4.0 installer fails when Wine is compiled with GCC 9.1.1
47167 Chromium Embedded Framework (CEF) applications display no content when wine is compiled with gcc-9
47327 Japanese texts are overlapped in notepad when using bitmap font.
47371 Nero CoverDesigner doesn't install - missing support for BCRYPT_RSA_SIGN_ALGORITHM
47378 ole32: native build (without-mingw) is broken
----------------------------------------------------------------
Changes since 4.10:
Akihiro Sagawa (3):
usp10: Cache ScriptString_pSize value, again.
usp10/tests: Add advance width tests with CJK bitmap font.
usp10: Fix advance width when glyph is missing.
Alexandre Julliard (168):
mf: Build with msvcrt.
mfplat: Build with msvcrt.
mfplay: Build with msvcrt.
mfreadwrite: Build with msvcrt.
mgmtapi: Build with msvcrt.
midimap: Build with msvcrt.
mlang: Build with msvcrt.
mmcndmgr: Build with msvcrt.
mmdevapi: Build with msvcrt.
mmdevldr.vxd: Build with msvcrt.
mmsystem: Build with msvcrt.
monodebg.vxd: Build with msvcrt.
mouse.drv: Build with msvcrt.
mpr: Build with msvcrt.
mprapi: Build with msvcrt.
ntdll: Don't use native subsystem heuristic against builtin modules.
fltmgr.sys: Fix duplicate dll flags.
ksecdd.sys: Fix duplicate dll flags.
msacm: Build with msvcrt.
msacm32.drv: Build with msvcrt.
msacm32: Build with msvcrt.
msadp32.acm: Build with msvcrt.
msasn1: Build with msvcrt.
mscat32: Build with msvcrt.
msctf: Build with msvcrt.
msctfp: Build with msvcrt.
msdaps: Build with msvcrt.
msdelta: Build with msvcrt.
msdmo: Build with msvcrt.
msdrm: Build with msvcrt.
msftedit: Build with msvcrt.
msg711.acm: Build with msvcrt.
ntdll: Make the __wine_spec_unimplemented_stub() copy cdecl.
imagehlp/tests: Remove a workaround for Win95.
mshtml: Build with msvcrt.
msi: Build with msvcrt.
msident: Build with msvcrt.
msimg32: Build with msvcrt.
msimtf: Build with msvcrt.
msisip: Build with msvcrt.
msisys.ocx: Build with msvcrt.
msls31: Build with msvcrt.
msnet32: Build with msvcrt.
mspatcha: Build with msvcrt.
msports: Build with msvcrt.
msrle32: Build with msvcrt.
msscript.ocx: Build with msvcrt.
mssign32: Build with msvcrt.
mssip32: Build with msvcrt.
mstask: Build with msvcrt.
jscript: Consistently use wcscmp() instead of lstrcmpW().
server: Fix the returned error code for an invalid NT header offset.
msvcp90: Avoid depending on config.h for the __builtin_clz check.
msvcm: Build with msvcrt.
msvfw32: Build with msvcrt.
msvidc32: Build with msvcrt.
msvideo: Build with msvcrt.
mswsock: Build with msvcrt.
msxml: Build with msvcrt.
msxml2: Build with msvcrt.
msxml4: Build with msvcrt.
msxml6: Build with msvcrt.
mtxdm: Build with msvcrt.
ncrypt: Build with msvcrt.
nddeapi: Build with msvcrt.
ndis.sys: Build with msvcrt.
netcfgx: Build with msvcrt.
netprofm: Build with msvcrt.
newdev: Build with msvcrt.
winebuild: Add a -munix option.
winebuild: Don't import standard C functions in Unix mode.
ntoskrnl: Make the standard C functions available for importing.
ninput: Build with msvcrt.
normaliz: Build with msvcrt.
npmshtml: Build with msvcrt.
npptools: Build with msvcrt.
ntdsapi: Build with msvcrt.
ntoskrnl: Build with msvcrt.
ntprint: Build with msvcrt.
objsel: Build with msvcrt.
odbccp32: Build with msvcrt.
ole2: Build with msvcrt.
ole2disp: Build with msvcrt.
ole2nls: Build with msvcrt.
ole32: Build with msvcrt.
oleacc: Build with msvcrt.
oleaut32: Build with msvcrt.
olecli: Build with msvcrt.
olecli32: Build with msvcrt.
oledb32: Build with msvcrt.
oledlg: Build with msvcrt.
olepro32: Build with msvcrt.
olesvr: Build with msvcrt.
olesvr32: Build with msvcrt.
olethk32: Build with msvcrt.
packager: Build with msvcrt.
pdh: Build with msvcrt.
photometadatahandler: Build with msvcrt.
pidgen: Build with msvcrt.
powrprof: Build with msvcrt.
printui: Build with msvcrt.
prntvpt: Build with msvcrt.
propsys: Build with msvcrt.
pstorec: Build with msvcrt.
makefiles: Support mixing Unix and msvcrt headers in a single module.
winecrt0: Build with msvcrt.
winecrt0: Provide our own setjmp/longjmp functions for exception handling.
ntdll: Make wine_server_call() cdecl.
ntdll: Make the standard C functions available for importing.
kernelbase: Build with msvcrt.
qmgr: Build with msvcrt.
qmgrprxy: Build with msvcrt.
query: Build with msvcrt.
qwave: Build with msvcrt.
rasapi32: Build with msvcrt.
rasdlg: Build with msvcrt.
regapi: Build with msvcrt.
resutils: Build with msvcrt.
riched20: Build with msvcrt.
riched32: Build with msvcrt.
rpcrt4: Build with msvcrt.
rsaenh: Build with msvcrt.
rstrtmgr: Build with msvcrt.
rtutils: Build with msvcrt.
ntdll: Use .so builtin if found instead of falling back to the installed PE file.
kernelbase: Revert some incorrect differences with shlwapi.
samlib: Build with msvcrt.
sapi: Build with msvcrt.
sas: Build with msvcrt.
scarddlg: Build with msvcrt.
sccbase: Build with msvcrt.
schannel: Build with msvcrt.
schedsvc: Build with msvcrt.
scrobj: Build with msvcrt.
scrrun: Build with msvcrt.
scsiport: Build with msvcrt.
sensapi: Build with msvcrt.
serialui: Build with msvcrt.
setupx: Build with msvcrt.
sfc: Build with msvcrt.
sfc_os: Build with msvcrt.
shcore: Build with msvcrt.
shdocvw: Build with msvcrt.
shell: Build with msvcrt.
shlwapi: Import string functions from kernelbase.
shlwapi: Import path functions from kernelbase.
shlwapi: Import URL functions from kernelbase.
shlwapi: Import registry functions from kernelbase.
shlwapi: Import QISearch() from kernelbase.
shlwapi: Build with msvcrt.
slbcsp: Build with msvcrt.
slc: Build with msvcrt.
snmpapi: Build with msvcrt.
sound.drv: Build with msvcrt.
spoolss: Build with msvcrt.
srclient: Build with msvcrt.
sspicli: Build with msvcrt.
sti: Build with msvcrt.
storage: Build with msvcrt.
stress: Build with msvcrt.
strmdll: Build with msvcrt.
svrapi: Build with msvcrt.
sxs: Build with msvcrt.
system.drv: Build with msvcrt.
api-ms-win-core-kernel32-legacy-l1-1-1: Use proper forwards.
winebuild: Add -import entry point flag to generate hotpatchable import thunks.
shlwapi: Add -import flag on functions imported from kernelbase.
version: Move implementation into kernelbase.
Alistair Leslie-Hughes (7):
dpnet: Remove dead code (Coverity).
dinput: Ensure buffer doesn't overflow (Coverity).
wininet: Remove unsued flag HTTP_ADDHDR_FLAG_COALESCE.
advapi32: Don't read a value that might be uninitialized (Coverity).
mshtml: Remove redundant assignments.
dbghelp: Return a dos path from SymGetLineFromAddr.
mshtml: Implement IHTMLDocument2 put/get_bgColor.
Andrew Eikum (5):
winebus.sys: Close SDL handles when a device is removed.
kernel32: Link against RT_LIBS.
dxgi/tests: Add tests for setting the fullscreen state of swapchains with destroyed windows.
dxgi: Return DXGI_ERROR_NOT_CURRENTLY_AVAILABLE if setting the fullscreen state failed.
wined3d: Validate that we got a valid window in wined3d_device_setup_fullscreen_window().
Aric Stewart (1):
winemac.drv: Send state change notifications from ImeSelect.
Dmitry Timoshkov (5):
mshtml: Fix a typo.
mshtml: Add better stub for HTMLDocument7::get_onmsthumbnailclick.
mshtml: Add recently added GUIDs to debugstr_mshtml_guid().
mshtml: Replace a useless trace with a slightly better one.
mshtml: Add support for DIID_HTMLDocumentEvents2 connection point sink.
Ethan Lee (1):
xaudio2: Fix some TRACE calls erroneously marked as stubs.
Gabriel Ivăncescu (7):
comctl32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
user32/listbox: Fix mouse wheel scrolling for multi-column listboxes.
comctl32/edit: Get rid of useless casts.
user32/edit: Get rid of useless casts.
comctl32/listview: Get rid of useless casts.
comctl32/treeview: Get rid of useless casts.
ntdll: Add support for EXT4 per directory case folding.
Hans Leidekker (3):
bcrypt: Add stub implementations of BCryptEnumContextFunctions and BCryptFreeBuffer.
bcrypt: Add support for BCRYPT_RSA_SIGN_ALGORITHM.
msi/tests: Accept case variations for path properties.
Henri Verbeet (47):
wined3d: Pass a wined3d_context_gl structure to context_enable_clip_distances().
wined3d: Pass a wined3d_context_gl structure to context_end_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to context_map_bo_address().
wined3d: Pass a wined3d_context_gl structure to context_unload_tex_coords().
wined3d: Upload texture data through the texture ops in wined3d_cs_exec_update_sub_resource().
wined3d: Pass a wined3d_context_gl structure to context_unmap_bo_address().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_prepare_texture().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_apply_sampler_desc().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_bind().
wined3d: Upload texture data through the texture ops in surface_convert_format().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_set_compatible_renderbuffer().
wined3d: Pass a wined3d_context_gl structure to wined3d_sampler_bind().
wined3d: Pass a wined3d_context_gl structure to context_attach_gl_texture_fbo().
wined3d: Get rid of the unused "gl_info" argument to compute_texture_matrix().
wined3d: Upload texture data through the texture ops in wined3d_texture_upload_from_texture().
wined3d: Pass a wined3d_context_gl structure to context_attach_depth_stencil_fbo().
wined3d: Pass a wined3d_context_gl structure to context_attach_surface_fbo().
wined3d: Pass a wined3d_context_gl structure to context_set_fbo_key_for_render_target().
wined3d: Pass a wined3d_context_gl structure to context_generate_fbo_key().
wined3d: Download texture data through the texture ops in wined3d_texture_download_from_texture().
wined3d: Pass a wined3d_context_gl structure to context_create_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_apply_draw_buffers().
wined3d: Pass a wined3d_context_gl structure to context_set_render_offscreen().
wined3d: Pass a wined3d_context_gl structure to context_apply_blit_projection().
wined3d: Use texture2d_load_sysmem() in texture1d_load_location().
wined3d: Pass a wined3d_context_gl structure to context_bind_unordered_access_views().
wined3d: Pass a wined3d_context_gl structure to context_pause_transform_feedback().
wined3d: Pass a wined3d_context_gl structure to context_setup_target().
wined3d: Pass a wined3d_context_gl structure to draw_primitive_arrays().
wined3d: Use wined3d_texture_gl_load_sysmem() in texture3d_load_location().
wined3d: Pass a wined3d_context_gl structure to draw_indirect().
wined3d: Pass a wined3d_context_gl structure to context_unload_vertex_data().
wined3d: Pass a wined3d_context_gl structure to context_load_vertex_data().
wined3d: Pass a wined3d_context_gl structure to context_unload_numbered_array().
wined3d: Use texture2d_load_texture() in texture1d_load_location().
wined3d: Do not acquire/release the focus window in wined3d_swapchain_set_fullscreen().
wined3d: Pass a wined3d_context_gl structure to context_unload_numbered_arrays().
wined3d: Pass a wined3d_context_gl structure to context_draw_shaded_quad().
wined3d: Pass a wined3d_context_gl structure to context_draw_textured_quad().
wined3d: Pass a wined3d_context_gl structure to destroy_dummy_textures().
wined3d: Use wined3d_texture_gl_load_texture() in texture3d_load_location().
d3drm: Introduce a d3drm_matrix structure.
wined3d: Pass a wined3d_context_gl structure to shader_arb_ps_local_constants().
wined3d: Pass a wined3d_context_gl structure to shader_arb_vs_local_constants().
wined3d: Pass a wined3d_context_gl structure to shader_arb_load_constants_internal().
wined3d: Pass a wined3d_context_gl structure to find_arb_pshader().
wined3d: Merge the wined3d_texture_gl texture ops implementations.
Huw D. M. Davies (2):
kernel32/tests: Add a test for GetTickCount().
user32: Don't access a potentially uninitialized padded_border.
Jacek Caban (1):
services: Support delayed autostart services.
Jarkko Korpi (1):
wininet: Silence no support on this platform message.
Jeff Smith (6):
d3drm: Implement the BEFORE and AFTER frame transform combine types.
d3drm: Validate that the transformation is affine in d3drm_frame3_AddTransform().
d3drm: Implement d3drm_frame3_AddTranslation().
d3drm: Implement d3drm_frame3_AddScale().
d3drm: Implement d3drm_frame3_AddRotation().
d3drm: Implement d3drm_frame3_Transform().
Martin Liska (1):
include: Avoid compound literals for WCHAR strings.
Michael Müller (1):
ddraw: Properly set DDCAPS.ddsOldCaps in ddraw7_GetCaps().
Michael Stefaniuc (1):
winebuild: Use the now available ARRAY_SIZE() macro.
Nikolay Sivov (6):
mfplat: Add MFRegisterLocalByteStreamHandler().
mfplat: Give priority to local scheme handlers.
mfplat: Give priority to local bytestream handlers.
mf: Add support for IMFSampleGrabberSinkCallback2.
mf: Forward grabber clock state change calls to user callback.
mf/tests: Add sample processing tests for Video Processor.
Paul Gofman (11):
ddraw: Factor out viewport_alloc_active_light_index() function.
ddraw: Do not limit inactive light count in viewport.
ddraw: Always activate the light when requested replacing some previous light.
ddraw/tests: Test adding a number of lights to viewport in ddraw4.
ddraw: Increase maximum active light count.
wined3d: Use 3 component norm for 'nrm' opcode in GLSL backend.
wined3d: Do not zero 'w' with zero norm for 'nrm' opcode in GLSL backend.
d3d9/tests: Add test for 'nrm' opcode.
ddraw: Store _TEXTUREMAPBLEND state instead of guessing it from wined3d states.
ddraw: Turn off legacy texture blending in d3d_device3_SetTextureStageState().
ddraw: Do not modify any states for _TEXTUREMAPBLEND if application sets the same value.
Piotr Caban (1):
libwine: Fix NORM_IGNORESYMBOLS flag handling in compare_weights.
Richard Pospesel (1):
widl: Use FC_CHAR rather than FC_BYTE for boolean typedef to match midl.exe output.
Roberto Pungartnik (2):
po: Update Brazilian Portuguese translation.
po: Update Brazilian Portuguese translation.
Rémi Bernon (10):
ntdll/tests: Move NtAllocateVirtualMemory tests that were in kernel32.
ntdll/tests: Add NtAllocateVirtualMemory tests for zero_bits behavior.
ntdll: Clarify NtAllocateVirtualMemory zero_bits parameter semantics.
ntdll/tests: Cleanup NtAllocateVirtualMemory related tests.
kernel32/tests: Fix some NtMapViewOfSection tests expectations, and add results for w1064v1809.
ntdll/tests: Move NtMapViewOfSection tests from kernel32/tests.
ntdll/tests: Add more NtMapViewOfSection tests with zero_bits.
ntdll: Clarify NtMapViewOfSection zero_bits parameter semantics.
ntdll: Pass the alignment parameter down to map_view instead of mask.
hid: Fill the HIDD_ATTRIBUTES Size member, and add a test for expected size.
Tim Schumacher (1):
wininet: Hide GetCookie flag fixme for HTTPONLY cookies.
Vincent Povirk (1):
mscoree: Update Wine Mono to 4.9.0.
Zebediah Figura (66):
ucrtbase/tests: Add some tests for __stdio_common_vsscanf().
ucrtbase: Write the %hh prefix as a single char.
ntdll: Remove no longer used interlocked_dec_if_nonzero().
ntdll: Add a futex-based implementation of SRW locks.
ntdll: Try to avoid an unnecessary syscall in fast_release_srw_exclusive().
qedit/samplegrabber: Use BaseFilterImpl_QueryVendorInfo().
quartz/filtergraph: Use the type info cache for IBasicAudio.
quartz/filtergraph: Use the type info cache for IVideoWindow.
quartz/filtergraph: Use the type info cache for IBasicVideo.
strmbase: Don't increment the pin reference count in filter_get_pin().
strmbase: Add default implementations of IUnknown methods for IBasicVideo.
quartz: Use strmbase IUnknown methods for IBasicVideo.
strmbase: Get rid of the "lpVtbl" parameter to BaseControlVideo_Init().
strmbase: Add default implementations of IUnknown methods for IVideoWindow.
quartz: Use strmbase IUnknown methods for IVideoWindow.
strmbase: Factor out strmbase_pin_init().
strmbase: Return void from InputPin_Init().
strmbase: Factor out strmbase_sink_cleanup().
qcap/avico: Store the sink pin inline in the AviCompressor structure.
qcap/smartteefilter: Store the sink pin inline in the AviCompressor structure.
widl: Mark unions, user types, and ranges as IsSimpleRef.
widl: Remove the unused "indent" parameter from write_type_tfs().
qcap/avimux: Use strmbase_sink_init() and heap_alloc_zero() in create_input_pin().
strmbase: Return void from OutputPin_Init().
strmbase: Factor out strmbase_source_cleanup().
qcap/avico: Store the source pin inline in the AviCompressor structure.
qcap/smartteefilter: Store the capture source pin inline in the SmartTeeFilter structure.
qcap/smartteefilter: Store the preview source pin inline in the SmartTeeFilter structure.
dmusic/tests: Add some tests for the master clock.
dmusic: Store the master clock as an IReferenceClock pointer.
dmusic: Implement the master clock object.
qcap/avimux: Store the source pin and AVI data inline in the AviMux structure.
quartz/filesource: Share pin and filter reference counts.
quartz/parser: Share sink pin and filter reference counts.
quartz/parser: Share source pin and filter reference counts.
strmbase/transform: Share pin and filter reference counts.
ntdll: Implement RtlCreateUserStack() and RtlFreeUserStack().
kernel32: Use RtlCreateUserStack().
ntdll/tests: Add tests for RtlCreateUserStack().
strmbase/renderer: Share pin and filter reference counts.
qcap/vfwcapture: Share pin and filter reference counts.
winegstreamer: Share sink pin and filter reference counts.
winegstreamer: Share source pin and filter reference counts.
wineqtdecoder: Share sink pin and filter reference counts.
winex11: Remove redundant calls to update_key_state().
winex11: Update the state of all keys on KeymapNotify.
wineqtdecoder/qtsplitter: Share source pin and filter reference counts.
strmbase: Share pin and filter reference counts in base pin reference counting methods.
strmbase: Use base pin reference counting methods.
quartz: Use strmbase pin reference counting methods.
qcap: Use strmbase pin reference counting methods.
winegstreamer: Use strmbase pin reference counting methods.
wineqtdecoder: Use strmbase pin reference counting methods.
quartz/filesource: Store the source pin inline in the AsyncReader structure.
quartz/filesource: Cancel I/O from all threads in IAsyncReader::BeginFlush().
quartz/filesource: Add a test for cross-thread asynchronous read requests.
quartz/systemclock: Create the advise thread after the events it depends on.
strmbase/transform: Store the pins inline in the TransformFilter structure.
strmbase/renderer: Remove some duplicated locks.
strmbase/renderer: Store the sink pin inline in the BaseRenderer structure.
quartz/filtergraph: Add tests for asynchronous state change.
d3d11/tests: Test creating and rendering to a swapchain on the desktop window.
d3d10core/tests: Test creating and rendering to a swapchain on the desktop window.
d3d9/tests: Test creating and rendering to a swapchain on the desktop window.
d3d8/tests: Test creating and rendering to a swapchain on the desktop window.
wined3d: Use a backup device context for swapchains created on the desktop window.
Zhiyi Zhang (11):
winex11.drv: Add Xinerama display device handler.
winex11.drv: Initialize GPU registry data.
winex11.drv: Initialize adapter registry data.
winex11.drv: Initialize monitor registry data.
winex11.drv: Handle display device changes.
user32: Improve EnumDisplayDevicesW stub.
user32: Implement EnumDisplayDevicesW().
dxgi/tests: Add window association tests.
dxgi: Implement dxgi_factory_GetWindowAssociation().
dxgi: Retrieve swapchains' fullscreen state from wined3d.
dxgi: Implement Alt+Enter handling.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.10 is now available.
What's new in this release (see below for details):
- Many DLLs are built as PE files by default.
- More support for installing Plug and Play drivers.
- Clock synchronization in Media Foundation.
- Volume adjustment in audio drivers.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.10.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.10.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.10 (total 44):
11637 Midtown Madness menus flicker
30891 Typing of the Dead: page fault in wined3d_surface_blt
34021 IE8 crashes badly when navigating to www.microsoft.com
34538 Athena's Charm Table search 0.35b crashes with Wine-Mono
35999 Need for speed carbon DEMO: can't control the car with arrow keys
37279 builtin IE "document.location.pathname" returns without leading slash
38182 King of Dragon Pass: can't change audio volume level
38396 msiexec crash with winetricks running LEGOHarryPotter
40373 Double free in RPCRT4
40768 Midtown Madness does not open: "There was an undetectable problem in loading the specified device driver"
41606 Wrong processing of WM_DROPFILES message, received only by the top level windows.
41835 LG DVD firmware updater for GH22NS30 ver. 2.0 crashes on startup
43159 The old game Knight Of Knight has black textures
43846 Prototype 1 and 2 no audio
44979 Extra system title bar should not be added around Steam
45649 chromium 32-bit sandbox hangs forever inside server_queue_process_apc
46090 TopoEdit tool from Windows 10 SDK (10.0.17763.x) needs 'ext-ms-win-shell-comctl32-init-l1-1-0.dll' stub dll
46450 Volume Control doesn't work in Firefox videos (and browsers based on it) with PulseAudio driver
46558 win64 dotnet Space Engineers fractal noise generation broken
46564 Anno 1800 closed beta crashes at launch
46723 Unreal Engine based games stuck at launch and show a black screen instead of playing video (Kholat, What Remains of Edith Finch, Draugen, Obduction)
46809 Multiple applications fail to install or crash on startup: dll dependencies from private path (LoadLibraryEx LOAD_WITH_ALTERED_SEARCH_PATH)(PS4 Remote Play 2.x. DVDVideoSoft Free YouTube to MP3 Converter 4.x)
46824 Orion Prelude (Steam) crashes with wine-mono
46942 [REGRESSION] 4.0 introduce lag / performance drop in Lara Croft the guardian of light
46982 MPGUI crashes on unimplemented function msvcp100.dll.?_Init_locks_ctor@_Init_locks@std@@CAXPAV12@@Z
47069 Final Fantasy XIV Launcher renders black (needs better get_Busy implementation)
47137 Multiple applications from Line 6 (Yamaha Guitar Group) crash on startup (HX Edit v2.71, POD Farm 2.5)(Wine builtin 'gdiplus.dll' missing version resource)
47143 Trackbar thumb is too small in Metatrader 4 expert advisor
47201 Visual Studio 2015 crashes on unimplemented KERNEL32.dll.WerUnregisterRuntimeExceptionModule
47223 D-pad input from gamepad is no longer registered in some games (regression)
47235 Steep (Uplay) crashes on unimplemented function ncrypt.dll.BCryptSecretAgreement
47236 Adobe InDesign CC 2017: crashes at startup: unimplemented function msvcp140.dll._Strxfrm
47250 Battle.net crashes with msvcp error when compiled with --without-mingw
47255 Multiple programs crash inside wined3d (Xenonauts, Overwatch, Aura 2: The Sacred Rings, Art of Murder: Cards of Destiny , LINE)
47258 The Guild II fails to start with built-in quartz
47262 compile error: ‘for’ loop initial declarations are only allowed in C99 mode
47265 Multiple Blizzard games (Diablo III, Heroes of the Storm, Overwatch, Starcraft, StarCraft II, World of Warcraft) crash immediately on launch
47274 Windows XP's cmd.exe doesn't execute batch files anymore
47280 TopoEdit tool from Windows 10 SDK (10.0.17763.x) crashes on unimplemented functions 'ext-ms-win-ntuser-windowclass-l1-1-0.dll.{Get,Set}WindowLongPtrW'
47285 widl generates incorrect format strings when using -Oicf flag
47286 VSS Test Writer Tool 'vswriter.exe' from Windows 10 SDK (10.0.17763.x) crashes on unimplemented function api-ms-win-security-lsalookup-l1-1-0.dll.LookupAccountSidLocalW
47289 Obduction: fails to render menu and crashes at launch
47290 Obduction: fails to render menu: now freezes instead of crashing
47311 Heap debugging (WINEDEBUG=+heap) broken since wine-4.6-132-g948fc85186
----------------------------------------------------------------
Changes since 4.9:
Akihiro Sagawa (7):
advapi32/tests: Add more RegLoadMUIString tests.
advapi32: RegLoadMUIString doesn't accept a string without '@' prefix.
advapi32: Expand environment variables even if REG_SZ type is used.
advapi32: Fix the error code on parse failure.
advapi32: Fix the error code on load failure.
advapi32: Cache result of LoadString.
quartz: Ensure error text is terminated with NUL character.
Alexandre Julliard (160):
acledit: Build with msvcrt.
aclui: Build with msvcrt.
activeds: Build with msvcrt.
actxprxy: Build with msvcrt.
adsldp: Build with msvcrt.
adsldpc: Build with msvcrt.
advpack: Build with msvcrt.
amsi: Build with msvcrt.
apphelp: Build with msvcrt.
atl: Build with msvcrt.
atlthunk: Build with msvcrt.
makefiles: Build fonts in quiet mode.
makefiles: Default to ms_abi for 64-bit msvcrt builds.
atmlib: Build with msvcrt.
authz: Build with msvcrt.
avifil32: Build with msvcrt.
avifile: Build with msvcrt.
avrt: Build with msvcrt.
bluetoothapis: Build with msvcrt.
browseui: Build with msvcrt.
bthprops.cpl: Build with msvcrt.
cards: Build with msvcrt.
cdosys: Build with msvcrt.
clusapi: Build with msvcrt.
combase: Build with msvcrt.
comcat: Build with msvcrt.
include/msvcrt: Add snprintf() compatibility macro.
include/msvcrt: Define more math functions.
comctl32: Build with msvcrt.
comdlg32: Build with msvcrt.
commdlg: Build with msvcrt.
compobj: Build with msvcrt.
compstui: Build with msvcrt.
comsvcs: Build with msvcrt.
connect: Build with msvcrt.
credui: Build with msvcrt.
cryptdlg: Build with msvcrt.
cryptdll: Build with msvcrt.
cryptext: Build with msvcrt.
cryptnet: Build with msvcrt.
cryptui: Build with msvcrt.
ctl3d: Build with msvcrt.
ctl3d32: Build with msvcrt.
ctl3dv2: Build with msvcrt.
include/msvcrt: Add INFINITY and NAN definitions.
include/msvcrt: Use setjmpex() instead of setjmp() on 64-bit.
include: Make the Wine exception handlers cdecl.
winecrt0: Make the main() and wmain() entry points cdecl.
d2d1: Build with msvcrt.
d3d10: Build with msvcrt.
d3d10_1: Build with msvcrt.
d3d10core: Build with msvcrt.
d3dim: Build with msvcrt.
d3drm: Build with msvcrt.
d3dx10: Build with msvcrt.
d3dx11: Build with msvcrt.
d3dx9: Build with msvcrt.
d3dxof: Build with msvcrt.
davclnt: Build with msvcrt.
dbgeng: Build with msvcrt.
msvcrt/tests: Don't use win_skip for functions that are not exported on 64-bit.
msi/tests: Don't skip a 64-bit test on Wine.
mf/tests: Initialize variable to avoid spurious test failure.
oleacc/tests: Preserve the full 64 bits of the LRESULT value.
kernel32: Simplify K32GetPerformanceInfo().
dciman32: Build with msvcrt.
ddeml: Build with msvcrt.
ddrawex: Build with msvcrt.
devenum: Build with msvcrt.
dhcpcsvc: Build with msvcrt.
dhtmled.ocx: Build with msvcrt.
difxapi: Build with msvcrt.
dispdib: Build with msvcrt.
dispex: Build with msvcrt.
display.drv: Build with msvcrt.
dmband: Build with msvcrt.
dmcompos: Build with msvcrt.
dmime: Build with msvcrt.
ntdll: Fix off-by-one allocation error.
dmloader: Build with msvcrt.
dmscript: Build with msvcrt.
dmstyle: Build with msvcrt.
dmsynth: Build with msvcrt.
dmusic: Build with msvcrt.
dmusic32: Build with msvcrt.
dplayx: Build with msvcrt.
dpnet: Build with msvcrt.
dpnhpast: Build with msvcrt.
dpvoice: Build with msvcrt.
dpwsockx: Build with msvcrt.
drmclien: Build with msvcrt.
dsound: Build with msvcrt.
dsquery: Build with msvcrt.
dssenh: Build with msvcrt.
dswave: Build with msvcrt.
dwmapi: Build with msvcrt.
dx8vb: Build with msvcrt.
dxdiagn: Build with msvcrt.
dxva2: Build with msvcrt.
esent: Build with msvcrt.
explorerframe: Build with msvcrt.
faultrep: Build with msvcrt.
feclient: Build with msvcrt.
fltlib: Build with msvcrt.
fltmgr.sys: Build with msvcrt.
fntcache: Build with msvcrt.
fontsub: Build with msvcrt.
fusion: Build with msvcrt.
fwpuclnt: Build with msvcrt.
configure: Use pkg-config to check for zlib.
winebuild: Don't even try to resolve imports for PE builds.
gameux: Build with msvcrt.
gdiplus: Build with msvcrt.
gpkcsp: Build with msvcrt.
hal: Build with msvcrt.
hhctrl.ocx: Build with msvcrt.
hid: Build with msvcrt.
hidclass.sys: Build with msvcrt.
hlink: Build with msvcrt.
hnetcfg: Build with msvcrt.
httpapi: Build with msvcrt.
iccvid: Build with msvcrt.
ieframe: Build with msvcrt.
ieproxy: Build with msvcrt.
ifsmgr.vxd: Build with msvcrt.
imaadp32.acm: Build with msvcrt.
ntdll: Add a helper function to find a module from its dlopen handle.
ntdll: Add a helper function to load a dll from a .so file.
ntdll: Load the file we got when we can't locate the corresponding builtin.
kernel32: Fix handling of LOAD_WITH_ALTERED_SEARCH_PATH when other search flags are specified.
imagehlp: Build with msvcrt.
imm32: Build with msvcrt.
inetcomm: Build with msvcrt.
inetcpl: Build with msvcrt.
inetmib1: Build with msvcrt.
infosoft: Build with msvcrt.
initpki: Build with msvcrt.
inkobj: Build with msvcrt.
inseng: Build with msvcrt.
itircl: Build with msvcrt.
itss: Build with msvcrt.
joy.cpl: Build with msvcrt.
jscript: Build with msvcrt.
jsproxy: Build with Windows sockets.
jsproxy: Build with msvcrt.
keyboard.drv: Build with msvcrt.
ksecdd.sys: Build with msvcrt.
ksuser: Build with msvcrt.
ktmw32: Build with msvcrt.
loadperf: Build with msvcrt.
localspl: Build with msvcrt.
localui: Build with msvcrt.
lzexpand: Build with msvcrt.
mapi32: Build with msvcrt.
mapistub: Build with msvcrt.
mciavi32: Build with msvcrt.
mcicda: Build with msvcrt.
mciqtz32: Build with msvcrt.
mciseq: Build with msvcrt.
mciwave: Build with msvcrt.
Alexey Prokhin (5):
dinput: Return fake DIPROP_GUIDANDPATH property for linux joysticks.
dinput: Return fake DIPROP_GUIDANDPATH property for linux input joysticks.
dinput: Return fake DIPROP_GUIDANDPATH property for OSX joysticks.
dinput/tests: Remove todo from DIPROP_GUIDANDPATH test.
dinput/tests: Check path format of DIPROP_GUIDANDPATH property.
Alistair Leslie-Hughes (11):
dinput/tests: Remove unrequired if (Coverity).
amstream: Leave critical section on success (Coverity).
bcrypt: Add BCryptDestroySecret/BCryptSecretAgreement stubs.
bcrypt: Add BCryptDeriveKey stub.
include: Add missing SYMOPT_* defines.
dbghelp: Support S_HEAPALLOCSITE entry.
dinput: Return correct value in IDirectInputDevice2 Release.
dinput: Trace reference count in a consistent way.
dbghelp: Add SymGetExtendedOption/SymSetExtendedOption stubs.
dbghelp: SymSet/GetExtendedOption support a WINE only option.
dbghelp: Use internal flag for loading native files.
Andrey Gusev (8):
ext-ms-win-shell-comctl32-init-l1-1-0: Add dll.
ext-ms-win-shell-comdlg32-l1-1-0: Add dll.
ext-ms-win-shell-shell32-l1-2-0: Add dll.
ext-ms-win-ntuser-windowclass-l1-1-0: Update spec file.
webservices: Fix misplaced parenthesis.
oledb32: Remove duplicate WINAPI.
advapi32: Implement LookupAccountSidLocalA/W.
quartz: Avoid cast for VMR9_ImagePresenter_QueryInterface.
André Hentschel (7):
setupapi/tests: Don't test functions directly when reporting GetLastError().
comctl32/tests: Don't test functions directly when reporting GetLastError().
ntoskrnl.exe/tests: Don't test functions directly when reporting GetLastError().
shcore: Fix IUnknown_AtomicRelease spec file entry.
shlwapi: Fix some spec file entries.
rpcrt4: Fix NdrServerContextMarshall spec file entry.
mpr: Fix some spec file entries.
Aric Stewart (3):
winemac.drv: Use NI_COMPOSITIONSTR/CPS_CANCEL when composition string is empty.
mshtml: Handle NULL aNode in nsContextMenuListener_OnShowContextMenu.
dinput: Handle case where IOHIDDeviceGetValue fails.
Daniel Lehman (1):
advapi32: Implement EnumDynamicTimeZoneInformation.
Derek Lesho (1):
ntoskrnl.exe: Implement KeAreApcsDisabled.
Dmitry Timoshkov (6):
ieframe: Prefer built-in version.
include/mshtml.idl: Add more interface declarations.
mshtml: Add IMarkupServices interface stub.
mshtml: Add IMarkupContainer interface stub.
mshtml: Add IDisplayServices interface stub.
mshtml.idl: Add forward declaration for IHTMLWindow flavours.
Gabriel Ivăncescu (5):
winepulse.drv: Adjust the buffer volume before sending it to PulseAudio.
winepulse.drv: Add support for A-law and u-law formats with volume changes.
winealsa.drv: Adjust the buffer volume before sending it to ALSA.
comctl32/listbox: Don't try to paint non-visible items for multi-column listboxes.
user32/listbox: Don't try to paint non-visible items for multi-column listboxes.
Hans Leidekker (1):
advapi32: Improve the SaferComputeTokenFromLevel stub.
Henri Verbeet (25):
wined3d: Pass a wined3d_context_gl structure to context_generate_rt_mask_no_fbo().
wined3d: Pass a wined3d_context_gl strcuture to find_draw_buffers_mask().
wined3d: Pass a wined3d_context_gl structure to context_activate().
wined3d: Move the WGL fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Properly check whether a context was created in swapchain_init().
wined3d: Pass a wined3d_context_gl structure to arbfp_blitter_upload_palette().
wined3d: Pass a wined3d_context_gl structure to arbfp_blit_set().
wined3d: Pass a wined3d_context_gl structure to create_dummy_textures().
wined3d: Pass a wined3d_context_gl structure to glsl_blitter_upload_palette().
wined3d: Use wined3d_texture_get_level_box() in wined3d_device_copy_resource().
wined3d: Pass a wined3d_context_gl structure to shader_resource_view_gl_bind_and_dirtify().
wined3d: Pass a wined3d_context_gl structure to context_active_texture().
wined3d: Move the "active_texture" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the blit dimension fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Make the adapter responsible for acquiring and releasing contexts.
wined3d: Move the material tracking fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "needs_set" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "valid" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_reacquire().
wined3d: Create a blitter for the Vulkan adapter.
wined3d: Move the "tid" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_bind_bo().
wined3d: Pass a wined3d_context_gl structure to context_bind_dummy_textures().
wined3d: Pass a wined3d_context_gl structure to context_copy_bo_address().
wined3d: Upload texture data through the texture ops in wined3d_cs_exec_blt_sub_resource().
Huw D. M. Davies (2):
msctfp: Define the correct PROXY_CLSID.
kernel32: Move the implementation of GetTickCount() to kernel32.
Isira Seneviratne (2):
po: Update Sinhala translation.
po: Update Sinhala translation.
Jacek Caban (18):
ntoskrnl.exe/tests: Always test DeviceIoControl result.
ntoskrnl.exe: Pass context as a structure to IRP dispatchers.
ntoskrnl.exe: Reuse IRP input buffer if it wasn't used.
ntoskrnl.exe: Set irp context handle in dispatch_irp.
wininet: Fix name and data allocation failure handling in alloc_cookie.
server: Use stored current kernel call to interpret IRP dispatch status.
server: Store IRP client pointer on server side.
server: Remove IRP from device queue before terminating async.
server: Notify kernel when IRP is terminated by server.
ntoskrnl.exe: Cancel IRPs terminated by server.
mshtml/tests: Fix tests on some recent IE versions.
mshtml/tests: Include leading path slash in location test array.
mshtml: Rewrite IHTMLLocation::get_pathname on top of IUri.
ieframe: Keep Busy property in sync with download state.
server: Use current thread for IRP calls without associated thread.
ntoskrnl.exe: Dispatch server IRPs in critical region.
server: Associate create and close IRPs with current thread.
ntoskrnl.exe: Set IRP caller thread.
Jactry Zeng (2):
riched20: Implement ITextRange::SetRange.
msscript: Return S_OK in IScriptControl::put_SitehWnd().
Jeff Smith (1):
d3drm: CreateDevice is unimplemented on Windows.
John Found (1):
winex11.drv: Allow the drop target to be a transparent window.
Józef Kucia (2):
ucrtbase: Implement _o__stricmp().
dxgi: Improve tracing in dxgi_adapter_QueryVideoMemoryInfo().
Louis Lenders (1):
gdiplus: Add version resource.
Lukáš Krejčí (1):
mciqtz32: Don't overflow seek times during multiplication.
Manuel Edelmann (1):
kernel32: Added stub for Set/GetProcessPreferredUILanguages.
Marcus Meissner (1):
qcap: Release filter only if allocated.
Michael Stefaniuc (10):
ntoskrnl: Add a macro to declare a static CRITICAL_SECTION.
ole32/tests: Avoid a cast from COM object to interface.
shell32: Don't cast from COM object to interface.
winemac.drv: Avoid casts from COM objects to interfaces.
mshtml: Use the standard field name for an inner IUnknown.
urlmon: Use the standard field name for an inner IUnknown.
mshtml: Print the debug strings and not the pointers to them.
dbghelp: Fix the spelling of a parameter.
winedbg: Fix the spelling of a comment.
winedump: Fix the spelling of a string.
Mingcong Bai (1):
po: Update Simplified Chinese translation.
Nikolay Sivov (23):
mf: Implement type handler methods for sample grabber stream.
kernelbase: Add remaining registry helpers from shlwapi.
mf: Implement presentation clock methods for sample grabber.
mf: Detach sink stream on sample grabber shutdown.
mf: Maintain sample grabber sink state.
mfplat: Add sample grabber attributes to debug tracing helper.
mf: Implement ProcessSample() for unclocked mode.
mf: Partially implement Shutdown() for media session.
mf: Raise event on session close.
mf: Get presentation clock flags from current time source.
mf: Return presentation clock properties.
mf: Forward GetTime() calls to time source.
mf: Forward GetCorrelatedTime() to time source.
comctl32/trackbar: Do not consider window size when initializing fixed length thumb.
mf: Add rate support for presentation clock.
mf/tests: Add some tests for video processor MFT.
mf/tests: Add some more Video Processor tests.
mf: Implement clock-synchronized mode for ProcessSample() in sample grabber sink.
mf: Raise sample request events for sample grabber stream.
mf: Add support for MEStreamSinkMarker event for sample grabber.
mf: Implement stream flushing for sample grabber.
mfplat: Make sure async event delivery is triggered with EndGetEvent().
mfplat: Add MFRegisterLocalSchemeHandler().
Owen Rudge (2):
oledb32: Implement support for converting to DBTYPE_I1.
oledb32/tests: Add conversion tests to DBTYPE_I1.
Paul Gofman (8):
wined3d: Scale transformed position in compute_light().
ddraw: Support D3DVOP_LIGHT in d3d_vertex_buffer7_ProcessVertices().
wined3d: Fix specular alpha value in process_vertices_stride().
ddraw/tests: Test lighting with _ProcessVertices() for ddraw4.
ddraw/tests: Test lighting with _ProcessVertices() for ddraw7.
wined3d: Compute fog factor in process_vertices_strided().
ddraw/tests: Add test for fog calculation in _ProcessVertices for ddraw7.
ddraw/tests: Fix test failures in test_lighting() on some of WARP drivers for ddraw7.
Piotr Caban (6):
ntoskrnl.exe: Add IoDetachDevice implementation.
ntoskrnl.exe: Fix IoAttachDeviceToDeviceStack implementation.
services: Don't double release process in service_start.
msvcp: Add _Strxfrm implementation.
msvcp: Fix _Lockit::_Lockit_ctor and _Lockit::_Lockit_dtor implementation.
msvcp: Add _Init_locks class implementation.
Roberto Pungartnik (1):
po: Update Brazilian Portuguese translation.
Rémi Bernon (3):
xinput: Fix rumble amount value rounding.
commdlg: Allocate memory using VirtualAlloc instead of NtAllocateVirtualMemory.
kernel32/tests: Fix NtAllocateVirtualMemory tests results on w1064v1809.
Stefan Dösinger (1):
include: Remove backslashes from D3D12_COLOR_WRITE_ENABLE_ALL.
Sven Baars (14):
kernel32/tests: Open and close the right file handle (Coverity).
d3dx9: Release the full parameter name when a parameter is released (Valgrind).
d3dx9: Always free samplers (Valgrind).
shell32: Fix a use after free (Coverity).
ntdll/tests: Fix a string leak (Valgrind).
shell32: Fix an item identifier list leak (Valgrind).
shell32/tests: Fix a memory leak (Valgrind).
propsys/tests: Fix the PropVariantToBuffer tests.
propsys/tests: Fix some ok() messages.
user32: Fix some leaks on error path (Coverity).
msrle32: Fix a memory leak (Valgrind).
msvfw32: Fix copying of a BITMAPINFO structure (Valgrind).
mmdevapi/tests: Use PropVariantClear after calling IPropertyStore_GetValue (Valgrind).
ole32: Add VT_ARRAY support to PropVariant.
Tim Schumacher (3):
dbgstr: Initialize hex list using an explicit char array.
dinput: Check for wheel axes/buttons when finding joysticks.
dinput/linuxinput: Remap wheel axes to X, Y, and Z.
Zebediah Figura (87):
setupapi: Add a basic implementation of SetupDiInstallDevice().
setupapi: Copy the INF file to C:/windows/inf/ and record it in the driver key.
setupapi: Process the .HW subsection in SetupDiInstallDevice().
setupapi: Process the .Services subsection in SetupDiInstallDevice().
quartz/vmr9: Implement IVMRWindowlessControl::SetVideoClippingWindow().
strmbase/transform: Use BaseFilterImpl_Release().
qcap/avico: Use BaseFilterImpl_Release().
winegstreamer/gstdemux: Use BaseFilterImpl_Release().
wineqtdecoder/qtsplitter: Use BaseFilterImpl_Release().
setupapi/tests: Test calling SetupDiEnumDeviceInterfaces() with a NULL device.
setupapi/tests: Add some tests for SetupDiGetClassDevs().
setupapi: Treat DIGCF_ALLCLASSES as if a NULL device class was given.
setupapi/tests: Add some tests for DIGCF_DEVICEINTERFACE.
setupapi: Set the list device class to GUID_NULL when enumerating interfaces.
setupapi/tests: Add some tests for SetupDiGetDeviceInfoListDetail().
setupapi: Avoid adding duplicate devices in SetupDiGetClassDevs().
strmbase/renderer: Add a destructor callback.
quartz/dsoundrender: Use BaseFilterImpl_Release().
quartz/parser: Get rid of the "fnCleanup" member of ParserImpl.
quartz/parser: Pass a BaseFilterFuncTable to Parser_Create().
quartz/avisplit: Use BaseFilterImpl_Release().
quartz/mpegsplit: Use BaseFilterImpl_Release().
quartz/waveparser: Use BaseFilterImpl_Release().
quartz: Use strmbase filter methods directly.
qcap/avimux: Use BaseFilterImpl_Release().
qcap/avimux: Use strmbase filter methods directly.
widl: Use IsSimpleRef only for explicitly declared arrays.
widl: Also allocate top-level pointers to arrays as on-stack in -Oicf mode.
widl: Remove an unused variable.
widl: Write array pointers as FC_OP pointers if appropriate.
widl: Non-top-level conformant arrays are always [ref] by default.
include: Add newdev.h.
newdev: Correct definition of DiInstallDriver().
newdev: Implement UpdateDriverForPlugAndPlayDevices().
quartz/tests: Add more tests for aggregation.
qcap/audiorecord: Fix aggregation support.
qcap/tests: Add more tests for aggregation.
strmbase: Reimplement BaseFilterImpl_QueryInterface() using a callback.
quartz/filesource: Use BaseFilterImpl_QueryInterface().
winebus.sys: Use the winebus driver to create all devices.
winebus.sys: Move udev configuration values to the winebus service key.
winebus.sys: Avoid IoCreateDriver().
quartz/mpegsplit: Use BaseFilterImpl_QueryInterface().
qcap/avimux: Use BaseFilterImpl_QueryInterface().
winegstreamer/gstdemux: Use BaseFilterImpl_QueryInterface().
strmbase/renderer: Add a QueryInterface() callback.
quartz/dsoundrender: Use BaseFilterImpl_QueryInterface().
ntoskrnl.exe: Move PNP code to a separate file.
qcap/avico: Use BaseFilterImpl_QueryInterface().
strmbase: Support aggregation in the base filter.
quartz/videorenderer: Use strmbase filter aggregation support.
quartz/vmr9: Use strmbase filter aggregation support.
qcap/audiorecord: Use strmbase filter aggregation support.
ntoskrnl.exe: Fix handling of reference string in IoRegisterDeviceInterface().
winebus.sys: Make the device and instance IDs consistent.
winebus.sys: Just report the bus ID when enumerating compatible IDs.
qcap/smartteefilter: Use strmbase filter aggregation support.
qcap/vfwcapture: Use strmbase filter aggregation support.
qedit/nullrenderer: Use strmbase filter aggregation support.
qedit/samplegrabber: Use strmbase filter aggregation support.
evr: Return E_NOINTERFACE when aggregation is requested with an interface other than IUnknown.
evr: Use strmbase filter aggregation support.
ntoskrnl.exe: Free device IDs from pool.
winebus.sys: Allocate IRP return buffers from paged pool.
hidclass.sys: Allocate IRP return buffers from paged pool.
ntoskrnl.exe: Use SetupDiOpenDeviceInfo().
ntoskrnl.exe: Correctly handle instance IDs.
strmbase: Get rid of BaseRendererImpl_QueryInterface().
strmbase: Support aggregation in the base transform filter.
qedit/samplegrabber: Use BaseFilterImpl_FindPin().
qcap/avico: Use BaseFilterImpl_QueryFilterInfo().
qcap/avico: Use BaseFilterImpl_QueryVendorInfo().
hidclass.sys: Use PDRIVER_ADD_DEVICE.
hidclass.sys: Get rid of unused minidriver parameter to HID_DeleteDevice().
ntoskrnl.exe: Dispatch user IRPs to the top of the device stack.
ntoskrnl.exe: Send PnP IRPs to the top of the device stack.
ntoskrnl.exe: Implement automatically generated device names.
strmbase: Add a cached implementation of IDispatch and use it in IBasicVideo.
strmbase: Use the type info cache for IVideoWindow.
strmbase: Use the type info cache for IMediaPosition.
quartz/dsoundrender: Use the type info cache for IBasicAudio.
strmbase: Get rid of IBasicAudio implementation.
strmbase: Get rid of base IDispatch implementation.
winehid.inf: Add new INF file and copy it to the INF directory.
ntoskrnl.exe: Use INF files to locate function drivers.
wine.inf: Remove no longer used CriticalDeviceDatabase entries.
wine.inf: Remove registration for the winehid service.
Zhiyi Zhang (8):
gdi32/tests: Add D3DKMTCheckOcclusion tests.
gdi32: Implement D3DKMTOpenAdapterFromGdiDisplayName.
gdi32: Implement D3DKMTCloseAdapter.
gdi32: Implement D3DKMTCreateDevice.
gdi32: Implement D3DKMTDestroyDevice.
user32/tests: Test restore window messages.
winex11.drv: Activate window when restoring from iconic state.
winemac.drv: Activate window when restoring from iconic state.
Zixing Liu (1):
po: Update Simplified Chinese translation.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.9 is now available.
What's new in this release (see below for details):
- Initial support for installing Plug and Play drivers.
- Support for building 16-bit modules in PE format.
- A lot of code moved to the new KernelBase DLL.
- Various game controller fixes.
- Use higher performance system clocks if available.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.9.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.9.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.9 (total 24):
27185 Futuremark PC Mark 7 (.NET 4.0 app) fails to run with Wine-Mono (mscoree:get_runtime Unrecognized version L"v4.0.20926")
34764 .NET Framework 3.5 SP1 based WPF applications crash on direct access of MIL (Media Integration Layer) to internal bitmap struct/class impl (depends on exact layout)
36764 Rogue Squadron 3D 1.3: Unable to setup controller in-game
36981 Flexera InstallShield 20.x based installers crash in NdrProxyInitialize (Samsung Kies 3, Designspark 6.1, Exelis ENVI 5.x)
41657 CoolQ 5.x reports network error on startup due to msscript:ScriptControl_Eval stub
43738 "MegaTagmension Blanc + Neptune VS Zombies" - Character models don't render
46406 TreePad X Enterprise (single user) 12GB v7.17.0: Garbled Text When Creating or Editing a Node/Tree Name
46655 Adobe Photoshop CC 2015.5: Tabs show completely black
46682 TopoEdit crashes with unimplemented function mf.dll.MFCreateAudioRendererActivate
46849 Vietcong: taking handmap causes crash (ProcessVertices)
47044 64-bit MRAC Anti-Cheat (My.Com Warface) kernel service fails in driver entry point due to missing 'ntoskrnl.exe.{ExAcquireFastMutex,ExReleaseFastMutex}'
47085 Spellforce 3 has misplaced text in main menu
47178 Grand Prix Legends: Service papycpu2 doesn't load
47183 Grand Prix Legends: Only the first two axes are recognized
47185 `winetricks -q msxml3` hangs
47188 Gamepad input no longer works (regression)
47190 Custom protocol handler CF doesn't support aggregation
47209 Gamepad input no longer works again (regression)
47214 Oracle Java runtime 8.211 online installer crashes in WoW64
47219 "winetricks -q ie8" hangs
47222 World of Tanks 1.5.0 launcher 'WotLauncher.exe' (0.3.x) crashes with Wine-Staging 4.7
47226 Incorrect crash information displayed for unimplemented function stubs when 64-bit Wine builtins are cross-compiled in PE format (Mingw-w64, MS x64 calling convention)
47238 Osmos refuses to start with built-in msvcp90
47249 CM_Set_Class_Registry_Property should use PCVOID for buffer parameter
----------------------------------------------------------------
Changes since 4.8:
Akihiro Sagawa (10):
advapi32/tests: Add basic RegLoadMUIString tests.
advapi32: Support the base directory parameter in RegLoadMUIString.
advapi32: Improve parameter sanity checks in RegLoadMUIString.
advapi32: Improve load_string to return error code.
advapi32: Remove useless RegLoadMUIStringA implementation.
advapi32: Return required buffer size in RegLoadMUIString.
kernel32: Add traces to time zone functions.
advapi32/tests: Add RegLoadMUIString tests with REG_MUI_STRING_TRUNCATE flag.
advapi32: Factor out load_mui_string().
advapi32: Implement REG_MUI_STRING_TRUNCATE flag.
Alexandre Julliard (70):
include: Move inline assembly definitions to a new wine/asm.h header.
winecrt0: Store the appropriate longjmp() function in the exception frame.
winecrt0: Reimplement __wine_rtl_unwind() as a proper asm function.
winecrt0: Don't build unneeded code for Windows platforms.
configure: Rename WINE_CROSSTEST to WINE_CROSS_PE.
configure: Don't allow using config.h when cross-compiling.
dinput/tests: Remove duplicate const.
dinput8/tests: Remove duplicate const.
winebus.sys: Avoid ssize_t.
msvcp80: Fix the spec entries of the num_put_char/short/wchar functions.
msvcr: Fix the _NonReentrantPPLLock__Scoped_lock_ctor() spec entries.
msvcr: Fix the event_wait() spec entries.
vssapi: Fix the VSSAPI_CVssWriter_Initialize() spec entry.
include: Define fastcall assembly wrappers globally.
include: Define thiscall assembly wrappers globally.
riched20: Declare thiscall functions as __thiscall.
winebuild: Support Windows-style name mangling for fastcall functions.
include: Use the __fastcall attribute directly for the Windows build.
include: Use the __thiscall attribute directly for the Mingw build.
include: Pass function name directly to the __ASM_STDCALL macro.
winegcc: Use -static-libgcc for the Windows build.
msvcp90: Use the standard -mno-cygwin build flag.
msvcp100: Use the standard -mno-cygwin build flag.
msvcp110: Use the standard -mno-cygwin build flag.
msvcp120: Use the standard -mno-cygwin build flag.
msvcp140: Use the standard -mno-cygwin build flag.
vcruntime140: Use the standard -mno-cygwin build flag.
msvcp60: Use the standard -mno-cygwin build flag.
msvcp70: Use the standard -mno-cygwin build flag.
msvcp71: Use the standard -mno-cygwin build flag.
msvcp80: Use the standard -mno-cygwin build flag.
msvcirt: Use the standard -mno-cygwin build flag.
msvcrt20: Use the standard -mno-cygwin build flag.
msvcrt40: Use the standard -mno-cygwin build flag.
makefiles: Remove the check for msvcr* imports.
msvcrt: Update arguments for some forwarded functions.
cabarc: Remove duplicate defines.
cabinet/tests: Remove duplicate defines.
winebuild: Support relay debugging for PE builtin dlls.
makefiles: Don't depend on cross import library if not necessary.
makefiles: Use -fshort-wchar when building with msvcrt.
winebuild: Don't change %fs and %gs when calling 16-bit register functions.
winebuild: Store wine_ldt_copy pointer in the NE header at load time.
include: Don't allow using wine/library.h with msvcrt.
ntdll: Set LDR_WINE_INTERNAL flag also for PE builtins.
winebuild: Use cdecl calling convention for stub exceptions.
winebuild: Add 16-bit support for PE builds.
makefiles: Support cross-compilation of 16-bit libraries.
setupapi: Extract the 16-bit fake dll from the 32-bit PE one.
winedump: Print fake dll information also for NE files.
msvcrt: Add the static object files to all the msvcrt import libraries.
user.exe: Avoid using libwine functions.
toolhelp: Avoid using libwine functions.
rundll.exe: Build with msvcrt.
winhelp.exe: Build with msvcrt.
winoldap.mod: Build with msvcrt.
make_unicode: Add a wctype table in kernel32 for GetStringTypeW().
make_unicode: Store the C2_* values directly in the kernel32 wctype table.
make_unicode: Use a two-level table for the kernel32 wctype table.
make_unicode: Generate a separate table for BiDi direction type in usp10.
make_unicode: Store the full BiDi direction type in the table.
make_unicode: Avoid including wine/unicode.h in generated files.
dwrite: Use the same BiDi direction table as usp10.
gdi32: Use the same BiDi direction table as usp10.
make_unicode: Remove duplicate DECLSPEC_HIDDEN.
ntdll: Don't pass DLL_WINE_PREATTACH to the TLS callbacks.
setupapi/tests: Avoid size_t in traces.
quartz/tests: Add braces to avoid a clang warning.
ucrtbase: Move the vsnprintf() wrapper function to the ucrtbase import library.
makefiles: Add install dependency for PE builtins.
Alistair Leslie-Hughes (6):
dinput: Allow enumeration of joysticks with DirectX 3.
dinput: Handle setting DIPROP_CALIBRATIONMODE mode in generic implementation.
wineqtdecoder: Fix compile on MacOS.
dinput: Improve returned flags in Mouse GetObjectInfo.
dinput: Support DIDEVICEINSTANCE_DX3 for keyboard GetDeviceInfo.
include: Add helicopter Direct Input defines.
Andreas Maier (2):
jscript: Implement Enumerator object.
jscript/tests: Add more Enumerator tests.
Andrew Eikum (4):
winebus.sys: Fix report length calculation.
winebus.sys: Add missing padding between hatswitch and constant.
hid: Fix usage value mask.
msvcrt: Implement fma and fmaf.
André Hentschel (1):
include: Fix ASM_CFI definition.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Dmitry Timoshkov (11):
windowscodecs: Improve compatibility of IMILBitmap interface.
windowscodecs: Add support for IMILBitmapScaler interface.
windowscodecs/tests: Add some tests for IMILBitmap and IMILBitmapScaler interfaces.
windowscodecs: Correct IWICBitmapScaler::CopyPixels() error for not initialized case.
windowscodecs: Simplify some IMILBitmapScaler forwarders.
urlmon: Add support for PARSE_UNESCAPE to CoInternetParseUrl.
urlmon: Add ShouldShowIntranetWarningSecband stub.
urlmon: Add GetIUriPriv stub.
urlmon: Add CoInternetGetBrowserProfile stub.
urlmon/tests: Add a test for ProtocolCF_CreateInstance not supporting aggregation.
urlmon: If ProtocolCF_CreateInstance doesn't support aggregation retry without it.
Ethan Lee (1):
xaudio2: Use new features from FAudio 19.06 (but keep compatibility for <=19.05).
Fabian Maurer (2):
gdi32: CreatePolyPolygonRgn() returns an empty region when the area is empty.
setupapi: Correct function parameter for CM_Set_Class_Registry_PropertyA/W.
Gijs Vermeulen (1):
crypt32/tests: Fix some memory leaks (Valgrind).
Hans Leidekker (1):
ntdll: Fix breakpoint exception address on 64-bit Linux.
Henri Verbeet (35):
wined3d: Pass a wined3d_context_gl structure to context_update_tex_unit_map().
wined3d: Pass a wined3d_context_gl structure to draw_primitive_immediate_mode().
wined3d: Move the texture unit map from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "blit_vbo" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the occlusion query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the fence fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the timestamp query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the stream-output statistics query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the pipeline statistics query fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_apply_clear_state().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_state_blit().
wined3d: Pass a wined3d_context_gl structure to context_check_fbo_status().
wined3d: Pass a wined3d_context_gl structure to context_set_draw_buffer().
wined3d: Pass a wined3d_context_gl structure to context_texture_update().
wined3d: Pass a wined3d_context_gl structure to context_bind_fbo().
wined3d: Pass a wined3d_context_gl structure to context_destroy_fbo().
wined3d: Pass a wined3d_context_gl structure to context_reuse_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_destroy_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_find_fbo_entry().
wined3d: Use context_acquire() in wined3d_swapchain_cs_init().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_entry().
wined3d: Pass a wined3d_context_gl structure to context_apply_fbo_state().
wined3d: Pass a wined3d_context_gl structure to context_queue_fbo_entry_destruction().
wined3d: Pass a wined3d_context_gl structure to context_apply_compute_state().
wined3d: Use wined3d_texture_get_level_box() in wined3d_device_update_texture().
wined3d: Move the FBO fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_get_offscreen_gl_buffer().
wined3d: Pass a wined3d_context_gl structure to wined3d_context_gl_restore_pixel_format().
wined3d: Pass a wined3d_context_gl structure to context_set_pixel_format().
wined3d: Use wined3d_texture_get_level_box() in texture2d_load_texture().
wined3d: Pass a wined3d_context_gl structure to context_set_gl_context().
wined3d: Pass a wined3d_context_gl structure to context_update_window().
wined3d: Pass a wined3d_context_gl structure to context_enter().
wined3d: Pass a wined3d_context_gl structure to context_get_rt_size().
wined3d: Use wined3d_texture_get_level_box() in wined3d_texture_create().
Huw D. M. Davies (11):
configure: Don't define HAVE_CLOCK_GETTIME on macOS.
ntdll: Implement RtlGetSystemTimePrecise().
kernel32: Implement GetSystemTimePreciseAsFileTime() using RtlGetSystemTimePrecise().
ntdll: Use CLOCK_REALTIME_COARSE for NtQuerySystemTime() if it has sufficient resolution.
kernel32: Replace macros with inline helpers.
kernel32: Simplify TIME_CompTimeZoneID() by passing time as LONGLONG.
kernel32: Simplify is_not_current().
kernel32: Forward GetSystemTimeAsFileTime() to NtQuerySystemTime().
ntdll: Mark monotonic_counter() as inline.
ntdll: Extend NtGetTickCount() to return 64-bits. Forward kernel32 functions to it.
explorer: Set the default driver to mac,x11 in all cases.
Isira Seneviratne (1):
po: Update Sinhala translation.
Jacek Caban (12):
ntoskrnl.exe: Implement ExAcquireFastMutex and ExReleaseFastMutex.
ntoskrnl.exe: Implement PsGetProcessInheritedFromUniqueProcessId.
ntddk.h: Add a few more declarations.
urlmon/tests: Make ParseUrl call tests more strict.
jscript: Allow calling eval function from external code.
ntoskrnl.exe: Implement PsGetThreadProcessId.
mshtml: Fix window size in IOleDocumentView::SetRect implementation.
mshtml: Return rect relative to parent window in IOleDocumentView::GetRect.
mshtml: Implement IOleInPlaceObjectWindowless::SetObjectRects.
ntdll: Introduce wait_async helper.
server: Store pending flag in async object.
server: Always block overlapped device requests until driver dispatches them.
Jactry Zeng (1):
msscript: Partially implement IScriptControl::Eval().
Jimi Huotari (1):
winegstreamer: Fix spelling of 'initialized' in a TRACE().
Józef Kucia (1):
setupapi: Avoid debugstr buffer overflow.
Lauri Kenttä (1):
po: Update Finnish translation.
Marcus Meissner (1):
setupapi: Fix size to MultiByteToWideChar().
Martin Storsjo (2):
msvcrt: Hook up _setjmpex for arm64 as well.
ntdll: Avoid truncating a nonzero exit code to zero in unix.
Matteo Bruni (15):
wined3d: Avoid a GCC 8 warning.
d3d9: Always allow read and write map access to non-DEFAULT buffers.
d3d8: Always allow read and write map access to non-DEFAULT buffers.
wined3d: Pass a wined3d_context_gl structure to context_load_numbered_arrays().
wined3d: Pass a wined3d_context_gl structure to context_update_stream_sources().
wined3d: Avoid some redundant glVertexAttrib4f() calls.
wined3d: Add ARB_TEXTURE_MIRROR_CLAMP_TO_EDGE to core_extensions[].
winecfg: Don't mark glu32 as builtin-only.
wined3d: Always report support for ZBIAS and MIPMAPLODBIAS raster caps in the Vulkan backend.
wined3d: Report WINED3DPRASTERCAPS_MIPMAPLODBIAS only when supported.
wined3d: Assign 9_x feature levels more accurately.
d3d8: Check the WINED3DPRASTERCAPS_DEPTHBIAS cap bit to report D3DPRASTERCAPS_ZBIAS.
ddraw: Check the WINED3DPRASTERCAPS_DEPTHBIAS cap bit to report D3DPRASTERCAPS_ZBIAS.
wined3d: Get rid of WINED3DPRASTERCAPS_ZBIAS.
wined3d: Report WINED3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS when possible.
Michael Stefaniuc (3):
mfplat: Print the debug strings and not the pointers.
msctf: Remove useless cast to self.
kernel32/tests: Use the ARRAY_SIZE() macro.
Nikolay Sivov (50):
mf: Add stubs to create audio renderer sink.
mf: Add support for async commands for media session.
dwrite/layout: Use a helper to update layout metrics.
dwrite/layout: Use array allocation helper for typography features.
dwrite/font: Use existing helper for CreateFontFace().
dwrite/layout: Fix layout metrics width for whitespace-only lines.
dwrite/layout: Use interface pointer in text format method traces.
dwrite: Improve returned design glyph metrics.
dwrite: Use array allocation helper to manage family entries.
dwrite: Use array allocation helper to manage collection entries.
dwrite: Use array allocation helper for in-memory loader.
dwrite/analyzer: Use array allocation helper for fallback builder.
dwrite: Use array allocation helper for strings object.
dwrite/layout: Use array allocation helper for line metrics.
dwrite/tests: Fix a typo in test message.
kernelbase: Duplicate some path handling functions from shlwapi.
mf/session: Add stubs for playback rate API.
mf: Create presentation clock on session creation.
xaudio2: Fix 32-bit build.
kernelbase: Duplicate more path API from shlwapi.
kernelbase: Add QISearch().
kernelbase: Duplicate some of strings functions from shlwapi.
mfplat: Handle null destination for GetItem().
mf: Slightly improve topoloader Load().
kernelbase: Use a helper to get character C1 type.
kernelbase: Add string handling functions from user32.
kernelbase: Add LoadString() exports.
kernelbase: Add some more string handling functions from shlwapi.
mfplat: Return properties for system time source.
mfplat: Create system clock instance per system time source.
kernelbase: Add remaining string handling functions from shlwapi.
mf: Add sample grabber sink stub.
mf: Add IMFMediaTypeHandler stub for grabber stream.
mf: Add clock state sink stub for grabber.
mf: Add events support for grabber stream.
mf: Add events support for grabber sink.
comctl32/tooltips: Add a helper to free tool text.
comctl32/tooltips: Add a helper to set tool text.
comctl32/tooltips: Remove redundant condition.
kernelbase: Add most of path API from shlwapi.
mferror: Add some more error messages.
kernelbase: Add some URL API functions from shlwapi.
kernelbase: Remove helpers that are no longer necessary.
kernelbase: Add more URL API functions from shlwapi.
kernelbase: Add remaining path functions.
kernelbase: Add GetAcceptLanguages().
kernelbase: Add remaining URL functions.
kernelbase: Add SHLoadIndirectString().
kernelbase: Add some registry helpers from shlwapi.
mfplat: Add timestamp support for system time source.
Paul Gofman (13):
ddraw/tests: Test lighting with ambient light and material in ddraw1.
ddraw: Fix setting current viewport for ddraw1.
ddraw: Enable lighting only if material is set in d3d_execute_buffer_execute().
wined3d: Move validate_material_colour_source() to wined3d_private.h.
wined3d: Factor out compute_normal_matrix() function.
wined3d: Factor out wined3d_get_material_colour_source() function.
wined3d: Use the correct colour sources in process_vertices_strided().
wined3d: Move multiply_vector_matrix() to wined3d_private.h.
wined3d: Implement lighting with directional lights in process_vertices_strided().
ddraw/tests: Backport test_specular_lighting() for ddraw1.
wined3d: Implement point lights in process_vertices_strided().
wined3d: Implement spot lights in process_vertices_strided().
wined3d: Implement parallel point lights in process_vertices_strided().
Philip Rebohle (1):
d3dcompiler: Accept a stat chunk size of 28 for reflection.
Piotr Caban (13):
hid: Change format of preparsed data.
hidclass.sys: Remove no longer used features list.
hidclass.sys: Support descriptors with over 10 individual usages in feature.
hid: Set button values in HidP_SetUsages function.
hid: Fix error handling in HidP_SetUsages.
hidclass.sys: Limit written data to the actual report size.
winebus.sys: Fix typo in endpoint name.
winebus.sys: Correctly set HID device input number in device endpoint path.
winebus.sys: Restore IG_ substring in gamepads endpoint path.
kernel32: Add more CompareStringW tests.
libwine: Add helper function to compare character weights.
libwine: Decompose characters before comparing in wine_compare_string.
libwine: Ignore 0 weights as described in Unicode collation algorithm.
Roman Stingler (3):
include: Added some process creation Flags.
kernel32: Added some Numa stubs.
kernel32: Add stub WerUnregisterRuntimeExceptionModule.
Sven Baars (1):
comctl32: Always free the tooltip text before setting it (Valgrind).
Tim Schumacher (3):
services: Allow reading binary registry values as DWORDs.
joy.cpl: Check if effect is allocated before releasing it.
joy.cpl: Fix high CPU load in FF test window.
Zebediah Figura (90):
quartz: Make Parser_OutputPin_BreakConnect() a local helper.
winegstreamer: Make GSTOutPin_BreakConnect() a local helper.
wineqtdecoder: Make QTOutPin_BreakConnect() a local helper.
strmbase: Get rid of the "pfnBreakConnect" field from BaseOutputPinFuncTable.
setupapi: Handle an empty string for the source file in SetupQueueCopySection().
strmbase: Remove function pointers from the IEnumPinsImpl structure.
wineqtdecoder: Fix implementation of QT_GetPin().
strmbase: Determine the pin count using the GetPin() callback.
strmbase: Get rid of the "pfnGetPinCount" callback.
winegstreamer: Use CONTAINING_RECORD instead of casting.
strmbase: Use heap_alloc_zero() in enum_pins_create().
strmbase: Don't store the media type list locally.
strmbase: Get rid of the ENUMMEDIADETAILS structure.
strmbase: Return void from BaseFilter_Init().
strmbase: Get rid of the "filterVtbl" parameter to TransformFilter_Construct().
strmbase: Factor out strmbase_renderer_cleanup().
quartz/videorenderer: Use strmbase_renderer_cleanup().
quartz/vmr9: Use strmbase_renderer_cleanup().
quartz/dsoundrender: Use strmbase_renderer_cleanup().
qedit/nullrenderer: Use strmbase_renderer_cleanup().
strmbase: Get rid of BaseRendererImpl_Release().
setupapi: Implement SetupDiGetDeviceInstallParams().
setupapi: Implement SetupDiSetDeviceInstallParams().
setupapi/tests: Add some basic tests for SetupDi{Get, Set}DeviceInstallParams().
setupapi: Implement SetupDiGetActualSectionToInstallA().
setupapi: Define the correct platform extensions for each architecture.
setupapi/tests: Add tests for SetupDiGetActualSectionToInstall().
setupapi: Return the section name in SetupDiGetActualSectionToInstall() even if it doesn't exist.
quartz: Use CONTAINING_RECORD instead of casting.
qedit/samplegrabber: Correctly delegate IUnknown methods on the IMemInputPin interface.
amstream: Reimplement IMediaStreamFilter::EnumPins().
amstream: Reimplement IBaseFilter methods in the media stream filter.
setupapi/tests: Add some tests for SetupInstallFile().
setupapi: Retrieve the default destination path in SetupInstallFile().
setupapi: Clear the Win32 error if no copy was necessary.
setupapi: Don't fail a queued copy if no copy was necessary.
quartz/tests: Add some tests for IMediaSeeking on the filter graph.
qcap/tests: Clean up test_AviMux_QueryInterface().
qcap/tests: Add some tests for IMediaSeeking on the AVI mux filter.
strmbase/transform: Don't expose IMediaSeeking from the filter.
strmbase/transform: Don't expose IMediaPosition from the filter.
strmbase/transform: Don't expose IQualityControl from the filter.
quartz/filtergraph: Don't require IAMFilterMiscFlags when performing seek operations.
mshtml: Fix a copy-paste error.
mshtml: Avoid passing invalid memory to DispCallFunc().
msxml3: Load the version 1 typelib before trying to access it.
setupapi: Add an initial implementation of SetupDiBuildDriverInfoList().
setupapi: Check for compatible platforms in SetupDiBuildDriverInfoList().
setupapi: Implement directory search in SetupDiBuildDriverInfoList().
setupapi: Implement SetupDiEnumDriverInfo().
setupapi/tests: Add tests for building and enumerating driver lists.
setupapi: Add a semi-stub implementation of SetupDiSelectBestCompatDrv().
widl: Fix proxy vtbl generation in -Oi mode.
rpcrt4: Fail with CO_E_OBJNOTCONNECTED when trying to call methods on a disconnected proxy.
rpcrt4: Factor out get_handle_desc_size().
rpcrt4: Handle exceptions in a larger portion of NdrClientCall().
rpcrt4: Use a FINALLY block to clean up in do_ndr_client_call().
quartz/tests: Add some tests for IFilterGraph::SetDefaultSyncSource().
quartz/filtergraph: Don't require IAMFilterMiscFlags in IFilterGraph::SetDefaultSyncSource().
quartz/videorenderer: Don't expose IAMFilterMiscFlags.
quartz/dsoundrender: Don't expose IAMFilterMiscFlags.
qedit/nullrenderer: Don't expose IAMFilterMiscFlags.
strmbase: Rename BaseFilter_Destroy() to strmbase_filter_cleanup().
strmbase: Return void from strmbase_filter_cleanup().
evr: Use strmbase_filter_cleanup().
strmbase/transform: Use BaseFilter_Destroy().
qcap/avimux: Use BaseFilter_Destroy().
setupapi: Implement SetupDiRegisterCoDeviceInstallers().
setupapi: Add a basic implementation of SetupDiCallClassInstaller().
setupapi: Implement custom class installers in SetupDiCallClassInstaller().
setupapi: Call DIF_DESTROYPRIVATEDATA when deleting a device.
setupapi: Implement class co-installers in SetupDiCallClassInstaller().
setupapi: Implement device-specific co-installers in SetupDiCallClassInstaller().
qcap/smartteefilter: Use strmbase_filter_cleanup().
qcap/avico: Use strmbase_filter_cleanup().
qcap/audiorecord: Use strmbase_filter_cleanup().
qedit/samplegrabber: Use strmbase_filter_cleanup().
quartz/parser: Use strmbase_filter_cleanup().
setupapi: Implement SetupDiInstallDriverFiles().
setupapi: Process interface sections in SetupDiInstallDriverFiles().
setupapi: Implement SetupDiInstallDeviceInterfaces().
strmbase: Use an unsigned int for the GetPin() callback.
strmbase: Rename pfnGetPin to filter_get_pin.
strmbase: Remove unnecessary calling convention from the filter_get_pin() callback.
strmbase: Reimplement BaseFilterImpl_Release() using a destructor callback.
quartz/filesource: Use BaseFilterImpl_Release().
setupapi/tests: Clean up and expand tests for SetupCopyOEMInf().
setupapi: Check all INF files in SetupCopyOEMInf().
setupapi: Always fill output parameters in SetupCopyOEMInfA().
setupapi: Fix error handling in SetupInstallServicesFromInfSection().
Zhiyi Zhang (7):
gdi32/tests: Add D3DKMTOpenAdapterFromGdiDisplayName tests.
gdi32/tests: Add D3DKMTOpenAdapterFromHdc tests.
gdi32/tests: Add D3DKMTCloseAdapter tests.
gdi32/tests: Add D3DKMTCreateDevice tests.
gdi32/tests: Add D3DKMTDestroyDevice tests.
gdi32/tests: Add D3DKMTCheckVidPnExclusiveOwnership tests.
gdi32/tests: Add D3DKMTSetVidPnSourceOwner tests.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine maintenance release 4.0.1 is now available.
What's new in this release (see below for details):
- Various bug fixes
- Sinhala and Tamil translation updates
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.0/wine-4.0.1.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.0/wine-4.0.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 4.0.1 (total 44):
8226 DlgDirListComboBox does not fail properly on bad path spec argument
23863 The Bard's Tale (2005): unplayable due to almost completely black screen
26653 Multiple VB6 applications need oleaut32 VarRound to support VT_DECIMAL
28140 Theatre of War 3: Korea demo 1.2.0 crashes on startup (hook engine can't cope with GOT/PIC register load code at API entry, needs DECLSPEC_HOTPATCH for kernel32.SizeofResource and kernel32.FindClose)
31954 Second Sight hangs with a black screen after the intro videos
33456 D3DXMatrixTransformation: Broken calculation when scalingrotation and scaling is used
35516 Microworlds EX hangs when clicking toolbar button
37705 Heroes of Might and Magic VI Shades of Darkness Textures Fail to Display in Most Campaign Maps
38138 Avencast: Rise of the Mage: invisible doors
38558 cmd.exe bundled with Windows XP messed up when using FOR /F
39663 GOG Galaxy client 1.x hangs or reports 'Something went wrong during DeelevateStrategy' error in Win7 mode (GOG Galaxy service needs wtsapi32.WTSQueryUserToken implementation)
39890 Orcish Inn fails to start with exception System.NotImplementedException
40441 Chicken tournament crashes when loading texture
44300 Windows Media Player 7.1 fails to play media due to unimplemented function wmvcore.dll.WMCheckURLExtension
44469 Multiple apps using Windows 10 v1507+ UCRT crash due to multiple missing api-ms-win-crt-private-l1-1-0.dll._o__xxx stubs/forwards (Win10 DISM pkgmgr.exe, MS DirectX Shader Compiler)
45326 Multiple 64-bit kernel drivers crash on unimplemented function ntoskrnl.exe.__C_specific_handler (NoxPlayer 6.x, MTA:SA 1.5.x)
45473 Rogue Squadron 3D crashes on startup
45631 League of Legends client crashes when joining a lobby with other players
45632 Garena client v2.0.x crashes on startup ('ntdll.NtQueryVirtualMemory' needs to validate 'MemoryInformationLength' before writing to buffer)
46127 aria2 1.34 fails to connect, reports 'WinTLS: Channel setup failed. Schannel provider did not fulfill requested flags. Excepted: 33180 Actual: 33052'
46298 Middle-earth: Shadow of War (steam appid 356190) crashes on launch
46300 Yousician: unimplemented function mfplat.dll.MFGetSystemTime
46303 Warcraft 3: Reign of Chaos (Czech language) can't be installed from CD
46318 vbscript doesn't parse if identifier is also keyword token
46319 32-bit IL-only executable launched as 32-bit subprocess on Wine and 64-bit subprocess on Windows
46387 ReactOS/Windows XP TASKMGR: Column headers don't scroll when scrolling horizontally (multiple listview or header control)
46442 FormatCurrency(9) returns .9.00 (period in front)
46465 Visual Studio 2015 crashes on unimplemented function msvcp140.dll._Equivalent
46481 strftime has a buffer overflow
46482 Gas Guzzlers Combat Carnage crashes when changing screen resolution
46485 PBM_STEPIT crashes with division by zero when MinVal == MaxVal == 0
46493 Functions ilogb* are not implemented
46494 64bit WinMerge crash after clicking "About WinMerge"
46499 Multiple games crash in GetRawInputData when exiting(House Party, Murderous Pursuits, ICEY)
46520 Kindred Spirits on the Roof crashes
46536 Empire Earth (GOG version) main menu rendering is broken
46569 ToDoList 7.1 : fails to launch after WINE upgrade to 4.0 version
46581 HeidiSQL generates OLE error when executing custom queries against MSSQL server.
46583 LINE latest version doesn't work
46678 Width of latin characters is wrong with some fonts.
46691 comctl32/tests/propsheet.c shows uninitalized memory use
46708 Photoline crashed right after start, no problem with wine 3.0.4
46729 Wine directx not detecting Intel HD Graphics 620 (Rev 02) chipset
46907 msi crashes in RemoveFiles action for a broken msi
----------------------------------------------------------------
Changes since 4.0:
Alexandre Julliard (2):
server: Report a 64-bit CPU for IL-only binaries.
dinput: Add error check to silence a compiler warning.
Alistair Leslie-Hughes (4):
dsound: IDirectSoundNotify is only available when DSBCAPS_CTRLPOSITIONNOTIFY is specified.
mfplat: Implement MFGetSystemTime.
oleaut32: Correctly get the Currency separator in VarFormatCurrency.
oleaut32: Support VT_DECIMAL in VarRound.
Andrew Eikum (1):
winhttp: Don't crash setting up secure proxy.
Brendan McGrath (2):
vbscript: Allow more keywords to be used as identifiers.
vbscript: Allow most keywords to be used as 'dot' identifiers.
David Adam (2):
ddraw/tests: Add tests for the "dwMipMapCount" field of texture sub-levels.
ddraw: Fix the "dwMipMapCount" field of texture sub-levels.
Dmitry Timoshkov (2):
windowscodecs: Implement IWICPalette::InitializeFromBitmap.
wpcap: Fix compilation with recent pcap/pcap.h versions.
Fabian Maurer (2):
api-ms-win-crt-private-l1-1-0: Update to 10.0.17134.12 (WinBuild.160101.0800).
ucrtbase: Forward a few functions for dxil.dll and pkgmgr.exe.
Gabriel Ivăncescu (1):
libport: Handle partially overlapping buffers.
Gijs Vermeulen (3):
msvcp140: Export _Equivalent and port tests.
ntdll: Validate len in NtQueryVirtualMemory.
kernel32: Add DECLSPEC_HOTPATCH to SizeofResource().
Hans Leidekker (3):
secur32: Return ISC_RET_USED_SUPPLIED_CREDS for schannel contexts if the feature was requested.
mscms: Add a partial implementation of WcsOpenColorProfileA/W.
msi: Avoid a crash in RemoveFiles if the component directory is invalid.
Isira Seneviratne (10):
po: Update Sinhala translation.
po: Update Sinhala translation.
po: Update Sinhala translation.
po: Add Tamil translation.
po: Update Tamil translation.
po: Update Tamil translation.
kernel32: Add the Sinhala NLS file.
kernel32: Fix LOCALE_SSCRIPTS value for Sinhala.
kernel32/nls: Fix some values in Sinhala NLS file.
kernel32/nls: Change Sinhala sublang identifier to SUBLANG_SINHALESE_SRI_LANKA.
Jacek Caban (1):
ntoskrnl.exe: Add __C_specific_handler entry.
Józef Kucia (3):
ddraw: Pass correct box when mapping system memory vertex buffers.
d3d9: Validate surface parameter in d3d9_device_ColorFill().
wined3d: Add GPU information for Intel HD Graphics 620.
Ken Thomases (1):
loader: On Mac, move the top-down allocations area down to avoid regions reserved by the system.
Mark Jansen (1):
msi: Do not leak rootkey.
Matteo Bruni (3):
d3dx9: Improve D3DXMatrixTransformation() implementation.
d3dx9: Improve D3DXMatrixTransformation2D().
d3dx9/tests: Avoid some 64-bit test failures.
Michael Stefaniuc (1):
tools: Get the ANNOUNCE bug list from the stable-notes git notes.
Nikolay Sivov (9):
api-ms-win-core-libraryloader-l1-2-1: Add missing FindResourceW() forward.
comctl32/progress: Handle min == max case in PBM_STEPIT.
user32/dialog: Fix setting negative dialog item ids.
d3d11: Implement d3d11_device_GetImmediateContext1().
comctl32/listview: Take care of scrolling offset when repositioning header.
comctl32/propsheet: Avoid posting uninitialized data (Valgrind).
comctl32/toolbar: Send BN_CLICKED for button that was pressed, not released.
usp10: Use single path for all fonts in ScriptGetCMap().
ucrtbase: Add ilogb* functions.
Paul Gofman (8):
wined3d: Use lower 8 bits only from _ALPHAREF state.
wined3d: Return 1e10f for MaxVertexW from wined3d_get_device_caps().
wined3d: Only use the LSB of the _SAMP_SRGB_TEXTURE state value.
kernel32/tests: Add test for overlapped file read.
ntdll/tests: Add more tests for overlapped file read.
ntdll: Return STATUS_PENDING from NtReadFile() for async read in case of no buffering.
kernel32: Add DECLSPEC_HOTPATCH to FindClose().
user32: Select more appropriate stretch mode for colored images interpolation.
Piotr Caban (4):
msvcrt: Optimize tolower function when locale was never changed.
msvcrt: Optimize toupper function when locale was never changed.
msvcp140: Don't forward __ExceptionPtrCreate to msvcr120.
msvcrt: Fix buffer overflow in _get_tzname.
Sebastian Lackner (1):
wtsapi32: Improve WTSQueryUserToken stub.
Sveinar Søpler (1):
wined3d: Add GPU information for the NVIDIA RTX series.
Sven Baars (14):
windowscodecs: Fix a memory leak (Valgrind).
gdiplus: Fix a memory leak on error path (Valgrind).
wsdapi: Fix some memory leaks (Valgrind).
strmbase: Fix some memory leaks (Valgrind).
ole32: Fix some memory leaks (Valgrind).
mstask: Fix some memory leaks on error path (Valgrind).
mstask: Move memory allocation to avoid a memory leak (Valgrind).
taskschd: Fix some memory leaks (Valgrind).
dinput: Free the device after a callback (Valgrind).
riched20: Fix IRichEditOle COM aggregation (Valgrind).
ws2_32: Use heap_realloc instead of HeapReAlloc to avoid an invalid realloc (Valgrind).
windowscodecs: Add missing source_bpp initialization (Valgrind).
setupapi: Add a missing return statement (Coverity).
dsound: Add missing SetEventHandle error handling (Coverity).
Vijay Kiran Kamuju (2):
user32: Add DlgDirList wildcard checks.
wmvcore: Add stub for WMCheckURlExtension.
Zebediah Figura (5):
comsvcs/tests: Add tests for implicit MTA creation in RegisterDispenser().
comsvcs: Create an implicit MTA thread in RegisterDispenser().
msvcr120: Add nexttoward implementation.
hid: Handle overlapped file handles.
ntdll: Avoid crashing while tracing parameters to NtCreateNamedPipeFile().
Zhiyi Zhang (5):
msacm32: Reference count local drivers.
user32: Check for null handle in GetRawInputData().
kernel32: Add DECLSPEC_HOTPATCH to VirtualAllocEx().
d3d8: Fix building on Mac.
user32: Fix a memory leak.
--
Michael Stefaniuc
mstefani(a)winehq.org
The Wine development release 4.8 is now available.
What's new in this release (see below for details):
- Support building most programs in PE format.
- Unicode data updated to Unicode 12.0.
- Support for MSI patch files.
- Default to non-PIC builds on i386.
- Joystick support improvements.
- Asturian locale.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.8.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.8.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.8 (total 38):
12332 Microsoft Windows Server 2003 DDK SP1 installer crashes ('setupapi.SetupCloseFileQueue' should do proper handle validation before accessing members)
14695 Lifeforce demo misses codecs (msvideo1 needs to support 24 bpp output)
28196 Test Drive Unlimited: Water is always rendered on top of everything.
28254 Multiple kernel drivers crash during load/relocation (relocation entry crosses page boundary)(PMP Exam Version 7 CrypKey, Age of Wushu SDProtect DRM, StarForce v3)
29460 Multiple kernel drivers crash in entry due to ntoskrnl.exe IoGetCurrentProcess() being a stub (Ruijie Supplicant Su1xDriver.sys, nProtect GameGuard/Tachyon Kernel Control Driver)
31101 ScoobyRom v0.6.x-0.8.x (.NET 4.0 app) fails to start with Wine-Mono
31350 Multiple .NET 3.x WPF applications crash in Vista/Win7 mode due to dwmapi.DwmGetTransportAttributes stub returning E_NOTIMPL (T-Online Mediencenter Assistent, Valil.Chess, Zwift 1.0)
34372 Multiple applications need AllocateAndGetTcpExTableFromStack (cross compiled dbus, spamMonitor)
37359 planetside 2 no mouseclicks registered
37540 Multiple games and applications wrapped with Enigma v4 and GG DRM schemes crash on startup (incompatible with use of position independent code (PIC) in Wine dlls)
38423 Python 3.5.x exe installer fails with Access denied error
39614 Wine initialises a Critical Section for Mutexes by NULL instead of (void*)-1
42420 MidiIllustrator Virtuoso 3 crashes when using any File open dialog
44850 Microsoft Skype 8.x crashes on unimplemented function iphlpapi.dll.GetBestRoute2
45155 OpenGL Window Z order in Truespace
45213 Multiple applications using Microsoft Detours library crash on startup after compiling Wine with GCC 8.x+ and -O2 (GOT/PIC code emitted at Win32 API entries)(Microsoft Visual Studio 201x, Visual Assist plugin)
45757 Visual Studio 2017 Installer - "The installer manifest failed signature validation"
45765 Universe Sandbox 2 unimplemented function USER32.dll.GetPointerType
45947 Native Access crashes on unimplemented function virtdisk.dll.OpenVirtualDisk
46861 TopoEdit crashes with unimplemented function mf.dll.MFEnumDeviceSources
46905 Multiple eventlog monitor applications go haywire (endless console spam, live-loop CPU) due to advapi32.ReadEventLogA/W returning lasterror ERROR_CALL_NOT_IMPLEMENTED
46989 Grand Prix Legends: Wheel (Wheel, Gas, Brake) axes inputs aren't recognized
46993 ntoskrnl.exe tests don't compile when using -O0
47016 MS Office 365 installer needs mfplay.dll.MFPCreateMediaPlayer
47023 Warframe in-game screenshot fails if screenshot directory already exists
47027 Wine built with GCC 8.x+ and -O2 causes apps and games using madCodeHook/madExcept 3.x/4.x to crash (hook engine can't cope with GOT/ PIC code emitted within 15-byte range at Win32 API entries)(EA Origin, HeidiSQL 10.x)
47032 valgrind shows uninitialized read in writev from call_req_handler
47082 NI System Web Server crashes on unimplemented function authz.dll.AuthzFreeResourceManager
47096 World of Warships 0.8.3.x client (DirectX 11) crashes when post-battle results screen is about to be displayed
47097 Wine built with GCC 8.x+ and -O2 causes Steam games using In-Game Overlay 'gameoverlayrenderer.dll' to crash (hook engine can't cope with GOT/PIC code emitted at Win32 API entries)
47107 Windows XP DDK installer fails to copy any files
47122 Star Citizen stopped working on commit 32d7838da73dd9bc3ee999d73a310da7adfb27dd
47123 Starcitizen - joystick not recognized
47129 Rendering glitch in Caste Siege/Ballerburg (invalid vertex count in IDirect3DDevice3::DrawIndexedPrimitiveVB)
47131 Esportal client 1.0 (CS:GO anti-cheat) fails to start, reporting 'The procedure entry point InitiateShutdownW could not be located in the dynamic link library ADVAPI32.dll'
47138 Microsoft .NET Framework 2.x installer fails ('RegSvcs.exe' bootstrapper needs unicode casing tables, 'l_intl.nls' no longer installed in WINEPREFIX)
47142 Esportal client 1.0 (CS:GO anti-cheat) fails to start, reporting 'The procedure entry point NdrServerCallAll could not be located in the dynamic link library RPCRT4.dll'
47145 Esportal client 1.0 (CS:GO anti-cheat) fails to start, reporting 'The procedure entry point K32GetWsChangesEx could not be located in the dynamic link library KERNEL32.dll'
----------------------------------------------------------------
Changes since 4.7:
Alexandre Julliard (85):
attrib: Build with msvcrt.
cabarc: Build with msvcrt.
clock: Build with msvcrt.
control: Build with msvcrt.
dxdiag: Build with msvcrt.
eject: Build with msvcrt.
expand: Build with msvcrt.
extrac32: Build with msvcrt.
hh: Build with msvcrt.
hostname: Build with msvcrt.
icinfo: Build with msvcrt.
iexplore: Build with msvcrt.
ipconfig: Build with msvcrt.
msidb: Build with msvcrt.
msiexec: Build with msvcrt.
net: Build with msvcrt.
netstat: Build with msvcrt.
oleview: Build with msvcrt.
progman: Build with msvcrt.
regsvr32: Build with msvcrt.
ntdll: Check for time conversion error to silence a compiler warning.
makefiles: Also pass -fPIC flag when linking.
rpcss: Build with msvcrt.
rundll32: Build with msvcrt.
sc: Build with msvcrt.
schtasks: Build with msvcrt.
services: Build with msvcrt.
start: Build with msvcrt.
svchost: Build with msvcrt.
taskkill: Build with msvcrt.
uninstaller: Build with msvcrt.
view: Build with msvcrt.
makefiles: Don't use custom LDFLAGS to link dlls.
configure: Disable stdcall fixups for PE builds.
include: Add DECLSPEC_IMPORT on OpenGL functions when not building opengl32.
crypt32: Fix comparison of domain name components.
winedevice: Build with msvcrt.
winemine: Build with msvcrt.
winemsibuilder: Build with msvcrt.
winetest: Build with msvcrt.
winhlp32: Build with msvcrt.
wmic: Build with msvcrt.
write: Build with msvcrt.
wscript: Build with msvcrt.
ping: Avoid using getopt().
ping: Build with msvcrt.
winefile: Get rid of the Unix filesystem support.
winefile: Build with msvcrt.
include: Use DECLSPEC_HIDDEN instead of DECLSPEC_IMPORT for dll exports.
include: Move DECLSPEC_HOTPATCH definition out of config.h.
makefiles: Support delay imports for PE builds.
makefiles: Use a separate LDFLAGS variable for cross-compilation.
makefiles: Only cross-compile the import libraries that are actually used.
makefiles: Only cross-compile the static libraries that are actually used.
dxerr8: Don't use snprintf().
dxerr9: Don't use snprintf().
strmbase: Avoid using wine/unicode.h.
cmd: Build with msvcrt.
explorer: Move screen saver activation to the X11 driver.
explorer: Build with msvcrt.
cmd: Explicitly mark qsort() callback funtions cdecl.
services: Explicitly mark a qsort() callback funtion cdecl.
uninstaller: Explicitly mark a qsort() callback funtion cdecl.
winefile: Explicitly mark qsort() callback funtions cdecl.
winhttp/tests: Get a test file from the WineHQ tests subdirectory.
include/msvcrt: Add inttypes.h header.
advapi32: Use strncmpiW instead of memicmpW for strings without embedded nulls.
atl: Use strncmpiW instead of memicmpW for strings without embedded nulls.
fusion: Use strncmpiW instead of memicmpW for strings without embedded nulls.
kernel32: Use strncmpiW instead of memicmpW for strings without embedded nulls.
kernelbase: Use strncmpiW instead of memicmpW for strings without embedded nulls.
mountmgr.sys: Use strncmpiW instead of memicmpW for strings without embedded nulls.
mshtml: Use strncmpiW instead of memicmpW for strings without embedded nulls.
msi: Use strncmpiW instead of memicmpW for strings without embedded nulls.
kernel32: Reset stdio file descriptors when passed invalid handles.
ntdll: Reset stdio file descriptors when passed invalid handles.
netapi32: Use strncmpiW instead of memicmpW for strings without embedded nulls.
ntdll: Use strncmpiW instead of memicmpW for strings without embedded nulls.
pdh: Use strncmpiW instead of memicmpW for strings without embedded nulls.
qmgr: Use strncmpiW instead of memicmpW for strings without embedded nulls.
shlwapi: Use strncmpiW instead of memicmpW for strings without embedded nulls.
urlmon: Use strncmpiW instead of memicmpW for strings without embedded nulls.
userenv: Use strncmpiW instead of memicmpW for strings without embedded nulls.
wbemprox: Use strncmpiW instead of memicmpW for strings without embedded nulls.
webservices: Use strncmpiW instead of memicmpW for strings without embedded nulls.
Alistair Leslie-Hughes (12):
wintab32/tests: Improve WTInfoA tests.
authz: Add AuthzFreeResourceManager stub.
dinput: Don't return unsupported interfaces.
dinput: Return E_NOINTERFACE from IDirectInputDevice2 QueryInterface.
dinput: Don't report that we cannot open a device.
dinput: Improve EnumDevice tracing.
dinput: Support DIDEVICEINSTANCE_DX3 for Mouse GetDeviceInfo.
dinput: Use a helper function to get device type.
dinput: Trace This pointer in a consistent way.
dinput: Ensure Cursor is visible on config dialog.
mspatcha/tests: Fix compile error on older compilers.
mspatcha/tests: Make functions static.
Andrew Eikum (11):
winebus.sys: Fix some report descriptors.
winebus.sys: Fix udev report descriptor length.
winebus.sys: Remove some magic numbers.
winebus.sys: Fix ball value reporting.
hid: Shift usage values to LSB.
dinput: Use heuristics to guess if a device is a gamepad or a joystick.
winebus.sys: Order axes before buttons.
winebus.sys: Report hatswitch values correctly.
winebus.sys: Report SDL controller dpad as hatswitch.
winebus.sys: Report SDL controller buttons in the right order.
winebus.sys: Pack hatswitch values into button bytes.
Aric Stewart (2):
winemac.drv: Set done if macdrv_process_text_input is not processing input.
winemac.drv: Allow mac IME to clear text in system input method.
Austin English (2):
iphlpapi: Add GetBestRoute2 stub.
advapi32: In ReadEventLogA/W, return ERROR_HANDLE_EOF instead of ERROR_CALL_NOT_IMPLEMENTED.
Bryon Roche (1):
windowscodecs: Byte swap png read/write for 16-bpp data.
Conor McCarthy (4):
mspatcha: Add functions to API header file.
mspatcha: Partially implement ApplyPatchToFileW and related functions.
mspatcha/tests: Test implementations of ApplyPatchToFileW and related functions.
mspatcha: Add stubs for signature and normalization functions.
Damjan Jovanovic (1):
qcap/vfwcapture: Implement IPin::CheckMediaType().
Derek Lesho (2):
ntoskrnl.exe: Export and set PsInitialSystemProcess.
ntoskrnl.exe: Implement PsIsSystemThread.
Dmitry Timoshkov (2):
crypt32: CryptMsgUpdate should skip broken certificates.
mshtml: Implement HTMLStyleSheetRulesCollection::item.
Enol Puente (4):
wrc: Add Asturian locale.
wmc: Support Asturian.
kernel32: Add Asturian locale.
po: Add Asturian translation.
Erich Hoover (2):
iphlpapi: Implement AllocateAndGetTcpExTableFromStack.
kernel32: Add SearchPath test demonstrating the priority of the working directory.
François Gouget (4):
ntoskrnl.exe: Make run_work_item_worker() static.
user32: Make WIN_SetOwner() static.
kernel32/tests: Use ok_() so the TestBot can correctly detect the line.
jscript: Make the Enumerator_props functions static.
Henri Verbeet (37):
wined3d: Introduce a debug helper for Vulkan return values.
wined3d: Use shader_glsl_append_imm_vec4() in shader_glsl_get_register_name().
wined3d: Get rid of the redundant "device" parameter to context_destroy().
wined3d: Introduce a separate structure for OpenGL context information.
wined3d: Introduce wined3d_context_init().
wined3d: Simplify wined3d_context_destroy().
wined3d: Rename context_destroy_gl_resources() to wined3d_context_cleanup().
wined3d: Free the "texture_type" array in wined3d_context_cleanup().
wined3d: Introduce wined3d_context_gl_destroy().
wined3d: Free shader backend and fragment pipe context data in device_context_remove().
wined3d: Allocate shader backend and fragment pipe context data in device_context_add().
wined3d: Get rid of the "target" parameter to context_create().
wined3d: Get rid of the "target" parameter to wined3d_context_init().
wined3d: Get rid of the "target" parameter to wined3d_adapter_gl_create_context().
wined3d: Get rid of context_validate_onscreen_formats().
winex11: Only handle errors from GLX requests in GLXErrorHandler().
wined3d: Query Vulkan GPU memory.
wined3d: Get rid of a redundant initialisation in wined3d_device_set_implicit_swapchain().
wined3d: Share more swapchain setup with the "no3d" adapter in wined3d_device_set_implicit_swapchain().
wined3d: Determine the ORM_BACKBUFFER depth/stencil format in wined3d_adapter_gl_create_context().
wined3d: Make the adapter responsible for context destruction and allocation.
wined3d: Pass a wined3d_context_gl structure to context_bind_texture().
wined3d: Move the "texture_type" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Move the "dummy_arbfp_prog" field from struct wined3d_context to struct wined3d_context_gl.
wined3d: Store the glEnableWINE and glDisableWINE pointers in the wined3d_gl_info structure.
wined3d: Move the extension emulation fields from struct wined3d_context to struct wined3d_context_gl.
wined3d: Pass a wined3d_context_gl structure to context_load_tex_coords().
wined3d: Pass a wined3d_context_gl structure to context_get_tex_unit_mapping().
wined3d: Pass a wined3d_context_gl structure to context_bind_shader_resources().
wined3d: Pass a wined3d_context_gl structure to context_apply_blit_state().
wined3d: Pass a wined3d_context_gl structure to context_apply_ffp_blit_state().
wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_bind_and_dirtify().
wined3d: Pass a wined3d_context_gl structure to context_map_stage().
wined3d: Pass a wined3d_context_gl structure to context_map_fixed_function_samplers().
wined3d: Pass a wined3d_context_gl structure to context_map_psamplers().
wined3d: Pass a wined3d_context_gl structure to context_map_vsamplers().
wined3d: Pass a wined3d_context_gl structure to context_unit_free_for_vs().
Jacek Caban (26):
ntoskrnl.exe: Implement IoGetCurrentProcess.
ntoskrnl.exe: Implement PsGetProcessId.
ntoskrnl.exe: Implement PsGetThreadId.
ntoskrnl.exe: Implement ObOpenObjectByPointer.
ntoskrnl.exe: Use ObOpenObjectByPointer to get handle for kernel object.
ntoskrnl.exe: Support SL_INVOKE_ON_CANCEL in IoCompleteRequest.
ntoskrnl.exe: Support NULL offset in IoBuildSynchronousFsdRequest.
ntoskrnl.exe: Use ObGetObjectType in kernel_object_from_handle.
ntoskrnl.exe: Implement IoAllocateWorkItem and IoFreeWorkItem.
ntoskrnl.exe: Implement IoQueueWorkItem.
ntoskrnl.exe: Add work item tests.
ntoskrnl.exe: Implement IoBuildAsynchronousFsdRequest.
ntoskrnl.exe/tests: Add IoCallDriver tests.
ntoskrnl.exe: Implement IoCancelIrp.
ntoskrnl.exe/tests: Add CancelIo tests.
ntoskrnl.exe: Set IRP DeviceObject in IoCallDriver.
ntoskrnl.exe: Support UserEvent in IoCompleteRequest.
server: Pass IRP output size in irp_params_t.
server: Don't use IRP_MJ_* constants for ntoskrnl.exe communication.
server: Store currently executed IRP call on server side.
server: Pass file object handle in IRP_CALL_CREATE request.
ntoskrnl.exe: Associate file object with server object before calling IRP routine.
ntoskrnl.exe: Don't keep reference to driver created file objects on client side.
ntoskrnl.exe/tests: Add more overlapped tests.
hidclass.sys: Make read IRP queue thread safe.
hidclass.sys: Support canceling read IRPs.
Jactry Zeng (2):
kernel32/tests: Avoid a crash on WinXP and Win2K.
d3dcompiler: Implement D3DReadFileToBlob().
Jefferson Carpenter (1):
server: Add __pad member to pe_image_info_t and zero it.
Julian Rüger (1):
po: Update German translation.
Józef Kucia (20):
wined3d: Implement GPU description registry override for Vulkan adapter.
wined3d: Factor out wined3d_copy_name().
wined3d: Make wined3d_gpu_description from Vulkan physical device properties.
wined3d: Assign *device in adapter_vk_create_device().
dxgi: Avoid magic constants.
d3d11: Set more format support flags.
dxgi: Factor out d3d12_swapchain_record_swapchain_blit().
dxgi: Make Vulkan swapchain image count independent of DXGI buffer count.
dxgi: Add some asserts for Vulkan swapchains.
dxgi: Acquire Vulkan image just before present when we have user images.
d3d11: Implement ID3D11Multithread.
d3d11/tests: Add test for creating deferred contexts.
d3d11/tests: Add test for ID3D11Multithread.
d3d10core/tests: Add test for ID3D11Multithread.
wined3d: Query Vulkan shared system memory.
wined3d: Store texture swizzle capability in struct wined3d_d3d_info.
d3d11: Report format support more accurately based on feature level.
wined3d: Make the adapter responsible for initialising and de-initialising 3D.
wined3d: Propagate HRESULTs in context creation functions.
wined3d: Fix wined3d_get_wine_vk_version().
Louis Lenders (5):
user32: Added GetPointerType stub.
dwmapi: Return DWM_E_COMPOSITIONDISABLED instead of E_NOTIMPL in DwmGetTransportAttributes.
advapi32: Add InitiateShutdown{A,W} stub.
rpcrt4: Add NdrServerCallAll stub.
kernel32: Add K32GetWsChangesEx stub.
Martin Storsjo (2):
avicap32: Fix compilation with older videodev2.h.
qcap: Fix compilation with older videodev2.h.
Michael Müller (3):
version: Correctly return VFF_CURNEDEST in VerFindFileA.
include: Add dxva.h header file.
avifil32: Correctly handle compressed frames when desired format is specified.
Michael Stefaniuc (7):
ntdll/tests: Avoid the comma operator.
ntoskrnl.exe: Correctly initialize two CRITICAL_SECTION_DEBUGs.
wintrust: Use the ARRAY_SIZE() macro.
mscoree: Remove a redundant NULL check before heap_free().
riched32/tests: Test the correct return value.
mfplat/tests: Remove a duplicated ok() check.
rpcrt4: Use CONTAINING_RECORD instead of an extra macro.
Nikolay Sivov (32):
tools: Update to Unicode 12.0.
mfplat: Improve thread safety for IStream-based stream.
mfplat: Improve method traces.
mfreadwrite: Return sample timestamp from ReadSample().
mf: Add stub scheme handler for local file urls.
ntdll: Account for null terminating char in unload traces (Coverity).
mfreadwrite: Wake waiting threads on stream states changes.
ntdll: Initialize critical section debug info with correct pointer value.
mfplat: Copy attributes when cloning presentation descriptor.
mfplat: Add more attribute guids.
mf: Add MFEnumDeviceSources() stub.
dbgeng/tests: Fix event handle leak (Coverity).
mfplat: Implement async file stream creation API.
mf: Register file: scheme handler.
mfplat: Use file url scheme as a fallback.
mfplat/tests: Add some tests for calling scheme handler directly.
mf: Implement file scheme handler.
wmvcore: Return success from OpenStream().
mf: Add a stub for sample grabber activation object.
mfplat: Add topology attributes guids.
mf: Implement SetObject()/GetObject() for topology node.
mfplat: Improve SetGUID() traces.
mfplat: Implement Read() for file-based stream.
mfplat: Implement IsEndOfStream() for file stream.
mfplat: Write attribute store when registering MFT.
mfplat: Write flags when registering MFT.
mf: Set preferred media types for nodes.
mf: Implement CloneFrom() for nodes.
mf: Implement node connections.
mf: Rework node collection implementation.
mf: Disconnect removed nodes.
mf: Add IMFGetService stub for media session.
Paul Gofman (3):
wined3d: Check if destination texture is FBO attachable in glsl_blitter_supported().
ddraw: Fix vertex count in d3d_device3_DrawIndexedPrimitiveVB().
wined3d: Apply stencil mask to stencil reference value.
Piotr Caban (9):
winebus.sys: Add more traces on hidraw communication errors.
hid: Add HidP_SetUsages implementation.
hid: Add support for ranges in find_value.
hid: Only set first usage in an array in HidP_SetUsageValue.
hidclass.sys: Set LinkCollection field in build_elements function.
hidclass.sys: Set LinkUsagePage field in build_elements function.
hidclass.sys: Set LinkUsage field in build_elements function.
hidclass.sys: Treat all one-bit fields as buttons.
hidclass.sys: Fill some reserved fields when building HIDP_{BUTTON,VALUE}_CAPS.
Qian Hong (1):
server: Create primary group using DOMAIN_GROUP_RID_USERS.
Rafał Harabień (1):
ntoskrnl.exe: Fix handling relocations on page boundary.
Tim Schumacher (2):
winejoystick: Add support for wheel axes.
dinput: Map wheel, gas, and brake axes as well.
Vijay Kiran Kamuju (4):
virtdisk: Add stub and tests for OpenVirtualDisk.
include: Add missing defines, enums and functions for dwmapi.h.
wpcap: Fix compile warnings for redefinition of PCAP_OPENFLAG_PROMISCUOUS.
include: Add missing navigation and gamepad key definitions in winuser.rh.
Vincent Povirk (2):
mscoree: Accept old framework build in exe metadata.
windowscodecs: Treat 16-bit channels as little endian.
Zebediah Figura (30):
quartz: Convert media type registration to IRegistrar mechanism.
quartz: Avoid importing shlwapi.
evr/tests: Rewrite test_evr_filter_aggregation().
evr/tests: Add tests for filter interfaces.
winegcc: Add support for -fno-PIC.
makefiles: Build with -fno-PIC on i386.
setupapi: Extract individual files from cabinets.
setupapi/tests: Avoid assert().
setupapi/tests: Add some tests for SetupInstallFilesFromInfSection().
setupapi: Avoid passing a NULL source root path to SetupQueueDefaultCopy() and SetupQueueCopySection().
setupapi: Fill out all source file parameters in SetupQueueCopySection().
setupapi: Fill out all source file parameters in SetupQueueDefaultCopy().
setupapi: Implement SetupQueueCopyIndirectA() on top of the W variant.
setupapi: Remove implementation for LayoutInf parameter of SP_FILE_COPY_PARAMS.
setupapi: Separate the entire copy operation into a helper function.
setupapi: Keep track of source media in a separate list.
setupapi: Implement SetupDefaultQueueCallback(SPFILENOTIFY_NEEDMEDIA).
setupapi: Implement W -> A mapping of SPFILENOTIFY_NEEDMEDIA.
setupapi: Properly null-terminate the path in concat_W().
setupapi: Use the source file name if the destination file name is NULL.
setupapi: Implement source media path resolution.
setupapi/tests: Add tests for source media path resolution.
setupapi: Add magic bytes to struct file_queue and validate them in SetupCloseFileQueue().
ntoskrnl.exe/tests: Use coarser waits for timer tests.
ntoskrnl.exe/tests: Avoid linking directly to CancelIoEx().
msi: Remove registration for no longer used WineMsiRemoteCustomAction coclass.
setupapi: Avoid passing a NULL source filename to SetupQueueDefaultCopy().
strmbase: Move some internal definitions to strmbase_private.h.
strmbase: Move "AttemptConnection" to the base source pin function table.
strmbase: Get rid of the "pfnGetMediaTypeVersion" callback.
Zhiyi Zhang (1):
include: Add more kernel mode graphics driver definitions.
--
Alexandre Julliard
julliard(a)winehq.org
The Wine development release 4.7 is now available.
What's new in this release (see below for details):
- Support for builtin libraries in PE format even on Unix.
- Updated version of the Mono engine.
- More implementation of the Debug Engine DLL.
- Support for the Command Link standard control.
- Improved Edit control sizing in CJK locales.
- Various bug fixes.
The source is available from the following locations:
https://dl.winehq.org/wine/source/4.x/wine-4.7.tar.xzhttp://mirrors.ibiblio.org/wine/source/4.x/wine-4.7.tar.xz
Binary packages for various distributions will be available from:
https://www.winehq.org/download
You will find documentation on https://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check https://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 4.7 (total 34):
11985 Status bar of D3D9 app window disappearing
15934 Can't see Worms 2 intro films as they play (mciavi32 missing support to MCI_MCIAVI_PLAY_FULLSCREEN)
15980 Multiple applications expect security descriptors present in process object/token (Rhapsody 2, Rockstar Games Social Club v1.x)
29921 Microsoft Visual Studio 2005, 2008, 2010 Express installer shows highlighted items incorrectly
41212 Alt-Tab in full-screen on resolutions other than native causes a crash
42518 WinVerifyTrust fails for signatures using SHA256 digest
44656 Multiple applications need ntdll.NtSuspendProcess and ntdll.NtResumeProcess implementation (Crashpad/Chromium/CEF, Oracle Data Visualization Desktop, cbwin)
45543 Multiple games and applications crash in dwrite due to invalid index access to cluster array (Rekordbox 5.3.0, SpellForce 3)
45703 Microsoft Office 365 applications crash on startup (Microsoft AppV ISV virtual filesystem technology requires several native and core API to be hot-patchable)
45819 Symantec Eraser Control Driver 'eeCtrl64.sys' (Norton 360) fails in driver entry point due to 'ntoskrnl.exe.ExInitializeResourceLite' stub (needs STATUS_SUCCESS)
45963 Multiple applications need setupapi.SetupDiInstallDeviceInterfaces and setupapi.SetupDiRegisterCoDeviceInstallers stubs for HID device driver install
46174 Multiple apps (Halo Online Voice Chat, Discord, Miro Realtimeboard) crashes on unimplemented function qwave.dll.QOSCreateHandle
46378 WarGaming.net Game Center crashes when installing games or self-updates
46626 UPlay fails to start : "Error at hooking API LoadStringA" (UPlay's hooking engine can't handle ENDBR32 instruction inserted at non-hotpatch API entries due to distro build environments '-fcf-protection')
46685 AviUtl: Can't specify 4 digits number as image size in new project dialog.
46794 Skyrim crashes upon clicking Continue on macOS
46899 SIMATIC WinCC V15.1 Runtime installer: user can't accept license terms (richedit20 ITextRange::ScrollIntoView lacks handling of 'tomEnd')
46927 Oracle Java SE Runtime Environment 7/8, OpenJDK JVM for Windows with '-XX:+UseNUMA' setting needs kernel32.dll.VirtualAllocExNuma (Minecraft)
46934 Oracle Java SE Runtime Environment 7/8, OpenJDK JVM for Windows: InternalError: Should not get here at sun.nio.fs.WindowsNativeDispatcher.FindFirstStream0
46953 Watch_Dogs crashes after intro
46971 Multiple games crash at launch (Sniper Elite V2, Sniper Elite 3)
46974 Assetto Corsa sometimes crashes when clicking on buttons in the setup menu
46996 Improvements to the 7.1 and 5.1 to stereo conversion
46998 Yakuza Kiwami: Controllers aren't detected
46999 Controller with invalid HID range value causes division by zero error
47009 msi x64 installation file created by Visual Studio cannot be uninstalled
47022 Multiple performance monitor applications fail to display system physical/committed virtual memory usage (Sysinternals Process Explorer v16.x, builtin Taskmgr)
47031 widl generates invalid typelib when importing types from multiple typelibs
47034 Star Wars The Old Republic - Certificate Authentication Failed with wine-dev 4.6 (regression)
47039 Shantae Risky's Revenge has a blank screen in Wine 4.6
47051 Microsoft Excel 2016 (Office 365) crashes on startup (Microsoft AppV ISV virtual filesystem technology requires kernel32.CreateActCtxW to be hot-patchable)
47055 Unloaded modules traces are not accessible (RtlGetUnloadEventTraceEx)
47063 Command Link Support in Wine
47065 Vocaloid 5 (.NET 4.x app) crashes on startup (needs 'Win32_OperatingSystem' WMI class 'SystemDrive' property)
----------------------------------------------------------------
Changes since 4.6:
Akihiro Sagawa (18):
user32/tests: Use GREEK_CHARSET in margin tests to avoid Associated Charset feature.
user32/tests: Remove win9x workarounds in margin tests.
user32/tests: Use calculated WM_SETFONT margins in the CJK case.
user32: Implement WM_SETFONT margins in the CJK case.
user32/tests: Add more margin tests in CJK font case.
user32: Fix edit control margins in CJK font case.
comctl32/tests: Use GREEK_CHARSET in margin tests to avoid Associated Charset feature.
comctl32/tests: Skip margin tests if a font for the target charset isn't available.
comctl32/tests: Use EM_SETMARGINS to test EC_USEFONTINFO margins.
comctl32/edit: Fix minimum control size conditions when using EC_USEFONTINFO.
comctl32/tests: Move the default margin size tests into a separate function.
comctl32/tests: Add Unicode version tests for Edit control margins.
comctl32/tests: Tests default margin size with various font face and charset.
comctl32/tests: Use calculated EC_USEFONTINFO margins in the CJK case.
comctl32/edit: Implement EC_USEFONTINFO margins in the CJK case.
comctl32/tests: Use calculated WM_SETFONT margins in the CJK case.
comctl32/edit: Implement WM_SETFONT margins in the CJK case.
user32: Make the second parameter of get_font_margins const.
Alexandre Julliard (41):
configure: Don't inherit CFLAGS for cross-compilation.
configure: Cache result of the cross-compiler check.
configure: Also cache negative results of soname checks.
configure: Cache result of the flex version check.
configure: Cache results of the compiler checks.
configure: Cache result of the msgfmt check.
shell32: Fix compiler warnings for the Windows build.
winegcc: Add option to put a builtin dll signature in the DOS header of PE files.
server: Add flag for builtin dlls in the image information.
ntdll: Move open_dll_file() to avoid forward declarations.
ntdll: Only pass the NT path name to open_dll_file().
ntdll: Add support for loading PE builtin dlls.
setupapi: Add support for installing PE builtins as fake dlls.
winetest: Also check for builtin dll signature.
winedump: Also check for builtin dll signature.
makefiles: Build modules that don't contain code as PE builtins.
include/msvcrt: Define math constants by default, for compatibility with Mingw.
include/msvcrt: Remove some prototypes that conflict with gcc builtins.
include/msvcrt: Make offsetof constant for compatibility with Mingw.
include/msvcrt: Use _fpclass() instead of _dclass().
include/msvcrt: Add noreturn attributes.
cryptnet/tests: Avoid using snprintf().
fusion/tests: Avoid using snprintf().
mshtml/tests: Avoid using snprintf().
msi/tests: Avoid using snprintf().
ole32/tests: Avoid using snprintf().
setupapi/tests: Avoid using snprintf().
widl: Use %define parse.error verbose instead of %error-verbose.
d3dcompiler: Use %define parse.error verbose instead of %error-verbose.
wbemprox: Use %define parse.error verbose instead of %error-verbose.
ntdll: Use the correct type for %llu scanf format.
makefiles: Allow using EXTRADLLFLAGS instead of APPMODE.
makefiles: Build stub programs with msvcrt.
makefiles: Build stub services with msvcrt.
makefiles: Build modules that use msvcrt as PE builtins.
makefiles: Don't use -fno-builtin flag with MinGW.
makefiles: Build all tests with msvcrt.
configure: Add check for recent enough bison.
msvcrt: Don't export the __p__* functions on 64-bit.
include/msvcrt: Add stdint.h header.
makefiles: Don't allow using system headers with msvcrt.
Alistair Leslie-Hughes (6):
include: Remove duplicate extern C from d3dx10core.idl.
include: Remove duplicate extern C from mimeole.idl.
include: Remove duplicate extern C from vsbackup.idl.
winex11/wintab: Set all Device Orientation values.
xinput: Check that we actually received a value before assignment.
dinput: Don't report SysMouse/Keyboard devices as supporting Force Feedback.
Andreas Maier (2):
jscript: Stub Enumerator object.
jscript_test: Simple test for Enumerator().
Andrew Eikum (1):
dinput: Report controllers as gamepads, not joysticks.
Andrey Gusev (2):
dxgi: Add DECLSPEC_HOTPATCH to d3d11_swapchain_Present().
setupapi: Add DECLSPEC_HOTPATCH to SetupDiEnumDeviceInfo().
André Hentschel (1):
ntdll: Reuse signal to trap translation for FreeBSD on ARM.
Bruno Jesus (1):
mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN.
Damjan Jovanovic (4):
configure: Link wineserver to libinotify if necessary.
qcap/tests: Fix a COM reference leak in the audiorecord test.
avicap32: Verify v4l devices can capture before returning them.
devenum: Iterate over all avicap devices instead of giving up at the first failure.
Derek Lesho (4):
ntoskrnl.exe: Implement PsLookupThreadByThreadId.
server: Allow creating process kernel objects.
ntoskrnl.exe: Implement process object constructor.
ntoskrnl.exe: Implement PsLookupProcessByProcessId.
Detlef Riekenberg (3):
taskschd/tests: Avoid a crash in a test after E_ACCESSDENIED.
qcap/tests: Avoid a crash in a test.
kernel32/pipe: Avoid a crash in a test.
Dmitry Timoshkov (2):
cryptui: Implement CryptUIDlgSelectCertificateFromStore.
kernel32: Add MapUserPhysicalPages stub.
Erich Hoover (5):
server: Add default security descriptor ownership for processes.
server: Add default security descriptor DACL for processes.
kernel32: NeedCurrentDirectoryForExePath does not use the registry.
advapi32: Move the DACL combining code into a separate routine.
advapi32: Fix the initialization of combined DACLs when the new DACL is empty.
Fabian Maurer (2):
kernel32: Partially implement VirtualAllocExNuma.
kernel32: Stub FindFirstStreamW/FindNextStreamW.
François Gouget (2):
d3d10core/tests: Limit the flood of failures in test_depth_bias().
d3d11/tests: Limit the flood of failures in test_depth_bias().
Gabriel Ivăncescu (7):
comctl32/tests: Avoid leaks by moving creation calls outside the loop.
comctl32/button: Preserve BST_HOT when mouse button is released.
comctl32/button: Move the drawing of the button's image into a separate function.
comctl32/button: Implement command links.
comctl32/button: Implement themed command links.
comctl32/button: Implement BCM_GETIDEALSIZE for command links.
comctl32/tests: Test for BCM_GETIDEALSIZE on command links with notes.
Gijs Vermeulen (2):
riched20: Handle tomEnd in ITextRange::ScrollIntoView.
ntoskrnl.exe: Add Ex[p]InterlockedFlushSList.
Hans Leidekker (11):
msi: Use KEY_WOW64_* flags in ACTION_Register/UnregisterClassInfo.
msi: Get rid of a redundant get_registry_view call.
msi: Take architecture into account when accessing the shared dll reference count.
msi: Remove system environment variables on uninstall.
msi: Fix architecture handling in the AppSearch action.
msi: Get rid of redundant KEY_WOW64_64KEY flags.
msi/tests: Check the NT key first when retrieving registered owner and organization.
msi: Always use the 64-bit registry view to retrieve registered owner and organization.
wineboot: Also process Run keys from the 32-bit registry view.
wbemprox: Implement Win32_OperatingSystem.SystemDrive.
wbemprox/tests: Introduce a helper to check properties.
Henri Verbeet (5):
wined3d: Pass a wined3d_adapter_gl structure to wined3d_adapter_gl_init().
wined3d: Assign "adapter_ops" in wined3d_adapter_init().
wined3d: Don't bother allocating "free_fences" in context_create().
wined3d: Don't bother allocating "free_occlusion_queries" in context_create().
wined3d: Don't bother allocating "free_timestamp_queries" in context_create().
Isira Seneviratne (1):
po: Update Sinhala translation.
Jacek Caban (26):
mshtml: Support type conversion in functions with arguments using default values.
mshtml: Support argument type conversion for functions with IDispatch arguments.
mshtml: Support argument type conversion for functions with dual interface arguments.
mshtml: Support argument type conversion for functions with dual interface return type.
mshtml/tests: Properly release elem2 in test_elem_bounding_client_rect.
mshtml: Add ISVGElement stub implementation.
mshtml: Add ISVGSVGElement stub implementation.
mshtml: Add ISVGCircleElement stub implementation.
mshtml: Add ISVGTSpanElement stub implementation.
mshtml: Use DispHTMLDOMImplementation for IDispatchEx implementation.
mshtml: Pass style value as nsAString to set_nsstyle_property.
mshtml: Use nsAString in fix_px_value.
mshtml: Return nsAString from var_to_styleval.
mshtml: Factor out variant_to_nsstr from var_to_styleval.
mshtml: Use variant_to_nsstr in IHTMLDOMNode3::put_textContent.
mshtml: Support VT_R8 in variant_to_nsstr.
jscript: Fix handling empty string regexp matches in String.prototype.split implementation.
jscript: Don't skip empty strings in String.prototype.split in ES5 mode.
msvcp140: Add _Resize implementation.
ntoskrnl.exe/tests: Add more NtOpenThread tests.
ntoskrnl.exe: Return error codes compatible with recent Windows versions in PsLookupThreadByThreadId.
ntoskrnl.exe: Add MmUnmapLockedPages stub.
server: Allow creating file kernel objects.
server: Set file user pointer in get_next_device_request handler.
server: Ensure that IRP_MJ_CLOSE is queued only once.
server: Use generic kernel object list to store client device file pointer.
John Thomson (1):
shell32: Do not fail in SHCreateDirectoryExW for ERROR_ALREADY_EXISTS.
Józef Kucia (7):
d3d9: Fix memory leak in device_init() (Coverity).
wined3d: Make the adapter responsible for creating devices.
wined3d: Create Vulkan device for wined3d_device_vk.
d3d11: Fix d3d11_immediate_context_RSGetScissorRects().
d3d11: Fix d3d10_device_RSGetScissorRects().
wined3d: Use vkGetDeviceProcAddr() to load Vulkan device functions.
wined3d: Avoid enabling all features supported by Vulkan physical device.
Louis Lenders (4):
ntdll: Add DECLSPEC_HOTPATCH to NtQueryDirectoryFile.
ntdll: Add DECLSPEC_HOTPATCH to NtQueryValueKey.
rpcrt4: Quiet two noisy fixme`s.
kernel32: Add DECLSPEC_HOTPATCH to CreateActCtx.
Marko Friedemann (1):
wintrust: Use enhanced crypto provider in VerifyImageHash.
Martin Storsjo (2):
msvcrt: Fix the fallback implementation of asinh for large negative values.
msvcrt: Hook up the unprefixed logb/logbf/logbl functions for msvcr120/ucrtbase.
Mathew Hodson (1):
include: Add cast to avoid a compiler warning on MSVC.
Michael Müller (2):
avifile.dll16: Correctly convert result of AVIStreamGetFrame to a segptr.
avifile.dll16: Convert between AVISTREAMINFO (16 bit) and AVISTREAMINFOA.
Nikola Pavlica (2):
dsound: Revised 5.1 to stereo downmix.
dsound: Added 7.1 to stereo downmix.
Nikolay Sivov (36):
mf/tests: Fix test crash on Vista.
include: Add IMFPMediaPlayer definition.
dwrite/layout: Fix invalid index access to cluster array.
ntdll/tests: Add some tests for thread suspend/resume.
mfreadwrite: Output warning for uninitialized stream descriptor.
mfplat/tests: Add a test for stream descriptor major type behavior.
mfreadwrite: Duplicate media type returned with GetNativeMediaType().
mfreadwrite: Add a helper to get associated event object value.
mfreadwrite: Add a helper to get stream identifier.
mfreadwrite: Handle MEMediaSample event.
mfreadwrite/tests: Add some tests for ReadSample().
ntdll: Add NtSuspendProcess()/NtResumeProcess() implementation.
dbgeng: Add support for non-invasive attach on WaitForEvent().
dbgeng: Implement GetNumberModules().
dbgeng: Implement GetModuleByIndex().
dbgeng: Implement GetModuleParameters().
dbgeng: Implement GetModuleByOffset().
mfreadwrite: Add partial implementation of ReadSample().
mfreadwrite: Handle failure path in GetNativeMediaType().
mfreadwrite: Wake also on new streams.
mfreadwrite: Handle some of stream state change events.
mfplay: Add a stub for MFPCreateMediaPlayer().
ntdll/tests: Add some tests for unloaded modules traces.
ntdll: Implement RtlGetUnloadEventTrace()/RtlGetUnloadEventTraceEx().
dbgeng: Implement ReadVirtual().
dbgeng: Implement IsPointer64Bit().
dbgeng: Implement GetExecutingProcessorType().
dbgeng: Partially implement GetModuleNameString().
dbgeng: Implement GetModuleVersionInformation().
comctl32/button: Improve repainting on WM_SETFOCUS.
dbgeng: Improve GetDebuggeeType() stub.
dbgeng: Set module timestamp field.
dbgeng: Add IDebugAdvanced stub.
dbgeng: Add IDebugSystemObjects stub.
kernel32/tests: Add a test for critical section DebugInfo initial value.
mfplat: Add partial implementation of ConvertToContiguousBuffer().
Paul Gofman (1):
wined3d: Use intBitsToFloat() instead of uintBitsToFloat().
Qian Hong (1):
advapi32/tests: Test prefix and use of TokenPrimaryGroup Sid.
Stefan Dösinger (1):
winemac: Add +fps support for Vulkan.
Vijay Kiran Kamuju (18):
include: Add missing includes, functions to qos2.h.
qwave: Add stub for QOSCreateHandle and tests.
kernel/nls: Fix country name in Tatar locale.
kernel/nls: Fix LOCALE_SNAME for Azeri (Cyrillic).
kernel/nls: Fix LOCALE_SNAME for Uzbek (Cyrillic).
kernel/nls: Fix LOCALE_SNAME for Serbian (Cyrillic).
kernel/nls: Fix country name and sname in English-Caribbean locale.
kernel/nls: Fix country name in Manx Gaelic locale.
kernel32: Add implementation of CAL_SSHORTESTDAYNAME*.
ntdll: Report system information SystemPerformanceInformation info class.
kernel/nls: Add LOCALE_SMONTHDAY to all supported languages.
kernel/nls: Fix LOCALE_SLONGDATE and LOCALE_SYEARMONTH for some chinese locales.
kernel32: Add implementation for CAL_SMONTHDAY.
kernel/nls: Fix LOCALE_SABBREVCTRYNAME for Serbian.
include: Add CAL_UMALQURA definition to winnls.h.
include: Add missing ACE and ACL related defines in winnt.h.
include: Add missing structures for ACE and Tokens in winnt.h.
advapi32/tests: Add additional tests for NtAccessCheck.
Vincent Povirk (2):
mscoree: Try skipping c: when searching for support msi.
mscoree: Update Wine Mono to 4.8.3.
Vladimir Bespalov (1):
user32: Make LoadString[AW] patchable.
Zebediah Figura (38):
qedit/tests: Add more tests for sample grabber filter interfaces.
qedit/samplegrabber: Don't expose IMediaPosition from the filter.
qedit/samplegrabber: Don't expose IMediaSeeking from the filter.
qedit/tests: Test that reference counts are shared between interfaces.
qedit/tests: Add some tests for IBaseFilter::EnumPins() on the sample grabber.
qedit/tests: Add some tests for IBaseFilter::FindPin() on the sample grabber.
qedit/tests: Add some tests for querying sample grabber pin information.
qedit/samplegrabber: Separate sink and source QueryInterface() implementations.
qedit/tests: Add some tests for sample grabber pin interfaces.
qedit/tests: Clean up and expand aggregation tests.
qedit: Fix return code for requesting aggregation with an interface other than IUnknown.
quartz: Vend CLSID_NullRenderer from qedit.
widl: Correctly set the import library offset for all imported types.
msi: Fix handling of architecture in MSIREG_{Open, Delete}UninstallKey().
winecfg: Use GetSysColorBrush().
winecfg: Also set the text color for the license and version controls.
user32: Use GetSysColorBrush().
wordpad: Use GetSysColorBrush().
regedit: Use the default implementation of WM_ERASEBKGND.
qedit/tests: Abort on missing qedit.dll.
qedit/tests: Add some tests for null renderer filter interfaces.
qedit/tests: Add some tests for IBaseFilter::EnumPins() on the null renderer.
qedit/tests: Add some tests for IBaseFilter::FindPin() on the null renderer.
qedit/tests: Add some tests for querying null renderer pin information.
qedit/tests: Add some tests for null renderer pin interfaces.
qedit/tests: Add a test for aggregation on the null renderer.
quartz/tests: Clean up and expand tests for aggregation.
regedit: Use an I-beam cursor in the hex edit dialog.
devenum: Fix device and friendly name for video capture devices.
qcap: Use the v4l2 device_caps field if supported.
amstream: Reference the returned IMediaStream pointer in IAMMultiMediaStream::AddMediaStream().
amstream/tests: Add some test for supported interfaces.
amstream/tests: Add tests for IMediaStreamFilter::EnumPins().
amstream/tests: Add some tests for IMediaStreamFilter::FindPin().
amstream/tests: Add some tests for querying pin information.
quartz: Get rid of register_coclasses().
quartz: Get rid of register_interfaces().
winegstreamer: Convert media type registration to IRegistrar mechanism.
--
Alexandre Julliard
julliard(a)winehq.org