diff --git a/ANNOUNCE b/ANNOUNCE
index 80ba3d9..df27885 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,17 +1,15 @@
-The Wine development release 1.5.18 is now available.
+The Wine development release 1.5.19 is now available.
 
 What's new in this release (see below for details):
-  - Various Windows Codecs improvements.
-  - Fixes for OLE database support.
-  - Improvements to system parameters management.
-  - Some fixes to the built-in Web browser.
-  - Fixes for XML support.
+  - Performance improvements in the DIB engine.
+  - More fleshed out XML-lite implementation.
+  - Some more C++ runtime functions.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://prdownloads.sourceforge.net/wine/wine-1.5.18.tar.bz2
-  http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.18.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.5.19.tar.bz2
+  http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.19.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -27,419 +25,426 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.5.18 (total 46):
+Bugs fixed in 1.5.19 (total 36):
 
-  16238  Star Wars: The Battle of Endor: Crashes while starting.
-  17264  The SunSpider JavaScript benchmarks does not show the Results
-  20320  Mouse don't runs in Medal of Honor Airborne
-  21047  cmd does not handle FOR /F %%a in ('command') properly
-  21060  MCI open+play .avi hangs
-  21394  nul: nul doesn't not work for copy.
-  23331  Medal of Honor Airborne: Install recognizes it as "ProductName"
-  23712  Rollercoaster tycoon not working
-  23880  d3dx9/asm tests crashes in a real windows vista box
-  24942  Fable: The Lost Chapters rendered scenes mostly black without native d3dx9_36
-  28832  ddraw/tests/d3d.ok fails sometimes under valgrind with "Expected message 0x7e, but didn't receive it."
-  28834  setupapi/tests/devinst.ok fails on some machines under Valgrind
-  29676  .NET 4.0 runtime fails to initialize MediaSystem subsystem due to rpcrt4.dll RpcMgmtIsServerListening being a stub
-  29749  Download Accelerator Plus: hangs on start without native ie7
-  29853  QQ2011 does not display Chinese correctly with builtin usp10 if font link setting is incomplete
-  30066  Format Factory crashes in Video Options
-  30092  ePSXe crash while reset game
-  30251  Word 2010 does not display reference styles with builtin msxml6
-  30270  Wine doesn't detect opengl/wgl extensions anymore
-  31108  Microshop 2.0 (.NET 2.0 app using System.Windows.Forms.WebBrowser) wants IWebBrowser2::Refresh
-  31646  Popcap wrapper does not work through proxy
-  31735  Circuitmaker 2000 schematic editor: some parts are wrongly displayed
-  31738  Material Brave hangs on starting
-  31774  Font smoothing does not work in spite of registry settings
-  31841  Uru does not properly start anymore in full-screen mode
-  31979  Lord of the Rings Online crashes at startup
-  31993  Netflix on Firefox hangs with loading bar at 100%
-  32040  The Witcher - Graphical glitches with ARB shader backend
-  32044  Simon the Sorcerer 3D crashes on start with built-in msvcp60
-  32047  HeidiSQL 7 crashes in 1.5.15
-  32051  dhpoware's OpenGL 3 demos do not display
-  32082  CCleaner 3.x installer crashes at the same point (not fully reproducible)
-  32085  Elven Legacy needs msvcp80.dll.?replace@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@V?$_String_iterator@DU?$char_traits@D@std@@V?$allocator@D@2@@2@0PBDI@Z (purist)
-  32087  External environment variables interfere with cmd runtest, causing it to issue false errors
-  32101  SSF Saturn Emulator - Crashes with SendMessage() error
-  32134  KwSing installer needs wmvcore.dll.DllRegisterServer
-  32187  Image Composite Editor fails to install with a VSDCA_VsdLaunchConditions msi error
-  32198  ListView fails to redraw after Insert
-  32199  Installer of Creo 2.0 Parametric Free Trial needs msvcp100.dll.wctrans
-  32200  Installer of Creo 2.0 Parametric Free Trial crashes
-  32209  fixme:gdiplus:GdipSetPathGradientBlend not implemented gives Exception
-  32242  Silverlight 4.x can no longer install
-  32256  PowerPoint 2010 crashes in slideshow mode
-  32262  System.TypeInitializationException when starting 'Adventures of Shuggy'
-  32263  AtlModuleExtractCreateWndData and AtlModuleAddCreateWndData not found, needed by QQ2011
-  32264  Jammer 6 demo installer: can't click on window
+   9612  Silent Hunter III: Crashes on loading a savegame at sea (dsound causing out of memory condition)
+  11073  crash in cmd.exe with lib.exe (VC++6.0)
+  13828  Direct3D only shows garbage when rendering to a child window on intel
+  16761  Supreme Commander: No audio at default sample rate/with full audio hardware acceleration
+  19668  cmd /c doesn't wait for result before exiting?
+  20561  GRLEVEL2: Radar is offset in the upward direction making sampling incorrect.
+  21747  Pausing Pikachu Volleyball and opening menus disrupts fade-in/fade-out effects
+  24020  League of Legends / Pando downloader can't use its bundled MSVCP90
+  25738  cmd.exe: enclosing quoting of builtin command and parameters confuses cmd.exe (Windows PowerShell 2.0 installer)
+  26003  In Magicka, certain polygons can stretch across the map and track the player.
+  27088  Microsoft Product Support Reporting Tool 6 (32-bit) doesn't detect somethings
+  27290  When CreateFileW receives invalid filename it crashes
+  27564  Dungeons and Dragon Launcher crashes
+  28645  Classic Shell installer fails to extract setup file
+  30922  iexplore http://html5test.com/ says Javascript is not enabled
+  31024  w3schools ajax examples don't work in iexplore
+  31335  __RTDynamicCast (aka dynamic_cast<>) broken on win64?
+  31863  d3d8/device.c, d3d9/device.c: tests fail on nVidia chip
+  31892  Handle failure to reserve NT shared user data at 0x7ffe0000 (Windows on ARM)
+  31981  Microsoft SQL Server 2005 Express Edition: SQL Server System Configuration Checker fails (needs lanmanserver service registry values)
+  32031  Adobe Acrobat Professional XI needs msvcp100.dll.??0_Container_base12@std@@QAE@XZ
+  32038  Europa Universalis III demo needs msvcp60.dll.?_Mode@?$basic_stringbuf@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAEHH@Z
+  32042  Port Royale needs msvcp60.dll.??1?$collate@G@std@@UAE@XZ  (purist)
+  32185  Bug in BasePinImp_GetMediaType()
+  32241  Installer of Creo 2.0 Parametric Free Trial needs msvcp100.dll.?ends@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z
+  32277  No sound in Star Wars: Knights of the Old Republic
+  32289  Dr.com client hangs at start after clicking on any area of the application
+  32292  Railworks 3 Trainsimulator 2013 crashes in OleDraw
+  32295  WinUAE emulation window not refreshed properly when other windows move in front of it
+  32300  Winecfg applications tab displays apps on one line & they cannot be selected
+  32305  Dr.com response slowly when clicking on menu
+  32309  TeamViewer-7.0.9377 crashes on start
+  32327  Office 2010, Visio 2010 Std installers fail
+  32366  Moving objets in Circuitmaker 2000 schematic is delayed (slowed down)
+  32367  Mezzmo fails to start due to unimplemented function MSVCR80.dll._encode_pointer
+  32381  QQ2012 crashes at start
 
 ----------------------------------------------------------------
 
-Changes since 1.5.17:
+Changes since 1.5.18:
 
-Akihiro Sagawa (3):
-      winmm/tests: Add more mmioSeek tests.
-      winmm: Fix SEEK_END direction of mmio files without buffering.
-      winmm/tests: Add EOF and buffer pointer tests for mmio.
+Akihiro Sagawa (1):
+      winmm: Fix handling of mmio file buffers.
 
-Alexandre Julliard (32):
-      user32: Add helper functions to get and set dword registry values in SystemParametersInfo.
-      user32: Add structures to describe individual system parameters to reduce code duplication.
-      user32: Implement a number of missing system parameters.
-      user32: Add some defines to reduce Unicode string duplication.
-      user32: Add system parameter descriptors for user preference parameters.
-      user32: Support more user preference system parameters.
-      user32: Add helper functions for loading and saving system parameter registry entries.
-      user32: Properly set last error in MapWindowPoints.
-      user32: Add some error checking in ScreenToClient and ClientToScreen.
-      gdi32: Don't load bitmap glyphs when using subpixel rendering in GetGlyphOutline.
-      user32: Use the default GUI font for unspecified font parameters.
-      user32: Use parameter entry objects for the non-client metrics parameters.
-      user32: Add parameter entry objects for the desktop wallpaper and pattern.
-      user32: Simplify initialization of the desktop wallpaper.
-      user32: Check the length of the loaded registry key for system parameters.
-      user32: Forward SystemParametersInfo calls to the user driver first.
-      winex11: Move the screen saver support to a new SystemParametersInfo entry point.
-      user32: Define a global list of parameter registry keys and store an index in the value string.
-      user32: Maintain a cache of registry keys for the various parameters.
-      user32: Initialize some system parameters in the registry on first run.
-      gdi32: Fix coordinate mapping of arc limits.
-      user32: Reimplement system color handling using standard system parameter entries.
-      odbc32: Fix some data types for 64-bit.
-      comctl32/pager: Use DrawFrameControl to paint the buttons.
-      comctl32/pager: Fix tracking of mouse position inside the buttons.
-      comctl32/pager: Don't rely on PGN_CALCSIZE to set the non-scrollable dimension of the control.
-      comctl32/tests: Add some initial pager tests.
-      user32: Make sure the scroll button arrows are really at least 3 pixels.
-      user32: Don't check for driver events before normal messages in GetMessage.
-      user32: Don't check for driver events before normal messages in PeekMessage.
-      user32: Fix the wait event mask in PeekMessage.
-      widl: Print large enum constants in hex.
+Alexandre Julliard (34):
+      setupapi: Fix total size when appending multi-string values.
+      user32: Send WM_MOVING instead of WM_SIZING when moving a window.
+      server: Don't expose the desktop on window resizes.
+      gdi32: Fully reset the DC state before deleting it.
+      user32: Fix handling of NULL paint struct in BeginPaint.
+      gdi32: Add a font glyph cache in the DIB engine.
+      winex11: Don't bother waiting for XShmPutImage to finish.
+      setupapi: Load IRegistrar from atl100.dll.
+      gdi32: Add faster implementations of the solid_rects primitive for the common case of R2_COPYPEN.
+      gdi32: Add assembly helpers for filling solid rectangles.
+      gdi32: Add faster implementation of the pattern_rects primitive when we don't need an AND mask.
+      gdi32: Avoid creating a copy of the pattern bits for the R2_COPYPEN case.
+      gdi32: Make blend_subpixel inline.
+      gdi32: Use the faster memset for vertical gradients.
+      gdi32: Avoid computing grayscale glyph intensities when not needed.
+      user32: Refresh the desktop when the wallpaper is changed.
+      winex11: Store a copy of the surface region.
+      winex11: Fall back to normal expose processing for areas outside of the surface region.
+      gdi32: Avoid binary ROPs when stretching in DELETESCANS mode.
+      gdi32: Avoid binary ROPs when shrinking in DELETESCANS mode.
+      gdi32: Don't copy unnecessary rows when shrinking in DELETESCANS mode.
+      configure: Building the tools requires include/config.h.
+      gdi32: Store and return ABC metrics from get_glyph_outline.
+      user32: Ignore the PM_NOYIELD flag on the client side.
+      winex11: Support caching glyphs by character code and not only by glyph index.
+      gdi32: Support caching glyphs by character code and not only by glyph index.
+      gdi32: Support getting character codes instead of glyphs in ExtTextOut for the path driver.
+      wineps: Support getting character codes instead of glyphs in ExtTextOut.
+      gdi32: Remove special handling for linked fonts in ExtTextOut.
+      gdi32: Don't create a separate font handle for linked fonts.
+      gdi32: Don't store a font pointer in the generic part of the DC.
+      wined3d: Call wglSwapBuffers through the GL driver function table.
+      gdi32: Simplify list processing by using the LIST_FOR_EACH_ENTRY macro.
+      gdi32: Keep track of the number of fonts on the unused list.
 
-Andrew Talbot (17):
-      mscoree: Remove unneeded address-of operator from function name.
-      crypt32: Remove unused variables.
-      hhctrl.ocx: Remove unused variable.
-      ddraw: Remove unused variable.
-      d3d10core: Remove unused variables.
-      d3d8: Remove unused variable.
-      cryptui: Remove unused variable.
-      shell32: Remove unused variable.
-      quartz: Remove unused variables.
-      msxml3: Remove unused variable.
-      msi: Remove unused variables.
-      kernel32: Remove unused variables.
-      winspool.drv: Remove unused variable.
-      wininet: Remove unused variable.
-      winhttp: Remove unused variables.
-      dnsapi: Remove unused variable.
-      cryptdll: Remove unused variable.
+Alistair Leslie-Hughes (2):
+      include: Add IGlobalOptions interface.
+      oleaut32: Fail if we cannot find the TYPELIB resource.
 
-André Hentschel (9):
-      oleaut32: Fix remaining memory leak (coverity).
-      msxml3: Fix remaining memory leak (coverity).
-      dmsynth: Fix compilation on systems that don't support nameless structs or unions.
-      advpack: Fix possible NULL pointer access in heap_strdupWtoA.
-      dwrite: Fix possible NULL pointer access in heap_strdup*.
-      jscript: Fix possible NULL pointer access in heap_strdupW.
-      mshtml: Fix possible NULL pointer access in heap_str*.
-      msxml3: Fix possible NULL pointer access in heap_strdupW.
-      urlmon: Fix possible NULL pointer access in heap_strdup*.
+Andrew Eikum (6):
+      winealsa.drv: Improve IsFormatSupported handling.
+      winecoreaudio.drv: Convert some OSStatus errors to HRESULT.
+      winecoreaudio.drv: Improve IsFormatSupported handling.
+      wineoss.drv: Improve IsFormatSupported handling.
+      winmm: Don't mask out SND_ALIAS_ID or SND_FILENAME in sndPlaySound.
+      urlmon: Out string parameter should be ptr, not wstr.
 
-Aric Stewart (3):
-      wineqtdecoder: Properly clean up splitter and loader threads on QTSplitter destruction.
-      imm32: Use SendMessage not PostMessage for the default IME winproc.
-      imm32/tests: Test showing that communication to the IME window is done via SendMessage.
+Andrew Talbot (34):
+      printui: Remove unused variable.
+      opengl32: Remove unused variable.
+      ntprint: Remove unused variable.
+      inkobj: Remove unused variable.
+      imagehlp: Remove unused variable.
+      xmllite: Void functions should not return a value.
+      msvcp100: Remove superfluous semicolons.
+      msvcp90: Remove superfluous semicolons.
+      msvcp71: Remove superfluous semicolons.
+      msvcp60: Remove superfluous semicolons.
+      wineps.drv: Remove unused variable.
+      sensapi: Remove unused variable.
+      netapi32: Remove unused variable.
+      gdiplus: Remove superfluous braces.
+      wtsapi32: Remove unused variable.
+      winscard: Remove unused variable.
+      winex11.drv: Remove unused variable.
+      uxtheme: Remove unused variable.
+      shdocvw: Remove unused variable.
+      ws2_32: Remove unused semicolon.
+      winspool.drv: Remove unused semicolons.
+      msvcp100: Remove unused semicolons.
+      msvcp90: Remove unused semicolons.
+      msvcp71: Remove unused semicolons.
+      msvcp60: Remove unused semicolons.
+      hhctrl.ocx: Constify some variables.
+      mmsystem.dll: De-constify a variable.
+      user32: Do not call HeapFree() with address of stack memory.
+      hhctrl.ocx: Remove unneeded address-of operators from array names.
+      gdiplus: Remove unneeded address-of operator from array name.
+      comctl32: Remove unneeded address-of operators from array names.
+      windowscodecs: Remove unneeded address-of operators from array names.
+      user32: Remove unneeded address-of operator from array name.
+      urlmon: Remove unneeded address-of operator from array name.
 
-Austin English (2):
-      secur32: Get rid of deprecated types.
-      include: Remove stray linefeeds.
+André Hentschel (11):
+      include: Add more CV constants.
+      ntdll: Exit when we can't map the shared user data.
+      kernel32/tests: Fix crash on win8 in module.
+      kernel32/tests: Fix crashes on win8 in console.
+      ntdll/tests: Fix check for PAGE_READWRITE.
+      winemaker: Output UTF-8 Makefiles.
+      psapi/tests: Fix test on win8.
+      wintrust/tests: Unify test message in case of a FALSE return.
+      winedbg: Add load/str multiple operators to Thumb2 disassembler.
+      schannel/tests: Fix test on win8.
+      secur32/tests: Fix tests on win8.
 
-Christian Costa (12):
-      d3drm: Implement texture SetAppData and GetAppData.
-      user32: Add tests for MapWindowPoints, ClientToScreen and ScreenToClient.
-      wmvcore: Add stub for DllRegisterServer.
-      winegstreamer: Remove left over FIXME.
-      winegstreamer: Turn some FIXME into TRACE.
-      strmbase: Use FreeMediaType instead of freeing media type by hand and forgetting pUnk release.
-      strmbase: Don't forget to add ref pUnk in CopyMediaType when pbFormat is null.
-      strmbase: Display new ref in AddRef and Release for IEnumMediaTypes.
-      strmbase: Display iface in TRACEs.
-      strmbase: Simplify IEnumMediaTypesImpl_QueryInterface and turn FIXME into WARN.
-      amstream: Initialize correctly AM_MEDIA_TYPE struct.
+Aric Stewart (1):
+      user32: More instances where early versions of usp10 are not well behaved with ScriptString_pSize being NULL.
+
+Aurimas Fišeras (4):
+      po: Update Lithuanian translation.
+      po: Update Lithuanian translation.
+      comdlg32: Move and resize controls of the Find dialog to better fit translations.
+      po: Update Lithuanian translation.
+
+Carlos Rafael Ramirez (1):
+      po: Update Spanish translation.
+
+Charles Davis (2):
+      ntdll: Add support for nanosecond precision file times on *BSD.
+      ntdll: Add support for BSD-style creation ("birth") time.
+
+Christian Costa (8):
+      amstream: Fix return value of BasePinImp_GetMediaType.
+      quartz: Fix case in some methods name.
+      cabinet: Remove useless ERR and turn one ERR into a WARN.
       cabinet: Simplify concatenation of path and filename.
-
-Christian Inci (1):
-      wined3d: Add support for nVidia GT 640M.
+      cabarc: Add some debug messages.
+      cabarc: Keep \ in the cab path as FDICopy expects it.
+      cabarc: Handle fdintNEXT_CABINET notification to support multi-cab archive.
+      cabarc: Handle fdintENUMERATE notification.
 
 Daniel Jelinski (2):
-      comctl32: Move WM_SIZE handling into WM_WINDOWPOSCHANGED.
-      xolehlp: Add some stubs.
+      wine.inf: Add registry info for lanmanserver service.
+      comctl32: Properly initialize internal structures.
 
-Detlef Riekenberg (8):
-      advapi32/tests: Fix a failure on 64bit NT 5.x.
-      advapi32: Allow string alias for common RID in sid strings.
-      advapi32/tests: Test string alias for common RID in sid strings.
-      netapi32/tests: Fix an access test failure on XP.
-      kernel32/tests: Fix 32-bit thread test failures on NT 5.x 64bit.
-      netapi32/tests: Fix workstation test failures on XP.
-      ktmw32: Add a stub for CreateTransaction.
-      ktmw32: Add a stub for CommitTransaction.
+Detlef Riekenberg (7):
+      crypt32/tests: Fix failures on win7 and above.
+      shell32/tests: Remove wrong comment.
+      d3dx9_36/tests: Fix broken line test.
+      advapi32/tests: Fix crash on 64bit windows for 64bit test.
+      shell32: Implement DoEnvironmentSubstW.
+      shell32: Fix DoEnvironmentSubstA implementation.
+      shell32/tests: Add tests for DoEnvironmentSubstA/W.
 
-Dmitry Timoshkov (11):
-      fonts: Update 10-pixel cyrillic bitmaps for Tahoma.
-      fonts: Update 10-pixel and some rarely used 9-pixel cyrillic bitmaps for Tahoma Bold.
-      gdiplus: Avoid more cases of allocating a transformation matrix on the heap.
-      windowscodecs: Add NULL pointer checks to some color context methods.
-      windowscodecs: Test QueryCapability of the TIFF decoder.
-      windowscodecs: Make GetFrameCount in the TIFF decoder not fail without an image stream.
-      windowscodecs: Implement QueryCapability in the TIFF decoder.
-      windowscodecs: Reimplement GetFrameCount of the GIF decoder.
-      windowscodecs: Implement QueryCapability in the GIF decoder.
-      windowscodecs: Add a test to show that QueryCapability initializes the decoder.
-      windowscodecs: Make GetFrame return WINCODEC_ERR_FRAMEMISSING without an image data.
+Dmitry Timoshkov (12):
+      oleaut32: Add a test for loading/saving an empty picture.
+      oleaut32: Add support for saving an empty picture.
+      windowscodecs: Add a NULL check to GetFrameCount of the BMP decoder.
+      windowscodecs: Reimplement QueryCapability of the BMP decoder.
+      windowscodecs: Reimplement GetFrameCount of the ICO decoder.
+      windowscodecs: Implement QueryCapability of the ICO decoder.
+      windowscodecs: Add a NULL check to GetFrameCount of the JPEG decoder.
+      windowscodecs: Implement QueryCapability of the JPEG decoder.
+      windowscodecs: Add a NULL check to GetFrameCount of the PNG decoder.
+      windowscodecs: Implement QueryCapability of the PNG decoder.
+      windowscodecs: Add a NULL check to GetFrameCount of the TGA decoder.
+      windowscodecs: Implement QueryCapability of the TGA decoder.
 
-Erich Hoover (2):
-      advapi32: Implement SetSecurityInfo on top of NtSetSecurityObject.
-      wininet: Fix InternetCrackUrl parsing URLs containing a semicolon.
+Erich Hoover (4):
+      advapi: Implement SetNamedSecurityInfoW on top of SetSecurityInfo.
+      advapi: Implement GetNamedSecurityInfoW on top of GetSecurityInfo.
+      advapi32: Return immediately for unsupported [Get|Set]NamedSecurityInfo objects.
+      advapi32: Fix NamedSecurityInfo test crash on some systems.
 
-Francois Gouget (4):
-      shell32: Fix a buffer overflow in CommandLineToArgvW().
-      msvcp60: Make some codecvt_xxx() functions static or remove them.
-      winegstreamer: Make the GST_QualityControl methods static.
-      server: Print the usage to stdout when invoked with --help.
+Francois Gouget (1):
+      gdi32: Make make_rgb_colorref() static.
 
 Frédéric Delanoy (4):
-      ole32: Avoid erroneously freeing a variable in ReadFmtUserTypeStg.
-      msi: Fix leaks in stop_service_dependents (coverity).
-      msi: Fix leaks in ITERATE_InstallService (coverity).
-      msi: Fix a couple of leaks (coverity).
+      ddraw: Return appropriate value for non matching 32 bit pixel format in PixelFormat_DD2WineD3D (coverity).
+      ole32: Add helper for string table memory freeing.
+      ole32: Fix some leaks (coverity).
+      wined3d: Add some 'fall through' comments (coverity).
 
-Hans Leidekker (17):
-      msvcr100: Add a version resource.
-      rpcrt4: Implement RpcMgmtIsServerListening.
-      mscms: Handle more bitmap formats.
-      windowscodecs: Implement IWICBitmapDecoderInfo::GetFileExtensions.
-      windowscodecs: Implement WICCreateColorContext_Proxy.
-      windowscodecs: Add a stub IWICColorContext implementation.
-      windowscodecs: Implement IWICBitmapFrameDecode::GetColorContexts for PNG images.
-      windowscodecs: Implement IWICColorContext::GetType.
-      windowscodecs: Implement IWICColorContext::InitializeFromMemory.
-      windowscodecs: Implement IWICColorContext::InitializeFromExifColorSpace.
-      windowscodecs: Implement IWICColorContext::GetExifColorSpace.
-      windowscodecs: Implement IWICColorContext::GetProfileBytes.
-      windowscodecs: Add tests for IWICColorContext.
-      windowscodecs: GetThumbnail should be supported for ICO frames.
-      advapi32: Avoid a buffer overflow in CredUnmarshalCredentialW.
-      msi: Don't set the REINSTALL property if the product will be patched.
-      ole32/tests: Add a test to show that CoGetPSClsid is not affected by an override of HKEY_CLASSES_ROOT.
+Hans Leidekker (5):
+      ole32: Use wrappers around NT functions to access the registry in CoGetPSClsid.
+      ole32: Convert the remaining RegCreateKey and RegOpenKey calls to the wrappers.
+      advapi32: Export more tracing functions.
+      kernel32: Implement SetFileValidData.
+      configure: Fix detection of fallocate on old glibc.
 
 Henri Verbeet (50):
-      ddraw: Avoid LPDIRECT3DTEXTURE.
-      ddraw: Avoid LPDIRECT3DMATERIAL3.
-      ddraw: Avoid LPDIRECT3DMATERIAL2.
-      wined3d: Add support for GLSL based fixed function fragment shaders.
-      wined3d: Handle relative addresses in the common code in shader_glsl_get_register_name().
-      ddraw: Avoid LPDIRECT3DMATERIAL.
-      ddraw: Avoid LPDIRECT3DVIEWPORT3.
-      ddraw: Avoid LPDIRECT3DVIEWPORT2.
-      d3d10core: Implement d3d10_device_VSGetShader().
-      d3d10core: Implement d3d10_device_PSGetShader().
-      ddraw: Avoid LPDIRECT3DVIEWPORT.
-      ddraw: Avoid LPDIRECT3DDEVICE7.
-      ddraw: Avoid LPDIRECT3DDEVICE3.
-      d3d10core: Implement d3d10_device_GSSetShader().
-      d3d10core: Implement d3d10_device_GSGetShader().
-      ddraw: Avoid LPDIRECT3DDEVICE2.
-      ddraw: Avoid LPDIRECT3DDEVICE.
-      ddraw: Avoid LPDIRECT3DLIGHT.
-      wined3d: Add support for geometry shaders to the GLSL shader backend.
-      d3d10core: Fix the stream index in d3d10_device_IASetVertexBuffers().
-      ddraw: Avoid LPDIRECT3D7.
-      ddraw: Avoid LPDIRECT3D3.
-      wined3d: Make state_geometry_shader() static.
-      d3d8/tests: Also test that render states get reset in test_reset().
-      d3d9/tests: Also test that render states get reset in test_reset().
-      ddraw: Avoid LPDIRECT3D2.
-      ddraw: Avoid LPDIRECT3D.
-      wined3d: Update the scissor rect and viewport even on redundant wined3d_device_set_render_target() calls.
-      d3d8/tests: Add a test for the viewport after SetRenderTarget() calls.
-      d3d9/tests: Add a test for the scissor rect and viewport after SetRenderTarget() calls.
-      d3drm: Avoid LPDIRECTDRAWSURFACE.
-      d3drm: Avoid LPDIRECTDRAWCLIPPER.
-      d3d9: Avoid resetting device state for d3d9ex resets.
-      d3d9/tests: Create the d3d9ex object in create_device().
-      d3d9/tests: Add tests for device resets in d3d9ex.
-      d3drm: Avoid LPDIRECT3DVIEWPORT.
-      d3drm: Avoid LPDIRECT3DDEVICE2.
-      d3drm: Avoid LPDIRECT3DDEVICE.
-      d3d10core: Implement d3d10_device_IAGetIndexBuffer().
-      d3d10core: Implement d3d10_device_IAGetVertexBuffers().
-      d3dx9: Avoid LPD3DXFILEDATA.
-      d3dx9: Avoid LPD3DXFILEENUMOBJECT.
-      d3dx9: Avoid LPD3DXFILESAVEDATA.
-      d3d10core: Implement d3d10_device_RSSetScissorRects().
-      d3d10core: Implement d3d10_device_RSGetScissorRects().
-      d3dx9: Avoid LPD3DXFILESAVEOBJECT.
-      d3dx9: Avoid LPD3DXFILE.
-      d3dx9: Avoid LPD3DXCONSTANTTABLE.
-      d3d10core: Implement d3d10_device_SOSetTargets().
-      d3d10core: Implement d3d10_device_SOGetTargets().
+      d3dx9: Avoid LPD3DXINCLUDE.
+      d3dx9: Avoid LPD3DXTEXTUREGUTTERHELPER.
+      d3dx9: Avoid LPD3DXPRTENGINE.
+      d3d10core: Implement d3d10_device_IAGetInputLayout().
+      winex11: Detect broken NVIDIA RandR setups.
+      d3dx9: Avoid LPD3DXPRTCOMPBUFFER.
+      d3dx9: Avoid LPD3DXPRTBUFFER.
+      d3dx9: Avoid LPD3DXPATCHMESH.
+      wined3d: Properly handle scalar destinations in shader_glsl_conditional_move().
+      d3d10core: Implement d3d10_device_DrawIndexedInstanced().
+      d3dx9: Avoid LPD3DXSKININFO.
+      d3dx9: Avoid LPD3DXSPMESH.
+      d3dx9: Avoid LPD3DXPMESH.
+      d3d10core/tests: Don't reuse the device.
+      d3d10core/tests: Use the correct enum in test_create_shader_resource_view().
+      d3dx9: Avoid LPD3DXMESH.
+      d3dx9: Avoid LPD3DXBASEMESH.
+      d3dx9: Avoid LPD3DXMATRIXSTACK.
+      wined3d: Also unbind stream outputs and the geometry shader in stateblock_unbind_resources().
+      wined3d: Fix a typo in wined3d_device_set_stream_output().
+      d3dx9: Avoid LPD3DXEFFECTPOOL.
+      d3dx9: Avoid LPD3DXEFFECTSTATEMANAGER.
+      d3dx9: Avoid LPD3DXSPRITE.
+      d3d10core: Implement d3d10_device_VSSetConstantBuffers().
+      d3d10core: Implement d3d10_device_VSGetConstantBuffers().
+      d3dx9: Avoid LPD3DXLINE.
+      d3dx9: Avoid LPD3DXBUFFER.
+      d3dx9: Avoid LPD3DXANIMATIONCONTROLLER.
+      wined3d: Resolve the instance count for instanced arrays in load_numbered_arrays().
+      wined3d: Add support for ARB_instanced_arrays.
+      d3dx9: Avoid LPD3DXANIMATIONCALLBACKHANDLER.
+      d3dx9: Avoid LPD3DXKEYFRAMEDANIMATIONSET.
+      d3dx9: Avoid LPD3DXANIMATIONSET.
+      d3d10core: Implement d3d10_device_GSSetConstantBuffers().
+      d3d10core: Implement d3d10_device_GSGetConstantBuffers().
+      d3dx9: Avoid LPD3DXALLOCATEHIERARCHY.
+      d3dx9: Fix the LPLPD3DXFILE typedef.
+      ddraw: Avoid LPDDSCAPS.
+      d3d10core: Implement d3d10_device_PSSetConstantBuffers().
+      d3d10core: Implement d3d10_device_PSGetConstantBuffers().
+      ddraw: Avoid LPDDSCAPS2.
+      ddraw: Avoid LPDDCAPS.
+      ddraw: Avoid LPDDCOLORKEY.
+      d3d10core: Implement d3d10_device_VSSetSamplers().
+      d3d10core: Implement d3d10_device_VSGetSamplers().
+      ddraw: Avoid LPDDPIXELFORMAT.
+      ddraw: Avoid LPDDSURFACEDESC.
+      ddraw: Avoid LPDDSURFACEDESC2.
+      d3d10core: Implement d3d10_device_GSSetSamplers().
+      d3d10core: Implement d3d10_device_GSGetSamplers().
 
-Huw Davies (1):
-      winspool: Pre-1.6 versions of CUPS can leave behind a file when cupsGetPDD3 fails, so clear up afterwards.
+Huw Davies (6):
+      gdi32: Simplify the point type checking logic.
+      winex11: Add a few 'fall through' comments.
+      oledb32: Add a 'fall through' comment.
+      sane.ds: Add a missing break.
+      oledlg: Add a missing break.
+      riched20: Flush the output buffer before a codepage change.
 
 Hwang YunSong (1):
       po: Update Korean translation.
 
-Jacek Caban (41):
-      mshtml: Properly report history update for location.replace call.
-      mshtml: Don't skip history notification for about: URLs.
-      mshtml: Added IPersistHistory tests.
-      mshtml: Store embedder's IOleComandTarget iface in HTMLDocumentObj and use it in handle_navigation_error.
-      mshtml: Added exec_refresh implementation.
-      mshtml: Added refresh tests.
-      ieframe: Forward more DocHost::Exec calls to embedders.
-      ieframe: Added IWebBrowser2::Refresh implementation.
-      ieframe: Added IWebBrowser2::Refresh tests.
-      mshtml: Added IHTMLScriptElement::get_text implementation.
-      jscript: Use proper object as 'this' when function is called on an activation object.
-      atl: Properly fail on an aggregation attempt.
-      cmd: Make allocation unfailable.
-      cmd: Added HeapFree wrapper.
-      wininet: Store both proxy and destination host in http_request_t.
-      wininet: Fixed HTTP CONNECT secure connection.
-      amvideo.idl: Use proper IDirectDraw forward declaration.
-      wininet: Store an info if connection is HTTPS in server_t.
-      wininet: Allow passing INTERNET_INVALID_PORT_NUMBER port to get_server.
-      wininet: Store more useful strings in server_t.
-      wininet: Use processed string from server_t for constructing proxy path.
-      wininet: Use proxy settings directly from http_request_t in a few more places.
-      mshtml: Use stdint.h type names in nsiface.idl.
-      atl100: Addeed stub DLL.
-      atl: Always return S_FALSE in DllCanUnloadNow.
-      atl: Removed unneeded includes.
-      atl: Moved atlbase.h to public includes.
-      atl100: Moved IRegistrar implementation to atl100.
-      atl: Moved atlwin.h to public includes.
-      atl100: Moved more function implementations to atl100.
-      atl: Added AtlGetVersion implementation.
-      atl80: Forward calls directly to atl100 when possible.
-      winecrt0: Use atl100.dll directly to create a registrar instance.
-      mshtml: Use ATTR_FIX_PX in IHTMLStyle2::put_bottom implementation.
-      mshtml: Fixed leak in fill_props.
-      mshtml: Always use UTF-8 encoding in nsWineURL.
-      mshtml: Added nsIURI::GetOriginCharset implementation.
-      atl: Don't forward AtlModule* calls to atl100.dll.
-      advapi32: Added debug trace to RegOverridePredefKey.
-      wininet: Don't take INTERNET_BUFFERSW as argument in object's ReadFileEx entry.
-      wininet: Use generic ReadFileEx entry in InternetReadFileExA and get rid of ReadFileExA entry.
+Jacek Caban (26):
+      mshtml: Fixed a few coverity issues.
+      jscript: Fixed some Coverity issues.
+      mshtml: Use UTF-8 encoding in is_gecko_path.
+      mshtml: Added IHTMLInputElement::defaultValue property implementation.
+      hhctrl.ocx: Added import library.
+      jscript: Alias arguments properties to real values.
+      jscript: Added disp_delete helper and use it in interp_delete_ident.
+      jscript: Added disp_delete_name helper and use it in interp_delete.
+      jscript: Added support for DontDelete attribute and use it for arguments object.
+      jscript: Cut arguments circular reference after returning from the function.
+      jscript: Added support for indexed string access.
+      wininet: Fixed NULL cookie data pointer handling in InternetGetCookieA.
+      mshtml: Added support for converting (some) argument types in builtin function calls using script engine.
+      msxml3: Moved XMLHTTPRequest tests to separated file.
+      winedump: Added MSFT support.
+      jscript: Treat VT_UNKNOWN VARIANTs supporting IDispatch interface as VT_DISPATCH.
+      itss: Cleaned up CombineUrl tests.
+      itss: Fixed fragment part handling in IInternetProtocolInfo::CombineUrl.
+      mshtml: Added SID_SContainerDispatch support.
+      mshtml: Properly handle NULL value in set_nsstyle_attr.
+      msxml3: Use IUri for storing XMLHTTPRequest URL.
+      msxml3: Added basic URL validation in safe mode.
+      msxml3: Added URL validation tests.
+      msxml3: Tests code clean up.
+      jscript: Added more useful debug traces.
+      vbscript: Use simplified constant implementation for more constants.
 
 Jason Edmeades (3):
-      cmd: Add support for tokens= (for /f).
-      cmd: Prevent external env vars causing tests to fail.
-      cmd: Add support for NUL in copy.
-
-Jörg Höhle (1):
-      mciavi: Fix player deadlock when starting to play.
+      cmd: Prevent overflow for long command string.
+      cmd: Change what 'ver' issues.
+      cmd: Wait for command to complete when spawned through cmd /c.
 
 Maarten Lankhorst (1):
-      dsound: Create a primary_pwfx separately from pwfx.
+      dsound: Set dwChannelMask when limiting channels.
 
-Marcus Meissner (1):
-      wininet: Move freeing netconn into create_netconn_socket (Coverity).
+Michael Stefaniuc (11):
+      winex11.drv: The winediag debug channel is only used for HAVE_XRRGETSCREENRESOURCES.
+      comctl32: Remove a superfluous function pointer cast.
+      riched20/tests: Remove a superfluous function pointer cast.
+      qmgr: COM cleanup for the IBackgroundCopyManager iface.
+      qmgr: Parameter cleanup for a helper function.
+      winex11.drv: Remove superfluous function pointer casts.
+      msxml3: Remove superfluous function pointer casts.
+      qmgr: COM cleanup for the IEnumBackgroundCopyJobs iface.
+      qmgr: Merge a helper function.
+      qmgr: COM cleanup for the IEnumBackgroundCopyFiles iface.
+      qmgr: Merge a helper function.
 
-Michael Stefaniuc (20):
-      user.exe16: Use FIELD_OFFSET to calculate the size of a struct with variable length array.
-      msiexec: Use FIELD_OFFSET to calculate the size of a struct with variable length array.
-      msi: Don't over-allocate memory for a MSISELECTVIEW.
-      oleaut32: Remove a superfluous TRUE:FALSE conditional expression.
-      msvcp100: Avoid FALSE:TRUE conditional expressions.
-      ws2_32: Avoid using sizeof on structs with variable length array.
-      krnl386.exe16: Use FIELD_OFFSET for the size of structs with varlength arrays.
-      msvcp: Don't cast zero.
-      kernel32/tests: Don't cast zero.
-      user32: Remove two superfluous casts.
-      appwiz: Use the correct types for callbacks.
-      wintab32/tests: Remove a function pointer cast.
-      shell32: Use the proper type for a function pointer field.
-      comdlg32/tests: Fix the prototype of callback functions.
-      dpnhpast: "Fix" DllCanUnloadNow() implementation.
-      hlink: "Fix" DllCanUnloadNow() implementation.
-      msisys.ocx: "Fix" DllCanUnloadNow() implementation.
-      olepro32: "Fix" DllCanUnloadNow() implementation.
-      pstorec: "Fix" DllCanUnloadNow() implementation.
-      qedit: "Fix" DllCanUnloadNow() implementation.
+Nikolay Sivov (24):
+      dwrite: Implement family name access methods for IDWriteTextFormat.
+      dwrite: Add a separate function to copy text format data.
+      xmllite: Implement initial encoding switching.
+      xmllite: Add partial support for xml declaration parsing.
+      ole32: Fix OleDraw() regarding passed rectangle handling.
+      msxml3: Move document loading from stream to a separate function.
+      msxml3: Support ISequentialStream as a document load source.
+      msxml3: No need to keep a reference to a temporarily used stream.
+      xmllite: Implement encoding declaration parsing.
+      xmllite: Support standalone declaration.
+      xmllite: Fix equal sign parsing.
+      msxml3: Properly store SystemID and PublicID (Coverity).
+      msxml3: Actually use skipped entity event data.
+      msxml3: Fix handling of NULL object site (Coverity).
+      msxml3: Check return value (Coverity).
+      wshom: Fix refcount for typeinfo pointers.
+      dwrite: Handle allocation error (Coverity).
+      oledb32: Properly free property sets and propinfo sets (Coverity).
+      msxml3: Revert "msxml3: AddRef() typeinfo pointers only when we have to.".
+      msxml3: Fix a leak on error path.
+      msxml3: Initialize body pointer and size for unknown types (Coverity).
+      xmllite: Initial support for attribute list.
+      xmllite: Implement attribute iteration methods.
+      xmllite: Fix reported node type for attributes.
 
-Nikolay Sivov (29):
-      comcat: Cleanup from unused includes and imports.
-      msxml3: Add VT_INT to VARIANT tracing helper.
-      msxml3: Fix a redundant newline in transformation result in html mode.
-      msxml3: Disable text data escaping for format nodes set with put_data().
-      scrrun: Use heap helpers for dictionary.
-      scrrun: Improve OpenTextFile stub.
-      scrrun: Block stream reading calls if it's not in ForReading mode.
-      msi: Cache ITypeInfo instances for automation objects instead of reloading every time.
-      msi: Store object function pointers with type id.
-      msi: COM cleanup for IActiveScriptSite.
-      msi: Make it clear where script type mask comes from.
-      msi: Remove unnecessary casts and argument from script site creation helper.
-      msxml3: Store handler pointers so casts to particular type are avoided.
-      msxml3: Stub support for external entity resolver.
-      xmllite: Support application defined IMalloc for reader.
-      xmllite: Use application defined IMalloc for reader input.
-      xmllite: Add stub for reader input buffer.
-      xmllite: Keep stream reference in reader input instead of reader itself.
-      xmllite: Store reader input impl pointer in reader structure.
-      msxml3: Make it clear when encoded buffer is created.
-      msxml3: AddRef() typeinfo pointers only when we have to.
-      xmllite: Initial support for reader input encoding detection.
-      xmllite: Implement GetNodeType() for reader.
-      xmllite: Store remaining reader input parameters.
-      odbc32: Implement SQLDataSourcesA() forward.
-      oledb32: Implement IDataInitialize::CreateDBInstance.
-      oledb32: Implement IDataInitialize::GetInitializationString.
-      msxml3: Properly update node to doc link when cloning.
-      include: Added error codes enum, cleanup existing enums.
-
-Nozomi Kodama (2):
-      d3dx9_36: Implement handy computations for small orders in D3DXSHRotate.
-      d3dx9_36: Fix the case out = in for D3DXSHRotate.
-
-Piotr Caban (26):
-      msvcp90: Free memory allocated by _get_current_locale function.
-      msvcp90: Fixed a memory leak in virtual destructor tests.
-      gdi32: Ignore contours containing one point in get_glyph_outline function.
-      gdi32: Added GetGlyphOutlineW tests on glyph that contains empty contour.
-      msvcp90: Fixed basic_istream_char_read_uint64 tests.
-      msvcp60: Fixed basic_filebuf<char> implementation.
-      msvcp60: Fixed basic_filebuf<short> implementation.
-      msvcp60: Fixed basic_string::c_str implementation.
-      msvcp60: Added basic_string tests.
-      msvcp60: Remove mutex class.
-      msvcp60: Fixed num_get class implementataion.
-      msvcp60: Fixed num_put::fput implementation.
-      msvcp60: Fixed basic_istream::ipfx implementation.
-      msvcp60: Fixed basic_istream::seekg implementation.
-      msvcp60: Fixed basic_istream::getline(basic_string) implementation.
-      msvcp60: Added iostream tests.
-      urlmon: Update reference counter in bsc_from_bctx.
-      msvcp80: Forward functions that are using String_iterators to msvcp90.
-      msvcp90: Added wctrans and towctrans implementation.
-      msvcp90: Added wctrans and towctrans tests.
+Piotr Caban (30):
+      msvcp100: Added basic_ostream::ends implementation.
       msvcp: Sync implementations.
-      msvcp60: Added basic_stringbuf::_Mode implementation.
-      msvcp60: Export basic_ostream constructors.
-      msvcp60: Fixed handling of empty strings.
-      msvcp60: Fixed basic_string::_Tidy implementation.
-      msvcp60: Fixed basic_string::_Copy implementation.
+      msvcp60: Export locale classes destructors.
+      msvcp100: Added _Container_base0::operator= implementation.
+      msvcp100: Added _Container_base12 class implementation.
+      msvcp100: Added _Container_base12 class tests.
+      msvcp60: Forward bad_cast functions to msvcrt.
+      msvcp60: Added locale::_Locimp::_Global export.
+      msvcp60: Added locale::_Getfacet export.
+      msvcp60: Added locale::Iscloc implementation.
+      msvcp60: Added basic_filebuf<short>::_Initcvt export.
+      msvcp60: Added seekoff exports.
+      msvcrt: Remove superfluous semicolons.
+      msvcp: Remove superfluous semicolons.
+      msvcp100: Added exception throwing helpers.
+      msvcrt: Added mbrlen implementation.
+      msvcrt: Added mbrlen tests.
+      msvcrt: Added mbrtowc implementation.
+      msvcrt: Added mbrtowc tests.
+      msvcrt: Added mbsrtowcs implementation.
+      msvcrt: Added mbsrtowcs tests.
+      msvcrt: Added wcrtomb implementation.
+      msvcrt: Added wcrtomb tests.
+      msvcp70: Forward bad_cast functions to msvcrt.
+      msvcp: Sync spec files.
+      msvcr90: Fixed non-blocking file access tests.
+      include: Added MS_ENH_RSA_AES_PROV_XP definition.
+      msvcr: Move msvcrXX specific functions implementation to msvcr100.
+      tools: Update make_specfiles script.
+      msvcr80: Copy _encode_pointer and _decode_pointer functions from msvcp90.
 
-Qian Hong (2):
-      usp10: Fixed wgBlank, wgDefault, wgInvalid and wgKashida.
-      usp10/tests: Added tests for wgBlank, wgDefault, wgInvalid and wgKashida.
+Putin Evgeny (1):
+      wineps.drv: Add orientation field to postscript header.
+
+Qian Hong (1):
+      ole32: Fix OleDraw() with NULL pUnk.
+
+Rico Schüller (1):
+      d3dx9: Improve D3DXMatrixRotationYawPitchRoll().
+
+Stefan Dösinger (14):
+      ddraw: Don't create a wastefully large index buffer.
+      ddraw: Make the index buffer write only.
+      ddraw: Properly use the index buffer as a dynamic buffer.
+      ddraw: Don't map 1, 2 and 4 bit alpha formats to WINED3DFMT_A8_UNORM.
+      wined3d: Add an explicit break in case of unhandled BUMPENVMAP.
+      ddraw: Create a dynamic buffer if DDLOCK_DISCARDCONTENTS is used.
+      wined3d: Bind the src in a manual presentation blit.
+      wined3d: Correctly count used stages in the atifs pipeline.
+      wined3d: Test the correct program for native limits.
+      wined3d: Use sign fixup for the atifs bumpenv matrix.
+      wined3d: Add GL_ALPHA to the atifs argument replicator debug function.
+      d3d9/tests: Skip some texture transform tests if shaders are unsupported.
+      d3d9/tests: Give the texture transform test a defined colorop.
+      d3d9/tests: Move the clipplane + shader test inside the capability check.
+
+Vincent Povirk (6):
+      gdiplus: Use clipping region in alpha_blend_pixels.
+      gdiplus: Add a test for drawing to HDC's backed by 32-bit alpha dibs.
+      gdiplus: Avoid accessing dib bits directly in GdipCreateBitmapFromHBITMAP.
+      gdiplus: Use one GetDIBits call instead of one per row.
+      gdiplus: Always use AlphaBlend to draw to 32-bit DIB's.
+      gdiplus: Fix graphics bounds for memory DC's.
 
 --
 Alexandre Julliard
diff --git a/VERSION b/VERSION
index c4dad89..4355eea 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.5.18
+Wine version 1.5.19
diff --git a/configure b/configure
index c1e10d7..6ddb15f 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Wine 1.5.18.
+# Generated by GNU Autoconf 2.69 for Wine 1.5.19.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.5.18'
-PACKAGE_STRING='Wine 1.5.18'
+PACKAGE_VERSION='1.5.19'
+PACKAGE_STRING='Wine 1.5.19'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 PACKAGE_URL='http://www.winehq.org'
 
@@ -1400,7 +1400,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Wine 1.5.18 to adapt to many kinds of systems.
+\`configure' configures Wine 1.5.19 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1469,7 +1469,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.5.18:";;
+     short | recursive ) echo "Configuration of Wine 1.5.19:";;
    esac
   cat <<\_ACEOF
 
@@ -1616,7 +1616,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.5.18
+Wine configure 1.5.19
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2134,7 +2134,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Wine $as_me 1.5.18, which was
+It was created by Wine $as_me 1.5.19, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -16628,7 +16628,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Wine $as_me 1.5.18, which was
+This file was extended by Wine $as_me 1.5.19, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16699,7 +16699,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Wine config.status 1.5.18
+Wine config.status 1.5.19
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
