1 The Wine development release 8.15 is now available.
3 What's new in this release:
4 - Support for TEXT print processor.
5 - Cycle Collection support in MSHTML.
6 - Cross-process memory notifications in Wow64.
9 The source is available at:
11 https://dl.winehq.org/wine/source/8.x/wine-8.15.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 8.15 (total 19):
29 - #43822 TrackMania Nations Forever (Steam) car music doesn't play
30 - #45273 Chessbase 11 cannot draw arrows
31 - #54064 ntdll:threadpool - test_tp_io() sometimes fails & crashes in Wine (GitLab CI)
32 - #54718 msvcr90:msvcr90 - test__get_current_locale() sometimes gets an unexpected refcount on w10pro64
33 - #54756 Multiple games crash on unimplemented concrt140.dll.??0_Cancellation_beacon@details@Concurrency@@QEAA@XZ (Forza Horizon 4, The Legend of Sisyphus (Andromeda Software Development))
34 - #55259 TranscendPang has corrupted graphics in-game
35 - #55286 msvcrt:file - The 64-bit test_invalid_stdin_child() sometimes gets a bad stdin handle on Windows 10
36 - #55287 msvcrt:file - The 32-bit test_pipes() fails in the new WoW mode
37 - #55333 ws2_32:sock - test_connect_events() sometimes fails in Wine
38 - #55341 Colin McRae Rally 2.0 black screen
39 - #55351 gdiplus:graphicspath - test_flatten2() fails on Windows 7 - 11
40 - #55402 CMD '!var!' not working in 'if' statement
41 - #55414 Ultimate Spider-Man: Widescreen Fix shifts HUD too much to the right
42 - #55443 Wine crashes when an image is dragged onto notepad.exe and games
43 - #55450 Softerra LDAP Browser needs LDAP_OPT_AUTO_RECONNECT
44 - #55457 Robot Battle 1.4 crashes on startup after commit 08dc691d
45 - #55471 nGlide wrapper produces black screen in games using the D3D backend
46 - #55475 Respondus LockDown Browser crashes on unimplemented function KERNEL32.dll.DiscardVirtualMemory
47 - #55500 Launching new processes in Virtual Desktops is slow and stutters the system
49 ----------------------------------------------------------------
54 cmd: Use towlower()/towupper() for WCHARs.
55 cmd: DIR command outputs free space for the path.
58 windowscodecs: Use CRT allocation functions.
59 shell32: Use CRT allocation functions.
60 xaudio2_7: Use CRT allocation functions.
61 activeds: Use CRT allocation functions.
62 mshtml: Define skip_prefix without using a magic number.
63 cryptui: Use CRT allocation functions.
64 mciavi32: Use CRT allocation functions.
65 mlang: Use CRT allocation functions.
66 mmdevapi: Use CRT allocation functions.
67 mpr: Fix double free in WNetGetResourceInformationA.
68 dmusic: Use CRT allocation functions.
69 wldap32: Report success when turning off LDAP_OPT_(ENCRYPT|ROOTDSE_CACHE|SIGN).
71 Alexandre Julliard (22):
72 winex11: Work around a false positive gcc warning.
73 ntdll: Also store syscall id and names following the syscall dispatcher pointer.
74 wow64: Reimplement syscall resolution using the syscall dispatcher name table.
75 ntdll: Implement the cross-process work list functions.
76 wow64: Create the cross-process work list.
77 ntdll: Implement RtlOpenCrossProcessEmulatorWorkConnection().
78 wow64: Send cross-process notifications.
79 wow64: Implement Wow64ProcessPendingCrossProcessItems().
80 ntdll/tests: Add tests for cross-process notifications.
81 winebuild: Ignore syscalls that point to an alias.
82 wow64: Also send notifications for failed memory management calls.
83 kernel32/tests: Remove some workarounds for old Windows versions.
84 kernel32/tests: Fix alignment issues on 64-bit.
85 kernel32/tests: Make the generated dlls relocatable.
86 kernel32/tests: Remove tests for the exact value of the stack pointer.
87 ntdll/tests: Fix alignment issues on 64-bit.
88 ntdll/tests: Allow more invalid length values on Windows.
89 ntdll/tests: Work around a Windows pointer truncation bug in CPU info.
90 oleaut32/tests: Fix a pointer truncation issue on 64-bit.
91 winmm/tests: Fix a pointer truncation issue on 64-bit.
92 scrrun: Fix pointer hashing on 64-bit.
93 gdi32: Fix buffer size parameter in GetFontFileData for 64-bit.
96 wpcap: Handle negative count for pcap_dispatch and pcap_loop.
98 Alistair Leslie-Hughes (9):
99 opcservices: Remove DECLSPEC_HIDDEN usage.
100 avifil32: Remove DECLSPEC_HIDDEN usage.
101 evr: Remove DECLSPEC_HIDDEN usage.
102 hhctrl.ocx: Remove DECLSPEC_HIDDEN usage.
103 dxdiagn: Remove DECLSPEC_HIDDEN usage.
104 netcfgx: Remove DECLSPEC_HIDDEN usage.
105 schedsvc: Remove DECLSPEC_HIDDEN usage.
106 comctl32: Remove DECLSPEC_HIDDEN usage.
107 msvcrt: Remove DECLSPEC_HIDDEN usage.
110 winex11.drv: Mark drawable as dirty when setting pixel format.
112 Bartosz Kosiorek (2):
113 gdiplus: Improve performance by switching loops and fix size.
114 gdiplus: Add support for GdipPathIterNextPathType.
117 include: Add KnownFolders runtimeclass in windows.storage.idl.
118 include: Add ApplicationData runtimeclass in windows.storage.idl.
119 include: Add IRandomAccessStream generic types in windows.storage.streams.idl.
120 uiautomationcore: Fix typo with TreeScope_Subtree name.
121 include: Add AudioProcessing enum in windows.media.idl.
122 include: Add Windows.Media.Capture.MediaCategory enumeration.
123 include: Add Windows.Media.Render.AudioRenderCategory enumeration.
124 include: Add Windows.Media.Effects.AudioEffect runtimeclass.
127 kerberos: Ensure unixlib function tables and enum stay in sync.
128 mountmgr.sys: Ensure unixlib function tables and enum stay in sync.
129 winebus.sys: Ensure unixlib function tables and enum stay in sync.
132 include: Add [_w]getenv_s.
134 Davide Beatrici (14):
135 winepulse: Fix crash when requesting exclusive mode with an unsupported format.
136 wineoss: Update device cache in get_device_guid().
137 winepulse: Open/create driver registry key in get_device_guid().
138 winealsa: Export get_device_guid().
139 winecoreaudio: Export get_device_guid().
140 wineoss: Export get_device_guid().
141 winepulse: Export get_device_guid().
142 mmdevapi: Import get_device_guid() from driver.
143 winepulse: Move GetEndpointIDs into mmdevapi.
144 winealsa: Remove GetEndpointIDs.
145 winecoreaudio: Remove GetEndpointIDs.
146 wineoss: Remove GetEndpointIDs.
147 mmdevapi: Simplify load_driver_devices() by combining loops and removing unneeded allocation(s).
148 mmdevapi: Move name string duplication in MMDevice_Create() from caller.
151 cmd: Fixed var substring in 'enableDelayedExpansion' mode.
153 Dmitry Timoshkov (1):
154 ntdll: Implement NtCreateToken().
157 dbghelp: Fix sign extension issues on 32bit compilation.
158 ntdll/tests: Add test for Win10 OutputDebugStringW evolution.
159 ntdll/tests: Introduce enumeration to handle stages in test_debugger().
160 ntdll/tests: Add tests for debuggee and new Win10 unicode debug strings.
161 kernelbase: Emit DBG_PRINTEXCEPTION_WIDE_C from OutputDebugStringW.
162 kernelbase: Implement WaitForDebugEventEx().
163 kernel32/tests: Fix spurious failures in console:test_wait() test.
164 kernel32/tests: Only access ProcessGroupId field when present.
165 kernel32/tests: Add tests for group and console flags in CreateProcess.
166 server: Separate console and new group flag (CreateProcess).
167 kernel32/tests: Extend to new process group tests for CreateProcess.
168 kernelbase: Correctly handle new process group flag in CreateProcess.
171 user32/tests: Test cross-platform use of scroll functions.
172 user32/tests: Use winetest context in ok_sequence.
173 user32: Remove some todo's for working tests.
174 user32/tests: Share code between ok_sequence and dump_sequence.
175 user32/tests: Distinguish between extra and missing messages.
176 user32/tests: Always generate a description for WM_NCCALCSIZE.
177 mscoree/tests: Catch expected exception in loadpaths.exe.
178 user32/tests: Mark an occasional Windows behavior as broken.
180 Etaash Mathamsetty (4):
181 ntdll: Allow NULL timeout in NtCreateNamedPipeFile.
182 ntdll: Add semi-stub for NtOpenKeyTransactedEx.
183 kernelbase: Add GetPackagePathByFullName stub.
184 wevtapi: Add stub for EvtCreateBookmark.
186 Gabriel Ivăncescu (37):
187 mshtml: Traverse variants using a helper function.
188 mshtml: Use destructor in the vtbl for PerformanceTiming.
189 mshtml: Implement Cycle Collection for HTMLPerformance.
190 mshtml: Implement Cycle Collection for HTMLPerformanceNavigation.
191 mshtml: Implement Cycle Collection for objects that don't require traversal.
192 mshtml: Implement Cycle Collection for HTMLDOMAttribute.
193 mshtml: Implement Cycle Collection for HTMLAttributeCollection.
194 mshtml: Implement Cycle Collection for HTMLCSSStyleDeclaration.
195 mshtml: Implement Cycle Collection for HTMLStyleSheet.
196 mshtml: Implement Cycle Collection for HTMLStyleSheetsCollection.
197 mshtml: Implement Cycle Collection for HTMLStyleSheetRulesCollection.
198 mshtml: Implement Cycle Collection for HTMLStyleSheetRule.
199 mshtml: Use actual name when traversing variant.
200 mshtml: Implement Cycle Collection for HTMLDOMChildrenCollection.
201 mshtml: Implement Cycle Collection for HTMLElementCollection.
202 mshtml: Implement Cycle Collection for HTMLRectCollection.
203 mshtml: Implement Cycle Collection for HTMLRect.
204 mshtml: Implement Cycle Collection for DOMTokenList.
205 mshtml: Implement Cycle Collection for MutationObserver.
206 mshtml: Implement Cycle Collection for HTMLDOMImplementation.
207 mshtml: Implement Cycle Collection for MediaQueryList.
208 mshtml: Implement Cycle Collection for HTMLTextRange.
209 mshtml: Implement Cycle Collection for HTMLDOMRange.
210 mshtml: Implement Cycle Collection for HTMLSelectionObject.
211 mshtml: Implement Cycle Collection for HTMLEventObj.
212 mshtml: Implement Cycle Collection for DOM Events.
213 winex11: Avoid querying GPU properties in get_host_primary_monitor_rect.
214 mshtml: Actually traverse the object-specific edges.
215 mshtml: Separate the HTMLLocation from the outer window.
216 mshtml: Implement Cycle Collection for HTMLLocation.
217 mshtml: Implement Cycle Collection for outer windows.
218 mshtml: Get rid of NULL checks for the dispex vtbl.
219 mshtml: Implement Cycle Collection for inner windows.
220 mshtml: Move HTMLPerformanceNavigation related fields to the window.
221 mshtml: Move PerformanceTiming related fields to the window.
222 mshtml: Implement Cycle Collection for HTMLPerformanceTiming.
223 mshtml: Implement Cycle Collection for XMLHttpRequest.
226 gdiplus/tests: Simplify ICONINFO initialization.
227 gdiplus/tests: Create helper function for testing image properties.
228 gdiplus/tests: Add test for cursor with GdipCreateBitmapFromHICON.
229 gdiplus/tests: Add test for mask-only icon with GdipCreateBitmapFromHICON.
230 gdiplus: Fix GdipCreateBitmapFromICON return status with mask-only icon.
231 gdiplus/tests: Add test for 32 bpp icon with GdipCreateBitmapFromHICON.
232 gdiplus/tests: Add test for non-square icon with GdipCreateBitmapFromHICON.
233 gdiplus/tests: Add test for bitmap locked data from GdipCreateBitmapFromHICON.
234 gdiplus: Fix GdipCreateBitmapFromHICON bitmap data.
235 shlwapi/tests: Fix SHFormatDateTime test during DST.
236 shlwapi: Fix SHFormatDateTime implementation during DST.
238 Lorenzo Ferrillo (1):
239 secur32: Increment iteration index after load_package error.
242 wldp: Add WldpGetLockdownPolicy stub.
245 cryptui: LoadStringW gets characters as size, not bytes.
248 d3dcompiler/tests: Avoid interpolation filters in test_samplers().
251 include: Add dxcore_interface.h file.
252 include: Add dxcore.h file.
253 dxcore: Add stub DLL.
254 dxcore: Add DXCoreCreateAdapterFactory() stub.
255 apisetschema: Add ext-ms-win-dxcore-l1-1-0.
258 wldp: Add WldpIsDynamicCodePolicyEnabled() stub.
261 user32/tests: Test more flags for MessageBox.
262 user32/msgbox: Implement MB_TOPMOST.
263 dinput: Unregister raw input on foreground loss.
266 msvcr70: Don't set SSE2 control register in _control87.
267 wmic: Use fwprintf to output error messages.
268 wmic: Fix output when redirected to pipe.
269 msvcr90/tests: Restore thread locale settings in _getptd tests to avoid side effects.
270 msvcr90/tests: Reorder locale refcount tests to workaround leak in _create_locale.
271 msvcrt/tests: Make registry handle inheritable in test_invalid_stdin tests.
272 ntdll: Don't overwrite last byte of RuntimeInfo if odd number of bytes is used.
273 localspl: Store fallback print processor in AddPrinterDriver.
274 localspl: Try fallback print processor if datatype is not supported.
275 winprint: Implement TEXT print processor.
276 msvcr110: Add Context::IsCurrentTaskCollectionCanceling implementation.
277 msvcr110: Add _Cancellation_beacon class implementation.
278 msvcr120/tests: Remove workaround for not implemented _StructuredTaskCollection::ctor().
279 msvcr120/tests: Add _Cancellation_beacon tests.
280 msvcr120/tests: Add Context::IsCurrentTaskCollectionCanceling tests.
283 include: Add Windows.Management.Deployment.DeploymentResult runtimeclass definition.
284 include: Add Windows.Management.Deployment.PackageUserInformation runtimeclass definition.
285 include: Add Windows.Management.Deployment.PackageManager runtimeclass definition.
286 include: Add Windows.Storage.Streams.RandomAccessStreamReference runtimeclass definition.
287 include: Add Windows.ApplicationModel.AppDisplayInfo runtimeclass definition.
288 include: Add Windows.ApplicationModel.PackageStatus runtimeclass definition.
289 widl: Guard against re-import of the main input file.
290 include: Add Windows.ApplicationModel.Core.AppListEntry runtimeclass definition.
291 include: Add Windows.ApplicationModel.IPackage3 interface definition.
292 winegstreamer: Don't append videoconvert for video/x-wmv output.
293 include: Add MF_BYTESTREAM_EFFECTIVE_URL GUID declaration.
294 mf/tests: Add some network scheme resolver tests.
295 mf/scheme_handler: Split file scheme handler to scheme_handler.c.
296 mf/scheme_handler: Implement http(s):// scheme handler using urlmon.
297 mf/session: Use local variables to access transform node streams.
298 mf/session: Use a helper to deliver transform node requested samples.
299 mf/session: Drain transform node input streams individually.
300 mf/session: Drain remaining requests in transform_node_deliver_samples.
301 mf/session: Use helpers to push and pop samples for transform streams.
302 mf/session: Push transform input samples directly to ProcessInput.
303 mf/session: Request more samples from upstream when necessary.
304 mf/session: Increase the request count when requests are already queued.
305 include: Prefix winetest global counters with winetest_.
306 include: Rename winetest thread data struct and getter.
307 include: Prefix winetest color constants with winetest_.
308 include: Make general winetest helpers static inline.
309 include: Initialize winetest global counters to 0.
310 include: Rename winetest_printf to winetest_print_location.
311 include: Pass a temporary buffer to winetest_elapsed.
312 include: Introduce winetest wrappers for vprintf and GetTickCount.
313 include: Avoid using strcmp directly in wine/test.h.
314 dinput: Get rid of duplicated winetest helpers.
315 win32u: Init vsc2vk in NtUserGetKeyNameText only if necessary.
316 win32u: Init vsc2vk in NtUserMapVirtualKeyEx only if necessary.
317 win32u: Init vsc2char in NtUserMapVirtualKeyEx only if necessary.
320 crypt32: Fix CMS SignedData encoding.
323 wbemprox: Add Win32_SoundDevice query test for Caption property.
324 wbemprox: Add Caption property in Win32_SoundDevice.
325 wbemprox: Add NetConnectionID, NetEnabled properties in Win32_NetworkAdapter.
327 Zebediah Figura (13):
328 wined3d: Move struct wined3d_texture_gl to wined3d_gl.h.
329 wined3d: Move struct fbo_entry to wined3d_gl.h.
330 wined3d: Move struct wined3d_sampler_gl to wined3d_gl.h.
331 wined3d: Move struct wined3d_buffer_gl to wined3d_gl.h.
332 wined3d: Move struct wined3d_rendertarget_view_gl to wined3d_gl.h.
333 wined3d: Move struct wined3d_shader_resource_view_gl to wined3d_gl.h.
334 wined3d: Move struct wined3d_unordered_access_view_gl to wined3d_gl.h.
335 wined3d: Move struct wined3d_swapchain_gl to wined3d_gl.h.
336 wined3d: Move the remaining wined3d_gl_info functions to wined3d_gl.h.
337 wined3d: Move struct wined3d_format_gl to wined3d_gl.h.
338 wined3d: Move the remaining GL-specific definitions to wined3d_gl.h.
339 wined3d: Move the wined3d_gl.h include to individual files.
340 server: Signal AFD_POLL_BIT_WRITE at the same time as AFD_POLL_BIT_CONNECT.