diff --git a/ANNOUNCE b/ANNOUNCE
index 342fbac..d7ca31c 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,17 +1,18 @@
-The Wine development release 1.3.17 is now available.
+The Wine development release 1.3.18 is now available.
 
 What's new in this release (see below for details):
-  - Implementation of the new Vista file dialogs.
-  - Initial support for patching in MSI installers.
-  - Improvements to the calendar control.
-  - A few fixes for file associations.
-  - Menus cleaned up in built-in applications.
+  - Support for mouse pointer clipping.
+  - Raw mouse events support using XInput2.
+  - First steps of a DIB engine implementation.
+  - More properties supported in DXDiag.
+  - New security tab in the Internet control panel.
+  - Improved video playback on Mac OS X.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.17.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-1.3.17.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.18.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.3.18.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -27,459 +28,464 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.3.17:
+Bugs fixed in 1.3.18:
 
-   2277  Redraw/refresh errors for Remote Assault demo
-   2596  segmentation fault with Microsoft Flight Simulator 98
-   4812  Fractal Mapper: fill patterns get wrong
-   6495  Civilization 2 crashes on load after game complains about audio driver
-   8640  Oziexplorer Save Image Problem
-   9544  Semi transparency in .ico files is ignored
-  12017  py2exe fails because fixme:resource:get_resource_section .rsrc isn't the last section
-  12220  Joystick POV (hatswitch) doesn't work
-  12275  Democracy crashes in wined3d
-  13124  Graphical glitches in cursor for Diner Dash Hometown Hero
-  14181  Mouse position in Steam tray menu is incorrect
-  15220  fails to run PeachTree Accounting 8.0
-  15355  REFPROP fails to calculate any values
-  16391  Protel 99: text rotation misbehavior
-  16426  Rapid Uploader: Crash with file open dialog
-  16742  ntdll/directory.c: passing argument from incompatible pointer type
-  17185  Quicktime 7.1.6 buffer overrun on exit
-  17431  the +message debug channel can cause crashes when printing sent messages
-  17520  mshtml/dom test times out if +heap enabled
-  17971  GCC optimisations cause workaround for Slingplayer bug 13371 to fail
-  18708  Amazon MP3 Downloader: Toolbar doesn't work
-  19312  Can not close IE8
-  19434  ActiveState ActiveTcl installer fail to install due to path write permission
-  19596  Sony Ericsson PC Suite 5 fails to install
-  19601  "Master Blaster 2006" hangs in infinite loop
-  19929  Slingplayer's UI does not draw
-  20020  Metal Fatigue hangs on intro movies if audio is enabled
-  20119  Need for Speed Porsche 2000 / Unleashed: Text displayed incorrectly
-  20234  Gomez Peer auto-update fails
-  20245  2gis does not work
-  20435  Barnes and Noble EReader crashes on startup
-  20660  .net1.1 sp1 will not install
-  21039  AtcWindows - modal windows don't stay on top
-  21265  PCBSD crash handler  encountered error while trying to start bin/wine
-  21613  Stack buffer read overflow in GdipCreateBitmapFromScan0
-  21690  Turbo Lister page fault when selecting "register now" in help page
-  21698  Cake Mania only runs in a virtual desktop on first run
-  22398  7-Zip 64bit msi - Filesystem browser doesn't work at all
-  23000  Delphi Apps can't open/save files in vista+ mode
-  23134  iexplore does not correctly detect proxy details
-  23276  igneous game : Graphical error
-  23416  PAF5 help content panel is blank for most chapters.
-  23888  1by1 Player version 1.70 freezes.
-  23946  Radiobuttons and checkboxes not shown in .Net apllications
-  23956  Verizon Media Manager needs native gdiplus to show text
-  24025  Pando-based downloaders (League of Legends, Atlantica Online) missing background image
-  24149  64-bit iexplore crashes on http://www.irongeek.com/browserinfo.php
-  24301  ICO parsing needs an improvement
-  24437  Barnes & Noble Nook for PC (eReader 2.5) doesn't show the text of books
-  24449  TomTom HOME2 fails to start - gives a backtrace
-  24484  Hegemony: Philip of Macedon installer complains "Couldn't create instance of IKnownFolderManager"
-  24835  Graphical corruption in Verizon Media Manager without native GDIplus
-  24928  WoW 4.x D3D: Water Detail and Sunshafts cannot be enabled fully in d3d9
-  24959  Impulse crash after login
-  25389  EA Create demo: fails without native msvcp90
-  25471  problem on menus from DexExpress Delphi application component
-  25680  Stale file associations are not properly removed
-  25698  Black Prophecy and other Pando installers don't render properly
-  25770  KOTOR2 : Crash when leaving Telos with the Ebon Hawk
-  25827  msi install/package tests fail on clang
-  25873  PAF5 now crashes is using the help viewer and clicking four chapter titles
-  25949  Divinity 2: The Dragon Knight Demo - fails to start with builtin msvcr80 (purist)
-  26086  TurboTax 2011: initial setup screen is mostly gray
-  26125  msvcrt/cpp tests show a few memory leaks under valgrind
-  26126  msvcrt/printf test shows an invalid/read write under valgrind
-  26127  msvcrt/locale tests show a few uninitialized variables under valgrind
-  26175  Theme internals on 64 bit enters infinite loop after crash
-  26207  AVRStudio 4 : crashes when connecting to the programmer using COM port
-  26232  Dragon Age 2 demo crashes with builtin msvcr90
-  26281  regedit: Doesn't export decent newline in Unicode (NT5) Format.
-  26288  Cain and Abel: No permission to open .tmp file
-  26440  unimplemented function WS2_32.dll.GetNameInfoW
-  26456  ldap_set_option with LDAP_OPT_OFF does not work
-  26471  Free FLV Converter: Fails to start
-  26483  WavePad: Unimplemented function traffic.dll.TcDeregisterClient
-  26493  iMesh: Fails to install
-  26494  Office 2007 installer terminates on start
-  26497  Lost Saga downloader fails because IsValidURL doesn't like first parameter
-  26501  IDAfree needs uxtheme.OpenThemeDataEx
-  26505  file associations built by winemenubuilder lack wineprefix
-  26508  Atom Zombie Smasher demo window is not fullscreen
-  26514  Matlab 2009a: Fails to start
-  26535  Escaped spaces in desktop entries
-  26577  eBay Turbo Lister 7 fails to install
-  26596  FTBFS: RTLD_NOW, MessageBoxA, and MB_OK undefined in JACK_DriverProc()
+   1918  PostMessage(hwnd,WM_QUIT,0,0) doesn't exit the message loop
+   4553  Future Cop doesn't start
+   5559  rendering problem in Beyond Good and Evil
+   7663  War Of the Ring Demo aborts silently on startup
+   9026  division by zero in winealsa
+  13387  Crysis patcher fails
+  14045  SketchUp was unable to initialize OpenGL
+  15304  Running any Half-Life based game in "Windowed Mode" corrupts mouse movement
+  15394  Activating a single item menu using a hotkey doesn't execute the menu item command
+  16187  Google Sketchup Layout crashes on startup (needs TIFF encoding)
+  19191  Adobe Updater 6: unable to install updates for Adobe Reader 9
+  19960  NtQuerySystemInformation( SystemProcessorPerformanceInformation returns stale and incorrect values
+  20998  Anarchy Online starting up slowly and KDE panel shown fullscreen
+  22282  Dragon Age: Origins mouse control glitches
+  23509  SetThreadAffinityMask() doesn't work correctly anymore
+  23830  KKBOX 4.2.0.158 crashes
+  23962  Borderlands will not start
+  24134  Demos on dhpoware website won't run without native msvcp100.dll
+  24359  dbghelp has lots of 'elf_new_wine_thunks Duplicate' (gcc 4.6)
+  24870  thief gold multiprocessor bug not affected by taskset or schedtool.
+  25321  Osu! doesn't run in OpenGL mode
+  25407  Office 2007 SP2 installer reports success but fails to install some components
+  25520  Unreal Gold (gog.com version) crashes
+  25653  ratGPU standalone renderer hits unimplemented function MSVCR90.dll.__CxxFrameHandler3 on x86_64
+  25825  kernel32:debugger tests fail under clang
+  25920  winedbg does not work under clang
+  25975  Edge of Chaos window display does not update
+  26013  Brigade E5 crashes at startup
+  26023  Live Messenger 2009 crashes on start, needs msvcr80.dll._mbslwr_s
+  26026  Installation of ICBC online bank Active Control needs scarddlg.dll
+  26266  Moving the mouse ingame causes it to halt in Retribution Engine
+  26284  Crysis 2 demo needs msvcr90.dll._snscanf (purist)
+  26381  mcmap.exe help text is wrong
+  26418  Guitar Hero World Tour: Playstation 3 (ps3) hardware detection in game
+  26482  Typo in c2man.pl leads to FTBFS
+  26509  dbghelp gives a ton of duplicate symbols under clang
+  26564  Sinking Island: exception occurs on exit
+  26591  Slingplayer 2 crashes when clicking on "Log in" when compiled with gcc -O0
+  26599  ip-tv player not switch to fullscreen
+  26627  Z doesn't install (needs ole2disp.SETERRORINFO)
+  26632  MultiByteToWideChar with MB_ERR_INVALID_CHARS doesn't fail for some code points.
+  26650  MS Office 2007 won't install
+  26675  Lots of black surfaces and textures in Dungeon Keeper 2
+  26679  Warcraft 3 stops rendering when pressing the left mouse button (selecting several units)
+  26689  Creative Writer 2 crashes after opening some sets of files consecutively
+  26720  hifree required InternetSetW with INTERNET_OPTION_DATA_SEND_TIMEOUT
+  26728  d3d_compiler/reflection test shows a ton of valgrind warnings
+  26732  Winecfg: tab text is missing
+  26733  AutoCAD 2008: Hang-up at start-up
+  26735  It should be possible to select Windows 2008 R2
+  26777  Games for Windows Live fails to start without native windowscodecs
 
 ----------------------------------------------------------------
 
-Changes since 1.3.16:
+Changes since 1.3.17:
 
-Akihiro Sagawa (2):
-      inetcpl.cpl: Update Japanese translation.
-      po: Update Japanese translation.
+Akihiro Sagawa (6):
+      gdi32/tests: Add a test for a charset enumeration order.
+      gdi32: Move charset enumeration to helper function.
+      gdi32: Remove redundant charset assignments.
+      gdi32: Create charset enumeration order list for EnumFontFamiliesEx.
+      kernel32/tests: Add a test for undefined byte character conversion.
+      libwine: MB_ERR_INVALID_CHARS makes an error when the undefined byte character is used.
 
-Alexandre Julliard (14):
-      c2man: Fix a typo.
-      gdi32: Don't require a valid point as input to OffsetViewport/WindowOrgEx.
-      msxml3/tests: Avoid size_t in a trace.
-      winealsa.drv: Remove unnecessary ifdefs.
-      wineoss.drv: Remove unnecessary ifdefs.
-      wineesd.drv: Remove unnecessary ifdefs.
-      winenas.drv: Remove unnecessary ifdefs.
-      winejack.drv: Remove unnecessary ifdefs.
-      winejoystick.drv: Remove unnecessary ifdefs.
-      winecoreaudio.drv: Remove unnecessary ifdefs.
-      server: Reset the cursor clip rectangle when the foreground thread changes.
-      user32: Reset the cursor clip rectangle before moving a window.
-      server: Store all desktop cursor information in a separate structure.
-      server: Return the time of last change along with the current cursor position.
+Alexandre Julliard (29):
+      gdi32: Use the hdc from the generic physdev structure in metafiles.
+      gdi32: Use the hdc from the generic physdev structure in enhanced metafiles.
+      server: Don't run low-level hooks in debugged processes.
+      server: Add a more general way of posting messages to the desktop window.
+      server: Post a message to the desktop window when the cursor clip rectangle changes.
+      winex11: Implement cursor clipping using a pointer grab.
+      winex11: Add an option to disable pointer grabs.
+      winex11: Always forward SetCursor to the driver, and limit the frequency of updates on the driver side.
+      winex11: Update the cursor on the clipping window while it's mapped.
+      user32: Avoid accessing the dialog info of a destroyed window.
+      winex11: Update the cursor on the clip window when the pointer grab starts.
+      winex11: Simplify the event handler lookup, and support names in debug traces for extension events.
+      server: Fix a memory leak.
+      server: Queue a WM_MOUSEMOVE message when the cursor position is explicitly changed.
+      server: Warp the mouse inside the clipping rectangle when it's set.
+      server: Don't queue a hardware WM_MOUSEMOVE if the position hasn't changed.
+      gdi32: Avoid reading bits outside of the glyph bitmap in GetGlyphOutline.
+      gdi32: Fix a compiler warning on 64-bit.
+      winex11: Get rid of the old ddraw HAL support.
+      winex11: Add infrastructure for managing the extra data of generic extension events.
+      winex11: Build the mouse input structure directly in the mouse event handlers.
+      configure: Add a check for XInput2 headers.
+      winex11: Add handlers for the XInput2 raw mouse events.
+      winex11: Retrieve raw mouse events through XInput2 while the cursor is clipped.
+      winex11: Make sure the clipping window is initialized in every thread.
+      ntdll: Implement the ProcessAffinityMask case in NtQueryInformationProcess.
+      server: Inherit the process affinity from the parent process.
+      server: Retrieve the Unix thread affinity for the initial thread.
+      ntdll: Rewrite the SystemProcessorPerformanceInformation handing to avoid code duplication.
 
-André Hentschel (14):
-      winemaker: Fix library argument.
-      winhttp: Port numbers are unsigned.
-      wininet: Port numbers are unsigned.
-      ntdll: Add check for DragonFly BSD.
-      urlmon/tests: Add another case to IUri tests.
-      mscoree: Add stub implementation for CreateConfigStream.
-      cabinet: Be more verbose.
-      mshtml: Port numbers are unsigned.
-      winhttp: Port numbers are unsigned (more).
-      wininet: Port numbers are unsigned.
-      uxtheme: Add OpenThemeDataEx.
-      uxtheme/tests: Add tests for OpenThemeDataEx.
-      uxtheme/tests: Fix typo.
-      shlwapi: Implement wow64 reporting.
+Andrew Nguyen (11):
+      dxdiagn: Add some machine name properties to the DxDiag_SystemInfo container.
+      dxdiagn: Broaden the scope of the DLL instance handle.
+      dxdiagn: Add language properties to the DxDiag_SystemInfo container.
+      dxdiagn: Add a NetMeeting detection property to the DxDiag_SystemInfo container.
+      dxdiagn: Add a NECPC98 property to the DxDiag_SystemInfo container for completeness.
+      dxdiagn/tests: Add tests for some DxDiag_SystemInfo properties.
+      dxdiagn: Add date and time properties to the DxDiag_SystemInfo container.
+      dxdiagn: Add a physical memory display string property to the DxDiag_SystemInfo container.
+      dxdiagn: Add paged memory display string properties to the DxDiag_SystemInfo container.
+      dxdiagn: Add operating system string properties to the DxDiag_SystemInfo container.
+      msvcrt: Ensure that old buffer contents are copied when allocating a growable pf_output buffer for the first time.
 
-Aric Stewart (3):
-      usp10: Rewrite ScriptStringCPtoX to make use of ScriptCPtoX.
-      usp10: Rewrite ScriptStringXtoCP to make use of ScriptXtoCP.
-      wineqtdecoder: fourCC value needs to be reversed as an OSType.
+André Hentschel (7):
+      uxtheme/tests: Mark XP SP1 behaviour as broken.
+      uxtheme/tests: Remove unneeded comment.
+      winedbg: Implement get_addr on sparc.
+      mshtml: Fix Warning message.
+      gdiplus: Add a FIXME.
+      dbghelp: Implement sparc_get_addr.
+      winedbg: Implement adjust_pc_for_break on Sparc.
 
-Aurimas Fišeras (1):
+Aric Stewart (9):
+      strmbase: Create OutputQueue for queuing outgoing samples.
+      strmbase: Add OutputQueue_EOS implementation.
+      wineqtdecoder: Move pixel buffer access to utility module.
+      wineqtdecoder: Implement a Wine specific Data Handler.
+      wineqtdecoder: Add 64-bit functions to datahandler.
+      wineqtdecoder: Work to add a QuickTime video Splitter.
+      wineqtdecoder: Add processing for audio in the movie.
+      wineqtdecoder: Optimizations for audio extraction.
+      wineqtdecoder: Tweak required for processing MPEG streams.
+
+Aurimas Fišeras (5):
+      po: Update Lithuanian translation.
+      po: Update Lithuanian translation.
+      po: Update Lithuanian translation.
+      inetcpl: Update Lithuanian translation.
       po: Update Lithuanian translation.
 
-Austin English (2):
-      traffic: Add a stub for TcDeregisterClient.
-      mshtml: Avoid shadowing a parameter.
+Austin English (12):
+      msvcp100: Add stub dll.
+      vcomp: Add stub dll.
+      windowscodecs: Only declare jpeg debug channel if jpeg is supported.
+      ole2disp.dll16: Add a stub for SETERRORINFO.
+      winex11.drv: Remove extraneous parentheses (LLVM/Clang).
+      winealsa.drv: Remove extraneous parentheses (LLVM/Clang).
+      quartz: Remove extraneous parentheses (LLVM/Clang).
+      wineoss.drv: Remove extraneous parentheses (LLVM/Clang).
+      ole32: Remove extraneous parentheses (LLVM/Clang).
+      comctl32: Remove extraneous parentheses (LLVM/Clang).
+      progman: Avoid assigning a variable to itself (LLVM/Clang).
+      ntdll: Add support for win2k8r2.
 
-Austin Lund (1):
-      user32/tests: Fixed SetParent test on 64bit Vista.
+Christian Inci (1):
+      crypt32: Fix a string test.
 
-Bart Van Assche (2):
-      ntdll: Fix race condition in RtlCreateHeap().
-      ntdll: Avoid examining uninitialized data.
+David Hedberg (2):
+      comdlg32: Fetch rectangle from the correct control.
+      comdlg32: Add support for customizing control labels in the item dialog.
 
-Damjan Jovanovic (1):
-      winemenubuilder: Do not skip entries when cleaning up file open associations.
+Detlef Riekenberg (6):
+      inetcpl: Add a security propsheet.
+      inetcpl: Fill the security listview with zones.
+      inetcpl: Display description and security level for a zone.
+      inetcpl: Add German version of the security propsheet.
+      winecfg: Fix major version of windows 3.1.
+      po: Update German translation.
 
-Dan Kegel (2):
-      winemenubuilder: File associations should set wineprefix.
-      urlmon: IsValidUrl should not fail if first parameter is not NULL.
+Dmitry Timoshkov (9):
+      user32: Add a test for WM_QUIT handling by DefDlgProc.
+      user32: DefDlgProc on WM_QUIT should repost it and terminate the dialog message loop.
+      user32: Add a test for activating a menu consisting from a single menu item using a hot key.
+      kernel32: Constify some data.
+      user32: Use symbolic names for values returned by WM_MENUCHAR handler.
+      winex11: Move the SendMessage(WM_SYSCOMMAND, SC_MAXIMIZE/SC_RESTORE) call after the window extents check.
+      user32: Use symbolic names for values returned by WM_MENUCHAR handler.
+      user32: Fix the single menu item activation using a hot key.
+      ole32: Replace a spurious FIXME by a TRACE.
 
-David Hedberg (30):
-      mspatcha: New dll stub.
-      msi: Add an offset to sequence numbers belonging to files added by a patch.
-      msi: Generalize media helpers a bit.
-      msi: Add support for patching files.
-      comdlg32: Add DllGetClassObject and a default class factory.
-      comdlg32: Add stub implementation of the Common Item dialogs.
-      comdlg32: Add implementation of DllRegisterServer/DllUnregisterServer.
-      comdlg32/tests: Add initial tests for the Item Dialog.
-      comdlg32: Implement SetOptions/GetOptions for the Item Dialog.
-      comdlg32: Implement SetFileTypes and GetFileTypeIndex/SetFileTypeIndex for the Item Dialog.
-      comdlg32: Implement some folder and file selection functions for the Item Dialog.
-      comdlg32: Implement Advise/Unadvise for the Item Dialog.
-      user32/tests: Add some more tests for SetWindowPos.
-      user32: Fix return value when passing a non-sibling preceding window to SetWindowPos.
-      comdlg32: Add NEWFILEOPENV3ORD resource.
-      comdlg32: Implement Show and Close for the Item Dialog.
-      comdlg32: Add IExplorerBrowserEvents stub to Item Dialog.
-      comdlg32: Add ExplorerBrowser control to Item Dialog.
-      comdlg32: Add IServiceProvider implementation to the Item Dialog.
-      comdlg32: Add ICommDlgBrowser3 stub to Item Dialog.
-      comdlg32: Set explorerbrowser's site before navigating anywhere.
-      comdlg32: Implement GetFileName and SetFileName for the item dialog.
-      comdlg32: Update file name from selection in the item dialog.
-      comdlg32: Implement filetype filtering for the item dialog.
-      comdlg32: We only want to check the low word of wparam.
-      comdlg32: Add a couple of simple navigation buttons to the item dialog.
-      comdlg32: Factor out some path building code from FILEDLG95_OnOpen.
-      comdlg32: Factor out some path validating code from FILEDLG95_OnOpen.
-      comdlg32: Factor out filename string splitting code.
-      comdlg32: Implement opening files with the item dialog.
+Eric Pouech (5):
+      dbghelp: For codeview/bprel symbols force the register to be EBP, other CPUs should use regrel symbol instead of bprel.
+      dbghelp: Force void type in const declaration, when subtype cannot be found.
+      dbghelp: Extended CPU structure by adding a default register number for frame.
+      dbghelp: Added some missing defines to dwarf.h.
+      dbghelp: Silence DW_TAG_GNU_call_site objects.
 
-Dmitry Timoshkov (7):
-      ntdll: Use an NtWriteFile pointer instead of a static import.
-      server: Add excute permission when read file access is allowed.
-      winex11.drv: Do not use any window types except _NET_WM_WINDOW_TYPE_NORMAL.
-      ntdll: Add a bunch of NtCreateFile tests.
-      user32: Add the SW_SHOWDEFAULT case to WINPOS_MinMaximize().
-      ntdll: Add more NtCreateFile tests.
-      server: FILE_OVERWRITE and FILE_OVERWRITE_IF need the FILE_WRITE_ATTRIBUTES permission.
+Francois Gouget (16):
+      msxml3/tests: Fix variable initializations to conform to C89.
+      programs: NOINVERT is an obsolete flag so remove it.
+      cmdlgtst: Use the human readable application name in the window title.
+      progman: Fix accelerator support.
+      taskmgr: Implement the Help menu.
+      shell32: Fix the *CPLINFO* lData field type.
+      winhlp32: Add support for accelerators in general and F1 in particular.
+      progman: Fix the Alt+Enter accelerator so it shows the selected element attributes.
+      d3dx9_36: Make get_parameter_{handle,struct}() static.
+      mshtml: Make HTMLFiltersCollection_Create() static.
+      mmdevapi: Reorder a couple of functions to avoid forward declarations and make MMDevice_SetPropValue() static.
+      programs: Standardize the About menus.
+      clock: Rename the Info menu to Help for consistency.
+      winemine: Fix and standardize the menus.
+      programs: Standardize the Help menus.
+      qcap: Ifdef-out code that is not used if V4L support is missing.
 
-Eric Pouech (9):
-      dbghelp: When parsing .debug_line section in dwarf debug info, protect against out of bounds indexes.
-      wineconsole: Ensure that the EXIT message is always properly propagated to the first caller of GrabChanges.
-      dbghelp: Now that compilers (like clang) start to merge symbols across compilation units, no longer barf about duplicates.
-      kernel32: When testing the debugger activation, don't use unitialized values (clang).
-      dbghelp: Return proper null value when lookup_type fails.
-      dbghelp: In const types, force 'void' type when none is found.
-      loader: Protect preloader against ELF file without loadable segments (clang).
-      winegcc: Check that option argument is within command line parameters.
-      include: Added missing no return attribute.
+Frédéric Delanoy (2):
+      po: Update French translation.
+      po: Update French translation.
 
-Francois Gouget (29):
-      mscoree/tests: Make init_pointers() static.
-      msxml3/tests: Add a '\n' to an ok() call.
-      openal32: Make a bunch of wrapper functions static.
-      msxml3: Make xslpattern_error() static.
-      wineps.drv: PSDRV_YWStoDS() is unused so remove it.
-      kernel32: Only get the Windows directory if PROFILE_Open() needs it.
-      winefile: Remove unimplemented menu entries.
-      winefile: Remove the format disk command.
-      winefile: Remove commented out code.
-      winefile: Fix the compilation when _NO_EXTENSIONS is defined.
-      winmm: Remove a space before a punctuation.
-      programs: In English punctuations are not preceded by a space.
-      winedbg: memory_get_current_frame() is not used anymore so remove it.
-      winedbg: stack_get_register_current_frame() is not used anymore so remove it.
-      msi: Make load_ttf_name_id() static.
-      winefile: Remove the unimplemented help search menu.
-      progman: Remove the unimplemented help search menu.
-      progman: Implement the cascade and tile windows menus.
-      notepad: Remove the unimplemented help search menu.
-      regedit: Remove the unimplemented menus to connect to remote registries.
-      winhlp32: Implement MACRO_HelpOnTop() and thus the corresponding menu.
-      winhlp32: Remove the unimplemented help color and visibility menus.
-      wintab32/tests: Remove an unused variable.
-      msvcrt/tests: Wine should not have trouble with the environ pointers so replace a few skip()s with win_skip()s.
-      progman: We don't have a wintutor application so remove the 'Tutorial' menu.
-      progman: Remove the 'Help on Help' menu.
-      winefile: Remove the 'Help on Help' menu.
-      notepad: Remove the 'Help on Help' menu.
-      regedit: Add support for creating expandable string values.
+Gerald Pfeifer (4):
+      winex11.drv: Initialize a variable in create_xcursor_frame to silence a warning.
+      gdiplus: Initialize a variable in SOFTWARE_GdipFillRegion to avoid a compiler warning.
+      quartz: Properly set a parameter by reference in Parser_OutputPin_DecideAllocator.
+      configure: Add compiler warning -Wunused-but-set-parameter.
 
-Gerald Pfeifer (2):
-      dbghelp: Add a return statement for the default/assert case in elf_map_file.
-      comctl32: Simplify MONTHCAL_PaintLeadTrailMonths.
+Hans Leidekker (10):
+      msi: Fix parsing of an empty property followed by a non-empty property.
+      msi: Honor msidbFeatureAttributesFollowParent.
+      wine.inf: Add shell handler for .msp files.
+      msi: More Wow64 fixes.
+      msi: Check the return value of MSIREG_OpenUpgradeCodesKey (valgrind).
+      msi: Fix a memory leak (valgrind).
+      msi/tests: Fix some memory leaks (valgrind).
+      msi: Avoid redundant loading of media info.
+      msi: Add support for maintaining a list of cabinet streams.
+      msi: Add offsets to disk ids added by patches.
 
-Gregory M. Turner (1):
-      gdi32: Initialize SetLayout function pointer.
+Henri Verbeet (50):
+      ddraw: Get rid of the unused LoadWineD3D() declaration.
+      ddraw: Do not unset the index buffer on D3D device destruction.
+      ddraw: Fix a typo in a comment.
+      wined3d: Fix ARB_0001 with pixel shaders in arb_get_helper_value().
+      wined3d: Introduce a helper function for translating blend operations.
+      wined3d: Don't bother setting a depth render buffer for WINED3DFMT_NULL render targets.
+      wined3d: Fix partial depth buffer copies.
+      d3d8/tests: Add a test for partial depth buffer copies.
+      d3d9/tests: Add a test for partial depth buffer copies.
+      wined3d: Correctly check if the destination format is FBO attachable in fbo_blit_supported().
+      wined3d: Make "blit_operation" naming a bit more consistent.
+      wined3d: Introduce a separate function for depth fills.
+      wined3d: Allow depth and stencil clears on surfaces other than the current depth / stencil buffer.
+      wined3d: Add depth fills to the blitter interface.
+      wined3d: Remove COM from the rendertarget view implementation.
+      wined3d: Add support for depth blits to the blitter.
+      d3d9/tests: Add a depth blit test.
+      wined3d: Don't unregister windows with the wrong window proc on unload either.
+      wined3d: Rename "NumberOfPalettes" to "palette_count".
+      wined3d: Rename "NumberOfSwapChains" to "swapchain_count".
+      wined3d: Don't use IWineD3DDeviceImpl_GetSwapChain() in IWineD3DDeviceImpl_Present().
+      wined3d: Merge swapchain_gdi.c into swapchain.c.
+      wined3d: Merge swapchain_base.c into swapchain.c.
+      wined3d: Only create a swapchain context array for GL swapchains.
+      wined3d: Merge the IWineD3DSwapChain::Destroy() implementations.
+      wined3d: Don't free D3D swapchains until the wined3d swapchain is destroyed.
+      wined3d: Explicitly handle 0 rt_count right at the start of context_apply_draw_buffers().
+      wined3d: Only set draw buffers that are explicitly specified in context_apply_draw_buffers().
+      wined3d: Set the read buffer to GL_NONE for draws and clears on an FBO.
+      wined3d: Check FBO completeness after the read / draw buffers are specified.
+      wined3d: Depth-only clears are done offscreen.
+      wined3d: Flush after accessing the front buffer in surface_blt_fbo().
+      wined3d: Flush after accessing the front buffer in flush_to_framebuffer_drawpixels().
+      d3d8: Get rid of the implicit swapchain refcounting hacks.
+      d3d9: Get rid of the implicit swapchain refcounting hacks.
+      comctl32: Allocate the correct amount of memory for tab items in TAB_InsertItemT().
+      wined3d: Get rid of the swapchain destroy callback.
+      wined3d: Remove IWineD3DSwapChain::Destroy() from the public interface.
+      wined3d: Merge the IWineD3DSwapChain::SetDestWindowOverride() implementations.
+      wined3d: Take hDestWindowOverride into account in IWineGDISwapChainImpl_Present().
+      wined3d: Merge the GL and GDI swapchain vtbls.
+      wined3d: Remove COM from the swapchain implementation.
+      wined3d: Get rid of the IWineD3DSwapChain typedefs.
+      wined3d: Get rid of the unused vSyncCounter swapchain field.
+      wined3d: Decrement the refcount in wined3d_query_decref().
+      wined3d: Remove COM from the volume implementation.
+      wined3d: Get rid of the IWineD3DVolume typedefs.
+      wined3d: Don't flush just because a swapchain has multiple contexts.
+      wined3d: Get rid of the IWineD3DResource interface.
+      wined3d: Get rid of the IWineD3DBase interface.
 
-Hans Leidekker (18):
-      ws2_32: Implement GetNameInfoW.
-      kernel32: Implement and test GetVolumePathNamesForVolumeName.
-      wldap32: Accept a NULL value in ldap_set_option.
-      wine.inf: Pretend that the .NET 4.0 Client and Full profiles are installed.
-      mscms: Trace the CMM id as a string.
-      msi: Ignore invalid upgrade codes in the PublishProduct action.
-      msi/tests: Get rid of workarounds for win9x test failures.
-      msi/tests: Allocate the user token dynamically and unify implementations.
-      msi: Allocate the user token dynamically.
-      msi: Explicitly pass product code and platform to MSIREG_OpenUninstallKey and MSIREG_DeleteUninstallKey.
-      msi: Accept whitespace-only property values on the command line.
-      msi: Implement MsiGetFileSignatureInformationA/W.
-      msi/tests: Remove unneeded Wow64 checks.
-      msi: Make sure to access the 64-bit portion of the registry where needed on Wow64.
-      msi: Avoid sprintf for simple concatenations.
-      msi: Fix buffer size calculation in get_keypath.
-      msi: Fix building the message string in MSI_ProcessMessage.
-      msi: Implement and test MsiEnumComponentCostsA/W.
+Huw Davies (21):
+      gdi32: Add a skeleton dib driver.
+      gdi32: Add a dib primitive function table.
+      gdi32: Add support for 32 bpp BI_BITFIELDS.
+      gdi32/tests: Start of a framework for writing dib driver tests.
+      gdi32: Add a solid_rects primitive.
+      gdi32: Initial SelectPen support.
+      gdi32: Add the ability to track whether we should defer to the graphics driver.
+      gdi32: Add support for DC pens.
+      gdi32: Calculate AND and XOR masks corresponding to the current pen colour and rop2.
+      gdi32: Draw single pixel wide, horizontal or vertical lines with the dib driver.
+      gdi32/tests: Add horizontal and vertical solid line tests.
+      gdi32: Implement SelectBrush for solid brushes.
+      gdi32: Implement PatBlt.
+      gdi32/tests: Add PatBlt tests.
+      winex11: Don't use the bitfields for the BI_RGB case.
+      gdi32: Don't use the bitfields for the BI_RGB case.
+      gdi32: Don't use the bitfields for the BI_RGB case and also cope with zero masks.
+      gdi32: Don't set the bitfields when the dib section is BI_RGB.
+      gdi32: Add support for solid diagonal lines.
+      gdi32: Keep track of the combined clip region.
+      gdi32: Add clipping for horizontal and vertical solid lines.
 
-Henri Verbeet (25):
-      wined3d: Get rid of the IWineD3DBase requirement for surface_set_container().
-      wined3d: Merge the texture implementations.
-      wined3d: Remove COM from the texture implementation.
-      wined3d: Get rid of the IWineD3DBaseTexture typedefs.
-      wined3d: Get rid of IWineD3DBaseTextureClass.
-      wined3d: Replace "cond_np2" in wined3d_texture with a flag.
-      wined3d: Replace "pow2_matrix_identity" in wined3d_texture with a flag.
-      wined3d: Replace "is_srgb" in wined3d_texture with a flag.
-      wined3d: Move IWineD3DVertexShader::SetLocalConstantsF() to IWineD3DBaseShader.
-      Revert "wined3d: Prevent crash when blit_priv is NULL.".
-      wined3d: Get rid of IWineD3DVertexShader.
-      wined3d: Get rid of IWineD3DGeometryShader.
-      wined3d: Get rid of IWineD3DPixelShader.
-      wined3d: Get rid of IWineD3DVertexShaderImpl.
-      wined3d: Get rid of struct wined3d_geometryshader.
-      wined3d: Get rid of IWineD3DPixelShaderImpl.
-      wined3d: Merge the IWineD3DBaseShader implementations.
-      wined3d: Get rid of IWineD3DBaseShaderClass.
-      wined3d: Remove COM from the shader implementation.
-      wined3d: Get rid of the IWineD3DBaseShader typedefs.
-      wined3d: Rename "numContexts" to "context_count".
-      wined3d: Fix the EXT_blend_minmax extension definitions.
-      wined3d: Fix the EXT_blend_color extension definitions.
-      wined3d: Fix the EXT_blend_subtract extension definitions.
-      wined3d: Get rid of the ARB_imaging extension.
+Hwang YunSong (3):
+      po: Update Korean translation.
+      po: Update Korean translation.
+      po: Update Korean translation.
 
-Hwang YunSong (1):
-      comdlg32: Update Korean resource.
+Igor Paliychuk (1):
+      po: Update Ukrainian translation.
 
-Jacek Caban (6):
-      mshtml: Try loading library in IInternetProtocolInfo::ParseUrl(PARSE_INTERNET_URL) for res protocol to work around library name difference for winelib libraries.
-      mshtml: Store security manager in HTMLWindow instead of HTMLDocumentNode.
-      mshtml: Use zone mapping instead of hardcoded protocols in use_gecko_script.
-      mshtml: Event handler may be already free in release_event_target.
-      mshtml: Fixed ref count handling in events.c.
-      mshtml: Fixed node leak in HTMLEventObj.
+Jacek Caban (18):
+      wininet: Abstract different transfer and content encoding reading to layered structures.
+      wininet: Added more tests.
+      mshtml: Get rid of no longer needed app-startup observer initialization.
+      mshtml: Properly handle upload streams containing headers.
+      urlmon: Use dedicated data.php URL for testing regular http binding.
+      wininet: Check NETCON_connected in netconn_end_of_data.
+      urlmon: Use winetest data.php URLs for regular http binding tests.
+      shdocvw: Moved more registration to .rgs file.
+      shdocvw: Register .url extension.
+      shdocvw: intshcut.c COM clean up.
+      shdocvw: Clean tests skipping.
+      shdocvw: Make tests stricter and fix GetUrl problem found by the change.
+      mshtml: Reimplement nsIURI::SetHost on top of IUriBuilder.
+      kernel32: Moved GetProcessImageFileName implementation from psapi to kernel32.
+      mshtml: Use xul.dll directly instead of via xpcom.dll.
+      shdocvw: Register known protocols as URL protocols.
+      shdocvw: Added more InternetShortcut tests.
+      urlmon: Use winetest post.php URLs for http POST tests.
 
-Joshua Beck (1):
-      winex11: Improved error handling in pglXMakeCurrent() call.
+Jerome Leclanche (1):
+      mscms: Move MSCMS_dbgstr_tag outside of the HAVE_LCMS conditional.
+
+Joris Huizer (1):
+      dxdiagn: Plug memory leak.
+
+Juan Lang (2):
+      crypt32: Accept CA certificates without a key usage extension.
+      wininet: Honor security flags specified when opening a connection.
 
 Jörg Höhle (5):
-      Revert "winmm: Fix PlaySound so it doesn't block when another sound is already playing.".
-      winmm: Abort PlaySound in case of audio error.
-      winmm: Get rid of psStopEvent which was never used like an event.
-      winmm: PlaySound concurrency cleanup.
-      user32/tests: Add a few IsWindow checks.
+      winmm: Check callback flags prior to opening a driver.
+      winmm: Trace DriverCallback once upon entry.
+      winmm: DriverCallback returns TRUE iff there is notification.
+      winmm: Audio drivers unconditionally invoke DriverCallback.
+      user32: Added message names for winmm.
 
-Konrad Rzepecki (4):
-      msvcrt: Implement _mbsupr_s.
-      msvcrt: Implement _mbslwr_s.
-      wined3d: Prevent crash when blit_priv is NULL.
-      wined3d: Implement WINED3DFMT_YUY2 to WINED3DFMT_B5G6R5_UNORM conversion function.
+Maarten Lankhorst (2):
+      include: Add missing defines to mddk.h.
+      dsound: COM cleanup property sets.
 
-Maarten Lankhorst (1):
-      wined3d: Fix a clipping issue with D3DSPSM_SIGNNEG.
+Marcus Meissner (3):
+      msxml3: Fixed two const table declarations (Coverity).
+      mscms: Fixed bad sizeof() (Coverity).
+      mscms: Added missing breaks (Coverity).
 
-Marcus Meissner (13):
-      winedbg: Add missing break (Coverity).
-      winecfg: Added missing break (Coverity).
-      wininet: Added missing break (Coverity).
-      wined3d: Mark up fallthrough breaks (Coverity).
-      user32: Added missing break (Coverity).
-      user32: Added missing break.
-      shell32: Missing break in IDOK case.
-      krnl386.exe16: Added missing break to dma code (Coverity).
-      dnsapi: Added missing breaks (Coverity).
-      kernel32: Added missing break (Coverity).
-      comctl32: Added missing break (Coverity).
-      winebuild: Mark up fallthrough switch cases (Coverity).
-      widl: Mark up a FALLTHROUGH case (Coverity).
+Matteo Bruni (1):
+      wined3d: Get rid of context_validate.
 
-Matteo Bruni (11):
-      opengl32/tests: Test using a GL context after the drawable is destroyed.
-      winex11.drv: Don't modify current state if glXMakeCurrent fails.
-      winex11.drv: Make wglMakeCurrent return the correct error when the drawable is invalid.
-      opengl32/tests: Add a test for window destroy with wglMakeContextCurrentARB.
-      winex11.drv: Don't modify state if glXMakeContextCurrent fails.
-      winex11.drv: Fix wglMakeContextCurrent with an invalid drawable.
-      winex11.drv: Don't call glXSwapBuffers if the context or the drawable are invalid.
-      winex11.drv: Take care of the destroyed drawable in wglFlush/wglFinish too.
-      opengl32/tests: Improve window destroy tests.
-      wined3d: Fix an error message.
-      wined3d: Better handle some instances when we can't make the required GL context current.
+Michael Curran (2):
+      d3dxof: Adjusted to allow for parsing of optional template elements.
+      d3dxof: Changed is_string function to accept spaces.
 
-Michael Stefaniuc (4):
-      browseui/tests: COM cleanup in autocomplete.c.
-      xmllite: COM cleanup in reader.c.
-      oleaut32: COM cleanup for the IPropertyPageSite iface.
-      oleaut32/tests: Use a proper static COM object.
+Michael Stefaniuc (7):
+      wininet: Move "inline" right after the storage specifier.
+      riched20: COM cleanup for the ITextHost iface.
+      riched20: COM cleanup for the ITextServices iface.
+      d3d9: COM cleanup for the IDirect3D9Ex iface.
+      d3d9: COM cleanup for the IDirect3DQuery9 iface.
+      d3d9: COM cleanup for the IDirect3DStateBlock9 iface.
+      d3d9: COM cleanup for the IDirect3DCubeTexture9 iface.
 
-Nikolay Sivov (13):
-      comctl32/monthcal: Remove outdated comment.
-      comctl32/monthcal: Move partially visible months painting outside of calendar loop.
-      comctl32/monthcal: Fix hit test for previous month.
-      comctl32/monthcal: Cache brush handles.
-      comctl32/monthcal: Selection and abbreviations should use title colour.
-      comctl32/monthcal: Clean day painting function.
-      comctl32/listview: Adjust dispinfo text buffer length.
-      comctl32/listview: Fix edit box text limit.
-      msxml3: Initial tests for IObjectWithSite support for httprequest.
-      msxml3: More tests for <?xml ?> attributes.
-      msxml3: Allow to create dummy node map for <?xml ?>.
-      urlmon: Fix parameter validation in BindToStorage().
-      urlmon/tests: Test for return value directly, without macros.
+Nikolay Sivov (8):
+      comctl32/monthcal: Week numbers use title colour.
+      comctl32/monthcal: Fix today label position and text colour.
+      comctl32/monthcal: Cache pens, fix line colour.
+      comctl32/monthcal: Get rid of empty slots in cached brushes array.
+      comctl32/monthcal: Some tests for MCM_SIZERECTTOMIN.
+      ole32: Handle null argument in OleIsRunning().
+      comctl32/tab: Fix invalid read of item data.
+      comctl32/tab: Use dpa to store item data.
 
-Piotr Caban (22):
-      mshtml: Report an error when navigation fails.
-      mshtml/tests: Added IWinInetHttpInfo interface.
-      mshtml/tests: Added IBrowserService interface.
-      mshtml/tests: Added IDocObjectService interface.
-      mshtml/tests: Added asynchronous moniker to htmldoc tests.
-      mshtml/tests: Added connection error handling tests.
-      shdocvw: Report navigation error depending on HTTP status code.
-      urlmon: Forward IWinInetHttpInfo calls to protocol implementations.
-      urlmon: Added IWinInetHttpInfo_{QueryOption,QueryInfo} implementation.
-      urlmon/tests: Added IWinInetHttpInfo tests.
-      ntdll: Don't call compare function on memory not provided by user in qsort.
-      msvcrt: Added space for nullbyte in size returned by wcstombs_s and mbstowcs_s.
-      msvcrt: Correctly terminate string in wcsncat_s.
-      msvcrt/tests: Fix memory leaks (valgrind).
-      msvcrt: Fix buffer size in _ecvt_s.
-      mshtml/tests: Ignore calls missing in IE6.
-      msvcrt: Fix locale creation for multibyte encoding.
-      msvcrt: Don't call get_locale two times in _isctype function.
-      msvcp: Added basic_string<{char, wchar}> operator+= exports.
-      msvcp: Added basic_string<char> operator+ implementations.
-      msvcp: Added basic_string<wchar> operator+ implementations.
-      msvcp90/tests: Added operator+ tests (basic_string<char>).
+Owen Rudge (1):
+      advapi32: Add basic SaferSetLevelInformation stub.
 
-Rico Schüller (21):
-      include: Add missing D3DXCreateEffect* declarations in d3dx9effect.h.
-      d3dx9: Fix HeapAlloc size in D3DXCreateEffectPool.
-      d3dx9: Use size of variable instead of type.
-      d3dx9: Handle pool and device in ID3DXEffect.
-      d3dx9/tests: Add refcount test for the device.
-      include: Fix ID3DXEffectCompiler interface.
-      d3dx9: Add ID3DXBaseEffect interface.
-      d3dx9: Forward ID3DXEffect to ID3DXBaseEffect.
-      d3dx9: Add ID3DXEffectCompiler interface.
-      d3dx9: Fix some style issues.
-      d3dx9: Implement ID3DXEffect::GetPool().
-      d3dx9: Implement ID3DXEffect::GetDevice().
-      d3dx9: ID3DXEffect::QueryInterface() does not support IID_ID3DXBaseEffect.
-      d3dx9/tests: Add ID3DXEffect::GetPool() and ID3DXEffect::GetDevice() tests.
-      d3dx9/tests: Add ID3DXEffectCompiler test.
-      d3dx9: Don't zero memory when it will be overridden.
-      d3dx9: Use variable instead of type in HeapAlloc.
-      d3dx9: Remove typedef from ID3DXBufferImpl.
-      d3dx9: Rename some variables.
-      d3dx9: Add a some TRACEs to ID3DXBufferImpl.
-      d3dx9: Use init function for ID3DXBuffer.
+Philipp Middendorf (1):
+      dsound: Handle 8 channel audio input.
 
-Roderick Colenbrander (1):
-      wined3d: Check for ARB_fragment_program in arbfp_blit_supported.
+Piotr Caban (7):
+      msvcrt: Added _wassert implementation.
+      msvcrt: Added _snscanf implementation.
+      msvcrt: Added _snwscanf implementation.
+      msvcr90: Added _CRT_RTC_INIT and _CRT_RTC_INITW implementation.
+      msvcrt: Added wctob implementation.
+      msvcp100: Fix spec file.
+      ntdll: Restore stack guard and prevent stack from shrinking.
+
+Rex Tsai (1):
+      wininet: Added stub for option DATA_SEND_TIMEOUT.
+
+Rico Schüller (15):
+      d3dcompiler: Move D3DCreateBlob() to blob.c.
+      d3dx9: Add argument check to D3DXCreateBuffer().
+      d3dx9: Add ID3DXBuffer test.
+      d3dcompiler: Remove type cast in D3DCreateBlob().
+      d3dcompiler: Move blob and strip functions to blob.c.
+      d3dcompiler: Make some variables static.
+      d3dx9: Fix return values.
+      d3dx9: Start effect parameter parsing.
+      d3dx9: Parse effect parameter type definition.
+      d3dx9: Parse effect type D3DXPC_STRUCT.
+      d3dx9: Parse name and semantics.
+      d3dx9: Parse value data.
+      d3dcompiler: Fix HeapAlloc/HeapFree for type members in the reflection parser.
+      d3dx9: Make some functions inline.
+      d3dx9: Parse effect pass and technique.
+
+Stefan Dösinger (3):
+      wined3d: Don't drop VBOs for full buffer reloading without conversion.
+      wined3d: Remove FLOAT16 vertex attribute conversion support.
+      wined3d: Only acquire a context in buffer::PreLoad if we have to.
 
 Stefan Leichter (1):
-      ntoskrnl.exe: Add stub for PsSetLoadImageNotifyRoutine.
-
-Steven Wallace (1):
-      ntdll: implemented ProcessDebugFlags in NtQueryInformationProcess.
+      scarddlg: New dll stub.
 
 Thomas Mullaly (6):
-      urlmon/tests: Added SecurityManager zone mapping cache tests.
-      urlmon/tests: Added zone domain mapping tests.
-      shlwapi: Improved UrlGetPart support when parsing host names.
-      urlmon/tests: Added CoInternetParseUrl tests.
-      urlmon: Removed str_last_of in favor of memrchrW.
-      urlmon: Added basic domain zone support to MapUrlToZone.
+      include: Updated INTERNETFEATURELIST enum and flags.
+      urlmon/tests: Added tests for CoInternetIsFeatureEnabled.
+      urlmon/tests: Added tests for CoInternetSetFeatureEnabled.
+      urlmon: Added FeatureControl registry keys.
+      urlmon/tests: Added FeatureControl registry key tests.
+      urlmon: Added basic implementation for CoInternet{Is/Set}FeatureEnabled.
 
-Vincent Pelletier (2):
-      dinput: Ramp from lStart to lEnd, not lStart to lStart.
-      dinput: Effect length can actually be 0.
+Vincent Povirk (24):
+      gdiplus: Add helper for translating GpFont to HFONT.
+      gdiplus: Add a software implementation of GdipDrawDriverString.
+      gdiplus: Don't settle on a font size until absolutely necessary.
+      gdiplus: Respect the CmapLookup flag in GDI32_GdipDrawDriverString.
+      windowscodecs: Implement TiffDecoder_GetResolution.
+      windowscodecs: Add stub TIFF encoder.
+      windowscodecs: Implement TiffEncoder_Initialize.
+      windowscodecs: Implement TiffEncoder_CreateNewFrame.
+      windowscodecs: Implement TiffFrameEncode_Initialize.
+      windowscodecs: Implement TiffFrameEncode_SetPixelFormat.
+      windowscodecs: Implement TiffFrameEncode_SetSize.
+      windowscodecs: Implement TiffFrameEncode_SetResolution.
+      windowscodecs: Implement TiffFrameEncode_WritePixels.
+      windowscodecs: Implement TiffFrameDecode_WriteSource.
+      gdiplus: Validate MatrixOrder in matrix functions.
+      windowscodecs: Implement TiffFrameEncode_Commit.
+      windowscodecs: Implement TiffEncoder_Commit.
+      gdiplus: Add support for encoding TIFF images.
+      windowscodecs: Add test for TIFF encoder.
+      windowscodecs: Add test for multi-frame TIFF encoding.
+      windowscodecs: Implement FlipRotator_GetPixelFormat.
+      windowscodecs: Log unsupported conversion formats.
+      windowscodecs: Add support for converting from 32bppPBGRA.
+      windowscodecs: Add support for converting to 32bppPBGRA.
 
-Vincent Povirk (14):
-      gdiplus: Clean up HRGN when GdipGetRegionBounds succeeds too.
-      gdiplus: Initialize the ImageAttributes in GdipCreateTexture2I.
-      gdiplus: Implement color transforms.
-      gdiplus: Implement gamma adjustment.
-      windowscodecs: Add support for reading tiled TIFF images.
-      gdiplus: Use the given HPALETTE in GdipCreateBitmapFromHBITMAP.
-      gdiplus: Add test for GdipDrawDriverString.
-      gdiplus: Add test for GdipSetTextRenderingHint and make it pass.
-      winejack.drv: Fix build.
-      gdiplus: Fall back to Liberation Serif if Times New Roman is missing.
-      comctl32: Use current month and year when checking day of month.
-      comctl32: When entering a month or year, keep the day in range.
-      comctl32: Validate the day of month when scrolling through years.
-      gdiplus: Add basic implementation of GdipDrawDriverString.
+Vitaliy Margolen (1):
+      dinput: Implement getting DIPROP_VIDPID property for evdev joystick driver. Fixes bug 26418.
 
 Łukasz Wojniłowicz (1):
       po: Update Polish translation.
diff --git a/VERSION b/VERSION
index 5ae1c06..623e4aa 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.3.17
+Wine version 1.3.18
diff --git a/configure b/configure
index 77d6484..0e6dea4 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.17.
+# Generated by GNU Autoconf 2.67 for Wine 1.3.18.
 #
 # 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.17'
-PACKAGE_STRING='Wine 1.3.17'
+PACKAGE_VERSION='1.3.18'
+PACKAGE_STRING='Wine 1.3.18'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -1375,7 +1375,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.17 to adapt to many kinds of systems.
+\`configure' configures Wine 1.3.18 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1444,7 +1444,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.3.17:";;
+     short | recursive ) echo "Configuration of Wine 1.3.18:";;
    esac
   cat <<\_ACEOF
 
@@ -1591,7 +1591,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.3.17
+Wine configure 1.3.18
 generated by GNU Autoconf 2.67
 
 Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2109,7 +2109,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.17, which was
+It was created by Wine $as_me 1.3.18, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   $ $0 $@
@@ -16169,7 +16169,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.17, which was
+This file was extended by Wine $as_me 1.3.18, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16240,7 +16240,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.17
+Wine config.status 1.3.18
 configured by $0, generated by GNU Autoconf 2.67,
   with options \\"\$ac_cs_config\\"
 
