ieframe: Allow STGM_WRITE in IPropertyStorage::Open.
[wine.git] / ANNOUNCE
blob2eb1e4d309d7ac8351035a53b73bc567a1e9f868
1 The Wine development release 7.14 is now available.
3 What's new in this release:
4   - More progress on syscall interface for USER32.
5   - Improved font fallbacks in DirectWrite.
6   - Some fixes for socket shutdowns.
7   - Various bug fixes.
9 The source is available at:
11   https://dl.winehq.org/wine/source/7.x/wine-7.14.tar.xz
13 Binary packages for various distributions will be available from:
15   https://www.winehq.org/download
17 You will find documentation on https://www.winehq.org/documentation
19 You can also get the current source directly from the git
20 repository. Check https://www.winehq.org/git for details.
22 Wine is available thanks to the work of many people. See the file
23 AUTHORS in the distribution for the complete list.
25 ----------------------------------------------------------------
27 Bugs fixed in 7.14 (total 19):
29   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)
30   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)
31   50624  Waves Central 12.0.5 fails to start: __call__ pywintypes.error: (1336, 'AddAccesAllowedAce', 'Invalid ACL.')
32   51616  Unravel Two crashes on intro
33   52594  Rust applications using the tokio library abort with "failed to park" error
34   52673  Missing IShellItemImageFactory implementation for ShellItem.
35   52773  wine prefix is not to ready to use after running wineboot
36   52815  Adobe Digital Editions 2.0.1 hangs during install
37   53058  Incorrect socket reconnect behavior for DGRAM sockets
38   53105  Certain specific dialogue boxes are permanently fullscreen
39   53106  Icons not rendering properly in the window titlebar
40   53189  Cheat Engine crashes when opening a drop-down menu
41   53289  Unimplemented richedit ITextDocument::Undo and ITextDocument::Redo causes extraneous undo entries
42   53307  World of Tanks broken with wined3d's Vulkan renderer
43   53310  Roblox Fails With HttpSendRequest
44   53348  Can't input anything with CJK input method (fcitx).
45   53349  Sigma Data Center fails to sync with Sigma Cloud
46   53372  Total War Shogun 2 spews RtlLeaveCriticalSection() section is not acquired errors in 3D scenes.
47   53411  Wrong font is used in NtUserDrawCaptionTemp()
49 ----------------------------------------------------------------
51 Changes since 7.13:
53 Alexandre Julliard (8):
54       README: Mention Gitlab.
55       winebuild: Add GNU stack note also to the undefined symbols file.
56       gitlab: Initial version of the Gitlab CI scripts.
57       gitlab: Add CI script to create a release.
58       makefiles: List all headers in the makefile.
59       makefiles: Avoid adding the same source multiple times.
60       makefiles: Work directly with Makefile.in names in make_makefiles.
61       makefiles: Look for source files in the makefile before trying to open them.
63 Alistair Leslie-Hughes (4):
64       ntdll: Check return parameter before use.
65       ntdll: RtlFirstFreeAce only return FALSE on error.
66       ntdll/tests: Add RtlFirstFreeAce tests.
67       xactengine3_7: Remove entry after FAudio Destroyed call.
69 Arkadiusz Hiler (7):
70       dinput: Set correct object names for dials and sliders.
71       dinput: Get rid of unused parameter in match_device_object.
72       dinput/tests: Use helper for checking device object instances.
73       dinput: Enumerate user format object forwards.
74       dinput: Use GUID_Slider type for dials.
75       dinput/tests: Assert that we can't get info about the third slider with c_dfDIJoystick2.
76       dinput/tests: Test GetObjectInfo() with three sliders and a proper format.
78 Brendan McGrath (2):
79       qedit/tests: Test adding a reference to the sample from ISampleGrabberCB::SampleCB().
80       qedit: Do not force the sample to be freed in SampleGrabber_callback().
82 Brendan Shanks (8):
83       wow64: Respect the large address aware flag.
84       ntdll: Allow changes to DEP flags under Wow64.
85       wow64: Allow setting NtSetInformationProcess(ProcessExecuteFlags).
86       ntdll/tests: Add tests for the address limit of NtQueryVirtualMemory(MemoryBasicInformation).
87       wow64: Return error from NtQueryVirtualMemory(MemoryBasicInformation) for a too-large address.
88       winedbg: Implement GDB qGetTIBAddr query.
89       winedbg: Prefer thread name from GetThreadDescription() in 'info thread' listing.
90       winedbg: Prefer thread name from GetThreadDescription() in GDB proxy mode.
92 Claire Girka (5):
93       setupapi: Add support for SPDRP_BASE_CONTAINERID.
94       ntoskrnl/tests: Add test for getting SPDRP_BASE_CONTAINERID from PnP driver.
95       hidclass: Improve error handling in get_device_id.
96       hidclass: Expose ContainerID from underlying driver.
97       ntoskrnl: Set device ContainerID from driver.
99 Connor McAdams (14):
100       include: Define UI Automation Property GUIDs.
101       uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_Property GUIDs.
102       uiautomationcore: Add stub UiaGetPropertyValue implementation.
103       uiautomationcore: Implement UiaNodeFromProvider.
104       uiautomationcore: Implement UiaNodeRelease.
105       include: Add CUIAutomationRegistrar definition.
106       uiautomationcore/tests: Add basic UIA property tests for UiaGetPropertyValue.
107       uiautomationcore: Implement UiaGetPropertyValue.
108       uiautomationcore: Add support for UIAutomationType_Int properties.
109       uiautomationcore: Add support for UIAutomationType_Element properties.
110       uiautomationcore: Add support for ProviderOptions_UseComThreading flag.
111       uiautomationcore: Add support for UIAutomationType_Double properties.
112       uiautomationcore: Add support for UIAutomationType_Bool properties.
113       uiautomationcore: Add support for UIAutomationType_String properties.
115 David Kahurani (1):
116       riched20: Remove duplicate code.
118 Eric Pouech (9):
119       msvcrt: Fix demangling of RTTI type descriptor.
120       msvcrt: Add support for C++11 operator "" in demangling.
121       msvcrt: Fix and cleanup undecoration of templatized functions and methods.
122       msvcrt: Add support for restrict and unaligned qualifiers in demangling.
123       msvcrt: Fix demangling of variables being an array.
124       winedbg: Do proper error management when reallocating memory.
125       winedbg: Use CRT allocation functions.
126       winedbg: Store result of types_get_info(TI_GET_TYPE) in dbg_type.
127       winedbg: Synthetize pointer to type when not available.
129 François Gouget (10):
130       advapi32/tests: Fix the print format, LARGE_INTEGER is signed.
131       urlmon/tests: Trace why the test file creation failed.
132       dbghelp: Fix the spelling of a comment.
133       ntdll: Fix the spelling of a comment.
134       win32u: Fix the spelling of a variable name.
135       urlmon/tests: Fix the spelling of a trace() message.
136       include: Fix the spelling of some comments.
137       ws2_32/tests: Add comments to help identify the hint test indices.
138       include: Add some SPI_ constants.
139       dinput/tests: Add a trailing linefeed to some ok() calls.
141 Gabriel Ivăncescu (27):
142       mshtml: Use a table to construct the different event types by their interface.
143       mshtml: Allocate UI events via the types table.
144       mshtml: Allocate Mouse events via the types table.
145       mshtml: Allocate Keyboard events via the types table.
146       mshtml: Remove FIXME comment from MessageEvent in event_types.
147       mshtml: Fix copy-paste mistake in test message.
148       mshtml: Implement ProgressEvent's lengthComputable prop.
149       mshtml: Implement ProgressEvent's loaded prop.
150       mshtml: Implement ProgressEvent's total prop.
151       mshtml: Inform Gecko of progress done via OnProgress.
152       mshtml: Implement getAttributeNS for Elements.
153       mshtml: Implement setAttributeNS for Elements.
154       mshtml: Implement removeAttributeNS for Elements.
155       mshtml: Implement hasAttributeNS for Elements.
156       mshtml: Implement lastElementChild for Elements.
157       mshtml: Implement nextElementSibling for Elements.
158       mshtml: Implement previousElementSibling for Elements.
159       mshtml: Implement childElementCount for Elements.
160       mshtml: Implement HTMLTitleElement's text property.
161       mshtml: Fix string leak on NamespaceError.
162       mshtml: Implement responseType prop for XMLHttpRequest.
163       mshtml: Implement "text" type response for XMLHttpRequest.
164       include: Add IHTMLDOMNode3 to the HTMLDOMNode dispinterfaces.
165       include: Add DOMDocumentType dispinterface and coclass.
166       mshtml: Implement document.doctype.
167       mshtml: Implement DocumentType node's name prop.
168       mshtml: Handle lack of window in methods for detached documents.
170 Giovanni Mascellani (5):
171       xactengine3_7/tests: Test notifications when loading a wave bank.
172       faudio: Import upstream commit e3c444e4f819d2364a6adb0ae73b1d01185b1e93.
173       xactengine3_7: Forward wave bank notifications to the application.
174       mfplat/tests: Mark some tests as broken on Win 8 and 10 v1507.
175       mfplat/tests: Merge and reorganize image format tests.
177 Hugh McMaster (12):
178       regedit: Use a separate dialog proc function for string data types.
179       regedit: Pass updated REG_SZ and REG_EXPAND_SZ data via 'struct edit_params'.
180       regedit: Pass updated REG_MULTI_SZ data via 'struct edit_params'.
181       regedit: Use 'struct edit_params' with read_value().
182       regedit: Update binary data via update_registry_value().
183       regedit: Set the dlgproc value name via a function, not a global.
184       regedit: Update the listview item without reloading the value data.
185       gitlab: Build-Depend on libfreetype-dev.
186       regedit: Free temporary buffer when working with REG_DWORD and REG_QWORD values.
187       regedit: Use zero as a default for REG_DWORD and REG_QWORD values.
188       regedit: Use zero as a REG_DWORD/REG_QWORD default if edit control is empty.
189       regedit: Limit REG_DWORD/REG_QWORD input length by value type and format.
191 Jacek Caban (43):
192       user32: Avoid using NtUserDispatchMessage in DispatchMessage.
193       win32u: Remove no longer needed NtUserDispatchMessageA.
194       win32u: Avoid using client callbacks for NtUserSendMessage.
195       ntdll: Suppress callback exceptions in KiUserCallbackDispatcher.
196       win32u: Use syscall interface for NtUserDispatchMessage.
197       win32u/tests: Add tests for catching exceptions from timer proc.
198       win32u: Use syscall interface for NtUserMsgWaitForMultipleObjectsEx.
199       win32u: Use syscall interface for NtUserMessageCall and NtUserTrackPopupMenuEx.
200       win32u: Get rid of no longer needed NtUserSetCallbacks.
201       win32u: Use syscall interface for NtUserGetMessage.
202       win32u: Use syscall interface for message functions.
203       winex11: Use __wine_unix_call.
204       wineandroid: Use __wine_unix_call.
205       winemac: Use __wine_unix_call.
206       win32u: Use syscall interface for more input functions.
207       win32u: Use syscall interface for more user painting functions.
208       win32u: Use syscall interface for NtUserCallHwnd and NtUserCallHwndParam.
209       user32: Use syscall interface for NtUserCall* functions.
210       win32u: Use syscall interface for clipboard functions.
211       win32u: Use syscall interface for more sysparams functions.
212       win32u: Use syscall interface for cursor icon functions.
213       win32u: Use syscall interface for more input functions.
214       win32u: Use syscall interface for NtUserDisableThreadIme.
215       win32u: Use syscall interface for NtUserCreateWindowEx and NtUserDestroyWindow.
216       win32u: Use syscall interface for winpos functions.
217       win32u: Use syscall interface for menu functions.
218       win32u: Use syscall interface for scroll bar functions.
219       win32u: Use syscall interface for NtUserSetWindow* functions.
220       win32u: Use syscall interface for more windowing functions.
221       win32u: Use syscall interface for window class functions.
222       win32u: Use syscall interface for NtUserSystemParametersInfo.
223       wow64win: Sort gdi syscall thunks.
224       vulkan-1: Make sure that user32 is loaded before ICD.
225       winevulkan: Move __wine_get_vulkan_driver call to Unix lib.
226       winevulkan: Use syscall interface for driver functions.
227       winevulkan: Remove __wine_get_vulkan_driver PE entry point.
228       mshtml/tests: Increase tolerance in date_now test.
229       user32: Avoid using WIN_GetPtr for window handle validation.
230       user32: Use GetWindowLongPtr for GetWindowModuleFileName implementation.
231       win32u: Introduce NtUserGetDialogInfo and NtUserSetDialogInfo.
232       win32u: Introduce NtUserGetDialogProc.
233       win32u: Remove no longer needed exports.
234       user32: Inline DEFWND_ControlColor implementation.
236 Jeff Smith (3):
237       d3drm/tests: Clean up some magic values.
238       d3drm: Fix components of palette built when loading texture from file.
239       d3drm: Fix components of palette when loading texture from 8-bit BMP file.
241 Jinoh Kang (8):
242       advapi32/tests: Add tests for GetTokenInformation TokenOwner.
243       kernel32/tests: Test deletion of synchronization objects after handle close.
244       shell32: Return stub bitmap in IShellItemImageFactory::GetImage.
245       advapi32/tests: Check that each ACE is ACCESS_ALLOWED_ACE in the default DACL.
246       advapi32/tests: Test that default object owner match the token owner.
247       advapi32/tests: Test that default object group match the token primary group.
248       advapi32/tests: Test that the token default DACL uses token owner instead of token user.
249       server: Use the token owner instead of the token user for default object owner.
251 Nikolay Sivov (20):
252       dwrite: Use older interface version for fallback system collection.
253       dwrite: Add additional structure for mappings array.
254       dwrite: Filter out unusable ranges on AddMapping().
255       dwrite: Keep locales separate for fallback data.
256       dwrite: Override existing ranges with AddMapping().
257       dwrite: Duplicate mapping data when creating fallback object.
258       dwrite: Extend matching font creation helper.
259       dwrite: Implement MapCharacters() for custom fallback.
260       dwrite: Remove old system fallback logic.
261       dwrite: Add some mappings for Tahoma in the system fallback.
262       d3d11: Use CRT allocation functions.
263       d2d1/tests: Add a missing return value test (Coverity).
264       win32u: Remove some dead code from get_scroll_range() helper (Coverity).
265       user32: Remove some dead code from unpack_dde_message() (Coverity).
266       dwrite: Use u32-reads for AnalyzeScript().
267       dwrite: Use correct ranges to set DWRITE_SCRIPT_SHAPES_NO_VISUAL.
268       dwrite: Add a few more fallback ranges.
269       dwrite: Add Arabic fallback ranges.
270       win32u: Fix typo in font handle creation in NtUserDrawCaptionTemp().
271       dwrite: Fix fallback config ranges text parsing.
273 Paul Gofman (14):
274       ws2_32: Add ipv4 raw socket protocol info.
275       ws2_32/tests: Test ICMP.
276       ntdll: Support SOCK_RAW / IPPROTO_ICMP fallback over SOCK_DGRAM.
277       ntdll: Fixup ICMP packet id if SOCK_DGRAM fallback is used.
278       ntdll: Compute checksum for ICMP over SOCK_DGRAM IP header.
279       taskschd: Implement writing settings to XML.
280       schedsvc: Read task enable state from XML in SchRpcGetTaskInfo().
281       taskschd: Return SCHED_S_TASK_HAS_NOT_RUN from regtask_get_LastRunTime() stub.
282       shell32: Don't quote args substituted through wildcard in SHELL_ArgifyW().
283       shell32: Handle file extensions in SHELL_FindExecutableByVerb().
284       loader/wine.inf: Add runas shell execute verb.
285       ntdll: Preserve rbx register when calling DLL entry point on x64.
286       msxml3: Use node_get_text() in domelem_get_nodeTypedValue() if no type is present.
287       opengl32/tests: Remove depth 32 / stencil 0 test in test_choosepixelformat().
289 Philip Rebohle (1):
290       winevulkan: Fill LUID info in VkPhysicalDeviceVulkan11Properties.
292 Rémi Bernon (22):
293       ntdll: Use a block member in large blocks.
294       ntdll: Pass a struct block to (find|validate)_large_block.
295       ntdll: Fixup the RtlWalkHeap entry pointer before subheap lookup.
296       mf: Split MFCreateTopoLoader to topology_loader.c.
297       mf: Check whether node is already in the topology before cloning.
298       mf: Use a branch list instead of node marker in the topology loader.
299       mf: Better implement topology loader graph resolution.
300       mf: Implement topology_node_get_type_handler for all node types.
301       winex11.drv: Set desktop settings handler before updating display devices.
302       winemac.drv: Introduce new display_mode_to_devmode helper.
303       win32u: Introduce new add_mode device manager callback.
304       win32u: Read and cache adapter modes from the registry.
305       dinput/tests: Wait for Acquire to complete when injecting input.
306       dinput/tests: Add some rawinput joystick tests.
307       win32u: Enumerate mouse and keyboard devices first and skip duplicates.
308       win32u: Read rawinput device preparsed data using virtual memory.
309       win32u: Fix thread safety when accessing rawinput device data.
310       win32u: Use a static size array for rawinput device path.
311       win32u: Use a struct list to keep rawinput devices.
312       win32u: Implement NtUserGetRegisteredRawInputDevices on the client side.
313       server: Use the client provided rawinput registered device array.
314       maintainers: Assume maintainership of input sections.
316 Santino Mazza (4):
317       jscript: Return ParseProcedureText when compile fails.
318       riched20/tests: When selection is out of view, the scrollbar should move.
319       riched20: Ensure that cursor is visible when selecting text.
320       riched20/test: Add scrolling test for richole.
322 Torge Matthies (2):
323       msvcr100: Make all exception ctors with a string parameter trace the string.
324       msvcr100: Implement invalid_multiple_scheduling exception.
326 Zebediah Figura (25):
327       ws2_32/tests: Add more tests for SO_CONNECT_TIME.
328       ws2_32/tests: Test FD_CONNECT with UDP sockets.
329       ws2_32/tests: Add some tests for connecting a UDP socket.
330       ws2_32/tests: Test polling for AFD_POLL_CONNECT with UDP sockets.
331       server: Do not set connectionless sockets into the CONNECTING or CONNECTED state.
332       ws2_32/tests: Test listen() after a failed connect().
333       Revert "server: Explicitly shutdown destroyed sockets to force pending poll() calls to return.".
334       server: Always wake up pending read or write asyncs on POLLHUP or POLLERR.
335       server: Use sock_poll_event() in poll_socket().
336       server: Clear sock->errors[AFD_POLL_BIT_CONNECT_ERR] in sock_poll_event().
337       server: Record the error for connected and connectionless sockets sockets in sock_error().
338       server: Report the socket error in sock_poll_event() on POLLERR or POLLHUP.
339       server: Move sock->error setting completely out of sock_dispatch_events().
340       wined3d: Do not try to unmap already unmapped BOs in wined3d_buffer_update_sub_resource().
341       wined3d: Do not try to unmap already unmapped BOs in wined3d_texture_update_sub_resource().
342       wined3d: Assert that the BO is mapped in unmap functions.
343       wined3d: Redirect vkd3d log output to the Unix stderr.
344       ws2_32: Map AFD_POLL_RESET to the "read" set in select().
345       ws2_32: Add a FIXME for unhandled flags in select().
346       ws2_32: Map AFD_POLL_RESET to both POLLHUP and POLLERR.
347       server: Properly implement AFD_POLL_RESET.
348       d3d9: Correctly check for sysmem index buffers in d3d9_stateblock_Apply().
349       d3d9: Do not release the wined3d mutex in d3d9_device_upload_sysmem_index_buffer().
350       d3d8: Correctly check for sysmem index buffers in d3d8_device_ApplyStateBlock().
351       d3d8: Do not release the wined3d mutex in d3d8_device_upload_sysmem_index_buffer().
353 Zhiyi Zhang (6):
354       rpcrt4/tests: Add I_RpcBindingInqLocalClientPID() tests.
355       rpcrt4: Implement I_RpcBindingInqLocalClientPID().
356       include: Add IMediaParamInfo definition.
357       dsdmo/tests: Add IMediaParamInfo tests.
358       dsdmo: Add IMediaParamInfo stub interface.
359       ntdll: Restore the timezone bias cache.
362 Alexandre Julliard
363 julliard@winehq.org