1 The Wine development release 3.8 is now available.
3 What's new in this release (see below for details):
4 - Infrastructure for writing kernel driver tests.
5 - Support for showing file properties in the Shell browser.
6 - MP3 decoder as a DirectX Media Object.
7 - More support for the Task Scheduler.
8 - Support for COM aggregation in UrlMon.
11 The source is available from the following locations:
13 https://dl.winehq.org/wine/source/3.x/wine-3.8.tar.xz
14 http://mirrors.ibiblio.org/wine/source/3.x/wine-3.8.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 3.8 (total 32):
32 10365 Multiple applications fail to install due to custom action dll instance data not reset (dll pinned during execution of multiple custom actions)(Nero 7, ABBYY FineReader 9, Lingvo X5/X6, TradeStation 10.0)
33 16144 Acrobat Reader X, XI and Photoshop CS any version crash on complex documents due to missing atmlib.dll (Adobe Type Manager, Windows NT OpenType/Type 1 API Library)
34 21404 winedbg does not support fixed host:port parameter
35 21530 Wrong notification format used by tooltip attached to Toolbar
36 22048 Installation of '.NET documentation' from Windows SDK for Windows 7 and .NET Framework 3.5 SP1 installer fails (VS90-KB953196-x86.exe hotfix fails with incorrect TARGETDIR)
37 23757 Free Pascal 2.4.0 segfaults (Cygwin 1.5.18 TLS implementation overwrites Wine/glibc/pthread data near Tib->StackBase)
38 30449 GDIPaint does not paint (works with native gdiplus)
39 30713 Microsoft Visual C++ 64-bit redistributables get incorrectly installed into SysWOW64 (system directory for 32-bit files) when run under 64-bit Wine
40 31741 python.org 64-bit Python 2.7.3 installer: selecting preferred installation folder does nothing (32-bit bootstrapper process needs custom action script/dll executed in 64-bit server process)
41 37856 Multiple installers fail due to 32-bit custom actions erroneously executed in 64-bit MSI process (packages needs to be processed as 32-bit by default, with relegation to 32-bit server)
42 38073 GdipDrawPath graphics object has no HDC (graphical glitches in Adobe Premiere Pro CS3)
43 43607 Akiba's Trip Undead & Undressed requires MFStartup to return S_OK.
44 44118 Steam Big Picture requires d3d11 Multiple Viewports
45 44119 Steam Big Picture requires d3d11 Multiple scissor rects
46 44334 'start /W "" notepad' does not wait as on native.
47 44399 WickrMe 4.19.7: Crashes due to stub combase.RoGetActivationFactory
48 44553 Kerberos support added in Wine 3.1 is breaking build on some old Linux distributions
49 44866 Autodesk Fusion 360 fails to run: propertystore_SetValue and propertystore_Commit need fake success
50 44895 League Of Legends: Unable to log in if behind OpenWRT based router
51 44914 Wrong cursor for IDC_SIZEWE
52 44953 Adobe Premiere Elements 14 (trial) crashes inside winmm.dll
53 44959 Adobe Premiere Elements 14 fails to install: ERROR: DF039: Cannot set folder icon. Error 2 File not found.(Seq 4)
54 44976 ConEmu-Maximus5 Windows console emulator causes crash of builtin 'wineconsole.exe' (division by zero)
55 45033 Dragon Naturally Speaking 15 installer fails with 'CheckWMIService' returning error 1602 (needs dummy Windows Management Instrumentation service 'winmgmt')
56 45073 MSI custom action server process crashes in remote_GetActionInfo while unmarshalling data (affects many MSI installers)
57 45078 UFOHD2 crashes inside devenum
58 45081 DsEnumerateDomainTrusts stubbed without A/W suffix
59 45118 Microsoft Windows PowerShell 6.x reports 'PowerShell Gallery is currently unavailable.' (WinHttpSetOption returns incorrect lasterror on unsupported options)
60 45134 Multiple MSI-based installers crash in custom actions with unhandled RPC exception 0x6b5 'Unknown Interface' (World Racing 2 demo, ABBYY Lingvo x6)
61 45136 Wine does not behave as Windows when using TBM_SETPAGESIZE call before TBM_SETRANGE
62 45143 Neoncron 2 Launcher crashes embedding IE browser process when clicking bottom menu items
63 45157 Toolbar code crashes on certain button tooltips
65 ----------------------------------------------------------------
70 winmm: Fix default time division value in MIDI stream.
71 winmm: Avoid casting unsigned char to plain char.
74 user32/tests: Drop nonsensical broadcast tests that fail on Windows 10.
75 include: Add strtof and strtold.
76 ucrtbase: Hook up _Exit.
78 include: Add strtoll, strtoll_l, strtoull, and strtoull_l.
80 include: Add lldiv and lldiv_t.
81 msvcrt: Omit pointer coding functions from SOs for newer MSVC versions.
83 Alexandre Julliard (8):
84 winegcc: Add support for building native subsystem libraries.
85 user32/tests: Avoid calling a potentially missing function.
86 user32/tests: Reorganize the DPI tests.
87 user32: Set the thread DPI awareness to the window's when calling a window procedure.
88 Revert "user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE."
89 user32: Avoid repeatedly fetching the window rectangles in SetWindowPos.
90 user32: Take into account the offset between old and new parent in SetParent().
91 ws2_32: Add fallback data for getprotobyname/number.
93 Alistair Leslie-Hughes (5):
94 netapi32: Add DsEnumerateDomainTrustsA/W stubs.
95 mfplat: Return S_OK from MFStartup stub.
96 maintainers: Remove previous wine-staging maintainers.
97 combase/tests: Add RoGetActivationFactory tests.
98 include: Move AllocateAndGet* functions to public header.
101 ntoskrnl.exe/tests: Don't test functions directly when reporting GetLastError().
104 winebus: Properly identify SDL joysticks index when hot-plugged.
107 po: Update Lithuanian translation.
110 include: Add _countof macro.
112 advapi32/tests: Don't call function in assert().
113 msvcrt/tests: Add setlocale test.
114 msvcr100/tests: Add setlocale test.
115 msvcr110/tests: Add setlocale tests.
116 advapi32/tests: Add tests for REG_NOTIFY_THREAD_AGNOSTIC.
117 include: Add thread pool declarations for currently implemented functions.
118 advapi32/tests: Add RegNotifyChangeKeyValue tests.
119 server: Notify parents of registry value changes.
120 crypt32: Clear dirty flag after flushing changes to registry.
121 shell32: Convert / to \ when parsing file list.
122 advapi32/tests: Free subkey.
124 Dmitry Timoshkov (17):
125 schedsvc: Also watch for job file modifications.
126 schedsvc: Explicitly terminate the received name in the notification buffer.
127 mstask: Export the AT Service RPC API.
128 schedsvc: Reimplement FILE_ACTION_MODIFIED by remove_job()/add_job() sequence as MSDN suggests.
129 mstask: Implement ITaskScheduler::Delete().
130 schedsvc: Pass full task file name to remove_job()/add_job().
131 mstask: Don't touch instance count field of the job file in the client.
132 mstask: Initialize more task fields from the job file on load.
133 mstask: Implement ITask::GetFlags().
134 mstask: Return SCHED_S_TASK_RUNNING from ITask::GetStatus() if there are running task instances.
135 mstask: Write more correct flags and status to the job file.
136 mstask: Try opening a file more times when saving a job file.
137 mstask: Implement ITask::Run().
138 mstask: Implement ITask::Terminate().
139 mstask/tests: Add some tests for ITask::Run().
140 schedsvc: Read more task fields from the job file.
141 mstask: Add stdcall to cdecl thunks for AT Service RPC API.
144 wineconsole: When loading settings for an application, respect a 0 in FontSize.
147 user32/tests: Add a trailing '\n' to an ok() call.
148 secur32: Make alloc_lsa_connection() static.
149 msi/tests: Add trailing '\n's to ok() calls.
152 shell32: Fake success in propertystore_[SetValue|Commit].
155 server: Dump token details.
156 server: Store the token owner separately.
157 configure: Require a more recent version of libkrb5.
158 programs: Add a stub winmgmt service.
159 winhttp: Fix invalid option error returned from WinHttpSetOption.
160 hnetcfg/tests: Ignore case when comparing filenames.
161 ws2_32: Enable IP_DONTFRAGMENT by default for SOCK_STREAM sockets.
164 wined3d: Make the "args" parameter to glsl_blitter_generate_program() const.
165 wined3d: Add core context P8 blit support to the GLSL blitter.
168 msvcp: Add a stub of _Concurrent_vector_base_v4.
171 regedit: Stop exporting REG_SZ data at the first NUL character.
172 reg: Stop exporting REG_SZ data at the first NUL character.
174 Huw D. M. Davies (1):
175 user32: Pass the modifiable string buffer directly to TEXT_NextLineW().
178 jscript: Use new PROPF_CONFIGURABLE flag instead of PROPF_DONTDELETE.
179 jscript: Use new PROPF_WRITABLE flag instead of PROPF_CONST.
180 jscript: Rename PROPF_ENUM to PROPF_ENUMERABLE.
181 wininet: Allow INTERNET_OPTION_SETTINGS_CHANGED on all handle types.
182 wininet: Add stub for INTERNET_OPTION_REFRESH.
183 urlmon: Store aggregated protocol handler IUnknown in BindProtocol.
184 urlmon: Don't store IWinInetHttpInfo reference in BindProtocol.
185 urlmon: Don't store IWinInetInfo reference in BindProtocol.
186 urlmon: Release protocol handler in BindProtocol::Terminate.
187 urlmon: Added support for COM aggregation of file protocol handler.
188 urlmon: Added support for COM aggregation to http protocol handler.
189 urlmon: Added support for COM aggregation to ftp protocol handler.
190 urlmon: Added support for COM aggregation to mk protocol handler.
191 urlmon: Use protocol handler's IUnknown to query other interfaces in BindProtocol.
192 urlmon: Use COM aggregation for urlmon protocols in BindProtocol::StartEx.
193 urlmon/tests: Added more protocol COM aggregation tests.
194 urlmon: Support querying interfaces from aggregated handlers in BindProtocol.
195 urlmon: Use COM aggregation for IWinInetInfo and IWinInetHttpInfo interfaces in BindProtocol.
196 urlmon: Query for IWinInet[Http]Info on BindProtocol instead of protocol handler directly.
197 jscript: Added Object.getOwnPropertyDescriptor implementation.
198 jscript: Use jsdisp_get_own_property in Object.hasOwnProperty implementation.
199 jscript: Use jsdisp_get_own_property in Object.propertyIsEnumerable implementation.
200 jscript: Make String.length non-writable.
201 jscript: Make Function instance object properties non-writable.
202 jscript: Make RegExp object properties non-writable.
203 jscript: Add Object.defineProperty implementation.
204 jscript: Use jsdisp_define_property instead of jsdisp_propput_const.
205 jscript: Make global constants non-writable in ES5 mode.
206 jscript: Use jsdisp_define_property instead of jsdisp_propput_dontenum for global properties.
209 winebus: Print SDL error message when SDL cannot be initialized.
212 shell32: Handle writing an iconresource entry in SHGetSetFolderCustomSettings.
213 winmm: Return error in waveInMessage if either dwParam1 or dwParam2 is null.
214 atmlib: Add stub dll.
215 atmlib: Add stub for ATMFinish.
218 arm64: Use __builtin_ms_va_list and __attribute__((ms_abi)) on arm64.
219 configure: Detect MinGW-w64 ARM64 toolchains.
222 wined3d: Use staging resources to blit from CPU resources in the fixed-function blitter.
223 wined3d: Implement P8 blits in the GLSL blitter.
224 wined3d: Rename gen_planar_yuv_read() to gen_packed_yuv_read().
227 combase: Implement RoGetActivationFactory.
228 combase: Implement RoActivateInstance.
229 combase: Add stub for RoGetApartmentIdentifier.
230 combase: Add stub for RoRegisterForApartmentShutdown.
231 combase: Add stub for RoGetServerActivatableClasses.
232 combase: Add stub for RoRegisterActivationFactories.
233 combase: Add stub for CleanupTlsOleState.
234 shell32: Add general tab in file property dialog.
235 ntdll: Add stub for RtlQueryPackageIdentity.
236 include: Add IApplicationActivationManager interface declaration.
237 ext-ms-win-uxtheme-themes-l1-1-0: Add dll.
238 feclient: Add stub dll.
241 comctl32/tooltip: Compare to special callback pointer value directly.
242 comctl32/toolbar: Fix tooltip notification forwarding.
243 d3d11: Add ID3D11Device1 stub.
244 d3d11: Add ID3D11DeviceContext1 stub.
245 wined3d: Add new functions to set and get maximum frame latency for the device.
246 comctl32/trackbar: Don't update page size if it was explicitly set.
247 comctl32/trackbar: Remove separate field indicating focused state.
248 comctl32/trackbar: Fix reseting to default page size.
249 user32: Avoid touching last error on successful path of GetClassInfo().
250 comctl32/toolbar: Handle resource strings returned for tooltip text.
251 po: Update Russian translation.
252 user32/menu: Return locked menu data when looking for menu items.
253 gdiplus: Fix the number of transformed points for squared caps.
254 gdiplus: Convert actually used points for anchored round caps.
255 gdiplus: Fix the number of transformed points for round caps.
256 gdiplus: Draw using actual point data for custom caps.
257 dsound: Use correct pointer type.
260 include: Add WSD_PROBE structure to wsdtypes.h.
261 wsdapi/tests: Add initial test for receiving probe messages.
264 d3d11: Handle D3D11_FEATURE_ARCHITECTURE_INFO in d3d11_device_CheckFeatureSupport().
265 d3d11/tests: Add tests for D3D11_FEATURE_ARCHITECTURE_INFO in CheckFeatureSupport().
268 msvcr120: Add Concurrency::details::platform::GetCurrentThreadId export.
269 kernel32: Fix CreateProcess behavior when batch script command contains '"' characters.
270 msvcr110: Try SNAME when matching locale.
273 server: Map EXDEV to STATUS_NOT_SAME_DEVICE.
275 Sebastian Lackner (1):
276 ntoskrnl.exe/tests: Add test driver.
279 gdi32: Check for truncated EMF files.
280 gdi32: Check that emf records are within the file.
282 Zebediah Figura (34):
283 devenum: Check for null pointer in IMoniker_BindToObject().
284 services: Fall back to the current architecture if GetBinaryType fails.
285 makedep: Also pass EXTRADLLFLAGS to the cross-compiled test DLL.
286 msi: Execute the custom action server with the correct bitness.
287 msi: Don't load a custom action DLL in the main process.
288 ntoskrnl.exe/tests: Also handle ERROR_INVALID_IMAGE_HASH.
289 ntoskrnl.exe/tests: Add a test for IoGetCurrentProcess().
290 ntoskrnl.exe/tests: Add a simple test for MmMapLockedPagesSpecifyCache().
291 msi: Set the correct values for ProgramFiles64Folder and CommonFiles64Folder.
292 ntoskrnl/tests: Use WINAPIV calling convention for variadic functions.
293 winedbg: Add support for starting on a user-supplied port.
294 strmbase: Check that the output pin supports the given media type before connecting.
295 strmbase: Implement QueryAccept() on top of CheckMediaType() for output pins too.
296 strmbase: Consistently trace the BasePin object.
297 msi: Check return value of GetBinaryType().
298 msi: Disable WoW redirection when installing a 64-bit package.
299 jscript: Avoid crash when calling stringify() with no arguments.
300 rpcrt4/tests: Add a basic test for RPC_IF_AUTOLISTEN.
301 rpcrt4: RpcServerUnregisterIf() with NULL ifspec shouldn't unregister auto-listen interfaces.
302 dmoguids: Add library.
303 msdmo: Link to dmoguids.
304 msdmo: Return a valid enumerator even if the category doesn't exist.
305 msdmo: Fix pointer checking in IEnumDMO_Next().
306 msdmo: Make formatting consistent with the rest of the file.
307 msdmo: Only return valid GUIDs in IEnumDMO_Next().
308 msi: Avoid leaking custom action data.
309 include: Add wmcodecdsp.idl and CMP3DecMediaObject.
310 wmcodecdspuuid: Add static library.
311 mp3dmod: Add stub MP3 Decoder DMO.
312 mp3dmod: Link to libmpg123.
313 mp3dmod: Return S_OK from SetInputType().
314 mp3dmod: Implement SetOutputType().
315 mp3dmod: Implement ProcessInput().
316 mp3dmod: Implement ProcessOutput().
319 user32: Use the heap_*() functions in text.c where possible.
320 user32: Use common cleanup code in DrawTextExW().