The Wine development release 1.7.51 is now available.

What's new in this release (see below for details):
  - XAudio2 implementation using OpenAL Soft.
  - Support for the new Universal C Runtime DLL.
  - Dropdown menu support in the standard Open Dialog.
  - Grayscale rendering mode in DirectWrite.
  - Various bug fixes.

The source is available from the following locations:

  http://prdownloads.sourceforge.net/wine/wine-1.7.51.tar.bz2
  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.51.tar.bz2

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 1.7.51 (total 37):

   9848  flipviewer fails to load
  14915  FlushFileBuffers() fails on disk volume, sets ERROR_INVALID_HANDLE when handle supposedly valid
  19425  notepad: running notepad with a non-existent file and choosing yes to create a new file should do so immediately (appinstall)
  22978  SimCity2000: race condition causes crash in MCI during startup
  28186  uninstaller has no proper usage message
  28770  Diablo 2 - sound works in menu, stops after starting game
  28911  cnet download app cannot download anything
  29017  4th Dimension 6.5.4 crashes
  29380  Sonic Generations: needs "C:\users\<username>\My Documents\My Games" to exist
  29381  Sonic Generations: configuration tool turns into a zombie process when closed
  29880  Sonic Generations: no audio
  30170  Afterburner 3D: screen not drawn properly (orm=fbo)
  32213  Tales of Pirates II Randomly Closes out.
  32527  No Navigation in panel / Heredis 9
  34008  Multiple DirectX10 games need D3D11CreateDevice implementation with D3D_FEATURE_LEVEL_10_x support (Bioshock Infinite, Age of Mythology: Extended Edition, GRID )
  34244  DARK (2013) doesn't launches without native quartz
  36300  valgrind shows an invalid read in msxml3/tests/saxreader.c
  36498  Project64: about page is black
  36589  valgrind shows uninitialized memory use in usp10/tests/usp10.c
  36875  Incorrect check in PlayEnhMetaFileRecord() with case == EMR_SCALEWINDOWEXTEX
  37266  LTSpice netlist text unreadable (monospaced text glyphs are misplaced and overlapping)
  37451  python 3.1.1: test_test_decimal failed
  37865  echo/ not works as expected (like echo. and echo:)
  37915  Multiple games and applications need proper handling of Vista+ 'PROCESS_QUERY_LIMITED_INFORMATION' right (UPlay games, MS Visual Studio 2015 installer)
  38343  Unimplemented function mfplat.dll.MFGetPluginControl
  38672  valgrind shows uninitialized memory in update_net_wm_states()
  38751  El Matador, Exodus from the Earth have rendering issues when anti-aliasing enabled
  38841  PunkBuster 'PnkBstrB.exe' initialization fails (K32EnumProcessModules write to NULL pointer)
  38870  regsvr32: Flags should be processed before files
  38927  IVONA Voices (SAPI TTS): Trial period (30 days) prematurely expires as soon as wineserver session ends
  39014  Multiple games render pink artifacts (O2Jam, Stranded II, SpaceRace)
  39077  o2jam doesnt close completely after exit the game, it stays on the process
  39111  Reinstalling Nvidia Physx adds  path multiple times to 'HKLM\System\CurrentControlSet\Control\Session Manager\Environment\Path'
  39127  Multiple applications wrapped with XenoCode Postbuild 2009 application sandboxing crash with stack overflow ('NtWaitForSingleObject' must not call 'NtWaitForMultipleObjects')
  39148  Guild Wars and Guild Wars 2 don't exit properly
  39165  dlls/xaudio2_7 fails to compile (unconditional dependency on OpenAL)
  39174  TP Link CPL administration tool crashed on : unimplemented function wpcap.dll.pcap_parsesrcstr

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

Changes since 1.7.50:

Aaryaman Vasishta (6):
      d3drm: Thunk IDirect3DRMTexture2::AddRef to version 3.
      d3drm: Thunk IDirect3DRMTexture2::Release to version 3.
      d3drm: Thunk IDirect3DRMTexture2::QueryInterface to version 3.
      d3drm: Fix spelling mistake in Set/GetDecalTransparentColor macros.
      d3drm: Thunk relevant texture methods from version 2->3.
      d3drm: Add stubs for IDirect3DRMTexture methods.

Alistair Leslie-Hughes (1):
      gdi32/tests: Add enhanced metafile GetPath test.

Andrew Eikum (16):
      xaudio2: Stub IXAudio2SubmixVoice.
      xaudio2: Implement IXAudio2::GetDeviceDetails.
      xaudio2: Implement IXAudio2SourceVoice::SetOutputVoices.
      xaudio2: Implement device activation.
      xaudio2: Implement IXAudio2SourceVoice::Play.
      xaudio2: Zero the returned struct GetPerformanceData.
      xaudio2: Implement IXAudio2::RegisterForCallbacks.
      xaudio2: Fix return value for RegisterForCallbacks.
      xaudio2: Implement the audio mixing thread.
      xaudio2: Implement IXAudio2SourceVoice::SubmitSourceBuffer.
      xaudio2: Implement IXAudio2SourceVoice::GetState.
      configure: Require openal-soft at build-time for xaudio2.
      xaudio2: Implement IXAudio2SourceVoice::SetVolume.
      xaudio2: Implement IXAudio2SourceVoice::FlushSourceBuffers.
      xaudio2: Add a simple audio streaming test.
      xaudio2/tests: Add callback tests.

Andrey Gusev (1):
      Assorted spelling and typos fixes.

André Hentschel (3):
      winedbg: Update minidump output.
      winedump: Update minidump output.
      wpcap: Partially implement pcap_parsesrcstr.

Aric Stewart (1):
      hidclass.sys: Implement creating/destroying HID devices.

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

Bruno Jesus (4):
      msvidc32: Improve trace messages from CRAM_DecompressQuery.
      po: Update Brazilian Portuguese translation.
      mciavi32: Add partial support for MCI_DGV_PLAY_REPEAT.
      quartz: Skip AVI bad chunks while looking for the LIST chunk.

Daniel Lehman (6):
      wininet: Use stored server name in HTTP_ProcessCookies.
      kernel32: Return LOCALE_INVARIANT from ConvertDefaultLocale.
      msvcrt: Use msvcrt free instead of HeapFree on tls data.
      wrc: Add support for LANG_INVARIANT.
      kernel32: Add Invariant string table.
      kernel32/tests: Add tests for Invariant.

Dmitry Timoshkov (7):
      winhttp: Add support for WinHttpRequestOption_URLCodePage.
      kernel32/tests: Avoid intermittent test failures.
      winhttp/tests: Add a test for IWinHttpRequest::Invoke.
      winhttp/tests: Add more IWinHttpRequest_Invoke tests.
      msscript.ocx: Add missing 'vararg' attribute to the Run() methods.
      oleaut32/tests: Avoid using a reserved keyword '_restrict' in an idl.
      oleaut32/tests: Add a test for calling a varargs method using typelib marshaller.

Erich Hoover (1):
      winspool.drv: Allow spooling directly to a postscript file.

Florian Pelz (5):
      po: German translation: Fix grammar errors.
      po: German translation: Fix capitalization.
      po: German translation: Fix punctuation.
      po: German translation: Fix hyphenation.
      po: German translation: Fix mistranslations.

François Gouget (4):
      xaudio2_7: Make some functions static.
      xaudio2_7: Remove an unused NONAMELESSSTRUCT directive.
      ole32: A cosmetic fix for the CoMarshalInterface() trace.
      dwrite: Make opentype_get_font_strings_from_id() static.

Gerald Pfeifer (5):
      include: Base D3DVSD_TOKENTYPEMASK on an unsigned constant to avoid avoid shift overflows.
      quartz: Replace four occurrences of 1 << 31 by 1u << 31 to avoid shift overflow.
      winex11: Make a constant unsigned to avoid shift overflow in get_locale_kbd_layout.
      include: Define HIDP_STATUS constants via unsigned parameters.
      rpcrt4/tests: Cast to ULONGLONG instead of LONGLONG to avoid shift overflow.

Hans Leidekker (19):
      advapi32: Add well-known SID WinBuiltinAnyPackageSid.
      winhttp: Add support for retrieving the URL codepage.
      msi: Don't add the same environment string more than once.
      msi: Implement Installer::SummaryInformation.
      include: Add missing Network List Manager declarations.
      netprofm: Introduce heap allocation macros.
      netprofm: Clear the object pointer on failure in QueryInterface.
      netprofm: Support IDispatch on the list manager object.
      netprofm: Add a stub implementation of INetworkConnection.
      wininet: Don't trace the password in InternetConnectW.
      netprofm: Add a stub implementation of INetwork.
      netprofm: Implement INetworkConnection::GetNetwork.
      netprofm: Add a stub implementation of INetworkConnectionCost.
      netprofm: Implement IEnumNetworks.
      netprofm: Implement IEnumNetworkConnections.
      netprofm: Implement INetworkListManager::GetNetwork.
      netprofm: Implement INetworkListManager::GetNetworkConnection.
      netprofm: Implement INetworkListManager::IsConnectedToInternet and INetworkListManager::IsConnected.
      netprofm/tests: Add tests.

Henri Verbeet (7):
      d3d10core: Get rid of some redundant includes.
      d3d11: Get rid of a redundant include.
      d3d11: Make "layers" static in D3D11CoreRegisterLayers().
      d3d11: Use the IUnknown implementation from the d3d11 interface.
      d2d1: Avoid leaking "object" on an error path in d2d_factory_CreateWicBitmapRenderTarget() (Coverity).
      wined3d: Get rid of some powf() calls.
      wined3d: Use unsigned mask constants in shifts.

Hugh McMaster (7):
      regsvr32: Process flags before files.
      regsvr32: /n and /u /n should be handled as invalid flags.
      regsvr32: Use correct exit code when GetProcAddress fails.
      regsvr32: Use correct exit code when LoadLibraryEx fails.
      regsvr32: Use INVALID_ARG define instead of magic 1.
      regsvr32: Use correct exit code when DllRegisterServer, DllUnregisterServer and DllInstall fail.
      regsvr32: Do not attempt to register '/' or '-'.

Jacek Caban (12):
      d3d11.idl: Added some missing declarations.
      ntdll: Added new pid debug channel to append process id to debug output.
      ieframe/tests: Fixed random test failures.
      ole32: Create interface stub only if it's not already created.
      ole32: Use proper IUnknown implementation when finding and creating stub manager.
      ole32: Use proper interface pointer in CreateStub call.
      ole32: Added tests for IPSFactoryBuffer::CreateStub calls.
      msi: Fixed varg0 leak in InstallerImpl_SummaryInformation.
      ole32: Quote executable name in CreateProcess call.
      ole32: Catch crashes in stub object destructors when destroying stub manager.
      oleaut32: Ensure that we're using the right interface in CreateStub implementation.
      ole32: Use get_stub_manager_from_object in CoDisconnectObject.

Jactry Zeng (2):
      riched20: Implement EM_SETFONTSIZE.
      riched20: Repaint paragraph after undo format setting of the paragraph.

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

Józef Kucia (34):
      d3d11/tests: Add test for device interfaces.
      d3d10core/tests: Add test for device feature level.
      d3d11: Allow to pass NULL as device to D3D11CreateDevice.
      d3d11/tests: Add test for D3D11CreateDevice.
      d3dx9: Fix typo in DDS_WIDTH define.
      d3dx9: Fix miplevels handling for DDS file format.
      d3dx9/tests: Add tests for DDS file format size validation.
      d3dx9: Use D3DFMT constants instead of MAKEFOURCC codes.
      d3d11: Add ID3D11Texture2D stub interface.
      d3d11: Implement private data methods in ID3D11Texture2D.
      d3d11: Implement d3d11_texture2d_GetDevice.
      d3d11: Implement d3d11_texture2d_GetDesc().
      d3d11: Move d3d11 device implementation to top of file.
      d3d11: Fix compilation on GCC with -O0.
      d3d11: Fix resource misc flags conversion.
      d3d11: Implement d3d11_device_CreateTexture2D().
      d3d11/tests: Port test_create_texture2d() from d3d10core.
      d3d11/tests: Add test for 2D texture interfaces.
      d3d11: Rename d3d10_texture2d to d3d_texture2d.
      d3d10core/tests: Use win_skip() instead of skip().
      d3d10core/tests: Port test_texture2d_interfaces() from d3d11.
      d3d11: Rename d3d10_texture3d to d3d_texture3d.
      d3d11: Add ID3D11Texture3D interface stub.
      d3d11: Implement d3d11_texture3d_GetDevice().
      d3d11: Implement d3d11_texture3d_GetDesc().
      d3d11: Implement d3d11_device_CreateTexture3D().
      d3d11/tests: Port test_create_texture3d() from d3d10core.
      d3d11/tests: Add test for 3D texture interfaces.
      d3d11: Rename d3d10_{get, set}_private_data functions to d3d_{get, set}_private_data.
      d3d11: Implement private data methods for ID3D11Texture3D.
      d3d11: Rename d3d10_buffer to d3d_buffer.
      d3d11: Add ID3D11Buffer interface stub.
      d3d11: Implement private data methods for ID3D11Buffer.
      d3d11: Implement d3d11_buffer_GetDevice().

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

Martin Storsjo (21):
      ucrtbase: Add the new universal CRT DLL.
      make_specfiles: Use cdecl for stub redirects to ucrtbase, just like to msvcr*.
      api-ms-win-crt-conio-l1-1-0: Add stub dll.
      api-ms-win-crt-convert-l1-1-0: Add stub dll.
      api-ms-win-crt-environment-l1-1-0: Add stub dll.
      api-ms-win-crt-filesystem-l1-1-0: Add stub dll.
      api-ms-win-crt-heap-l1-1-0: Add stub dll.
      api-ms-win-crt-locale-l1-1-0: Add stub dll.
      api-ms-win-crt-math-l1-1-0: Add stub dll.
      api-ms-win-crt-multibyte-l1-1-0: Add stub dll.
      api-ms-win-crt-private-l1-1-0: Add stub dll.
      api-ms-win-crt-process-l1-1-0: Add stub dll.
      api-ms-win-crt-runtime-l1-1-0: Add stub dll.
      api-ms-win-crt-stdio-l1-1-0: Add stub dll.
      api-ms-win-crt-string-l1-1-0: Add stub dll.
      api-ms-win-crt-time-l1-1-0: Add stub dll.
      api-ms-win-crt-utility-l1-1-0: Add stub dll.
      ucrtbase: Hook up the _set_app_type, _set_new_handler and _set_new_mode functions.
      ucrtbase: Hook up _crt_atexit.
      ucrtbase: Add stub functions for narrow environment.
      msvcrt: Test that the normal strtod doesn't handle the "NAN" string.

Matt Durgavich (1):
      advapi32/tests: Fix for crashes on Mac OS X.

Michael Müller (2):
      ntdll: Use helper function for NtWaitForMultipleObjects and NtWaitForSingleObject.
      wininet: Set Host header in HttpSendRequestW instead of HttpOpenRequestW.

Nikolay Sivov (22):
      dwrite: Handle failure when getting texture bounds (Coverity).
      dwrite: Handle QI failure (Coverity).
      kernel32/tests: Fix GetGeoInfo() test failure on Win10.
      usp10/tests: Fix some tests failures caused by Tahoma changes (Win10).
      user32/tests: Fix a test failure on Win8/Win10.
      dwrite: Return advances using freetype cache system.
      dwrite: Use proper pixel format when accessing dib memory directly.
      dwrite: Cleanup rendering interface with freetype.
      dwrite: Bitmap buffer is zeroed on allocation, no need to do it again.
      dwrite: Implement grayscale rendering mode.
      dwrite: Implement family and face name resolution.
      dwrite: Recognize semi light weight patterns.
      dwrite: Force reported English family/face names to resolved values.
      gdi32/tests: Add names to data structure GetFontRealizationInfo returns, explicitly test with older variant fields.
      gdi32: Added GetFontRealizationInfo() export.
      dwrite: Add simulated bold faces for each family when appropriate.
      dwrite: Add simulated oblique faces.
      dwrite: Remove GetFaceNames() hack for simulated case.
      dwrite: Increase a number of allocated family slots for system collection.
      dwrite: Make sure same files are scanned once when building font collection.
      dwrite: Make CreateFontFace() fail with DWRITE_E_FILEFORMAT for supported types in case of type mismatch.
      dwrite/tests: Fix some test failures on Win10.

Philippe Groarke (1):
      crypt32: Add CERT_OCSP_RESPONSE_PROP_ID setter.

Piotr Caban (2):
      d2d1: Avoid possible infinite loop in d2d_geometry_intersect_self caused by rounding errors.
      imm32: Don't use functions that use graphics driver in THREAD_DETACH/PROCESS_DETACH.

Sebastian Lackner (4):
      mfplat: Add missing export of MFGetPluginControl to specfile.
      server: Properly inherit debug_children flag when creating new process.
      notepad: New files should be created immediately.
      include: Fix copy and paste errors in wine_dbgstr_vt.

Stefan Dösinger (19):
      wined3d: Add a slop for color keying.
      ddraw/tests: Test color keying precision.
      ddraw: Return the right error if range color keys are used.
      wined3d: Handle multisample_quality if type == MULTISAMPLE_NON_MASKABLE.
      d3d9: Validate swap effect and backbuffer count.
      d3d8: Validate swap effect and backbuffer count.
      d3d9/tests: Test presentation parameter combinations.
      d3d8/tests: Test presentation parameter combinations.
      d3d9/tests: Fix backbuffer read vs flip in test_vertex_blending.
      dxgi/tests: We don't need a custom window class.
      dxgi/tests: Test presentation parameter combinations.
      ddraw/tests: Properly clean up in test_texcoordindex.
      dxgi/tests: Remove debug comments.
      wined3d: Return a texture from wined3d_swapchain_get_back_buffer.
      wined3d: Remove wined3d_device_get_back_buffer.
      d3d9/tests: Add more GetBackBuffer error handling tests.
      d3d8/tests: Add more GetBackBuffer error handling tests.
      wined3d: Return a texture from the swapchain resource creation callback.
      d3d11: Set surface and volume parents to NULL.

Thomas Faber (3):
      access.idl: Do not use annotation attribute on remote method (MIDL).
      netapi32: Correctly reallocate buffer in NetWkstaUserGetInfo.
      kernel32/tests: Run test_thread_fpu_cw on x86 MSVC builds.

Thomas Faller (3):
      winex11.drv: Fix uninitialized memory.
      msxml3: Fix invalid read.
      usp10: Fix invalid read.

Vincent Povirk (6):
      comdlg32: Add WS_CLIPSIBLINGS to controls in the item dialog.
      comdlg32: Implement open dropdown menu.
      comdlg32: Show and hide the open dropdown menu dynamically.
      comdlg32: Show open dropdown menu on button press.
      advapi32: RegOpenKeyEx can return special roots when asked for empty subkey.
      mscoree: Don't modify the PATH environment variable.

YongHao Hu (1):
      include: Add definition of CreateHardLink.

Zhenbo Li (5):
      mshtml: Add IHTMLOptionElement::defaultSelected property implementation.
      mshtml: Add IHTMLOptionElement::form property implementation.
      mshtml: Remove unnecessary FIXME.
      mshtml/tests: Fix crash on win2000 testbot.
      shell32: Fix return type for helper functions of SHFileOption.

--
Alexandre Julliard
julliard@winehq.org
