1 The Wine development release 7.16 is now available.
3 What's new in this release:
4 - Wow64 support in X11 driver.
5 - Session storage in MSHTML.
6 - Unicode regexp fixes in MSXML.
7 - IME improvements in Edit control.
10 The source is available at:
12 https://dl.winehq.org/wine/source/7.x/wine-7.16.tar.xz
14 Binary packages for various distributions will be available from:
16 https://www.winehq.org/download
18 You will find documentation on https://www.winehq.org/documentation
20 You can also get the current source directly from the git
21 repository. Check https://www.winehq.org/git for details.
23 Wine is available thanks to the work of many people. See the file
24 AUTHORS in the distribution for the complete list.
26 ----------------------------------------------------------------
28 Bugs fixed in 7.16 (total 20):
30 - #29685 Manifest generator (ecmangen) tool from Windows Platform SDK 7.1 crashes due to unhandled facet/regular expression in XML schema (escape sequence)
31 - #42857 Can't select a fixture in FreeStyler's fixture editor
32 - #43581 Microsoft Office 365 edition of Office 2013 installer fails with 'cache_entry_from_xsd_doc failed to parse doc' (non-standard '\u####' sequence)
33 - #46083 postgresql: "Unable to write inside TEMP environment variable path"
34 - #51601 Metal Gear Solid V: The Phantom Pain stucks on first chapter intro
35 - #52329 amazon games app crashes in wine 7.0 rc-3 (winsock?)
36 - #52657 Watch Dogs crashes on start
37 - #53174 StarCitizen launcher freeze due to heap space issue
38 - #53424 Scroll bar not working. was with up to 7.12?
39 - #53462 Obduction audio and subtitles for videos don't work
40 - #53468 Ragnarok Online's anti-cheat, Gepard, detecting macro usage (false-positive)
41 - #53472 Kerberos auth broken since 7.10
42 - #53497 d3d8:device & d3d8:device - test_resource_access() crashes in Wine
43 - #53542 Hog4PC 3.17 installer VBScript custom action needs IWshShell::Run to return signed type.
44 - #53545 Visual Novel Doukyuusei sound loop
45 - #53565 postgresql installer 9.3 needs support for default style argument in WshShell.Run
46 - #53566 Wine uninstaller fails to launch
47 - #53569 postgresql installer 9.3 needs correct string length returned from fso.GetTempName
48 - #53587 comctl32 GetWindowSubclass crash in Notepad++ (v8.4.3 and 8.4.4 only)
49 - #53589 Saints Row (2022) crashes on unimplemented function kernel32.dll.SetProcessDefaultCpuSets
51 ----------------------------------------------------------------
56 mciqtz32: Don't stretch video destination for a popup or child window.
57 winmm/tests: Add MCI_DGV_WINDOW_STATE tests.
58 mciqtz32: Fix MCI_DGV_WINDOW_STATE behavior.
59 winmm/tests: Add MCI_DGV_WINDOW_TEXT tests.
60 mciqtz32: Fix MCI_DGV_WINDOW_TEXT behavior.
61 winmm/tests: Add more MCI_DGV_WINDOW_HWND tests.
62 mciqtz32: Fix MCI_DGV_WINDOW_HWND error handling.
64 Alexandre Julliard (9):
65 winetest: Use CRT allocation functions.
66 winetest: Support loading the list of tests from a file.
67 winetest: Disable the crash dialog in non-interactive mode.
68 winetest: Exit with error 3 when there are test failures.
69 mountmgr: Don't crash if connecting to dbus fails.
70 xslt: Import upstream release 1.1.36.
71 xml2: Import upstream release 2.10.0.
72 comctl32/tests: Use client coordinates for right click test.
73 gitlab: Add macOS build.
75 Alistair Leslie-Hughes (2):
76 dsdmo: Add Echo FX Support.
77 dsdmo: Add Compressor FX Support.
80 wow64: Fix the ARM32 machine type.
83 po: Update Lithuanian translation.
86 shell32/tests: Test ExtractIcon() with an empty/invalid path.
87 shell32: Return NULL from ExtractIcon() for all error cases.
90 winealsa: Drop "alsa_" prefix in unixlib enum, apply it to the functions instead.
91 winealsa: Move common unixlib.h content into mmdevapi.
92 mmdevapi: Integrate winepulse's additions in unixlib.h.
93 winealsa: Fix WoW64 failure when calling get_position().
94 mmdevapi/tests: Fix fail messages referencing GetChannelCount() instead of GetChannelVolume().
95 mmdevapi/tests: Distinguish GetChannelCount() calls in test_volume_dependence() fail messages.
96 mmdevapi/tests: Fix typos in spatial audio fail messages.
97 mmdevapi/tests: Fix fail message referencing "Start" instead of "Stop" in test_session().
98 winepulse: Adapt "endpoint" struct to mmdevapi's.
99 winepulse: Adapt "create_stream_params" struct to mmdevapi's.
100 winepulse: Adapt "release_stream_params" struct to mmdevapi's.
101 winepulse: Adapt "release_render_buffer_params" struct to mmdevapi's.
102 winepulse: Adapt "get_capture_buffer_params" struct to mmdevapi's.
103 winepulse: Adapt "get_mix_format_params" struct to mmdevapi's.
104 winepulse: Adapt "get_device_period_params" struct to mmdevapi's.
105 winepulse: Adapt "is_started_params" struct to mmdevapi's.
106 winepulse: Adapt "get_prop_value_params" struct to mmdevapi's.
107 winepulse: Switch to mmdevapi's unixlib.h.
109 Etaash Mathamsetty (2):
110 ntoskrnl.exe: Implement KeAreAllApcsDisabled.
111 ntoskrnl: Implement IoCreateFileEx.
114 po: Update Dutch translation.
116 Gabriel Ivăncescu (16):
117 jscript: Implement fdexNameCaseInsensitive flag handling.
118 mshtml: Handle S_FALSE from IUri methods in localStorage and sessionStorage.
119 mshtml: Handle S_FALSE from IUri methods in Anchor Elements.
120 mshtml: Handle S_FALSE from IUri methods when checking targetOrigin.
121 mshtml: Don't navigate if GetDisplayUri failed.
122 mshtml: Handle S_FALSE from IUri methods when navigating.
123 mshtml: Handle S_FALSE from IUri methods in the NSAPI interfaces.
124 mshtml: Handle S_FALSE return values from IUri methods.
125 mshtml: Implement setItem() for sessionStorage.
126 mshtml: Implement getItem() for sessionStorage.
127 mshtml: Implement removeItem() for sessionStorage.
128 mshtml: Implement clear() for Storage.
129 mshtml: Implement key() for sessionStorage.
130 mshtml: Implement key() for localStorage.
131 mshtml: Implement length prop for Storage.
132 mshtml: Implement remainingSpace prop for sessionStorage.
135 kernel32: Add SetProcessDefaultCpuSets stub.
138 hnetcfg: Add INetFwRule stub.
139 hnetcfg: Return success from netfw_rules_Add() and netfw_rules_Remove().
140 bcrypt: Support ECDH_P384 key import/export.
143 mfreadwrite/reader: Only attempt to copy sample buffers from responses with non-NULL samples.
145 Huw D. M. Davies (2):
146 maintainers: Remove advice about Cc'ing patches.
147 wow64: Fix another ARM32 machine type.
150 win32u: Move more logic from dispatch_win_proc_params.
151 win32u: Use a separate helper to send messages from win32u.
152 win32u: Pack messages sent directly from win32u.
153 user32: Pass window name as UNICODE_STRING to NtUserCreateWindowEx.
154 win32u: Use send_message_timeout for WM_CREATE and WM_NCCREATE.
155 win32u: Remove no longer needed unicode call_hooks argument.
156 wow64win: Implement wow64_NtUserCallWinProc.
157 wow64win: Implement wow64_NtUserMessageCall.
158 user32: Always use original parameter values in dispatch_send_message.
159 win32u: Use a client copy of windows hook lparam when calling hook procs.
160 wow64win: Implement NtUserCallWindowsHook thunk.
161 wow64win: Implement more user callbacks.
162 wow64win: Fix NtUserGetMouseMovePointsEx thunk.
163 wow64win: Return class atom from NtUserGetClassInfoEx thunk.
164 wow64win: Fix NtUserGetClipboardData thunk.
165 wow64win: Fix returning strings in NtUserGetIconInfo thunk.
166 wow64win: Fix NtUserGetMenuBarInfo thunk.
167 wow64win: Fix handling NULL input32 in NtUserSendInput.
168 wow64win: Support GCLP_MENUNAME in NtUserSetClassLongPtr thunk.
169 wow64win: Fix NtUserThunkedMenuItemInfo thunk.
170 wow64win: Fix output handling in NtUserTrackMouseEvent thunk.
171 wow64win: Use in-place conversion in NtUserDrawText thunk.
172 wow64win: Use LongToHandle for user handles conversion.
173 user32: Move dialog proc getting implementation from win32u.
174 user32: Move dialog proc setting implementation from win32u.
175 win32u: Fix handling uninitialized process_layout.
176 wow64win: Fix NtGdiDdDDICreateDevice thunk.
177 win32u: Move process initialization to NtUserInitializeClientPfnArrays.
178 winex11: Implement wow64 thunks.
179 user32: Support resource ID strings in CREATESTRUCT Unicode conversion.
180 user32: Support passing bitmap and icon resource ID as a string when creating static control.
181 user32: Pass resource ID as a string in DIALOG_CreateControls32.
182 user32: Remove no longer used DPI functions.
183 win32u: Move NtUserLogicalToPerMonitorDPIPhysicalPoint implementation from user32.
184 win32u: Move NtUserPerMonitorDPIPhysicalToLogicalPoint implementation from user32.
185 win32u: Introduce NtUserActivateOtherWindow.
186 user32: Remove no longer user get_hwnd_message_parent.
187 user32: Merge win.h into user_private.h.
188 user32: Build with nameless structs and unions.
191 ntdll: Implement RtlRestoreContext on i386.
194 win32u: Ensure that either the primary or secondary name is in English.
195 win32u: Don't allow a replaced font to be a replacement.
198 server: Use POLLIN instead of POLLPRI if the socket is in oobinline mode.
199 server: Use check_fd_events() instead of calling poll() directly.
200 server: Always prefer synchronous I/O in nonblocking mode.
202 Konstantin Romanov (1):
203 kerberos: Fix condition for create_context_handle in kerberos_SpInitLsaModeContext and kerberos_SpAcceptLsaModeContext.
206 wintypes: Add RoResolveNamespace stub.
209 configure: Downgrade -Wincompatible-function-pointer-types to a warning on ARM.
210 vkd3d: Fix the signature of vkd3d_spirv_build_op_type_image.
211 bcrypt: Fix the non-PE build after ECDH_P384 was added.
214 wined3d: Introduce WINED3DUSAGE_MANAGED.
217 mfplat: Implement Write() for file streams.
218 mfsrcsnk: Add a stub dll.
219 mfsrcsnk/wave: Add a sink stub.
220 mfsrcsnk/wave: Add clock state callbacks.
221 mfsrcsnk/wave: Store media format structure.
222 mfsrcsnk/wave: Implement sample processing.
223 mfsrcsnk: Add WAVE sink class factory.
224 mfsrcsnk/wave: Add a type handler stub.
225 mfreadwrite/writer: Make sure output pointer is initialized.
226 mfreadwrite/writer: Implement AddStream().
227 mfreadwrite/writer: Partially implement BeginWriting().
228 mfreadwrite/writer: Start presentation clock on BeginWrite().
229 mfreadwrite/writer: Implement GetServiceForStream().
230 mfreadwrite/writer: Notify encoder on BeginWriting().
231 mfreadwrite/writer: Update some stats counters on WriteSample().
232 mfreadwrite/writer: Update some stats on MEStreamSinkRequestSample.
233 mfreadwrite/writer: Add sample/marker queue for each stream.
234 mfreadwrite/writer: Reference user callback.
235 mfreadwrite/writer: Implement PlaceMarker().
236 mfreadwrite/writer: Implement Flush().
237 evr: Add IMFGetService stub.
238 evr: Add IMFVideoRenderer stub to the filter.
239 evr: Implement lazy initialization with mixer and presenter instances.
240 evr/tests: Add a test to show that IMFVideoDisplayControl is accessible.
241 mfplat/tests: Add some tests for legacy media type conersion functions.
242 mfplat: Partially implement MFInitMediaTypeFromVideoInfoHeader().
243 mfplat: Partially implement MFInitMediaTypeFromAMMediaType().
246 ddraw/tests: Add more tests for restoring complex surfaces.
247 ddraw: Restore full complex attachment chain in ddraw_surface7_Restore().
248 winex11.drv: Set correct cursor when setting cursor from another thread.
251 msvcp60: Use 'MultiByteToWideChar' in __Fiopen implementation.
252 msvcp90: Use 'MultiByteToWideChar' in _Fiopen implementation.
253 winspool.drv: Ignore device name if printer handle is passed in DocumentProperties.
254 winspool.drv: Fix get_config_module when printer and driver names differ.
255 include: Update ddk/compstui.h header.
256 compstui: Add partial CommonPropertySheetUIW implementation.
257 compstui: Add CommonPropertySheetUI tests.
258 msvcp71: Use MultiByteToWideChar in _Fiopen implementation.
259 msvcr100: Set scheduler in tasks created with ScheduleTask function.
262 wshom: Use signed type for property ProcessID in IWshExec.
263 wshom: Use signed type for property ExitCode in IWshExec.
264 wshom: Add test for default style arg in WshShell3_Run.
265 wshom: Support default style argument in IWshShell3::Run.
266 scrrun: Add test for correct string length returned from GetTempName.
267 scrrun: Correct string length returned from GetTempName.
268 scrrun: Avoid memory leak in error case.
269 scrrun: Added DateCreated property for IFile.
272 mf/tests: Add some topology loader tests with missing output type.
273 mf/tests: Add some MP3 decoder transform tests.
274 mf/tests: Add more topology loader converter and enumeration tests.
275 mf: Allow resolving topology with missing downstream current type.
276 mf: Only allow converter connection if decoder didn't accept down type.
277 mf: Only enumerate types for decoders / converter if down type is missing.
278 qasf: Implement IWMReaderCallbackAdvanced stub interface.
279 qasf: Implement ASF Reader filter buffer allocation.
280 qasf: Implement ASF Reader filter IWMReaderCallback_OnSample.
281 qasf: Implement ASF Reader SourceSeeking stubs.
282 qasf: Register ASF Reader filter media type.
283 win32u: Do not keep display modes driver extra in the registry.
284 win32u: Read registry or current mode when validation needs it.
285 win32u: Always copy devmode in validate_display_settings.
286 win32u: Use current mode position if desired mode doesn't specify it.
287 win32u: Only read/write valid mode fields from/to the registry.
288 mf/tests: Avoid creating now unused sink activate instances.
289 mf/tests: Try returning MF_E_NOT_INITIALIZED from GetCurrentMediaType.
290 mf: Support uninitialized downstream media types in topology loader.
291 maintainers: Add myself to multimedia sections.
292 qasf/tests: Test ASF Reader filter initial state and pins.
293 qasf/tests: Test ASF Reader filter threading wrt. ReceiveCanBlock.
296 bcrypt: Move symmetric flags check to symmetric section.
299 msvcr100: Factor out the mapping of a context to a scheduler.
300 msvcr100: Implement _StructuredTaskCollection::_Schedule and _Schedule_loc.
302 Zebediah Figura (13):
303 wined3d: Use wined3d_array_reserve() in wined3d_adapter_create_output().
304 d3d8/tests: Expand tests for valid pools in UpdateTexture().
305 d3d9/tests: Expand tests for valid pools in UpdateTexture().
306 d3d8/tests: Read back directly from the specified surface if possible.
307 d3d8/tests: Add more tests for dirty rect handling.
308 d3d9/tests: Add more tests for dirty rect handling.
309 d3d11/tests: Use winetest_push_context() to print explicit feature levels.
310 d3d11: Always return E_FAIL for formats which have no support flags.
311 d3d11: Implement D3D11_FEATURE_FORMAT_SUPPORT.
312 d3d8/tests: Add tests for D3DLOCK_NO_DIRTY_UPDATE with vertex buffers.
313 d3d9/tests: Add tests for D3DLOCK_NO_DIRTY_UPDATE with vertex buffers.
314 d3d8: Introduce a wined3d_usage_from_d3d() helper.
315 d3d9: Introduce a wined3d_usage_from_d3d() helper.
318 comctl32/tests: Add GetWindowSubclass() tests.
319 comctl32: Check reference data pointer before using it.
320 comctl32: Set reference data to zero on failure for GetWindowSubclass().
321 comctl32/tests: Add IME tests for edit control.
322 comctl32/edit: Implement EM_SETIMESTATUS.
323 comctl32/edit: Implement EM_GETIMESTATUS.
324 comctl32/edit: Let DefWindowProcW() handle WM_IME_CHAR.
325 comctl32/edit: Handle IME composition result string only when EIMES_GETCOMPSTRATONCE is set.
326 user32/tests: Link directly to imm32.
327 user32/tests: Add IME tests for edit control.
328 user32/edit: Implement EM_SETIMESTATUS.
329 user32/edit: Implement EM_GETIMESTATUS.
330 user32/edit: Let DefWindowProcA/W() handle WM_IME_CHAR.
331 user32/edit: Handle IME composition result string only when EIMES_GETCOMPSTRATONCE is set.
332 comctl32/tests: Test that changing focus for edit controls doesn't repaint immediately.
333 comctl32/edit: Don't repaint immediately when getting focus.
334 comctl32/edit: Don't repaint immediately when losing focus.
335 gdi32/tests: Add more tests for GetTextMetrics().
336 win32u: Choose a smaller ppem to avoid exceeding the requested font height.
337 ddraw/tests: Add a comment to note that tests in d3d.c are deprecated.
338 ddraw/tests: Move the capability tests for enumerated devices.
339 ddraw/tests: Add more capability tests for enumerated devices.
340 ddraw: Don't report unsupported device capabilities in d3d7_EnumDevices().
341 ddraw: Don't report unsupported device capabilities in d3d3_EnumDevices().