Wine Announcement

The Wine development release 1.7.16 is now available.

What's new in this release (see below for details):
  - More regression test fixes.
  - String arrays better supported in the IDL compiler.
  - Initial stubs for DirectX Video Acceleration.
  - 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 1.7.16 (total 50):

  11114  World in Conflict complains with "No appropriate 3D graphics card detected" (b3DAccelerationExists and b3DAccelerationEnabled dxdiagn properties missing)
  12388  Commandos 3: read_from_framebuffer_texture error (glCopyTexSubImage2D)
  15133  Application blocks waiting for a critical section during startup. This problem does not occur in Windows.
  17440  Anarchy Online: Fog bug introduced between v. 1.1.11 and 1.1.13
  19269  Distant impostors does not work in Lord of the Rings Online
  20466  Multiple broken apps and games with incorrect TLS usage crash on startup (TLS slot index allocation must start at non-zero indexes (Brothers in Arms: Hell's Highway, ProShow Gold 5/6)
  21576  Touch screen loses calibration when in full screen mode - specifically AtomixMP3.exe
  21956  Empire Earth 1.00 and 1.04 crash with unhanded page fault
  22016  R.U.S.E. Public Beta in-game rendering is washed out
  23601  Windows Movie Maker 2.6 reports 'A new collections file cannot be created' (needs 'Microsoft' folder in CSIDL_LOCAL_APPDATA)
  24702  Pro Evolution Soccer 2010 DEMO: shows black screen with stars and never load
  25727  Dead Space resolution issues
  25780  MS Works 9.0 can't find license terms
  25914  Dead Space 2 exits with error
  27625  Panzer General 3D Demo: second scenario fails to load
  27797  No sound in FMOD games (Gratuitous Space Battles demo, Armored Brigade)
  27900  Miranda IM v0.9.25 group chats are broken
  28571  Saving file in Rockwell Arena Simulator causes crash.
  29003  T4C: Crashes during or after patching phase
  29875  MS Works 9.0 can't install (infinite waiting for estimating time)
  29968  Final Fantasy XI crashes when unfocused in windowed mode
  30079  Broken Sword - The Sleeping Dragon: Graphics corruption
  31079  Fatal error during Stronghold Crusader Demo installation
  31433  Foxit Reader crashes on startup
  32245  Multiple applications crash on startup due to unimplemented function shell32.dll.SHExtractIconsW
  32835  Batman: Arkham Asylum (non-Steam) Demo fails on startup (IWbemClassObject::GetNames with qualifier unsupported)
  33603  Metro: Last Light crash after several minutes
  33732  Broken non-PCM audio playback in Microsoft Sound Recorder
  34352  Multiple applications need 'Network Configuration Component Object', CLSID '{5b035261-40f9-11d1-aaec-00805fc1270e}' (CommView, iNodeSetup 3.60)
  34668  Age of Empires Trial version only gives a black screen
  35064  Daemon Tools Lite crashes after opening
  35112  L.A. Noire 1.3 (Steam version) fails to start, claiming "DX94: Graphics card capabilities are below the minimum specifications." (wined3d clamps device caps MaxVertexIndex to 0xFFFFF)
  35359  Kompas-3D v14 installer fails
  35474  'Das Fussball Studio' (VB6 based german soccer league db app) reports Run-time error '445' (needs IFile::OpenAsTextStream)
  35550  Horizon (Steam) needs msvcp100.dll.?_Random_device@tr1@std@@YAIXZ
  35555  Drakan Demo doesn't show the name of the display driver (the problem is in GetDeviceIdentifier when it is _not_ passed the DDGDI_GETHOSTIDENTIFIER flag)
  35678  Defiance patcher crashes on start (gdiplus/GdipDrawImagePointsRect)
  35786  Incorrect behaviour in printf with 0 value on "%#x"
  35802  OneNote 2013 installer needs KERNEL32.dll.SetWaitableTimerEx
  35809  Avoid deletion of precious (empty) folders such as '%USERPROFILE%\\Application Data' during MSI product upgrades/uninstalls
  35818  mscms/profile tests fail on Fedora
  35825  Mortal Online (MMORPG) client displays garbled buttons/images with builtin gdiplus
  35827  Corel PaintShop Pro X6 v16.2 installer crashes on startup ('text/jscript' type not recognized when converting to script GUID)
  35833  iTunes 7 installer aborts early (automation methods HRESULT incorrectly translated to VBScript runtime Err.number)
  35838  MS Works 9.0 word processor crashes on startup (process heaps need to be 64K aligned)
  35840  'Das Fussball Studio' (VB6 based german soccer league db app) reports Run-time error '445' (needs ITextStream ReadAll method implementation)
  35867  Multiple applications need support for INetCfgLock, CLSID '{c0e8ae93-306e-11d1-aacf-00805fc1270e}' (CommView, iNodeSetup 3.60)
  35888  Stahlschlüssel 2007 no CD in drive warning
  35891  sdb2xml and native setupapi override crash on unimplemented function apphelp.dll.SdbInitDatabase
  35908  Regedit has wrong letter view in title bar with a desktop mode


Changes since 1.7.15:

Alexandre Julliard (10):
      ntdll: Heap handles should be 64K-aligned.
      kernel32/tests: Move allocation tests into heap.c.
      kernel32: Don't allocate FLS index 0.
      makedep: Add dependency for ttf font files when necessary.
      makedep: Add phony install targets for fonts also for the ttf case.
      makedep: Load some variables from the top-level makefile.
      makedep: Allow the top-level makefile to set default values for make variables.
      makedep: Add helper functions to get and set variables in string arrays.
      make_xftmpl: Always output data in little-endian format.
      make_xftmpl: Get rid of the parser structure.

Alistair Leslie-Hughes (4):
      netcfgx: Add INetCfg interface support.
      include: Add interface INetCfgLock.
      netcfgx: Add INetCfgLock support.
      dbghelp: Improve dwarf support.

Andrew Eikum (1):
      winmm/tests: Accept MMSYSERR_ALLOCATED for more tests.

Andrey Gusev (1):
      po: Update Ukrainian translation.

André Hentschel (2):
      setupapi: Add support for more architectures when building fake dlls.
      setupapi: Don't confuse ARM with ARM64.

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

Austin English (5):
      ws2_32: Skip some tests on broken ISPs.
      winhttp: Skip tests on broken ISPs.
      shell32: Fix a typo.
      wine.inf: Add %AppData%\Microsoft and %LocalAppData%\Microsoft folders:.
      apphelp: Add a stub for SdbInitDatabase.

Dmitry Timoshkov (13):
      include: Fix a typo in _MSC_VER.
      schedsvc: Skip the UTF-8 byte order mark when returing XML to the client.
      widl: Pass type attributes from write_array_tfs to write_pointer_description.
      widl: Pass type attributes from write_array_tfs to write_array_element_type.
      widl: Avoid generating negative offsets for conformant arrays of strings.
      widl: Don't call write_embedded_types if an array element is a string.
      widl: Add support for an array of strings to write_string_tfs.
      rpcrt4/tests: Add a couple of tests for marshalling an array of strings.
      widl: Correct the condition when to use new code path which avoids writing negative offsets in the pointer description.
      schrpc.idl: Add missing [string] attribute to an array of strings being returned by SchRpcEnumFolders/SchRpcEnumTasks.
      schedsvc: Implement SchRpcEnumFolders.
      schedsvc: Implement SchRpcEnumTasks.
      schedsvc: Add some tests for scheduler RPC API.

Erich Hoover (1):
      ws2_32: Ask the server to process unsupported WSAIoctl operations.

Eriks Dobelis (2):
      wintab: Fix incorrectly classifying cursor as stylus instead of eraser.
      wintab: Initialize lcOutExtX and Y values.

François Gouget (3):
      wbemprox/tests: Make test_GetNames() static.
      netcfgx/tests: Make create_configuration() static.
      user32/tests: Fix compilation on systems that don't support nameless unions.

Gerald Pfeifer (1):
      readme: Raise the minimum version of FreeBSD to 8.0.

Hans Leidekker (13):
      wbemprox: Add support for WBEM_FLAG_NONSYSTEM_ONLY and WBEM_FLAG_SYSTEM_ONLY in IWbemClassObject::GetNames.
      user32/tests: Add more tests for PrivateExtractIcons.
      shell32: Forward ShExtractIconsW to user32.PrivateExtractIconsW.
      riched20: Don't return DLGC_HASSETSEL from WM_GETDLGCODE if the control style includes ES_SAVESEL.
      fonts: Add Hungarian localization of Tahoma font names.
      wldap32/tests: Skip tests if the connection times out.
      shell32/tests: Remove todo handling from DDE tests.
      shell32/tests: Mark some test results as broken.
      wbemprox: Add a stub implementation of Win32_PhysicalMemory.
      wbemprox: Implement more properties of Win32_OperatingSystem.
      wbemprox: Implement more properties of Win32_DiskDrive.
      wbemprox: Implement Win32_CDROMDrive.MediaType.
      wbemprox: Implement Win32_VideoController.Availability.

Henri Verbeet (25):
      d3d9/tests: Use a separate device for texdepth_test().
      d3d9/tests: Use a separate device for texbem_test().
      d3d9/tests: Use a separate device for fog_with_shader_test().
      d3d9/tests: Use a separate device for stream_test().
      d3d9/tests: Use a separate device for test_vshader_float16().
      d3d9/tests: Handle the Windows 8 testbot results in zenable_test().
      d3d9/tests: Handle the Windows 8 testbot results in fp_special_test().
      d3d9/tests: Handle the Windows 8 testbot results in cnd_test().
      d3d9/tests: Use an easier to debug texture in generate_bumpmap_textures().
      d3d9/tests: Handle the Windows 8 testbot results in test_vshader_input().
      d3d9/tests: Use a separate device for test_vshader_input().
      d3d9/tests: Use a separate device for clip_planes_test().
      d3d9/tests: Use a separate device for sgn_test().
      d3d9/tests: Use a separate device for sincos_test().
      d3d9/tests: Use a separate device for loop_index_test().
      d3d9/tests: Use a separate device for test_mova().
      d3d9/tests: Use a separate device for test_compare_instructions().
      d3d9/tests: Use a separate device for test_constant_clamp_vs().
      d3d9/tests: Use a separate device for viewport_test().
      d3d9/tests: Use a separate device for alphatest_test().
      d3d9/tests: Use a separate device for zwriteenable_test().
      d3d9/tests: Use a separate device for yuv_layout_test().
      d3d9/tests: Use a separate device for yuv_color_test().
      d3d9/tests: Use a separate device for np2_stretch_rect_test().
      d3d9/tests: Use a separate device for tssargtemp_test().

Hermès Bélusca-Maïto (2):
      usp10: Avoid non-standard array initialization.
      winemac.drv: Fix a typo in _MSC_VER.

Hugh McMaster (3):
      regsvr32: Replace printf calls with WriteConsole function.
      regsvr32: Move silent check to the output_write function.
      regsvr32: Fix filename in version definition.

Huw D. M. Davies (2):
      riched20: Add a helper to return the default line height and use that in EM_LINESCROLL.
      riched20: Keep track of fractions of WHEEL_DELTA when scrolling.

Jacek Caban (14):
      mshtml: Added IHTMLStyle::listStyleType property implementation.
      vbscript: Fixed a leak.
      wininet: Merge GetLastError() test into other request tests.
      wininet: Fixed tests on some old Windows versions.
      vbscript: Store required stack offset before doing jump.
      dxgi.idl: Added IDXGIDevice1 declaration.
      dxgi1_2.idl: Added new file.
      vbscript: Map some known error codes to vbscript errors.
      vbscript: Return only code part of HRESULT for vbscript errors as Err.number.
      vbscript/tests: Added more error tests.
      ntdll: Reserve TLS slot 0 for broken apps that compare index to 0 instead of TLS_OUT_OF_INDEXES.
      kernel32: Skip reserved TLS tests on WinXP SP1.
      docobj.idl: Added some new OLECMDID values.
      ieframe: Fixed some tests on IE11.

Jactry Zeng (2):
      riched20: Return E_INVALIDARG for empty ppSel in ITextDocument::GetSelection.
      riched20: Fix a typo in CreateIRichEditOle.

Javier Cantero (3):
      user32: Fix side effect in SubtractRect().
      user32/tests: Add SubtractRect() test.
      user32/tests: New test cases for SubtractRect().

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

Kai Tietz (1):
      corerror.h: Merge with mingw-w64's extensions.

Ken Thomases (10):
      winemac: Don't recreate the GL view when the pixel format is set again.
      winemac: Improve handling of swap interval with respect to pbuffers, clamping to 0.
      wined3d: Don't leak the HDC of an invalid context in context_update_window().
      wined3d: Simplify the error path of context_update_window().
      wined3d: Don't call GetPixelFormat() to set a flag that's already set.
      wined3d: When restoring pixel format in context_release(), mark the context as needing to be set on the next context_acquire().
      wined3d: Track if a context's hdc is private so we never need to restore its pixel format.
      wined3d: Track if a context's private hdc has had its pixel format set, so we don't need to check it.
      winex11: Maintain the swap interval when the drawable is recreated.
      winex11: Remove set-but-never-read hwnd and fbconfig_id fields of struct x11drv_escape_set_drawable.

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

Marcus Meissner (1):
      wbemprox: Fixed leaks in fill_datafile (Coverity).

Markus Weiland (1):
      dxdiagn: Added properties for hardware acceleration capabilities.

Michael Müller (6):
      dxva2: Added stub dll.
      include: Add dxva2api.idl.
      include: Add physicalmonitorenumerationapi.h.
      include: Add lowlevelmonitorconfigurationapi.h.
      include: Add highlevelmonitorconfigurationapi.h.
      dxva2: Add implementation for stub functions.

Michael Stefaniuc (2):
      shell32: Simplify the creation of an IEnumIDList.
      shell32: COM cleanup for IEnumIDList.

Nikolay Sivov (30):
      kernel32: Added SetWaitableTimerEx().
      scrrun: Implement OpenAsTextStream().
      oleaut32/tests: Remove early returns on test failure that never happen.
      oleaut32/tests: Move string allocation after function pointer check (Coverity).
      comctl32/tests: Fix uninitialized variable case (Coverity).
      ole32: Fix some leaks on early returns (Coverity).
      ole32: Fix leaks on error paths (Coverity).
      scrrun: Close find handle on error (Coverity).
      scrrun: Fix a find handle leak (Coverity).
      winhttp: Move allocation after input validation to fix leaks (Coverity).
      comctl32: Fix a leak on error path (Coverity).
      gdiplus: Fix image attributes leak (Coverity).
      msi: Fix a record leak on error paths (Coverity).
      msi: Fix a leak of allocated string buffer on error path (Coverity).
      msi: Fix a record leak on error path (Coverity).
      msi: Fix a record leak on failure removing a column (Coverity).
      scrrun: Added IsReady property for a drive.
      scrrun: Implement TotalSize property for a drive.
      scrrun: Implement AvailableSpace property for a drive.
      scrrun: Implement DriveLetter property for a drive.
      qcap/tests: Check method return values (Coverity).
      msxml3/tests: Check return values (Coverity).
      regsvr32: Fix some usage message issues.
      kernel32: Added QueryUnbiasedInterruptTime().
      po: Update Russian translation.
      msxml3: Handle NULL child in appendChild().
      scrrun: Implement ReadAll().
      scrrun: Implement Read().
      scrrun: Implement FreeSpace() for a drive.
      fonts: Added glyphs for U+0404/U+0454 Ukrainian Ye for Tahoma Bold.

Piotr Caban (7):
      user32/tests: Workaround SetForegroundWindow failure due to foreground lock timeout.
      msvcp90: Add _Random_device implementation.
      msvcrt: Remove setlocale test with empty locale string.
      qcap/tests: Fix AviMux test failures on Win2k.
      user32: Change SetFocus behavior on windows with parent and no WS_CHILD flag.
      user32: Change SetForegroundWindow behavior on windows with parent and no WS_CHILD flag.
      user32: Make it possible to activate a window with parent and no WS_CHILD flag in WS_NCLBUTTONDOWN function.

Robert Naumann (1):
      mgmtapi: Fix a typo in the export of SnmpMgrRequest.

Sebastian Lackner (1):
      kernel32: Silence SetWaitableTimerEx fixme message.

Shuai Meng (1):
      oleaut32: Fixed bounds of VarIntFromFloat.

Stefan Dösinger (15):
      d3d9: Introduce a resource structure.
      d3d9: Use the private store api for buffers.
      d3d9: Use the private store api for textures.
      d3d9: Use the private store api for surfaces.
      wined3d: Remove resource private data methods.
      wined3d: Select the component by editing the swizzle.
      wined3d: Handle LOG and LOGP in shader_hw_scalar_op.
      wined3d: Handle RCP in shader_hw_scalar_op.
      wined3d: Translate LOGP to LG2 in the ARB shader backend.
      wined3d: Translate shader model 2.0+ EXPP to EX2.
      wined3d: Raise MaxPrimitiveCount and MaxVertexIndex.
      d3dx9_36/tests: Initialize some test values.
      d3dxof: Make the get_primitive_string parameter a DWORD.
      d3dxof: Include wine/port.h in parsing.c.
      include: The NumUAVs parameter of OMGetRenderTargetsAndUnorderedAccessViews is an input parameter.

Stefan Leichter (1):
      wtsapi32: Extend the parameter check of WTSEnumerateProcessesW.

Thomas Faber (15):
      dplayx: Fix broken pointer arithmetic.
      gameux/tests: Avoid a variable-length array.
      gdi32: Avoid variable-length arrays.
      msxml3: Avoid a variable-length array.
      shell32: Avoid a variable-length array.
      ws2_32: Avoid a variable-length array.
      oleview: Avoid variable-length arrays.
      configure: Enable -Wvla if available.
      comctl32: Make Str* functions private.
      setupapi: Fix buffer overflow in SetupGetFileCompressionInfoW.
      advapi32: Fix stack corruption in CredIsMarshaledCredentialW.
      advapi32: Remove unnecessary buffer copy in CredMarshalCredentialW.
      advapi32/tests: Use a loop for CredUnmarshalCredential test cases.
      advapi32: Set output type earlier in CredUnmarshalCredential.
      advapi32: Fix uneven length handling in CredUnmarshalCredential.

Vijay Kiran Kamuju (1):
      mshtml: Add text/jscript as valid mime type for javascript files.

Vincent Povirk (4):
      gdiplus: Limit image output to the bounds of the Graphics object.
      gdiplus: Remove a useless comparison.
      gdiplus: Copy palettes with bitmaps.
      msi: Fix infinite loop.

Zhenbo Li (1):
      mshtml: Added IHTMLTableRow::bgColor property implementation.

Alexandre Julliard