1 The Wine development release 6.18 is now available.
3 What's new in this release (see below for details):
4 - Shell32 and WineBus libraries converted to PE.
5 - Unicode data updated to Unicode version 14.
6 - Mono engine updated to version 6.4.0, with COM improvements.
7 - More work towards Dwarf 3/4 debug support.
8 - HID joystick enabled by default.
11 The source is available from the following locations:
13 https://dl.winehq.org/wine/source/6.x/wine-6.18.tar.xz
14 http://mirrors.ibiblio.org/wine/source/6.x/wine-6.18.tar.xz
16 Binary packages for various distributions will be available from:
18 https://www.winehq.org/download
20 You will find documentation on https://www.winehq.org/documentation
22 You can also get the current source directly from the git
23 repository. Check https://www.winehq.org/git for details.
25 Wine is available thanks to the work of many people. See the file
26 AUTHORS in the distribution for the complete list.
28 ----------------------------------------------------------------
30 Bugs fixed in 6.18 (total 19):
32 34584 Thai2English doesn't work with Wine-Mono
33 38011 ID Photo Maker 3.2 can't import jpegs for editing (needs avicap32.dll.capCreateCaptureWindowW implementation)
34 43109 (EZ4_Client) Crashes on start (fixed on staging)
35 48442 MPGUI crashes on start with Wine-Mono
36 50089 Far Manager 2.0 crashes on start-up
37 50244 Melodyne 5: activation via internet fails with 12152 error
38 50272 Melodyne 5: activation via internet produces "Unknown Error"
39 50498 Intel Assistive Context-Aware Toolkit (ACAT) v1.00.0 (.NET 4.5 app) setup crashes with unimplemented 'System.ServiceModel.Description.MetadataExporter.set_PolicyVersion' using Wine-Mono
40 50623 Windows ISO Downloader 8.45 - Error messages and freeze with wine-mono
41 51503 vbscript parser error in expression with # char
42 51576 Click-N-Type 3.03 virtual keyboard installer sometimes has two task panes
43 51596 Unhandled exception code c0000005 when running any 64-bit Winelib application
44 51631 winhttp:winhttp and winhttp:notification fail because echo.websocket.org is out of commission
45 51696 ntoskrnl.exe:ntoskrnl outputs too much traces (and broke the Wine tests entirely)
46 51723 Timespinner controller triggers aren't properly recognized
47 51729 Unable to find an entry point named 'UiaDisconnectProvider' in DLL 'UIAutomationCore.dll'
48 51741 Nt*PowerRequest syscalls do not exist on real Windows
49 51757 Network application crashes
50 51787 Resident Evil 7 crashes on launch
52 ----------------------------------------------------------------
57 po: Update Japanese translation.
59 Alexandre Julliard (44):
60 Revert "kernel32: Forward power request functions to ntdll."
61 Revert "ntdll: Stub power request APIs."
62 comdlg32: Fix path validation of UNC paths in the file dialog.
63 shell32: Create the PIDLs even if IFileSystemBindData::GetFindData returns an error.
64 shell32: Fix the shell folder file attributes.
65 shell32: Validate the destination name in IShellFolder::SetNameOf.
66 shell32: Don't store the short file name in the PIDL.
67 urlmon/tests: Use robots.txt on winehq.org to avoid a redirection.
68 shell32: Allow specifying the child folder CLSID in SHELL32_BindToChild().
69 shell32: Use the standard shell folder implementation for Unix folders.
70 shell32: Load the XDG user dirs config file using Win32 APIs.
71 shell32: Add a helper to retrieve trash item data without copying it.
72 shell32: Reimplement trash support using Win32 APIs.
73 winebus.sys: Fix a typo in find_device_from_iohid().
74 winebus.sys: Remove the no longer used CFStringToWSTR function.
75 wineboot: Add a generic mechanism for pre-installing things before the main wine.inf section.
76 loader: Start the mount manager before registering dlls.
77 mountmgr: Make creating a backup optional for shell folders.
78 mountmgr: Support $HOME paths to define shell folders.
79 shell32: Use the mount manager for initial shell folders creation.
80 shell32: Build with msvcrt.
81 shell32: Check for macOS at runtime.
82 shell32: Use designated initializers and wide char string literals in known folder table.
83 shell32: Use wide char string literals.
84 makefiles: Build the unix library name when parsing the sources.
85 makefiles: Link with the full library name for Unix library imports.
86 makefiles: Add a -mcygwin flag to specify the inverse of -mno-cygwin.
87 makefiles: Make -mno-cygwin the default.
88 winegcc: Skip the post-link steps for Unix libraries.
89 makefiles: Normalize the host architecture in makedep instead of configure.
90 makefiles: Explicitly name the Unix library in the makefile instead of using --subsystem unixlib.
91 configure: Remove some obsolete shared library checks.
92 makefiles: Don't use winegcc to build native Unix libraries.
93 wrc: Remove no longer used cmdline copy.
94 ntdll: Copy __wine_setjmpex/longjmp implementation to avoid importing winecrt0.
95 makefiles: Allow including files with relative paths.
96 makefiles: Use explicit header path for sanity checks.
97 winebuild: Unify the strarray implementation with the one from makedep.
98 winebuild: Use strarrays for the argument lists.
99 winegcc: Unify the strarray implementation with the one from makedep.
100 wpp: Move the preprocessor code into wrc.
101 wrc: Use the standard memory allocation wrappers in the preprocessor.
102 wrc: Use asserts instead of explicit internal error.
103 wrc: Use the existing global variable for pedantic mode.
105 Alistair Leslie-Hughes (6):
106 include: Add icodecapi.idl.
107 include: Avoid C++ keyword.
108 include: Fix compiling with C++.
109 include: Add ISpAudio interface.
110 sapi: Support create parameter in ISpObjectToken::SetId.
111 sapi: Support create parameter in ISpObjectTokenCategory::SetId.
114 po: Update Lithuanian translation.
117 ntdll: Factor out SMBIOS table creation.
118 ntdll: Factor out get_smbios_from_iokit().
119 ntdll: Generate SMBIOS tables on Apple Silicon Macs.
122 ntoskrnl: Always copy the output buffer for non-buffered ioctls.
123 ntdll: Use posix_fallocate() instead of fallocate().
126 user32/tests: Mark some winevents optional in the SetParent sequence.
127 user32/tests: Fix SetParent/SetFocus message sequences to support winevents.
128 user32/tests: Add optional message to fix ShowWindow test.
129 user32/tests: Mark some winevents optional in the ShowWindow sequences.
130 user32/tests: Fix ShowWindow() message sequences to support winevents.
131 user32/tests: Fix occasional failure in ShowWindow() message sequences.
132 user32/tests: Fix occasional failure in test_messages() message sequences.
133 user32/tests: Fix existing winevents in test_messages() message sequences.
134 user32/tests: Add missing winevents to test_messages() message sequences.
135 user32/tests: Add missing winevents to test_setwindowpos() message sequences.
136 oleacc: Check proper GUI thread for window focus.
137 oleacc: Add STATE_SYSTEM_FOCUSED test for default client object.
138 oleacc: Add tests for AccessibleObjectFromEvent.
139 user32/tests: Fix occasional test failure in test_ShowWindow().
140 user32/tests: Fix existing winevents in test_showwindow() message sequences.
141 user32/tests: Add missing winevents to test_showwindow() message sequences.
142 user32/tests: Fix existing winevents in invisible_parent_tests() message sequences.
143 oleacc: Add Client_get_accFocus implementation.
144 oleacc: Add Client_get_accFocus tests.
145 user32/tests: Fix occasional failure in WmShowNoActivate_2 message sequence.
146 user32/tests: Fix existing winevents in test_mdi_messages() message sequences.
147 user32/tests: Add missing winevents to test_mdi_messages() message sequences.
148 user32/tests: Fix missing messages in test_mdi_messages() message sequences.
149 user32/tests: Fix existing winevents in test_button_messages() message sequences.
150 user32/tests: Add missing winevents to test_button_messages() message sequences.
151 user32/tests: Fix missing messages in test_button_messages() message sequences.
152 user32/tests: Fix existing winevents in test_autoradio message sequences.
153 user32/tests: Fix test_listbox_messages() message sequences to support WinEvents.
154 user32/tests: Fix test_paint_messages() message sequences to support WinEvents.
155 user32/tests: Fix existing winevents in test_accelerators() message sequences.
156 user32/tests: Add missing winevents to test_accelerators() message sequences.
157 user32/tests: Fix existing winevents in test_DestroyWindow() message sequences.
158 user32/tests: Fix existing winevents in test_edit_messages() message sequences.
159 user32/tests: Add missing winevents to test_edit_messages() message sequences.
160 user32/tests: Add missing winevents to test_quit_message() message sequence.
161 user32/tests: Add missing winevents to test_SetActiveWindow() message sequences.
162 user32/tests: Add missing winevents to test_restore_messages() message sequence.
163 user32/tests: Fix existing winevents in test_SetWindowRgn() message sequences.
164 user32/tests: Add missing winevents to test_SetWindowRgn() message sequences.
165 user32/tests: Fix existing winevents in test_dialog_messages() message sequences.
166 user32/tests: Add missing winevents to test_dialog_messages() message sequences.
167 user32/tests: Add missing winevents to test_EndDialog() message sequences.
170 msxml3/tests: Avoid double-free using BSTR helper.
173 winegstreamer: Duplicate source shutdown path into constructor with leak fixes.
174 winegstreamer: Allocate source media buffers in the PE components.
175 winegstreamer: Replace source pad interface with GstAppSrc.
176 winegstreamer: Fix return code in init_gst failure case.
178 Dmitry Timoshkov (1):
179 riched20: Don't create custom heap.
181 Eduard Permyakov (2):
182 winex11.drv: Add 'EDID' registry key to every monitor device.
183 dsound: Commit next audio chunk between play cursor and write cursor to playing.
186 dbghelp/dwarf: Don't recompute location when said location is complex.
187 dbghelp/dwarf: Properly parse 32 vs bit 64bit entities.
188 dbghelp/dwarf: Correctly handle attributes according to 32bit or 64bit format.
189 dbghelp/dwarf: Add support for FORM_loc_offset and FORM_sec_offset.
190 dbghelp/dwarf: Add support for FORM_exprloc.
191 dbghelp/dwarf: Handle errors in dwarf2_fill_attr by returning a boolean.
192 dbghelp/dwarf: Add definitions of some GNU extensions for FORMs.
193 dbghelp/dwarf: Validate that a string is in the section boundary before using it.
194 dbghelp/dwarf: Detect auto reference between a dwarf's DIE and its type.
195 dbghelp/dwarf: Properly parse line number header for DWARF4 debug info.
196 dbghelp/dwarf: Separate CU handling from module handling.
197 dbghelp/dwarf: Move the symt_cache from the unit context into the module context.
198 dbghelp/dwarf: Keep open and keep track of parse_context_t inside a module_context_t.
199 dbghelp: Split the parsing of a dwarf compilation unit in two phases.
200 dbghelp/dwarf: Add ability to get to a DIE in a different CU.
201 dbghelp/dwarf: Support DW_FORM_ref_addr in type DIE lookup using the new cross-CU DIE mechanisms.
202 dbghelp/dwarf: Detect out of section sibling DIE information.
203 dbghelp/dwarf: Add reference for a DIE to its CU.
204 winedbg: Show dwarf version(s) used for a module.
205 dbghelp: Separate alternate debug file lookup functions.
206 dbghelp: Added support for locating a .dwz file (GNU extension) attached to a debug file.
207 dbghelp/dwarf: Store a potential link to an external DWZ file in the dwarf2 module's information.
208 dbghelp/dwarf: Handle DW_FORM_GNU_strp_alt (string located in an alternate DWZ file).
209 dbghelp/dwarf: Load the alternate dwarf file content as we do for a regular dwarf module.
210 dbghelp/dwarf: No longer pass a parse context to dwarf2_find_attribute.
211 dbghelp/dwarf: No longer pass a unit context to dwarf2_get_cpp_name.
212 dbghelp/dwarf: Fold printing info about unit context when printing debug_info's.
213 dbghelp/dwarf: No longer pas a unit context when parsing debug_info content.
214 dbghelp/dwarf: Add a helper to jump into another debug_info.
215 dbghelp/dwarf: Add proper support for DW_FORM_GNU_ref_alt.
216 dbghelp/dwarf: When loading a DWZ alternate file, don't force loading of all debug_infos.
217 dbghelp/dwarf: In DW_AT_ranges, the values are relative to the start of the CU.
218 dbghelp/dwarf: Properly detect base address selection in AT_ranges.
219 dbghelp: Remove unneeded #include <limits.h>.
220 dbghelp/dwarf: Handle some Dwarf4 tweaks in high / low pc attributes.
221 dbghelp/dwarf: Added support for parsing dwarf's 3 restrict type TAG.
222 dbghelp/dwarf: Support enumeration as index type for arrays.
223 dbghelp/dwarf: Added support for DW_TAG_subrange_type in various places.
224 dbghelp/dwarf: Support more dwarf's TAG related to types in udt parsing.
225 dbghelp/dwarf: Handle C++ rvalue reference type as a reference.
228 mscoree: Update Wine Mono to 6.4.0.
231 msi: Set dialog as parent in subsequent dialog.
233 Gabriel Ivăncescu (3):
234 ntdll: Implement JobObjectBasicProcessIdList for NtQueryInformationJobObject.
235 mshtml: Fix out-of-bounds props access.
236 jscript: Return the failure code if the value invoke failed.
239 ntdll: Fix init_builtin_dll for FreeBSD again.
241 Giovanni Mascellani (2):
242 wine.inf: Fill gaps in Dynamic DST timezone data.
243 wine.inf: Fix timezone data for Samoa.
245 Guillaume Charifi (2):
246 ws2_32: Add tests for IOCTL_AFD_POLL exclusive flag.
247 ntdll: Implement exclusive flag for IOCTL_AFD_POLL.
250 msi: Don't leak the file handle on error in cabinet_close_file_info().
251 winhttp: Don't fail the request if authorization fails.
252 adsldp: Fix error returned from openobj_OpenDSObject().
253 winhttp: Add a stub for WinHttpSetOption(WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL).
254 winhttp: Add a stub for WinHttpQueryOption(WINHTTP_OPTION_HTTP_PROTOCOL_USED).
255 winhttp: Consistently validate the buffer in option query functions.
256 winhttp: Pass a socket pointer to send_bytes() and receive_bytes().
257 winhttp: Read any data left in the request buffer for websocket connections.
258 winhttp: Use ws.ifelse.io for websocket tests.
259 winhttp: Call read_data() at least once in drain_content().
260 winhttp: Call drain_content() before clear_response_headers().
261 winhttp: Fix return value for relative redirects.
262 winhttp: Don't remove content-type/length headers in handle_redirect().
263 winhttp/tests: Add redirect tests.
266 wined3d: Do not attempt to restore GL contexts corresponding to wined3d contexts in wined3d_context_gl_cleanup().
267 wined3d: Get rid of the "render_to_fbo" field from the wined3d_swapchain structure.
268 wined3d: Use GDI blits for partial presents with COPY swap effects.
269 wined3d: Use WGL_SWAP_COPY_ARB for swapchains with COPY swap effects, if available.
270 wined3d: Use wined3d_mask_from_size() in wined3d_fixup_alpha().
271 d2d1: Check the vertex count again after duplicate removal in d2d_path_geometry_triangulate().
274 wineps.drv: Export DrvDeviceCapabilities.
275 winspool: Use configuration file for DeviceCapabilitiesW.
276 winspool: Use DeviceCapabilitiesW for DeviceCapabilitiesA.
277 wineps: Introduce DrvDocumentProperties entry point.
278 winspool: Use configuration file for DocumentPropertiesW.
279 winspool: Use DocumentPropertiesW for DocumentPropertiesA.
280 gdi32: Remove ordinal exports.
281 gdi32: Remove no longer used printer config driver entry points.
282 gdi32: Introduce get_gdi_object_type.
283 gdi32: Direcly use ntgdi functions in dib driver.
284 win32u: Use NtGdiSetBrushOrg in NtGdiMaskBlt.
285 win32u: Directly use NtGdiGetDeviceCaps in ntgdi functions.
286 gdi32: Directly use ntgdi functions in painting.c.
287 gdi32: Access stretch mode directly from DC in NtGdiTransparentBlt.
288 gdi32: Avoid calling gdi32 functions from ntgdi functions.
289 gdi32: Use NtQuerySystemInformation instead of GetSystemInfo.
290 gdi32: Directly use ntdll in dib.c.
291 gdi32: Directly call dib driver functions in dibdrv_wglCreateContext.
292 include: Add some missing ntgdi declarations.
293 gdi32: Move load_script_name call to EnumFontFamiliesExW.
294 gdi32: Move CreateScalableFontResourceW to text.c.
295 gdi32: Handle scalable fonts directly in AddFontResourceExW and RemoveFontResourceExW.
296 gdi32: Pass NT paths to ntgdi functions.
297 gdi32: Store NT paths in font structs.
298 gdi32: Use NtQueryFullAttributesFile directly in alloc_gdi_font.
299 gdi32: Directly use ntdll in load_directory_fonts.
300 gdi32: Directly use ntdll for font mutex.
301 gdi32: Remove workaround for old freetype versions.
302 gdi32: Directly use ntdll instead of RegDeleteTreeW.
303 gdi32: Directly use ntdll in load_gdi_font_subst.
304 gdi32: Directly use ntdll in load_gdi_font_replacements.
305 gdi32: Directly use ntdll in add_face_to_cache.
306 gdi32: Directly use ntdll in load_face_from_cache.
307 gdi32: Directly use ntdll in load_font_list_from_cache.
308 gdi32: Directly use ntdll in remove_face_from_cache.
309 gdi32: Directly use ntdll in load_system_links.
310 gdi32: Directly use ntdll in add_font_list.
311 gdi32: Directly use ntdll in update_font_association_info.
312 opencl: Fix compilation on MSVC targets.
313 gdi32: Don't use MulDiv in ntgdi functions.
314 gdi32: Avoid calling kernel32 from ntgdi functions.
317 wined3d: Allow constant buffers to be forced to be write-mappable.
318 wined3d: Make wined3d_texture_update_map_binding() backend-independent.
319 wined3d: Implement support for buffer objects in wined3d_texture_vk_upload_data().
320 wined3d: Implement support for buffer objects in wined3d_texture_vk_download_data().
321 wined3d: Keep PBO support flag in d3d_info.
322 wined3d: Implement WINED3D_LOCATION_BUFFER for textures in the Vulkan backend.
323 wined3d: Avoid the pipeline barrier when mapping buffer objects backing textures.
324 wined3d: Avoid stalling the pipeline on 3D blits.
325 wined3d: Fix typo in wined3d_texture_vk_download_data().
327 Michael Stefaniuc (1):
328 sxs: Don't assign a COM object to the 3rd param of QueryInterface.
331 rpcrt4/tests: Always run tests that don't require special permissions.
332 ole32: Use access mask from bind context in file moniker's BindToStorage().
333 ole32/filemoniker: Remove helper used once.
334 ole32: Simplify IsEqual() for file monikers.
335 d3dx10_37/tests: Enable tests.
336 d3dx10: Handle null filename for W->A conversion explicitly in D3DX10CreateEffectFromResourceW().
337 ole32: Simplify GetDisplayName() for class moniker.
338 ole32: Simplify IsEqual() for class moniker.
339 ole32: Simplify CreateClassMoniker().
340 ole32: Simplify CommonPrefixWith() for class moniker.
341 ole32: Use single call to read/write serialization header of class moniker.
342 ole32: Implement ParseDisplayName() for class moniker.
343 ole32: Handle extra class moniker data on load/save.
344 ole32: Improve class moniker display name parsing.
345 oleaut32: Fix uninitialized variable access in VarXor() for earlier failure paths (Coverity).
346 oleaut32: Do not use static variable for disp params.
347 services/tests: Fix printf-style helper format (Coverity).
348 widl: Remove arguments from writing calls that don't use them (Coverity).
349 kernel32/tests: Fix sprintf() arguments (Coverity).
350 msxml3/tests: Add missing return value check (Coverity).
351 tools: Update to Unicode 14.0.0.
352 dwrite/tests: Add a linebreaking test regarding LB30 rule changes in Unicode 13.
353 d3d10/effect: Handle object type D3D10_SVT_TEXTURE.
354 d3d10/effect: Release technique names on Optimize().
355 d3d10/effect: Release passes names on Optimize().
356 d3d10/tests: Add some tests for effect pools.
357 d3d10/tests: Add a test for default numeric variable values.
358 d3d10/effect: Remove no longer used fourcc symbols.
359 d3dx10_36/tests: Enable tests.
360 msi: Fixup Installer\\Patches\\<...> key path (Coverity).
361 inetcpl: Fix incorrect expression (Coverity).
362 gdi32: Fix a typo in failure path (Coverity).
363 msvcrt: Use free() on msvcrt_wstrdupa() results (Coverity).
364 secur32: Fix allocation size (Coverity).
365 sechost: Fix argument pointers array allocation size (Coverity).
366 mfplat/tests: Remove unnecessary check (Coverity).
367 mfplay: Remove some dead code (Coverity).
368 mf/evr: Remove duplicated check in GetStreamSinkCount() (Coverity).
369 oleaut32/tests: Remove unused variable.
370 oleaut32/tests: Link to SafeArrayGetVartype() directly.
371 oleaut32: Use single local variable to access missing args array in Invoke().
372 oleaut32: Remove unnecessary initialization of retval arg slot in Invoke().
373 oleaut32: Remove some local variables in Invoke() that don't improve readability.
374 mfplat/allocator: Reduce duplication by returning ready-to-queue structure from allocation helper.
375 d3d10/effect: Move effect creation API functions.
376 d3d10/effect: Partially implement D3D10CreateEffectPoolFromMemory().
377 d3d10/effect: Add a helper to parse annotations array.
378 d3d10/effect: Validate flags vs pool instance when creating child effects.
379 d3d10/effect: Reference pool in the child effect.
380 d3dx10_35/tests: Enable tests.
381 ole32/tests: Get rid of some global variables in moniker tests.
382 ole32/tests: Add a test for IBindCtx::GetRunningObjectTable().
383 ole32: Remove unnecessary helpers to create/destroy bind context.
384 ole32: Remove explicit type check in CommonPrefixWith() for item moniker.
385 ole32/composite: Return requested interface in BindToObject() in NULL left moniker path.
386 ole32/composite: Store components as a pair of top level monikers.
387 ole32/tests: Add extendable tests for generic composite simplification.
388 ole32/composite: Do not rely on antimoniker composition in ParseDisplayName().
389 ole32/composite: Always go through running object table in GetTimeOfLastChange().
390 d3d10/effect: Forward to pool effect in GetVariableByName().
391 d3d10/effect: Forward to pool effect in GetVariableByIndex().
392 d3d10/effect: Forward to pool effect in GetVariableBySemantic().
393 d3d10/effect: Forward to pool effect in GetConstantBufferByIndex().
394 d3d10/effect: Forward to pool effect in GetConstantBufferByName().
395 d3dx10_34/tests: Enable tests.
396 gdi32: Handle NULL name when setting registry value.
397 ole32/itemmoniker: Always use generic composition in ComposeWith().
398 ole32/pointermoniker: Always use generic composition in ComposeWith().
399 ole32/classmoniker: Always use generic composition in ComposeWith().
400 ole32/tests: Simplify test monikers creation helper.
401 ole32/tests: Add some tests for class moniker composition.
404 wbemprox: Copy correct substring to *namespace in parse_resource().
405 wbemprox: Propagate create_view() error code from parser.
406 wbemprox: Prepare for multiple namespaces.
407 wbemprox: Return WBEM_E_INVALID_CLASS from create_view() if namespace is empty.
408 wbemprox: Add Microsoft\\Windows\\Storage namespace.
409 winex11.drv: Register GUID_DISPLAY_DEVICE_ARRIVAL interface for GPUs.
410 winhttp: Limit recursion for synchronous callback calls.
411 gdi32: Add a semi-stub for D3DKMTOpenAdapterFromDeviceName().
412 wined3d: Add GPU information for AMD VANGOGH.
415 msvcrt: Use unaligned data types in memset.
416 oleacc: Add Window_OleWindow_GetWindow implementation.
417 oleacc: Introduce helper for checking accessibility object hwnd.
418 oleacc: Remove WINAPI from accessible_create internal type.
419 msvcrt: Support z length modifier in scanf.
422 vbscript: Support date and time literals.
424 Roberto Pungartnik (1):
425 po: Update Brazilian Portuguese translation.
428 dinput8/tests: Fix inverted winetest_win_skip condition.
429 dinput8/tests: Control expected SET_FEATURE reports from the test executable.
430 dinput8/tests: Control expected GET_FEATURE reports from the test executable.
431 dinput8/tests: Control expected SET_OUTPUT reports from the test executable.
432 dinput8/tests: Control expected WRITE_REPORT reports from the test executable.
433 dinput8/tests: Control expected GET_INPUT reports from the test executable.
434 hidclass.sys: Enforce output packet lengths to match report lengths.
435 ntoskrnl.exe/tests: Fix inverted winetest_win_skip condition.
436 winexinput.sys: Return native product strings on some devices.
437 winebus.sys: Remove the now useless native product strings.
438 winebus.sys: Query manufacturer string on device creation.
439 winebus.sys: Query product string on device creation.
440 winebus.sys: Query serialnumber string on device creation.
441 winebus.sys: Remove the now useless get_string callback.
442 winebus.sys: Split destroy to a separate stop method.
443 winebus.sys: Use helpers to create and destroy unix devices.
444 winebus.sys: Allocate mouse and keyboard devices dynamically.
445 winebus.sys: Free unix device in unix_device_remove.
446 dinput8/tests: Control expected READ_REPORT reports from the test executable.
447 dinput8/tests: Add some non-polled READ_REPORT tests.
448 dinput8/tests: Don't expect any IOCTL_HID_GET_STRING call.
449 hidclass.sys: Drop input packets with unexpected length in non-polled mode.
450 dinput8/tests: Fix reported expected length in test message.
451 hidclass.sys: Complete all pending reads in polled mode only.
452 msvcrt: Improve memset performance using overlapping stores.
453 dinput8/tests: Add tests for the internal HID preparsed data structures.
454 dinput: Don't disable HID joysticks by default.
455 dinput8/tests: Add a new HID joystick test based on the HID driver.
456 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetDeviceInfo tests.
457 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetCapabilities tests.
458 winebus.sys: Move process_hid_report helper around.
459 winebus.sys: Return an event from SDL bus wait on input report.
460 winebus.sys: Return an event from UDEV bus wait on input report.
461 winebus.sys: Return an event from IOHID bus wait on input report.
462 winebus.sys: Poll all UDEV fds together in the bus_wait thread.
463 winebus.sys: Remove the now useless get_unix_device.
464 winebus.sys: Remove the DEVICE_OBJECT arg on device_start.
465 winebus.sys: Pass a unix_device pointer in every bus event.
466 winebus.sys: Remove the now useless device_compare callback.
467 winebus.sys: Move is_xbox_gamepad to unixlib.c.
468 winebus.sys: Load SDL bus mappings before calling bus_init.
469 winebus.sys: Use Rtl heap functions.
470 winebus.sys: Use Rtl CS functions.
471 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetProperty tests.
472 dinput8/tests: Add some HID joystick IDirectInput8_CreateDevice tests.
473 dinput8/tests: Add some HID joystick IDirectInputDevice8_SetDataFormat tests.
474 dinput8/tests: Add some HID joystick IDirectInputDevice8_SetEventNotification tests.
475 dinput8/tests: Add some HID joystick IDirectInputDevice8_SetCooperativeLevel tests.
476 dinput8/tests: Add some HID joystick IDirectInputDevice8_(Un)Acquire tests.
477 winebus.sys: Build with msvcrt.
478 winebus.sys: Avoid process heap allocations on the unix side.
479 winebus.sys: Use a pthread_mutex_t instead of CRITICAL_SECTION.
480 winebus.sys: Use new unixlib subsystem.
481 winebus.sys: Use wide character strings literals.
482 dinput: Fire the notification only after all events have been queued.
483 dinput8/tests: Make ret_length optional in struct hid_expect.
484 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetDeviceState tests.
485 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetDeviceData tests.
486 dinput8/tests: Add some HID joystick IDirectInputDevice8_SetProperty tests.
487 dinput8/tests: Add some HID joystick IDirectInputDevice8_EnumObjects tests.
488 hidparse.sys: Split struct hid_value_caps start_bit into start_byte / start_bit.
489 hidparse.sys: Replace all is_*range members with a single flags member.
490 hidparse.sys: Replace start_index with HID_VALUE_CAPS_ARRAY_HAS_MORE flag.
491 hidparse.sys: Add HID_VALUE_CAPS_IS_(ABSOLUTE|CONSTANT) flags instead of checking bit_field.
492 hidparse.sys: Add HID_VALUE_CAPS_IS_BUTTON flag instead of checking bit_size / bit_field.
493 winebus.sys: Add a VID and PID to mouse and keyboard devices.
494 winebus.sys: Use WINEBUS\ as device id prefix for all buses.
495 winebus.sys: Use WINEBUS\ as a common hardware ids prefix.
496 winebus.sys: Remove unnecessary internal bus ids.
497 winebus.sys: Move fastcall wrapper together with the functions.
498 dinput: Pass output instance to get_object_info HID joystick callback.
499 dinput8/tests: Add some HID joystick IDirectInputDevice8_GetObjectInfo tests.
500 dinput8/tests: Add some HID joystick IDirectInputDevice8_Initialize tests.
501 dinput8/tests: Add some HID joystick device types tests.
502 dinput: Implement more accurate HID joystick device subtypes.
503 winebus.sys: Remove the bogus SDL "unknown" HID report constant.
504 winebus.sys: Enforce all axis values to be 32bit.
505 winebus.sys: Move hats before buttons and use one byte each.
506 winebus.sys: Always add padding after button blocks.
507 winebus.sys: Simplify SDL joystick report descriptor creation.
508 winebus.sys: Simplify SDL controller report descriptor creation.
509 dinput8/tests: Don't check device object data sequence numbers.
510 dinput: Fix HID joystick DIPH_BYUSAGE object enumeration.
511 dinput: Check sizes in HID joystick IDirectInputDevice8_GetProperty.
512 dinput: Return correct errors from HID joystick IDirectInputDevice8_SetProperty.
513 dinput: Return correct errors from HID joystick IDirectInputDevice8_GetDeviceState.
514 dinput: Return correct errors from HID joystick IDirectInputDevice8_Poll.
515 hidparse.sys: Recompute HIDP_CAPS from the value caps in HidP_GetCaps.
516 hidparse.sys: Don't keep an HIDP_CAPS in the parser state.
517 hidparse.sys: Precompute collection node list on the parser side.
518 hidparse.sys: Make internal HID structures compatible with native.
519 hidparse.sys: Introduce new add_new_value_caps helper.
520 hidparse.sys: Output array caps data indexes in the correct order.
521 hidparse.sys: Fill additional HID internal structure fields.
522 winebus.sys: Rename SDL bus device to struct sdl_device.
523 winebus.sys: Rename UDEV bus device variables to be consistent.
524 winebus.sys: Rename IOHID bus device variables to be consistent.
525 winebus.sys: Introduce a new raw_device / hid_device abstraction.
526 winebus.sys: Compute offsets while building the report descriptor.
527 winebus.sys: Use the computed element offsets to create reports.
528 hidclass.sys: Only send WM_INPUT messages for HID devices.
529 winebus.sys: Factor out HID report buffers allocation.
530 winebus.sys: Factor out setting HID report values.
531 winebus.sys: Use report ids in crafted HID reports.
532 winebus.sys: Add support for joystick device rumble.
533 winebus.sys: Handle feature and output reports in hid_device.
534 dinput: Check data format dwObjSize in IDirectInputDevice2WImpl_SetDataFormat.
535 dinput: Check acquired state in IDirectInputDevice2WImpl_SetCooperativeLevel.
536 dinput: Set HID joystick objects wCollectionNumber field.
537 dinput: Add an instance number to HID joystick collection objects.
538 dinput: Use fixed axis object instance number for common axes.
539 dinput: Count all HID joystick button objects.
540 dinput8/tests: Add a wheel and vendor defined axis caps.
541 dinput: Report HID joystick wheel usage as a Z axis.
542 joy.cpl: Use msvcrt memory allocation functions.
543 joy.cpl: Use msvcrt wide string functions.
544 joy.cpl: Enumerate force-feedback effects with the devices.
545 joy.cpl: Refresh joystick test device list when activated.
546 joy.cpl: Refresh joystick FF device list when activated.
547 joy.cpl: Refresh the joystick device list when modified.
548 winegcc: Add missing strarray initialization.
549 winebus.sys: Check for SDL_JoystickRumble presence at runtime.
550 winebus.sys: Remove unused SDL_memset function pointer.
551 winebus.sys: Add a new rumble report using HID haptics.
552 xinput1_3: Use new HID haptics rumble report.
553 winebus.sys: Remove old vendor rumble report.
554 winebus.sys: Add haptics rumble support for UDEV lnxev devices.
555 joy.cpl: Add a dedicated connected list for xinput devices.
556 winexinput.sys: Override the product string for internal devices.
557 xinput1_3: Introduce a new override registry mechanism to force dinput.
558 dinput: Open the WINEXINPUT interface when the override key is set.
559 joy.cpl: Add a XInput / DInput override configuration control.
562 api-ms-win-core-psapi-l1-1-0: Add K32GetModuleBaseNameW and K32GetModuleInformation.
563 api-ms-win-core-psapi-ansi-l1-1-0: Add K32GetModuleBaseNameA.
566 winemac.drv: Use window drag notifications when available.
567 winemac.drv: Remove now-unnecessary drag stop event on mouse up.
569 Zebediah Figura (21):
570 nsiproxy: Return the IOSB status from nsi_ioctl().
571 ntoskrnl: Report IRP completion via get_next_device_request if possible.
572 ntoskrnl: Report the initial status of an IRP separately from the IOSB status.
573 ntoskrnl: Report separately whether an IRP was marked pending.
574 server: Do not signal completion if the async failed synchronously.
575 server: Pass the async result size as part of apc_call_t.
576 ntdll: Do not fill the IOSB if a device IRP failed synchronously.
577 server: Create pseudo-fds as initially signaled.
578 kernelbase: Don't set the output size in DeviceIoControl() if the NT status denotes error.
579 ntdll: Explicitly return whether an async is complete in async_callback_t.
580 advpack: Do not export DllMain.
581 winegstreamer: Factor out more of the init_gst callback into wg_parser_connect().
582 winegstreamer: Properly clean up from failure in wg_parser_connect().
583 winegcc: Correctly put the -munix manual section in its own paragraph.
584 ndis.sys/tests: Test passing a bogus OID to IOCTL_NDIS_QUERY_GLOBAL_STATS.
585 ndis.sys: Return the IOSB status from ndis_ioctl().
586 ndis.sys: Return STATUS_INVALID_PARAMETER for unknown OIDs.
587 ntdll: Return STATUS_PENDING when restarting asyncs.
588 ntdll: Return STATUS_DEVICE_NOT_READY instead of STATUS_PENDING from try_transmit().
589 server: Factor out a complete_async_poll() helper.
590 Revert "winegstreamer: Replace source pad interface with GstAppSrc.".
593 avicap32: Use the correct return type for get_device_desc().
594 winex11.drv: Register GUID_DEVINTERFACE_DISPLAY_ADAPTER interface for GPUs.
595 winex11.drv: Register GUID_DEVINTERFACE_MONITOR interface for monitors.
596 winemac.drv: Register GUID_DEVINTERFACE_DISPLAY_ADAPTER interface for GPUs.
597 winemac.drv: Register GUID_DISPLAY_DEVICE_ARRIVAL interface for GPUs.
598 winemac.drv: Register GUID_DEVINTERFACE_MONITOR interface for monitors.
599 user32/tests: Fix some test failures on the w7u_2qxl TestBot.
600 setupapi/tests: Add display device interface tests.
601 uxtheme: Use wide character string literals.
602 uxtheme: Initialize system metrics in 96 DPI.
603 uxtheme/tests: Add EnableTheming() tests.
604 uxtheme: Disallow EnableTheming() to enable theming.
605 uxtheme: Do not change system metrics in EnableTheming().