diff --git a/ANNOUNCE b/ANNOUNCE
index fa96d7f..9afeafe 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,15 +1,15 @@
-The Wine development release 1.7.15 is now available.
+The Wine development release 1.7.16 is now available.
 
 What's new in this release (see below for details):
-  - New Task Scheduler service.
-  - Many regression test fixes.
-  - Support for exception unwinding in VBScript.
+  - 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:
 
-  http://prdownloads.sourceforge.net/wine/wine-1.7.15.tar.bz2
-  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.15.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.7.16.tar.bz2
+  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.16.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -25,355 +25,349 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.7.15 (total 53):
+Bugs fixed in 1.7.16 (total 50):
 
-   5928  Timeless Time and Expense 3.0: bad fields in calendar/time entries
-   8697  Visual Pinball : graphics is very messy
-  13638  dogfood: xampp won't work properly
-  20387  Seagate Crystal Reports 6 installer crashes due to incorrect ordinal numbering of 'odbccp32.dll' exports
-  20623  Multiple VB6 apps complain with "Run-time error '445'" (Swiftkit, VMXBuider 0.8)(IFileSystem3::CreateTextFile method implementation needed)
-  23448  F1 2000 and F1 Championship Season 2000 crash at startup
-  23570  Cannot play songs using Songbird 1.4.3 and 1.7.3
-  23930  Drakensang Dark Eye crash on start (needs D3DXCreateBox)
-  26235  Pioneer DJs 1.6 hangs on startup (SetupDiEnumDeviceInterfaces needs to retain DeviceInterfaceData->cbSize upon reset)
-  26339  MSXML, HTTPS GET don't work
-  27060  Multiple applications need Network Configuration Component (netcfgx.dll) (iNodeSetup, CommView, Shan Xun 802.1x client)
-  27307  Program Error - Program crashes on open
-  27612  'Moorhuhn - Juwel der Finsternis' crashes on startup
-  27831  Tic Tac Toe Game (vbscript) cannot be played (colon used for placing multiple statements on the same line in select case statements)
-  27892  Iexplore blank page or binary
-  28987  Some video files fail to play in Windows Media Player 9/10 (using native wmvcore/wmp dlls)
-  29528  Google SketchUp 8 crashes on exit
-  29679  Quicken 2012 aborts at startup.
-  29785  Band-in-a-Box 2012 crashes on startup
-  30043  Infinite loop in mshtml navigate
-  30809  ConEmu: Fails to start cmd.exe
-  31377  Symantec VIP Access no longer installs (needs WinMGMTS object stub)
-  31423  AmiBroker fails on startup
-  31437  Multiple applications and games need wmvcore.dll.WMCreateProfileManager (Tinker, Luxology Modo, aTube Catcher, iMesh 7.x)
-  31724  SolidWorks Explorer 2012 fails to install, reporting 'Could not get typeinfo of hreftype 384 for VT_USERDEFINED, hr = 0x80004005'
-  31968  Multiple applications need ITextStream get_AtEndOfStream method implementation (wPrime 2.09, SolidWorks Explorer 2014)
-  31970  Microstation 8i installer doesn't work (needs VBScript GetObject implementation)
-  32109  CorelDRAW 12 fails to install
-  32161  IAudioClient should support IMarshal
-  33191  installer of AliWangwang: some text can't be displayed normally
-  34154  iTunes 7 does not install
-  34536  3DMark06 crashes with native d3dx9_36.dll
-  34717  Games GUI (Roller Coaster Tycoon 2) does not load anymore
-  34815  iexplore hotmail.com needs IHTMLFrameBase::get_onload
-  35110  LabChart Reader 8 installer ends prematurely (VBScript parser fails to recognize class variables declared with 'Dim' within class statement)
-  35390  Samsung Magician v4.0 fails to install (SWbemLocator.ConnectServer method dispargs are optional)
-  35445  CPCE v4.1 (Coral Point Count with Excel extensions, VB6 app) fails on startup (needs scrrun IFolder::get_Path)
-  35530  fjords is very slow because of GetLocaleInfoW checking registry
-  35575  gdi32:font Windows 8.1 failures (johab)
-  35596  Multiple applications and games crash due to GetNumaHighestNodeNumber stub (64-bit ApexDC++, CrossFire-Downloader, Moorhuhn)
-  35644  Spin Tires crashes with arb shaders
-  35645  Sid Meier's Ace Patrol (Steam) crashes on unimplemented function msvcp110.dll._Xtime_get_ticks
-  35705  Stability issues in certain games with recent Wine (maybe Nvidia driver related)
-  35753  CURA 14.01 installed correctly but crashes when started
-  35762  Tic Tac Toe Game (vbscript) cannot be played (parenthesis syntax for specifying arrays as function arguments)
-  35769  Target attributes is ignored when submitting form
-  35778  Samsung Magician v4.0 fails to install (widl emits incorrect var type for IDispatch* defaultvalue)
-  35794  iTunes 7 installer aborts early (failure to find builtin 'RegExp' class)
-  35799  Mortal Online (MMORPG) client 1.75.00.07 crashes on login (missing Win32_LogicalDisk WMI class 'VolumeSerialNumber' property)
-  35803  Chessmaster Grandmaster Polish Edition installer crashes
-  35806  Multiple VB6 apps complain with "Run-time error '445'" (Swiftkit)(ITextStream::WriteLine method implementation needed)
-  35816  iTunes 7 installer aborts early ('Err' object 'Clear' and 'Number' methods are stubs)
-  35819  "A Very Long Rope to the Top of the Sky" fails to start.
+  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 5.3.1.0606 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 1.75.00.07 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.14:
+Changes since 1.7.15:
 
-Akihiro Sagawa (4):
-      gdi32: Improve the font enumeration order for complex script locales.
-      version/tests: Add more VerQueryValueA tests.
-      version: Don't convert binary version resource to ANSI texts.
-      gdi32/tests: GetGlyphOutlineA is broken for johab charset on windows.
+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.
 
-Alexandre Julliard (8):
-      makedep: Add a helper function for concatenating paths.
-      makedep: Pass the source directory as root for building documentation.
-      c2man: Remove a possible path from the spec file name.
-      configure: Always run makedep on the top-level makefile.
-      user32/tests: Mark a failing test as todo.
-      user32: Set the queue mask only after flushing the window surfaces.
-      server: Restore the masks from the previous get_message when a wait is satisfied.
-      user32/tests: Make a few more messages optional.
+Alistair Leslie-Hughes (4):
+      netcfgx: Add INetCfg interface support.
+      include: Add interface INetCfgLock.
+      netcfgx: Add INetCfgLock support.
+      dbghelp: Improve dwarf support.
 
-Alistair Leslie-Hughes (6):
-      ntoskrnl.exe: Add stub MmLockPagableSectionByHandle.
-      ntoskrnl.exe: Add stub MmUnlockPagableImageSection.
-      ntoskrnl.exe: Add stub KeInsertQueue.
-      include: Add netcfgx.idl.
-      netcfgx: Implement DllCanUnloadNow, DllGetClassObject, DllRegisterServer, DllUnregisterServer.
-      netcfgx: Register interfaces.
+Andrew Eikum (1):
+      winmm/tests: Accept MMSYSERR_ALLOCATED for more tests.
 
 Andrey Gusev (1):
       po: Update Ukrainian translation.
 
-André Hentschel (1):
-      gdi32/tests: GetCharABCWidthsA is broken for johab charset on windows.
+André Hentschel (2):
+      setupapi: Add support for more architectures when building fake dlls.
+      setupapi: Don't confuse ARM with ARM64.
 
-Aric Stewart (2):
-      imm32: Add IME_CMODE_FULLSHAPE to conversion mode.
-      imm32: Set context conversion and sentence status.
+Aurimas Fišeras (2):
+      po: Update Lithuanian translation.
+      po: Update Lithuanian translation.
 
-Austin English (2):
-      setupapi: Make sure DeviceInterfaceData->cbSize is initialized in SetupDiEnumDeviceInterfaces.
-      kernel32: Improve GetNumaHighestNodeNumber stub.
-
-David Quintana (2):
-      comctl32: Fix horizontal separators in vertical toolbars.
-      shlwapi: SHInvokeCommand last parameter is a command ID, or 0 to use the default.
+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):
-      schedsvc: Add Task Scheduler service.
-      schedsvc: Implement SchRpcHighestVersion.
-      schedsvc: Implement SchRpcCreateFolder.
-      schedsvc: Implement SchRpcDelete.
-      schedsvc: Implement SchRpcRegisterTask.
-      schedsvc: Implement SchRpcRetrieveTask.
-      taskschd: Implement ITaskService::get_HighestVersion.
-      schedsvc: Mark service as auto-start once a task is registered.
-      schedsvc: Replace external trace statements by internal versions.
-      widl: Move is_ptr() and is_array() to header.h and make them inline.
-      widl: Unify indentation of comments.
-      widl: Move is_void(), is_declptr() and is_conformant_array() to header.h and make them inline.
-      ntdll/tests: Always wait until the operation completes if returned status is STATUS_PENDING.
+      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.
 
-Eriks Dobelis (1):
-      wintab32: Fix pkSerialNumber typo.
+Erich Hoover (1):
+      ws2_32: Ask the server to process unsupported WSAIoctl operations.
 
-Frédéric Delanoy (9):
-      cmd/tests: Correctly determine script path for root directories.
-      cmd/tests: Don't use "@pwd@\" when expecting a full path.
-      krnl386.exe16: Use BOOL type where appropriate.
-      comctl32: Use BOOL type where appropriate.
-      gdiplus: Use BOOL type where appropriate.
-      user32/tests: Use BOOL type where appropriate.
-      riched20: Use BOOL type where appropriate.
-      urlmon/tests: Use BOOL type where appropriate.
-      qcap: Use BOOL type where appropriate.
+Eriks Dobelis (2):
+      wintab: Fix incorrectly classifying cursor as stylus instead of eraser.
+      wintab: Initialize lcOutExtX and Y values.
 
-Hans Leidekker (4):
-      shlwapi/tests: Fix test failures on Windows 8.
-      wbemprox: Implement Win32_LogicalDisk.VolumeSerialNumber.
-      mscms/tests: Fix test failures on Wine when color profiles are present.
-      wbemprox/tests: Don't use infinite timeouts.
+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.
 
-Henri Verbeet (40):
-      user32: Fix TEXT_WordBreak() when no characters fit.
-      gdi32/tests: Fix test_window_dc_clipping() when the virtual screen origin is not (0, 0).
-      gdi32/tests: Fix test_device_caps() on multihead setups.
-      ddraw/tests: Skip the overlay tests in test_block_formats_creation() if overlays are not supported.
-      wined3d: Handle shader_arb_free_context_data() during context creation.
-      wined3d: Only use a single allocation for each struct private_data.
-      d3d9/tests: Move some stateblock tests to device.c.
-      d3d8/tests: Move some stateblock tests to device.c.
-      d3d9/tests: Don't share the D3D object either in visual.c tests that have their own device.
-      d3d9/tests: Give add_dirty_rect_test() its own device.
-      d3d9/tests: Use a separate device for volume_dxt5_test().
-      d3d9/tests: Use a separate device for volume_srgb_test().
-      d3d9/tests: Use a separate device for fog_special_test().
-      d3d9/tests: Use a separate device for zenable_test().
-      d3d9/tests: Use a separate device for multisample_get_rtdata_test().
-      d3d9/tests: Use a separate device for update_surface_test().
-      d3d9/tests: Use a separate device for srgbwrite_format_test().
-      d3d9/tests: Use a separate device for depth_bounds_test().
-      d3d9/tests: Use a separate device for fp_special_test().
-      d3d9/tests: Use a separate device for shadow_test().
-      d3d9/tests: Use a separate device for intz_test().
-      d3d9/tests: Use a separate device for depth_blit_test().
-      d3d9/tests: Use a separate device for depth_buffer2_test().
-      d3d9/tests: Use a separate device for depth_buffer_test().
-      d3d9/tests: Use a separate device for dp3_alpha_test().
-      d3d9/tests: Use a separate device for alphareplicate_test().
-      d3d9/tests: Use a separate device for texop_range_test().
-      d3d9/tests: Use a separate device for texop_test().
-      d3d9/tests: Use a separate device for multiple_rendertargets_test().
-      d3d9/tests: Use a separate device for vpos_register_test().
-      d3d9/tests: Use a separate device for vface_register_test().
-      d3d9/tests: Use a separate device for pretransformed_varying_test().
-      d3d9/tests: Use a separate device for nested_loop_test().
-      d3d9/tests: Use a separate device for unbound_sampler_test().
-      d3d9/tests: Use a separate device for dp2add_ps_test().
-      d3d9/tests: Use a separate device for cnd_test().
-      d3d9/tests: Use a separate device for constant_clamp_ps_test().
-      d3d9/tests: Use a separate device for volume_v16u16_test().
-      d3d9/tests: Use a separate device for x8l8v8u8_test().
-      d3d9/tests: Use a separate device for texkill_test().
+Gerald Pfeifer (1):
+      readme: Raise the minimum version of FreeBSD to 8.0.
 
-Jacek Caban (28):
-      vbscipt: Use VariantCopyInd in exec_script.
-      vbscript: Use VariantCopyInd in invoke_variant_prop.
-      vbscipt: Allow ':' to be a separator in select case statement.
-      vbscript: Added support for VARIANT references to interp_newenum.
-      wmsdkidl.idl: Added some missing declarations.
-      rpcndr.h: Don't redefine EXTERN_GUID if it's already defined.
-      wmvcore: Added WMCreateProfileManager implementation.
-      mshtml: Removed test failing on Windows 8.1.
-      mshtml: Bind events not sent to default view to body element instead of directly to target.
-      mshtml: Added IHTMLFrameBase2::onload property implementation.
-      mshtml: Adder _parent target support to navigate_anchor.
-      crypt32/tests: Improved test failure message.
-      mshtml: Moved htmldoc5.c content into htmldoc3.c.
-      mshtml: Merge htmldoc3.c into htmldoc.c.
-      mshtml: Added IHTMLDocument7 stub implementation.
-      mshtml: Skip tests depending on iframe onload event on IEs older than IE9.
-      mshtml: Added support for target attribute in submit function implementation.
-      vbscript: Allow empty brackets in argument declarations.
-      mshtml: Fixed tests on old IEs and improved results on IE11.
-      urlmon: Fixed sec_mgr.c tests failing on some recent Windows.
-      vbscript: Allow creating RegExp object by new expression.
-      jscript: Represent NULL VT_UNKNOWN VARIANT as NULL VT_DISPATCH.
-      oleaut32: Fixed vartest.c tests on Windows 8.1.
-      vbscript: Moved Error object implementation to global.c.
-      vbscript: Added support for exception unwinding.
-      vbscript: Added Err.Number implementation.
-      vbscript: Added Err.Clear implementation.
-      vbscript: Added error handling tests.
+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):
-      include: Fix a typo in ITextServices method named TxGetCurTarget.
-      riched20/tests: Fix a SysAllocString leak.
+      riched20: Return E_INVALIDARG for empty ppSel in ITextDocument::GetSelection.
+      riched20: Fix a typo in CreateIRichEditOle.
 
-Ken Thomases (6):
-      winex11: Don't leak client window and colormap when pixel format is changed.
-      winemac: Make the window's contentView its firstResponder again after changing its style.
-      winemac: Fix wglSwapBuffers() to operate on the HDC, not the current GL context.
-      winemac: Make the swap interval a property of the window, not the context.
-      winex11: Don't reset OpenGL swap interval of window on SetParent().
-      winex11: Remove unused "parent" parameter from create_gl_drawable().
+Javier Cantero (3):
+      user32: Fix side effect in SubtractRect().
+      user32/tests: Add SubtractRect() test.
+      user32/tests: New test cases for SubtractRect().
 
-Marcus Meissner (5):
-      crypt32: Fixed copy and paste error in engine creation (Coverity).
-      msxml3: Mirror the NULL checking logic (Coverity).
-      msi: Fixed missing free in an error path (Coverity).
-      hhctrl.ocx: Free the correct buffer (Coverity).
-      wtsapi32: Remove useless info free (Coverity).
+Julian Rüger (1):
+      po: Update German translation.
 
-Matteo Bruni (10):
-      d3dx9: Fix a WARN.
-      d3dx9/tests: Skip some volume tests if loading the texture fails.
-      d3dx9/tests: Skip a test if DXTn texture formats are not supported.
-      d3dx9/tests: Mark a test todo_wine when DXTn textures aren't supported by the GL driver.
-      d3dx9: Correctly handle empty parameter data.
-      d3dx9: Create shaders and strings.
-      d3dx9: Store pointers to referenced parameters for "usage 1" resources.
-      d3dx9: Parse "usage 2" effect resources.
-      d3dx9: Split out set_matrix_transpose from set_matrix.
-      d3dx9: Copy the entire matrix at once if there is no need of type conversions.
+Kai Tietz (1):
+      corerror.h: Merge with mingw-w64's extensions.
 
-Michael Stefaniuc (11):
-      dmcompos: COM cleanup for the IDirectMusicChordMap iface.
-      dmcompos: Remove the extraneous IUnknown from DirectMusicChordMap.
-      dmloader: None of the COM classes support aggregation.
-      dmloader/tests: Centralize the skip().
-      dmloader: Add COM tests for DirectMusicLoader.
-      dmloader: Pass the object to the IDirectMusicContainer_Release helper.
-      dmloader: Don't crash on container destruction if it was never loaded.
-      dmloader/tests: Add COM tests for DirectMusicContainer.
-      dswave: DirectSoundWave doesn't support COM aggregation.
-      dswave/tests: Add COM tests for DirectSoundWave.
-      dmloader/tests: Skip the tests if we don't have IDirectMusicLoader8.
+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.
 
-Nikolay Sivov (32):
-      msxml3: Remove dynamic properties support.
-      msxml3/tests: Fixed some test failures.
-      scrrun: Fix Next() for file collection.
-      scrrun: Fix Skip() for file collection.
-      scrrun/tests: Use a writable location for folder creation test.
-      scrrun: Implement Skip() for drive collection.
-      scrrun: Implement Count() property for drive collection.
-      scrrun: Remove unneeded forward interface definitions from idl.
-      widl: Fix duplicate typeinfo being written to typelib for enums.
-      scrrun: Initialize find handle for file collection.
-      wbemdisp: Specify default value for method arguments.
-      scrrun: Implement Path() property for Folder.
-      msi: Update feature selection bitmaps.
-      msxml3: Respect stylesheet output mode when dumping resulting document.
-      msxml3: Fix some test failures on Win8.1.
-      scrrun: Implement CreateTextFile().
-      winedump: Improve typelib header dumping.
-      winedump: Output parameters and default values type for methods.
-      widl: Fix default value types.
-      msi: 'optional' only applies to VARIANT and VARIANT* types.
-      scrrun: Implement WriteLine/Write for ITextStream.
-      stdole2: Fix usage of 'optional' with 'defaultvalue'.
-      idl: Remove 'optional' for 'defaultvalue' non-VARIANT arguments.
-      scrrun: Implemented AtEndOfStream() property.
-      user32: Added AddClipboardFormatListener/RemoveClipboardFormatListener stubs.
-      kernel32: Added WerUnregisterMemoryBlock() stub.
-      scrrun/tests: Update idl file in tests.
-      wshom.ocx/tests: Update idl file in tests.
-      msi: MsiInstaller coclass is not included in a typelib.
-      msi: Update MsiServerMessage registration version to match module version.
-      user32: Added ChangeWindowMessageFilterEx() stub.
-      xmllite: Implement CreateXmlWriterOutputWithEncodingName().
+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):
-      ole32: Update reference counter of returned moniker in CreateGenericComposite.
-      msvcrt: Improve tolower_l implementation.
-      msvcrt: Improve tolower tests.
-      msvcrt: Improve toupper_l implementation.
-      msvcrt: Fix p__p___mb_cur_max tests.
-      msvcrt: Don't add 0x prefix while printing 0 with printf.
-      msvcp110: Add _Xtime_get_ticks implementation.
+      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.
 
-Qian Hong (2):
-      user32/tests: Skip more winstation tests when no enough privileges.
-      netapi32: Add stub for NetScheduleJobDel.
+Robert Naumann (1):
+      mgmtapi: Fix a typo in the export of SnmpMgrRequest.
 
-Rico Schüller (1):
-      d3dx9/tests: Check if D3DFMT_X1R5G5B5 is supported.
+Sebastian Lackner (1):
+      kernel32: Silence SetWaitableTimerEx fixme message.
 
-Sebastian Lackner (3):
-      shell32: Register user administrative tools shell folder.
-      ntdll: Fix possible race-condition in iocp poller code.
-      ntdll: Use condition variable for RtlQueueWorkItem implementation.
+Shuai Meng (1):
+      oleaut32: Fixed bounds of VarIntFromFloat.
 
-Stefan Dösinger (21):
-      wined3d: Don't modify existing data if set_private_data fails.
-      d3d9/tests: Show that a failing SetPrivateData call does not clear the old contents.
-      d3d8/tests: Show that a failing SetPrivateData call does not clear the old contents.
-      ddraw/tests: Show that a failing SetPrivateData call does not clear the old contents.
-      wined3d: Correctly handle the size parameter in get_private_data.
-      d3d9/tests: Use a custom GUID for the private data tests.
-      d3d9/tests: Test GetPrivateData size behavior.
-      d3d8/tests: Use a custom GUID for the private data tests.
-      d3d8/tests: Test GetPrivateData size behavior.
-      wined3d: Decouple private data from the resource structure.
-      wined3d: Free old data after addrefing the new one.
-      ddraw: Use the new private store api.
-      ddraw/tests: Test GetPrivateData size behavior.
-      ddraw/tests: Add mipmap private data tests.
-      ddraw/tests: Use a custom GUID for the private data tests.
-      wined3d: Remove the version parameter.
-      d3d8: Introduce a resource structure.
-      d3d8: Use the private store api for buffers.
-      d3d8: Use the private store api for volumes.
-      d3d8: Use the private store api for textures.
-      d3d8: Use the private store api for surfaces.
+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):
-      odbccp32: Add ordinals to spec file.
+      wtsapi32: Extend the parameter check of WTSEnumerateProcessesW.
 
-Vincent Povirk (7):
-      user32/tests: Add a test for empty popup menus.
-      user32/tests: Put some menu items in the test_menu_trackagain menu.
-      user32/tests: Add message tests for TrackPopupMenu.
-      user32: Create popup menu windows before WM_ENTERMENULOOP.
-      gdiplus: Account for negative height/width in GdipDrawImagePointsRect.
-      gdiplus: Fix an overzealous optimization.
-      tapi32: Stub lineOpenW.
+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.
 
-Zhenbo Li (5):
-      mshtml: Added IHTMLTableRow::align property implementation.
-      mshtml: Added IHTMLTableRow::vAlign property implementation.
-      mshtml: Added IHTMLTableRow::rowIndex property implementation.
-      mshtml: Added IHTMLTableRow::sectionRowIndex property implementation.
-      mshtml: Added IHTMLTable::align property implementation.
+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
diff --git a/AUTHORS b/AUTHORS
index 7408401..6e3e8f7 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -516,6 +516,7 @@
 Hongbo Ni
 Howard Abrams
 Howell Tam
+Hugh McMaster
 Huw D. M. Davies
 Hwang YunSong (황윤성)
 Iain Arnell
@@ -585,6 +586,7 @@
 Jason McMullan
 Jason Phillips
 Jau-Horng Chen
+Javier Cantero
 Jay Yang
 Jean-Bruno Luginbühl
 Jean-Claude Batista
@@ -1163,6 +1165,7 @@
 Robert Lunnon
 Robert McDonald
 Robert Millan
+Robert Naumann
 Robert North
 Roberto Augusto Pungartnik
 Robert O'Callahan
@@ -1238,6 +1241,7 @@
 Shaun Morris
 Sheri Steeves
 Shi Quan He
+Shuai Meng
 Shunichi Fuji
 Simen Zamecnik
 Simeon Pilgrim
diff --git a/VERSION b/VERSION
index 6649d0b..7ce320b 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.7.15
+Wine version 1.7.16
diff --git a/configure b/configure
index 416466b..5f4a7c5 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.15.
+# Generated by GNU Autoconf 2.69 for Wine 1.7.16.
 #
 # 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.15'
-PACKAGE_STRING='Wine 1.7.15'
+PACKAGE_VERSION='1.7.16'
+PACKAGE_STRING='Wine 1.7.16'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -1971,7 +1971,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.15 to adapt to many kinds of systems.
+\`configure' configures Wine 1.7.16 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2040,7 +2040,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.7.15:";;
+     short | recursive ) echo "Configuration of Wine 1.7.16:";;
    esac
   cat <<\_ACEOF
 
@@ -2235,7 +2235,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.7.15
+Wine configure 1.7.16
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2753,7 +2753,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.15, which was
+It was created by Wine $as_me 1.7.16, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -18077,7 +18077,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.15, which was
+This file was extended by Wine $as_me 1.7.16, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -18148,7 +18148,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.15
+Wine config.status 1.7.16
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
