wined3d: More accurately determine whether a separate sRGB texture is required.
[wine.git] / ANNOUNCE
blob5ffa2692cc3245ae4891fd657ba41ab7e411e48c
1 The Wine development release 4.16 is now available.
3 What's new in this release (see below for details):
4   - More reliable mouse grabbing in games.
5   - Better cross-compilation support in WineGCC.
6   - Improved compatibility with Windows debuggers.
7   - Various bug fixes.
9 The source is available from the following locations:
11   https://dl.winehq.org/wine/source/4.x/wine-4.16.tar.xz
12   http://mirrors.ibiblio.org/wine/source/4.x/wine-4.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 4.16 (total 16):
30   22038  Art of Murder Cards of Destiny: some character models are plain white
31   26215  Super Meat Boy shows grey textures for some objects
32   41258  UE4 applications crash with "Assertion failed: Count >= 0" (Epic Games Launcher, Paragon)
33   44338  cmd: Brackets are no deliminiter in the condition part of the if command.
34   45560  Windows Sysinternals 'psping' v2.x tool, part of 'PsTools' crashes when trying to ping host (needs 'iphlpapi.ParseNetworkString')
35   46149  Multiple applications need ntdll.dll.RtlIpv4StringToAddress{A,W,ExA,ExW} implementation (Processhacker 2.x, Icinga 2 'check_ping')
36   46421  μTorrent has squares in it's update-dialog
37   46549  Multiple .NET 4.x applications and games using 'System.Net.HttpListener' class crash due incomplete httpapi implementation (PUBG Lite Launcher, SeeSnake HQ)
38   46983  type command in cmd.exe with two files and stdout redirect, behavior is different
39   47476  Rhinoceros 6 (.NET 4.x app) fails to verify online-license: System.EntryPointNotFoundException: Unable to find an entry point named 'HttpCloseRequestQueue' in DLL 'httpapi.dll'
40   47524  Hearthstone black screen
41   47629  PotPlayer 1.7: Crash when trying to play any file
42   47675  Wine builtin 'services.exe' uses invalid wait object for delayed autostart services
43   47693  ExHIBIT (Sample Project): Can't select menu item in the title screen
44   47709  Zoom Edit&Share 5.0.0.0: installer crashes starting with wine-3.19
45   47732  This is bad bug in wine.
47 ----------------------------------------------------------------
49 Changes since 4.15:
51 Akihiro Sagawa (7):
52       msvcrt/tests: Restore the multibyte codepage after the tests.
53       msvcrt/tests: Add more tests for _mbsspn and _mbsspnp.
54       msvcrt: Fix _mbsspn implementation.
55       msvcrt: Reimplement _mbsspnp using _mbsspn.
56       ucrtbase: Add strtoimax and _strtoimax_l.
57       ucrtbase: Add strtoumax and _strtoumax_l.
58       dwrite: Avoid a magic constant.
60 Alex Henrie (10):
61       ntdll: Implement RtlIpv4StringToAddress(Ex)W.
62       ntdll: Implement RtlIpv4StringToAddress(Ex)A.
63       include: Add structures and constants needed for ParseNetworkString.
64       iphlpapi/tests: Add tests for ParseNetworkString.
65       include: Add ip2string.h.
66       iphlpapi: Implement ParseNetworkString for IPv4 addresses and services.
67       server: Fix use after free in add_committed_range (scan-build).
68       winedbg: Fix dependence on undefined left-shift behavior (scan-build).
69       gdi32: Handle HeapAlloc failure in SetEnhMetaFileBits (scan-build).
70       winex11: Factor out array access in ConvertAttribWGLtoGLX (scan-build).
72 Alexandre Julliard (40):
73       configure: Don't link to libunwind if not necessary.
74       kernel32: Move interlocked functions to kernelbase.
75       kernel32: Move file change notification functions to kernelbase.
76       kernel32: Move virtual memory functions to kernelbase.
77       kernel32: Move heap functions to kernelbase.
78       kernel32: Move memory resource functions to kernelbase.
79       kernel32: Move global/local memory functions to kernelbase.
80       kernel32: Move OS version functions to kernelbase.
81       kernel32: Move debugger functions to kernelbase.
82       kernel32: Move unhandled exception functions to kernelbase.
83       kernel32: Move QueryPerformanceCounter/Frequency functions to ntdll.
84       kernel32: Move environment functions to kernelbase.
85       kernel32: Move process startup information functions to kernelbase.
86       ntdll: Allocate environment blocks from the process heap.
87       ntdll: Add partial implementation for IOCTL_SERIAL_GET_PROPERTIES.
88       kernel32: Move ioctl functions to kernelbase.
89       kernel32: Move console functions to kernelbase.
90       winebuild: Add support for the -B option.
91       winegcc: Fix handling of the --sysroot flag when not building inside the Wine tree.
92       winegcc: Support the --target option like winebuild does.
93       winegcc: Forward the -B options to winebuild.
94       configure: Check for unw_step() instead of unw_getcontext().
95       ntdll: Use virtual_uninterrupted_read_memory() to read code inside signal handler on x86-64.
96       ntdll: Use a stack_layout structure to build exception data on x86-64.
97       ntdll: Use a stack_layout structure to build exception data on i386.
98       ntdll: Factor out setup_raise_exception() on i386.
99       ntdll: Handle single step exception in signal handler on i386.
100       ntdll: Handle alignment fault in signal handler on i386.
101       ntdll: Handle breakpoint interrupt in signal handler on i386.
102       ntdll: Handle invalid %gs fault in signal handler on i386.
103       ntdll: Handle page faults in signal handler on i386.
104       ntdll: Handle ATL thunk emulation in signal handler on i386.
105       ntdll: Remove no longer needed function argument from setup_raise_exception() on i386.
106       ntdll: Use a stack_layout structure to build exception data on ARM64.
107       ntdll: Factor out setup_raise_exception() on ARM64.
108       ntdll: Handle trap exception in signal handler on ARM64.
109       ntdll: Handle page fault in signal handler on ARM64.
110       ntdll: Remove no longer needed function argument from setup_raise_exception() on ARM64.
111       ntdll: Avoid calling init_handler() twice in signal handler on i386.
112       ntdll: Use virtual_uninterrupted_read_memory() to read code inside signal handler on i386.
114 Alistair Leslie-Hughes (11):
115       dsound: Trace all DSBCAPS values.
116       dsound/tests: Add effect parameters tests.
117       wbemprox: Return NULL on error (Coverity).
118       dsound: Trace each special effect as it's processed.
119       hhctrl.ocx: Simplify extracting the help filename (Coverity).
120       httpapi/tests: Assign to correct type (Coverity).
121       http.sys: Allocate enough memory including the NULL. (Coverity).
122       wineqtdecoder: Add missing header.
123       include: Add DSFX_I3DL2REVERB defines.
124       include: Correct DSFX_I3DL2REVERB_ROOM_MIN value.
125       wininet/tests: InternetQueryOption should return a valid value for username/password when using cached credentials.
127 Andrew Eikum (3):
128       ntoskrnl.exe: Add -norelay flag for _vsnprintf.
129       mmdevapi: Avoid reporting odd numbers of channels.
130       winebus.sys: Don't WARN about backends we didn't build.
132 Andrey Gusev (3):
133       wininet/tests: Remove LPVOID cast.
134       winhttp/tests: Remove LPVOID casts.
135       dxgi: Add IDXGIDevice3 stub.
137 Daniel Lehman (3):
138       wininet: Return error from HttpQueryInfo if number argument is invalid.
139       wininet: Support large downloads.
140       ntdll/tests: Adjust timing on RtlWaitOnAddress tests.
142 Dmitry Timoshkov (14):
143       rpcrt4: Return an exception code from NdrAsyncClientCall.
144       localspl: Remove useless NULL checks from AddMonitor trace.
145       localspl: AddMonitor should create registry entry for a monitor before initializing it.
146       localspl: Add support for monitors providing the MONITOR2 interface.
147       localspl: Unload monitor in DeleteMonitor.
148       localspl: Use the monitor handle returned by InitializePrintMonitor2.
149       localspl: Fix MONITOR2.cbSize calculation when converting from MONITOREX.
150       localspl: Fix MONITOR2 callback prototypes.
151       winsplp.h: Fix MONITORINIT definition.
152       localspl: Add MONITORREG stub callbacks for InitializePrintMonitor2.
153       localspl/tests: Add support for monitors providing the MONITOR2 interface.
154       ntdll/tests: Fix compilation with PSDK compiler.
155       ntdll: Implement RtlUnicodeToUTF8N.
156       ole32: Turn FIXME into a TRACE for clipboard backend of QueryGetData.
158 Evgeny Litvinenko (1):
159       aclocal.m4: Allow nesting WINE_TRY_SHLIB_FLAGS.
161 Fabian Maurer (1):
162       comctl32/syslink: Properly handle '\r'.
164 François Gouget (21):
165       comctl32: Typo and spelling fixes in comments.
166       advapi32/tests: Spelling fixes in a couple of comments.
167       advapi32/tests: Spelling tweaks in ok() messages.
168       widl: Fix a variable name in a comment.
169       cabinet: A spelling fix in a variable / field name.
170       libwine: Fully dereference the /proc/self/exe symbolic link.
171       libwine: Like Linux, NetBSD has /proc/self/exe.
172       tests: Add support for subtests.
173       msi/tests: Declare the custom subtest.
174       ntoskrnl/tests: Declare the driver subtest.
175       kernel32/tests: Avoid unneeded strlen*() calls.
176       comctl32/tests: Tweak an ok() message to avoid a spelling error.
177       d3d8/tests: Spelling fixes in ok() messages.
178       d3d9/tests: Spelling fixes in ok() messages and a comment.
179       d3d10/tests: Spelling fixes in ok() messages.
180       d3dx9_36/tests: Spelling fixes in ok() messages.
181       dinput8/tests: A spelling fix in a comment.
182       ddraw/tests: Spelling fixes in ok() messages.
183       ddrawex: Tweak the createDD() name to make CodeSpell happy.
184       winemac.drv: Avoid an unneeded lstrlenW() call.
185       dwrite: A couple of spelling fixes in comments.
187 Gabriel Ivăncescu (4):
188       kernel32/locale: Set whether we used the default char when using Unix codepage.
189       kernel32/locale: Don't fail with non-NULL args when the Unix codepage falls back to UTF-8.
190       vbscript/parser: Handle lack of newlines before certain End statements.
191       vbscript/tests: Test lack of newline parsing before End statements.
193 Gerald Pfeifer (1):
194       dwrite/tests: Silence a compiler warning in test_fontsetbuilder.
196 Hans Leidekker (7):
197       wbemprox: Strip curly brackets from path strings.
198       wbemprox: Support evaluating CIM_REFERENCE expressions.
199       wbemprox: Perform a case insensitive match on path components.
200       wbemprox: Implement Win32_LogicalDiskToPartition.
201       wbemprox: Implement Win32_DiskDriveToDiskPartition.
202       wbemprox: Fix index in fill_diskdrive and fill_diskpartition.
203       wbemprox: Add support for evaluating ASSOCIATORS OF queries.
205 Huw D. M. Davies (3):
206       wininet: Include limits.h to define UINT_MAX and ULONG_MAX.
207       configure: Fix argument type of unw_step().
208       configure: Fix libunwind warning logic.
210 Jacek Caban (8):
211       ntdll: Move setup_exception implementation.
212       ntdll: Factor out setup_raise_exception.
213       ntdll: Handle single step exception in setup_raise_exception on x86_64.
214       ntdll: Handle interrupt exceptions in signal handler on x86_64.
215       ntdll: Call virtual_handle_fault from signal handler on x86_64.
216       ntdll: Remove no longer needed func argument from setup_raise_exception.
217       ntdll: Call send_debug_event from debug handler on x86_64.
218       services: Use threadpool timers for services delay loading.
220 Jactry Zeng (2):
221       mfmediaengine: Add IMFMediaEngine stub.
222       mfmediaengine: Merge media_engine_attributes into media_engine struct.
224 Ken Thomases (1):
225       ntdll: On Mac, use the Mach API as preferred approach to get a thread's GS.base.
227 Kevin Puetz (1):
228       objbase.h: Fix StringFromIID declaration.
230 Kim Malmo (1):
231       po: Update Norwegian translation.
233 Marcus Meissner (1):
234       iphlpapi: Fixed size to MultiByteToWideChar.
236 Michael Stefaniuc (3):
237       strmbase: Don't cast from COM object to interface.
238       quartz: Don't cast from COM object to interface.
239       d3d10: Avoid casts from COM object to interface.
241 Naveen Narayanan (1):
242       libwine: Only link libi386 with the libraries that need it.
244 Piotr Caban (2):
245       msvcrt: Match broken multi-byte character with everything in _mbsspn.
246       wbemdisp: Handle NULL signatures in init_members.
248 Rémi Bernon (9):
249       winex11.drv: Do not react to keyboard grab focus events.
250       winex11.drv: Only grab or warp the cursor when keyboard isn't grabbed.
251       winex11.drv: Retry last ClipCursor when grab is released.
252       winex11.drv: Do not set clipping_cursor when clip window map state changes.
253       winex11.drv: Explicitly call XUngrabPointer when clipping is released.
254       winex11.drv: Only call XWarpPointer if we can get exclusive pointer grab.
255       dnsapi: Add DnsGetCacheDataTable stub.
256       user32/tests: Add RegisterRawInputDevices parameter validation tests.
257       user32: Add parameter validation for RegisterRawInputDevices.
259 Sven Baars (4):
260       quartz: Fix some memory leaks (Coverity).
261       quartz/tests: Fix a memory leak (Valgrind).
262       hidclass.sys: Fix some memory leaks on error path (Coverity).
263       winex11.drv: Fix a memory leak (Coverity).
265 Zebediah Figura (37):
266       amstream: Use shorter method names for the multimedia stream.
267       amstream: Move multimedia_stream_create() to avoid forward declarations.
268       amstream: Forward IMultiMediaStream::GetMediaStream() to the stream filter.
269       amstream: Don't keep track of streams in the multimedia stream object.
270       amstream/tests: Add some tests for IEnumMediaTypes.
271       amstream/tests: Add more tests for media types.
272       amstream: Move audio and ddraw streams into separate files.
273       amstream: Reimplement IPin::EnumMediaTypes() for the primary video stream.
274       amstream: Get rid of the DirectDrawMediaStreamImpl typedef.
275       amstream: Reimplement IMemInputPin locally for the DirectDraw stream.
276       amstream: Reimplement IPin locally for the DirectDraw stream.
277       amstream: Use shorter method names for DirectDraw stream methods.
278       amstream/tests: Also test pin information for the primary audio stream.
279       amstream: Reimplement IPin::EnumMediaTypes() for the primary audio stream.
280       amstream: Get rid of the AudioMediaStreamImpl typedef.
281       amstream: Reimplement IMemInputPin locally for the primary audio stream.
282       amstream: Reimplement IPin locally for the primary audio stream.
283       amstream: Use shorter names for primary audio stream methods.
284       winegstreamer: Use strmbase_source_init().
285       wineqtdecoder: Use strmbase_source_init().
286       strmbase: Get rid of the no longer used pin constructor and destructor helpers.
287       qcap/avimux: Use strmbase pin methods directly.
288       strmbase: Store the filter as a strmbase_filter pointer in the BasePin structure.
289       strmbase: Get rid of the "pCritSec" member of BasePin.
290       http.sys: Use the SOCKET type for Windows sockets.
291       winegstreamer: Get rid of the unused "gstpool" field from GSTOutPin.
292       winegstreamer: Get rid of the "isaud" and "isvid" fields of GstOutPin.
293       winegstreamer: Get rid of the GSTInPin structure.
294       winegstreamer: Get rid of the unused "discont" field from GstImpl.
295       winegstreamer: Handle GST_EVENT_RECONFIGURE.
296       winegstreamer: Don't activate our source pad immediately after connecting.
297       winegstreamer: Use the global HeapAlloc() wrappers.
298       strmbase: Get rid of the BaseOutputPin typedef.
299       strmbase: Get rid of the BaseOutputPinFuncTable typedef.
300       winegstreamer: Use BasePinImpl_QueryAccept() and BasePinImpl_EnumMediaTypes().
301       winegstreamer: Get rid of the GSTImpl typedef.
302       winegstreamer: Get rid of the GSTOutPin typedef.
304 Zhiyi Zhang (4):
305       winemac.drv: Fix build with older macOS SDKs.
306       comctl32/taskdialog: Use BCM_GETIDEALSIZE to calculate button size.
307       user32/tests: Remove an extraneous check.
308       user32/tests: Fix some msg test failures.
311 Alexandre Julliard
312 julliard@winehq.org