Software 42301 Published by

The Wine development release 2.10 is now available



What's new in this release (see below for details):
- Initial version of the Android graphics driver.
- Dictionary support in WebServices.
- A number of Direct2D fixes.
- User interface improvements in RegEdit.
- OLE clipboard cache fixes.
- Various bug fixes.

The source is available from the following locations:

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

16948 tmpfile() fails when run from Unix path
26388 Sound Recorder crashes on encoding PCM Sample
31967 Unreal Engine 3 games don't render anything on OS X
32563 Purebasic does not display icons in toolbar which is drawn distorted.
32809 Multiple applications and games need wmvcore.dll.WMCreateWriterPriv (KwSing, iMesh 7.x)
38093 The main character is missing/invisible in Hitchcock: The Final Cut demo
38328 WPS 2013 (Kingsoft) crash at install
38731 TopoEdit tool from Windows SDK 8.1 crashes on unimplemented function mf.dll.MFCreateTopology
39064 Path of Exile: resolution other than 1024x768 causes a crash
39367 EA Origin crashes after installing games, needs mf.dll.MFCreateMediaSession
39998 Medieval: Total War needs conversion from B5G5R5X1 to B5G5R5A1
41489 notepad++ escape key
42345 Dark souls 2: Scholar of the First Sin - no video
42421 Sniper Elite V2 has faulty color determination
42754 Seed of Andromeda Pre-Alpha 0.2 crashes
42807 Coda Finale: call to unimplemented function IPHLPAPI.DLL.GetIfTable2Ex
42994 wine can't be compiled by gcc-2.95.4 (mscoree/assembly.c)
43020 Guitar Pro 7 needs msvcp140.dll._To_wide
43053 Overexposed scene in fr-025: the.popular.demo by farbrausch
43097 WarBR: game (WarS v5.5 p4) crashes on start, needs WMP IOleObject::GetExtent method implementation
43127 Multiple 64-bit applications crash with stack overflow errors when Wine is compiled with GCC 7.x (set_context_reg in ntdll/signal_x86_64.c assumes Xmm registers are aligned)

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

Changes since 2.9:

Akihiro Sagawa (2):
kernel32/tests: Add more tests related to the zero_bits parameter.
ntdll: Zero bits parameter must be less than 21.

Alex Henrie (1):
adsldpc: Add stub DLL.

Alexandre Julliard (40):
configure: Add Android driver stub.
wineandroid: Add initial stub for the Java activity.
wineandroid: Install libraries from the package assets if present.
wineandroid: Add support for initializing Wine from Java.
libwine: Handle WINEDEBUGLOG variable on Android to specify a log file.
wineandroid: Add an initial GDI driver.
wineandroid: Initialize screen dimensions.
wineandroid: Add support for storing per-window driver information.
wineandroid: Register a JNI callback for reporting desktop size changes.
wineandroid: Add an event queue to support handling Java callbacks in the desktop thread.
wineandroid: Create a pseudo-device to handle ioctl calls.
wineandroid: Create the top-level view on desktop window creation.
wineandroid: Wait until we receive the desktop size before proceeding with startup.
wineandroid: Add Java callbacks for creating and destroying a window.
wineandroid: Notify Java also when a window is forcefully destroyed.
wineandroid: Add a Java callback for setting window position.
wineandroid: Create a TextureView for every top-level window.
wineandroid: Add a header for some of the Android native APIs and data structures.
wineandroid: Add a JNI callback to store the native window we got from the TextureView.
explorer: Don't forward the system tray to the display driver in desktop mode.
wineandroid: Allocate a native window wrapper in the client process for every window.
wineandroid: Forward native window query() calls to the desktop process.
wineandroid: Forward native window perform() calls to the desktop process.
wineandroid: Forward native window setSwapInterval() calls to the desktop process.
wineandroid: Load the gralloc module in all processes.
wineandroid: Forward native window buffer management calls to the desktop process.
wineandroid: Implement LOCK/UNLOCK perform() functions on top of the buffer management calls.
wineandroid: Implement window surfaces.
wineandroid: Update the contents when we receive a new surface from Java.
wineandroid: Implement SetWindowRgn.
wineandroid: Implement SetLayeredWindowAttributes.
wineandroid: Implement UpdateLayeredWindow.
wineandroid: Implement ShowWindow to put icons off-screen.
wineandroid: Implement SetParent and forward it to Java.
explorer: Allow the driver to override the desktop winproc at creation time.
wineandroid: Properly clean up windows that aren't destroyed explicitly.
wineandroid: Implement SetCapture and store the capture window in the desktop process for global captures.
wineandroid: Add support for mouse events.
wineandroid: Add support for keyboard events.
wineandroid: Implement ToUnicodeEx.

Alistair Leslie-Hughes (6):
include/mfapi.h: Add standard GUID defines.
wmvcore: Implement WMCreateWriterPriv.
dplayx: First name server address may be null.
dplayx/tests: Remove some wine_todo.
dplayx: Implement IDirectPlay4 EnumConnections.
dplayx: Implement IDirectPlayLobby3 EnumAddressTypes.

Andrey Gusev (5):
api-ms-win-core-processthreads-l1-1-2: Add forwards.
api-ms-win-security-activedirectoryclient-l1-1-0: Add dll.
shobjidl.idl: Add IApplicationDestinations declaration.
shell32: Add IApplicationDestinations stub.
uxtheme/tests: Fix a typo in ok() message.

André Hentschel (2):
iphlpapi: Add partial implementation of GetIfTable2Ex.
ntdll: Fix Cpsr value in CONTEXT_ARM64.

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

Austin English (16):
d3dx9_34: Sort specfile.
d3dx9_35: Sort specfile.
d3dx9_36: Sort specfile.
d3dx9_37: Sort specfile.
d3dx9_38: Sort specfile.
d3dx9_39: Sort specfile.
d3dx9_40: Sort specfile.
d3dx9_41: Sort specfile.
d3dx9_42: Sort specfile.
d3dx9_43: Sort specfile.
acledit: Fix ordinal ordering.
gameux: Label ordinals.
jsproxy: Label ordinals.
msimg32: Label ordinals.
wmp: Add some ordinals.
tdh: Add stub dll.

Can Taşan (1):
po: Update Turkish translation.

Daniel Lehman (2):
include: Add sqlucode.h.
msvcrt: Translate SEH exception on each call to __CxxFrameHandler.

Dmitry Timoshkov (1):
oleaut32: Add an arguments check to LoadTypeLibEx.

François Gouget (10):
odbccp32/tests: Make test_SQLInstallTranslatorEx() static.
wmvcore/tests: Make test_profile_manager_interfaces() static.
oleaut32: Make VARIANT_GetLocalisedText() static.
wsdapi: Add a trailing '\n' to a TRACE() message.
wined3d: Add a trailing newline to an ERR() message.
d3dx9_36: Add a trailing '\n' to a FIXME() message.
ole32: Make bitmap_info_size() static.
wbemdisp: Add a trailing newline to a TRACE() message.
jscript: A spelling fix in a comment.
configure: Set PKG_CONFIG_PATH to get the right settings for the target host.

Hans Leidekker (16):
webservices: Add support for dictionary strings in the writer.
webservices: Add support for dictionary strings in the reader.
webservices: Add a builtin dictionary.
webservices: Implement WsGetDictionary.
msiexec: Fix parsing of command lines where quoted strings and properties are not separated by whitespace.
include: Add missing Web Services declarations.
webservices: Write correct envelope headers for WS_ENVELOPE_VERSION_NONE.
webservices: Implement WsGetHeader.
webservices: Implement WsGetCustomHeader.
webservices: Support more text record types in the reader.
webservices: Set SO_REUSEADDR on listener sockets.
webservices: Restrict connections to IPv4 for now.
webservices: Pass AI_PASSIVE when resolving the hostname for a listener socket.
wineandroid: Implement GetKeyboardLayout.
wineandroid: Implement VkKeyScanEx.
wineandroid: Synchronize keyboard lock state.

Henri Verbeet (19):
wined3d: Only warn about 0 compare functions in wined3d_gl_compare_func().
wined3d: Validate parameter lengths in shader_sm4_read_dst_param() (AFL).
wined3d: Validate parameter lengths in shader_sm4_read_src_param() (AFL).
wined3d: Validate parameter lengths in shader_sm4_read_param() (AFL).
d2d1: Take the render target transform into account when evaluating flatness in vs_code_bezier_outline[].
d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHEvalDirectionalLight().
d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHMultiply4().
d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHRotate().
d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHRotateZ().
d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHScale().
d2d1: Implement d2d_d3d_render_target_CreateLayer().
d2d1: Implement d2d_layer_GetSize().
d2d1: Implement d2d_rectangle_geometry_GetBounds().
d2d1: Implement d2d_transformed_geometry_GetBounds().
d2d1: Implement d2d_rectangle_geometry_Simplify().
d2d1: Implement d2d_transformed_geometry_Simplify().
d2d1: Implement d2d_path_geometry_Simplify().
d2d1: Fix the segment count for open figures.
wined3d: Use WINED3D_CS_QUEUE_MAP for WINED3D_CS_OP_UPDATE_SUB_RESOURCE.

Hugh McMaster (30):
regedit: Move the listview's NM_SETFOCUS handling to listview.c.
regedit: Allow handling of return values from listview notification messages.
regedit: Update a value name without refreshing the listview.
regedit: Add listview entries without refreshing the listview.
regedit: Update the data in a listview subitem without refreshing the listview.
regedit: Delete a listview item without refreshing the listview.
regedit: Update the status bar when moving to the 'Computer' root node.
regedit: Never disable the 'Find' and 'Find Next' menu items.
regedit: Update handling of the 'Delete' menu item.
regedit: Update handling of the 'Rename' menu item.
regedit: Update handling of the 'Copy Key Name' menu item.
regedit: Fix handling of 'Copy Key Name' menu items.
regedit: Add status bar text for adding a new expandable string value.
regedit: Add status bar text for the 'Modify Binary Data' menu item.
regedit: Update some resource strings.
regedit: Update handling of the new subkey and new value menu items.
regedit: Update handling of the 'Modify' menu item.
regedit: Re-implement favourite registry key handling.
regedit: Use the treeview item label in the 'Favourites' menu instead of the key path.
regedit: Only show the 'Modify' menu items when the listview has focus.
regedit: Update handling of the 'Modify' menu items.
regedit: Use shared code to add favourite key items to the 'Remove' listbox.
reg/tests: Add tests for key creation and deletion.
reg/tests: Add tests for deleting registry values during the import operation.
regedit/tests: Add tests for key creation and key deletion.
regedit/tests: Add tests for value deletion.
regedit: Do not create registry keys that end without a closing bracket.
regedit: Do not use REG_NONE as the default data type if strtoulW() fails.
reg/tests: Remove un-needed tab characters from some keys in the key deletion tests.
regedit/tests: Remove an un-needed tab character from a key in the key deletion tests.

Huw D. M. Davies (15):
riched20: The background colour is set using \highlight.
user32: Allow button-down events on the system menu to continue tracking.
user32: A second button-up on the system menu should end the tracking.
user32: A button-up in the menu-bar, but not on an item, should stop the tracking.
user32: Use the original message's wparam during the double-click comparison.
user32: End the tracking on a system menu double-click.
ole32: Fix incorrectly assigned member in the presentation stream.
ole32: Start allocating regular cache entries with id of 2.
ole32: Add the ability to create an entry without returning it.
ole32: Create initial cache entries for the CLSID_Picture_ classes.
ole32/tests: Add tests for automatic cache entry creation.
ole32: InitNew() should fail if there is a current storage.
ole32/tests: Add tests for InitNew().
wineandroid: The event list may have been altered by a recursive call, so restart the loop from the beginning.
wineandroid: Tell git diff about java files.

Jacek Caban (27):
oleaut32/tests: Use static oleaut32 linking in vartest.c.
wininet: Correctly handle redirects to non-http URLs.
wininet/tests: Added a helper for testing INTERNET_OPTION_URL.
wininet/tests: Create events once for all tests.
wininet/tests: Introduce open_socket_request helper.
wininet/tests: Added redirection tests using test server.
wmp: Added IOleObject::GetExtent and SetExtent implementation.
rpcrt4: Store server thread handle in RpcServerProtseq.
rpcrt4: Store listening pipe name in RpcConnection_np.
rpcrt4: Recreate listening pipe in rpcrt4_protseq_np_get_wait_array if needed.
rpcrt4: Wait for all active connections to be released before quiting server thread.
rpcrt4: Wait for server threads to finish in RpcMgmtWaitServerListen.
rpcrt4/tests: Added more server stopping tests.
urlmon.idl: Added IBindCallbackRedirect declaration.
mshtmhst.idl: Added missing DOCHOSTUIFLAG values.
urlmon/tests: Get rid of debug leftovers.
urlmon.idl: Added BINDINFO_OPTIONS declaration.
urlmon: Added support for BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS in http protocol handler.
urlmon/tests: Added test of hanling BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS by http protocol provider.
urlmon: Release previously set URI in BindProtocol::StartEx.
urlmon: Added a helper function for releasing protocol handler.
urlmon: Support BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS in BindProtocol object.
urlmon/tests: Added BindProtocol redirection handling tests.
mshtml: Added IBindCallbackRedirect implementation.
mshtml: Added DOCHOSTUIFLAG_ENABLE_REDIRECT_NOTIFICATION flag support.
rpcrt4: Fix a race when server grabs a connection from the list of active connections.
rpcrt4: Change RPCRT4_ReleaseConnection return type to void.

Josh DuBois (2):
wineandroid: Implement GetKeyNameText.
wineandroid: Implement MapVirtualKeyEx.

Józef Kucia (26):
wined3d: Require just specific OpenGL extensions and SM4 support for SM5.
wined3d: Introduce query operation to destroy queries.
wined3d: Trace color fixup checks in apply_format_fixups().
wined3d: Do not bother to check identity fixup support.
wined3d: Remove outdated comment in CheckRenderTargetCapability().
d3d11/tests: Prefer D3D11 enum values.
wined3d: Fix FFP lighting.
wined3d: Bind frag data location for core context draw quad shader.
wined3d: Use ARRAY_SIZE() in init_format_filter_info().
wined3d: Use ARRAY_SIZE() in wined3d_format_get_color_key_conversion().
user32: Fix memory leak in WinHelpA().
wined3d: Prefer GLSL 1.50 shaders in draw_test_quad().
d3d8: Validate adapter format in CheckDeviceFormat().
wined3d: Extend wined3d_check_device_format() to allow querying general format support.
d3d11: Partially implement d3d11_device_CheckFormatSupport() on top of wined3d_check_device_format().
wined3d: Correctly handle phase instance ID register when ARB_shading_language_pack420 is not supported.
d3d11/tests: Introduce get_query_data() helper function.
wined3d: Introduce get_query_result64() helper function.
wined3d: Rearrange wined3d_query_type enum values.
d3d11/tests: Add additional test for pipeline statistics query with no pixel shader.
d3d11/tests: Fix ok() checks in test_timestamp_query().
d3d10core/tests: Introduce get_query_data() helper function.
d3d11: Implement d3d11_query_GetDesc().
d3d11: Implement d3d10_query_GetDesc().
d3d11: Fixup D3D10_QUERY_PIPELINE_STATISTICS data.
d3d10core/tests: Port test_pipeline_statistics_query() from d3d11.

Ken Thomases (2):
ntdll: On macOS, don't use clock_gettime() even if it's available.
server: On macOS, don't use clock_gettime() even if it's available.

Kim Malmo (1):
po: Update Norwegian translation.

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

Marcin Mikołajczak (1):
po: Updated Polish translation.

Marcus Meissner (1):
hid: Increase buffer size to allow 16bit value + space + NUL (GCC7).

Michael Müller (4):
wined3d: Don't leak free_so_statistics_queries on device destruction.
include: Fix definition of EXTERN_GUID.
wined3d: Implement WINED3D_QUERY_TYPE_PIPELINE_STATISTICS.
d3d11/tests: Add basic test for D3D11_QUERY_PIPELINE_STATISTICS.

Nikolay Sivov (33):
dwrite: Grab font data reference when adding replacement.
comctl32: Change some overly exciting tracing messages.
include: Added IMFSourceResolver definition.
mfplat: Return stub IMFSourceResolver from MFCreateSourceResolver().
comctl32/toolbar: Don't add NULL imagelist entries.
comctl32/toolbar: Support undocumented IDs for standard bitmap lists.
comdlg32: Simplify notification helper.
comdlg32: Improve tracing messages.
include: Add some missing Common Controls definitions.
comctl32/taskdialog: Added TaskDialog() export.
mf: Added MFCreateTopology and stub IMFTopology implementation.
include: Added CreateSymbolicLink() flag.
po: Update Russian translation.
mf: Added IMFMediaSession stub.
shell32: Avoid zero length allocations when converting path in ExtractIconA() (Valgrind).
d3drm/tests: Some tests for creating texture from ddraw surface.
d3drm: Implement CreateTextureFromSurface() and related methods.
d3drm: Fix IDirect3DRMMesh::QueryInterface to support IDirect3DRMObject and IDirect3DRMVisual.
d3drm: Fix IDirect3DRMMeshBuilder::QueryInterface to support IDirect3DRMObject and IDirect3DRMVisual.
inetcomm/tests: Return interface pointer for test stream.
inetcomm: Release previously set data (Valgrind).
inetcomm: Implemented IMimeBody::GetClassID().
d3drm: Consolidate GetClassName() implementation, reduce tests duplication.
d3drm/tests: Added a helper to create test window.
mpr/tests: Remove NT4 version check.
oleaut32/tests: Basic test for invalid arguments in LoadTypeLib/LoadTypeLibEx.
po: Update Russian translation.
d3drm: Use consistent naming for mesh builder implementation pointers.
d3drm: Implement AddVertex() for mesh builder.
d3drm: Implement AddNormal() for mesh builder.
shell32: Use IS_INTRESOURCE() to test context menu verb kind.
d3drm: Make it possible to create faces with CreateObject().
d3drm: Make it possible to create mesh builder with CreateObject().

Owen Rudge (11):
wsdapi: Implement AddNamespace.
wsdapi: Implement AddNameToNamespace.
wsdapi: Create default XML context in WSDCreateDiscoveryPublisher if required.
include: Add definitions for IWSDUdpAddress, IWSDTransportAddress.
wsdapi: Add stub implementation of IWSDUdpAddress.
wsdapi/tests: Add WSDCreateUdpAddress tests.
wsdapi/tests: Add tests for Get/SetTransportAddress.
wsdapi/tests: Add tests for Get/SetPort.
wsdapi/tests: Add tests for Get/SetMessageType.
wsdapi/tests: Add tests for Get/SetSockaddr.
include: Add IWSDUdpMessageParameters interface declaration.

Paul Gofman (14):
d3dx9: Get rid of table lookup for converting between register indexes and offsets.
d3dx9: Factor out get_const_upload_info() function.
d3dx9: Factor out table_type_from_param_type() function.
d3dx9: Precompute and store a constant direct copy flag.
d3dx9: Don't add const setting entries with zero count.
d3dx9: Merge constant setting for child parameters when possible.
d3dx9: Limit constant size by register count instead of table size.
d3dx9/tests: Remove a leftover todo_wine_if in test_effect_preshader().
d3dx9/tests: Extend test for boolean matrix constant setting.
d3dx9/tests: Factor out test_effect_preshader_clear_pbool_consts() function.
d3dx9/tests: Factor out test_effect_preshader_compare_pbool_consts() function.
d3dx9/tests: Initialize boolean constants with the inverse of expected result.
d3dx9/tests: Add tests for updating boolean matrices on CommitChanges.
d3dx9: Remove redundant FIXME in set_constants().

Piotr Caban (4):
winemac: Don't update clipboard if its content didn't change.
include: Add __EXCEPT_CTX/__FINALLY_CTX macros.
msvcrt: Use temp directory when creating file in tmpfile.
msvcrt: Translate SEH exception on each call to __CxxFrameHandler (i386).

Sebastian Lackner (4):
winex11.drv: Fix compilation when XFixes is not present.
kernel32: Add missing WINAPI to SetThreadIdealProcessorEx implementation.
d3d11: Remove duplicate const in d3d11_device_CheckFormatSupport.
ntdll: Do not cast unaligned pointer to M128A in set_context_reg.

Stefan Dösinger (1):
msvcp140: Implement _To_wide.

Zebediah Figura (9):
user32/tests: Add tests for minimizing MDI windows.
msacm32: Don't write cbSize if the format is WAVE_FORMAT_PCM.
msacm32: Add more invalid parameter checks for acmFormatEnum().
msacm32: Add invalid parameter checks for acmFormatDetails().
msacm32: Add more invalid parameter checks for acmFormatSuggest().
msacm32: Try to suggest PCM to PCM conversion first.
imaadp32.acm: Fix block size calculations.
imaadp32.acm: Fix nibble ordering.
msacm32: Check correct variable.
  Wine 2.10 released