diff --git a/ANNOUNCE b/ANNOUNCE
index c0ff877..305d739 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,16 +1,16 @@
-The Wine development release 1.7.32 is now available.
+The Wine development release 1.7.33 is now available.
 
 What's new in this release (see below for details):
-  - New version of the Mono engine.
-  - A few more functions implemented in MSHTML.
-  - Improved support for restoring display mode.
-  - Font metrics improvements in DirectWrite.
+  - Support for copy/paste commands in MSHTML.
+  - Some more font support in DirectWrite.
+  - Better handling for loss of focus in Direct3D windows.
+  - Several more API Sets DLLs.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://prdownloads.sourceforge.net/wine/wine-1.7.32.tar.bz2
-  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.32.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.7.33.tar.bz2
+  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.33.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -26,277 +26,283 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.7.32 (total 46):
+Bugs fixed in 1.7.33 (total 29):
 
-   9043  Adobe InDesign CS tryout hangs on startup
-  10081  City of Heroes does not run if asked to use a dual core processor
-  10348  Every Extend music does not play (quartz MP3)
-  11582  Macromedia Flash 5 Trial hangs when you click "Try" (ShowWindow operations should avoid potentially blocking inter-thread SendMessage if show command is no-op)
-  11745  Adobe InDesign CS trial black where icons should be
-  13968  3D graphics in Chessmaster 11 are positioned incorrectly
-  14449  "North American Birds" fails to launch (Unimplemented function ole2disp.dll.VARIANTCHANGETYPE)
-  14666  [wined3d] volume/volumetex locking implementation
-  17152  Blizzard Updater complains about javascript being turned off
-  17922  LiveZilla 3.x/4.x (.NET 2.0 app) aborts due to unimplemented HTMLDocument_execCommand
-  18148  Demise: dialog box won't react to click
-  18894  Dungeon Keeper 2 game (animation) speed is too fast
-  20520  SolidWorks 2007 crashes after splash screen
-  21222  Mall Tycoon 2 Deluxe: Page fault on write access
-  23236  WWIIOnline: joystick not responding
-  23375  Flux Family Secrets: The Rabbit Hole sets gamma to 0 and never restores it
-  23380  WoW trial fails to install, saying it doesn't have write access to Program Files
-  25058  NFS Porsche: Crash at location setup
-  27282  TDRABCSetup.exe hang on start up (FindWindowExW uses WM_GETTEXT to query for process' local window title text, leading to potential deadlock)
-  27945  GdipDrawString LineAlignement does not work .
-  28335  IE7 crashes when an active X control is called
-  28479  Multiple applications crash on unimplemented function USER32.dll.SetGestureConfig (Solitaire from Windows 7, Illustrator CC)
-  29429  The Master Genealogist 8.xx: Can't install because Installer buttons do not work.
-  32254  Futuremark 3DMark Vantage v1.1.0 crashes on start up
-  32293  Opera: wine uses builtin save file dialog, fails to save file
-  32568  Visual Studio 2010 fails on startup, .NET Framework 4.0 WPF message dispatcher unexpectedly receives messages (CoWaitForMultipleHandles, COWAIT_FLAGS, message pump)
-  33691  Directory Opus 10 locks up and crashes
-  34064  Adobe CS4 installer fails (COM class factory for CLSID_NetFwOpenPort needed)
-  34170  Cabri II Plus 1.4 fails on startup
-  34386  Microsoft Visual Studio Test Agent 2010 Configuration Tool crash when apply settings is performed
-  34950  Microsoft Visual Studio 2005 Tools for Applications installer crashes
-  35670  iTunes 10.2.2 'DifXInstall32' sub-installer crashes on unimplemented function DIFXAPI.dll.SetDifxLogCallbackW
-  35804  Open file window makes Photoshop CC crash
-  35987  Adobe Photoshop CC file open dialog crashes the program
-  36241  valgrind shows a leak in comdlg32/tests/printdlg.c
-  36863  Mass Effect 3 [Origin] crash on startup (broken EA Origins in-game overlay/hook engine 'igo32.dll' needs 'opengl32.dll' prelinked < 2GB address range)
-  37140  Photoshop CC 2014 Open and Save dialog missing features
-  37231  Set iframe's src failed.
-  37262  "We got a big error here" in Diablo 2 d2loader and wine >= 1.7.25
-  37512  Unreal Engine 4 Elemental benchmark demo crashes on startup ('K32GetPerformanceInfo' must not pass 'PERFORMANCE_INFORMATION' directly to 'NtQuerySystemInformation')
-  37534  configure gives incorrect warning when Xrender can't be found due to missing libXext
-  37546  mshtml: Possible null pointer dereference: post_data (Cppcheck)
-  37563  Skype 6.x crashes trying to make an audio call (DestroyIRichEditOle must take reference count into account)
-  37588  Visual Studio 2010 installer requires prefix restart in 'Windows Vista' mode (MSI component version 4.5.6001.22308 upgrade)
-  37599  AlphaShadow v1.2 - AlphaVSS Volume Shadow Copy Library Sample Client (.NET 4.0 app) needs VSSAPI.DLL
-  37622  Mixxx 1.11.0 installer fails (msiexec does not support /update option)
+  23824  Starcraft II: Installer doesn't always launch
+  26657  cannot paste text into wine iexplore.exe when browswing
+  28937  YouSendIt shows blank GUI
+  30471  powersim constructor 2.5 cannot save file (requires ole2.dll16.WRITECLASSSTG)
+  32175  installer of PPTV: titlebar duplicated
+  32438  winhttp:winhttp conformance test WinHttpGetProxyForUrl() failure
+  33623  Unimplemented function ole2disp.dll16.VARIANTCHANGETYPEEX
+  34207  Microsoft .NET Framework 2.0 service pack installers fail 'NGEN service version check' custom action (service not stopped before binary update)
+  34888  OriginPro 8 freezes in a new installation of Wine (via MacPorts) after Lion->Mavericks upgrade
+  34943  Visual C++ 2010 Express web installer exits silently during download of prerequisites
+  35069  Patrol Falcon runs without sound
+  35105  Ableton Live 9.1 crashes, needs MFReadWrite.dll
+  36257  Gears of War fails on startup, reporting 'binkw32.dll: You cannot run the game with modified executable code. Please reinstall the game.'
+  36472  Application ArdourXchange will not run in Wine
+  36486  Age of Wushu: frequent display of in-game "Don't speed up!" dialog tip disrupts gameplay (Wine fails kernel32.GetTickCount API entry hook check)
+  36569  TM.exe crashes at a certain time and native usp10 fixes it
+  36642  IWinHttpRequest::Send returns immediately even when in synchronous mode
+  36650  Winhttprequest authentication doesn't work anymore
+  36938  Reason needs MFPlat.DLL and MFReadWrite.dll
+  37159  valgrind shows a few uninitialized variables in riched20/tests/editor.c (test_EM_FINDWORDBREAK_A)
+  37376  Visual C++ 2005 Express SP1 installer displays in French instead of English
+  37424  Path of Exile: Graphical Glitches with GLSL Disabled
+  37596  Sketchup 2015 fails on unimplemented function SHELL32.dll.SHAssocEnumHandlers
+  37635  Explicit environment variables passed to spawn/exec are corrupted
+  37653  valgrind shows a definite leak in comctl32/tests/imagelist.c
+  37679  Puritan Hard Drive (PHD) KnowledgeBase Demo crashes on startup
+  37690  Propellerhead Reason 8 needs kernel32.GetUserPreferredUILanguages
+  37695  joySetCapture fails with uPeriod==0
+  37704  K-Lite installer complains about regsvr32 version being wrong
 
 ----------------------------------------------------------------
 
-Changes since 1.7.31:
+Changes since 1.7.32:
 
 Alexandre Julliard (2):
-      d3d9/tests: Don't require a WM_MOVE message.
-      msxml3: Update pure_parser directive to avoid a deprecation warning.
+      taskschd/tests: Don't depend on the directory lookup order.
+      kernel32/tests: Allow the parent directory to receive a modified event.
 
-André Hentschel (16):
-      winedbg: Declare debug channel only when needed (Clang).
-      msxml3: Remove unused strings (Clang).
-      gdi32: Remove unused string (Clang).
-      d3d10core: Remove unused struct (Clang).
-      dwrite: Remove unused code (Clang).
-      comctl32/tests: Remove unused structs (Clang).
-      crypt32/tests: Comment out an unused struct (Clang).
-      advapi32: Remove unused strings (Clang).
-      winecfg: Remove unused strings (Clang).
-      gdi32: Remove unused function (Clang).
-      d3dx9_36/tests: Remove unused functions (Clang).
-      winedbg: Declare debug channel only when needed in be_x86_64 (Clang).
-      ieframe/tests: Remove unused string (Clang).
-      control: Remove unused string (Clang).
-      jscript: Remove unused code (Clang).
-      dinput: Remove unused functions (Clang).
+Alistair Leslie-Hughes (2):
+      winetest: Skip over stub dll if detected.
+      d3dx9: Make ID3DXFont_PreloadCharacters return S_OK.
 
-Austin English (4):
-      cryptext.dll: Add a stub dll.
-      opengl32: Load dll below 2GB address space.
-      cryptext: Add stubs for CryptExtAddPFX/CryptExtAddPFXW.
-      ole2disp: Add a stub for VARIANTCHANGETYPE.
+Andrew Eikum (2):
+      Revert "winmm: Increase mmdevapi buffer sizes.".
+      dsound: Report buffer notifications in offset order.
 
-Bruno Jesus (4):
-      include: Add SO_BSP_STATE definition.
-      dinput: Fix device type dump.
-      dbghelp: Remove a dead assignment (Cppcheck).
-      user32/tests: Ensure ShowWindow returns false when window is already hidden.
+André Hentschel (42):
+      d3dx9_36/tests: Remove unused function (Clang).
+      kernel32/tests: Remove unused strings (Clang).
+      mshtml/tests: Remove unused variable (Clang).
+      localspl: Remove unused strings (Clang).
+      msi/tests: Remove unused variables (Clang).
+      msi: Remove unused strings (Clang).
+      ole32: Remove unused string (Clang).
+      oleaut32: Remove unused code (Clang).
+      msxml3/tests: Remove unused code (Clang).
+      ole32/tests: Remove unused variable (Clang).
+      quartz: Remove unused code (Clang).
+      qmgr/tests: Remove unused code (Clang).
+      oleaut32/tests: Remove unused code (Clang).
+      fusion: Add implementation for CreateAssemblyCacheItem.
+      winedbg: Remove unused code (Clang).
+      wintrust: Remove unused variable (Clang).
+      user32/tests: Remove unused variables (Clang).
+      windowscodecs: Remove unused strings (Clang).
+      wineoss.drv: Remove unused string (Clang).
+      winex11.drv: Remove unused code (Clang).
+      winspool.drv: Remove unused strings (Clang).
+      kernel32/tests: Remove unused code (Clang).
+      secur32: Declare debug channels only when needed (Clang).
+      shell32: Remove unused string (Clang).
+      shell32/tests: Remove unused variables (Clang).
+      urlmon/tests: Remove unused strings (Clang).
+      wininet: Remove unused strings (Clang).
+      usp10: Remove unused function (Clang).
+      sxs/tests: Remove unused string (Clang).
+      winhttp/tests: Remove unused string (Clang).
+      fusion/tests: Add tests for CreateAssemblyCacheItem.
+      qmgr/tests: Remove unused macro.
+      ntdll: Remove unused macros.
+      widl: Fix compiler warnings with flag -Wunused-macros.
+      dbghelp: Fix compiler warnings with flag -Wunused-macros.
+      gdiplus: Fix compiler warnings with flag -Wunused-macros.
+      atl: Fix compiler warnings with flag -Wunused-macros.
+      msrle32: Remove superfluous defines.
+      itss/tests: Fix compiler warnings with flag -Wunused-macros.
+      iccvid: Fix compiler warnings with flag -Wunused-macros.
+      gdiplus/tests: Fix compiler warnings with flag -Wunused-macros.
+      kernel32: Make GetTickCount and GetTickCount64 hotpatchable.
 
-Caron Wills (1):
-      wined3d: Add NVIDIA GeForce GTX 970 to supported device list.
+Austin English (5):
+      ole2disp: Add a stub for VariantChangeTypeEx.
+      ole2: Add a stub for WriteClassStg.
+      mfplat: Add stub dll.
+      kernel32: Add a stub for GetUserPreferredUILanguages.
+      mfreadwrite: Add stub dll.
 
-Detlef Riekenberg (1):
-      scrrun/tests: Ignore case in path names.
+Bruno Jesus (9):
+      ws2_32/tests: Add SO_BSP_STATE tests.
+      ws2_32: Filter unset bits when argument is smaller than 32 bits.
+      ws2_32: Implement getsockopt(SO_BSP_STATE).
+      winmm: Handle NULL parameter in joyGetPos/joyGetPosEx.
+      winmm: Allow calling joyReleaseCapture multiple times.
+      winmm: The dwSize paramater of JOYINFOEX must be set correctly.
+      winmm: Allow any period value for setJoyCapture.
+      winmm: Handle invalid threshold values in joySetThreshold.
+      winmm/tests: Add joystick tests.
 
-Drew Ronneberg (2):
-      user32/tests: Add tests for calling ShowWindow(SW_HIDE) on a hidden window.
-      user32: Do not call SendMessage() to hide a window that is already hidden.
+Erich Hoover (1):
+      ddraw: Fix inverted logic for enumerating secondary devices.
 
-François Gouget (1):
-      ddraw/tests: Fix compilation on systems that don't support nameless unions.
+François Gouget (4):
+      Assorted spelling fixes.
+      msvcr120/tests: Make test_lconv*() static.
+      dwrite: Add a trailing '\n' to a FIXME().
+      dwrite: Fix compilation on systems that don't support nameless unions.
 
-Guillaume Charifi (1):
-      riched20: Do not destroy IRichEditOle if still referenced.
+Gerald Pfeifer (1):
+      wordpad: Check for array index before using it in registry_set_filelist.
 
-Hans Leidekker (6):
-      ieframe: Send command state change notifications from history navigation handlers.
-      msi: Update version resource.
-      msiexec: Add support for /update.
-      vssapi: New dll.
-      vssapi: Add stub implementations for a couple of functions.
-      user32: Add a stub implementation of IsTouchWindow.
+Hans Leidekker (11):
+      msi: Properly handle service control events in Start/StopService.
+      cryptnet: Add support for base64 encoded certificates, CRLs and CTLs in CryptRetrieveObjectByUrl.
+      winhttp/tests: Handle more potential connection failures.
+      winhttp: Enable automatic authentication by default in the request object.
+      winhttp: Fill the read buffer first in drain_content.
+      winhttp: Convert the async parameter to VT_BOOL if necessary in IWinHttpRequest::Open.
+      winhttp: Don't report data pending in the socket.
+      winhttp: Double the size of the internal read buffer.
+      winhttp: Check the return value of send_request.
+      winhttp: Don't try to read data when the server response is HTTP_STATUS_NO_CONTENT or HTTP_STATUS_NOT_MODIFIED.
+      winhttp/tests: Close the connection immediately after authentication.
 
-Henri Verbeet (5):
-      d3d9: Remove some incorrect constants from d3d9types.h.
-      d2d1: Implement d2d_solid_color_brush_GetOpacity().
-      wined3d: Explicitly convert the condition to bool shader_glsl_if().
-      wined3d: Recognize the SM4 uge opcode.
-      d3d10core/tests: Port alpha_test() to d3d10core.
+Henri Verbeet (15):
+      wined3d: Assign the name to the correct signature in pixelshader_init().
+      wined3d: Unbind shader resource views in state_unbind_resources().
+      wined3d: Keep a reference to the resource in shader resource views.
+      d2d1: Make "transform" in d2d_d3d_render_target_Clear() const.
+      d2d1: Implement d2d_d3d_render_target_CreateBitmapBrush().
+      wined3d: Validate register indices for WINED3DSIH_DCL instructions.
+      wined3d: Store resource types instead of sampler types in struct wined3d_shader_reg_maps.
+      wined3d: Handle SM4 resource declarations.
+      wined3d: Record the data type of shader resources.
+      wined3d: Take the resource data type into account in shader_glsl_gen_sample_code().
+      wined3d: Use __builtin_clz() in wined3d_log2i() when available.
+      ddraw: Use wined3d_log2i() to calculate the level count in ddraw_surface_create().
+      d3d8: Calculate texture levels in d3d8 instead of wined3d.
+      d3d9: Calculate texture levels in d3d9 instead of wined3d.
+      d3d10core: Calculate the texture level count before texture creation.
 
-Jacek Caban (24):
-      mshtml: Added IHTMLStyleSheet::cssText property partial implementation.
-      mshtml: Added IHTMLStyleSheet::cssText tests.
-      mshtml: Added support for IHTMLFrameBase::put_src call on detached element.
-      mshtml: Added IHTMLFrameBase::get_src implementation.
-      mshtml: Added IHTMLDOMTextNode2 stub interface.
-      mshtml: Added HTMLFrameBase2::allowTransparency semi-stub implementation.
-      mshtml: Added missing nsIHttpChannelInternal functions.
-      mshtml: Added nsIURI::GetPrePath implementation.
-      mshtml: Merge htmlelem3.c into htmlelem.c.
-      mshtml: Don't try to null terminate post data if it's not available.
-      mshtml: Added IHTMLTextNode2::appendData implementation.
-      mshtml: Improved IDM_RESPECTVISIBILITY_INDESIGN stub.
-      mshtml: Added IHTMLDocument2::execCommand implementation.
-      mshtml: Added IHTMLTxtRange::setEndPoint implementation.
-      mshtml/tests: Fixed some test failures.
-      mshtml: Added fontname command support to execCommand.
-      mshtml: Always ignore DISPATCH_PROPERTYPUTREF in InvokeEx.
-      jscript: Use DISPATCH_PROPERTYPUTREF flag when setting a property to VT_DISPATCH.
-      mshtml: Allow setting function properties to any VARIANT type.
-      mshtml: Better removeAttribute implementation.
-      mshtml: Correctly handle flags in IHTMLElement:setAttribute.
-      mshtml: Correctly handle flags in IHTMLElement:getAttribute.
-      mshtml: style attribute is a special case for setAttribute and removeAttribute.
-      mshtml: Added more attribute and IDispatchEx tests.
+Iván Matellanes (1):
+      msvcrt: Call the _nolock variant when the file is already locked.
 
-Jactry Zeng (1):
-      explorer: Remove unnecessary backslash when parsing /select and /root.
+Jacek Caban (12):
+      mshtml: Added "indent" command support to execCommand.
+      mshtml: Added support for flag 2 in getAttribute.
+      mshtml: Allow setting fontWeight to empty string.
+      mshtml: Mark mousedown event as cancelable.
+      mshtml: Added support for copy, paste and cut commands in execCommand.
+      mshtml: Added support for IDM_PASTE command in browser mode.
+      mshtml: Added support for IDM_CUT command in browser mode.
+      mshtml: Pass HTMLPluginContainer to create_plugin_host.
+      mshtml: Create ActiveX object inside create_plugin_host.
+      mshtml: Do more initialization in create_plugin_host.
+      mshtml: Added IHTMLObjectElement2::put_classid semi-stub implementation.
+      dxgi1_2.idl: Added IDXGISwapChain1 declaration.
 
-Michael Stefaniuc (15):
-      mscms/tests: Simplify the check for an empty string (PVS-Studio).
-      advpack: Simplify the check for an empty string (PVS-Studio).
-      mciseq: Simplify the check for an empty string.
-      comdlg32: Simplify check for an empty string (PVS-Studio).
-      winemapi: Simplify check for an empty string (PVS-Studio).
-      regedit: Simplify check for an empty string (PVS-Studio).
-      shell32/tests: Fix a copy and paste error (PVS-Studio).
-      msi/tests: Remove redundant if check (PVS-Studio).
-      shlwapi: Remove always true if-check (PVS-Studio).
-      comdlg32: Remove an always true if check (PVS-Studio).
-      cmd: Remove duplicated if-check (PVS-Studio).
-      comdlg32: RT_DIALOG is already an INTRESOURCE (PVS-Studio).
-      ieframe: IDC_ARROW is already an INTRESOURCE (PVS-Studio).
-      msvcrt/tests: Don't open code offsetof().
-      gdi32/tests: Don't clear a variable before it goes out of scope (PVS-Studio).
+Joachim Priesner (1):
+      ws2_32: Use qsort() to order routes by metric in WS_get_local_ips.
 
-Nikolay Sivov (24):
-      dwrite: Implement compatible reference key for local files and remaining loader methods.
-      dwrite: Reuse local file stream instances.
-      dwrite: Remove null pointer checks that can't fail.
-      dwrite: Implement GetLastWriteTime() for local stream.
-      dwrite/tests: Some tests for ReadFileFragment().
-      ole32/tests: Release() doesn't return HRESULT code.
-      ole32/tests: Use proper wrappers for IObjContext methods.
-      dwrite: Handle Unicode platform when looking for name record codepage.
-      dwrite: Implement SetCurrentTransform() for bitmap render target.
-      include: Added SHAssocEnumHandlers() and related interfaces definition.
-      dwrite: Load freetype on module attach, create one FT_Face per fontface.
-      dwrite: Forward more font methods to fontface.
-      dwrite: Update to IDWriteBitmapRenderTarget1.
-      dwrite: Use usWin* values from OS/2 table as font ascent/descent.
-      gdi32: Remove undefs for names that are never defined.
-      dwrite: Use file mapping for local file stream.
-      gdi32: Clarify read length values used with get_font_data().
-      dwrite: Use stream fragment context when reading font tables.
-      dwrite: Remove DLL_WINE_PREATTACH case, native module can't be used.
-      dwrite: Hide factory vtable selection in init helper.
-      dwrite/tests: Fix some test failures on older dwrite versions.
-      dwrite: Estimate x-height and cap height metrics if they're missing.
-      dwrite: Respect typographic metrics when font instructs us to.
-      dwrite: Fix lineGap metric using 'hhea' table values.
+Marc Bessières (1):
+      riched20/tests: Use SendMessageA with char buffer (Valgrind).
 
-Piotr Caban (3):
-      ntdll: Handle ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID flag when opening manifest in RtlCreateActivationContext.
-      ws2_32: Add support for overlapping fd_sets in select.
-      ws2_32/tests: Add more select tests.
+Marcus Meissner (6):
+      dwrite: Avoid leaking filemapping (Coverity).
+      dwrite: Remove unused hresult assignment (Coverity).
+      dwrite: Initialize a variable (Coverity).
+      oleacc: Free the mapping on error (Coverity).
+      server: Initialize the _len parts to 0 (Coverity).
+      ntoskrnl.exe: Added IoBuildSynchronousFsdRequest and IoGetAttachedDevice stubs.
+
+Mark Harmstone (2):
+      mmdevapi: Allow GetPropValue function in audio drivers.
+      winealsa: Implement GetPropValue and return device path.
+
+Martin Storsjo (20):
+      api-ms-win-core-file-l2-1-1: Add stub dll.
+      api-ms-win-core-sysinfo-l1-2-1: Add stub dll.
+      api-ms-win-core-processthreads-l1-1-2: Add stub dll.
+      api-ms-win-core-winrt-l1-1-0: Add stub dll.
+      api-ms-win-core-fibers-l1-1-1: Add stub dll.
+      api-ms-win-core-file-l2-1-0: Add stub dll.
+      api-ms-win-core-localization-l1-2-1: Add stub dll.
+      api-ms-win-core-datetime-l1-1-1: Add stub dll.
+      api-ms-win-core-errorhandling-l1-1-2: Add stub dll.
+      msvcr120: Implement the _vacopy function.
+      msvcr120: Implement more C99 math functions.
+      wrc: Declare the data buffer as unsigned char.
+      api-ms-win-core-winrt-string-l1-1-0: Fix a typo in a function stub name.
+      msvcr120: Implement the _dclass/_fdclass/_ldclass functions.
+      combase: Add stub dll.
+      include: Add a roapi.h header.
+      api-ms-win-core-winrt-l1-1-0: Move implementations into combase.
+      msvcr120_app: Add forwarding dll.
+      include: Add hstring.idl and winstring.h.
+      msvcp120_app: Add forwarding dll.
+
+Michael Müller (4):
+      api-ms-win-core-fibers-l1-1-0: Add dll.
+      api-ms-win-core-datetime-l1-1-0: Add dll.
+      api-ms-win-core-xstate-l2-1-0: Add stub dll.
+      api-ms-win-core-winrt-error-l1-1-1: Add stub dll.
+
+Michael Stefaniuc (5):
+      joy.cpl: Avoid pointers to out of scope variables (PVS-Studio).
+      comctl32: Merge two if blocks with identical condition (PVS-Studio).
+      jscript: Merge two if blocks with identical condition (PVS-Studio).
+      comctl32: Remove a stray unused GetFocus() statement (PVS-Studio).
+      msi: Remove no-op toupperW() statement (PVS-Studio).
+
+Nikolay Sivov (11):
+      comctl32/tests: Fix imagelist leak (Valgrind).
+      dwrite: Make fonts installed in Fonts dir accessible through system collection.
+      shell32: Added a stub for SHAssocEnumHandlers().
+      dwrite: Set font style to oblique when oblique simulation, was requested.
+      dwrite: Partially implement GetDesignGlyphMetrics().
+      dwrite: Implement IsMonospacedFont().
+      dwrite: Implement GetDesignGlyphAdvances().
+      dwrite: Update to IDWriteFactory2.
+      dwrite: Block creation of unsupported face types.
+      regsvr32: Update program version.
+      dwrite_2.idl: Protect from D3DCOLORVALUE redefinition.
+
+Piotr Caban (6):
+      msvcrt: Call CreateProcess with CREATE_UNICODE_ENVIRONMENT flag in exec functions family.
+      msvcrt: Use fd critical section in _eof.
+      msvcrt: Use fd critical section in _locking.
+      msvcrt: Use fd critical section in _lseeki64.
+      msvcrt: Use fd critical section in _chsize_s.
+      msvcrt: Use fd critical section in _fstat64.
 
 Qian Hong (1):
-      comdlg32/tests: Fixed memory leak (Valgrind).
+      usp10: Make sure fallbackFont is NULL terminated.
 
-Ralf Habacker (1):
-      comdlg32: Update dmFormName when changing paper size in print UI.
+Sebastian Lackner (3):
+      ws2_32/tests: Fix several copy and paste errors.
+      wintrust: Reset data->pWintrustData->u.pFile->hFile after closing handle.
+      ws2_32: Improve implementation of get_poll_results.
 
-Sebastian Lackner (29):
-      server: Close fd if there is no space in thread inflight fd list.
-      comctl32: Fix invalid usage of CompareString in StrStr functions.
-      shlwapi: Fix invalid usage of CompareString in StrStr functions.
-      server: Avoid leaking file descriptors if create_console_input fails.
-      server: Avoid leaking file descriptor on error in create_file_for_fd.
-      server: Avoid leaking file descriptor on error in create_thread function.
-      user32/tests: Remove unnecessary char array and add additional test in test_FindWindowEx.
-      user32/tests: Add tests for internal window messages of FindWindowEx.
-      user32/tests: Reenable test function for WM_GETTEXT.
-      user32/tests: Add single-threaded tests for WM_[GET|SET]TEXT and [Get|Set]WindowText.
-      user32/tests: Add multi-threaded tests for [Get|Set]WindowText.
-      user32: Avoid sending window messages in FindWindowExW.
-      comctl32: Fix incorrect usage of CompareString in SYSLINK_ParseText.
-      shlwapi: Fix invalid usage of CompareString in PathCreateFromUrlW.
-      comctl32: Fix invalid usage of CompareString in StrRStr functions.
-      server: Avoid reallocating region data when there is still enough space.
-      shlwapi: Fix incorrect usage of CompareString in StrRStrIA.
-      shlwapi: Fix incorrect usage of CompareString in StrRStrIW.
-      comctl32: Allow broken behaviour in StrRStr functions.
-      reg.exe: Fix incorrect usage of CompareString in get_rootkey.
-      regedit: Fix incorrect usage of CompareString in parseKeyName.
-      server: Avoid calling close on negative value in create_console_output handler (Coverity).
-      server: Always remove inflight fd if alloc_console fails.
-      server: Fix several fd leaks on error in new_process wineserver call.
-      ws2_32/tests: Wait for thread termination before cleaning up winsock.
-      ole32/tests: Add tests for CoWaitForMultipleHandles.
-      ole32: Verify arguments for CoWaitForMultipleHandles, always initialize index to zero.
-      ole32: Don't process window events when APC calls are queued.
-      configure: Fix detection of gnutls on Ubuntu 14.10.
-
-Stefan Dösinger (28):
-      wined3d: Minimize device windows on focus loss.
-      d3d9/tests: Test messages on focus loss.
-      d3d9/tests: Test style changes on focus loss.
-      d3d8/tests: Test messages on focus loss.
-      d3d8/tests: Test style changes on focus loss.
-      ddraw/tests: Test messages on focus loss.
-      ddraw/tests: Test focus loss style changes.
-      d3d9/tests: Test mode restoration on focus loss.
-      d3d8/tests: Test mode restoration on focus loss.
-      ddraw/tests: Test mode changes on focus loss and restore.
-      wined3d: Restore the display mode on focus change.
-      wined3d: Fix mode comparison in wined3d_set_adapter_display_mode.
-      wined3d: Set the device window size on focus window activation.
-      ddraw/tests: Test messages on window reactivation.
-      wined3d: Don't minimize hidden windows.
-      ddraw: Restore the registry display mode.
-      d3d9: Only one fullscreen swapchain is allowed.
-      d3d8: Only one fullscreen swapchain is allowed.
-      d3d8/tests: Fix test_cursor().
-      d3d9/tests: Fix test_cursor().
-      d3d8/tests: Call TestCooperativeLevel after Present.
-      wined3d: Vertex fog uses the absolute eye position z.
-      d3d/tests: Show that the vfog abs is not a property of D3DFOG_LINEAR.
-      d3d/tests: Table fog does not abs the fog coordinate.
-      d3d/tests: Rename fog_interpolation_test for consistency.
-      Revert "d3d10_1.idl: Added D3D10_1_SHADER_*_VERSION constants.".
-      includes: Remove some double defines in d3d11.idl.
-      wined3d: Update fragment program constants when switching from arb ffp draws.
+Stefan Dösinger (11):
+      d3d9: Refuse to reset a lost device.
+      d3d8: Refuse to reset a lost device.
+      wined3d: Add a comment about reset during focus change.
+      d3d9/tests: Test focus loss message filtering.
+      d3d9/tests: Test focus loss message filtering in d3d9ex.
+      d3d8/tests: Test focus loss message filtering.
+      d3d9/test: Test WM_SYSCOMMAND handling.
+      d3d8/tests: Test WM_SYSCOMMAND handling.
+      ddraw/tests: Fix window deactivation in test_coop_level_activateapp.
+      ddraw/tests: Test WM_SYSCOMMAND handling.
+      wined3d: Filter messages generated by focus handling.
 
 Stefan Leichter (1):
-      difxapi: Add stubs for SetDifxLogCallbackA/W.
+      kernel32: Add stubs for CreateSymbolicLinkA/W.
 
-Vincent Povirk (1):
-      mscoree: Update Wine Mono to 4.5.4.
+Vincent Povirk (3):
+      cabinet/tests: Add test for calling FDIIsCabinet with hf == 0.
+      cabinet: Accept hf == 0 in FDIIsCabinet.
+      wbemprox: Implement Win32_OperatingSystem::TotalVisibleMemorySize.
 
-Yifu Wang (2):
-      msvcp120: Added std::ios_base::operator bool() implementation.
-      msvcp120: Added std::locale::facet::~facet() export.
+Yifu Wang (1):
+      msvcr120: Added wchar_t* fields to struct MSVCRT_lconv.
+
+Łukasz Wojniłowicz (1):
+      po: Update Polish translation.
 
 --
 Alexandre Julliard
diff --git a/AUTHORS b/AUTHORS
index ecaca23..5c4e010 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -850,6 +850,7 @@
 Maksim Kuleshov
 Malte Starostik
 Manfred Weichel
+Marc Bessières
 Marcel Baur
 Marcel Hasler
 Marcelo Duarte
diff --git a/VERSION b/VERSION
index 2b03463..833608f 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.7.32
+Wine version 1.7.33
diff --git a/configure b/configure
index a9ee86f..f9124d0 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.32.
+# Generated by GNU Autoconf 2.69 for Wine 1.7.33.
 #
 # 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.32'
-PACKAGE_STRING='Wine 1.7.32'
+PACKAGE_VERSION='1.7.33'
+PACKAGE_STRING='Wine 1.7.33'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -2007,7 +2007,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.32 to adapt to many kinds of systems.
+\`configure' configures Wine 1.7.33 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2076,7 +2076,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.7.32:";;
+     short | recursive ) echo "Configuration of Wine 1.7.33:";;
    esac
   cat <<\_ACEOF
 
@@ -2272,7 +2272,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.7.32
+Wine configure 1.7.33
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2790,7 +2790,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.32, which was
+It was created by Wine $as_me 1.7.33, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -18319,7 +18319,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.32, which was
+This file was extended by Wine $as_me 1.7.33, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -18390,7 +18390,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.32
+Wine config.status 1.7.33
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
