diff --git a/ANNOUNCE b/ANNOUNCE index 2eb1e4d309d..1b45434d815 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,14 +1,15 @@ -The Wine development release 7.14 is now available. +The Wine development release 7.15 is now available. What's new in this release: - - More progress on syscall interface for USER32. - - Improved font fallbacks in DirectWrite. - - Some fixes for socket shutdowns. + - Command lists in Direct2D. + - RSA encryption. + - Initial Wow64 thunking in WIN32U. + - Optional support for colors in test output. - Various bug fixes. The source is available at: - https://dl.winehq.org/wine/source/7.x/wine-7.14.tar.xz + https://dl.winehq.org/wine/source/7.x/wine-7.15.tar.xz Binary packages for various distributions will be available from: @@ -24,340 +25,310 @@ AUTHORS in the distribution for the complete list. ---------------------------------------------------------------- -Bugs fixed in 7.14 (total 19): +Bugs fixed in 7.15 (total 22): - 36711 Sid Meier's Civilization IV crashes while loading saved game (GOG.com complete, Colonization, Warlords, Beyond the Sword)('winetricks -q msxml3' is a workaround) - 39987 Multiple applications need 'shell32.SHOpenFolderAndSelectItems' implementation to open explorer window with specified items in particular folder selected (Firefox 42.0, Windows 95 Electron app) - 50624 Waves Central 12.0.5 fails to start: __call__ pywintypes.error: (1336, 'AddAccesAllowedAce', 'Invalid ACL.') - 51616 Unravel Two crashes on intro - 52594 Rust applications using the tokio library abort with "failed to park" error - 52673 Missing IShellItemImageFactory implementation for ShellItem. - 52773 wine prefix is not to ready to use after running wineboot - 52815 Adobe Digital Editions 2.0.1 hangs during install - 53058 Incorrect socket reconnect behavior for DGRAM sockets - 53105 Certain specific dialogue boxes are permanently fullscreen - 53106 Icons not rendering properly in the window titlebar - 53189 Cheat Engine crashes when opening a drop-down menu - 53289 Unimplemented richedit ITextDocument::Undo and ITextDocument::Redo causes extraneous undo entries - 53307 World of Tanks broken with wined3d's Vulkan renderer - 53310 Roblox Fails With HttpSendRequest - 53348 Can't input anything with CJK input method (fcitx). - 53349 Sigma Data Center fails to sync with Sigma Cloud - 53372 Total War Shogun 2 spews RtlLeaveCriticalSection() section is not acquired errors in 3D scenes. - 53411 Wrong font is used in NtUserDrawCaptionTemp() + - #40444 Find doesn't jump to a found item in WinSCP when editing a file + - #47057 Call of Cthulhu fails to completely load levels and trigger cutscenes + - #49461 Gridrunner Revolution: sound effects stop working after a while + - #49678 Lost Chronicles of Zerzura hangs on startup + - #49692 Multiple applications need a Media Foundation media source implementation + - #50131 Remothered: Tormented Fathers crashes on video loading + - #50546 Persona 4 Golden requires notification message XACTNOTIFICATIONTYPE_WAVEBANKPREPARED to play sounds. + - #50593 Sforzando Sample Player don't draw text, needs font fallback support + - #52448 Multiple visual novels display videos inside separate ActiveMovie window (Hoshi Ori Yume Mirai) + - #52534 ListView: multi select never sends LVN_ODSTATECHANGED + - #52601 The Settlers V: crashes when starting + - #52610 Memory corruption in PE build, when using FIXME in krnl386.exe __wine_vxd_open() function + - #52933 windows.media.speech:speech: The IAsyncInfo_Close() tests fail on Windows + - #52957 Invisible pop-ups text in SeaMonkey 2.53.12 + - #53123 ListView: Ctrl+Shift+LMouse multiselect on LVS_OWNERDATA listviews erroneously sends LVN_ODSTATECHANGED + - #53196 foobar2000: Crashes randomly when opening items in menu bar while playing audio + - #53275 emule crashes with ntdll_set_exception_jmp_buf error + - #53364 Mouse does not move scroll bar in multiple applications (Framemaker 8, Audacity, Visio 2003) + - #53366 Can't compile AES-CCM support prior to GNUTLS version 3.4.0 + - #53483 CFB implementation partially missing + - #53487 Keyboard input doesn't work for a multiple games (Witcher 3, Just Cause 4, Unravel Two) + - #53495 "HP" text does not render in Vestaria Saga Non-Visual Battles ---------------------------------------------------------------- -Changes since 7.13: +Changes since 7.14: -Alexandre Julliard (8): - README: Mention Gitlab. - winebuild: Add GNU stack note also to the undefined symbols file. - gitlab: Initial version of the Gitlab CI scripts. - gitlab: Add CI script to create a release. - makefiles: List all headers in the makefile. - makefiles: Avoid adding the same source multiple times. - makefiles: Work directly with Makefile.in names in make_makefiles. - makefiles: Look for source files in the makefile before trying to open them. +Akihiro Sagawa (13): + winmm/tests: Add tests for visibility of video window. + mciqtz32: Don't hide video window when stopping. + winmm/tests: Add tests for window style of video window. + winmm/tests: Add tests for dimensions of video window. + winmm/tests: Add tests for destination of video window. + mciqtz32: Correct video window behavior by creating default window. + mciqtz32: Fix MCI_DGV_WHERE_WINDOW behavior. + mciqtz32: Reset the video size when changing video destination. + mciqtz32: Hide the default video window when switching to another one. + mciqtz32: Show the default video window when switching from another one. + ieframe/tests: Add more IPropertyStorage read/write tests. + ieframe/tests: Add a test for IPropertySetStorage::Open with STGM_WRITE. + ieframe: Allow STGM_WRITE in IPropertyStorage::Open. -Alistair Leslie-Hughes (4): - ntdll: Check return parameter before use. - ntdll: RtlFirstFreeAce only return FALSE on error. - ntdll/tests: Add RtlFirstFreeAce tests. - xactengine3_7: Remove entry after FAudio Destroyed call. +Alexandre Julliard (4): + faudio: Import upstream release 22.08. + mpg123: Import upstream release 1.30.2. + tiff: Import upstream release 4.4.0. + gitlab: Disable building image in forks. -Arkadiusz Hiler (7): - dinput: Set correct object names for dials and sliders. - dinput: Get rid of unused parameter in match_device_object. - dinput/tests: Use helper for checking device object instances. - dinput: Enumerate user format object forwards. - dinput: Use GUID_Slider type for dials. - dinput/tests: Assert that we can't get info about the third slider with c_dfDIJoystick2. - dinput/tests: Test GetObjectInfo() with three sliders and a proper format. +Alistair Leslie-Hughes (9): + xactengine3_7: Add helper function to add entries. + xactengine3_7: Map SoundBank interfaces. + xactengine3_7: Map IXACT3Cue interfaces. + xactengine3_7: Map IXACT3Wave interfaces. + xactengine3_7: Record context for each notications. + xactengine3_7: Implement callback for supported messages. + xactengine3_7: Return error on invalid notification value. + sapi: Add AudioInput registry key. + include: Add coclass SpMMAudioEnum. -Brendan McGrath (2): - qedit/tests: Test adding a reference to the sample from ISampleGrabberCB::SampleCB(). - qedit: Do not force the sample to be freed in SampleGrabber_callback(). +Angelo Haller (6): + comctl32/listview: Send one deselect all items notification for LVS_OWNERDATA listviews. + comctl32/listview: Move sending LVN_ODSTATECHANGED notifications to a function. + comctl32/listview: Send LVN_ODSTATECHANGED only for LVS_OWNERDATA listviews. + comctl32/listview: Send LVN_ODSTATECHANGED notification for LVS_OWNERDATA listview on selection changes. + comctl32/listview: Don't send LVN_ODSTATECHANGED for empty ranges. + comctl32/tests: Add more ownerdata listview tests. -Brendan Shanks (8): - wow64: Respect the large address aware flag. - ntdll: Allow changes to DEP flags under Wow64. - wow64: Allow setting NtSetInformationProcess(ProcessExecuteFlags). - ntdll/tests: Add tests for the address limit of NtQueryVirtualMemory(MemoryBasicInformation). - wow64: Return error from NtQueryVirtualMemory(MemoryBasicInformation) for a too-large address. - winedbg: Implement GDB qGetTIBAddr query. - winedbg: Prefer thread name from GetThreadDescription() in 'info thread' listing. - winedbg: Prefer thread name from GetThreadDescription() in GDB proxy mode. +Arkadiusz Hiler (1): + winebus.sys/sdl: Use the 8 absolute axes supported by DIJOYSTATE2. -Claire Girka (5): - setupapi: Add support for SPDRP_BASE_CONTAINERID. - ntoskrnl/tests: Add test for getting SPDRP_BASE_CONTAINERID from PnP driver. - hidclass: Improve error handling in get_device_id. - hidclass: Expose ContainerID from underlying driver. - ntoskrnl: Set device ContainerID from driver. +Brendan Shanks (4): + ntdll: Use correct mcontext struct on macOS under Wow64. + wow64: Copy floating point and extended registers in copy_context_64to32. + ntdll: Fix floating point and extended registers not being restored under Wow64. + wow64cpu: Use -norelay for BTCpuSimulate. -Connor McAdams (14): - include: Define UI Automation Property GUIDs. - uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_Property GUIDs. - uiautomationcore: Add stub UiaGetPropertyValue implementation. - uiautomationcore: Implement UiaNodeFromProvider. - uiautomationcore: Implement UiaNodeRelease. - include: Add CUIAutomationRegistrar definition. - uiautomationcore/tests: Add basic UIA property tests for UiaGetPropertyValue. - uiautomationcore: Implement UiaGetPropertyValue. - uiautomationcore: Add support for UIAutomationType_Int properties. - uiautomationcore: Add support for UIAutomationType_Element properties. - uiautomationcore: Add support for ProviderOptions_UseComThreading flag. - uiautomationcore: Add support for UIAutomationType_Double properties. - uiautomationcore: Add support for UIAutomationType_Bool properties. - uiautomationcore: Add support for UIAutomationType_String properties. +Connor McAdams (2): + include: Add UI Automation Event ID definitions. + include: Add UI Automation COM client interface definitions. -David Kahurani (1): - riched20: Remove duplicate code. +David Gow (2): + quartz: Open files with FILE_SHARE_DELETE in FileSource. + quartz: Test: Files opened with FileSource can be deleted. -Eric Pouech (9): - msvcrt: Fix demangling of RTTI type descriptor. - msvcrt: Add support for C++11 operator "" in demangling. - msvcrt: Fix and cleanup undecoration of templatized functions and methods. - msvcrt: Add support for restrict and unaligned qualifiers in demangling. - msvcrt: Fix demangling of variables being an array. - winedbg: Do proper error management when reallocating memory. - winedbg: Use CRT allocation functions. - winedbg: Store result of types_get_info(TI_GET_TYPE) in dbg_type. - winedbg: Synthetize pointer to type when not available. +Dmitry Timoshkov (2): + ntdll/tests: Fix compilation with PSDK. + ntdll/tests: Add a bunch of tests for creating kernel objects with the names containing '\0'. -François Gouget (10): - advapi32/tests: Fix the print format, LARGE_INTEGER is signed. - urlmon/tests: Trace why the test file creation failed. - dbghelp: Fix the spelling of a comment. - ntdll: Fix the spelling of a comment. - win32u: Fix the spelling of a variable name. - urlmon/tests: Fix the spelling of a trace() message. - include: Fix the spelling of some comments. - ws2_32/tests: Add comments to help identify the hint test indices. - include: Add some SPI_ constants. - dinput/tests: Add a trailing linefeed to some ok() calls. +Eric Pouech (3): + shlwapi/tests: Use wide strings literals. + urlmon/tests: Don't use read as a global variable. + test.h: WINETEST_COLOR=auto only outputs colors to a TTY. -Gabriel Ivăncescu (27): - mshtml: Use a table to construct the different event types by their interface. - mshtml: Allocate UI events via the types table. - mshtml: Allocate Mouse events via the types table. - mshtml: Allocate Keyboard events via the types table. - mshtml: Remove FIXME comment from MessageEvent in event_types. - mshtml: Fix copy-paste mistake in test message. - mshtml: Implement ProgressEvent's lengthComputable prop. - mshtml: Implement ProgressEvent's loaded prop. - mshtml: Implement ProgressEvent's total prop. - mshtml: Inform Gecko of progress done via OnProgress. - mshtml: Implement getAttributeNS for Elements. - mshtml: Implement setAttributeNS for Elements. - mshtml: Implement removeAttributeNS for Elements. - mshtml: Implement hasAttributeNS for Elements. - mshtml: Implement lastElementChild for Elements. - mshtml: Implement nextElementSibling for Elements. - mshtml: Implement previousElementSibling for Elements. - mshtml: Implement childElementCount for Elements. - mshtml: Implement HTMLTitleElement's text property. - mshtml: Fix string leak on NamespaceError. - mshtml: Implement responseType prop for XMLHttpRequest. - mshtml: Implement "text" type response for XMLHttpRequest. - include: Add IHTMLDOMNode3 to the HTMLDOMNode dispinterfaces. - include: Add DOMDocumentType dispinterface and coclass. - mshtml: Implement document.doctype. - mshtml: Implement DocumentType node's name prop. - mshtml: Handle lack of window in methods for detached documents. +Gabriel Ivăncescu (10): + mshtml: Implement window.matchMedia() with MediaQueryList stub. + mshtml: Implement MediaQueryList's media prop. + mshtml: Implement MediaQueryList's matches prop. + mshtml: Semi-implement non-string primitive data for postMessage. + mshtml: Implement targetOrigin for postMessage. + mshtml: Forward Document's Invoke to InvokeEx. + mshtml: Implement window.location setter with a hook. + mshtml: Implement window.setTimeout with a hook. + mshtml: Implement document.location with a hook. + mshtml: Return DISP_E_MEMBERNOTFOUND when not finding member by DISPID. -Giovanni Mascellani (5): - xactengine3_7/tests: Test notifications when loading a wave bank. - faudio: Import upstream commit e3c444e4f819d2364a6adb0ae73b1d01185b1e93. - xactengine3_7: Forward wave bank notifications to the application. - mfplat/tests: Mark some tests as broken on Win 8 and 10 v1507. - mfplat/tests: Merge and reorganize image format tests. +Georg Lehmann (1): + winevulkan: Update to VK spec version 1.3.224. -Hugh McMaster (12): - regedit: Use a separate dialog proc function for string data types. - regedit: Pass updated REG_SZ and REG_EXPAND_SZ data via 'struct edit_params'. - regedit: Pass updated REG_MULTI_SZ data via 'struct edit_params'. - regedit: Use 'struct edit_params' with read_value(). - regedit: Update binary data via update_registry_value(). - regedit: Set the dlgproc value name via a function, not a global. - regedit: Update the listview item without reloading the value data. - gitlab: Build-Depend on libfreetype-dev. - regedit: Free temporary buffer when working with REG_DWORD and REG_QWORD values. - regedit: Use zero as a default for REG_DWORD and REG_QWORD values. - regedit: Use zero as a REG_DWORD/REG_QWORD default if edit control is empty. - regedit: Limit REG_DWORD/REG_QWORD input length by value type and format. +Hans Leidekker (3): + bcrypt: Add AES CFB chaining mode support. + bcrypt: Add compatibility defines for AES CFB8. + nsiproxy.sys: Support media connect state on Linux. -Jacek Caban (43): - user32: Avoid using NtUserDispatchMessage in DispatchMessage. - win32u: Remove no longer needed NtUserDispatchMessageA. - win32u: Avoid using client callbacks for NtUserSendMessage. - ntdll: Suppress callback exceptions in KiUserCallbackDispatcher. - win32u: Use syscall interface for NtUserDispatchMessage. - win32u/tests: Add tests for catching exceptions from timer proc. - win32u: Use syscall interface for NtUserMsgWaitForMultipleObjectsEx. - win32u: Use syscall interface for NtUserMessageCall and NtUserTrackPopupMenuEx. - win32u: Get rid of no longer needed NtUserSetCallbacks. - win32u: Use syscall interface for NtUserGetMessage. - win32u: Use syscall interface for message functions. - winex11: Use __wine_unix_call. - wineandroid: Use __wine_unix_call. - winemac: Use __wine_unix_call. - win32u: Use syscall interface for more input functions. - win32u: Use syscall interface for more user painting functions. - win32u: Use syscall interface for NtUserCallHwnd and NtUserCallHwndParam. - user32: Use syscall interface for NtUserCall* functions. - win32u: Use syscall interface for clipboard functions. - win32u: Use syscall interface for more sysparams functions. - win32u: Use syscall interface for cursor icon functions. - win32u: Use syscall interface for more input functions. - win32u: Use syscall interface for NtUserDisableThreadIme. - win32u: Use syscall interface for NtUserCreateWindowEx and NtUserDestroyWindow. - win32u: Use syscall interface for winpos functions. - win32u: Use syscall interface for menu functions. - win32u: Use syscall interface for scroll bar functions. - win32u: Use syscall interface for NtUserSetWindow* functions. - win32u: Use syscall interface for more windowing functions. - win32u: Use syscall interface for window class functions. - win32u: Use syscall interface for NtUserSystemParametersInfo. - wow64win: Sort gdi syscall thunks. - vulkan-1: Make sure that user32 is loaded before ICD. - winevulkan: Move __wine_get_vulkan_driver call to Unix lib. - winevulkan: Use syscall interface for driver functions. - winevulkan: Remove __wine_get_vulkan_driver PE entry point. - mshtml/tests: Increase tolerance in date_now test. - user32: Avoid using WIN_GetPtr for window handle validation. - user32: Use GetWindowLongPtr for GetWindowModuleFileName implementation. - win32u: Introduce NtUserGetDialogInfo and NtUserSetDialogInfo. - win32u: Introduce NtUserGetDialogProc. - win32u: Remove no longer needed exports. - user32: Inline DEFWND_ControlColor implementation. +Jacek Caban (37): + user32: Forward more scroll bar messages to win32u. + win32u: Introduce NtUserGetWindowSysSubMenu. + user32: Store MDI client info on client heap. + user32: Use win32u to get and set MDI client info. + user32: Use GetClientRect in EDIT_WM_ContextMenu. + win32u: Introduce NtUserGetChildRect. + user32: Remove USER_CheckNotLock. + win32u: Move register_desktop_class implementation from user32. + user32: Always use 64-bit cbWndExtra for edit control. + win32u: Move builtin classes registration from user32. + win32u: Store DPI awareness in ntuser_thread_info. + win32u: Store wmchar_data in ntuser_thread_info. + win32u: Move msg_source and recursion_count to ntuser_thread_info. + win32u: Store receive_flags in ntuser_thread_info. + user32: Don't include ntuser_private.h. + win32u: Use platform-independent layout for DC_ATTR. + win32u: Support wow64 in NtAllocateVirtualMemory calls. + win32u: Use platform-independent layout for ntuser_thread_info. + win32u: Store thread info in 64-bit TEB on wow64. + win32u: Use NtUserMessageCall for NtUserSpyGetMsgName. + ntdll: Introduce RtlSetLastWin32Error for unixlibs that additionally sets 32-bit error on wow64. + include: Use RtlSetLastWin32Error in server.h. + win32u: Use RtlSetLastWin32Error. + winex11: Use RtlSetLastWin32Error. + wineandroid: Use RtlSetLastWin32Error. + winemac: Use RtlSetLastWin32Error. + wow64win: Set last error in 32-bit TEB in wow64 thunks. + wow64: Directly use CPU area in Wow64KiUserCallbackDispatcher for I386_CONTEXT. + wow64: Preserve TEB exception frame in Wow64KiUserCallbackDispatcher. + wow64win: Add initial user callbacks support. + win32u: Use NtUserCallMessage for passing packed winproc result. + wow64win: Implement more user thunks. + wow64win: Implement more user callbacks. + wow64win: Handle bitmaps and pens in wow64_NtGdiExtGetObjectW. + wow64win: Always set output bits pointer in wow64_NtGdiCreateDIBSection. + wow64win: Fix error handling in wow64_NtUserGetMessage. + wow64win: Fix NULL msg handling in wow64_NtUserPeekMessage. -Jeff Smith (3): - d3drm/tests: Clean up some magic values. - d3drm: Fix components of palette built when loading texture from file. - d3drm: Fix components of palette when loading texture from 8-bit BMP file. +Nikolay Sivov (40): + d2d1/tests: Use test context for command list test. + d2d1: Add a command list object stub. + d2d1: Allow setting command list as a target. + include: Fix ID2D1CommandSink definition. + d2d1/commandlist: Implement basic state recording commands. + d2d1/commandlist: Implement clipping commands recording. + d2d1/commandlist: Implement Clear() command. + d2d1/commandlist: Implement DrawLine() command. + d2d1/commandlist: Implement DrawGeometry() command. + d2d1/commandlist: Implement DrawRectangle() command. + d2d1/commandlist: Implement FillGeometry() command. + d2d1/commandlist: Implement FillRectangle() command. + d2d1/commandlist: Implement SetTextRenderingParams() command. + d2d1/commandlist: Handle recording in RestoreDrawingState(). + d2d1/commandlist: Implement DrawGlyphRun() command. + d2d1/commandlist: Implement DrawBitmap() command. + d2d1/commandlist: Implement FillMesh() command. + d2d1: Add a helper for DrawGlyphRun(). + d2d1/commandlist: Update text rendering params on DrawGlyphRun(). + dwrite: Fix stretch value validation in CreateTextFormat(). + include: Add newer D2D command sink interface definitions. + d2d1: Implement setting primitive blend mode. + d2d1/commandlist: Fix primitive blend playback. + d2d1: Remove warning message for glyph run description. + dwrite: Add ff00-ffef range to the fallback configuration. + d2d1: Add parameter validation to FillOpacityMask(). + d2d1/commandlist: Implement FillOpacityMask() command. + dwrite/fallback: Consider character size for returned mapped length. + dwrite/fallback: Make sure all consecutively mapped characters belong to the same mapping. + include: Fix ID2D1CommandSink::DrawImage() prototype. + d2d1/commandlist: Implement DrawImage() command. + d2d1/commandlist: Implement layer commands. + dwrite/tests: Add a helper to create analyzer instance. + dwrite/fallback: Add mappings for some CJK ranges. + mfplat: Add some attributes related to transcoding. + dwrite/fallback: Fill in some more fallback ranges for various scripts. + dwrite/fallback: Add Georgian and Armenian ranges. + mf: Add archive sink creation exported functions. + mfreadwrite/writer: Create archive sink automatically when writer is created from url/bytestream. + mfreadwrite/writer: Create output stream if it wasn't provided. -Jinoh Kang (8): - advapi32/tests: Add tests for GetTokenInformation TokenOwner. - kernel32/tests: Test deletion of synchronization objects after handle close. - shell32: Return stub bitmap in IShellItemImageFactory::GetImage. - advapi32/tests: Check that each ACE is ACCESS_ALLOWED_ACE in the default DACL. - advapi32/tests: Test that default object owner match the token owner. - advapi32/tests: Test that default object group match the token primary group. - advapi32/tests: Test that the token default DACL uses token owner instead of token user. - server: Use the token owner instead of the token user for default object owner. +Olivier F. R. Dierick (1): + secur32: Define AES-CCM ciphers missing from GNUTLS before 3.4.0. -Nikolay Sivov (20): - dwrite: Use older interface version for fallback system collection. - dwrite: Add additional structure for mappings array. - dwrite: Filter out unusable ranges on AddMapping(). - dwrite: Keep locales separate for fallback data. - dwrite: Override existing ranges with AddMapping(). - dwrite: Duplicate mapping data when creating fallback object. - dwrite: Extend matching font creation helper. - dwrite: Implement MapCharacters() for custom fallback. - dwrite: Remove old system fallback logic. - dwrite: Add some mappings for Tahoma in the system fallback. - d3d11: Use CRT allocation functions. - d2d1/tests: Add a missing return value test (Coverity). - win32u: Remove some dead code from get_scroll_range() helper (Coverity). - user32: Remove some dead code from unpack_dde_message() (Coverity). - dwrite: Use u32-reads for AnalyzeScript(). - dwrite: Use correct ranges to set DWRITE_SCRIPT_SHAPES_NO_VISUAL. - dwrite: Add a few more fallback ranges. - dwrite: Add Arabic fallback ranges. - win32u: Fix typo in font handle creation in NtUserDrawCaptionTemp(). - dwrite: Fix fallback config ranges text parsing. +Paul Gofman (4): + winhttp: Avoid invalid memory access in netconn_resolve(). + ntdll: Also initialize icmp_over_dgram in sock_read(). + ntdll: Remove redundant assignment in fixup_icmp_over_dgram(). + d3d11: Validate layout description in d3d_input_layout_create(). -Paul Gofman (14): - ws2_32: Add ipv4 raw socket protocol info. - ws2_32/tests: Test ICMP. - ntdll: Support SOCK_RAW / IPPROTO_ICMP fallback over SOCK_DGRAM. - ntdll: Fixup ICMP packet id if SOCK_DGRAM fallback is used. - ntdll: Compute checksum for ICMP over SOCK_DGRAM IP header. - taskschd: Implement writing settings to XML. - schedsvc: Read task enable state from XML in SchRpcGetTaskInfo(). - taskschd: Return SCHED_S_TASK_HAS_NOT_RUN from regtask_get_LastRunTime() stub. - shell32: Don't quote args substituted through wildcard in SHELL_ArgifyW(). - shell32: Handle file extensions in SHELL_FindExecutableByVerb(). - loader/wine.inf: Add runas shell execute verb. - ntdll: Preserve rbx register when calling DLL entry point on x64. - msxml3: Use node_get_text() in domelem_get_nodeTypedValue() if no type is present. - opengl32/tests: Remove depth 32 / stencil 0 test in test_choosepixelformat(). +Rafał Harabień (1): + include: Allow printing test failure messages in bright red. -Philip Rebohle (1): - winevulkan: Fill LUID info in VkPhysicalDeviceVulkan11Properties. +Robert Wilhelm (1): + wshom: Use signed type for ExitCode in IWshShell3::Run(). -Rémi Bernon (22): - ntdll: Use a block member in large blocks. - ntdll: Pass a struct block to (find|validate)_large_block. - ntdll: Fixup the RtlWalkHeap entry pointer before subheap lookup. - mf: Split MFCreateTopoLoader to topology_loader.c. - mf: Check whether node is already in the topology before cloning. - mf: Use a branch list instead of node marker in the topology loader. - mf: Better implement topology loader graph resolution. - mf: Implement topology_node_get_type_handler for all node types. - winex11.drv: Set desktop settings handler before updating display devices. - winemac.drv: Introduce new display_mode_to_devmode helper. - win32u: Introduce new add_mode device manager callback. - win32u: Read and cache adapter modes from the registry. - dinput/tests: Wait for Acquire to complete when injecting input. - dinput/tests: Add some rawinput joystick tests. - win32u: Enumerate mouse and keyboard devices first and skip duplicates. - win32u: Read rawinput device preparsed data using virtual memory. - win32u: Fix thread safety when accessing rawinput device data. - win32u: Use a static size array for rawinput device path. - win32u: Use a struct list to keep rawinput devices. - win32u: Implement NtUserGetRegisteredRawInputDevices on the client side. - server: Use the client provided rawinput registered device array. - maintainers: Assume maintainership of input sections. +Rémi Bernon (46): + mf/tests: Add required SAR media type attributes tests. + mf: Return MF_E_NO_MORE_TYPE from AudioRenderer GetMediaTypeByIndex. + winegstreamer: Set the MF_MT_AUDIO_AVG_BYTES_PER_SECOND attribute. + mf: Implement SAR media type required attributes checks. + mf: Increase min_buffer_size to MF_MT_AUDIO_AVG_BYTES_PER_SECOND. + winegstreamer: Use the correct name for WMADecMediaObject DMO. + winex11.drv: Use a local desired_rect variable when placing displays. + winex11.drv: Use DM_POSITION field bit to mark placed displays. + winex11.drv: Update devmode dmPosition instead of new_rect. + winex11.drv: Use DEVMODEW instead of x11drv_display_setting. + winex11.drv: Iterate display settings using dmDriverExtra. + winex11.drv: Constify set_current_mode DEVMODEW parameter. + wmvcore/tests: Add more IWMReader_(Open|Start|Stop|Close) async checks. + winegstreamer: Move IWMReaderCallbackAdvanced *callback_advanced to a local variable. + winegstreamer: Leave the stream CS while waiting for a sample. + winegstreamer: Make IWMReader state transitions asynchronous. + gitlab: Move build steps to the build-all script. + gitlab: Build every commit in a merge request. + mf/tests: Rotate test videos 90° to better show vertical flips. + mf/tests: Add video processor conversion tests. + mf/tests: Add topology loader tests with video formats. + winegstreamer: Better implement Video Processor MFT. + mf: Use the MFT_CATEGORY_VIDEO_PROCESSOR category for converters. + mf: Propagate missing attributes to downstream media types. + win32u: Ignore DM_POSITION mode fields for available modes. + winemac.drv: Split best display mode lookup to a separate helper. + wineandroid.drv: Return early on EnumDisplaySettingsEx error. + win32u: Split EnumDisplaySettingsEx into CurrentDisplaySettings entry. + wineandroid.drv: Add missing DM_DISPLAYORIENTATION | DM_POSITION flags. + winemac.drv: Avoid setting DM_POSITION on enumerated modes. + server: Avoid reallocating rawinput device array with zero size. + win32u: Avoid reallocating rawinput device array with zero size. + win32u: Send the total number of registered devices to the server. + win32u: Avoid invalid access when registered device alloc failed. (Coverity). + wmvcore/tests: Add some IWMOutputMediaProps_SetMediaType tests. + winegstreamer: Implement IWMOutputMediaProps_SetMediaType. + qasf: Implement ASF Reader filter pin_query_accept. + qasf: Implement ASF Reader filter pin_get_media_type. + qasf: Implement ASF Reader filter pin DecideBufferSize. + winegstreamer: Use a wg_audio_format switch rather than array indexes. + winegstreamer: Use a wg_video_format switch rather than array indexes. + qasf: Wait for IWMReader_Open to complete in ASF Reader Load. + qasf: Implement ASF Reader filter init_stream and cleanup_stream. + qasf: Start/stop the WM reader in asf_reader_init/cleanup_stream. + qasf: Configure WMReader stream format in asf_reader_init_stream. + qasf: Configure WMReader stream selection in asf_reader_init_stream. Santino Mazza (4): - jscript: Return ParseProcedureText when compile fails. - riched20/tests: When selection is out of view, the scrollbar should move. - riched20: Ensure that cursor is visible when selecting text. - riched20/test: Add scrolling test for richole. + ncrypt/tests: Test for NCryptEncrypt with RSA and PKCS1 padding. + bcrypt/tests: Test for BCryptEncrypt with RSA keys. + bcrypt: Initial RSA encryption implementation. + ncrypt: Initial implementation for NCryptEncrypt. -Torge Matthies (2): - msvcr100: Make all exception ctors with a string parameter trace the string. - msvcr100: Implement invalid_multiple_scheduling exception. +Shaun Ren (10): + webservices: Handle in/out parameters properly in WsCall. + webservices: Write the correct headers when a request message is addressed. + webservices: Implement error strings. + webservices: Support faults in error. + webservices: Add support for reading WS_FAULT values. + webservices: Detect when a message contains a fault in read_envelope_start. + webservices: Fill in type description for WS_FAULT_TYPE if necessary in WsReadBody. + webservices/tests: Add a fault reading test for WsReadBody. + webservices: Address the request message in WsCall. + webservices: Add support for receiving fault messages. -Zebediah Figura (25): - ws2_32/tests: Add more tests for SO_CONNECT_TIME. - ws2_32/tests: Test FD_CONNECT with UDP sockets. - ws2_32/tests: Add some tests for connecting a UDP socket. - ws2_32/tests: Test polling for AFD_POLL_CONNECT with UDP sockets. - server: Do not set connectionless sockets into the CONNECTING or CONNECTED state. - ws2_32/tests: Test listen() after a failed connect(). - Revert "server: Explicitly shutdown destroyed sockets to force pending poll() calls to return.". - server: Always wake up pending read or write asyncs on POLLHUP or POLLERR. - server: Use sock_poll_event() in poll_socket(). - server: Clear sock->errors[AFD_POLL_BIT_CONNECT_ERR] in sock_poll_event(). - server: Record the error for connected and connectionless sockets sockets in sock_error(). - server: Report the socket error in sock_poll_event() on POLLERR or POLLHUP. - server: Move sock->error setting completely out of sock_dispatch_events(). - wined3d: Do not try to unmap already unmapped BOs in wined3d_buffer_update_sub_resource(). - wined3d: Do not try to unmap already unmapped BOs in wined3d_texture_update_sub_resource(). - wined3d: Assert that the BO is mapped in unmap functions. - wined3d: Redirect vkd3d log output to the Unix stderr. - ws2_32: Map AFD_POLL_RESET to the "read" set in select(). - ws2_32: Add a FIXME for unhandled flags in select(). - ws2_32: Map AFD_POLL_RESET to both POLLHUP and POLLERR. - server: Properly implement AFD_POLL_RESET. - d3d9: Correctly check for sysmem index buffers in d3d9_stateblock_Apply(). - d3d9: Do not release the wined3d mutex in d3d9_device_upload_sysmem_index_buffer(). - d3d8: Correctly check for sysmem index buffers in d3d8_device_ApplyStateBlock(). - d3d8: Do not release the wined3d mutex in d3d8_device_upload_sysmem_index_buffer(). +Stefan Dösinger (2): + ddraw: Don't account video memory for sysmem surfaces' draw textures. + ddraw/tests: Add some video memory accounting tests. -Zhiyi Zhang (6): - rpcrt4/tests: Add I_RpcBindingInqLocalClientPID() tests. - rpcrt4: Implement I_RpcBindingInqLocalClientPID(). - include: Add IMediaParamInfo definition. - dsdmo/tests: Add IMediaParamInfo tests. - dsdmo: Add IMediaParamInfo stub interface. - ntdll: Restore the timezone bias cache. +Tim Clem (3): + ntdll: Fix leak of mach_thread_self port. + ntdll: Fix leak of mach_host_self port. + kernelbase: Don't assume the length of the process image name. --- -Alexandre Julliard -julliard@winehq.org +Zebediah Figura (14): + wined3d: Factor out mode_matches_filter(). + wined3d: Build a list of wined3d_display_mode structures in wined3d_output_get_mode[_count](). + d3d9: Cache the output mode list. + d3d8: Cache the output mode list. + dxgi: Build the device list only once in dxgi_output_get_display_mode_list(). + wined3d: Build the device list only once in wined3d_output_find_closest_matching_mode(). + include: Print "succeeded inside todo block" messages in colour. + include: Print "test marked todo" messages in colour. + include: Print "test skipped" messages in colour. + include: Print "test succeeded" messages in colour. + winhttp/tests: Add some more tests for newline handling in custom header parsing. + winhttp: Allow custom headers to be separated by any sequence of \r and \n. + winhttp: Pass a length to parse_header(). + winhttp: Don't make a copy of the string in add_request_headers(). + +Zhiyi Zhang (4): + include: Add IMediaParams definitions. + dsdmo: Add IMediaParams stub interface. + winegstreamer: Always check the return value from mf_media_type_from_wg_format(). + winegstreamer: Trace mf_media_type_from_wg_format_{audio|video}(). diff --git a/AUTHORS b/AUTHORS index 30d9eb84e23..f7afa6520e5 100644 --- a/AUTHORS +++ b/AUTHORS @@ -389,6 +389,7 @@ Davide Pizzetti David Faure David Gay David Golding +David Gow David Grant David Hammerton David Hedberg @@ -1564,6 +1565,7 @@ Seth Shelnutt Shachar Shemesh Shanren Zhou Shaun Morris +Shaun Ren Shawn M. Chapla Sheri Steeves Shi Quan He diff --git a/VERSION b/VERSION index a547fefafdf..180c5ed032e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Wine version 7.14 +Wine version 7.15 diff --git a/configure b/configure index 2d6a4fb8c44..51946122dae 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 7.14. +# Generated by GNU Autoconf 2.71 for Wine 7.15. # # Report bugs to . # @@ -611,8 +611,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Wine' PACKAGE_TARNAME='wine' -PACKAGE_VERSION='7.14' -PACKAGE_STRING='Wine 7.14' +PACKAGE_VERSION='7.15' +PACKAGE_STRING='Wine 7.15' PACKAGE_BUGREPORT='wine-devel@winehq.org' PACKAGE_URL='https://www.winehq.org' @@ -2287,7 +2287,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 7.14 to adapt to many kinds of systems. +\`configure' configures Wine 7.15 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2357,7 +2357,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Wine 7.14:";; + short | recursive ) echo "Configuration of Wine 7.15:";; esac cat <<\_ACEOF @@ -2624,7 +2624,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Wine configure 7.14 +Wine configure 7.15 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -3108,7 +3108,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 7.14, which was +It was created by Wine $as_me 7.15, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -22899,7 +22899,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 7.14, which was +This file was extended by Wine $as_me 7.15, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22963,7 +22963,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 7.14 +Wine config.status 7.15 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff --git a/tools/gitlab/release.yml b/tools/gitlab/release.yml index aee9072bb72..9a09e654513 100644 --- a/tools/gitlab/release.yml +++ b/tools/gitlab/release.yml @@ -13,7 +13,6 @@ create-release: sed -e '/^The source/,/^----------/d /^----------/,$d /^Bugs fixed/i-------- - s/^ *\([0-9][0-9]*\) / - #\1/ s/^\*\*\*/###/' ANNOUNCE >announce.md - release-cli create --name "Wine $VERSION" diff --git a/tools/make_announce b/tools/make_announce index 83d869ae69d..13a391e7c44 100755 --- a/tools/make_announce +++ b/tools/make_announce @@ -149,24 +149,20 @@ print NEW "----------------------------------------------------------------\n\n" printf NEW "Bugs fixed in %s (total %u):\n\n", $new, scalar( keys %bugs ); foreach my $id (sort {$a <=> $b} keys %bugs) { - printf NEW " %6d %s\n", $id, unescape( $bugs{$id} ); + printf NEW " - #%-6d %s\n", $id, unescape( $bugs{$id} ); } print NEW "\n----------------------------------------------------------------\n\n"; -print NEW "Changes since $old:\n\n"; +print NEW "Changes since $old:\n"; open LOG, "-|" or exec "git", "shortlog", "wine-$old..HEAD" or die "cannot run git shortlog"; while () { - if (/^(\S.*)\s\(\d+\):$/) { $authors{$1} = 1; } + next if /^$/; + if (/^(\S.*)\s\(\d+\):$/) { $authors{$1} = 1; print NEW "\n"; } print NEW $_; } close LOG; - -while () { last if /^--$/; } -print NEW "--\n"; -while () { print NEW $_; } - close ANNOUNCE; close NEW; update_file( "ANNOUNCE" );