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.
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 ----------------------------------------------------------------
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.
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.
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().
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.
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.
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.
116 riched20: Remove duplicate code.
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.
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.
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.
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.
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.
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.
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().
290 winevulkan: Fill LUID info in VkPhysicalDeviceVulkan11Properties.
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.
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.
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().
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.