Software 42778 Published by

The Wine development release 2.21 is now available



What's new in this release (see below for details):
- Still more metafile support in GdiPlus.
- Indirect draws support in Direct 3D.
- Calling convention fixes on ARM.
- Improved serial port detection on Linux.
- Services fixes on WoW64.
- Better DPI scaling in the Shell Explorer.
- Various bug fixes.

The source is available from the following locations:

http://dl.winehq.org/wine/source/2.x/wine-2.21.tar.xz
http://mirrors.ibiblio.org/wine/source/2.x/wine-2.21.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.21 (total 16):

34601 Hydro Thunder from Midway Arcade Treasures 3 crashes quickly after the start
37669 Resetting a write watch can cause memory access violation in kernel
38334 SpinTires crashes with unimplemented function d3dx9_36.dll.D3DXFrameFind
42568 user32/tests/msg.ok intermittent failure in SendMessage from other thread
42569 user32/tests/clipboard intermittent failure ("expected freed memory")
42570 dinput/tests/mouse intermittently fails in Acquire() and GetDeviceData()
42863 Multiple games require sample_c_lz for cube/array textures (Winexy, Witcher 3, Flame in the Flood)
43273 The Witcher 3 freezes the system in a certain area of the game
43316 Process Hacker 2.x needs ADVAPI32.dll.LsaLookupPrivilegeName
43405 NieR:Automata - Most bullets are invisible
43483 Medusa Demo crashes with unimplemented function d3dx10_43.dll.D3DX10PreprocessShaderFromMemory
43750 USB "ttyACM0" serial port not being created
43853 Keepass2 fails to launch
43884 MSVC LINK.EXE version 14.11.25547.0 crashes due to unimplemented function _memicmp_l
43939 comctl32 cannot load its assembly on arm
43952 kernel32/tests/console.ok fails

----------------------------------------------------------------

Changes since 2.20:

Alex Henrie (8):
mountmgr: Map ttyACM devices to COM ports on Linux.
vbscript/tests: Fix test for WeekDayName(foo, bar, 0).
kernel32/tests: Detect and handle a redirected stdin.
libport: Move rint fallback implementations from msvcrt to libport.
d3dx9/tests: Correct Fresnel reference term.
d3dx9/tests: Provide 8 significant digits in matrix reference values.
d3dx9/tests: Relax D3DXQuaternionToAxisAngle test stringency a bit.
d3dx9/tests: Use a helper function to set matrix values in math tests.

Alexandre Julliard (23):
configure: Require floating point support on ARM.
setupapi: Use correct architecture for fake dlls on ARM and ARM64.
wldap32: Use WINAPIV calling convention for variadic functions.
ntdll: Use WINAPIV calling convention for variadic functions.
kernel32/tests: Use WINAPIV calling convention for variadic functions.
msvcrt: Use WINAPIV calling convention for variadic functions.
include: Use WINAPIV calling convention for variadic functions.
attrib: Use WINAPIV calling convention for variadic functions.
cmd: Use WINAPIV calling convention for variadic functions.
ipconfig: Use WINAPIV calling convention for variadic functions.
net: Use WINAPIV calling convention for variadic functions.
netstat: Use WINAPIV calling convention for variadic functions.
reg: Use WINAPIV calling convention for variadic functions.
regedit: Use WINAPIV calling convention for variadic functions.
regsvr32: Use WINAPIV calling convention for variadic functions.
taskkill: Use WINAPIV calling convention for variadic functions.
uninstaller: Use WINAPIV calling convention for variadic functions.
xcopy: Use WINAPIV calling convention for variadic functions.
include: Use the hard-float calling convention for Windows APIs on ARM
ntdll: Don't change packing of fd cache entries.
user32: Pass the text length explicitly to EDIT_EM_ReplaceSel.
user32/tests: Avoid strlen in traces.
readme: Patches should now be sent to wine-devel.

Alistair Leslie-Hughes (4):
oledb32: DataConvert support DBTYPE_VARIANT -> DBTYPE_R4.
oledb32: Fix typo.
quartz: Output This in TRACE statements.
quartz: Output This in TRACE statements.

Andrew Eikum (4):
explorer: Don't leak PIDL.
explorer: Scale element sizes by DPI.
shell32: Scale explorer browser sizes by DPI.
shell32: Size ShellView column widths by font width.

Andrey Gusev (6):
hidclass.sys: Remove check for negative value.
iphlpapi: Change variable type.
usp10: Remove worthless check.
mf: Add MFGetSupportedMimeTypes stub.
d3dx10: Add D3DX10PreprocessShaderFromMemory stub.
d3dx11: Fix D3DX11CompileFromMemory spec entry.

Andrey Semakin (3):
winemine: Add WM_RBUTTONUP to cases of TestMines().
winemine: Save board without need to correctly finish the app.
winemine: Add Reset Results button.

Aric Stewart (2):
usp10/tests: Add fingerprint to help ensure proper font for testing.
hidclass.sys: Handle opportunistic reads.

Aurimas Fišeras (1):
po: Update Lithuanian translation.

Austin English (2):
readme: Clarify the wording a bit.
preloader: Fix a typo in error message.

Dmitry Kislyuk (1):
vbscript: Improve parsing of separators in functions and classes.

Dmitry Timoshkov (1):
ws2_32/tests: Add some tests for sockets bound to a completion port.

Donna Whisnant (2):
oleaut32: Add ARM support to DispCallFunc().
oleaut32: Fix DispCallFunc() stdcall test to be ABI not x64 specific.

Fabian Maurer (2):
comctl32/tests: Add taskdialog callback tests.
comctl32/taskdialog: Added support for nDefaultButton.

Gerald Pfeifer (3):
fusion: Remove unused to_multibyte function.
advapi32/tests: Fix two clang warnings in test_LookupAccount SID_NAME_USE being out of range.
configure: Use the -Wno-packed-not-aligned compiler option if available.

Hans Leidekker (4):
include: Add missing BCRYPT_CHAIN_MODE definitions.
advapi32: Fix EnumServicesStatus on Wow64.
advapi32: Fix EnumServicesStatusEx on Wow64.
advapi32: Fix QueryServiceConfig2 on Wow64.

Hugh McMaster (2):
regedit: Correctly export hex values with no data.
regedit: Correctly export REG_DWORD values with no data.

Huw D. M. Davies (2):
rpcrt4: Don't free the argument if the freer was called, unless it's a simple ref.
ole32: Correctly track the number of inits when auto-joining the MTA.

Jacek Caban (10):
jscript: Added support for VT_UI2 VARIANT types.
mshtml: Added support for VT_UI2 in IDispatchEx.
mshtml: Added DOMContentLoaded event implementation.
mshtml: Expose IEventTarget to scripts.
mshtml/tests: Added script IE9+ event tests.
mshtml: Introduce variant_bool helper.
mshtml: Added IDOMEvent::get_defaultPrevented implementation.
mshtml: Use variant_bool helper where appropriate.
mshtml: Added IDocumentSelector::querySelector implementation.
mshtml: Merge hlink.c into persist.c.

Józef Kucia (28):
wined3d: Add ARB_draw_indirect extension.
wined3d: Factor out acquire_graphics_pipeline_resources().
wined3d: Implement indirect draws.
d3d11: Implement d3d11_immediate_context_DrawInstancedIndirect().
d3d11: Implement d3d11_immediate_context_DrawIndexedInstancedIndirect().
include/d3d11: Add definitions for indirect draw arguments.
wined3d: Add support for R8_UNORM vertex format.
d3d11/tests: Add test for SV_InstanceID.
wined3d: Add 4.4 to supported OpenGL versions.
d3d11/tests: Add test for indirect draws with index buffer offset.
wined3d: Add FIXME() for unimplemented index buffer offsets.
wined3d: Factor out draw_indirect() function.
wined3d: Bail out when ARB_draw_indirect is not supported.
wined3d: Require ARB_draw_indirect for SM5.
wined3d: Disable ARB_draw_indirect if ARB_base_instance is not available.
d3d10core/tests: Add test for SV_InstanceID.
wined3d: Create textures views for depth views.
wined3d: Use textureGrad*() to implement sample_c_lz for array and cube textures.
d3d11/tests: Add test for sample_c_lz instruction.
wined3d: Use wined3d_insert_bits().
wined3d: Use wined3d_extract_bits().
wined3d: Get rid of compute_shader_init().
wined3d: Get rid of domain_shader_init().
wined3d: Get rid of hull_shader_init().
wined3d: Disable pixel shader when rasterization is disabled.
wined3d: Handle stream output components when rasterization is disabled.
d3d11/tests: Add test for stream output components.
wined3d: Invalidate pixel shader only when rasterization is toggled.

Lauri Kenttä (1):
po: Update Finnish translation.

Marcus Meissner (4):
user32/tests: Check GetClipboardFormatName length.
ole32: Clipboard format in the datacache is with trailing \0.
ieframe/tests: Avoid crash on missing IID_IWebBrowser2 interface.
oleaut32/tests: Fixed 64-bit crash on tmarshal test.

Martin Storsjo (1):
msvcrt: Back up and restore the FPU state in setjmp/longjmp on ARM.

Matteo Bruni (2):
d3dx10: Remove redundant header include.
d3dx10: Fix tracing of shader source data.

Michael Müller (2):
wined3d: Add support for start instance in draw_primitive_arrays().
advapi32: Added a stub for LsaLookupPrivilegeDisplayName().

Michael Stefaniuc (4):
ddraw/tests: Use ARRAY_SIZE() in the ddraw1 tests.
ddraw/tests: Use ARRAY_SIZE() in the ddraw2 tests.
ddraw/tests: Use ARRAY_SIZE() in the ddraw4 tests.
wined3d: Use ARRAY_SIZE().

Nikolay Sivov (22):
dwrite: Set lfItalic style to get more compatible results for gdiinterop.
gdiplus/metafile: Simplify EmfPlusARGB definition.
gdiplus/metafile: Support hatch brushes in playback.
gdiplus/metafile: Support texture brushes playback.
gdiplus/metafile: Support hatch brushes for recording.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawImage.
advapi32/tests: Remove dynamic function binding from LSA tests.
advapi32/tests: Merge some test code.
advapi32: Partially implement LsaLookupPrivilegeName().
gdiplus/metafile: Implement EmfPlusRecordTypeDrawPie playback.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawRects.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillEllipse.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillPie.
gdiplus/metafile: Add brush object if needed in FillRectangles().
xmllite/tests: Fix clang warning.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawArc.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawEllipse.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillClosedCurve.
gdiplus/metafile: Implement playback for EmfPlusRecordTypeSetCompositingMode.
msvcrt: Implement _memicmp_l().
gdiplus/metafile: Support linear gradient brushes in playback.
d3dx9: Implement D3DXFrameFind().

Paul Gofman (1):
d3dx9: Zero constantinfo_reserved on error in get_constants_desc().

Piotr Caban (13):
wine.inf: Add Windows Messaging Subsystem MAPI registry key.
hhctrl.ocx: Set window owner in HtmlHelp function if WS_CHILD flag is not specified.
vbscript: Add UBound implementation.
oleaut32: Fix automatic value getting in ITypeInfo::Invoke.
oleaut32: Ignore underflows in VarR8FromStr.
vbscript: Add support for "for each" on arrays.
vbscript: Add for each tests on array.
vbscript: Don't return error on VBScript_SetScriptState(SCRIPTSTATE_DISCONNECTED) call.
vbscript: Don't leak IEnumVARIANT in interp_enumnext.
fusion: Respect buffer size in IAssemblyNameImpl_GetProperty.
fusion: Add support for ASM_NAME_ARCHITECTURE in IAssemblyNameImpl_GetProperty.
fusion: Fix IAssemblyNameImpl_GetDisplayName behavior on too small buffer.
fusion: Fix IAssemblyNameImpl_GetDisplayName behavior on PublicKeyToken containing 0.

Rafał Harabień (2):
riched20: Protect read-only Richedit against pasting and cutting data.
user32: Protect single-line edit against pasting new line character.

Stefan Dösinger (1):
d3d9/tests: Windows 10 17.09 added an undocumented query type.

Vijay Kiran Kamuju (1):
msvcp100: Add time_get::get function with format parameters.

Vincent Povirk (1):
tdh: Stub TdhLoadManifest.

Zebediah Figura (10):
regedit: Always start the GUI as 64-bit when on a 64-bit prefix.
dinput/tests: Remove a no longer needed workaround.
dinput/tests: Don't pump messages in test_acquire().
quartz/tests: GetDestinationPosition() returns the actual window width.
quartz/tests: Avoid Sleep().
user32: Use the given string length when converting strings in WM_GETTEXT.
user32/tests: Simplify test_SendMessage_other_thread().
quartz/tests: Remove thread-counting tests.
quartz/tests: Skip tests if CLSID_NullRenderer is not available.
quartz/tests: Add test AVI and MPG files.

Zhiyi Zhang (2):
kernel32/tests: Add more tests for LocaleNameToLCID and LCIDToLocalName.
kernel32/nls: Add LOCALE_SPARENT entries.

Ziqing Hui (3):
mlang/tests: Add IMultiLanguage2_GetCodePageInfo tests.
mlang: Fix font name of Chinese code pages.
mlang: Add more Chinese code pages support.
  Wine 2.21 released