diff --git a/ANNOUNCE b/ANNOUNCE
index 6973301..1e724ec 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,15 +1,16 @@
-The Wine development release 1.3.14 is now available.
+The Wine development release 1.3.15 is now available.
 
 What's new in this release (see below for details):
-  - Many cleanups to address Valgrind and Clang warnings.
-  - Support for creating compressed cabinet files.
-  - Translation updates.
+  - Support for changing network passwords.
+  - Reflection support in shader compiler.
+  - Tests no longer attempt to cope with Win9x behavior.
+  - A number of MSHTML and MSXML improvements.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.14.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-1.3.14.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.15.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.3.15.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -25,454 +26,450 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.3.14:
+Bugs fixed in 1.3.15:
 
-  10140  Most grayscale JPEGs cause abnormal rendering artifacts in CDisplay
-  11021  Unable to launch Universal Combat
-  11124  VAZ Modular Demo unable to exit raising access violation exception
-  11242  Deprecated functions called in audiounit.c
-  12303  Halo has white boxes covering menu items when it loads the first screen.
-  13629  ABEV (Hungarian Tax Returning SW) has some GFX problem with logo
-  14282  Eve Online in windowed mode has additional black borders
-  15686  Microsoft Word 5.5 for DOS does not install; int 21h ah=41h not fully implemented
-  16695  Wine broken on PowerPC
-  17884  Tree glitch in fable
-  19202  eve online 100% cpu usage (frame rate limiter is not limiting anything)
-  21517  Sims 3 crashes to desktop when entering Create-A-Sim or buying a house
-  23267  Eudora 7.1.0.9: White space appears below the Search Web dropdown
-  25206  Anarchy Online v18.4, Ingame browser crashes (Awesomium.dll)
-  25865  EVE Online crashes if a character portrait requests fails
-  25911  Miranda + windows riched20.dll = crash
-  25933  SolidWorks 2010: Unimplemented function propsys.dll.PSRefreshPropertySchema
-  25951  Mathematica 6.0 installation fails
-  25989  Total Commander: Crashes when clicking the current directory field of the current panel
-  25991  DameWare Exporter: Unimplemented function netapi32.dll.NetUseDel
-  26014  Printing produces garbled output, characters rotated and sliced.
-  26036  [foobar2000 1.x] crash when opening certain dialog box
-  26051  wintrust/softpub tests show a few leaks under valgrind
-  26052  usp10/usp10 tests show a few valgrind errors
-  26071  urlmon/uri tests show some valgrind warnings
-  26123  mshtml/protocol shows several leaks under valgrind
+  11965  gethostbyname requires a successful WSAStartup invocation before performing an operation
+  12583  clipboard monitor is not working in PSPad
+  14412  staruml can't load examples
+  16551  install fails - msi_cabextract FDICopy fails
+  18153  Wizard101 will not load
+  18598  Source Insight: Window Title Bar does not get updated with the new file when jumping to the definition from the current file.
+  19654  The "Mudokon Status Indicator" in Abe's Oddysee doesn't work correctly
+  21210  Clicking on URL hyperlinks in PowerPoint 2007 results in a crash
+  23734  Office 2007 installer: cannot add or remove programs after initial install
+  24250  Sam and Max 304 aborts on unimplemented function msvcr80.dll.getenv_s
+  24268  mono's gluezilla uses unimplemented function msvcr80._stat32
+  24290  GetOpenFileName() triggers read of uninitialized variable
+  24440  Second Life crashes with unimplemented function(s) from msvcr80.dll
+  24553  unimplemented msvcrt.dll._wfindfirst64
+  25033  Solo on Keyboard 9.0.2.1 setup fails
+  25098  BrainSplode! crashes with Unimplemented function d3dx9_36.dll.D3DXCreateTextA
+  25273  msvcrt/misc.ok I10_OUTPUT long double crash with winetest.exe, not make test
+  25443  Unimplemented function msvcr90.dll._ftime64_s
+  25618  Super Meat Boy fails to output audible sound
+  25866  Mafia: City of Lost Heaven - Crash when starting Freeride Supreme Mode
+  26114  gdi32/mapping tests shows a couple memory leaks in valgrind
+  26133  d3dx9_36: surface and texture tests shows an invalid read under valgrind
+  26174  Theme internals crash with Unimplemented function ADVAPI32.dll.EnableTraceEx
+  26177  Compilation of dlls/msxml3 fails on CentOS 3
+  26178  MS Word 2003 save document with embedded fonts needs t2embed.dll._TTEmbedFont@44 implemented
+  26201  wineboot fails to install gecko automatically
+  26228  msxml3 fails to build when libxml2 is built with +icu useflag
+  26233  Dragon Age 2 demo - sound sometimes missing in EA logo movie
+  26248  Pokerstars client, windows pops up just to die
 
 ----------------------------------------------------------------
 
-Changes since 1.3.13:
+Changes since 1.3.14:
 
-Akihiro Sagawa (2):
-      wmc: Update PO message match algorithm.
-      po: Update Japanese translation.
+Akihiro Sagawa (5):
+      hhctrl.ocx: Use DEFAULT_GUI_FONT to show non-ansi characters properly.
+      shdocvw: Add Japanese translation.
+      wineconsole: Add Japanese translation.
+      credui: Add Japanese translation.
+      msvfw32: Add Japanese translation.
 
-Alexander Kochetkov (2):
-      comctl32: Fixed height of comboboxex32.
-      wineps.drv: All map modes should have inverted y-transforms.
-
-Alexander Lakhin (5):
-      po: Update Russian translation.
-      cryptui: Add Russian translation resources.
-      inetcpl.cpl: Add Russian translation resources.
-      shdocvw: Add Russian translation resources.
-      regedit: Update Russian translation.
-
-Alexander Morozov (2):
-      shell32: Implement Folder2::get_Self.
-      shell32: Partially implement FolderItem::get_Path.
+Alexander Kochetkov (1):
+      gdi32: Fix scaling factors for EMR_EXTTEXTOUTW.
 
 Alexander Scott-Johns (2):
-      comctl32: Fix read of uninitialized data in LISTVIEW_HeaderNotification and rename it to LISTVIEW_Notify (Valgrind).
-      user32: Fix read of uninitialized data and a couple of typos in TrackMouseEvent (Valgrind).
+      comctl32: Fix read of uninitialized data in LISTVIEW_GetItemExtT when LVIF_TEXT is not set (Valgrind).
+      comctl32: Fix read of uninitialized data in notify_itemactivate (Valgrind).
 
-Alexandre Julliard (16):
-      cabarc: Add support for specifying a maximum cabinet file.
-      cabarc: Add support for starting a new folder with a '+' file name.
-      cabinet: Store folders in a list in memory instead of in a temp file.
-      cabinet: Store files in a list in memory instead of in a temp file.
-      cabinet: Add helper functions for temp file manipulations.
-      cabinet: Store the CCAB data as soon as it is available.
-      cabinet: Rewrite the cabinet header output code, and write everything to disk in one step.
-      cabinet: Store the data block headers in a memory list instead of on-disk.
-      msvcr90/tests: Fix the type info test for 64-bit.
-      kernel32: Don't try to initialize curses if the TERM variable is not set.
-      cabinet: Create one temp file per folder and avoid an extra copy of the data.
-      cabinet: Cleanup file loading and add infrastructure for plugging in real compression.
-      cabinet: Create temp files only once we have data to store into them.
-      cabinet: Add support for MSZIP compression.
-      cabinet: Avoid some memory allocations by storing buffers directly in the FCI structure.
-      configure: Print a notice if zlib isn't found.
+Alexandre Goujon (1):
+      ws2_32: Make gethostbyname fail if WSAStartup was not called before.
 
-Alistair Leslie-Hughes (6):
-      mshtml: Implement IHTMLStyle put_borderRightColor.
-      mshtml: Implemented IHTMLStyle_put_borderBottomColor.
-      mshtml: Implement IHTMLStyle_put_borderLeftColor.
-      mshtml: Implement IHTMLCurrentStyle_get_padding.
-      mshtml: Implement IHTMLAnchorElement_put_href.
-      msxml3: Add IObjectWithSite support to IXMLHttpRequest.
+Alexandre Julliard (39):
+      cabinet: Fix the remaining todo_wine tests in fdi.c.
+      cabarc: Set the initial cabinet number to 0.
+      kernel32: Use debugstr_a to avoid overflow with user-specified string.
+      ntdll: Improve the error reporting for invalid PE file architectures.
+      wine.inf: Put some fake dlls in the right place for WoW64.
+      cabinet: Preserve trailing slash on directory name in Extract().
+      server: Increment the usage count of the global table also when starting a local hook.
+      winex11: Synchronize the mouse cursor in update_mouse_state.
+      winex11: Update the window cursor at most once every 100ms if nothing changed.
+      d3dx9_36: Cleanup the fixme_once handling.
+      msxml3: Include the system libxml headers before the Windows headers.
+      server: Make the foreground thread input per-desktop instead of global.
+      server: Store the global cursor position in the server.
+      server: Store the cursor clip rectangle in the server.
+      server: Store the global key state in the server.
+      server: Work around Mac OS not being able to set global breakpoint flags.
+      winedbg: Support setting a breakpoint from a file name and line number.
+      server: Fill the key state in mouse events from the server-side state.
+      server: Maintain the "set since last time" bit for the global keystate.
+      user32: Retrieve the key state for GetAsyncKeyState from the server.
+      user32: Retrieve the current cursor position from the server.
+      winex11: Pass a window handle for keyboard hardware messages too.
+      server: Don't pass a thread id to send_hardware_message, determine it from the window.
+      ntdll: Don't print an error when architecture is set to win64 and the app is 64-bit.
+      server: Pass the original hardware input data to the server and set the message parameters on the server side.
+      server: Set the message code for keyboard input on the server side.
+      server: Set the message code for mouse input on the server side.
+      winex11: Fetch the key state from the server when adjusting state on KeymapNotify and key events.
+      user32: Export a Wine-specific function to send hardware input from the graphics driver.
+      server: Invoke low-level hardware hooks directly from the server side.
+      user32: Handle input injected through SendInput entirely in user32.
+      winex11: Get rid of the ClipCursor and SendInput entry points.
+      winex11: Merge updating the mouse state and sending the input into a single helper function.
+      winex11: Convert the clipboard data list to a standard Wine list.
+      winex11: Convert the clipboard format list to a standard Wine list.
+      winex11: Add a debug helper for printing clipboard formats.
+      winex11: Pre-register atoms for all the built-in clipboard formats.
+      winex11: Always reference clipboard formats by atom instead of name.
+      user32: Remove GetClipboardFormatName from the user driver interface.
 
-Amine Khaldi (1):
-      riched20: Fix a c89 conformance issue in ITextImpl->editor->rcFormat initialization.
+Alistair Leslie-Hughes (4):
+      mshtml: Add support for get/put mousemove event.
+      oleaut32: Implement ITypeInfo_GetNames Stub/Proxy.
+      msxml3: Add IObjectSafety support to IXMLHTTPRequest.
+      mshtml: Implement IHTMLAnchorElement get/put target.
 
-Andrew Nguyen (12):
-      dxdiagn: Make the containers keep a reference to a IDxDiagProvider object.
-      dxdiagn: Add code that introduces the infrastructure of a provider information tree.
-      dxdiagn: Add code that populates the DxDiag_SystemInfo container.
-      dxdiagn: Add code that populates the DxDiag_DisplayDevices container.
-      dxdiagn: Add code to create stub containers for DxDiag_DirectSound.
-      dxdiagn: Add code that populates the DxDiag_DirectXFiles container.
-      dxdiagn: Add code that populates the DxDiag_DirectShowFilters container.
-      dxdiagn: Remove the old container initialization code in preparation for switching to the information tree.
-      dxdiagn: Transition to the information tree by making IDxDiagContainer view the information tree.
-      dxdiagn: Restore a few traces in the container construction functions.
-      usp10/tests: Avoid passing optional pointers to uninitialized structures in ScriptString tests.
-      propsys: Add a PSRefreshPropertySchema stub.
+Amine Khaldi (3):
+      comdlg32: Add missing break (Coverity).
+      riched20: Add a missing break.
+      d3dcompiler_43: Avoid an unintended fall-through.
 
-André Hentschel (12):
-      ntdll: Only use ST_FIX_ALIGN on solaris.
-      netapi32: Add stub implementation for NetUseDel.
-      netapi32: Add stub implementation for NetServerDiskEnum.
-      oleaut32/tests: Add more safearray tests.
-      msvcrt: Fixed a typo.
-      oleaut32: Remove an unneeded error.
-      winemaker: Ignore whitespaces before defines.
-      urlmon/tests: Mark unavailable InternetZoneManagerEx2 as broken.
-      urlmon/tests: Fix expected result.
-      rsaenh/tests: Test the reported length on success.
-      kernel32: Remove a useless error message.
-      kernel32: Forward RtlCompareMemory to ntdll on x86_64.
+Andrew Eikum (1):
+      dsound: Also handle two-to-six-channel conversions.
 
-Austin English (141):
-      advapi32/tests: Make sure to use return value (LLVM/Clang).
-      comcat/tests: Make sure to use return value (LLVM/Clang).
-      dinput/tests: Make sure to use return value (LLVM/Clang).
-      credui/tests: Make sure to use return value (LLVM/Clang).
-      crypt32/tests: Make sure to use return value (LLVM/Clang).
-      cryptnet/tests: Make sure to use return value (LLVM/Clang).
-      comctl32/tests: Make sure to use return value (LLVM/Clang).
-      gdi32/tests: Make sure to use return value (LLVM/Clang).
-      explorerframe/tests: Don't assign values to variables that are never checked (LLVM/Clang).
-      kernel32/tests: Remove unused assignment (LLVM/Clang).
-      ole32/tests: Remove unused assignment (LLVM/Clang).
-      rsaenh/tests: Make sure to use return values (LLVM/Clang).
-      shdocvw/tests: Make sure to use return value (LLVM/Clang).
-      usp10/tests: Make sure to use return value (LLVM/Clang).
-      wininet/tests: Make sure to use return value (LLVM/Clang).
-      winspool.drv: Make sure to use return values (LLVM/Clang).
-      gdiplus/tests: Make sure to use return values (LLVM/Clang).
-      avifil32/tests: Remove useless variable assignments (LLVM/Clang).
-      d3dx9_36/tests: Remove unused variable assignments (LLVM/Clang).
-      ddraw: Fix unused variable warnings (LLVM/Clang).
-      dsound/tests: Make sure to use return values (LLVM/Clang).
-      fusion/tests: Make sure to use return values (LLVM/Clang).
-      msvcrt/tests: Make sure return values are used (LLVM/Clang).
-      oleaut32/tests: Make sure return values are used (LLVM/Clang).
-      ntdll/tests: Make sure return values are used (LLVM/Clang).
-      localspl/tests: Make sure return values are used (LLVM/Clang).
-      inetcomm/tests: Make sure to use return values (LLVM/Clang).
-      mmdevapi/tests: Make sure return value is used (LLVM/Clang).
-      mstask/tests: Make sure return values are used (LLVM/Clang).
-      mlang/tests: Remove unused assignment (LLVM/Clang).
-      mshtml/tests: Make sure return value is used (LLVM/Clang).
-      msxml3/tests: Remove unneeded assignment (LLVM/Clang).
-      hlink/tests: Don't check results in disabled tests (LLVM/Clang).
-      qmgr/tests: Make sure return values are used (LLVM/Clang).
-      cryptui/tests: Remove a dead assignment (LLVM/Clang).
-      dplayx/tests: Make sure to use return values (LLVM/Clang).
-      msi/tests: Make sure to use return values (LLVM/Clang).
-      localui/tests: Make sure to use return values (LLVM/Clang).
-      riched20/tests: Make sure return value is used (LLVM/Clang).
-      rpcrt4/tests: Make sure return values are used (LLVM/Clang).
-      shlwapi/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      version/tests: Make sure return values are used (LLVM/Clang).
-      user32/tests: Remove unneeded assignment (LLVM/Clang).
-      ws2_32/tests: Remove unneeded assignments (LLVM/Clang).
-      xmllite/tests: Don't check test results inside if(0) (LLVM/Clang).
-      windowscodecs/tests: Make sure returns values are used (LLVM/Clang).
-      kernel32/tests: Make sure to use return values (LLVM/Clang).
-      advapi32/tests: Remove useless assignments (LLVM/Clang).
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      gdiplus/tests: Make sure to use return values (LLVM/Clang).
-      shell32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      secur32/tests: Make sure a return value is used (LLVM/Clang).
-      winhttp/tests: Make sure a return value is used (LLVM/Clang).
-      mmdevapi/tests: Make sure return values are used (LLVM/Clang).
-      gdi32/tests: Make sure to use return value (LLVM/Clang).
-      mshtml/tests: Make sure return values are used (LLVM/Clang).
-      urlmon/tests: Make sure return values are used (LLVM/Clang).
-      d3dx9_36: Make sure return values are used (LLVM/Clang).
-      msi/tests: Make sure to use return values (LLVM/Clang).
-      msvcrt/tests: Remove useless assignment (LLVM/Clang).
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      gdi32/tests: Make sure to use return values (LLVM/Clang).
-      gdiplus/tests: Make sure to use return values (LLVM/Clang).
-      dsound/tests: Make sure to use a return value (LLVM/Clang).
-      ole32/tests: Make sure to use return values (LLVM/Clang).
-      shlwapi/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      user32/tests: Remove some dead assignments (LLVM/Clang).
-      gdiplus/tests: Make sure to use return values (LLVM/Clang).
-      gdiplus/tests: Remove redundant assignments (LLVM/Clang).
-      ntdll/tests: Make sure return value is used (LLVM/Clang).
-      mshtml/tests: Make sure return value is used (LLVM/Clang).
-      secur32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      oleaut32/tests: Make sure return value is used (LLVM/Clang).
-      shdocvw/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      msvcr90/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      msxml3/tests: Make sure return value is used (LLVM/Clang).
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      crypt32/tests: Make sure to use a return value (LLVM/Clang).
-      crypt32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      crypt32/tests: Make sure to use a return value (LLVM/Clang).
-      msi/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      msi/tests: Make sure to use a return value (LLVM/Clang).
-      kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      kernel32/tests: Make sure to use return values (LLVM/Clang).
-      secur32/tests: Make sure return values are used (LLVM/Clang).
-      shlwapi/tests: Remove useless assignments (LLVM/Clang).
-      ntdll/tests: Make sure a return value is used (LLVM/Clang).
-      shell32/tests: Make sure return values are used (LLVM/Clang).
-      shell32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      shell32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      shell32/tests: Make sure return values are used (LLVM/Clang).
-      shell32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      shell32/tests: Make sure a return value is used (LLVM/Clang).
-      shell32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      mshtml/tests: Make sure a return value is used (LLVM/Clang).
-      mshtml/tests: Make sure a return value is used (LLVM/Clang).
-      shell32: Trace APPBARDATA struct members based on message type (Valgrind).
-      gdi32: Add a stub for GdiDrawStream.
-      user32/tests: Make sure return values are used (LLVM/Clang).
-      ntdll/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      ole32/tests: Make sure to use return values (LLVM/Clang).
-      ole32/tests: Make sure to use a return value (LLVM/Clang).
-      ole32/tests: Make sure to use return values (LLVM/Clang).
-      urlmon/tests: Make sure to use a return value (LLVM/Clang).
-      ntdll/tests: Make sure return values are used (LLVM/Clang).
-      wine.inf: Add HKLM\\Software\\Microsoft\\Windows\\Current Version\\Run key.
-      msiexec: Add /unreg as an alias for /z.
-      oleaut32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      oleaut32/tests: Make sure a return value is used (LLVM/Clang).
-      oleaut32/tests: Make sure return values are used (LLVM/Clang).
-      oleaut32/tests: Make sure return values are used (LLVM/Clang).
-      oleaut32/tests: Remove dead assignments (LLVM/Clang).
-      oleaut32/tests: Don't check return values inside of if(0) (LLVM/Clang).
-      d3dx9_36/tests: Free memory after use (Valgrind).
-      advapi32/tests: Make sure to use return value (LLVM/Clang).
-      advapi32/tests: Make sure to use return value (LLVM/Clang).
+Andrew Nguyen (2):
+      configure: Check for additional libxml2 headers to reject inadequate libxml2 versions.
+      configure: Check for a modern sched_setaffinity prototype.
+
+André Hentschel (9):
+      advapi32: Add stub for EnableTraceEx.
+      odbccp32: Improve some stubs.
+      msvcrt/tests: Don't test function directly when reporting errno.
+      ntoskrnl.exe: Be more verbose in MmGetSystemRoutineAddress.
+      msvcrt: Implement _wfindfirst64.
+      msvcrt: Implement _wfindnext64.
+      winex11.drv: Quiet a noisy FIXME.
+      kernel32/tests: Add SetLastError() before a test (Valgrind).
+      t2embed: Add stub for TTEmbedFont.
+
+Austin English (33):
+      gdi32/tests: Remove win9x hacks.
+      kernel32/tests: Remove win9x hacks.
+      version/tests: Remove win9x hacks.
+      userenv/tests: Remove win9x hacks.
+      urlmon/tests: Remove win9x hacks.
+      spoolss/tests: Change skip() to win_skip().
+      shell32/tests: Remove win9x hacks.
+      oleaut32/tests: Remove win9x hacks.
+      oleaut32/tests: Fix a couple of todo_wine's.
+      msi/tests: Remove win9x hacks.
+      msxml3/tests: Remove win9x hacks.
       advapi32/tests: Remove Win9x hacks.
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      msi/tests: Remove dead assignments.
-      msi/tests: Make sure to use return values (LLVM/Clang).
-      gdiplus/tests: Make sure to use return values (LLVM/Clang).
-      inetmib1/tests: Remove a dead assignment (LLVM/Clang).
-      crypt32/tests: Remove a dead initialization (LLVM/Clang).
-      ole32/tests: Make sure to use a return value (LLVM/Clang).
-      kernel32/tests: Make sure to use return values (LLVM/Clang).
-      usp10/tests: Remove dead assignment (LLVM/Clang).
-      winmm/tests: Remove dead assignment (LLVM/Clang).
-      crypt32/tests: Make sure to use a return value (LLVM/Clang).
-      crypt32/tests: Make sure to use return values (LLVM/Clang).
-      d3d9/tests: Make sure to use return values (LLVM/Clang).
-      jscript/tests: Remove a dead assignment (LLVM/Clang).
-      comctl32/tests: Remove dead assignments (LLVM/Clang).
-      comctl32/tests: Make sure to use a return value (LLVM/Clang).
-      comctl32/tests: Make sure to use a return value (LLVM/Clang).
-      comctl32/tests: Make sure to use a return value (LLVM/Clang).
-      comctl32/tests: Make sure to use a return value (LLVM/Clang).
-      wintrust/tests: Remove win9x hacks.
-      mshtml/tests: Update disabled test comment.
+      advpack/tests: Remove win9x hacks.
+      comdlg32/tests: Remove win9x hacks.
+      cryptnet/tests: Remove win9x hacks.
+      comctl32/tests: Remove win9x hack.
+      d3d8/tests: Remove win9x hack.
+      dsound/tests: Remove win9x hack.
+      fusion/tests: Remove win9x hacks.
+      hlink/tests: Remove win9x hacks.
+      inetmib1/tests: Add missing broken().
+      kernel32/tests: Remove win9x hacks.
+      mlang/tests: Remove win9x hacks.
+      msi/tests: Remove win9x hacks.
+      gdi32/tests: Remove win9x hacks.
+      lz32/tests: Remove win9x hacks.
+      riched20/tests: Remove win9x hacks.
+      crypt32/tests: Remove win9x hacks.
+      rpcrt4/tests: Remove win9x hacks.
+      secur32/tests: Remove win9x hacks.
+      setupapi/tests: Remove win9x hacks.
+      ntprint/tests: Remove win9x hacks.
+      shlwapi/tests: Remove win9x hacks.
 
-Charles Davis (1):
-      mountmgr: Use the media kind to fill in the device type field on Mac OS.
+Charles Davis (2):
+      ntdll: Fix IOCTL_CDROM_RAW_READ on Mac OS.
+      ntdll: Implement CDROM_GetInterfaceInfo() on Mac OS.
 
-David Adam (1):
-      d3dx9_36: Add a few tests for D3DXCreateBox.
+Damjan Jovanovic (1):
+      winemenubuilder: FriendlyDocName isn't part of the association.
 
-Detlef Riekenberg (4):
-      winspool: Do not mark AddPrinterA as stub.
-      msi/tests: Fix a typo.
-      mshtml/tests: Fix a typo.
-      shlwapi: Add stubs for SHWinHelpOnDemandA/W.
+David Adam (2):
+      d3dx9_36: Add a test for D3DXCreateBox.
+      d3dx9_36: Implement ID3DXMesh_GetNumBytesPerVertex.
 
-Dmitry Timoshkov (4):
-      user32: Add a test for reparenting a WS_POPUP window to a WS_CHILD parent.
-      user32: Add message tests for SetParent().
-      mlang: GetGlobalFontLinkObject() takes a non-zero number of arguments.
-      user32: Use the windows created by the SetParent() test to get a more predictable active/focus window state.
+Dmitry Timoshkov (9):
+      user32: Cope with failing SetForegroundWindow().
+      gdi32: Add dumping of child GDI font cache.
+      gdi32: Go through all hfontlist entries not just the first one when checking whether font is in the child font list.
+      gdi32: Do not leak the hfont list (Valgrind).
+      gdi32: Use graphics mode specified at the EMF creation time when playing EMR_EXTTEXTOUT record.
+      gdi32: EnumFontFamilies should also match against fully qualified face name.
+      gdi32: Add a EnumFontFamilies test to see how it handles various font faces.
+      comctl32: 'clip' rect is unused in the WM_ERASEBKGND rebar class handler.
+      user32: Add a test to make sure that SendInput sets a non-zero event time.
 
-EG Galano (1):
-      gdiplus/tests: Make sure return value is used (LLVM/Clang).
+Dylan Smith (1):
+      d3dx9: Add stubs for D3DXCreateText.
 
-Francois Gouget (1):
-      comctl32/tests: Fix compilation on systems that don't support nameless unions.
+Erich Hoover (1):
+      shdocvw: Implement IWebBrowser::ExecWB and IWebBrowser::QueryStatusWB.
 
-Frédéric Delanoy (3):
+Frédéric Delanoy (1):
       po: Update French translation.
-      po: Update French translation.
-      po: Add missing \n in various po language files.
 
-Gerald Pfeifer (6):
-      comctl32/tests: Avoid uninitialized variable warning in GetWidthBytes().
-      wined3d: Remove an old hack around Mesa choking on protected memory from flush_to_framebuffer_drawpixels.
-      comctl32/tests: Remove unused parameter from test_removeimage().
-      wpp: Fix the output type for the "unsigned OP signed" cases in BIN_OP_INT and friends.
-      wpp: Add explicit casts when mixing signed and unsigned integers.
-      winmm: Simplify MCI_DumpCommandTable a bit.
+Gerald Pfeifer (1):
+      wpp: Add explicit casts when mixing unsigned and signed integers.
 
-Hans Leidekker (4):
-      msi: Split up resolve_folder.
-      msi/tests: Show that a failing call to MsiGetSourcePath(SOURCEDIR) sets the SOURCEDIR property.
-      msi: Get rid of msi_component_set_state and msi_feature_set_state.
-      msi: Preserve existing advertise strings in the PublishComponents action.
+Hans Leidekker (9):
+      msi: Fix a trace.
+      appwiz.cpl: List 32-bit applications on 64-bit platforms.
+      uninstaller: List 32-bit applications on 64-bit platforms.
+      msi: A custom action dll failing to load is not a fatal error.
+      netapi32: Try running the smbpasswd tool in NetUserChangePassword.
+      server: Map the Unix user id to a local user SID instead of the interactive SID.
+      advapi32: Use a fixed computer SID that matches local user SIDs.
+      userenv: GetProfilesDirectoryW accepts a NULL buffer.
+      userenv: Implement and test GetUserProfileDirectory.
 
-Huw Davies (5):
-      oleaut32: Rewrite ITypeInfo_GetDocumentation proxy/stub to return only the information that is requested.
-      oleaut32: Implement proxy / stub for ITypeInfo_GetDllEntry.
-      oleaut32: Implement proxy / stub for ITypeInfo2_GetDocumentation2.
-      oleaut32: Implement proxy / stub for ITypeLib_GetDocumentation.
-      oleaut32: Implement proxy / stub for ITypeLib2_GetDocumentation2.
+Henri Verbeet (20):
+      wined3d: Filter sRGB capabilities during format initialization.
+      wined3d: Recognize some Northern Islands cards in select_card_ati_mesa().
+      wined3d: Merge device_unload_resource() and reset_unload_resources().
+      wined3d: Remove IWineD3DResource::UnLoad() from the public interface.
+      wined3d: Pass const resources to some resource functions.
+      wined3d: Make IWineD3DResourceImpl an independent structure.
+      wined3d: Rename ATI to AMD.
+      wined3d: Recognize some Nouveau renderer strings.
+      wined3d: The basetexture_set_dirty() return value is never used.
+      wined3d: Use basetexture_set_dirty() in some more places.
+      wined3d: Standalone surfaces should never be sRGB.
+      wined3d: Retrieve the surface's texture name through a function.
+      wined3d: Retrieve the GL texture through a function.
+      wined3d: Add support for EXT_texture_sRGB_decode.
+      wined3d: Use EXT_texture_sRGB_decode to avoid sRGB texture duplication.
+      wined3d: Pass gl_info to basetexture_bind().
+      wined3d: Pass gl_info to surface_bind().
+      ddraw: Just pass NULL as index buffer parent.
+      wined3d: Remove COM from the buffer implementation.
+      wined3d: Get rid of the IWineD3DBuffer typedef.
 
-Hwang YunSong (1):
-      po: Update Korean resource.
+Huw Davies (4):
+      oleaut32: Mask off the lsb from the vtbl offset. This is set when the user specifies an offset in ICreateTypeInfo.
+      oleaut32: Fix the typelib marshaler when the vtbl has holes.
+      widl: Initialise [out] only conformant arrays.
+      gdi32: Remove a wayward CDECL.
 
-Igor Egorov (1):
-      kernel32: Add stderr redirection for native Unix programs started from Windows program.
+Jacek Caban (39):
+      include: Make some include guards compatible with MS headers.
+      jscript: Added SetScriptState(SCRIPTSTATE_UNINITIALIZED) implementation.
+      jscript: Added more uninitialization tests.
+      wscript: Added tests.
+      urlmon: Register MIME filter only for bindings testing them.
+      mshtml: Added IHTMLElement4 stub implementation.
+      mshtml.idl: Added DispHTMLDOMAttribute declaration.
+      mshtml: Added IHTMLElement4::getAttributeNode implementation.
+      mshtml: Added IDispatchEx support to HTMLDOMAttribute object.
+      mshtml: Added attribute object tests.
+      mshtml: Make sure we don't try to create node object for attributes.
+      mshtml: Improved debug traces.
+      mshtml: Added IHTMLDOMAttribute::get_nodeValue implementation.
+      mshtml: Moved call_disp_func to htmlevent.c.
+      mshtml: Added IHTMLStyle::[get|put]_backgroundPosition implementation.
+      mshtml: Fixed buffer handling in set_nsstyle_attr.
+      mshtml: Moved VARIANT to style value string conversion to separated function.
+      mshtml: Reimplement IHTMLStyle::put_backgroundPositionX using background-position property.
+      mshtml: Reimplement IHTMLStyle::get_backgroundPositionX using background-position property.
+      mshtml: Reimplement IHTMLStyle::put_backgroundPositionY using background-position property.
+      mshtml: Reimplement IHTMLStyle::get_backgroundPositionY using background-position property.
+      mshtml: Added more backgroundPosition* tests.
+      jscript: Fixed corner cases in parseInt implementation.
+      mshtml: Fixed typos in IHTMLInputElement::value tests.
+      mshtml: Store style filter in HTMLStyle object.
+      mshtml: Store style object in element object.
+      mshtml: Added simple filter parser to support opacity.
+      mshtml: Added IHTMLFormElement::onsubmit implementation.
+      mshtml: Fixed memory leak.
+      mshtml: Added support for canceling default event behavior.
+      mshtml: Added onsubmit and event canceling tests.
+      mshtml: Added IHTMLFormElement::get_elements implementation.
+      mshtml: Added IHTMLLocation::replace implementation.
+      mshtml: Correctly handle NULL BSTR in VARIANT in IDispatchEx implementation.
+      mshtml: Reuse attribute objects.
+      mshtml: Use our IDispatchEx-based attributes implementation instead of nsIDOMAttr.
+      mshtml: Added more attribute object tests.
+      mshtml: Fixed use after free in HTMLElement_destructor.
+      mshtml: Added support for indexed access to form elements.
 
-Igor Paliychuk (4):
-      po: Update Ukrainian translation.
-      cryptui: Fix French translation.
-      wininet: Fix translations.
-      wordpad: Improve translations.
+Jerome Leclanche (1):
+      winemenubuilder: Make sure extension-based mimetypes are always lowercase.
 
-Jacek Caban (21):
-      mshtml: Added IHTMLWindow2::focus implementation.
-      mshtml: Added focus events tests.
-      mshtml: Use case insensitive comparison in parse_classid.
-      urlmon: Don't hardcode zone numbers.
-      mshtml: Return size in about protocols handler's ParseUrl(PARSE_SECURITY_URL) call.
-      mshtml: Fixed size check in res protocol ParseUrl(PARSE_SECURITY_URL) call.
-      urlmon: CoInternetGetSecurityUrl rewrite.
-      urlmon: CoInternetGetSecurityUrlEx rewrite.
-      urlmon: Added more CoInternetGetSecurityUrl[Ex] tests.
-      mshtml: Make nsIURI::[Get|Set]Username implementation IUri-based.
-      appwiz.cpl: Added support for installing packages from MSI files.
-      dsound.h: Added DSBNOTIFICATIONS_MAX definition.
-      dvdmedia.h: Added MPEG2VIDEOINFO declaration.
-      urlmon: Fixed Valgrind warnings.
-      urlmon: Get rid of init variable in stgmed_buf_t.
-      urlmon: Read remaining protocol data if report_data was called after binding finished.
-      urlmon: Properly handle BINDSTATUS_BEGINDOWNLOADDATA.
-      urlmon: Get rid of no longer needed buffering in stgmed_buf_t.
-      mshtml: Fixed a leak (valgrind).
-      msxml3: Silence QueryInterface FIXME.
-      urlmon: Use winetest page URL for abort test.
+John Edmonds (4):
+      gdi32/tests: Added tests for copying a single pixel from top down and bottom up bitmaps.
+      gdi32: Fixed GetDIBits for top-down bitmaps.
+      gdi32/tests: Updated tests for top-down destination bitmaps.
+      gdi32: Fixes GetDIBits for top-down destination bitmaps.
 
-Janne Hakonen (1):
-      iphlpapi: Changed return value of NotifyAddrChange() stub and added test cases.
-
-Joris Huizer (6):
-      imagehlp/tests: Don't test function directly when reporting GetLastError().
-      kernel32/tests: Don't test function directly when reporting GetLastError().
-      user32/tests: Don't test function directly when reporting GetLastError().
-      ws2_32/tests: Don't test function directly when reporting GetLastError().
-      shdocvw: Initialise ie pointer as it's tested (Clang).
-      crypt32: Remove helper variable i (Clang).
+Joris Huizer (1):
+      userenv: GetUserProfileDirectoryW: Plug memory leak.
 
 Juan Lang (17):
-      wintrust/tests: Fix a leak (valgrind).
-      crypt32/tests: Update a CryptMsgUpdate call to succeed on more Windows versions, and check its return value (Clang).
-      crypt32/tests: In more recent Windows versions, updating a data message with no content succeeds.
-      crypt32: Allow updating data messages with no content.
-      rsaenh/tests: Test errors creating schannel keys and hashes before parameters are set.
-      rsaenh: Disallow creating schannel master hashes before setting the client random and server random.
-      rsaenh: Disallow deriving schannel encryption keys before setting the encryption algorithm.
-      crypt32: Don't attempt to find the length of a NULL string (valgrind).
-      rsaenh: Fully initialize schannel algorithm information.
-      crypt32: Fix return value (clang).
-      crypt32: Fix return value in error cases (clang).
-      crypt32: Don't assume a function succeeded (clang).
-      crypt32: Don't assign a count value unless memory allocation succeeds (clang).
-      crypt32/tests: Remove an unused assignment (clang).
-      crypt32/tests: Test a return value (clang).
-      crypt32/tests: Test return value (clang).
-      wintrust/tests: Fix a leak (valgrind).
+      cryptnet: Delete existing cache entries when out of date.
+      wininet: Rename variables for readability.
+      wininet: De-Hungarian auth cache member names.
+      wininet: De-Hungarian appinfo member names.
+      wininet: De-Hungarian session member names.
+      wininet: De-Hungarian HTTP request member names.
+      wininet/tests: Test retrieving http requests from cache.
+      wininet: Use correct scheme for cache entries.
+      wininet: Support setting the expired time in SetUrlCacheEntryInfo.
+      wininet: Store entries in url cache with valid expiration date.
+      wininet: Default to 10 minutes expiration for cache entries.
+      wininet: Default to 10 minutes expiration for cache entries.
+      wininet: Support the Cache-Control max-age directive for setting url cache entry expiration.
+      wininet: Move creating cache file to a helper function.
+      include: Add some missing definitions.
+      wininet: Fix off-by-one error.
+      wininet: Remove outdated comment.
 
 Jörg Höhle (2):
-      msvcrt: sizeof(long double) is 12 with MS, but not necessarily so on UNIX.
-      msvcrt/tests: sizeof(long double) is 12 with MS.
+      winmm: Let WideCharToMultiByte search for NUL string terminator (Valgrind).
+      mciwave: Fix a leak when Open fails (valgrind).
 
-Ken Thomases (3):
-      user32: Rename GetKeyboardLayout param; it's a thread ID, not a layout.
-      user32: Remove wrong parameter name from comment.
-      iphlpapi: Enable non-privileged ICMP (ping) on Mac OS X.
+Maarten Lankhorst (7):
+      gdiplus: Implement in-memory font storage.
+      gdi32: Handle BITMAP_CopyBitmap correctly for negative heights.
+      mshtml: Make sure system xpcom dll gets loaded.
+      ntdll: Fix time accounting in NtQuerySystemInformation.
+      gdiplus: Clean up gdip_format_string.
+      gdiplus: Add tests and fix GdipDrawImagePointsRect.
+      gdiplus: Implement GdipAddPathString.
 
-Maarten Lankhorst (2):
-      riched20: Do not call callback when no data needs to be flushed.
-      dsound: Forcibly lock buffers to be mixed.
+Marcus Meissner (19):
+      wineoss.drv: Fixed incorrect sizeof() (Coverity).
+      rsaenh: Fixed bad sizeof() usage (Coverity).
+      kernel32: Fixed mismatched bracket (Coverity).
+      cryptui: Fixed bad sizeof() (Coverity).
+      dbghelp: Fixed pasted size error (Coverity).
+      regedit: fgetc() gets int, not char (Coverity).
+      user32: Move functional code out of assert() (Coverity).
+      user32: Remove side effect code out of asserts() (Coverity).
+      winedump: Remove double assignment (Coverity).
+      msvcrt: Use = instead of == in test (Coverity).
+      ws2_32: name is never NULL as array (Coverity).
+      user32: Fixed some more side effect functions in assert() (Coverity).
+      server: Avoid shadowing a global variable.
+      kernel32: Avoid shadowing "status" variable.
+      shdocvw: Rewrite code to make more understandable (Coverity).
+      oleaut32: Local variable goes out of scope via pointer (Coverity).
+      dbghelp: Local variable used out of scope (Coverity).
+      msi: Pointer to out of scope local variable (Coverity).
+      msvcrt: Move side effect out of assert (Coverity).
 
-Matteo Bruni (3):
-      d3dcompiler: Include the string terminator in the output blob.
-      wined3d: Make clip planes independent from offscreen/onscreen drawing.
-      d3d9/tests: Add a test for clip planes.
+Matteo Bruni (7):
+      d3dcompiler: Fix initial allocation (Valgrind).
+      d3dx9: Remove a couple of spurious assignments (LLVM/Clang).
+      d3dx9: Remove an unnecessary initialization (LLVM/Clang).
+      d3dx9/tests: Remove spurious assignment (LLVM/Clang).
+      wpp: Free strings on define deletion (Valgrind).
+      wpp: Let pp_add_define take the responsibility of copying strings (Valgrind).
+      d3dx9: Fix memory access for images with less than 4 bytes per pixel (Valgrind).
 
-Max TenEyck Woodbury (2):
-      c2man: Search sub-directories for headers too.
-      c2man: Add header's subdirectory and a link to its source file in the 'IMPLEMENTATION' notes.
+Michael Stefaniuc (3):
+      storage.dll16: Remove unused struct declaration.
+      msxml3: COM cleanup for the IDispatchEx iface.
+      storage.dll16: COM cleanup in storage.c.
 
-Nicholas Niro (1):
-      winex11.drv: Add proper initialization for border_pixel.
+Nikolay Sivov (28):
+      msxml3: Store document event handler for ready state notification.
+      msxml3: Remove useless parts of schema cleanup helper.
+      msxml3: Use helper to consistently dump variant parameters.
+      msxml4: Add version info.
+      msxml3: Remove forward to removeChild() method for nodes.
+      msxml3: Remove appendChild() forward.
+      msxml3: Remove hasChildNodes() forward.
+      msxml3: Remove get_ownerDocument() forward.
+      msxml3: Remove get_text() forward.
+      msxml3: Remove selectNodes() forward.
+      msxml3: Remove selectSingleNode() forward.
+      msxml3: Remove transformNode() forward.
+      msxml3: Get rid of not longer used internal IXMLDOMNode vtable.
+      comctl32/comboex: Reduce variable scope.
+      comctl32/datetime: Fix use of out-of-scope local buffer (Coverity).
+      comctl32/rebar: Don't use local variable with the same name as function parameter (Coverity).
+      comctl32/listview: Fix dead condition (Coverity).
+      comctl32/ipaddress: Use array index after range check (Coverity).
+      oleaut32: Fix sizeof() usage (Coverity).
+      msxml3/tests: Remove broken test and parameter check.
+      msxml3: Reject xmlns attribute to be added to element.
+      msxml3: Always set out pointer to null on failed QueryInterface.
+      msxml3: Add get_output() implementation for processor.
+      msxml3: Fail on certain node types in insertBefore() for attributes, remove broken tests.
+      msxml3: Link dom attribute with parent interface pointer.
+      msxml3: Test insertBefore() behaviour with node relinking, simplify common test cases.
+      msxml3: Remove child with parent method first before insert with insertBefore().
+      msxml3: Test to show namespace definition output for children.
 
-Nikolay Sivov (12):
-      comctl32/listview: Remove couple of dead assignments (LLVM/Clang).
-      comctl32/listview: Remove some useless operations (LLVM/Clang).
-      comctl32/listview: Remove duplicated operation (LLVM/Clang).
-      comctl32/tests: Test more return values (LLVM/Clang).
-      urlmon/uri: Remove dead assignment and useless initializer (LLVM/Clang).
-      msxml: Add IXSLTemplate stub.
-      msxml3: Add basic putref_stylesheet() implementation.
-      msxml3: Add a stub IXSLProcessor.
-      msxml3: Basic put_input() method for IXSLProcessor.
-      msxml3: Store output stream for processor.
-      msxml3: Initial implementation of transform() method.
-      msxml3: Null pointer for schema uri should be treated as empty.
+Paul Vriens (1):
+      msi: Add a missing va_end() (Coverity).
+
+Peter Schellenbach (1):
+      oleaut32: Fixed short time & medium time named formats.
 
 Peter Urbanec (5):
-      setupapi: Fix comparison issue on 64-bit systems.
-      gdi32/tests: Use virtual screen size instead of primary monitor screen size.
-      d3d8/tests: Use primary monitor screen size to perform tests.
-      d3d9/tests: Use primary monitor screen size to perform tests.
-      jscript: Implement character escaping as described by ECMA-262 B.2.1.
+      gdi32: Fix 64-bit pointer issues when copying upside-down bitmaps.
+      comctl32: Use signed indices, so that the number of parts can be set to zero.
+      comctl32/tests: Enable statusbar tooltip tests.
+      comctl32: Add a check for setting number of parts in the statusbar to zero.
+      wintab32: Better handling of XInput initialisation errors.
 
-Reece Dunn (1):
-      winefile: In the Options > Font menu handler, initially select the current font.
+Rafał Mużyło (1):
+      winealsa.drv: Drop redundant calls.
 
-Rico Schüller (9):
-      d3dcompiler: Parse OSG5 in the reflection interface.
-      d3dcompiler: Parse bound resources.
-      d3dcompiler: Implement ID3DShaderReflection::GetResourceBindingDesc().
-      d3dcompiler: Implement ID3DShaderReflection::GetResourceBindingDescByName().
-      d3dcompiler: Add argument check in D3DReflect().
-      d3dcompiler/tests: Add reflection test.
-      d3dcompiler/tests: Add reflection vs desc test.
-      d3dcompiler/tests: Add reflection ps desc test.
-      d3dcompiler/tests: Add GetResourceBindingDesc() test.
+Rico Schüller (28):
+      d3dcompiler: Parse reflection constant buffers.
+      d3dcompiler: Implement ID3D11ShaderReflection::GetConstantBufferByIndex().
+      d3dcompiler: Implement ID3D11ShaderReflection::GetConstantBufferByName().
+      d3dcompiler: Implement ID3D11ShaderReflectionConstantBuffer::GetDesc().
+      d3dcompiler: Parse reflection variables.
+      d3dcompiler: Parse reflection types.
+      d3dcompiler: Implement ID3D11ShaderReflectionConstantBuffer::GetVariableByIndex().
+      d3dcompiler: Implement ID3D11ShaderReflectionConstantBuffer::GetVariableByName().
+      d3dcompiler: Implement ID3D11ShaderReflectionVariable::GetDesc().
+      d3dcompiler: Implement ID3D11ShaderReflectionVariable::GetBuffer().
+      d3dcompiler: Implement ID3D11ShaderRefleflection::GetVariableByName().
+      d3dcompiler: Implement ID3D11ShaderReflectionType::GetDesc().
+      d3dcompiler: Implement ID3D11ShaderReflectionVariable::GetType().
+      d3dcompiler: Fix SystemValueType for pixelshader output signature.
+      d3dcompiler/tests: Add reflection ps output desc test.
+      d3dcompiler: Reorder section parsing to reflect the order from the shader blob.
+      d3dcompiler/tests: Add constant buffer test.
+      d3dcompiler/tests: Improve test_reflection_bound_resources().
+      d3dcompiler: Parse member types.
+      d3dcompiler: Implement ID3D11ShaderReflectionType::GetMemberTypeByIndex().
+      d3dcompiler: Implement ID3D11ShaderReflectionType::GetMemberTypeByName().
+      d3dcompiler: Implement ID3D11ShaderReflectionType::GetMemberTypeName().
+      d3dcompiler: Use defines for shader target masks.
+      d3dcompiler/tests: Add GetMemberType* tests.
+      d3dcompiler: Implement ID3D11ShaderReflectionType::IsEqual().
+      d3dcompiler: Move some code from header to source file.
+      d3dcompiler: Add debug helper for shader variable class.
+      d3dcompiler: Add debug helper for shader variable type.
 
-Stefan Dösinger (1):
-      d3d9: Use a proper window class for the query test.
+Thomas Mullaly (1):
+      mshtml/tests: Make IDispatch Vtbl const.
 
-Thomas Mullaly (2):
-      urlmon: Fixed invalid read and write errors (Valgrind).
-      mshtml: Fixed a few typos.
+Vincent Povirk (8):
+      msvcrt: Try to call CorExitProcess instead of ExitProcess on exit.
+      mscoree: Overhaul of mono runtime shutdown process.
+      mscoree: Always return S_FALSE from DllCanUnloadNow.
+      gdiplus: Test writes with conversion and without a user buffer.
+      gdiplus: Copy the bits on bitmap unlock if the write flag is set.
+      gdiplus: Don't copy bits into the buffer when a bitmap is locked write-only.
+      gdiplus: Copy only the area requested when (un)locking bitmaps.
+      gdiplus: Implement ImageLockModeUserInputBuf.
 
-Vincent Povirk (6):
-      windowscodecs: Release the icon frame substream on success too.
-      gdiplus: Allow adding rectangles with negative sizes to paths.
-      gdiplus: Fix error path in GdipAddPathRectangle.
-      gdiplus: Store an ImageAttributes in texture brushes.
-      gdiplus: Add test for ImageLockModeUserInputBuf.
-      gdiplus: Add tests for locked image bit reading/writing.
-
-Yaron Shahrabani (1):
-      po: Hebrew update.
+Wolfram Sang (3):
+      user32/tests: Modify proper fields instead of magic offsets.
+      user32: Make DIB_GetBitmapInfo checks stricter.
+      user32: Check bitmap info before it is used.
 
 --
 Alexandre Julliard
diff --git a/VERSION b/VERSION
index 6c31a63..9301c24 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.3.14
+Wine version 1.3.15
diff --git a/configure b/configure
index 0d51b26..51321db 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.67 for Wine 1.3.14.
+# Generated by GNU Autoconf 2.67 for Wine 1.3.15.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -552,8 +552,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.3.14'
-PACKAGE_STRING='Wine 1.3.14'
+PACKAGE_VERSION='1.3.15'
+PACKAGE_STRING='Wine 1.3.15'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -1374,7 +1374,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.3.14 to adapt to many kinds of systems.
+\`configure' configures Wine 1.3.15 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1443,7 +1443,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.3.14:";;
+     short | recursive ) echo "Configuration of Wine 1.3.15:";;
    esac
   cat <<\_ACEOF
 
@@ -1589,7 +1589,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.3.14
+Wine configure 1.3.15
 generated by GNU Autoconf 2.67
 
 Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2107,7 +2107,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.3.14, which was
+It was created by Wine $as_me 1.3.15, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   $ $0 $@
@@ -16098,7 +16098,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.3.14, which was
+This file was extended by Wine $as_me 1.3.15, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16169,7 +16169,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.3.14
+Wine config.status 1.3.15
 configured by $0, generated by GNU Autoconf 2.67,
   with options \\"\$ac_cs_config\\"
 
