1 The Wine development release 5.17 is now available.
3 What's new in this release (see below for details):
4 - ADVAPI32 library converted to PE.
5 - Beginnings of an NDIS network driver.
6 - Still more restructuration of the console support.
9 The source is available from the following locations:
11 https://dl.winehq.org/wine/source/5.x/wine-5.17.tar.xz
12 http://mirrors.ibiblio.org/wine/source/5.x/wine-5.17.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 5.17 (total 17):
30 22616 Multiple applications need msvcirt.dll.??0ifstream@@QAE@PBDHH@Z (Merriam-Webster Dictionary, Power Tab Editor, gmax 1.2, GradeBook for Windows, Microsoft Reader)
31 24182 Multiple games need IDirectDrawMediaStream::Get/SetFormat implementation (Need for Russia, Motocross Madness 2, The Sims Complete Collection)
32 30014 Multiple programs require msvcirt.dll.??0ifstream@@QAE@XZ (Wouxun KG-UV2D, Charon, Cricket 2002, Mastercook 15, GraphCalc)
33 35782 Tic Tac Toe Game (vbscript) cannot be played (colon used in for loop for placing multiple statements on the same line)
34 41005 Deadlight: Director's Cut (UE3, 64-bit) loads to a black screen
35 43999 GetVersion incorrectly fails to lie about the OS version when masquerading as Windows 8.1 or 10
36 45642 Chrome/Chromium sandbox needs x86-64 syscall thunks to match Windows
37 46278 Cisco Jabber 12.5 sends only first letter due to missing richedit:ITextRange functions
38 47048 Logitech webcam does not show picture, only grey
39 47642 Support conversion from GST_VIDEO_FORMAT_RGB to DirectShow-supported formats (needed by Risk II + native amstream)
40 48130 Launching World of Tanks from the shortcut doesn't work
41 48407 OllyDbg 2.x segfaults the process after attaching to it
42 49125 Logos Bible Software Indexing fails 64bit only 32bit works
43 49242 provide some way to get reported windows version via command line
44 49749 Visual Studio 2019 installer crashes after unpacking content
45 49762 Emulated virtual desktop ignores size set in winecfg
46 49805 Pyxel Edit crashes when clicking the "File" dropdown option.
48 ----------------------------------------------------------------
53 ws2_32: Improve WSCGetProviderPath() stub.
56 po: Update Japanese translation.
59 comdlg32: Fix error precedence in IFileDialog2_SetFileTypes.
61 Alexandre Julliard (32):
62 kernel32: Move the initial process breakpoint to LdrInitializeThunk().
63 ntdll: Call the thread entry point through BaseThreadInitThunk().
64 ntdll: Call the process entry point through RtlUserThreadStart().
65 kernel32: Remove the no longer used __wine_start_process() function.
66 ntdll: Get rid of the server_init_process_done() Unix library callback.
67 ntdll: Move the NT path conversion for exec process to the Unix library.
68 ntdll: Use the process parameters directly in exec_process().
69 ntdll: Get rid of the exec_process() Unix library callback.
70 ntdll: Make the reserved area functions static.
71 ntdll: Move the reserved area functions to avoid forward declarations.
72 ntdll: Add a helper function for fixed anonymous mmaps.
73 ntdll: Add a helper function for memory allocations through mmap().
74 ntdll: Add a helper function to try an mmap at a fixed address.
75 ntdll: Load libwine dynamically.
76 ntdll: Pop the Unix stack completely in call_user_apc_dispatcher().
77 loader: No longer depend on libwine.
78 libwine: Remove wine/library.h.
79 libwine: Make the remaining configuration functions obsolete.
80 makefiles: Get rid of rpath support.
81 makefiles: Add dependencies for the import lib symlinks.
82 makefiles: Expand makedep path at compile time.
83 makefiles: Store .pot files in a separate variable.
84 makefiles: Add some missing object dir references.
85 makefiles: Build extra targets explicitly if they are not a dependency.
86 advapi32: Build with msvcrt.
87 makefiles: Explicitly import the CRT library also for test dlls.
88 wineandroid.drv: Load libwine dynamically.
89 wineandroid.drv: Pass the source directory on the gradle command line.
90 makefiles: Also store the basename without object dir for generated files.
91 makefiles: Fix a few more object directory references.
92 makefiles: Remove support for generating a single makefile.
93 makefiles: Add separate variable to keep track of source dir font files.
96 amstream: Implement AMDirectDrawStream::GetFormat.
97 amstream: Implement AMDirectDrawStream::SetFormat.
98 amstream: Reject incompatible media types in AMDirectDrawStream::ReceiveConnection.
99 amstream: Reconnect if the new format is incompatible with the connection media type in AMDirectDrawStream::SetFormat.
100 amstream: Use current format to create surface in AMDirectDrawStream::CreateSample.
103 msvcirt: Implement most of ifstream.
104 msvcirt: Correct the behavior of filebuf::setbuf().
105 msvcirt: Implement ifstream::setbuf().
106 msvcirt: Be more obvious in out-of-memory situations.
107 msvcirt: Implement _mtlock() and _mtunlock().
108 msvcirt: Include iostream in strstream's and stdiostream's rtti hierarchy.
109 msvcirt: Implement a part of fstream.
112 include/d3dcommon.idl: Add D3DDestructionNotifier interface.
113 include/d3dcommon.idl: Add missing names in D3D_SHADER_VARIABLE_TYPE enum.
114 include/d3dcommon.idl: Add missing names in D3D_NAME enum.
115 include/d3dcommon.idl: Add missing names in D3D_SHADER_INPUT_TYPE enum.
116 include/d3d10.idl: Add flags in D3D10_CREATE_DEVICE_FLAG enum.
117 include/d3d11.idl: Add flags in D3D11_RESOURCE_MISC_FLAG enum.
118 include/d3d11.idl: Add names in D3D11_FILTER enum.
121 winevulkan: Change make_vulkan interpreter to '/usr/bin/env python3'.
122 winemac.drv: Print error when no GPUs are detected.
123 winemac.drv: Don't fail GPU detection if some IOKit properties are missing.
126 kernel32/tests: Use debugstr_an to show contents of buffer.
127 kernel32/tests: Remove registry entry left out during test.
128 kernel32/tests: Change file name to avoid collision with other tests.
131 ntdll: Fix a memory leak (Valgrind).
132 ntdll: Fix a ImagePathName memory leak (Valgrind).
135 mfplat: Remove fallback media source.
136 winegstreamer: Add stub bytestream handler.
137 winegstreamer: Add stub media source.
138 winegstreamer: Implement source event methods.
139 winegstreamer: Implement IMFMediaSource::Shutdown.
142 comctl32/listview: Add Get/SetSelectedColumn() support.
145 mscoree: Use exe basename to name the default domain.
148 user32/menu: Store application defined value as pointer.
150 Francesco Noferi (1):
151 cmd.exe: Fix parsing of && between quotes.
153 Gabriel Ivăncescu (7):
154 msscript.ocx/tests: Add tests for SitehWnd.
155 msscript.ocx: Implement IScriptControl::put_SitehWnd.
156 msscript.ocx: Implement IScriptControl::get_SitehWnd.
157 msscript.ocx: Implement IActiveScriptSiteWindow::GetWindow.
158 msscript.ocx: Return S_OK from the IActiveScriptSiteWindow::EnableModeless stub.
159 msscript.ocx: Implement UseSafeSubset properly by setting the interface safety options.
160 msscript.ocx: Supply a stub ServiceProvider to InvokeEx in run_procedure.
163 winex11.drv: Use vkGetPhysicalDeviceProperties2KHR to get gpu properties.
166 crypt32: Remove unused variable in test_CryptBinaryToString().
169 mountmgr: Add ioctl to read host credentials on macOS.
170 advapi32: Read host credentials through mountmgr.
171 mountmgr: Add ioctl to write host credentials on macOS.
172 advapi32: Write host credentials through mountmgr.
173 mountmgr: Add ioctl to delete host credentials on macOS.
174 advapi32: Delete host credentials through mountmgr.
175 mountmgr: Add ioctl to enumerate host credentials on macOS.
176 advapi32: Enumerate host credentials through mountmgr.
177 ntdll: Return buffer filled with random values from NtQuerySystemInformation(SystemInterruptInformation).
178 advapi32: Reimplement SystemFunction036 using system interrupt information.
179 advapi32: Use wide character string literals.
180 crypt32: Store CERT_KEY_CONTEXT in a platform independent way.
183 iphlpapi: Unify conversions to interface guid.
184 iphlpapi: Make the interface guids more unique.
185 wine.inf: Create NDIS service.
186 ndis.sys: Create network card registry keys.
187 ndis.sys: Create network card devices.
188 ndis.sys: Implement IOCTL_NDIS_QUERY_GLOBAL_STATS on network cards.
189 ndis.sys/tests: Add tests for ndis ioctls.
192 conhost: Implement IOCTL_CONDRV_FILL_OUTPUT.
193 conhost: Implement IOCTL_CONDRV_SCROLL.
194 kernelbase: Move KERNEL32_CONSOLE_ALLOC handling to kernelbase.
195 kernel32/tests: Skip more FreeConsole tests on win7.
196 server: Introduce IOCTL_CONDRV_CTRL_EVENT ioctl.
197 kernelbase: Use IOCTL_CONDRV_CTRL_EVENT in GenerateConsoleCtrlEvent.
198 server: Support IOCTL_CONDRV_CTRL_EVENT on console server handles.
199 conhost: Support CTRL_C_EVENT in write_console_input.
200 conhost: Initialize tty output.
201 conhost: Support setting tty title in set_console_title.
202 conhost/tests: Add initial tty tests.
203 conhost: Synchronize tty cursor position in set_output_info.
204 conhost: Support tty output in write_output.
205 conhost/tests: Add tty output tests.
206 conhost: Update tty output in fill_output.
207 conhost: Update tty output in scroll_output.
208 conhost: Update tty output in IOCTL_CONDRV_ACTIVATE.
209 dwrite.idl: Use DEFINE_ENUM_FLAG_OPERATORS for enums that need it.
210 conhost: Move console input processing into a separated function.
211 conhost: Add tty input implementation.
212 conhost/tests: Add tty input tests.
213 kernel32/tests: Skip more tests on old Windows.
214 conhost: Use more standard hide cursor sequence.
215 conhost: Introduce IOCTL_CONDRV_WRITE_CONSOLE ioctl.
216 kernel32: Use IOCTL_CONDRV_WRITE_CONSOLE in WriteConsoleW when possible.
217 conhost/tests: Add WriteConsole tests.
218 kernel32/tests: Allow ENABLE_VIRTUAL_TERMINAL_PROCESSING in default mode.
219 conhost/tests: Wait for child process in test_pseudoconsole.
222 qcap/tests: Test effect of setting stream format on media type enumeration.
223 qcap: Calculate image size and pitch when setting format.
224 qcap: Enumerate one media type if pin format has been set.
227 gdiplus: Make gdi_alpha_blend fallback to StretchBlt if current Compositing Mode is SourceCopy.
230 dbghelp: Avoid asserting on egregiously long stabs symbol names.
231 mountmgr: Avoid operating on a null CFStringRef, which would crash.
233 Liam Middlebrook (1):
234 winevulkan: Fail on explicit layer usage.
237 ntdll: RtlConvertToAutoInheritSecurityObject is NTSTATUS, not BOOL.
240 ntdll: Fix arm64 regression from "Clear the syscall frame on return".
241 ntdll: Don't truncate SP in arm64 handle_syscall_fault.
242 ntdll: Add ARM64 SEH unwind directives for assembly functions in PE builds.
243 ntdll: Fix more corner cases for arm64 packed info unwinding.
246 d3d11: Report D3D11_FORMAT_SUPPORT_TEXTURECUBE in CheckFormatSupport().
247 d3d11: Report D3D11_FORMAT_SUPPORT_MIP in CheckFormatSupport().
248 d3d11: Report D3D11_FORMAT_SUPPORT_MIP_AUTOGEN in CheckFormatSupport().
249 d3d11: Report D3D11_FORMAT_SUPPORT_BLENDABLE in CheckFormatSupport().
250 d3d11: Report multisample flags in CheckFormatSupport().
253 cmd.exe: Fix /Y flag for move builtin.
254 cmd.exe: Don't prompt for move when non-interactive.
257 combase: Move stub manager.
258 combase: Move CoReleaseMarshalData().
259 combase: Move CoUnmarshalInterface().
260 combase: Move remaining marshalling code.
261 combase: Move ORPC functionality.
262 combase: Move currently unimplemented COM API functions.
263 combase: Move default memory stream implementation.
264 api-ms: Redirect com-private to combase.
265 combase: Implement local server registration via SCM.
266 kernelbase: Forward ConvertToAutoInheritPrivateObjectSecurity() to ntdll.
267 combase: Use typed list iteration macros.
268 evr: Create and initialize mixer transform attributes.
269 evr/mixer: Use same max input count symbol for GetStreamLimits().
270 mf/evr: Actually use custom mixer when available.
271 mf/evr: Implement stream sinks management functionality.
272 mf/evr: Add events support for video stream sinks.
273 mf/session: Add support for MR_VIDEO_RENDER_SERVICE service.
274 mf/tests: Fix tests crashes.
275 mf/evr: Create stream sinks for default mixer inputs.
276 mf/evr: Add a IMFMediaTypeHandler stub for input video streams.
277 mf/evr: Add GetMajorType() for the stream sink.
278 evr/mixer: Return initial mixing preferences.
279 maintainers: Get rid of removed paths.
280 evr/mixer: Add another set of attributes.
281 combase: Implement CoCreateInstanceFromApp().
282 ole32/tests: Use treat-as-class functions directly.
283 ole32/tests: Link to storage API directly.
284 ole32/tests: Fix test crash on recent Windows 10.
287 winecfg: Ensure registry key is initialised before updating Windows version.
288 winecfg: Add /v parameter to display current Windows version.
291 ntdll: Implement RtlGetExtendedContextLength().
292 kernel32: Implement InitializeContext[2]().
293 kernel32: Implement LocateXStateFeature().
294 ntdll: Implement RtlLocateLegacyContext().
295 ntdll: Clear CONTEXT_XSTATE flag in RtlUnwindEx().
296 wbemprox: Provide semi-stub implementation for client_security_QueryBlanket().
297 kernel32: Implement SetXStateFeaturesMask().
298 kernel32: Implement GetXStateFeaturesMask().
299 kernel32: Implement CopyContext().
300 ntdll: Implement saving AVX registers in NtGetContextThread().
301 ntdll/tests: Add tests for capturing context with xstate.
302 ntdll/tests: Fix exception test failures on win10pro.
303 ntdll/tests: Fix virtual test failures on win10pro.
304 d3dcompiler: Support ID3D12ShaderReflection interface in D3DReflect().
305 d3dcompiler/tests: Add test for reflection interfaces.
306 d3dcompiler/tests: Test d3d12 interface in test_reflection_desc_vs().
307 d3dcompiler: Set range id to bind point for sm < 5.1.
308 d3dcompiler/tests: Test d3d12 interface in test_reflection_constant_buffer().
309 d3dcompiler: Fill texture fields in D3D11_SHADER_VARIABLE_DESC with default values.
310 vcruntime140_1: Handle rethrowing from nested try blocks on x64.
311 msvcrt: Handle rethrowing from nested try blocks on x64.
312 d3dcompiler/tests: Test d3d12 interface in test_reflection_bound_resources().
315 quartz: Return E_POINTER from IVideoWindow::get_Visible() if "visible" is NULL.
318 vbscript: Colon used in for loop.
320 Roberto Pungartnik (1):
321 po: Update Brazilian Portuguese translation.
324 bcrypt: Return STATUS_INVALID_PARAMETER on ECC magic mismatch.
325 bcrypt: Export ECDSA/ECDH blobs with the correct header magic.
326 gdi32: Only trace new faces when they are added.
327 winex11.drv: Don't wait for the desktop thread to store clipping window.
328 widl: Search for known types in current namespace.
329 widl: Output interface C names in method argument list.
330 widl: Support fully qualified names in WinRT mode.
331 gdi32/tests: Test extended TTF font names and collisions.
332 gdi32: Introduce ft_face_get_family/style_name helpers.
333 gdi32: Rewrite prepend_at helper as get_vertical_name.
334 gdi32: Build full name from family + style when missing.
335 gdi32: Rename StyleName to style_name for consistency.
336 gdi32: Use fixed size array for family and english name.
337 gdi32: Compare full name before discarding faces.
338 kernelbase: Also pass CreateFile2 file flags to CreateFileW.
339 user32: Return TRUE from ShowWindow(SW_SHOW) if already visible.
341 Zebediah Figura (36):
342 quartz/vmr9: Avoid leaking the presenter's reference to the d3d9 device.
343 winegstreamer: Fix a leak in gstdecoder_source_get_media_type().
344 amstream/tests: Avoid leaking "stream" in test_find_pin().
345 amstream/tests: Get rid of test_renderfile().
346 kernel32/tests: Pass the correct size for PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE.
347 d3dcompiler/tests: Add more tests for SM4 constant packing.
348 d3dcompiler/tests: Add tests for constant buffer binding descriptors.
349 d3dcompiler/tests: Add tests for semantics.
350 d3dcompiler/tests: Add tests for samplers.
351 d3dcompiler: Unconditionally report special (pixel shader output) sysvals based on the semantic name.
352 server: Avoid a potential NULL dereference in startup_info_dump().
353 d3d11/tests: Test specifying the multisample mask via OMSetBlendState().
354 d3d10core/tests: Test specifying the multisample mask via OMSetBlendState().
355 d3d9/tests: Add a test for sample masks.
356 wined3d: Store the sample mask in wined3d_state.
357 wined3d: Implement OpenGL sample masks.
358 wined3d: Read the SM5 resource type instruction modifier.
359 wined3d: Read the SM5 resource data type instruction modifier.
360 dxgi: Add DXGI_FORMAT_NV12 and DXGI_FORMAT_YUY2.
361 d3d11: Add DXGI_FORMAT_NV12 and DXGI_FORMAT_YUY2.
362 qcap/avimux: Pass the correct field to CONTAINING_RECORD in impl_sink_from_strmbase_pin().
363 wintrust/tests: Add more tests for CryptCATOpen() file modes.
364 wintrust: Assign the file open mode directly instead of treating it as a bitmask.
365 wintrust: Translate a lack of open mode flags to OPEN_ALWAYS.
366 wintrust: Translate CRYPTCAT_OPEN_CREATENEW to CREATE_ALWAYS.
367 include: Add more setupapi error codes.
368 include: Add a couple more SIP indirect data flags.
369 mssign32: Use public SPC_* flag definitions.
370 include: Add catalog file version constants.
371 server: Use GENERIC_READ | GENERIC_WRITE in inherit_console().
372 include: Use ioctl access bits for console driver ioctls.
373 winegstreamer: Dereference messages dropped from watch_bus().
374 ws2_32: Keep a list of open sockets.
375 ws2_32: Close all open sockets in WSACleanup().
376 server: Remove no longer used enumerate_handles().
377 server: Remove no longer used is_fd_signaled().
380 user32: Always wait for the desktop process to be ready in load_desktop_driver().
381 ddraw/tests: Add display mode frequency tests.
382 ddraw: Report correct frequency in GetDisplayMode().
383 dxgi/tests: Relax closest matching mode comparison.
384 dxgi/tests: Fix swapchain parameter test failures on Win10 1909.
385 dxgi/tests: Fix output ownership test failures on Win10 1909.
388 d3dx10: Introduce get_d3dx10_dds_format().
389 d3dx10: Add D3DX10GetImageInfoFromFile{A, W}() stub implementation.
390 d3dx10: Add D3DX10GetImageInfoFromResource{A, W}() stub implementation.
391 d3dx10/tests: Introduce create_file() and delete_file().
392 d3dx10/tests: Introduce check_image_info().
393 d3dx10/tests: Add tests for D3DX10GetImageInfoFromFileW().
394 windowscodecs/tests: Add tests for calling WriteSource() without calling SetSize() prior to it.
395 windowscodecs: Correctly set output frame size for WriteSource().