diff --git a/ANNOUNCE b/ANNOUNCE
index 923ba70..019755c 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,15 +1,15 @@
-The Wine development release 1.5.24 is now available.
+The Wine development release 1.5.25 is now available.
 
 What's new in this release (see below for details):
-  - Keyboard and mouse wheel support in the Mac driver.
-  - Regular expression support in VB Script.
-  - Many RichEdit code cleanups.
+  - Proper cursor support in the Mac driver.
+  - Fixes for right-to-left support in RichEdit.
+  - Initial version of a Wingdings font.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://prdownloads.sourceforge.net/wine/wine-1.5.24.tar.bz2
-  http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.24.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.5.25.tar.bz2
+  http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.25.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -25,330 +25,337 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.5.24 (total 38):
+Bugs fixed in 1.5.25 (total 40):
 
-   6512  power-tab-editor freezes at end of a song
-   8598  msvcrt file IO functions do not handle unicode properly in text mode
-  12908  Battle Zone I does not start.
-  16685  redraw problem in AIM_675
-  17380  CListCtrl: wrong icon spacing
-  17762  Citavi: Application is very slow
-  17763  Citavi: mouse doesn't catch links
-  18079  AutoCorect: does not properly display custom checkboxes made by Alcinoe
-  20294  sigma photo pro crashes in X11DRV_DIB_DeleteDIBSection
-  24089  EverQuest: Escape to Norrath: login screen is blank without native ie6
-  24315  Verizon Media Manager crashes on exit (VZMediaagent.exe
-  24361  Crashday: game is unusably slow during gameplay
-  24474  Simpsons Hit & Run sound bug
-  24554  Black screen in Everquest 2 (lighting issue?)
-  25576  Microsoft Flight Simulator X: Demo/Deluxe Edition, menu blank without native ie7
-  25584  Racedriver:GRID sound hardware acceleration not working
-  25958  DreamStation 1 free music tracker visually freezes under some conditions
-  27011  Lucent Heart: patcher window is blank
-  27905  HUNTED The Demon Forge: Sound does not work in the game (in movies this works)
-  29718  IE4 setup wants wininet.dll.LoadUrlCacheContent
-  29873  Guild Wars: Water graphic is missing
-  30008  Resource Hacker logo on about window has black background
-  30183  Fchart installation crashes
-  30246  EA Origin:Crashes when using openssl 1.0.1
-  30839  BSTR cache corrupts most of cached BSTR entries
-  31308  Remote Tools for Visual Studio 2012 RC installer for Windows on ARM (WoA) crashes because TPIDRURW (user TLS register) needs to be set to TEB address
-  31706  Sacred Underworld: Some models glow like a Christmas tree
-  31977  YoudaoDict crash at start
-  32520  EVE Online and other games want d3d11.dll.D3D11CreateDevice
-  32669  Ghost Master: invisible mouse pointer unless 'Enhanced Cursor' option selected
-  32808  installer of PPTV: needs unimplemented atl100.dll.AtlComModuleRegisterClassObjects
-  32818  Adrenalin Extreme Show: launcher.exe has repainting issues
-  32842  TurboTax 2012 needs shlwapi.dll IsInternetESCEnabled stub
-  32858  Crash dialog Details button Russian text doesn't fit
-  32862  Microsoft Expression Design 4 (Free Version) needs WindowsCodecsExt.dll (Microsoft Windows Codecs Extended Library)
-  32882  Grand Theft Auto IV doesn't start, aborts with a GLX error.
-  32909  QQDownload 3.9 needs unimplemented msvcr80.dll._wstat32i64
-  32929  Microsoft Expression Design 4 (Free Version) needs windowscodecsext.dll.WICCreateColorTransform_Proxy
+   5341  SourceInsight: Missing dock button
+   8942  Astral Masters no longer gets past start screen
+  17130  felix2: The screenmate flashes and doesn't move
+  18819  LOK Soul Reaver program error
+  19144  QueryContextAttributesW returns wrong return value
+  19504  Moedan: Crashes after showing developer's logo.
+  19678  Lingoes does not start
+  21283  sPlan 7.0: Non properly text rotation
+  21856  VB6 modal form appears BEHIND parent (borderless) form when focus is on certain controls, making parent form unusable.
+  22227  Wrong grayed picture for disabled vb6 controls
+  22551  Multiple .NET apps fail to load riched20.dll into memory (.NET Framework/Windows Forms wants riched20.dll loaded into lower 2GiB address space range)
+  22860  Enterprise Architect fails to create a new project or loads an existing one
+  23227  G-Police: Page fault on read access
+  23986  datetime control SetRange() has no effect, enter big year will cause CTime assert failed
+  24669  Civilization V crashes on startup
+  26261  Start menu items are not displayed
+  26465  Sound Recorder cannot convert audio codec/sample rate, due to 'acmFormatChooseW' missing
+  26775  Ace of Spades: Incomplete Sound
+  27941  Very slow rendering in sPlan7
+  29616  1Password crashes while creating a backup
+  31456  Emulating a virtual screen does not work
+  31769  windowsx.h macro HANDLE_WM_DISPLAYCHANGE is incorrect
+  31987  FindNextFile/DeleteFile loop fails for directories with many files
+  32391  Iexplore crashes play.google.com
+  32697  Word 2003 crashes on formula edit
+  32709  The Testament of Sherlock Holmes crashes at launch
+  32743  putty_arm for jailbroken WinRT needs KERNEL32.dll.GetCurrentPackageId
+  32798  Memory leak in Path of Exile
+  32829  TurboTax 2012 crashes when applying updater preferences
+  32846  dxdiag: can't retrieve network info
+  32854  Winedbg on ARM: gdb proxy mode lacks support for reading CPSR
+  32905  MT4(MetaTrader) crash at start when mpd playing music
+  32919  Yarmap causes Unhandled exception: page fault on read access in 32 bit code
+  32990  Wine on ARM: relay tracing is broken with entry points having an odd number of arguments, calling into glibc code that makes use of alloca()
+  33011  Metatrader4 crashes trying to open message
+  33014  Steam enters into an infinite update loop upon opening with wine 1.4.1
+  33029  wine-gecko downloads broken
+  33063  Rosetta Stone 4.5.5 - RosettaStoneLtdServices.exe crash on start
+  33064  Rosetta Stone 4.5.5 - Cannot start lesson: See only a gray box
+  33071  Adobe Reader XI not installing
 
 ----------------------------------------------------------------
 
-Changes since 1.5.23:
+Changes since 1.5.24:
 
-Akihiro Sagawa (1):
-      gdi32: Ensure a fixed-pitch full-width character has double advance of a half-width character.
+Alessandro Pignotti (8):
+      quartz: IEnumFiltersImpl needs to access data from IGraphFilterImpl.
+      quartz: Properly implement IGraphVersion in IFilterGraph.
+      quartz: Modify GetClassMediaFile to also extract the SourceFilter value.
+      quartz: Make GetClassMediaFile visible in the module.
+      quartz: Check byte patterns in GetFileSourceFilter.
+      quartz: Use the moniker to create the filter directly.
+      quartz: Get the CLSID directly from the filter.
+      quartz: It's not guaranteed that filters have a GUID in the property bag.
 
-Alexander Morozov (1):
-      ole32: Avoid a deadlock when a being loaded DLL calls CoRegisterClassObject from its DLL_PROCESS_ATTACH handler.
-
-Alexandre Julliard (28):
-      winemac: Don't move off-screen windows to a random position.
-      gdi32: Return the correct module handle for the initial display driver load.
-      explorer: Retrieve the graphics driver module from gdi32.
-      explorer: Return a simple boolean instead of a window in the wine_create_desktop entry point.
-      wintab32: Retrieve the graphics driver module from gdi32.
-      imm32: Retrieve the graphics driver module from gdi32.
-      winex11: Ignore color key and exposures when using the null surface.
-      user32: Avoid releasing a potentially null pointer.
-      server: Also exclude the top-level client rectangle for windows that have a pixel format.
-      server: Return the window paint flags in the get_visible_region request.
-      user32: Don't paint to the surface if the window has a pixel format, regardless of the state of the top parent.
-      wininet: Don't reset the available size after the async has been queued.
-      user32: Prefer loading color cursors in LoadImage.
-      ntdll: Add a helper function to check that a fault address lies in a known virtual memory view.
-      ntdll: Check for invalid %gs value in 32-bit code.
-      winex11: Preserve the client window when changing the window visual.
-      server: Don't support debug registers in ptrace if sys/user.h is missing.
-      loader: Define our own auxv structure.
-      loader: Rename the elf_hash function to avoid conflicts.
-      odbccu32: Remove an unnecessary source file.
-      twain_32: Remove an unnecessary DllMain entry point.
-      cryptnet: Remove an unnecessary DllMain entry point.
-      dpnhpast: Remove an unnecessary DllMain entry point.
-      iphlpapi: Remove an unnecessary DllMain entry point.
-      ktmw32: Remove an unnecessary DllMain entry point.
-      sensapi: Remove an unnecessary DllMain entry point.
-      usp10: Remove an unnecessary DllMain entry point.
-      wtsapi32: Remove an unnecessary DllMain entry point.
+Alexandre Julliard (6):
+      gdi32/tests: Define the required Windows version before including anything.
+      user32/tests: Define the required Windows version before including anything.
+      rpcrt4/tests: Define the required Windows version before including anything.
+      kernel32: Attempt to buffer the full directory in FindFirstFile to avoid races.
+      winegcc: Don't use prelink when cross-compiling.
+      psapi/tests: Define the required Windows version before including anything.
 
 Alistair Leslie-Hughes (1):
-      fusion: Return correct error for null public token.
+      webservices: Add new dll.
 
-Andrew Talbot (8):
-      jscript: Avoid signed-unsigned integer comparisons.
-      mapi32: Avoid signed-unsigned integer comparisons.
-      kernel32: Avoid signed-unsigned integer comparisons.
-      mscoree: Avoid signed-unsigned integer comparisons.
-      mmdevapi: Avoid signed-unsigned integer comparisons.
-      mlang: Avoid signed-unsigned integer comparisons.
-      msdaps: Avoid signed-unsigned integer comparisons.
-      msctf: Avoid signed-unsigned integer comparisons.
+Andrew Talbot (19):
+      msvcp90: Avoid signed-unsigned integer comparisons.
+      msi: Avoid signed-unsigned integer comparisons.
+      mshtml: Avoid signed-unsigned integer comparisons.
+      msxml3: Avoid signed-unsigned integer comparisons.
+      msvcrt: Avoid signed-unsigned integer comparisons.
+      ntdll: Avoid signed-unsigned integer comparisons.
+      oleaut32: Avoid signed-unsigned integer comparisons.
+      ole32: Avoid signed-unsigned integer comparisons.
+      quartz: Avoid signed-unsigned integer comparisons.
+      oledlg: Avoid signed-unsigned integer comparisons.
+      oledb32: Avoid signed-unsigned integer comparisons.
+      shell32: Avoid signed-unsigned integer comparisons.
+      rpcrt4: Avoid signed-unsigned integer comparisons.
+      sane.ds: Avoid signed-unsigned integer comparisons.
+      usbd.sys: Avoid signed-unsigned integer comparisons.
+      urlmon: Avoid signed-unsigned integer comparisons.
+      usp10: Avoid signed-unsigned integer comparisons.
+      windowscodecs: Avoid signed-unsigned integer comparisons.
+      kernel32/tests: Do not assume the signedness of plain char.
 
-André Hentschel (4):
-      ntdll: Set TPIDRURW to TEB on thread init for ARM.
-      make_xftmpl: Avoid comparing a char with EOF.
-      winedbg: Add PState to cpu_register_map for ARM64.
-      ntdll: Implement RtlUnwind for ARM.
+André Hentschel (10):
+      winhlp32: Properly detect non-ASCII chars.
+      ntdll: Correctly align the stack for odd numbers of arguments in relay traces on ARM.
+      kernel32: Add stub for GetCurrentPackageId.
+      comctl32/tests: Mark win8 behaviour as broken.
+      winedbg: There is no hardware single stepping support on ARM.
+      winedbg: Add support for XML Target Descriptions to read Cpsr on ARM.
+      api-ms-win*: Update spec files.
+      msvcrt: Add a new file for the ARM exception handling.
+      msvcrt/tests: Mark win8 behaviour as broken.
+      msvcrt: Fix DISPATCHER_CONTEXT on ARM.
 
-Aric Stewart (6):
-      usp10: Fix typo with Script_Khmer_Numeric.
-      usp10: Split the core Itemize function out to be able to support differences between the normal and OpenType versions.
-      usp10: Update diacritical script handling for non OpenType Itemization.
-      usp10: Free default_language items when freeing script cache.
-      usp10: Fix memory leak when a font has 0 languages, scripts or features.
-      usp10: Correct error with ScriptLayout log2vis.
+Austin English (1):
+      riched20: Make sure to load dll below 2GB address space.
 
-Austin English (4):
-      windowscodecsext: Add a stub dll.
-      shlwapi: Add a stub for IsInternetESCEnabled.
-      d3d11: Add a stub for D3D11CreateDevice.
-      wininet: Add a stub for LoadUrlCacheContent.
+Byeongsik Jeon (1):
+      gdi32: Fix the GdiGetCodePage() support ANSI_CHARSET font associated charset.
 
-Daniel Jelinski (6):
-      comctl32/listview: Correct icon spacing calculation when set to 0 or -1.
-      comctl32/listview: Always use large icon size when calculating icon spacing.
-      comctl32/listview: Do not touch icon spacing if set explicitly.
-      user32: Fix CopyImage implementation when changing cursor to icon.
-      comctl32/listview: Better handling of custom colors in report view.
-      comctl32/listview: Fix LVM_SETICONSPACING on 64bit machines.
+Carlo Bramini (1):
+      windowsx.h: Fix HANDLE_WM_DISPLAYCHANGE macro.
 
-Detlef Riekenberg (2):
-      advapi32/tests: Skip tests on non-English systems.
-      kernel32/tests: Skip tests on non-English systems.
+Daniel Jelinski (3):
+      comctl32/listview: Fix incorrect message parameters.
+      comctl32/listview: Implement overlay image support.
+      comctl32/imagelist: Allow only one drag cursor.
 
-Dmitry Timoshkov (14):
-      wbemprox: Free name in create_signature (Coverity).
-      comctl32: Test appropriate tool window for active state.
-      gdi32: Add support for 16-bit QUERYESCSUPPORT queries.
-      gdi32: Add a bunch of tests for CreateDC/ResetDC with a custom DEVMODE.
-      winspool.drv: Turn macros into helper functions.
-      wineps.drv: Add DEVMODE dumping to make debugging device state easier.
-      winspool.drv: There is no need to speculate about wineps.drv default DEVMODE.
-      gdi32: Make sure that actual clipping region is updated for a EMF DC.
-      gdi32: Add more EMF clipping tests.
-      gdi32: OffsetClipRgn should update actual clipping region for a EMF DC.
-      gdi32: IntersectClipRect should update actual clipping region for a EMF DC.
-      gdi32: ExcludeClipRect should update actual clipping region for a EMF DC.
-      gdi32: SelectClipPath should update actual clipping region for a EMF DC.
-      kernel32: There is no need for lock/unlock heap in GlobalAlloc.
+Dmitry Timoshkov (28):
+      gdiplus: Forward GdipDrawLine to GdipDrawLines.
+      gdiplus: Forward GdipDrawLineI to GdipDrawLine.
+      gdiplus: Forward GdipDrawLinesI to GdipDrawLines.
+      include/gdiplusenums.h: Add FlatnessDefault definition.
+      gdiplus: Avoid a devision by zero when a being added segment length is 0.
+      gdiplus: Avoid a crash in GdipDrawImagePointRect.
+      gdiplus: Forward GdipDrawBezierI to GdipDrawBezier.
+      gdiplus: Slightly simplify GdipDrawClosedCurve2 implementation.
+      gdiplus: Reimplement GdipDrawCurve2 using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawLines using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawArc using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawBeziers using GdipDrawPath.
+      gdiplus: Forward GdipDrawBezier to GdipDrawBeziers.
+      gdiplus: Reimplement GdipDrawEllipse using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawPie using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawRectangle using GdipDrawPath.
+      gdiplus: Reimplement GdipDrawRectangles using GdipDrawPath.
+      gdiplus: Slightly simplify GdipFillClosedCurve2 implementation.
+      gdiplus: Reimplement GdipFillRectangles using GdipFillPath.
+      gdiplus: Use an off-screen DC for font enumeration.
+      gdiplus: Use an off-screen DC as an image surface.
+      gdiplus: Use an off-screen DC to trace a path.
+      gdiplus: Correct the GdipDrawString .spec entry.
+      gdiplus: Remove debug traces from GdipBitmapGetPixel and GdipBitmapSetPixel.
+      gdiplus: Add some tests for ARGB conversions.
+      gdiplus: Round up when converting from 32-bit ARGB to PARGB.
+      gdiplus: If a device doesn't support AlphaBlend don't convert image to PARGB.
+      fonts: Add an initial version of Wingdings font.
 
-Erich Hoover (2):
-      advapi32: Support registry objects in GetNamedSecurityInfo.
-      advapi32: Support registry objects in SetNamedSecurityInfo.
+Francois Gouget (2):
+      ddraw/tests: Fix the refresh rate test when running with the Windows 'Standard VGA' driver.
+      d3d9/tests: CheckDeviceType() may also return D3DERR_NOTAVAILABLE for D3DFMT_X1R5G5B5.
 
-Francois Gouget (5):
-      kernel32/tests: Reduce the size of the console buffer to speed up the tests.
-      rpcrt4/tests: Trace the GUID when it is wrong.
-      d3d11: Make debug_d3d_driver_type() static.
-      ws2_32/tests: Fix the GetAcceptExSockaddrs() test.
-      winetest: Trace the time it takes to run each test.
+Hans Leidekker (10):
+      wmiutils: Add support for for parsing and serializing a key list.
+      wmiutils: Add a stub implementation of IWbemPathKeyList.
+      wmiutils: Implement IWbemPathKeyList::GetCount.
+      wmiutils: Implement IWbemPathKeyList::RemoveAllKeys.
+      rpcrt4: Accept HTTP idle packets while waiting for the second prepare header.
+      wbemprox: Avoid a crash in destroy_view.
+      wbemprox: Implement more properties of Win32_CDROMDrive.
+      wbemprox: Add a partial implementation of Win32_DiskPartition.
+      msi: Handle more than one patch per file.
+      msi: Don't attempt to patch files from disabled components.
 
-Frédéric Delanoy (1):
-      msi: Fix memory leak (coverity).
+Huw Davies (10):
+      riched20: Add the ability to CharFromPoint to either pick the closest leading edge or the leading edge of the selected character.
+      usp10: Clusters are represented by glyph indices not character positions.
+      riched20: Change ME_FindRunInRow to fill out a cursor structure.
+      riched20: Return a BOOL that indicates whether the hit is exact.
+      riched20: Only retrieve the next row.
+      riched20: Rewrite ME_FindPixelPos to use ME_GetRunInRow.
+      riched20: Correctly set the row's x position.
+      riched20: Allow the cursor offset to be equal to the run length - this implies the cursor is at the end of the run, which isn't necessarily the start of the next.
+      riched20: Don't assume the the runs in a row are in visual order.
+      riched20: Send WM_CHAR notifications.
 
-Hans Leidekker (12):
-      windowscodecs: Implement IWICColorContext::InitializeFromFilename.
-      windowscodecs: Add a stub IWICColorTransform implementation.
-      windowscodecs: Convert the source bitmap to the requested pixel format in IWICColorTransform::Initialize.
-      windowscodecs: Implement IWICComponentFactory::CreateDecoderFromFileHandle.
-      wbemprox: Trace the qualifier value in IWbemClassObject::GetNames.
-      windowscodecsext: Implement WICCreateColorTransform_Proxy and IWICColorTransform_Initialize_Proxy.
-      windowscodecs: Implement IWICBitmapFrameDecode::GetColorContexts for TIFF images.
-      msiexec: Add /unregserver support.
-      msiexec: Convert DoRegServer to Unicode.
-      wininet/tests: Fix a test failure.
-      msi/tests: Move a couple of tests from install.c to msi.c.
-      msi: Don't remove products if msidbUpgradeAttributesOnlyDetect is set.
-
-Henri Verbeet (2):
-      wined3d: Add WINED3DFMT_INST to the format table.
-      configure: Include Xlib.h before Xrandr.h.
-
-Huw Davies (23):
-      riched20: Actually pass the ANSI string to the break proc.
-      riched20: Pass the character ptr and string length directly to the break proc helper.
-      riched20: Pass a character ptr and length to SplitParagraph.
-      riched20: Pass character ptrs to the whitespace finding functions.
-      riched20: Move the text to the paragraph level.
-      riched20: Move SplitRun to wrap.c and make it static.
-      riched20: Move the split point calculation to wrap.c.
-      riched20: Move run extent calculation to wrap.c.
-      riched20: The run width is always passed so we don't need to calculate it again.
-      riched20: Pass the run to the text drawing routine.
-      riched20: Move underline pen creation to a helper function.
-      riched20: Move y offset calculation to a helper function.
-      riched20: Move text color determination to a helper function.
-      riched20: Move the white space painting operations to a common function.
-      riched20: Remove the special case tab handling now that we handle that in draw_space.
-      riched20: Make it possible to perform point -> char conversion while holding a context.
-      riched20: The string len parameter is no longer necessary.
-      riched20: Use the point from char helpers to calculate the selection rectangle.
-      riched20: Simplify selection painting by drawing a selected run twice with appropriate clipping.
-      riched20: Move underline drawing to a common function.
-      riched20: Move the range clamping to the helper now that the range isn't used later on.
-      riched20: Move the password string hack to just before it's used.
-      riched20: Use ME_PointFromChar to calculate the caret position.
-
-Jacek Caban (13):
-      atl100: Added AtlComModuleRegisterClassObjects implementation (based on AtlModuleRegisterClassObjects).
-      oleaut32: COM clean up of ITypeLib2 interface implementation.
-      mshtml: Use VT_ERROR as return type in DispCallFunc call.
-      oleaut32: Return error if VT_HRESULT is used as return type in DispCallFunc.
-      urlmon: Clean up handling tested URLs.
-      urlmon: Fixed QueryInfo tests during BINDSTATUS_PROXYDETECTING notification.
-      urlmon: Skip reported_url tests when binding to object.
-      urlmon: Fixed tests on IEs that report BINDSTATUS_DECODING.
-      oleaut32: Don't free a string in SysFreeString if it's already in cache.
-      oleaut32: Added some SysFreeString tests.
-      urlmon: Allow available_bytes to be set before protocol_continue call.
-      wininet: Set available bytes in InternetQueryDataAvailable even if it ends up in async call.
+Jacek Caban (42):
+      urlmon: Skip https tests on IE6.
+      wininet: Address string should never be converted to UNICODE in status notifications.
+      wininet: Removed broken cache tests.
+      mshtml: Fixed tests on some broken Vista versions.
+      oleaut32: Fixed copy&paste mistake in SysFreeString.
+      jscript: Use to_int32 in to_uint32 implementation.
+      jscript: Fixed BSTR leak.
+      mshtml: Don't crash if fire_event_obj is called on detached document.
+      winhttp: Get cert store directly from cert in netconn_verify_cert.
+      urlmon: Added a few more forward to propsys.
+      mshtml: Forward IHTMLDocument3::get_childNodes to IHTMLDOMNode implemnentation.
+      mshtml: Added IHTMLWindow2::onfocus property implementation.
+      mshtml: Addeed IHTMLDocument5::createAttribute implementation.
+      mshtml: Added support for IHTMLDOMAttribute::get_nodeName in detached attributes.
+      mshtml: Added IHTMLDocument5::createAttribute tests.
+      winhttp: Removed no longer used netconn_init argument.
+      wininet: Fail in NETCON_secure_connect instead of create_netconn if OpenSSL is not available.
       vbscript: Added support for a few more constants.
+      urlmon: Use separated variable for InternetQueryDataAvailable to avoid races.
+      mshtml: Don't report IHTMLTextContainer as supported in anchor element.
+      mshtml: Added IHTMLAnchorElement::get_hostname implementation.
+      widl: Allow shadowing imported types with typedef.
+      msctf.idl: Added some missing declarations.
+      wininet: Don't call get_avail_data multiple times in HTTP_ReceiveRequestData.
+      wininet: Moved dialog-related functions to dialog.c.
+      vbscript: Make constant type explicit.
+      vbscript: Added color constants.
+      vbscript: Fixed chr(0) implementation.
+      vbscipt: Added string constants.
+      secur32: Report SecPkgContext_ConnectionInfo in bits, not bytes.
+      mshtml.idl: Added IHTMLLabelElement* interfaces declarations.
+      mshtml: Added IHTMLLabelElement stub implementation.
+      ieframe: Fixed QI tests on IE10, where IStdMarshalInfo is supported by WebBrowser object.
+      urlmon.idl: Added IGetBindHandle declaration.
+      wininet: Renamed useSSL to secure and set it after secure connection is established.
+      wininet: Renamed socketFD to socket.
+      ieframe: Fixed tests on IE10.
+      mshtml: Fixed handling escaped paths in is_gecko_path.
+      mshtml: Fixed 'adjacent' spelling.
+      mshtml: insert_adjacent_node clean up.
+      mshtml: Added IHTMLElement2::insertAdjacentElement implementation.
+      mshtml: Added IHTMLElement2::insertAdjacentElement tests.
 
-Jactry Zeng (4):
-      msvcr100: Added _wstat32i64 implementation.
-      msvcr100: Added _stat32i64 implementation.
-      msvcr80: Sync _wstat32i64 and _stat32i64 implementation.
-      msvcr90: Sync _wstat32i64 and _stat32i64 implementation.
+Jörg Höhle (9):
+      ntdll: Stabilize CreateTimerQueueTimer callbacks over time.
+      mmdevapi/tests: Produce audible 16bit output too.
+      winmm: WAVE_OPEN_QUERY causes no WIM/WOM_OPEN notification.
+      mmsystem: Use SEGPTR when the .spec says so.
+      mmsystem: Do not rewrite input parameters.
+      mmsystem: Always use CALLBACK_FUNCTION to update MIDI/WAVEHDR.dwFlags.
+      winealsa: Reword some MIDI log messages.
+      wineoss: Add midi MTC Quarter Frame support (on output).
+      winmm: Prevent some MIDI race conditions.
 
-Jeff Latimer (2):
-      wmvcore: Add stub implementation for WMCreateEditor.
-      wmvcore: Fix a typo.
+Ken Thomases (20):
+      winemac: Discard old frame changed events when setting frame for off-screen windows, too.
+      winemac: Don't set Cocoa window frame to be zero-sized.
+      winemac: Use only on-screen windows for Cocoa parent (Win32 owner) and ordering sibling.
+      winemac: Track Cocoa windows in a z-ordered list.
+      winemac: Implement support for full-screen windows.
+      winemac: Implement DISPLAYS_CHANGED event for when display configuration has changed.
+      include/wingdi.h: Add definitions for DEVMODE display fixed output flags and values.
+      winemac: Implement EnumDisplaySettingsEx().
+      winemac: Implement ChangeDisplaySettingsEx().
+      winemac: Always use proper z-order when putting a window on screen.
+      winemac: Call sync_window_position() before show_window() since window frame affects whether it shows.
+      winemac: Don't bring a window onto the screen in SetFocus().
+      winemac: Implement SetCursor() and DestroyCursorIcon().
+      winemac: Use system cursors when possible.
+      winemac: Implement GetCursorPos().
+      winemac: Handle mouse moves in -[WineApplication sendEvent:] instead of WineWindow.
+      winemac: Request mouse move events when our window is active even when cursor is outside it.
+      winemac: Reset the cursor to the normal Mac arrow when it's outside all Wine windows.
+      winemac: Implement SetCursorPos().
+      winemac: Implement ClipCursor().
 
-Juan Lang (2):
-      iphlpapi: Fix HRESULT/win32 error code confusion.
-      cryptui: Use add_usage_to_oid correctly.
+Marcus Meissner (2):
+      kernel32: Use the correct pointer size in atl thunk (Coverity).
+      ole32: Free *ppszProgID on error path (Coverity).
 
-Julian Rüger (1):
-      po: Update German translation.
+Matteo Bruni (2):
+      wined3d: Make (wined3d_)surface_depth_blt_fbo handle locations other than SFLAG_INTEXTURE.
+      wined3d: Add RESZ support.
 
-Jörg Höhle (4):
-      ntdll: Use the monotonic time counter also for timer queues.
-      winmm: More compatible midiIn/Out[Un]Prepare MHDR_* flag handling.
-      winmm: More compatible waveIn/Out[Un]Prepare WHDR_* flag handling.
-      winmm: Handle GetTickCount overflow in MIDI player.
+Michael Stefaniuc (10):
+      Revert "dsound/tests: Primary and secondary buffers use the same IDirectSoundBuffer vtbl.".
+      mshtml: Fix copy and paste error.
+      ddraw/tests: Simplify some equality comparisons between bools.
+      shell32: COM clean up for the inner IUnknown of ShellFSFolder.
+      shell32: COM clean up for IShellFolder2 in ShellFSFolder.
+      shell32: Pass an IShellFolder2 to SHELL32_CompareIDs() to avoid casts.
+      shell32: COM clean up for IPersistFolder3 in ShellFSFolder.
+      shell32: Get rid of a helper function.
+      shell32: Finish the COM cleanup of ShellFSFolder.
+      shell32: Move IFSFolder_Constructor() to avoid forward declarations.
 
-Ken Thomases (25):
-      winemac: Implement ScrollDC().
-      winemac: Implement support for minimizing windows.
-      winemac: Build a map from Mac virtual key codes to Win32 vkeys and scan codes based on Mac keyboard layout.
-      winemac: Rebuild key map when Mac keyboard layout changes.
-      winemac: Generate KEY_PRESS/RELEASE events from Cocoa key events.
-      user32: In TranslateMessage, handle ToUnicode returning 2 or more chars.
-      winemac: Implement ToUnicodeEx().
-      winemac: Ignore Cocoa's window frame adjustments for off-screen windows.
-      winemac: Implement Beep().
-      winemac: Implement MapVirtualKeyEx().
-      winemac: Implement VkKeyScanEx().
-      winemac: Implement GetKeyNameText().
-      winemac: Implement fake support for the active Windows keyboard layout.
-      winemac: Implement SysCommand() to prevent Alt keypresses from activating system menu.
-      winemac: Add WineApplication methods to convert from Cocoa to Win32 coordinate space.
-      winemac: Implement MOUSE_MOVED(_ABSOLUTE) events.
-      winemac: Process clicks in an inactive window in addition to activating it.
-      secur32: On Mac, add support for cipher suites defined in 10.8 SDK.
-      user32: Improve mouse wheel scrolling in edit control.
-      user32: Improve mouse wheel scrolling in listbox control.
-      comctl32: Eliminate redundant local variable (gcWheelDelta == -wheelDelta).
-      comctl32: Improve mouse wheel scrolling in listview control.
-      comctl32: Improve mouse wheel scrolling in treeview control.
-      winemac: Implement MOUSE_SCROLL events.
-      winemac: Prevent Cocoa from consuming certain key-down events.
+Nikolay Sivov (12):
+      dwrite: Remove testing for exact script code value.
+      dwrite: Added more dwrite interfaces.
+      msvcrt: Move demangler flags to a header and use them.
+      msxml3: Fail to insert a node of unsupported type to a document.
+      wshom: Implement IWshShell3::Run().
+      msxml3: Better handle cross-tree node moves.
+      msxml3: Update refcount in replaceNode().
+      msxml3: Update backing docs refcount in put_documentElement().
+      msxml3: Remove unneeded cast to xmlDocPtr.
+      msxml3: Escape value for attribute in put_value().
+      msxml3: Don't make a variant copy if no need to for setting node value.
+      msxml3: Avoid unneeded variant copy in setAttribute(), leak fixed as a side effect.
 
-Ludger Sprenker (1):
-      windowscodecs: Add enum type WICTiffCompressionOption.
+Nozomi Kodama (5):
+      d3dx9: Specify arguments in trace to ease debugging.
+      d3dx9: Add a missing trace.
+      d3dx9: Avoid useless computations.
+      d3dx9: Explicit computations in D3DXMatrixDeterminant to speed them up.
+      d3dx9: Explicit computations in D3DXMatrixInverse to speed them up.
 
-Marcus Meissner (1):
-      comdlg32: Free files on errorpath (Coverity).
+Petr Kočandrle (1):
+      po: Small improvement of Czech translation.
 
-Michael Stefaniuc (20):
-      ddraw/tests: Use assignment instead of memcpy to copy structs.
-      crypt32: Use assignment instead of memcpy to copy structs.
-      wined3d: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      ieframe: Let C look like C.
-      krnl386.exe16: Let C look like C.
-      gphoto2.ds: Let C look like C.
-      iphlpapi: Let C look like C.
-      qedit: Let C look like C.
-      d3drm: Let C look like C.
-      riched20: Let C look like C.
-      usp10: Let C look like C.
-      d3d10core: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      d3d8: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      d3d9: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      d3dx9_36: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      d3drm: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      amstream: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      d3dcompiler_43: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      dmime: Remove ERR() on HeapAlloc failure for small sizes known at compile time.
-      wineoss.drv: Use offsetof to calculate the size of a struct with variable length array.
+Piotr Caban (24):
+      msvcr90: Prefer builtin version.
+      msvcp90: Prefer builtin version.
+      jscript: Rename JSREG_* defines to REG_*.
+      jscript: Cleanup regular expressions engine API.
+      jscript: Avoid copying regular expression results.
+      vbscript: Added RegExp2::Test implementation.
+      vbscript: Added RegExp2 flags getters and setters implementation.
+      vbscript: Added RegExp2::Execute implementation.
+      vbscript: Silence IDispatchEx queries on RegExp objects.
+      vbscript: Added RegExp.Execute tests.
+      vbscript: Added IMatchCollection2::_NewEnum implementation.
+      vbscript: Added tests for invalid parameters in regular expression functions.
+      vbscript: Added IMatchCollection2::__NewEnum test.
+      msvcrt: Mark gmtime32 tests with negative argument as broken on win8.
+      oleaut32: Fixed time outputing for dates before 1899 in VarBstrFromDate.
+      oleaut32: Fixed VarBstrFromDate behavior on dates before year 1600.
+      oleaut32: Fixed VARIANT_FormatDate behavior on dates before year 1600.
+      hlink: Call BindToObject with IID_IUnknown in IHlink_fnNavigate.
+      hlink: Return value returned by IHlinkTarget_Navigate in IHlink_fnNavigate.
+      hlink: Added basic Hlink::Navigate tests.
+      ole32: Added more OleCreateDefaultHandler tests.
+      ole32: Don't pass CLSCTX_INPROC_SERVER and CLSCTX_INPROC_HANDLER flags to CoCreateInstance in DefaultHandler_Run.
+      cmd: Fixed memory leak in WCMD_run_program.
+      msvcrt: Fixed closing of FindFirstFile handle in build_expanded_argv.
 
-Nikolay Sivov (3):
-      oledb32: Add a table of init properties, support Persist Security Info switch in init string.
-      xmllite: Store start data pointer for comments.
-      xmllite: Basic test for chunk value read vs full value read.
+Rico Schüller (2):
+      d3d9/tests: Use lower base hexadecimal values.
+      d3dx9: Fix typos.
 
-Nozomi Kodama (1):
-      d3dx9: Use const instead of CONST.
+Ričardas Barkauskas (2):
+      wined3d: Rename bsize to content_size to reflect usage.
+      wined3d: Make shader buffer dynamic.
 
-Piotr Caban (11):
-      jscript: Rename jsheap_t to heap_pool_t.
-      jscript: Don't use jsstr_t in JSRegExp structure.
-      jscript: Don't use jsstr_t in js_NewRegExp.
-      jscript: Move code operating on JSRegExp out of do_regexp_match_next function.
-      jscript: Make context generic in internal regular expression functions.
-      jscript: Moved generic regular expressions code to separate file.
-      vbscript: Added IRegExp2 stub.
-      vbscript: Added IRegExp2_QueryInterface tests.
-      vbscript: Added partial implementation of IDispatch methods in IRegExp2.
-      vbscript: Added IRegExp2::Pattern implementation.
-      vbscript: Rename vbsheap to heap_pool.
-
-Roman Dadkov (3):
-      ole32/tests: Add test for SetClientSite.
-      mpr/tests: Test to check the return values of WNetGetUniversalNameA.
-      ole32/tests: Add test for OleRun.
-
-Stefan Dösinger (2):
-      wined3d: Use the ARBfp ffp pipeline only if ARBfp is supported.
-      wined3d: Reserve one vs constant on r200.
-
-Vijay Kiran Kamuju (1):
-      msvcr90: Update the manifest version.
+Vincent Povirk (2):
+      mscoree: Add WINE_MONO_VERBOSE environment setting.
+      mscoree: Keep a reference to mscoree when shutting down.
 
 --
 Alexandre Julliard
diff --git a/VERSION b/VERSION
index f572312..8bdb979 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.5.24
+Wine version 1.5.25
diff --git a/configure b/configure
index 5a29243..17cc687 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.5.24.
+# Generated by GNU Autoconf 2.69 for Wine 1.5.25.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.5.24'
-PACKAGE_STRING='Wine 1.5.24'
+PACKAGE_VERSION='1.5.25'
+PACKAGE_STRING='Wine 1.5.25'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -1403,7 +1403,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.5.24 to adapt to many kinds of systems.
+\`configure' configures Wine 1.5.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1472,7 +1472,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.5.24:";;
+     short | recursive ) echo "Configuration of Wine 1.5.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1619,7 +1619,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.5.24
+Wine configure 1.5.25
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2137,7 +2137,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.5.24, which was
+It was created by Wine $as_me 1.5.25, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -16960,7 +16960,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.5.24, which was
+This file was extended by Wine $as_me 1.5.25, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17031,7 +17031,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.5.24
+Wine config.status 1.5.25
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
