diff --git a/ANNOUNCE b/ANNOUNCE
index c237d39..0d5f43a 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,16 +1,16 @@
-The Wine development release 1.7.50 is now available.
+The Wine development release 1.7.51 is now available.
 
 What's new in this release (see below for details):
-  - New version of the Gecko engine based on Firefox 40.
-  - First steps of the Direct3D 11 implementation.
-  - Better font matching in DirectWrite.
-  - Support for OpenMP on ARM platforms.
+  - 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.50.tar.bz2
-  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.50.tar.bz2
+  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:
 
@@ -26,342 +26,353 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.7.50 (total 39):
+Bugs fixed in 1.7.51 (total 37):
 
-  12454  iriver Plus 3 fails to start due to missing msvcirt.dll ?sh_read@filebuf@@2HB export
-  23650  PowerPoint 2007 insensitive to changes in screen resolution
-  25225  MPLAB IDE v8.60 toolbars getting reorganised every time when the window minimized and restored
-  26688  Multiple games crashes on unimplemented function vcomp.dll.omp_init_lock (Risen, Hearts of Iron III demo)
-  28444  zenilib 0.4.1.0 applications: crash when attempting to use d3dx9 for rendering
-  29081  Drag and Drop: Duplicate entries in winamp playlist window
-  29468  not able to click anything on Star Wars Republic Commando launcher
-  30397  Multiple applications need support for NtSetInformationFile class FileDispositionInformation (Cygwin installer, Stylizer 5.x Visual CSS editor, Spoon Studio 2011 (ex Xenocode) application sandboxing scheme)
-  30399  Multiple games and applications need support for 'NtSetInformationFile' class 'FileRenameInformation' (Spoon Studio 2011 based Stylizer 5.x, Boost.Interprocess based Tera Online, MSYS2 installer)
-  31856  TextPad full screen view toggle broken
-  31895  The main character is not rendered in Synaesthete
-  32531  Microsoft Internet Explorer 10 crashes on unimplemented function KERNEL32.dll.CreateThreadpoolWork (Vista+ API)
-  32671  PhotoLine 32 v18.x crashes on startup (missing error handling on creation of multi-profile color transform)
-  33430  Santander bank security module crashes during StormFish installation
-  36163  valgrind shows an unitialized variable in programs/cmd/tests/batch.c
-  36457  Hearts of Iron III Demo and Europa Universalis:Rome crash with unimplemented function vcomp.dll._vcomp_enter_critsect
-  37225  QQ 6.3: QQApp.exe Crashes after login
-  37478  cmd doesn't handle "else if" correctly in all cases
-  38153  Don't work Radmin viewer 3.5
-  38224  AcceptEx detaches the socket from its IO completion port
+   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
-  38435  Xfire 2.0 crashes on unimplemented function fltlib.dll.FilterLoad
-  38611  Samsung Smart View 2.0 (.NET 4.x WPF app): text does not render (IDWriteGlyphRunAnalysis is not implemented)
-  38698  wineconsole: Altering line InsertMode with the Insert key should not be permanent
-  38755  Unable to run "Twitch Bandwidth Test": calling to unimplemented function IPHLPAPI.DLL.SetPerTcpConnectionEStats
-  38955  Visual Studio Code installer crashes on startup (parsing of overly long string-format security descriptor causes stack corruption)
-  38967  Lotus Approach from Lotus Smartsuite 9.8 crashes on startup (OLE compound document files v3 may contain junk in high part of size)
-  38976  Hospital Tycoon crashes after the intro videos with built-in d3dx9_36
-  38977  Tabs are rendered as a rectangle in license text of Quake III Arena demo installer
-  38988  .NET applications using System.Decimal to float conversion may return wrong results ('VarR4FromDec' divisor integer overflow)
-  39028  Built-in iexplore crashes when opening forum/blog entries on hup.hu (crash in get_frame_by_name("yterr")
-  39031  Schein demo needs vcomp110.dll._vcomp_master_begin
-  39040  Office 2010 applications enter installation configuration steps then exit
-  39058  Schein demo needs vcomp110.dll._vcomp_flush
-  39096  Nvidia Physx uninstaller completely removes PATH registry key from 'HKLM\System\CurrentControlSet\Control\Session Manager\Environment'
-  39099  Wine's msiexec crashes when invoking Nvidia Physx maintenance tool via 'wine uninstaller -> Modify...'
-  39104  [win16] installing application cause "Not Enough Disk Space" MessageBox
-  39117  Cross-compilation: Error in zconf.h included from zlib.h included from http.c
-  39118  Office 2013 installer fails to start
+  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.49:
+Changes since 1.7.50:
 
-Aaryaman Vasishta (14):
-      d3drm: Change signature of d3drm_device_create.
-      d3drm: Add helper for destroying device.
-      d3drm: Implement IDirect3DRM::CreateDeviceFromClipper.
-      d3drm: Implement IDirect3DRMDevice*::GetDirect3DDevice.
-      d3drm: Implement IDirect3DRM{2-3}::CreateDeviceFromClipper.
-      d3drm: Implement IDirect3DRMDevice{2-3}::GetDirect3DDevice2.
-      d3drm: Implement IDirect3DRM::CreateDeviceFromSurface.
-      d3drm: Implement IDirect3DRM{2-3}::CreateDeviceFromSurface.
-      d3drm: Implement IDirect3DRM::CreateDeviceFromD3D.
-      d3drm: Implement IDirect3DRM{2-3}::CreateDeviceFromD3D.
-      d3drm: GetDirect3DDevice2 returns D3DRM_OK when IDirect3DDevice2 is not available.
-      d3drm: Add IDirect3DRMObject to be queried from IDirect3DRMDevice*.
-      d3drm: Fix IDirect3DRMDevice3_QueryInterface returning incorrect HRESULT on unsupported interfaces.
-      d3drm/tests: Add QueryInterface tests for IDirect3DRMDevice*.
+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.
 
-Adam Stachowicz (1):
-      po: Update Polish translation.
+Alistair Leslie-Hughes (1):
+      gdi32/tests: Add enhanced metafile GetPath test.
 
-Akihiro Sagawa (3):
-      usp10/tests: Add tests for control character glyphs.
-      usp10: Display the blank glyph for some control characters (truetype/opentype).
-      usp10: Display the blank glyph for some control characters (non truetype/opentype).
+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.
 
-Alex Henrie (1):
-      mshtml: Use the same click event handler for anchor and area elements.
-
-Alexandre Julliard (2):
-      secur32: Avoid ssize_t type that causes printf format warnings.
-      server: Store modification time as a key comment to avoid losing precision.
-
-Alistair Leslie-Hughes (4):
-      d3dcompiler: Add D3DCompileFromFile, D3DCompile2 stubs.
-      advapi32: Prevent buffer overrun.
-      include/d3dcommon.idl: Add missing typedefs.
-      include: Add more WELL_KNOWN_SID_TYPE values.
-
-Andrew Eikum (3):
-      xaudio2: Implement IXAudio27::Initialize.
-      xaudio2: Add stub IXAudio2MasteringVoice implementation.
-      xaudio2: Stub IXAudio2SourceVoice.
-
-Andrey Gusev (2):
+Andrey Gusev (1):
       Assorted spelling and typos fixes.
-      po: Update Ukrainian translation.
 
-André Hentschel (11):
-      comctl32/tests: Add ARM and ARM64 arch strings.
-      kernel32/tests: Add more ARM and ARM64 arch strings.
-      user32/tests: Add ARM and ARM64 arch strings.
-      ntdll: Fix stack alignment on ARM64.
-      ntdll: Add support for Win 10.
-      vcomp/tests: Comment out architecture dependent tests (shift count overflow).
-      vcomp/tests: Add ARM and ARM64 arch strings.
-      vcomp/tests: Make float test i386 only.
-      vcomp: Add ARM support.
-      rpcrt4: Add ARM support.
-      ntdll/tests: Add ARM64 support for map protection tests.
+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 (3):
-      msvfw32: Make it easier to recognize missing media codecs.
-      include: Add tcpestats.h.
-      iphlpapi: Add a stub for SetPerTcpConnectionEStats.
+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.
 
-Carlo Bramini (6):
-      wmc: Remove redeclaration of optarg and optind.
-      wrc: Remove redeclaration of optarg and optind.
-      winecfg: Simplify code by using SetDlgItemInt.
-      msvcrt: Call SetFilePointer() with correct parameters.
-      msvcrt: Use MSVCRT_xxx macros instead of the same ones from GLIBC.
-      msvcrt: SEEK_* macros from GLIBC should be replaced with safer MSVCRT_SEEK_* macros.
+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.
 
-Daniel Lehman (1):
-      msxml3: Fix crash when merging Text nodes.
-
-Dmitry Timoshkov (14):
-      ntdll: Separate image relocation from NtMapViewOfSection.
-      msi: Avoid using dialog record after free.
-      advapi32/tests: Fix compilation with PSDK.
-      advapi32/tests: Add a test to show that PROCESS_QUERY_INFORMATION should implicitly grant PROCESS_QUERY_LIMITED_INFORMATION access.
-      server: Keep a pointer to parent's fd unix_name in the closed_fd structure.
-      ntdll: Do not fail to relocate an image if the size of relocation block is 0.
-      kernel32/tests: Fix compilation with PSDK.
-      kernel32/tests: Add some tests for PROCESS_QUERY_LIMITED_INFORMATION.
-      kernel32/tests: Add some tests for THREAD_QUERY_LIMITED_INFORMATION.
-      advapi32/tests: Add a test to show that THREAD_QUERY_INFORMATION should grant THREAD_QUERY_LIMITED_INFORMATION.
-      server: Add implicit PROCESS_[QUERY|SET]_LIMITED_INFORMATION access.
-      server: Add implicit THREAD_[QUERY|SET]_LIMITED_INFORMATION access.
-      server: For querying process information demand PROCESS_QUERY_LIMITED_INFORMATION access.
-      server: For querying thread information demand THREAD_QUERY_LIMITED_INFORMATION access.
-
-Eric Kohl (1):
-      advapi32: Add some well-known SDDL SID strings.
+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):
-      server: Do not permit FileDispositionInformation to delete a file without write access.
+      winspool.drv: Allow spooling directly to a postscript file.
 
-Gerald Pfeifer (2):
-      d3dcompiler_43: Define BWRITER_SM1_VS and BWRITER_SM1_PS as unsigned constants.
-      oleaut32: Use proper unsigned type in EXPECT_I8(high,low).
+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.
 
-Hans Leidekker (9):
-      wbemprox: Fix evaluation of LIKE queries.
-      iphlpapi: Set the adapter LUID in GetAdaptersAddresses.
-      iphlpapi/tests: Fix a couple of test failures.
-      include: Add missing SSPI declarations.
-      secur32: Implement a couple of identity helper functions.
-      credui: Add a partial implementation of SspiPromptForCredentials.
-      iphlpapi: Use WS_AF_INET instead of AF_INET where appropriate.
-      iphlpapi: Implement GetIfTable2.
-      msi: Only remove environment strings that were added on install.
+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.
 
-Henri Verbeet (18):
-      iphlpapi: Simplify the calculation of "ptr" in CreateSortedAddressPairs().
-      d3d10core: Add locking around wined3d calls.
-      d2d1: Get rid of a FIXME in d2d_solid_color_brush_init().
-      d2d1: Get rid of a FIXME in d2d_bitmap_brush_init().
-      d2d1: d2d_bitmap_brush_init() can't fail.
-      d2d1: Get rid of a FIXME in d2d_wic_render_target_init().
-      d2d1: Only print a FIXME/WARN for specific properties in d2d_d3d_render_target_init().
-      d2d1: Only print a FIXME/WARN for specific properties in d2d_factory_init().
-      d2d1: Print a WARN instead of a FIXME for the glyph run description in d2d_text_renderer_DrawGlyphRun().
-      d2d1: Only draw if the geometry has any faces in d2d_d3d_render_target_FillGeometry().
-      d2d1: Make d2d_geometry_sink_vtbl static const.
-      wined3d: Also invalidate STATE_SHADER_RESOURCE_BINDING in wined3d_texture_bind_and_dirtify().
-      wined3d: Separate loading shader resources and updating their binding points.
-      d3d10core: Implement d3d10_device_UpdateSubresource().
-      d2d1: Implement d2d_bitmap_CopyFromMemory().
-      d2d1: Implement d2d_text_renderer_DrawInlineObject().
-      d2d1: Properly cleanup in d2d_rectangle_geometry_init() failure paths.
-      d2d1: Implement d2d_factory_CreateTransformedGeometry().
+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.
 
-Hugh McMaster (5):
-      kernel32: Reset insert key toggle when Insert Mode changes.
-      uninstaller: Add WriteConsoleW support.
-      uninstaller: Output Unicode program names in CLI mode.
-      uninstaller: Add WriteFile fallback.
-      uninstaller: Add help switch and usage information.
+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.
 
-Huw D. M. Davies (3):
-      ws2_32: Avoid using inet_ntoa() which isn't thread-safe.
-      gdi32: Add tests for GetFontRealizationInfo, GetFontFileInfo and GetFontFileData.
-      gdi32/tests: 64-bit GetFontFileInfo may fail with error ERROR_NOACCESS.
+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.
 
-Indrek Altpere (1):
-      mshtml: Handle nsIDOMWindow_GetFrames returning NULL.
+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 '-'.
 
-Iván Matellanes (7):
-      msvcirt: Allocate a buffer if necessary when a file is opened.
-      msvcirt: Implement filebuf::setmode.
-      msvcirt: Implement filebuf::setbuf.
-      msvcirt: Implement filebuf::sync.
-      msvcirt: Implement filebuf::overflow.
-      msvcirt: Implement filebuf::underflow.
-      msvcirt: Implement filebuf::seekoff.
+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.
 
-Jacek Caban (15):
-      mshtml: Wine Gecko 2.40 release.
-      widl: Allow [version] attribute to be used on structs in winrt mode.
-      widl: Added support for namespaced structs.
-      windows.foundation.idl: Added struct declarations.
-      ieframe: Store container IOleCommandTarget in DocHost.
-      ieframe: Use stored IOleCommandTarget in Exec implementation and get rid of no longer needed exec in IDocHostContainerVtbl.
-      ieframe: Added support for DownloadBegin and DownloadComplete events.
-      ieframe: Properly test events when container doesn't support IOleCommandTarget add added more tests.
-      mshtml: Added IHTMLCurrentStyle3::whiteSpace property implementation.
-      mshtml: Properly handle request aborted inside OnStartRequest.
-      ieframe: Don't add about: URLs to travellog.
-      ieframe: Update back/forward command state in FireNavigateComplete2.
-      ieframe: Update back/forward navigation state in CMDID_EXPLORER_UPDATEHISTORY handler.
-      ieframe: Fixed and improved navigation command state tests.
-      ieframe/tests: Added more test traces to diagnose some test failures.
+Jactry Zeng (2):
+      riched20: Implement EM_SETFONTSIZE.
+      riched20: Repaint paragraph after undo format setting of the paragraph.
 
-Jianqiu Zhang (1):
-      ntdll/tests: Add basic tests for FileRenameInformation.
+Julian Rüger (1):
+      po: Update German translation.
 
-Józef Kucia (9):
-      d3d10core/tests: Fix copy-paste mistake.
-      includes: Add D3D11CreateDeviceAndSwapChain declaration to d3d11.idl.
-      d3d10core: Do not use '\n' in the middle of TRACEs.
-      d3d10: Do not use '\n' in the middle of TRACE.
-      dxgi: Remove 'stub!' from TRACE message in dxgi_swapchain_ResizeBuffers().
-      d3d11: Add ID3D11Device stub interface.
-      d3d11: Move d3d10core to d3d11.
-      d3d11: Implement D3D11CreateDevice.
-      d3d11: Rename d3d10_device to d3d_device.
+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().
 
-Ken Thomases (1):
-      winemac: Tell Wine when Cocoa brought a clicked window forward even if it sent the click event.
+Lauri Kenttä (1):
+      po: Update Finnish translation.
 
-Michael Müller (5):
-      winhttp: Remove unused variable in read_reply().
-      imagehlp: Remove unused structure.
-      winhttp: Raw request headers need to be terminated with double \r\n.
-      winecfg: Do not overwrite theme each time an item is drawn.
-      krnl386.exe16: Increase buffer size in GetTempDrive.
+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.
 
-Michael Stefaniuc (2):
-      qedit: COM cleanup for IEnumMediaTypes of SampleGrabber.
-      qedit: Simplify/fix the creation of the IEnumMediaTypes.
+Matt Durgavich (1):
+      advapi32/tests: Fix for crashes on Mac OS X.
 
-Nikolay Sivov (18):
-      dwrite: Fix font table tag tracing.
-      dwrite: Use OS/2 table data to set font style, make it preferable.
-      dwrite: Set font stretch from 'head' table as a fallback.
-      dwrite: Improve the way font weight is set with both OS/2 and 'head' values.
-      dwrite: Use better font matching algorithm based on weight/stretch/style triples.
-      dwrite: Fix family name extraction order.
-      dwrite: Improve face name extraction.
-      dwrite/tests: Some tests for target hdc mode/transform.
-      include: Added IImgCtx definition.
-      dwrite: Implement outline mode for DrawGlyphRun().
-      dwrite: Use aliased outline threshold for GDI target.
-      dwrite: Implement font style resolution from name strings.
-      po: Update Russian translation.
-      dwrite: Implement font stretch resolution.
-      dwrite: Extract and resolve font weight from name string.
-      dwrite: Protect from space-only strings when trimming away spaces.
-      dwrite/tests: Fix layout test failure on Win10.
-      dwrite/tests: Fix analyzer test failures on Win10.
+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):
-      ntdll: Fix modules order in InInitializationOrderModuleList.
-      imm32: Use IMM context keyboard layout when possible.
+      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.
 
-Qian Hong (1):
-      ntdll/tests: Add tests for FileLinkInformation class.
+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.
 
-Sebastian Lackner (21):
-      wininet/tests: Print the correct function name in ok() messages.
-      ntdll: Move cookie initialization code from memory management to loader.
-      d3dcompiler: Implement semi-stub for D3DCompile2.
-      server: Initialize irp->thread immediately after creation of irp_call object.
-      server: Avoid leaking uninitialized stack memory to applications.
-      vcomp: Implement stub for _vcomp_flush and add tests.
-      vcomp: Implement omp_init_lock and omp_destroy_lock.
-      vcomp: Export omp_init_nest_lock and omp_destroy_nest_lock.
-      vcomp: Implement OpenMP nested locking functions.
-      vcomp: Implement OpenMP regular locking functions.
-      oleaut32: Fix possible integer overflow in VarR4FromDec.
-      server: Add support for setting file disposition information.
-      server: Initialize table->handles immediately after creation of atom table.
-      server: Avoid invalid memory accesses when create_console_output fails.
-      server: Avoid invalid memory access when create_console_input fails.
-      include: Add definition for FILE_LINK_INFORMATION struct.
-      ntdll/tests: Add additional tests for FileRenameInformation.
-      ntdll: Implement FileRenameInformation support.
-      server: Implement support for FileLinkInformation class in NtSetInformationFile.
-      ntdll/tests: Add additional tests for calling NtOpenFile with file object as RootDirectory.
-      server: Implement open_file_object for rootdir pointing to file object.
+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.
 
-Stefan Dösinger (2):
-      wined3d: Use the correct color key in ARBfp color key blits.
-      wined3d: Use GL_RGB565 if available.
+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 Faber (1):
-      qmgr: Do not omit mandatory argument to WriteFile.
+Thomas Faller (3):
+      winex11.drv: Fix uninitialized memory.
+      msxml3: Fix invalid read.
+      usp10: Fix invalid read.
 
-Thomas Faller (1):
-      cmd: Implement 'echo/'.
+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.
 
-Vincent Povirk (7):
-      comdlg32: Add test for IFileDialogEvents::OnOverwrite.
-      comdlg32: Implement overwrite check in item dialog.
-      shell32: Use return value from IShellFolder_GetAttributesOf.
-      shell32: Fix getting parent shell folder when it's the desktop folder.
-      comdlg32: Implement SetControlItemState for menu controls.
-      comdlg32: Implement SetControlItemState for combo boxes.
-      comdlg32: Partially implement IFileDialogCustomize::EnableOpenDropDown.
+YongHao Hu (1):
+      include: Add definition of CreateHardLink.
 
-YongHao Hu (10):
-      msvcp110: Add tr2_sys__Stat and tr2_sys__Lstat implementation and test.
-      msvcp110: Add tr2_sys__File_size_wchar implementation and test.
-      msvcp110: Add tr2_sys__Equivalent_wchar implementation and test.
-      msvcp110: Add tr2_sys__Current_get_wchar implementation and test.
-      msvcp110: Add tr2_sys__Current_set_wchar implementation and test.
-      msvcp110: Add tr2_sys__Make_dir_wchar implementation and test.
-      msvcp110: Add tr2_sys__Remove_dir_wchar implementation and test.
-      msvcp110: Add tr2_sys__Copy_file_wchar implementation and test.
-      msvcp110: Add tr2_sys__Rename_wchar implementation and test.
-      msvcp110: Add tr2_sys__Statvfs_wchar implementation and test.
-
-Zhenbo Li (4):
-      msxml3: Handle NULL parameter in IXMLDOMElement::get_ownerDocument().
-      mshtml: Add IHTMLSelectElement::name property implementation.
-      mshtml: Add IHTMLSelectElement::form property implementation.
-      mshtml: Add IHTMLXMLHttpRequest::abort() method implementation.
+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
diff --git a/AUTHORS b/AUTHORS
index 9961457..0febfb0 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -429,6 +429,7 @@
 Finlo Boyde
 Florian Goth
 Florian Köberle
+Florian Pelz
 Florian Tobias Schandinat
 Fons Botman
 Francesco Di Punzio
@@ -919,6 +920,7 @@
 Mathias Kosch
 Matijn Woudt
 Matt Chapman
+Matt Durgavich
 Matteo Bruni
 Matthew Becker
 Matthew Bloch
diff --git a/VERSION b/VERSION
index fecab70..df51507 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.7.50
+Wine version 1.7.51
diff --git a/configure b/configure
index 6a5bf0f..15a122b 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Wine 1.7.50.
+# Generated by GNU Autoconf 2.69 for Wine 1.7.51.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.7.50'
-PACKAGE_STRING='Wine 1.7.50'
+PACKAGE_VERSION='1.7.51'
+PACKAGE_STRING='Wine 1.7.51'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -2071,7 +2071,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Wine 1.7.50 to adapt to many kinds of systems.
+\`configure' configures Wine 1.7.51 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2141,7 +2141,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.7.50:";;
+     short | recursive ) echo "Configuration of Wine 1.7.51:";;
    esac
   cat <<\_ACEOF
 
@@ -2337,7 +2337,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.7.50
+Wine configure 1.7.51
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2855,7 +2855,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Wine $as_me 1.7.50, which was
+It was created by Wine $as_me 1.7.51, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -18687,7 +18687,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Wine $as_me 1.7.50, which was
+This file was extended by Wine $as_me 1.7.51, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -18758,7 +18758,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Wine config.status 1.7.50
+Wine config.status 1.7.51
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
