From aaf304f2441ebe52834fdda2b8a02a5349d2ca43 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard <julliard@winehq.org> Date: Fri, 7 Jul 2023 22:20:15 +0200 Subject: [PATCH] Release 8.12. --- ANNOUNCE | 775 ++++++++++++++++++++++++++++++++---------------------- AUTHORS | 4 + VERSION | 2 +- configure | 18 +- 4 files changed, 478 insertions(+), 321 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index b2be84ba961..275f2e19d7b 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,14 +1,13 @@ -The Wine development release 8.11 is now available. +The Wine development release 8.12 is now available. What's new in this release: - - More mouse cursor clipping improvements. - - Support for TLS alerts. - - Increased available address space in WoW64 mode. + - Initial support for painting windows in the Wayland driver. + - Command stream performance improvements in WineD3D. - Various bug fixes. The source is available at: - https://dl.winehq.org/wine/source/8.x/wine-8.11.tar.xz + https://dl.winehq.org/wine/source/8.x/wine-8.12.tar.xz Binary packages for various distributions will be available from: @@ -24,320 +23,474 @@ AUTHORS in the distribution for the complete list. ---------------------------------------------------------------- -Bugs fixed in 8.11 (total 26): - - - #48811 StarCraft II fails to load in staging - - #51640 LibreOffice 7.2.0 crashes while browsing directories - - #53682 wineboot shows "user_check_not_lock BUG: holding USER lock" on aarch64 since wine-7.14 - - #54380 Installed windows driver triggers a window when running any program in winXP mode (unimplemented function ntoskrnl.exe.Ke386QueryIoAccessMap) - - #54442 experimental wow64 mode: doesn't show some graphical windows - - #54738 msi:action - The 64-bit test_register_class_info() fails in Wine - - #54742 The 64-bit advapi32:registry breaks the 32-bit test_redirection() in Wine - - #54751 The 64-bit advapi32:registry breaks test_CoGetPSClsid() in ole32:compobj in Wine - - #54797 Lunar Magic 3.33: Crashes with BadWindow unless WINEDEBUG=+all - - #54848 dnsapi:query - test_DnsQuery() fails on Rémi's Wine test machines - - #54980 wine lost ability to correctly handle printer(CUPS)-supplied fonts (several programs) - - #54993 Framemaker 8 crashes in internal search operation - - #55013 user32:monitor - test_EnumDisplayMonitors() sometimes fails on Linux - - #55016 xaudio2_8:xaudio2 - test_simple_streaming() crashes on Windows 8+ - - #55027 Microsoft Office: IME result string may get doubled when edit is done - - #55042 IDictionary::Add() fails to add entries with numerical keys that have the same hashes - - #55043 Z-Vision for Windows: Assertion failed when clicking "LOAD" button. - - #55046 ALT-TAB broken with virtual desktop and capture mouse (regression: 8.9 -> 8.10) - - #55047 d3d test_cursor_clipping() fails - - #55050 Wine stucks when creating prefix - - #55051 Build regression in wine 8.10 using clang on aarch64 (error in backend: Invalid register name "x18") - - #55055 Japanese IME fails to clear composition string when deleting the only remaining character - - #55074 Multiple apps fail to show anything after launch in virtual desktop mode (Steam, Ubisoft Connect) - - #55088 Program crashes when Common Dialog File open function is called - - #55091 preloader build failure with GOTPCREL relocation - - #55097 cmd.exe does not handle PATH with leading or sequential semicolons +Bugs fixed in 8.12 (total 31): + + - #7767 Zero G Software 'InstallAnywhere' installers crash or silently exit (Rosetta Stone, Reading Counts, World Religions, Parashara's Light Professional 7.0.1) + - #9378 Combat Mission Shock Force DEMO: 'Could not initialize OpenGL graphics.' + - #17868 tools/widl.c: warning: initialization discards qualifiers from pointer target type + - #38938 SlingPlayer 1.5 crashes when moving the main window + - #47089 32-bit Winamp 5.80 installer crashes in 64-bit WINEPREFIX after pressing 'Next' + - #49772 Memory safety issues in widl + - #53085 Free Video Converter complains about being unable to install .Net 2.0 + - #53086 Free Video Converter needs certutil.exe + - #53907 SierraChart Freezes when allocating more than one account + - #54257 Missing support for Windows 2003 (5.2) in OleAut version detection + - #54532 msidb.exe: page fault on read access to 00000007 when importing a .idt file + - #54978 vbscript fails to compile Sub when End Sub on same line + - #54996 msys2: gpg.exe fails because "NtSetInformationFile Unsupported class (64)" / FileDispositionInformationEx + - #55053 Prometheus exporter for Windows needs DISPATCH_PROPERTYGET support in object_Invoke + - #55062 Starcraft II Graphics Only Work When Window is Out of Focus + - #55096 Moving loader to PIE removed loaded modules chain view from debuggers + - #55099 Excel 2016 crashes on date cell formatting + - #55101 DesignDoll Declaring An Error After Loading All Component In Splash Screen + - #55110 quartz:vmr7 & quartz:vmr9 sometimes exit prematurely in Wine + - #55114 secur32:schannel - The 32-bit test_connection_shutdown() crashes on Windows <= 8 + - #55120 kernel32:debugger - test_debug_loop_wow64() gets wrong ntdll count in the new WoW mode + - #55124 Can't run Flutter SDK (cmd.exe doesn't support redirecting stderr for a block) + - #55126 Flutter application needs Windows.Devices.Geolocation.Geolocator + - #55128 dbghelp:dbghelp & dbghelp:path - Call to SymSetExtendedOption() prevents running on Windows 7, 8 & 10 <= 1607 + - #55137 Missing support for SCARD_AUTOALLOCATE + - #55141 virtual desktop not rendering with some dual monitor setups (regression: 8.10 -> 8.11) + - #55144 Error when I run Navigraph FMS Data Manager + - #55146 Virtual desktop is fullscreen regardless of the desktop size setting in winecfg + - #55160 Loading Bay / Harry Potter Magic Awakened: Unable to install + - #55194 oleaut32:vartest - test_VarImp() fails in Wine + - #55201 Wine fails to build with clang-11.0.1 due to recent nameless unions/structs VARIANT changes ---------------------------------------------------------------- -Changes since 8.10: - -Akihiro Sagawa (1): - commdlg: Fix dialog template parser when caption starts with a DBCS character. - -Alex Henrie (21): - windows.media.speech: Fix memory leak on error path in session_worker_thread_cb (scan-build). - shell32: Fix memory leak on error path in FolderItems_Constructor (scan-build). - rpcrt4: Don't use GetProcAddress for ole32 functions. - wldap32: Clean up LDAP_OPT_API_INFO. - wusa: Zero out identity on error path in read_identity. - msi: Fix memory leak on error path in MSI_OpenPackageW (scan-build). - msi: Fix double free on error paths in TransformView_Create (scan-build). - winhttp: Fix memory leak on error path in request_get_codepage (scan-build). - msi: Fix memory leaks in HANDLE_CustomType23 (scan-build). - combase: Don't export hProxyDll or rpc_execute_call. - comdlg32: Don't use GetProcAddress for SHSimpleIDListFromPath. - comctl32: Remove duplicate declarations of MONTHCAL functions. - hhctrl: Initialize item->items to NULL in parse_index_sitemap_object (scan-build). - urlmon: Don't export urlmon_instance. - wininet: Don't overallocate in urlcache_encode_url_alloc (scan-build). - conhost: Use correct pointer type in edit_line_transpose_words (scan-build). - advpack: Check the return value of adv_install in DoInfInstallW (scan-build). - wbemprox: Fix memory leak on error path in enum_key (scan-build). - sane: Fix use after free in create_item (scan-build). - crypt32: Don't export CRYPT_CopyReversed. - ws2_32: Don't export num_startup. - -Alexandre Julliard (39): - include: Remove redundant __WINE_USE_MSVCRT checks. - makefiles: Define WINE_UNIX_LIB for all files that are built for Unix. - loader: Make the loader position-independent on 64-bit. - winegcc: Fix an uninitialized variable warning in the PE build. - wow64: Don't force wow64 dlls to load at low addresses. - kernel32/tests: Fix the PROCESS_BASIC_INFORMATION exit status type. - server: Also enforce the size of varargs data structures. - ntdll: Support the lower memory limit in MEM_ADDRESS_REQUIREMENTS. - ntdll: Allocate 64-bit and kernel stacks in high memory. - ntdll: Load modules with a high base address in high memory. - ntdll: Make only the necessary pages writable in the ARM64EC code map. - kernelbase: Don't define stdcall functions on non-i386. - ntdll: Don't define stdcall functions on non-i386. - wow64cpu: Don't define stdcall functions on non-i386. - include: Don't support stdcall functions on non-i386. - makefiles: Pass the dll extension from configure. - makefiles: Make the dll extension a per-architecture variable. - makefiles: Don't build native import libraries for PE-only build. - makefiles: Disable native import libraries on ARM64. - conhost: Use nameless union/structs. - explorer: Use nameless union/structs. - ipconfig: Use nameless union/structs. - netstat: Use nameless union/structs. - oleview: Use nameless unions/structs. - regedit: Use nameless unions/structs. - services: Use nameless unions/structs. - include: Disallow fastcall functions in Unix libraries. - loader: Force building the main loader as PIE on 64-bit. - loader: Always build the main loader as PIE if we have a preloader. - loader: Build the preloader as PIE on 64-bit. - winecfg: Use nameless unions/structs. - winedbg: Use nameless unions/structs. - winefile: Use nameless unions/structs. - winemenubuilder: Use nameless unions/structs. - winhlp32: Use nameless unions/structs. - wordpad: Use nameless unions/structs. - wow64: Map a copy of ntdll to build the syscall table. - ntdll: Implement _errno(). - wow64: Don't load the 32-bit ntdll as an image to avoid debugger notifications. - -Alistair Leslie-Hughes (1): - wbemdisp: Support DISPATCH_PROPERTYGET in Object Invoke. +Changes since 8.11: + +Alex Henrie (12): + dbghelp: Allocate real_path with the CRT and copy it to the module heap. + winegstreamer: Fix double free on error path in media_source_constructor (scan-build). + regedit: Fix memory leak on error path in RenameKey (scan-build). + shell32: Don't overallocate in Dde_OnRequest (scan-build). + include: Use correct header guard name in winstring.h. + include: Introduce wine_dbgstr_hstring and debugstr_hstring. + winspool: Declare JobW as a void pointer in SetJobA. + winhttp: Use specific types insted of sizeof(ULONG_PTR) in alloc_handle. + cmd: Allow numbered redirects at the beginning of a line. + vbscript: Use correct pointer type in add_match (scan-build). + include: Add REPARSE_(GUID_)DATA_BUFFER and related constants. + include: Add IsReparseTagNameSurrogate. + +Alexandre Julliard (34): + ntdll/tests: Add some tests for NtQueryVirtualMemory(MemoryImageInformation). + ntdll: Implement NtQueryVirtualMemory(MemoryImageInformation). + ntdll: Implement RtlIsCurrentProcess/Thread. + faudio: Import upstream release 23.07. + png: Import upstream release 1.6.40. + tiff: Import upstream release 4.5.1. + uiautomationcore: Fix some long/LONG mismatches. + oleaut32: Get rid of the DECIMAL access macros. + oleaut32: Use nameless unions/structs. + oleaut32/tests: Use nameless unions/structs. + ole32: Use nameless unions/structs. + ole32/tests: Use nameless unions/structs. + shell32: Use nameless unions/structs. + shell32/tests: Use nameless unions/structs. + shlwapi: Use nameless unions/structs. + oleaut32: Fix a typo introduced by last change. + combase: Use nameless union/structs. + crypt32: Use nameless union/structs. + dbghelp: Use nameless union/structs. + mountmgr.sys: Use nameless union/structs. + ntoskrnl.exe: Use nameless union/structs. + rpcrt4: Use nameless union/structs. + ws2_32: Use nameless union/structs. + include: Disallow Win32 va_list in Unix libraries. + include: Define LONG_PTR as int on llvm-mingw to avoid printf format warnings. + configure: Allow using clang as cross-compiler for multiple archs. + configure: Define __STDC__ to work around clang breakage in MSVC mode. + configure: Don't try to use a non-compliant cross-compiler. + advapi32/tests: Avoid sizeof() in traces. + dmstyle: Avoid sizeof() in traces. + kernel32/tests: Avoid sizeof() in traces. + ntoskrnl.exe/tests: Avoid sizeof() in traces. + wmvcore/tests: Avoid sizeof() in traces. + wtsapi32/tests: Avoid sizeof() in traces. + +Alexandros Frantzis (10): + winewayland.drv: Introduce per-window driver data. + winewayland.drv: Basic Wayland toplevel surface support. + winewayland.drv: Ensure Wayland surface handlers don't access invalid data. + winewayland.drv: Introduce window_surface for Wayland. + winewayland.drv: Implement a simple window_surface flush. + winewayland.drv: Do not commit buffers to unconfigured surfaces. + winewayland.drv: Use a buffer queue for window_surface. + winewayland.drv: Track damaged buffer regions. + winewayland.drv: Update only the flushed bounds from the window_surface. + winewayland.drv: Send surface damage region to the compositor. + +Alistair Leslie-Hughes (56): + wined3d: Rename shader_extract_from_dxbc to wined3d_shader_extract_from_dxbc. + dpnet: Remove DECLSPEC_HIDDEN usage. + dplayx: Remove DECLSPEC_HIDDEN usage. + dpvoice: Remove DECLSPEC_HIDDEN usage. + dpnet/tests: Remove DECLSPEC_HIDDEN usage. + msdasql: Remove DECLSPEC_HIDDEN usage. + mfsrcsnk: Remove DECLSPEC_HIDDEN usage. + infosoft: Remove DECLSPEC_HIDDEN usage. + mapi32: Remove DECLSPEC_HIDDEN usage. + sapi: Remove DECLSPEC_HIDDEN usage. + inetcomm: Remove DECLSPEC_HIDDEN usage. + dsdmo: Add Chorus effect stub. + dsdmo: Add Flanger effect stub. + dmsynth: Remove DECLSPEC_HIDDEN usage. + dmstyle: Remove DECLSPEC_HIDDEN usage. + dmband: Remove DECLSPEC_HIDDEN usage. + dmcompos: Remove DECLSPEC_HIDDEN usage. + dmusic: Remove DECLSPEC_HIDDEN usage. + dmscript: Remove DECLSPEC_HIDDEN usage. + dswave: Remove DECLSPEC_HIDDEN usage. + dmime: Remove DECLSPEC_HIDDEN usage. + dmloader: Remove DECLSPEC_HIDDEN usage. + oleaut32: Fix OaBuildVersion return for available windows versions. + oleaut32: Changed default return value to match prefix default. + msscript.ocx: Fake success in OnAmbientPropertyChange. + msscript.ocx: Fake success in IPersistStreamInit Load. + msscript.ocx: Fake success in FreezeEvents. + jscript: Remove DECLSPEC_HIDDEN usage. + vbscript: Remove DECLSPEC_HIDDEN usage. + amstream: Remove DECLSPEC_HIDDEN usage. + devenum: Remove DECLSPEC_HIDDEN usage. + qasf: Remove DECLSPEC_HIDDEN usage. + qcap: Remove DECLSPEC_HIDDEN usage. + qdvd: Remove DECLSPEC_HIDDEN usage. + qedit: Remove DECLSPEC_HIDDEN usage. + quartz: Remove DECLSPEC_HIDDEN usage. + oledb32: Remove DECLSPEC_HIDDEN usage. + ole32: Remove DECLSPEC_HIDDEN usage. + oleaut32: Remove DECLSPEC_HIDDEN usage. + oleacc: Remove DECLSPEC_HIDDEN usage. + oledlg: Remove DECLSPEC_HIDDEN usage. + combase: Remove DECLSPEC_HIDDEN usage. + riched20: Remove DECLSPEC_HIDDEN usage. + localspl: Remove DECLSPEC_HIDDEN usage. + spoolss: Remove DECLSPEC_HIDDEN usage. + winspool.drv: Remove DECLSPEC_HIDDEN usage. + wineps.drv: Remove DECLSPEC_HIDDEN usage. + urlmon: Remove DECLSPEC_HIDDEN usage. + shdocvw: Remove DECLSPEC_HIDDEN usage. + wininet: Remove DECLSPEC_HIDDEN usage. + xaudio2_7: Remove DECLSPEC_HIDDEN usage. + dsound: Remove DECLSPEC_HIDDEN usage. + winmm: Remove DECLSPEC_HIDDEN usage. + msi: Remove DECLSPEC_HIDDEN usage. + advapi32: Remove DECLSPEC_HIDDEN usage. + dinput: Remove DECLSPEC_HIDDEN usage. + +Ally Sommers (2): + ntdll/unix: Skip address conversion for SOCK_STREAM sockets in try_send(). + ws2_32/tests: Add test for sendto() and recvfrom() on TCP sockets. Andrey Gusev (1): - include: Add flags in D3D11_RESOURCE_MISC_FLAG. - -Bernhard Kölbl (2): - mf: Clear queued topologies on session shutdown. - mf: Don't leak sink in session_get_renderer_node_service(). - -Connor McAdams (10): - uiautomationcore: Store all events in an event list. - uiautomationcore: Clone UiaCacheRequest structure passed to UiaAddEvent. - uiautomationcore: Add support for cloning UiaCondition structures. - uiautomationcore: Implement UiaRaiseAutomationEvent. - uiautomationcore: Unconditionally match all events registered on the desktop node with a scope of subtree. - uiautomationcore/tests: Add tests for cross-process events. - uiautomationcore: Add support for creating serverside events. - uiautomationcore: Prevent creation of duplicate serverside events. - uiautomationcore: Add support for advising providers of events on serverside events. - uiautomationcore: Implement UiaEventAddWindow. - -Daniel Lehman (1): - wininet: Free temporary buffer in InternetQueryOptionW loop. - -David Kahurani (3): - gdiplus: Allow NULL format in GdipAddPathString. - msi: Reject shorter/longer lines in MsiDatabaseImportA. - msi: Convert newlines to alternate representation when exporting. - -Davide Beatrici (21): - winepulse: Move main loop logic into mmdevapi. - winealsa: Implement main_loop in unixlib. - winecoreaudio: Implement main_loop in unixlib. - wineoss: Implement main_loop in unixlib. - winepulse: Move AudioClient's Initialize's exclusive mode check into unixlib. - winepulse: Move get_application_name into mmdevapi. - winealsa: Call mmdevapi's get_application_name. - winecoreaudio: Call mmdevapi's get_application_name. - wineoss: Call mmdevapi's get_application_name. - winepulse: Move stream_release into mmdevapi. - winealsa: Use mmdevapi's stream_release. - winecoreaudio: Use mmdevapi's stream_release. - wineoss: Use mmdevapi's stream_release. - winealsa: Use mmdevapi's set_stream_volumes. - winecoreaudio: Use mmdevapi's set_stream_volumes. - wineoss: Use mmdevapi's set_stream_volumes. - winepulse: Use mmdevapi's set_stream_volumes. - winealsa: Use create_stream's channel count in AudioClient's Initialize. - winecoreaudio: Use create_stream's channel count in AudioClient's Initialize. - wineoss: Use create_stream's channel count in AudioClient's Initialize. - winepulse: Refactor AudioClient's Initialize to match other drivers. + ntoskrnl.exe: Add PsSetLoadImageNotifyRoutineEx semi-stub. + +Arkadiusz Hiler (1): + win32u: Don't affect nonclient area unless requested. + +Bernhard Kölbl (5): + widl: Add basic support for the [deprecated] attribute. + include: Add Windows.Phone.PhoneContract api contract. + include: Add VoiceCommandSet runtimeclass with its dependencies. + mfmediaengine/tests: Add tests for video effects. + mfmediaengine: Add support for inserting video effects. + +Billy Laws (3): + ntdll: Avoid using SOL_IPX to detect whether IPX is supported. + ws2_32: Avoid using SOL_IPX to detect whether IPX is supported. + server: Avoid using SOL_IPX to detect whether IPX is supported. + +Brendan Shanks (1): + winevulkan: Set zero_bits correctly for large address aware applications on Wow64. + +Connor McAdams (5): + uiautomationcore: Introduce UI Automation event thread. + uiautomationcore: Introduce custom uia_event_args structure. + uiautomationcore: Add partial support for raising serverside events. + uiautomationcore: Create a new node when raising serverside events. + uiautomationcore: Add support for invoking serverside event callbacks. + +Damjan Jovanovic (1): + opengl32: Implement filtering on all the ChoosePixelFormat() flags that are ignored when unset. + +Davide Beatrici (33): + winealsa: Use standard allocator in AudioClient's Initialize. + winecoreaudio: Use standard allocator in AudioClient's Initialize. + wineoss: Use standard allocator in AudioClient's Initialize. + winepulse: Move AudioClient's Initialize into mmdevapi. + winealsa: Use mmdevapi's AudioClient's Initialize. + winecoreaudio: Use mmdevapi's AudioClient's Initialize. + wineoss: Use mmdevapi's AudioClient's Initialize. + winecoreaudio: Refactor AudioClient's Release to match other drivers. + winepulse: Refactor AudioClient's Release to match other drivers. + winepulse: Move AudioClient's Release, AddRef into mmdevapi. + winealsa: Use mmdevapi's AudioClient's Release, AddRef. + winecoreaudio: Use mmdevapi's AudioClient's Release, AddRef. + wineoss: Use mmdevapi's AudioClient's Release, AddRef. + winepulse: Move AudioClient's QueryInterface into mmdevapi. + winealsa: Use mmdevapi's AudioClient's QueryInterface. + winecoreaudio: Use mmdevapi's AudioClient's QueryInterface. + wineoss: Use mmdevapi's AudioClient's QueryInterface. + winepulse: Move AudioClient's vtable into mmdevapi. + winecoreaudio: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. + wineoss: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. + winepulse: Return E_UNEXPECTED with invalid dataflow in GetAudioEndpoint. + winealsa: Refactor get_device_name_from_guid() to allocate memory dynamically. + winecoreaudio: Refactor get_device_name_from_guid() to allocate memory dynamically. + wineoss: Refactor get_device_name_from_guid() to allocate memory dynamically. + winepulse: Refactor get_device_name_from_guid() to allocate memory dynamically. + winepulse: Move session_init_vols into mmdevapi. + winealsa: Move session_init_vols into mmdevapi. + winecoreaudio: Move session_init_vols into mmdevapi. + wineoss: Move session_init_vols into mmdevapi. + winepulse: Move create_session into mmdevapi. + winealsa: Move create_session into mmdevapi. + winecoreaudio: Move create_session into mmdevapi. + wineoss: Move create_session into mmdevapi. Eric Pouech (9): - kernel32/tests: Extend console inheritance tests. - include/dbghelp.h: Added some missing definitions. - dbghelp: Create implementation basis for SymSrvGetFileIndex*(). - dbghelp/tests: Add tests for SymSrvGetIndexesInfo. - dbghelp/tests: Add tests for SymSrvGetInfoIndexes. - dbghelp: Implement SymSrvGetFileIndexInfo for PE modules. - dbghelp/tests: Add explicit tests about loading ELF modules. - dbghelp: Fix reading Wine loader's base address. - winedump: Tidy up print out in minidumps. - -Etaash Mathamsetty (2): - ntdll: Allow RtlAllocateHeap to crash with invalid handle. - user32: Add GetSystemDpiForProcess export. - -Fabian Maurer (3): - wineps.drv: Use afm FamilyName instead of FullName. - mmdevapi: Don't redefine stream_handle (gcc 4.3). - gdiplus: Refactor and add comments for easier understanding. - -Gabriel Ivăncescu (27): - jscript: Correctly implement context for indirect eval calls in ES5+ modes. - jscript: Fix addressing invalid memory if ref is an argument. - jscript: Fix function leak in scope_init_locals. - jscript: Get rid of jsobj in scope_chain_t. - jscript: Don't use iface_to_jsdisp where it's not necessary to grab it. - jscript: Store detached args into a scope's specialized buffer. - jscript: Start from the last argument when adding them to named locals. - jscript: Get rid of the function instance in arguments obj. - mshtml: Traverse and unlink AreaElements properly. - mshtml: Fix style declaration leak in HTMLStyle_Create. - mshtml: Fix nsIDOMNode leak when retrieving an item in the node list. - mshtml: Fix node leak when enumerating nodes. - mshtml: Handle failure and cleanup properly when enumerating nodes. - mshtml: Fix leaks in create_all_list. - mshtml: Fix element leaks in get_elem_source_index. - mshtml: Fix text node leak in Element innerText setter. - mshtml: Fix text node leak in OptionElement text setter. - mshtml/tests: Fix CurrentStyle leak in test_style_filters. - jscript: Use jsstr_empty instead of allocating empty string. - jscript: Implement `caller` for function instances and prototype. - jscript: Throw error when accessing `arguments` prop of bind functions. - jscript: Don't expose Function.prototype.arguments in non-html mode. - jscript: Store ref to scope directly instead of frame in arguments object. - jscript: Don't use detached arguments buffer in html mode. - jscript: Always create detached variable objects with no class. - jscript: Properly handle passing undefined value to Number.toPrecision. - jscript: Properly handle passing undefined value to Number.toString in ES5+ mode. + dbghelp: Add tests for SymSrvGetFileIndexInfo() for PDB files. + dbghelp: Implement SymSrvGetFileIndexInfo for PDB files. + dbghelp/tests: Don't call SymSetExtendedOption() directly. + dbghelp/tests: Use indirect call for SymSetExtendedOption. + d3dx9/tests: Clean up some ok() messages. + dbghelp: Use nameless union/structs. + winedbg: Cache wow64 status inside struct process. + winedbg: Add 'info system' command. + winedbg: Detect debuggee termination before first exception. + +Esme Povirk (2): + win32u: Implement marshaling for CB_GETCOMBOBOXINFO. + win32u: Implement EVENT_OBJECT_SHOW/HIDE for window objects. + +Evan Tang (2): + winemac.drv: Give Apple GPUs device IDs. + winemac.drv: Fix compile on macOS 10.14. + +Fabian Maurer (14): + widl: Don't crash on nameless structs. + windowscodecs: Fake success in SetMetadataByName. + dcomp: Add stub for DCompositionCreateDevice3. + vbscript: Support one-line sub/function. + user32: Ignore invalid parameters in DrawTextEx when HDC is invalid. + kerberos: Avoid potentially uninitialized variable (clang-scan). + include/windows.foundation: Add double reference. + include: Add windows.devices.geolocation.geolocator. + windows.devices.geolocation.geolocator: Add stub dll. + windows.devices.geolocation.geolocator: Add stubs for IGeolocator. + windows.devices.geolocation.geolocator: Fake success for PositionChanged_add. + windows.devices.geolocation.geolocator: Implement IWeakReferenceSource. + windows.devices.geolocation.geolocator: Implement IWeakReference. + localspl: Add workaround for old versions of cups.h. + +François Gouget (1): + user32/tests: Fix a WM_DISPLAYCHANGE broken() condition. + +Gabriel Ivăncescu (21): + mshtml: Remove DECLSPEC_HIDDEN usage. + win32u: Don't clip fullscreen windows while capturing mouse pointer. + mshtml: Introduce helper to transfer node ownership to range points when AddRef isn't needed. + mshtml: Fix leak when obtaining previous node of range point. + mshtml: Fix leak when moving to next char in range point. + mshtml: Fix leak in find_prev_space. + mshtml: Fix text node leak in TextRange's text setter. + mshtml/tests: Fix element leak in test_elems. + mshtml/tests: Fix form element leak in test_form_item. + mshtml/tests: Fix attribute leak in test_attr. + mshtml/tests: Fix node leak in test_create_elems. + mshtml/tests: Fix node leaks in test_docfrag. + mshtml/tests: Fix performance leaks in test_document_mode_lock. + mshtml/tests: Fix element leak in test_frameset. + mshtml/tests: Fix node leak in test_replacechild_elems. + mshtml/tests: Fix performance leak in test_window. + mshtml/tests: Fix element leak in get_elem_doc. + mshtml/tests: Fix DispatchEx leak in test set_dispex_value. + mshtml/tests: Fix anchor element leaks in test helpers. + mshtml/tests: Fix area element leaks in test helpers. + mshtml/tests: Fix image element leaks in test helpers. Georg Lehmann (1): - winevulkan: Update to VK spec version 1.3.254. - -Giovanni Mascellani (5): - dxgi: Do not uselessly pass queue_family_index around. - dxgi: Remove now-useless function d3d12_swapchain_create_buffers(). - dxgi: Do not destroy D3D12 resources unless requested. - dxgi: Only create D3D12 resources when necessary. - dxgi: Rename and split d3d12_swapchain_destroy_buffers(). - -Hans Leidekker (1): - secur32: Add support for sending TLS alerts. - -Huw D. M. Davies (2): - winepulse: Don't overwrite the result in the insufficient buffer case. - winepulse: Return E_NOTIMPL when the property is not found. - -Jacek Caban (3): - user32: Remove no longer used setupapi import. - win32u: Remove duplicated d3dkmdt.h include. - configure: Use -fvisibility=hidden when building with msvcrt and cross compiler is not available. - -Jactry Zeng (2): - atl/tests: Move regular DWORD tests into a loop. - atl: Convert REG_DWORD to a correct type. - -Jinoh Kang (1): - loader: Set the visibility of symbols in preloader to "hidden". - -Liam Middlebrook (2): - cmd/tests: Add tests for PATH separator. - cmd: Fix empty strings between PATH separators. - -Nikolay Sivov (4): - scrrun/dictionary: Compare key values in addition to their hashes. - oleaut32/recinfo: Use CRT allocation functions. - oleaut32/recinfo: Use CoTaskMem* allocations for the record data. - oleaut32: Trace typelib guid in GetRecordInfoFromGuids(). - -Olivier F. R. Dierick (1): - ntoskrnl.exe: Add Ke386QueryIoAccessMap stub. - -Paul Gofman (1): - crypt32: Do not create persistent container in CRYPT_CreateKeyProv(). - -Rémi Bernon (41): - server: Pass the message code to get_hardware_msg_bit. - server: Use hardware message category when checking filter. - imm32: Avoid resizing IMCC to zero-size buffer. - winex11: Remove now unnecessary WM_X11DRV_CLIP_CURSOR_NOTIFY. - win32u: Move grab_pointer registry option from winex11. - win32u: Add a clipping_reset member to user_thread_info. - win32u: Add a clipping_cursor member to user_thread_info. - winex11: Move clip_fullscreen_window foreground check inside it. - win32u: Move fullscreen window cursor clipping from winex11. - server: Update desktop cursor window when cursor pos changes. - server: Keep track of the current desktop cursor handle. - server: Introduce and send new WM_WINE_SETCURSOR hardware message. - win32u: Add a hwnd parameter to SetCursor driver entry points. - win32u: Notify drivers of cursor changes on WM_WINE_SETCURSOR. - wineandroid: Set the window cursor immediately in SetCursor. - winex11: Set the window cursor immediately in SetCursor. - server: Update the DF_WINE_CREATE_DESKTOP desktop flag on opening. - win32u: NtUserGetObjectInformation returns a BOOL, not NTSTATUS. - winex11: Don't grab the cursor if another process is focused. - winex11: Simplify the cursor clipping retry mechanism. - winex11: Replace the clipping message HWND with a BOOL flag. - winegstreamer: Introduce new stream_descriptor_set_tag helper. - winegstreamer: Pass a struct wg_parser_stream to media_stream_create. - winegstreamer: Factor the creation of the first stream media type. - winegstreamer: Introduce new init_video_media_types helper. - winegstreamer: Introduce new init_audio_media_types helper. - winegstreamer: Pass the stream descriptor to media_stream_create. - win32u: Remove unnecessary set_cursor new_clip rect copy. - server: Pass set_cursor flags in WM_WINE_CLIPCURSOR wparam. - win32u: Use a specific flag instead of shrinking the clip rect. - winegstreamer: Remove colorimetry and chroma-site from wg_format caps. - winegstreamer: Remove the callback mechanism from wg_allocator. - winegstreamer: Move release_memory_sample helper around. - winegstreamer: Lazily allocate wg_allocator unix memory. - imm32/tests: Test how deleting a character can behave. - imm32: Use offsets instead of lengths to decide on sending updates. - winex11: Report empty preedit string when result string is committed. - winex11: Make sure HIMC is opened before sending IME updates. - win32u: Split default UpdateDisplayDevices implementation to a helper. - win32u: Move virtual desktop display settings logic from winex11. - configure: Build x86_64 PE code with mcmodel=small. - -Shaun Ren (8): - sapi: Partially implement ISpMMSysAudio::SetState. - sapi: Free completed buffers asynchronously in SpMMAudio. - sapi: Implement ISpMMSysAudio::Write. - sapi: Implement ISpMMSysAudio::EventHandle. - sapi: Implement ISpVoice::SetOutput. - sapi: Implement ISpVoice::Set/GetVoice. - sapi: Implement ISpVoice::Set/GetRate. - sapi: Implement ISpVoice::Set/GetVolume. - -Tatsuyuki Ishi (3): - win32u: Move QueryDisplayConfig from user32. - win32u: Cleanup naming and log messages for QueryDisplayConfig. - win32u: Avoid SEGV in QueryDisplayConfig when run as service. - -Tim Clem (1): - ntdll: Treat read faults on readable pages as write faults on macOS. + winevulkan: Keep deferred operation function params alive. + +Giovanni Mascellani (6): + dxgi/tests: Test that the back buffer index is updated when Present() is called. + dxgi/tests: Test that the present count is updated when Present() is called. + dxgi: Consider vk_format a frontend field. + dxgi: Free the frontend images memory only once. + dxgi: Pass a VkImage to d3d12_swapchain_queue_present(). + dxgi: Split D3D12/Vulkan resource creation and destruction. + +Hans Leidekker (7): + winscard: Implement SCARD_AUTOALLOCATE for multi-string return values. + winscard: Map only the reader name in map_states_inA/W(). + bcrypt: Add RC4 algorithm stub. + secur32: Fix a couple of return values. + secur32/tests: Get rid of workarounds for old Windows versions. + secur32: Reduce indentation level in schan_QueryContextAttributesA/W(). + secur32/tests: Fix a test failure. + +Jacek Caban (13): + ntdll: Inherit ConsoleHandle only by CUI processes. + gdi32: Don't use DECLSPEC_HIDDEN. + make_unicode: Don't use DECLSPEC_HIDDEN. + gdi32/uniscribe: Don't use DECLSPEC_HIDDEN. + ieframe: Don't use DECLSPEC_HIDDEN. + winegcc: Disable exporting all symbols on mingw targets. + winedump: Add support for dumping IMPORT_OBJECT_NAME_EXPORTAS symbols. + dbghelp: Use V_INT macro to access VARIANT value. + oleaut32/tests: Don't use __tagBRECORD type. + oleaut32: Don't use __tagBRECORD type. + oleaut32: Use macros to access variant members. + include: Don't force named VARIANT members when __STDC__ is defined. + wow64win: Fix NULL buffer handling in wow64_NtUserBuildHimcList. + +Jiajin Cui (1): + shell32: Make sure wcmd has enough space to hold the string. + +Joel Holdsworth (9): + include: Define FILE_DISPOSITION_INFORMATION_EX and friends. + ntdll: Initial implementation of FileDispositionInformationEx. + ntdll/tests: Add tests for FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE. + ntdll: Implement FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE. + ntdll/tests: Add tests for FILE_DISPOSITION_ON_CLOSE. + ntdll: Implement FILE_DISPOSITION_ON_CLOSE. + ntdll/tests: Add tests for FILE_DISPOSITION_POSIX_SEMANTICS. + server: Replace unlink member of closed_fd with disp_flags. + ntdll: Implement FILE_DISPOSITION_POSIX_SEMANTICS. + +Kevin Schmidt (1): + taskmgr: Use macro for the color black too. + +Maarten De Braekeleer (1): + cmd: Fix 'if exist' with a directory/ as a parameter. + +Matteo Bruni (14): + wined3d: Increase the CS queue size to 16 MiB on 64-bit architectures. + wined3d: Block in wined3d_cs_emit_present() when we reach the latency limit. + wined3d: Call YieldProcessor() when spinning waiting for CS commands. + wined3d: Make the CS thread yield CPU when it can't block waiting. + wined3d: Reduce CS spin count to 2000. + d3dx9/tests: Increase tolerance for a D3DXSHMultiply3 test. + d3dx9/tests: Get rid of unnecessary checks. + d3dx9/tests: Use test message contexts in test_ID3DXFont(). + d3dx9/tests: Get rid of unnecessary checks in test_D3DXCreateRenderToEnvMap(). + d3dx9/tests: Use test contexts in test_D3DXCreateRenderToEnvMap(). + d3dx9/tests: Use test contexts in test_effect_parameter_value(). + d3dx9/tests: Get rid of unnecessary checks in test_effect_states(). + d3dx9/tests: Use test contexts in test_effect_preshader_ops(). + d3dx9/tests: Use test contexts in test_effect_commitchanges(). + +Michael Stefaniuc (3): + gdiplus/tests: Remove superfluous casts to self. + windows.gaming.input: Drop superfluous casts to self. + wow64win: Remove dangling space after newline in ERR() message. + +Mohamad Al-Jaf (17): + twinapi.appcore: Add RegisterAppConstrainedChangeNotification() stub. + twinapi.appcore: Add UnregisterAppConstrainedChangeNotification() stub. + pnputil: Add stub program. + include: Add windows.devices.radios.idl file. + include: Add windows.devices.bluetooth.idl file. + windows.devices.bluetooth: Add stub DLL. + windows.devices.bluetooth: Add IBluetoothAdapterStatics stub interface. + windows.devices.bluetooth/tests: Add IBluetoothAdapterStatics::GetDeviceSelector() tests. + windows.devices.bluetooth: Implement IBluetoothAdapterStatics::GetDeviceSelector(). + include: Add support for BYTE IReference. + include: Add windows.networking.connectivity.idl file. + include: Add windows.networking.idl file. + windows.networking.hostname: Add stub DLL. + windows.networking.hostname: Add IHostNameFactory stub interface. + windows.networking.hostname/tests: Add IHostNameFactory::CreateHostName() tests. + windows.networking.hostname: Implement IHostNameFactory::CreateHostName(). + windows.networking.hostname: Implement IHostName::get_RawName(). + +Nikolay Sivov (3): + mfmediaengine/tests: Allocate notification object on heap for frame transfer tests. + mfmediaengine/tests: Use correct type for url argument in SetSourceFromByteStream(). + mfmediaengine/tests: Remove unnecessary broken() result. + +Paul Gofman (9): + Revert "crypt32: Do not create persistent container in CRYPT_CreateKeyProv().". + crypt32/tests: Test CertCreateSelfSignCertificate() without provider info. + crypt32/tests: Add test for CryptVerifyCertificateSignature() with ECC public key. + crypt32/tests: Test ECC message signature verification. + crypt32: Add OID info for szOID_ECC_PUBLIC_KEY. + crypt32: Factor out extract_hash() helper. + crypt32: Factor out cng_prepare_signature(). + crypt32: Support CNG keys in CDecodeSignedMsg_VerifySignatureWithKey(). + bcrypt: Pass GNUTLS_VERIFY_ALLOW_BROKEN to gnutls_pubkey_verify_hash2(). + +Piotr Caban (1): + gdi32: Fix DIB_PAL_INDICES usage handling in EMR_CREATEMONOBRUSH playback. + +Rémi Bernon (26): + mfplat: Use QueryPerformanceCounter in MFGetSystemTime. + explorer: Use CRT allocation functions. + explorer: Use unprefixed debug macros. + explorer: Use wide string literals. + maintainers: Assume GStreamer media source maintainership. + winegstreamer: Keep a reference on the media source start descriptor. + winegstreamer: Lookup stream descriptors before starting streams. + winegstreamer: Create and destroy result entries using dedicated helpers. + winegstreamer: Rename winegstreamer_stream_handler to stream_handler. + winegstreamer: Lookup stream handler result using a dedicated helper. + winegstreamer: Remove unused props from create_object_context. + winegstreamer: Return early if no byte stream was provided. + winegstreamer: Simplify media source creation flags handling. + winegstreamer: Return a IMFMediaSource from media_source_constructor. + winegstreamer: Keep the caller result in create_object_context. + explorer: Use debugstr_devmodew helper to trace display mode. + explorer: Rename initialize_display_settings local variable. + explorer: Set virtual desktop primary adapter display settings. + explorer: Fix command-line parameter parsing. + winegstreamer: Move struct object_context around. + winegstreamer: Use a helper to create object_context. + winegstreamer: Pass the object context to media_source_create. + winegstreamer: Move byte stream caps checks to BeginCreateObject. + winegstreamer: Move stream length query to BeginCreateObject. + win32u: Update the display cache when virtual desktop mode changes. + winex11: Use gdi_display consistently for client_window requests. + +Tim Clem (2): + winemac.drv: Don't expect an internal driver message to set last error. + win32u: Detect a missed WM_LBUTTONUP in the size/move loop. Vladislav Timonin (2): - shell32: Show >4GB values in size columns of My Computer. - shell32: Don't show size for inaccessible drives in My Computer. - -Zebediah Figura (1): - xaudio2/tests: Fix the IID_IXAudio28 declaration. - -Ziqing Hui (1): - winegstreamer: Implement Flush for WMV decoder DMO. + comdlg32: Return E_UNEXPECTED if IFileDialog is already shown. + comdlg32: Enable visual styles when showing IFileDialog. + +Xin Xu (1): + include: Fix spelling error in InterlockedDecrementSizeT(). + +Zebediah Figura (20): + d3d11/tests: Read back directly from the mipmap texture in test_generate_mips(). + d3d10core/tests: Read back directly from the mipmap texture in test_generate_mips(). + d3d11/tests: Use more aligned offsets in test_clear_buffer_unordered_access_view(). + opengl32: Do not expose ARB_buffer_storage on wow64. + opengl32: Do not report a GL version higher than 4.3 on wow64. + dxgi: Do not create a d3d11 swapchain object for the implicit swapchain. + wined3d: Factor out a swapchain_create_texture() helper. + wined3d: Recreate swapchain textures in wined3d_swapchain_resize_buffers(). + wined3d: Remove no longer used arguments from wined3d_texture_update_desc(). + wined3d: Set VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT. + wined3d: Reuse command buffers and fences. + wined3d: Create fences when the command buffer is allocated. + wined3d: Introduce wined3d_get_renderer(). + d3d10core/tests: Mark test failures specific to the Vulkan or GL renderers. + wined3d: Move some definitions to wined3d_vk.h. + wined3d: Move struct wined3d_bo_vk to wined3d_vk.h. + wined3d: Move struct wined3d_image_vk to wined3d_vk.h. + wined3d: Move struct wined3d_query_vk to wined3d_vk.h. + wined3d: Move struct wined3d_context_vk to wined3d_vk.h. + wined3d: Move struct wined3d_adapter_vk to wined3d_vk.h. + +Zhiyi Zhang (6): + kernelbase: Check if locale is NULL before using it in Internal_EnumDateFormats(). + win32u: Create explorer with the thread effective access token. + user32/tests: Test monitor information with an invisible window station. + win32u: Use the window station name to check if an application is running as a service. + user32/tests: Test that an actual desktop window should be created on invisible window stations. + server: Allow creating a real explorer desktop window for invisible window stations. diff --git a/AUTHORS b/AUTHORS index 701e15349bd..50a61330ad4 100644 --- a/AUTHORS +++ b/AUTHORS @@ -87,6 +87,7 @@ Alex Zorach Alfons Hoogervorst Alistair Leslie-Hughes Allan Tong +Ally Sommers Alon Barzilai Ãlvaro Nieto Ambrož Bizjak @@ -982,6 +983,7 @@ Kevin Holbrook Kevin Koltzau Kevin Krammer Kevin Puetz +Kevin Schmidt Kieran Clancy Kieran Duggan Kim Geonwoo (김건우) @@ -1076,6 +1078,7 @@ Lukáš KrejÄà Luke Benstead Luke Bratch Luke Deller +Maarten De Braekeleer Maarten Lankhorst Maciej Borsz Maciek Kaliszewski @@ -1824,6 +1827,7 @@ Wolfram Sang Won Kyu Park Xiang Li Xiaoshan Sun +Xin Xu XueFeng Chang Yann Droneaud Yaron Shahrabani diff --git a/VERSION b/VERSION index 9edece68688..61014eefa45 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Wine version 8.11 +Wine version 8.12 diff --git a/configure b/configure index b7cf68a7863..e4cdaacd5e2 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for Wine 8.11. +# Generated by GNU Autoconf 2.71 for Wine 8.12. # # Report bugs to <wine-devel@winehq.org>. # @@ -611,8 +611,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Wine' PACKAGE_TARNAME='wine' -PACKAGE_VERSION='8.11' -PACKAGE_STRING='Wine 8.11' +PACKAGE_VERSION='8.12' +PACKAGE_STRING='Wine 8.12' PACKAGE_BUGREPORT='wine-devel@winehq.org' PACKAGE_URL='https://www.winehq.org' @@ -2351,7 +2351,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Wine 8.11 to adapt to many kinds of systems. +\`configure' configures Wine 8.12 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2421,7 +2421,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Wine 8.11:";; + short | recursive ) echo "Configuration of Wine 8.12:";; esac cat <<\_ACEOF @@ -2705,7 +2705,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Wine configure 8.11 +Wine configure 8.12 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -3156,7 +3156,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Wine $as_me 8.11, which was +It was created by Wine $as_me 8.12, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -22910,7 +22910,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Wine $as_me 8.11, which was +This file was extended by Wine $as_me 8.12, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22974,7 +22974,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -Wine config.status 8.11 +Wine config.status 8.12 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" -- GitLab