The Wine development release 2.20 is now available.
What's new in this release (see below for details): - Improved event support in MSHTML. - Preloader support on ARM64. - Interpolation modes in Direct3D. - Improved metafile support in GdiPlus. - Initial version of Kerberos5 Authentication Package. - OLE clipboard cache improvements. - Various bug fixes.
The source is available from the following locations:
http://dl.winehq.org/wine/source/2.x/wine-2.20.tar.xz http://mirrors.ibiblio.org/wine/source/2.x/wine-2.20.tar.xz
Binary packages for various distributions will be available from:
http://www.winehq.org/download
You will find documentation on http://www.winehq.org/documentation
You can also get the current source directly from the git repository. Check http://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 2.20 (total 15):
40873 Multiple games (Witcher 3, Firewatch, The Solus Project, Banished) require dcl_input_ps support 41960 Totally Accurate Battle Simulator alpha crashes 43236 F.E.A.R, Condemned: Criminal Origins have no in-game audio 43457 The First Templar - Steam Special Edition crashes in the main menu 43512 Hellblade: Senua's Sacrifice - the player character is severely distorted 43572 Ham Radio Deluxe 6.4 crashes on unimplemented function ntdll.dll.RtlIpv4StringToAddressW 43770 Fidibo installer crashes very early in win7 mode 43810 Playkey needs api-ms-win-crt-stdio-l1-1-0.dll.__stdio_common_vsprintf_p 43883 Endless Legend - Broken in 2.18, worked in 2.17 43886 Xenia emulator needs api-ms-win-shcore-scaling-l1-1-1.dll 43912 wine-2.0.3/programs/wineboot/wineboot.c:684]: (style) Suspicious condition 43913 Process Hacker 3.x needs ntdll.dll.RtlDosPathNameToNtPathName_U_WithStatus 43914 64-bit RPCS3 emulator doesn't start, loader reports 'Invalid address' (non-relocatable PE wants to use lowest possible image base on NT: 0x10000 / 64 KB) 43920 Access violations during start-up of the Tina 11.0 and Circuitmaker2000 software 43927 Wine crashes when running anything (when compiled with gcc4.2, clang works)
----------------------------------------------------------------
Changes since 2.19:
Alex Henrie (9): comctl32/tests: Fix treeview test failures on French Windows XP. wininet/tests: Skip cookie attributes tests on IE < 8.0. quartz/tests: Fix test failures on Windows XP without upgraded DirectX. psapi/tests: Increase GetPerformanceInfo error margins for Windows 10. buildimage: Use "rsvg-convert" as the default RSVG command. winmm/tests: Give play from 0 to 0 more time to finish. user32: Implement IDI_SHIELD. vbscript/tests: Try calling GetObject again if it fails the first time. mountmgr: Symlink WoW64 Wine ports key to regular Wine ports key.
Alexandre Julliard (11): server: Avoid potential double free (Coverity). user32: Specify cursor hotspots separately for each size. ole32: Specify cursor hotspots separately for each size. riched20: Specify cursor hotspots separately for each size. comctl32: Specify cursor hotspots separately for each size. wordpad: Specify cursor hotspots separately for each size. buildimage: Convert the XML parser to use XML::LibXML. makedep: Output empty rule for source makefiles. configure: Silence error when krb5-config is missing. kernel32: Also set the preloader range for 64-bit binaries. rbtree: Clarify the loop conditions to avoid confusing older gcc.
Alistair Leslie-Hughes (1): midimap: Check each Midi Output for a Midi Through synthesizer.
Andrey Gusev (3): winepulse.drv: Remove redundant comparison. winsta: Add WinStationUnRegisterConsoleNotification stub. gdiplus: Fix misplaced parentheses.
André Hentschel (3): mpr/tests: Allow values from Win8+. loader: Build the preloader for ARM64. loader: Don't warn for limited user address space on ARM64.
Austin English (1): api-ms-win-shcore-scaling-l1-1-1: Add stub dll.
Daniel Lehman (3): msvcp120: Implement concurrent_vector::_Internal_throw_exception. msvcirt/tests: Add more exception tests. msvcp60: Only use name for internal string in exception.
Dmitry Timoshkov (5): kerberos: Add a stub for Kerberos5 Authentication Package. secur32: Add an initial implementation of the authentication package manager. ole32/tests: Add a test for saving an IOleCache storage. ole32/tests: Add a test for IOleCache storage contents created by IPersistStorage_Save(). ole32: Remove an optimization from DataCache_Save() that copies whole original storage.
Fabian Maurer (4): dx8vb: Add COM classfactory. dx8vb: Add D3DX8 coclass and ID3DX8 interface. dx8vb: Add DirectX8 coclass and IDirectX8 interface. wineboot: In ProcessRunKeys use correct parentheses in condition.
Gijs Vermeulen (1): msvcrt: Add vf[w]printf_p & vf[w]printf_p_l.
Hans Leidekker (2): secur32: Don't allocate a context handle in AcceptSecurityContext if new and passed in context are the same. webservices: Fix handling of namespace attributes in WsWriteNode.
Hugh McMaster (2): regedit: Correctly import hex values with no data. reg/tests: Correctly import hex values with no data.
Huw D. M. Davies (12): dwrite: Avoid using RegQueryInfoKey(). strmbase: Remove unnecessary WS_ICONIC. user32: Use WS_MINIMIZE instead of WS_ICONIC. user32: Trace the full NCCALCSIZE_PARAMS info if present. winefile: Initialize length before calling GetWindowPlacement(). user32: Initialize length before calling GetWindowPlacement(). ole32: Adding a view cache for DVASPECT_ICON produces a CF_METAFILEPICT cache entry. ole32: A presentation cache for DVASPECT_ICON must have format CF_METAFILEPICT. ole32: TYMED_NULL is not valid. ole32: There's no need to store a separate clip format for the data. ole32: Implement IOleCache2_UpdateCache(). ole32: Implement IOleCache_InitCache().
Jacek Caban (45): mshtml: Use window event target instead of body only for selected event properties. mshtml: Fire message event with window as a target. mshtml: Use separated struct for event target vtbl. mshtml: Use vtbl to get ConnectionPointContainer from event target. mshtml: Always use event target as script this in call_event_handlers. mshtml: Call default event handles through event target vtbl. mshtml: Store event target as EventTarget in HTMLEventObj. mshtml: Update event_info array. mshtml: Use event target vtbl to construct target chain in fire_event_obj. mshtml: Use event target vtbl to set current window event in fire_event_obj. mshtml: Set current event target in fire_event_obj. mshtml: Added IDocumentEvent::createEvent implementation. mshtml: Store DOMEvent instead of nsIDOMEvent in HTMLEventObj. mshtml: Store event id in DOMEvent. mshtml: Pass DOMEvent instead of event id to fire_event_obj. mshtml: Store event target in DOMEvent. mshtml: Pass DOMEvent to call_event_handlers. mshtml: Implement IDOMEvent::preventDefault and use it where appropriate. mshtml: Implement IDOMEvent::stopPropagation and use it where appropriate. mshtml: Store current IHTMLEventObj in DOMEvent and create it in fire_event_obj if needed. mshtml: Use fire_event_obj to dispatch XHR readystatechange event. mshtml: Don't use fire_event to dispatch contextmenu event. mshtml: Don't use fire_event to dispatch window load event. mshtml: Use create_event_from_nsevent in handle_htmlevent. mshtml: Don't use fire_event in postMessage. mshtml: Don't use fire_event to dispatch help event. mshtml: Don't use fire_event to dispatch focusin and focusout events. mshtml: Don't use fire_event to dispatch document load event. mshtml: Don't use fire_event to dispatch script readystatechange event. mshtml: Don't use fire_event to dispatch document and frame element readystatechange event. mshtml: Rename fire_event_obj and dispatch_event. mshtml/tests: Fixed tests on some versions of IE. mshtml/tests: Fixed tests on old IE versions. mshtml/tests: Skip postMessage test on IE7. mshtml: Added IDOMEvent:get_eventPhase implementation. mshtml: Store all attached listeners before calling them in call_event_handlers. mshtml: Store all event listeners in a list. mshtml/tests: Added a few more event tests. mshtml: Properly invoke event listeners in IE9+ mode. mshtml: Added IDOMEvent::addEventListener implementation. mshtml: Added IDOMEvent::removeEventListener implementation. mshtml: Added support for capturing event phase. mshtml/tests: Added addEventListener tests. mshtml: Don't set no_event_obj for XHR events. mshtml: Release listeners in call_event_handlers.
Józef Kucia (12): wined3d: Use correct data type for immediate constants. d3d11/tests: Add test for immediate constant UAV stores. wined3d: Unroll SM4+ pixel shader inputs. wined3d: Use GLSL 4.40 if available. wined3d: Implement interpolation mode when GLSL 4.40 is available. wined3d: Implement SM4+ interpolation modifiers for GLSL < 4.40. wined3d: Pack interpolation modes. d3d11/tests: Add test for shaders interstage interface. d3d10core/tests: Add test for shaders interstage interface. wined3d: Skip unhandled stream output components. wined3d: Get rid of unneeded includes. wined3d: Use ARRAY_SIZE().
Lauri Kenttä (2): readme: Fix word order. readme: Update Finnish translation.
Marcus Meissner (2): po: Update German translation. user32/tests: Removed a unreliable test.
Martin Storsjo (3): api-ms-win-core-file-l1-2-2: Add dll. api-ms-win-core-synch-ansi-l1-1-0: Add dll. api-ms-win-core-libraryloader-l1-2-1: Add dll.
Michael Stefaniuc (1): wmvcore: Print the debug string and not the pointer to it.
Mingcong Bai (1): po: Update Simplified Chinese translation.
Nikolay Sivov (21): dwrite/tests: Fix object instance leak (Valgrind). qedit/tests: Fix some leaks in tests (Valgrind). gdiplus/metafile: Implement EmfPlusImage deserialization for bitmaps. gdiplus/metafile: Implement EmfPlusRecordTypeDrawImagePoints record playback. gdiplus/metafile: Partially implement EmfPlusPath deserialization. gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillPath. gdiplus/metafile: Support serialized brushes in EmfPlusFillRects. gdiplus/metafile: Validate data size when playing back EmfPlusClear. gdiplus/metafile: Added support for EmfPlusFont objects. dwrite: Reuse streams when initializing font data and creating faces. include: Fix DWRITE_FONT_PROPERTY_ID enum. dwrite/tests: Some tests for font set properties. gdiplus/metafile: Partially implement EmfPlusPen support for playback. gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawPath records. gdiplus/metafile: Implement EmfPlusRegion deserialization. ntdll: Added RtlDosPathNameToNtPathName_U_WithStatus(). ntdll: RtlGetCurrentDirectory_U() returns length, not status. msxml3: Partially implement transformNodeToObject(). gdiplus/metafile: Implement EmfPlusRecordTypeSetClipRegion playback. gdiplus/metafile: Implement EmfPlusRecordTypeSetClipPath playback. gdiplus: Implement GdipSetImageAttributesNoOp.
Pierre Schweitzer (2): msi: Don't leak memory on failure. msi: Don't leak memory on failure.
Piotr Caban (14): msvcp120: Fix _Xtime_diff_to_millis2 overflow behavior. msi: Fix installations with only INSTALLSTATE_SOURCE features. msvcrt: Don't define type_info structures as const so we can set demangled class name. msvcp: Fix logic_error and runtime_error class layout if _MSVCP_VER>90. msi: Improve feature action value evaluation in conditions. msi: Improve "full uninstall" detection code. msi: Improve installation with no argument of already installed product. msi: Add install test with no arguments on already installed product. msi: Add more feature action tests. user32: Don't do the painting if combobox is not visible in CBPaintText. msi: Move condition integer handling into value_i. msi: Define special types for condition operators, identifiers and expressions. msi: Store condition intermediate values in union. msi: Add error handling when retriving component/feature state/action in condition.
Sergio Gómez Del Real (1): uxtheme: Add a stub for IsCompositionActive().
Stefan Dösinger (6): d3d8/tests: Use a borderless window for test_cursor_pos. d3d9/tests: Use a borderless window for test_cursor_pos. msvcp120/tests: Test _Xtime_diff_to_millis2 overflow behavior. d3d9/tests: Make test_reset more resilient against DPI scaling. d3d8/tests: Make test_reset more resilient against DPI scaling. d3d9/tests: Windows 10 15.07 doesn't detect external mode changes.
Vijay Kiran Kamuju (1): msvcp100: Add time_get::do_get and time_get::get functions.
Vincent Povirk (4): maintainers: Add myself for TWAIN libraries. wine.inf: Put 64-bit .ds fakedlls in windows/twain_64. twain_32: Notify data sources of their assigned Id. twain_32: Add support for DAT_NULL commands.
Zebediah Figura (3): gdiplus/tests: Mark broken bitmap background tests. mfplat/tests: Skip MFTRegister() tests if permissions are too low. version: Use the string value length when converting strings.
-- Alexandre Julliard julliard@winehq.org