Wine Announcement

The Wine development release 2.11 is now available.

What's new in this release (see below for details):
  - OpenGL support in the Android driver.
  - Support for security labels.
  - Relay debugging on ARM64.
  - More dictionary support in WebServices.
  - New registry file parser in RegEdit.
  - Various bug fixes.

The source is available from the following locations:

Binary packages for various distributions will be available from:

You will find documentation on

You can also get the current source directly from the git
repository. Check 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.11 (total 16):

  11433  unimplemented function ole32.dll.OleGetIconOfFile
  22776  Call of Duty: Modern Warfare 2 flickery textures in midrange background
  27106  IMSSA EuroDEEM (VB6 app) fails on startup, reporting "Type MisMatch" error (VARIANT_Coerce: treat VT_NULL like VT_EMPTY when converting to VT_BSTR)
  32233  Battlefield Bad Company 2 weapons/items hold by player distorted/invisible
  33740  Sound Recorder displays error when seeking MP3 stream to the end
  39909  4K display bug (3840x2160)
  42140  "Unrecognized stencil op 0" messages flooding system log in Söldner Secret Wars
  42910  Scrabble (Infogrames) multiplayer requires IDirectPlay4::EnumConnections
  43084  PresentMon requires tdh.dll
  43098  WarBR: game (WarS v5.5 p4) crashes on unimplemented function wmvcore.dll.WMCheckURLScheme when using native wmp.dll (WMP9)
  43122  Retro Achievements Snes9x emulator crashes on start
  43152  VistA GuiMail won't start, needs adsldpc.dll
  43157  Adobe Premiere needs ntoskrnl.exe.KeAcquireSpinLockRaiseToDpc
  43175  redefinition of typedef ‘ID2D1Image’ (gcc-4.2)
  43216  winhttp fails to redirect from http to https on 301 error.
  43220  Adobe Premiere needs ntoskrnl.exe.KeReleaseSpinLock


Changes since 2.10:

Alexandre Julliard (17):
      wineandroid: Start in landscape mode and don't restart on config changes.
      wineandroid: Store the actual screen DPI on startup.
      include: Make socklen_t a define to avoid conflicting typedefs.
      ws2_32: Use socklen_t where appropriate.
      iphlpapi: Check if getifaddrs really exists.
      wineandroid: Add a stub implementation of ChangeDisplaySettingsEx.
      wineandroid: Add a stub implementation of EnumDisplaySettingsEx.
      wineandroid: Support creating a separate native window for OpenGL rendering in the client area.
      wineandroid: Add infrastructure to support a separate TextureView for the window client area.
      wineandroid: Create window groups inside every window to support a client area.
      wineandroid: Also create HWND_MESSAGE windows on the Java side.
      configure: Add check for OpenGL ES libraries.
      wineandroid: Initial version of the OpenGL driver.
      wineandroid: Create a proper EGL window surface once we receive a surface from Java.
      wineandroid: Implement wglCreateContextAttribsARB.
      wineandroid: Implement wglMakeContextCurrentARB.
      wineandroid: Implement wglSwapIntervalEXT.

Alistair Leslie-Hughes (9):
      include/windocdec.idl: Add interface IWICImagingFactory2.
      windowscodecs: Register WICImagingFactory2 interface.
      oleaut32: Improve support for IDispatch in VarCat.
      include/wmsdkidl.idl: Add IWMLanguageList, IWMReaderPlaylistBurn interfaces.
      oledb32/tests: Add to DBTYPE_WSTR tests for GetConversionSize.
      oledb32: Supply a default dst len in GetConversionSize.
      oledb32: Add support for converting to W/STR types in GetConversionSize.
      oledb32: Add FIXME for DBTYPE_NUMERIC type.
      wmvcore: Support IWMReaderAccelerator in IWMReader.

Andrey Gusev (4):
      d3d11/tests: Fix a typo in ok() message.
      api-ms-win-security-credentials-l1-1-0: Add dll.
      api-ms-win-core-crt-l1-1-0: Add dll.
      api-ms-win-core-crt-l2-1-0: Add dll.

André Hentschel (4):
      winebuild: Emit relay debugging thunks for ARM64.
      ntdll: Add support for relay debugging on ARM64.
      include: Remove duplicate declaration of PFXVerifyPassword.
      kernel32: Fix EscapeCommFunction prototype.

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

Austin English (4):
      ntoskrnl: Add KeAcquireSpinLockRaiseToDpc stub.
      wmvcore: Add WMCheckURLScheme stub.
      dbgeng: Sync to windows 10.
      ntoskrnl.exe: Add KeReleaseSpinLock stub.

Bruno Jesus (1):
      dinput: Limit axes while remaping broken devices.

Clemens Tamme (1):
      gdiplus: Implement triangular line caps in widened paths.

Daniel Lehman (8):
      msvcrt: Move exception rethrow handling to call_catch_block.
      msvcrt: Clean up registered C++ objects in handler.
      msvcrt: Only unwind current catch block when handling nested exception.
      msvcrt: Support rethrowing SEH exceptions.
      winedbg: Display movaps in disassembly.
      winedbg: Display movups in disassembly.
      opengl32/tests: Add tests for ChoosePixelFormat.
      opengl32: Don't fail with both PFD_DOUBLEBUFFER_DONTCARE and PFD_STEREO_DONTCARE.

Dmitry Timoshkov (16):
      propsys: Add support for VT_I1 and VT_UI1 to PropVariantChangeType.
      propsys: Add support for VT_LPWSTR and VT_BSTR to PropVariantToStringAlloc.
      propsys: Add support for VT_BSTR to PropVariantChangeType.
      propsys: Make VT_FILETIME handling by PropVariantChangeType more implicit.
      propsys: Add support for VT_LPSTR to PropVariantChangeType.
      include: Print contents of VT_LPSTR and VT_LPWSTR variants in wine_dbgstr_variant.
      cmd: '$E' in the prompt should be interpreted as an escape code (0x1b).
      windowscodecs: Implement WICMapGuidToShortName.
      windowscodecs: Implement WICMapShortNameToGuid.
      windowscodecs: Implement WICMapSchemaToName.
      windowscodecs: Implement IWICMetadataQueryReader::GetContainerFormat.
      propsys: Add support for VT_LPSTR and VT_LPWSTR to PropVariantCompareEx.
      rsaenh: Avoid double 'va_end(args)' in case of a premature loop termination.
      user.exe16: Fix memory leak in case when HeapReAlloc fails.
      user.exe16: Remove redundant HeapReAlloc.
      dsound: Fix a memory leak.

Fabian Maurer (1):
      comctl32/taskdialog: Added support for custom buttons.

Hans Leidekker (16):
      webservices: Add a static builtin dictionary.
      webservices: Support more text record types in the reader.
      webservices/tests: Add a test for WsCopyNode.
      webservices: Restore the current pointer after reading ahead in read_move_to.
      webservices: Implement WsReadXmlBuffer.
      webservices: Store buffer encoding and character set.
      webservices: Add support for writing WS_UNIQUE_ID values.
      webservices: Add support for writing WS_XML_QNAME values.
      webservices: Add support for reading WS_STRING values.
      webservices: Add support for reading WS_UNIQUE_ID values.
      webservices: Add support for reading WS_XML_STRING values.
      webservices: Add support for reading WS_XML_QNAME values.
      winhttp: Only read as much data as advertized when draining content.
      webservices: Allow the dictionary functions to be used with any dictionary.
      webservices: Add support for dynamic string callbacks.
      winhttp: Reset content length when a redirect creates a new connection.

Henri Verbeet (2):
      wined3d: Also check for "Mesa" in GL_VERSION in wined3d_guess_gl_vendor().
      include: Simply forward declare the required D2D interfaces in wincodec.idl.

Hermès Bélusca-Maïto (1):
      advapi32/tests: Fix build with MSVC.

Hugh McMaster (30):
      reg/tests: Test case sensitivity when creating and deleting registry keys.
      reg/tests: Test the accepted range of the hex-based data types.
      regedit/tests: Test case sensitivity when creating and deleting registry keys.
      regedit/tests: Test the accepted range of the hex-based data types.
      regedit: Add status bar text for the 'Expand'/'Collapse' menu item.
      reg/tests: Output "(Default)" when referring to the default registry value.
      reg/tests: Test whether "" is interpreted as the default registry value.
      regedit/tests: Output "(Default)" when referring to the default registry value.
      regedit/tests: Test whether "" is interpreted as the default registry value.
      regedit: Free the stringValueData buffer before using it again (Coverity).
      regedit: Introduce a partial state machine for importing registry data.
      regedit: Perform key operations in the state machine.
      regedit: Perform value name operations in the state machine.
      regedit: Add data parsing operations to the state machine.
      regedit: Remove an unused #define.
      regedit: Export hex data types without warning about unsupported data types.
      regedit: Free the memory used by the REG_DWORD and hex data types after saving the registry value.
      regedit: Use a case insensitive comparison when parsing registry classes from registry file versions 4 and 5.
      regedit: Allow the deletion of registry keys beginning with a lowercase 'H'.
      regedit: Use the correct mask flags with LVM_GETNEXTITEM.
      regedit: Re-insert the default value item after deleting its data.
      regedit: Use a generic data type to correctly process all data types.
      regedit: Fail when parsing any hex data type that is greater than ULONG_MAX on Windows.
      regedit: Display all registry data types in the GUI.
      regedit: Display data for all values in the GUI.
      regedit/tests: Add tests for parsing hex data.
      reg/tests: Add tests for parsing hex data.
      reg/tests: Add the final comma to the comma-placement test.
      reg/tests: Add tests to determine the effects of backslashes in hex data.
      regedit/tests: Add tests to determine the effects of backslashes in hex data.

Jacek Caban (13):
      wininet/tests: Silence noisy traces.
      wininet/tests: Fixed potential buffer overflow (coverity).
      oleaut32: Simplify VarCat implementation.
      mshtml.idl: Added IHTMLInputTextElement2 declaration.
      mshtml: Added IHTMLInputTextElement2 stub implementation.
      mshtml: Added IHTMLInputTextElement2::selectionStart property implementation.
      mshtml: Added IHTMLInputTextElement2::selectionEnd property implementation.
      mshtml: Added IHTMLInputTextElement2::setSelectionRange implementation.
      mshtml: Expose IHTMLInputTextElement2 to scripts.
      mshtml/tests: Added IHTMLInputTextElement2 tests.
      widl: Try to find imported typelib using .tlb extension if it wasn't specified.
      server: Introduce create_server_async and use it in read request handler.
      mshtml: Moved EvaluateNewWindow call to navigate_new_window.

Julian Rüger (1):
      po: Update German translation.

Józef Kucia (1):
      wined3d: Do not declare pixel shader inputs when they are not used.

Ken Thomases (1):
      winemac: Break out of the window-dragging message loop if the window is hidden or destroyed.

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

Marcus Meissner (4):
      webservices: Free header on error exit (Coverity).
      webservices: Fixed memory leak in build_custom_header (Coverity).
      msvcrt: Free the temporary filename (Coverity).
      wsdapi: Fixed memory leak in error path (Coverity).

Matteo Bruni (7):
      d3dx9: Move set_number() into d3dx9_private.h.
      d3dx9/tests: Fix compilation when the NAN macro is not available.
      d3dx9/tests: Add a comment about the negation in boolean constant checks.
      d3dx9/tests: Avoid SIZE_T in traces.
      advapi32/tests: Allow an additional result on newer Win10.
      advapi32/tests: Add a token mandatory label test.
      d3dx9: Make the assert() in regstore_set_values() a bit more strict.

Michael Müller (9):
      server: Implement querying the security label of a security descriptor.
      server: Implement changing the label of a security descriptor.
      server: Do not set SE_{D, S}ACL_PRESENT if no {D, S}ACL was set.
      server: Implement setting a security descriptor when duplicating tokens.
      advapi32/tests: Add basic tests for token security descriptors.
      advapi32/tests: Show that tokens do not inherit security descriptors during duplication.
      advapi32/tests: Show that tokens do not inherit the DACL while creating child processes.
      advapi32/tests: Show that child processes do not inherit mandatory labels.
      server: Assign a default label to all tokens.

Miklós Máté (1):
      quartz: Small readability fix.

Nikolay Sivov (10):
      d3drm/tests: Add helpers to test vectors.
      include: Fix IDirect3DRMFace*::GetColor() macros.
      d3drm: Make it possible to create frames with CreateObject().
      d3drm: Make it possible to create light objects using CreateObject().
      po: Update Russian translation.
      d3drm: Make it possible to create material objects with CreateObject().
      d3drm: Implement object name property.
      d3drm: Implement appdata property for the rest of objects.
      d3drm: Make it possible to create meshes with CreateObject().
      d3drm: Added IDirect3DRMAnimation stub.

Nils Kuhnhenn (1):
      oleaut32: Use variable with the correct type in LIST_FOR_EACH_ENTRY_SAFE macro.

Owen Rudge (2):
      ws2_32: Extract IPv6 address from brackets in getaddrinfo.
      ws2_32/tests: Test IP address conversion in getaddrinfo.

Paul Gofman (5):
      d3dx9: Introduce get_reg_components() helper function and use it instead of get_offset_reg() when appropriate.
      d3dx9: Add const qualifier to regstore_set_values() input data.
      d3dx9: Avoid casting each value separately in set_constants().
      d3dx9: Add scalar and vector setting path to set_constants().
      d3dx9/tests: Modify transpose boolean matrix test to reproduce the case of incomplete last row.

Pierre Schweitzer (2):
      mpr: Properly handle the count set to -1 when enumerating connections.
      mpr: Don't stop enumeration on the first failing network provider.

Piotr Caban (1):
      gdi32: Don't write EMR_EXTSELECTCLIPRGN to emf file on SelectClipPath call.

Sebastian Lackner (6):
      gdiplus: Initialize containers list in GdipCloneImage.
      server: Do not shutdown server in persistent mode when creation of first process fails.
      wined3d: Avoid NULL pointer dereference when using GDI renderer.
      wined3d: Create CPU blitter also for GDI render.
      wined3d: Fix memory leaks in blitter_destroy callbacks.
      wined3d: Trigger frontbuffer update in surface_cpu_blt.

Thomas Faber (2):
      devenum/tests: Fix return value check for IEnumMoniker_Next.
      advapi32/tests: Properly restore privileges in test_AdjustTokenPrivileges.

Zebediah Figura (14):
      include: Pack WAVEFORMAT structs.
      winemp3.acm: Fix error in acmStreamSize().
      include: Add missing MSI message values.
      msi: Use an external UI record handler before a string handler.
      msi: Store string and record callback data separately.
      msi: Pass the given record to the callback.
      msacm32: Rewrite PCM conversion functions.
      msi: Don't reimplement record formatting.
      quartz: Restore a comment explaining mediatime.
      quartz: Use nAvgBytesPerSec to calculate length.
      winemp3.acm: Disallow operations encoding to MPEG.
      msacm32: Don't add a format entry if it is decode-only.
      msacm32: Add invalid parameter checks for acmFormatChoose().

Zhenbo Li (1):
      ole32: Add stub for OleGetIconOfFile.

Alexandre Julliard
[email protected]