diff --git a/ANNOUNCE b/ANNOUNCE
index 9b14216..b692da0 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,17 +1,18 @@
-The Wine development release 1.1.2 is now available.
+The Wine development release 1.1.3 is now available.
 
 What's new in this release (see below for details):
-  - Control panel improvements and new appwiz panel.
-  - Restructurations of state handling in Direct3D.
-  - Support for timer queue functions.
-  - Many MSXML improvements.
-  - Several fixes to Solaris support.
+  - Beginnings of ddraw overlay support.
+  - Many more crypt32 functions.
+  - Improved support for tables in Richedit.
+  - Support for NETWM window maximization.
+  - Many installer fixes.
+  - Tweaks for better PulseAudio support.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.2.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-1.1.2.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.3.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.1.3.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -27,580 +28,906 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.1.2:
+Bugs fixed in 1.1.3:
 
-   1789  msvcrt type conversion problem
-   3714  ERMapper 7 won't run because of registry key issues
-   4919  Morrowind fails to start with the error "Unknown Stencil Mode Format"
-   6650  MSTSC (Remote Desktop) crashes
-   7778  Discworld II info window about no CD in drive not drawn
-   7788  Morrowind Elder Scrolls 3 crashes very early in game
-   7930  C&C 3 slows down after changing graphics settings
-   8176  EverQuest 1 terrain textures disappearing
-   8604  No videoplayback in spongebob squarepants - whitescreen
-   9035  Adobe/Macromedia Studio MX installer fails
-   9709  Solid cyan screen when entering character select in EQ
-   9855  Red Alert: A Path Beyond crashes with a sound error
-  10146  Wine versions >0.9.43 break PokerAce Hud, as the application fails to create a timer during start-up.
-  10936  wine cannot switch 32bit to 16bit
-  10991  SPlan 6.0 (schematic editor): Status bar is not show completely
-  11198  C & C Tiberian Sun reporsts comctl32.dll is an older version on winver higher then 98
-  11936  window size is too small in the "vc2008 redist installer" and "Firefox 3" [dogfood]
-  11950  TheBat! 3.99.1 show white squares not icons under wine after 0.9.56
-  12023  Broken sound in Live For Speed game
-  12210  Copy/paste corruption in The Elder Scrolls Construction Set
-  12302  Lord of the Rings:  Shadows of Angmar unplayable due to high lag
-  12491  PES 2008 crash at launch with a "fail to get video memory" message
-  12582  solidworks crash at startup in mshtml
-  12718  Typing the username in MSN Messenger 7.5 is really slow
-  12722  intel software codecs video not working for thief/system shock
-  12783  Allocation of PEB and TEB can overlap dll mappings
-  12905  EVE Online light effects and some other objects are not blended correctly when HDR is enabled
-  13307  graphical glitches on wzebra board
-  13325  Fireworks 8 trial doesn't draw window background initially
-  13450  "Race driver : Grid" demo crash in the menu
-  13860  Sacrifice Demo: d3d_surface errors fill console
-  13991  eDrawings viewer needs gdiplus.GdipCreateBitmapFromResource
-  13999  No videoplayback in spongebob squarepants - whitescreen
-  14019  systray icon not displayed in dual screen
-  14040  Microsoft Virtual Earth 3D beta inner installer aborts when reading registry
-  14155  Enterprise Architect - Text on diagrams renders upside down
-  14197  white window when starting the patcher
-  14225  HTML help: Browsing local help url's fail & local graphic url's not shown.
-  14249  Hearts of Iron 2: Armageddon crashes
-  14273  Fonts unreadable on TaxAct forms
-  14277  SnelStart installer bails out with error box
-  14326  CAJViewer 7.0 hangs on startup
-  14344  Morrowind crashes when loading a saved game if music is enabled.
-  14351  RtlpWaitForCriticalSection times out towards end of tests
-  14356  alt.binz does not run anymore
-  14393  atoi() implemenation on large integers is wrong
-  14429  compile fail in msxml_private.h:94
-  14439  Office 2003 Pro install aborts in 1.1.1 with MS error code 1627
-  14441  Rose Online Evolution crash with new msxml patch
-  14462  Blitzin2: Cursor not visible
-  14483  WinVerifyTrustEx doesn't return expected HRESULT for PE images not digitally signed (TRUST_E_NOSIGNATURE)
-  14502  iphlpapi missing Icmp* functions
-  14523  msiexec hangs when installing msxml3.msi in 1.1.1
-  14524  richtext error 'Insurgency-2.1rc1-Full.exe'
-  14527  90º rotated text not shown
-  14539  RtlIsTextUnicode regression: ideographic space should not be used in check for reversed control chars
-  14568  Silence FIXME from CoGetContextToken stub to prevent flooding of trace output when COM+ context is queried from .NET runtime
-  14578  Thief, System Shock 2 - video intros hang/crash in the end
+   1439  commdlg.dll.so comdlg32.dll.so, a possible font dialog bug ?
+   2538  Reaktor menus not displayed properly - gray bars
+   2605  Borland qtinf70 draw problems
+   3307  wininet: A cookie set during a 302 response won't be used during an automatic redirect
+   3332  Explore Folder using ShellExecute fails
+   3546  CLSID_InternetShortcut not available...
+   4101  Picasa: Unable to use Blogthis after signin.
+   5033  WINE_GET_SONAME does not pick up libjack soname
+   5286  TreeView in Becky! Internet Mail doesn't work properly
+   5504  riched20:Spinner on textfields and comboboxes
+   6160  eDrawings somewhat installs completely but fails to run
+   6519  Wine blacks out rotated font bitmap
+   6534  Counter Strike 1.6 crashes after asking for the gecko engine
+   7118  Wine does not listen to the clipboard
+   7211  Wine does not correctly launch Guild Wars
+   8829  EVE Online model of Large Artillery Battery structure is mostly transparent
+   9670  SparVoip crashes
+  10303  Unable to play Windows Media files
+  10437  Altium Designer crash
+  10620  PAF 5 help viewer hits unhandled page fault while closing
+  10684  Some games fail to restore pre-launch gamma
+  10951  Flashlight is darker then it should be in Half-Life 2: Episode 2
+  11029  Black & White game does not respond to mouse clicks
+  11098  Vaz Modular 3.03 hangs on exit
+  11526  Wine dies when starting Sigma Photo Pro 3.0
+  11616  Soulbringer crashes after intro
+  11766  Heap corruption in crypt32 during Sandra benchmark?
+  12087  winrar add file dialog cannot get multi-select files correctly
+  12089  winrar crashes when I try to add a file with a long file name
+  12206  Can't install Timeshift Demo
+  12364  Overlapping of windows within Photoshop CS2
+  12486  Microsoft Office Standard 2007 installation failure
+  12521  Origin 8.0: License expires immediately without native msxml3
+  12624  Installer failes to register typelib
+  12634  WMP10 main window spurious window decorations
+  12839  iphplapi: iphplapi.ok test fails in PC-BSD but not Linux
+  12856  user32: menu.ok test fails in PC-BSD but not Linux
+  12919  kernel32: virtual test fails in PC-BSD but not Linux
+  12921  kernel32: toolhelp test fails in PC-BSD but not Linux
+  13051  UI elements in Picasa displayed incorrectly after minimize and restore
+  13173  Dragon NaturallySpeaking 9.0 Preferred crash on unimplemented gdiplus.dll.GdipCreateLineBrushFromRectWithAngleI
+  13191  Trackmania Nations Forever doesn't work with PC2/3 shaders or with bloom-effect
+  13217  Minimize/restore needs to send a WM_SYSCOMMAND message
+  13231  msi: source.ok fails in Opensolaris
+  13236  shell32: shlexec.ok fails in Opensolaris
+  13256  Age of Mythology: missing bilinear filtering
+  13268  MsiExec Runtime Error during install
+  13446  Joining certain servers crashes Counter Strike: Source
+  13550  Wrong textures being displayed at wrong places.
+  13573  Room Arranger 5.04 needs GdipDrawEllipseI
+  13586  Prince of Persia The Two Thrones: weird rendering bug - duplications on the sides
+  13590  MS Office 2003: Cannot install Service Pack
+  13601  can't compile wine with Xcode 3.1 or iPhone SDK
+  13785  Opera 9.27 crashes at MSI install when you choose target location
+  13877  Microsoft Office Enterprise 2007 fails to install
+  14031  Max Payne 2: GL_INVALID_OPERATION in texture_activate_dimensions
+  14038  Max Payne 2: bullet time screen filled with solid color
+  14122  MagicMaps crashes in 2D window when user session via nxclient
+  14183  HttpSendRequest() should fetch connection parameters instead of HttpOpenRequest(), especially Cookies.
+  14192  ElsterFormular 2007/2008: Data submission fails with "Errorcode 49152"
+  14199  Vertical text not rendered in schematic view of Altium DXP 2004
+  14227  MathCAD 2000 Pro 2D graph text label bug
+  14268  carto exploreur 3 - crash
+  14280  Richedit's EM_SETTEXTEX ignores ST_SELECTION
+  14339  Download does not initialize when using Blizzard Downloader.
+  14379  Ares does not connect to its network
+  14384  Can not install MSDN - installer crashes
+  14468  Hearts of Iron 2: Armageddon stops loading savegames
+  14509  RegGetValue sometimes doesn't work properly
+  14513  msysgit installer fails due to missing CreateHardLinkA stub
+  14591  Oblivion crashes in wine 1.1.1
+  14594  crypt32.CryptHashMessage needed for VS.NET 2005 (deployment project type creation)
+  14605  Star Wars Galaxies: USB joystick crashes application
+  14615  rks_trial game is drawn out of place in its window
+  14635  Regression - Cups printer not showing after upgrade to 1.1.2
+  14678  Office 2003 Pro installer page faults at end of install process
+  14679  Diablo II Installer from Blizzard account download doesnt work.
+  14683  Microsoft Money 2007: Crash on program startup
+  14696  Mordor: the Depths of Dejenol installer crashes when running UNWIP.EXE
+  14706  Max Payne 2: Windows no longer transparent
+  14712  offcolour ingame text in Battlefield 1942
+  14714  intermittant crashes while playing bf1942
+  14716  distant objects not obscured by fog in bf1942
+  14720  Steam: uninstaller no longer launches from wine uninstaller
+  14724  Max Payne 2: PP effect performance (ORM=fbo)
+  14725  unimplemented function gdiplus.dll.GdipSetStringFormatTabStops
+  14726  AW broser crashes, starts fine with native wininet
+  14738  Sacred Underworld crashes when opening a lan game
+  14745  wined3d BltOverride - blits from non-pow2 surfaces cause issues without GL_ARB_texture_non_power_of_two
+  14790  after full tilt poker upgrade, client crashes randomly
+  14816  Build breaks on "Solaris Express Community Edition" (SX:CE) (Solaris 11) at git + many warnings
+  14908  listview items does not appear selected
+  14911  Unable to run Drakensang demo
+  14917  Ddraw Realizepalette regression
 
 ----------------------------------------------------------------
 
-Changes since 1.1.1:
+Changes since 1.1.2:
 
 Adam Petaccia (11):
-      gdiplus: Stub GdipNewPrivateFontCollection.
-      gdiplus: Stub GdipDeletePrivateFontCollection.
-      gdiplus: Stub GdipPrivateAddFontFile.
-      gdiplus: Stub GdipGetFontCollectionFamilyCount.
-      gdiplus: Stub GdipGetFontCollectionFamilyList.
-      gdiplus: Implement GdipCreateRegion and mark the tests todo_wine instead of skipping over them all.
-      gdiplus: Implement GdipDeleteRegion.
-      gdiplus: Implement GdipSetEmpty.
-      gdiplus: Implement GdipSetInfinite.
-      gdiplus: Implement GdipGetRegionDataSize.
-      gdiplus: Stub GdipIsStyleAvailable.
+      gdiplus: Implement GdipGetRegionData.
+      gdiplus: Implement GdipCreateRegionPath.
+      gdiplus: Implement GdipCreateRegionRect.
+      gdiplus: Implement GdipCreateRegionRectI.
+      gdiplus: Implement GdipCloneRegion.
+      gdiplus: Implement GdipCombineRegionRect.
+      gdiplus: Implement GdipCombineRegionRectI.
+      gdiplus: Implement GdipCombineRegionRegion.
+      gdiplus: Implement GdipCombineRegionPath.
+      gdiplus: Add another test to getregiondata.
+      gdiplus: Skip the generic font tests if we don't have the required fonts.
 
-Alex Villacís Lasso (5):
-      richedit: Shorten EM_AUTOURLDETECT tests.
-      richedit: Tests for visibility behavior of richedit scrollbars,  with todo_wine.
-      richedit: More tests for visibility behavior of richedit scrollbars, with todo_wine.
-      richedit: Tests for WM_SIZE/scrollbar recursion bug, with todo_wine.
-      richedit: Do not read actual scrollbar state for scrollbar update, use internal state instead.
+Alexander Dorofeyev (5):
+      wined3d: Add ActivateContext in color_fill_fbo.
+      ddraw/tests: Skip cubemap tests when cubemap isn't supported.
+      wined3d: Disable TEXTURE_RECTANGLE in SetupForBlit.
+      wined3d: Set D3DPTEXTURECAPS_TRANSPARENCY.
+      wined3d: Fix copy paste error in IWineGDISurfaceImpl_RealizePalette.
 
-Alexander Dorofeyev (13):
-      ddraw: Force surfaces without memory flags to video memory on creation.
-      ddraw/tests: Add tests for surface caps memory flags.
-      quartz: Make Filtermapper aggregatable.
-      quartz: Aggregate filtermapper in filtergraph.
-      quartz/tests: Test querying IFilterMapper2 from FilterGraph.
-      quartz/tests: Add filtermapper aggregation tests.
-      quartz/tests: Fix interface leaks in aggregation test.
-      quartz: Fix interface leak in FilterGraph2_RemoveFilter.
-      quartz/tests: Fix interface leaks in filtergraph test.
-      quartz: Fix variant handling in GetFilterInfo.
-      quartz: Add missing VariantClear after GetFilterInfo calls.
-      quartz: Fix interface leak in FilterGraph2_Render.
-      ddraw: Improve IDirect3DDevice7_Load implementation.
+Alexander Morozov (4):
+      include/ddk/wdm.h: Add defines.
+      ntoskrnl.exe: Add stubs for IoAllocateIrp, IoInitializeIrp and IoFreeIrp.
+      ntoskrnl.exe: Add stub for IoDeleteSymbolicLink.
+      kernel32: Fix a typo.
 
-Alexander Nicolaysen Sørnes (10):
-      wordpad: Show error message if saving fails.
-      regedit: Fix concat handling in unicode import.
-      regedit: Add missing fclose on file import.
-      notepad: Fix opening Unicode files.
-      regedit: Update Norwegian Bokmål translation.
-      wordpad: Show error if file open fails.
-      winefile: Don't access uninitialized value.
-      regedit: Fixes for Norwegian Bokmål translation.
-      Updated Norwegian Bokmål Readme file.
-      dpnet: Register DirectPlay8ThreadPool object.
+Alexander Nicolaysen Sørnes (13):
+      dpnet: Add basic DirectPlay8ThreadPool implementation.
+      shell32: Update Norwegian Bokmål translation.
+      appwiz.cpl: Fix overlapping controls.
+      appwiz.cpl: Add Norwegian Bokmål translation.
+      regedit: Convert deletion to unicode.
+      regedit: Convert printing&help to unicode.
+      regedit: Convert clipboard handling to unicode.
+      kernel32/winerr: Add Norwegian Bokmål translation.
+      regedit: Fix passing null pointer.
+      winhlp32: Update Norwegian Bokmål translation.
+      regedit: Convert key creation to unicode.
+      regedit: Convert AddEntryToTree to unicode.
+      dpnet: Add stubbed DirectPlay8Peer interface.
 
-Alexandre Julliard (14):
-      msxml3: Fix compile without xml headers.
-      mstask: Add stubs for the duplicate stdcall entry points.
-      icmp: The import library is not needed.
-      dbghelp: Always initialize section pointer in ImageDirectoryEntryToDataEx.
-      winetest: Fix a compiler warning with the size_t type.
-      Avoid exporting common symbols since that's broken on Mac OS X.
-      winebuild: Add Solaris as a separate platform.
-      winebuild: Don't put the PE header in the .init section on Solaris.
-      winegcc: Add support for specifying section alignment on Solaris.
-      user32: Fix MapWindowPoints behavior in the process that owns the desktop window.
-      user32/tests: Make sure the bitmap info passed to CreateDIBSection contains a valid color table.
-      inetmib1: Check for failure of the iphlpapi functions instead of blindly trusting them.
-      make_makefiles: Explicitly list the Wine headers that should be exported.
-      shell32: Define a valid cursor for the control panel window.
+Alexandre Julliard (24):
+      configure: Don't use cups-config --libs, it returns garbage.
+      wine.inf; Don't overwrite path and temp dir environment variables on upgrades.
+      ntdll: Use the generic int 0x91 syscall on Solaris so that it works on all CPUs.
+      user32/tests: Fix some tests on Win9x.
+      user32: Return a proper rectangle from WINPOS_MinMaximize.
+      user32: Add an entry point for ShowWindow to the driver interface.
+      winex11: Fetch the current X window position on ShowWindow resulting from a window manager event.
+      winex11: Send WM_SYSCOMMAND instead of calling ShowWindow directly to minimize/restore a window.
+      winex11: Check for wm maximized state in ConfigureNotify and update the window state accordingly.
+      winex11: Also check the maximized when restoring a minimized window.
+      user32/tests: Fix some message test failures on various Windows versions.
+      gdi32/tests: Allow some more rounding errors in glyph sizes.
+      test.h: Fetch environment variables from the Win32 environment not the Unix one.
+      winetest: Set environment variables in the Win32 environment.
+      user32/tests: Fix the listbox LB_DIR tests when directories are present.
+      user32/tests: Don't check last error on success in the broadcast tests.
+      user32/tests: Fix some test failures on win9x.
+      user32/tests: Fix a number of message sequence tests that could sometimes fail.
+      gdi32/tests: Fix some test failures on Win9x.
+      makefiles: Add missing entries for mstask tests.
+      configure: Require autoconf version 2.59d.
+      configure: Generate the makefiles list in configure instead of make_makefiles.
+      kernel32: Fix a compiler warning on Mac OS.
+      Avoid some size_t printf format warnings.
 
-Andrew Talbot (15):
-      rpcrt4: Remove unneeded address-of operator from array name.
-      setupapi: Remove unneeded address-of operator from array name.
-      shlwapi: Remove unneeded address-of operator from array name.
-      user32: Remove unneeded address-of operators from array names.
-      wined3d: Remove unneeded address-of operators from array names.
-      winedos: Remove unneeded address-of operators from array names.
-      winejoystick.drv: Remove unneeded address-of operator from array name.
-      winex11.drv: Remove unneeded address-of operators from array names.
-      wininet: Remove unneeded address-of operators from array names.
-      wintrust: Remove unneeded address-of operators from array names.
-      ws2_32: Remove unneeded address-of operators from array names.
-      shell32: Remove unneeded address-of operators from array names.
-      advpack: Remove a useless test.
-      advpack: Fix sign-compare warnings.
-      advapi32: Sign-compare warnings fix.
+Alistair Leslie-Hughes (10):
+      msxml3: Format get_xml string to be more like msxml3.
+      advapi32: Fix two tests for w2k8.
+      advapi32: Fix test under w2k8.
+      msxml3: Added and corrected trace string.
+      mshtml: Implement HTMLStyle get_background.
+      mshtml: Implement IDispatch for IHTMLStyle.
+      mshtml: Implement IDispatch for IHTMLElement.
+      mshtml: Implement IDispatch for IHTMLElement2.
+      mshtml: Implement IDispatch for IHTMLAnchorElement.
+      ole32: Stop crash under w2k8.
 
-Aric Stewart (7):
-      comctl32: rebar: Record what changes and only redo the Layout if something of relevance changes.
-      comctl32: rebar: Prevent unnecessary triggering of RBBIM_CHILDSIZE changes.
-      mlang: Basic implementation of fnIMultiLanguage2_GetCodePageDescription.
-      mlang: Stub implementation of IMLangFontLink2.
-      mlang: A very basic implementation of the IMLangLineBreakConsole interface and IMLangString interface.
-      mlang: Correct and fill out Japanese locale information.
-      winex11: Add Japanese Mac keyboard layout as many of the vkey code are quite different.
+Andre Wisplinghoff (2):
+      user32: Make dde test use skip function.
+      user32: Add a test for ToUnicode.
 
-Aurimas Fischer (1):
-      richedit: Spelling fixes.
+Andrew Talbot (18):
+      advapi32: Remove unused variable.
+      browseui: Sign-compare warning fix.
+      appwiz.cpl: Sign-compare warning fix.
+      dmband: Sign-compare warning fix.
+      dmcompos: Sign-compare warning fix.
+      dmime: Sign-compare warning fix.
+      dmloader: Sign-compare warning fix.
+      dmscript: Sign-compare warning fix.
+      dmsynth: Sign-compare warning fix.
+      dmusic: Sign-compare warning fix.
+      d3dxof: Sign-compare warning fix.
+      dmstyle: Sign-compare warning fix.
+      dnsapi: Sign-compare warnings fix.
+      dswave: Sign-compare warning fix.
+      fusion: Sign-compare warnings fix.
+      gphoto2.ds: Sign-compare warning fix.
+      hhctrl.ocx: Sign-compare warning fix.
+      dmime: Indirection levels fix.
 
-Cesar Eduardo Barros (1):
-      kernel32: Add stub for CreateHardLink.
+Aric Stewart (4):
+      mlang: Japanese conversion tests.
+      wined3d: Check validity of rects before locking surface in Blt.
+      wined3d: Rework surface Blt a bit to only lock the part of the destination surface being drawn to.
+      dinput: The DIK_ keycode is not the same as the scancode.
 
-Dan Hipschman (12):
-      libs/wine: Avoid over-allocating memory in default_dbgstr_wn.
-      kernel32/tests: Fix p_BindIoCompletionCallback declaration so it compiles with the MS compiler.
-      kernel32/tests: Add tests for timer queues.
-      kernel32: Add a stub for ChangeTimerQueueTimer.
-      kernel32/tests: Add tests for Change/DeleteTimerQueueTimer.
-      kernel32/tests: Check that timers are not NULL in timer queue tests.
-      ntdll: Implement [Rtl]Create/DeleteTimerQueue[Ex].
-      ntdll: Implement RtlCreateTimer for kernel32's CreateTimerQueueTimer.
-      include: Add WT_TRANSFER_IMPERSONATION to winnt.h.
-      ntdll: Implement the timer queue thread.
-      ntdll: Implement RtlUpdateTimer for kernel32's ChangeTimerQueueTimer.
-      ntdll: Implement RtlDeleteTimer for kernel32's DeleteTimerQueueTimer.
+Austin English (1):
+      user32: Test what FindWindow does when window isn't found.
+
+Christian Costa (8):
+      winmm: Implement stub for midiConnect and midiDisconnect.
+      winealsa.drv: Improve midi port names.
+      d3dxof: Implement some parsing in RegisterTemplates.
+      d3dxof: Create FileEnumObject using its constructor.
+      d3dxof: Create FileData object using its constructor. Fix return value of CreateEnumObject.
+      d3dxof: Add basic tests.
+      d3dxof: Add text format support to RegisterTemplates and fix corresponding test.
+      msvcirt: Implement some ostream stubs.
+
+Colin Finck (3):
+      Fix some hackish usages of WideCharToMultiByte.
+      kernel32: Add a lot of new tests for the actual WideCharToMultiByte string conversion as well.
+      kernel32/tests: Fix a wrong length passed to a WideCharToMultiByte test, which led to a use of uninitialized stack memory.
+
+Damjan Jovanovic (3):
+      shdocvw: Add IUniformResourceLocator declarations to intshcut.h.
+      shdocvw: Rudimentary implementation of CLSID_InternetShortcut.
+      oleaut32: Add a failing VarFormat test.
+
+Dan Hipschman (6):
+      ntdll: Fix a small timer-queue bug whereby a deleted timer may still expire.
+      ntdll: Add support for a default timer queue.
+      kernel32/tests: Add tests for undocumented default timer queue "features".
+      widl: Honor typedef pointer attributes.
+      advapi32: Implement GetSecurityInfo.
+      advapi32/tests: Add tests for GetSecurityInfo with a NULL security descriptor pointer.
 
 Dan Kegel (2):
-      tools: Allow running tests with valgrind.
-      winmm/tests: Test mciSendString with non-null return string buffer.
+      wininet: HTTP_QUERY_RAW_HEADERS_CRLF length shouldn't include nul.
+      shell32/tests: Test whether SHGetFileInfo should clear hIcon.
 
-Daniel Santos (1):
-      ws2_32: WSASendTo() should clear last error on success.
+David Adam (6):
+      d3dx8: Only the points in the positive ray are taken in account in D3DXSphereBoundProbe.
+      d3dx8: Implement D3DXBoxBoundProbe.
+      wordpad: Update the French translation.
+      appwiz.cpl: Add the French resource.
+      ddraw: Only ddraw checks wether one can give a null pointer to SetMaterial.
+      d3d8/d3d9: Remove unconsistent tests for SetMaterial.
 
-David Adam (1):
-      d3dx8: Implement D3DXSphereBoundProbe.
+Detlef Riekenberg (9):
+      kernel32/tests: Fix a crash on win9x (lpDefault is truncated inplace).
+      crypt32/tests: Fix test on win9x (CreateFileW not implemented).
+      shlwapi/tests: Fix a buffer overflow that results in a crash on Win9x.
+      advapi32/tests: Handle the results from Win9x in the registry tests.
+      shell32/tests: Do not crash on Win9x when testing shlfileop.
+      shlwapi/tests: Fix istream tests on win9x (GetTempPathW).
+      shell32/tests: Fix shelllink test on win9x (GetTempPathW).
+      spoolss/tests: Fix a test on vista/w2k8.
+      winealsa.drv: Fix a typo in an error message.
 
-Detlef Riekenberg (8):
-      winetest: Run tests again on Win9x.
-      crypt32/tests: Make the msg tests usable on win9x (avoid crash).
-      oleaut32/tests: Fix tmarshal tests on win9x.
-      oleaut32/tests: Run more typelib tests on win9x.
-      kernel32/tests: Run the tests again on Win9x.
-      msxml3/tests: Fix failure and crash on win9x.
-      cryptnet/tests: Make the tests usable on win9x.
-      appwiz.cpl: Do not access memory after HeapFree in FreeAppInfo.
+Dmitry Timoshkov (6):
+      mlang: Add a test for a CodePageToCodePages failure, make it pass under Wine.
+      mlang: Remove noise from mlang test output.
+      mlang: Do not use MAX_PATH for not path related things.
+      mlang: Remove debugging stuff.
+      gdi32: Avoid loading a bitmap if a glyph transformation is being requested.
+      gdi32: Replace DC transform by font scaling for bitmap fonts.
 
-Dmitry Timoshkov (2):
-      gdi32: Relax the gm.gmCellIncX comparison.
-      Revert "gdi32: Reselect objects into the DC only if scaling factors change.".
+Dustin Brody (1):
+      riched20: EM_SETTEXTTEX obeys ST_SELECTION with RTF inputs.
 
-Dylan Smith (4):
-      richedit: Enforce the maximum font size.
-      richedit: Cannot undo setting of default character format.
-      richedit: Fixed regression caused by destroying the caret.
-      richedit: Fixed regression that caused endless loop.
+Dylan Smith (18):
+      richedit: Added OleInitialize for clipboard operations.
+      richedit: Use tabstops to store cell positions.
+      richedit: Joined paragraph format depends on number of characters deleted.
+      richedit: Fixed rtf reader bug that caused large start indents.
+      richedit: Removed assumption about the order of rtf indent control words.
+      richedit: Word/Line/Paragraph selection had selection anchor on wrong side.
+      richedit: Handle tab key properly within table cells.
+      richedit: Protect deletion of cell boundaries when not deleting row.
+      richedit: Reversed deletion direction so tables are inserted forwards.
+      richedit: Each cell can contain multiple paragraphs in msftedit.
+      richedit: Added in support for streaming in and out nested tables.
+      richedit: EM_[SG]ETPARAFORMAT returned the wrong value.
+      richedit: Substitute space for \tab and \par control words for simple tables.
+      richedit: Removed an unused local variable and assignments to it.
+      richedit: Adjust table spacing with horizontal gap and left edge.
+      richedit: Borders are drawn for simple tables.
+      richedit: Borders are now drawn for tables and nested tables.
+      richedit: Added support for changing cell border colours.
 
-Eric Pouech (9):
-      winhelp: Pick nicer fonts for buttons.
-      winhelp: Fixed memory leak in macro handling.
-      winhelp: Implemented SetHelpOnFile macro.
-      winhelp: Implemented SetPopupColor macro.
-      winhelp: Allow MACRO_Execute to be called recursively.
-      winhelp: Move the check about correct RLE decoding inside the decoding routine itself.
-      winhelp: Constify the internal .hlp file parsing.
-      winhelp: Double clicking in the index list should open the page.
-      richedit: Add an assert to point out what we're expecting.
+Eric Pouech (1):
+      winedbg: Don't force integral values while displaying a stack value, it doesn't work for float/double values.
 
-Francois Gouget (9):
-      msxml3: Fix compilation on systems that don't support nameless unions.
-      winejack: Fix detection of jack libraries with a bad soname.
-      wintrust/tests: Fix compilation on systems that don't support nameless unions.
-      sane.ds: Use 'sane-config --ldflags'.
-      regedit: Remove a couple of left-over debug statements.
+Francois Gouget (12):
+      gdiplus: Add a trailing '\n' to a Wine trace.
+      appwiz.cpl: Fix compilation on systems that don't support nameless unions.
+      appwiz.cpl: Fix the CPlApplet() prototype.
+      gdi32: Include config.h before using HAVE_XXX.
+      quartz: assert.h is not a local include.
+      winex11.drv: Fix the SysCommand() and ImeGetRegisterWordStyle() prototypes.
+      mscoree: Fix the ND_WI8() prototype.
+      Add some API documentation stubs to make winapi_check happy.
+      configure: Fix the 'no sound card' warning.
+      d3d9: Add an API documentation stub to make winapi_check happy.
       Assorted spelling fixes.
-      gphoto2.ds: Make use of `gphoto2-config --libs` for the configure check.
-      wineesd: Make use of `esd-config --libs` for the configure check.
-      configure: Use cups-config to probe for cups support.
+      dplayx/tests: Fix compilation on systems that don't support nameless unions.
 
-Frans Kool (5):
-      shell32: Fixed Dutch translations.
-      regedit: Fixed Dutch translations.
-      winhlp32: Fixed Dutch translations.
-      wordpad: Fixed and added Dutch translations.
-      wordpad: Added missing Dutch translations.
+Frans Kool (1):
+      appwiz.cpl: Added Dutch resources.
 
-Gal Topper (2):
-      comdlg32: PrintDlgEx: Change scope of strings for later reuse.
-      comdlg32: PrintDlgEx: Add support for RETURNDEFAULT.
+François Dorin (1):
+      ole32: Fix return value for DefaultHandler_SetExtent.
 
-Gerald Pfeifer (9):
-      comctl32: rebar: Simplify by shedding off unused parameters.
-      ntdll/tests: Use NTSTATUS instead of DWORD for status variables.
-      comctl32: header: Simplify by shedding off unused parameters.
-      comctl32: Fix type of loop variable in HEADER_DeleteItem.
-      d3d9: Fix type of loop variable in stream_test() and texop_test().
-      avifil32: Make size parameter of AVIFILE_ReadBlock DWORD instead of LONG.
-      comctl32: datetime: Simplify by shedding off unused parameters.
-      winedbg: Fix the type of four loop variables and reduce scope of one.
-      wordpad: Remove unused parameter for preview_command().
+Gerald Pfeifer (4):
+      comctl32: Push down function scope variable into the different case statements which allows us using more specific types in case.
+      comctl32: Remove unused parameter from _read_bitmap().
+      Add return statements to avoid gcc warnings.
+      winhttp: #include <netinet/in.h> for sockaddr_in.
 
-H. Verbeet (8):
-      wined3d: Improve some shader traces.
-      wined3d: Use rev_tex_unit_map instead of assuming there's a 1:1 mapping between samplers and texture units.
-      wined3d: Store the texture in a local variable in sampler_texmatrix().
-      d3d9: Use color_match() in vshader_version_varying_test().
-      d3d9: Replace color_near() with color_match().
-      d3d9: Correct some shader comments.
-      server: Calling ResumeThread() on a terminated thread is valid.
-      d3d9: Use color_match() in test_vshader_input().
+H. Verbeet (17):
+      wined3d: Container dirtification is already handled in ModifyLocation().
+      wined3d: FBO texture == drawable handling is already handled in LoadLocation().
+      wined3d: Call LoadLocation() on higher render targets as well, simplify some code in drawPrimitive.
+      wined3d: Move setting the draw buffer to a separate function.
+      wined3d: Use CTXUSAGE_RESOURCELOAD for ActivateContext() in color_fill_fbo().
+      wined3d: Mark STATE_SCISSORRECT dirty in color_fill_fbo().
+      wined3d: Apply FBO state in ActivateContext().
+      wined3d: Handle CTXUSAGE_BLIT with offscreen targets and FBO ORM.
+      wined3d: Move creating a texture id from PreLoad to BindTexture.
+      d3d8: Don't store shader_handle's.
+      secur32: Reserved3 / Reserved4 are actually EncryptMessage / DecryptMessage.
+      wined3d: Don't free backends if they're not created yet.
+      wined3d: Don't allocate This->draw_buffers in the error path for Init3D().
+      mountmgr: Include the terminating NULL in mount ids.
+      wined3d: Move depth stencil location handling code up a couple of lines.
+      wined3d: Track FBOs per-context.
+      wined3d: Remove useless hash_table_entry_t typedef.
 
-Hans Leidekker (10):
-      dnsapi: Fix a number of memory leaks.
-      snmpapi: Fix a memory leak in the test.
-      cabinet: Fix a memory leak.
-      setupapi: Fix two memory leaks in the test.
-      wininet: Fix a memory leak.
-      wininet: Make another test pass on IE6.
-      wininet: Delete local file on error in FtpGetFile.
-      wininet: Move insertion of cookie header from HttpOpenRequest to HttpSendRequest.
-      wininet: Fix cookie buffer overflow.
-      usp10: Use a valid string analysis when testing ScriptXtoCP and ScriptCPtoX.
+Hans Leidekker (17):
+      wininet: Use getaddrinfo for thread-safe resolving if available.
+      wininet: Properly initialize access type when no proxy is configured.
+      winhttp: Add a handle management implementation.
+      winhttp: Implement WinHttpOpen and WinHttpCloseHandle.
+      winhttp: Implement WinHttpConnect.
+      winhttp: Implement WinHttpOpenRequest.
+      winhttp: Implement WinHttpSetStatusCallback. Start sending notifications.
+      winhttp: Add stub implementations for WinHttpGetDefaultProxyConfiguration, WinHttpGetProxyForUrl and WinHttpSetDefaultProxyConfiguration.
+      winhttp: Forward WinHttpCrackUrl and WinHttpCreateUrl to wininet for the time being.
+      winhttp: Implement WinHttpTimeFromSystemTime and WinHttpTimeToSystemTime.
+      include: Add prototype for WinHttpQueryOption.
+      winhttp: Deliver status notifications to the application.
+      winhttp: Add a stub implementation for WinHttpSetTimeouts.
+      winhttp: Implement WinHttpAddRequestHeaders.
+      winhttp: Implement WinHttpQueryHeaders.
+      winhttp: Use default values for verb, object and version parameters in WinHttpOpenRequest.
+      winhttp: Add some tests for WinHttpAddRequestHeaders.
 
-Huw Davies (6):
-      user32: Don't read past the end of a global memory block.
-      gdiplus: Skip some tests if certain fonts are not installed.
-      winmm: Only fill in the MIXERLINEA struct if the call to mixerGetLineInfoW succeeds.
-      user32: Don't access pConv after it's been freed.
-      gdiplus: Remove incorrect test.
-      user32: Don't send the menu clicks if we can't retrieve the item rect.
+Hongbo Ni (13):
+      user32: Implement WM_UNICHAR for edit control.
+      riched32: Implement WM_UNICHAR support.
+      msvcmaker: Fix msvc project file generation under MinGW32.
+      notepad: Update simplified Chinese resource.
+      clock: Update simplified Chinese resource.
+      winhlp32: Update simplified Chinese resource.
+      winefile: Update simplified Chinese resource.
+      winconsole: Update simplified Chinese resource.
+      progman: Update simplified Chinese resource.
+      user32: Update simplified Chinese resource.
+      shell32: Update simplified Chinese resource.
+      comdlg32: Update simplified Chinese resource.
+      comctl32: Update simplified Chinese resource.
+
+Huw Davies (9):
+      gdi32: Keep track of the number of unique fonts that are created and return this in the second DWORD of the GdiRealizationInfo structure.
+      kernel32: GetCalendarInfo shouldn't return HRESULT codes. Change a MESSAGE to a FIXME.
+      wineps.drv: Make sure we call CreateFontIndirect with zero width, otherwise we'll get a scaled-width font.
+      gdi32: Don't use biSizeImage for a BI_BITFIELDS dib.
+      include: Fix CRYPT_SMIME_CAPABILITIES definition.
+      crypt32: Don't write to pvStructInfo if it's NULL.
+      crypt32: Initialize the size to zero.
+      crypt32: Don't decrease the size of the buffer, since we're already counting the characters that we're adding to it.
+      crypt32: Remove some unnecessary code.
 
 Hwang YunSong(황윤성) (1):
-      winhlp32: Updated Korean resource.
+      shell32: Updated Korean resource.
 
-Ismael Barros (2):
-      dplayx: Moved dplaysp.h to include/wine.
-      dplayx: Basic implementation of dpwsockx.dll, needed by dplayx.
+Ismael Barros (28):
+      dplayx: Fix the definition of DirectPlayCreate.
+      dplayx: Changed debug channel from dplayx to dplay.
+      dplayx: Tests for DirectPlayCreate.
+      dplayx: Tests for EnumConnections.
+      dplayx: Tests for InitializeConnection.
+      dplayx: Tests for GetCaps.
+      dplayx: Tests for Open.
+      dplayx: Tests for EnumSessions.
+      dplayx: Tests for Get/SetSessionDesc.
+      dplayx: Tests for CreatePlayer.
+      dplayx: Tests for GetPlayerCaps.
+      dplayx: Tests for Get/SetPlayerData.
+      dplayx: Tests for Get/SetPlayerName.
+      dplayx: Tests for GetPlayerAccount.
+      dplayx: Tests for GetPlayerAddress.
+      dplayx: Tests for GetPlayerFlags.
+      dplayx: Tests for CreateGroup.
+      dplayx: Tests for GroupOwner.
+      dplayx: Tests for EnumPlayers.
+      dplayx: Tests for EnumGroups.
+      dplayx: Tests for EnumGroupsInGroup.
+      dplayx: Tests for checking the behaviour of groups in a p2p session.
+      dplayx: Tests for checking the behaviour of groups in a C/S session.
+      dplayx: Tests for Send.
+      dplayx: Tests for Receive.
+      dplayx: Tests for GetMessageCount.
+      dplayx: Tests for GetMessageQueue.
+      dplayx: Tests for checking remote data replication.
 
-Jacek Caban (13):
-      mshtml: Allow timers to be cleaned during processing.
-      mshtml: Added IHTMLElement2::getElementsByTagName implementation.
-      mshtml: Added IHTMLElement2::getElementsByTagName tests.
-      msi: Added Session::Message implementation.
-      wininet: Move InternetQueryOption(INTERNET_OPTION_USER_AGENT) to vtbl.
-      wininet: Moved more InternetQueryOption implementation to vtbl.
-      wininet: Moved InternetQueryOption(INTERNET_OPTION_PROXY) implementation to vtbl.
-      wininet: Move remeining InternetQueryOption implementation to vtbl.
-      hhctrl.ocx: Fixed ref count handling in IOleClientSiteImpl.
-      mshtml: Added IHTMLDocument2::put_title implementation.
-      mshtml: Added IHTMLDocument2::get_title implementation.
-      mshtml: Added IHTMLDocument2::[get|put]_title tests.
-      mshtml: Added IOmNavigator::get_appCodeName implementation.
+Jacek Caban (8):
+      mshtml: Added IHTMLElement2::get_scrollHeight implementation.
+      mshtml: Added IOmNavigator::get_platform implementation.
+      mshtml: Added IHTMLElement2::get_scrollWidth implementation.
+      mshtml: Forward IHTMLTextContainer::get_scroll[Hight|Width] implementation to IHTMLElement2.
+      mshtml: Added IHTMLElement2::get_scrollTop implementation.
+      mshtml: Forward IHTMLTextContainer::get_scrollTop to IHTMLElement2.
+      mshtml: Added IHTMLElement::get_offsetHeight implementation.
+      mshtml: Use heap_alloc_zero for HTMLWindow allocation.
 
-James Hawkins (24):
-      comctl32: Explicity set the number of tics before testing tic placement.
-      comctl32: Free the trackbar tics.
-      fusion: Allow parsing the blob stream without a #.
-      fusion: Load the table row numbers before calculating the table offsets.
-      fusion: The VersionLength member is not constant, so dynamically load the metadata header.
-      fusion: Add the CorTokenType and use those constants in the assembly code.
-      fusion: Add handling for alternate-sized table indices in the metadata.
-      fusion: Handle DWORD-sized string indices when loading the assembly name.
-      fusion: The cases are tokens, not table indices.
-      kernel32: Add tests for GetPrivateProfileString.
-      kernel32: Fix removing trailing spaces from lpDefault for GetPrivateProfileString.
-      kernel32: Return the default value if lpKeyName is empty.
-      services: Assign the service manager db to the lock in LockServiceDatabase.
-      msi: Initialize the update function pointer when creating the control.
-      kernel32: Don't get the profile string if the buffer length is zero.
-      msi: Add more tests for MsiGetSourcePath.
-      msi: Test getting the source path from a package with compressed files.
-      msi: Test getting the source path from a package with short file names.
-      msi: Halt the installation with an error if a source file is missing.
-      msi: msidbFileAttributesVital has no effect on the installation of files.
-      msi: Test mixing short and long source paths when installing a file.
-      msi: Use the newly added defines from the msidbSumInfoSourceType enumeration.
-      msi: Set all folders' source paths to the root directory if the source type is compressed.
-      msi: Determine the source path based on the short/long file names bit of the Word Count summary property.
+James Hawkins (42):
+      msi: Handle the package context when unpublishing the product.
+      msi: Validate the szProduct parameter of MsiConfigureProductEx.
+      msi: Properly locate the published product in MsiConfigureProductEx.
+      msi: Handle the INSTALLSTATE_ABSENT state in MsiConfigureProductEx.
+      msi: Set the ALLUSERS property for the machine context.
+      msi: Add tests for MsiConfigureProductEx.
+      msi: Directly register the typelib if it's not embedded in a PE module.
+      msi: Reimplement MsiOpenProduct.
+      msi: Add tests for MsiOpenProduct.
+      msi: Add a stub implementation of MsiEnumPatchesEx.
+      msi: Change an ERR that was supposed to be a TRACE.
+      winex11: Reduce console spam for AlphaBlend deficiencies.
+      advpack: Skip the TranslateInfEx tests in win9x.
+      advpack: Fix a failing test in win98.
+      msi: Test how MsiConfigureProductEx locates the source package.
+      msi: Also check the LocalPackage install property when searching for the product package.
+      ole32: Test the file access and share modes of StgCreateDocFile.
+      fusion: Handle loading 64-bit .NET assemblies.
+      fusion: Align the metadata header pointer on a DWORD boundary.
+      fusion: Ignore the case of the assembly filename extension.
+      msi: Ignore all non-stream elements when filling the _Streams table.
+      msi: Perform costing again for the InstallExecute sequence.
+      msi: Factor out media handling and use the new interface to efficiently extract assemblies.
+      msi: Ignore a file that has a missing component.
+      msi: Don't check for a NULL component, as the component is guaranteed to exist.
+      msi: Don't remove a file if the old file is strictly newer than the version to be installed.
+      msi: A file's component's state does not determine file removal.
+      msi: Remove misc files from the RemoveFile table.
+      msi: Test the file access and share modes of MsiOpenDatabase.
+      ole32: Storage sharing should be implemented in ole32, not the lower-level file API.
+      msi: Add more tests for feature and component states.
+      msi: Base removal of a file on the component's action, not the file's state.
+      msi: Use MsiQueryComponent state to determine the component's state.
+      msi: Use MsiQueryFeatureState to determine the feature's state.
+      msi: Handle processing a component that is installed to source.
+      msi: If the filename is empty or NULL, remove the directory.
+      msi: Downgrade an ERR to a TRACE.
+      msi: Handle components installed as source in MsiQueryComponentState.
+      msi: Remove an invalid setting of the install state.
+      msi: Don't remove a file that is installed as source.
+      msi: Fix the logic to determine the appropriate action of the component.
+      msi: Don't remove a misc file if the action is unknown.
 
-John Reiser (3):
-      configure: Add check for valgrind/valgrind.h.
-      ntdll: When tracking allocated blocks, RtlDestroyHeap must notify that all the blocks are being freed.
-      ntdll: Tell valgrind to load the .pdb debugging info for the module that was just loaded.
+Jeff Latimer (5):
+      user32: DdeClientTransaction should return 0 in the last param for DDE_DATA.
+      user32: DdeQueryString returns a NULL str if there is no handle.
+      user32: DdeClientTransaction should check that pData is not NULL for XTYP_REQUEST.
+      user32/tests: Add tests for for invalid DDE conditions.
+      user32: Check for invalid conversation and return the correct error.
 
-Jon Griffiths (2):
-      msvcrt: Fix exponents in *printf family.
-      mswsock: Implement 3 functions by calling through SIO_GET_EXTENSION_FUNCTION_POINTER.
+Jeff Zaroyko (1):
+      winmm: Remove misleading message.
 
-Juan Lang (14):
-      crypt32: Add MS root certs to root store.
-      crypt32: Don't expect ImageGetCertificateData to succeed when Certificate is NULL.
-      wintrust: Move provider function tests to their own function.
-      wintrust: Add tests for WinVerifyTrust/WinVerifyTrustEx.
-      wintrust: Execute WinVerifyTrust as a sequence of steps, and return the error code from the first failing step of the sequence.
-      wintrust: Correct error slot for SoftpubLoadSignature.
-      crypt32: Reorganize root store creation code.
-      iphlpapi: Move Icmp* functions from icmp to iphlpapi.
-      iphlpapi: Partially implement IcmpSendEcho2 using IcmpSendEcho.
-      crypt32: Fix GUID output for failing tests by passing buffer to output function.
-      crypt32: Test CryptRetrieveSubjectGUID with a cab file.
-      crypt32: Add cab file checking to CryptSIPRetrieveSubjectGUID.
-      wintrust: Don't assume input file is a PE file in CryptSIPGetSignedDataMsg.
-      wintrust: Implement CryptSIPGetSignedDataMsg for cabinet files.
+Juan Lang (54):
+      shlwapi: Use CharNextA to iterate through characters in PathAddBackslashA. Fixes problems with MBCS paths.
+      crypt32: Move simplified message functions to their own file.
+      crypt32: Move simplified message tests to their own file.
+      crypt32: Add stub for CryptHashMessage.
+      crypt32: Add tests for CryptHashMessage.
+      crypt32: Implement CryptHashMessage.
+      rsaenh: Test and correct the maximum allowable salt length.
+      crypt32: Add test showing only file header is checked for cabinet files.
+      crypt32: Fix some test failures on Win9x.
+      msisip: Add stub dll.
+      msisip: Implement DllRegisterServer/DllUnregisterServer.
+      msisip: Implement MsiSIPIsMyTypeOfFile.
+      msisip: Implement MsiSIPGetSignedDataMsg.
+      tools/wine.inf: Register msisip.dll.
+      crypt32: Use ReadFile rather than a memory-mapped file to check the type of a file.
+      crypt32: Create a helper to load a SIP function from an open key.
+      crypt32: More fully implement CryptSIPRetrieveSubjectGuid.
+      crypt32: Use CryptSIPRetrieveSubjectGuid to determine how to read a message object from a file, rather than assuming the source file is always a PE executable.
+      ws2_32: Delay import iphlpapi.
+      crypt32: Add stub for CryptMsgGetAndVerifySigner.
+      crypt32: Add tests for CryptMsgGetAndVerifySigner.
+      crypt32: Implement CryptMsgGetAndVerifySigner.
+      crypt32: Add stub for CryptMsgVerifyCountersignatureEncodedEx.
+      crypt32: Add stub for CryptHashToBeSigned.
+      crypt32: Add tests for CryptHashToBeSigned.
+      crypt32: Implement CryptHashToBeSigned.
+      crypt32: Implement CERT_SIGNATURE_HASH_PROP_ID.
+      crypt32: Implement CertFindCertificateInStore for CERT_FIND_SIGNATURE_HASH.
+      crypt32: Set *pcbStructInfo on more success paths.
+      crypt32: Fix length calculation for decoding CRL_DIST_POINT_NAME.
+      crypt32: Free memory using the correct function on failure.
+      wincrypt.h: Add more missing definitions.
+      crypt32: Add tests for encoding/decoding CMSG_CMS_SIGNER_INFO.
+      crypt32: Implement CMSG_CMS_SIGNER_INFO encoding.
+      crypt32: Implement decoding CMSG_CMS_SIGNER_INFO.
+      crypt32: Allow messages to be opened when compiled with CMSG_SIGNER_ENCODE_INFO_HAS_CMS_FIELDS if CMS fields aren't actually used.
+      crypt32: Allow messages to be opened when compiled with CMSG_SIGNED_ENCODE_INFO_HAS_CMS_FIELDS if CMS fields aren't actually used.
+      crypt32: Allow CMS fields to be set when opening a signed message to encode.
+      crypt32: Always set *pcbStructInfo.
+      crypt32: Use CMS messages rather than PKCS messages internally.
+      crypt32: Test and correct encoding of signed CMS messages.
+      crypt32: Add more tests for the version of encoded signed CMS messages.
+      crypt32: Add tests for CMSG_CMS_SIGNER_INFO_PARAM.
+      crypt32: Implement CMSG_CMS_SIGNER_INFO_PARAM.
+      crypt32: Support the KeyId type of signer in CMSG_SIGNER_INFO_PARAM.
+      crypt32: Support the KeyId type of signer in CMSG_SIGNER_CERT_INFO_PARAM.
+      crypt32: Pass address of blob to store data rather than message to CDecodeMsg_CopyData.
+      crypt32: Rewrite CDecodeMsg_Update for better detached data handling.
+      crypt32: Handle the detached portion of detached signed messages.
+      crypt32: Remove an unneeded helper.
+      crypt32: Reduce excessive indenting.
+      crypt32: Add tests for encoding/decoding PKCS_SMIME_CAPABILITIES. With help from Huw Davies.
+      crypt32: Add support for encoding PKCS_SMIME_CAPABILITIES.
+      crypt32: Add support for decoding PKCS_SMIME_CAPABILITIES.
 
-Kai Blin (1):
-      secur32: Fix GetComputerObjectName tests for domain members.
+Ken Thomases (1):
+      kernel32: Strip modifiers from the Mac locale so setlocale can parse it.
 
-Kirill K. Smirnov (1):
-      shell32: Avoid usage of undefined xdg_results variable, since XDG_UserDirLookup() always corrupts it.
+Kirill K. Smirnov (10):
+      winhlp32: Remove superfluous buttons from propsheet dialog templates.
+      winhlp32: Remove outdated comment.
+      wineconsole: Check return value of CreateWindow() for errors, do not rely upon callback function.
+      winhlp32: Fix parsing system header of win3.0 help file.
+      winhlp32: Fix off-by-one error.
+      winhlp32: Clear richedit area before setting text.
+      winhlp32: Set correct font size while generating rtf stream.
+      winhlp32: Load internal file containing pagenum->topicoffset mapping.
+      winhlp32: Fix offsets handling for old 3.0 files.
+      winhlp32: Use TopicOffset mapping and get rid of unused function.
 
-Lei Zhang (10):
-      user32: Add a test for SetWindowPos.
-      user32: Clamp newly created windows to the minimum window size.
-      oleaut32: Check return values in several functions.
-      winex11: X11DRV_DIB_[GS]etImageBits should return 0 on failure.
-      gdi32: CreateDIBitmap should check for SetDIBits failure.
-      gdiplus: Add tests for passing negative strides to GdipCreateBitmapFromScan0.
-      ole32: Silence FIXME from CoGetContextToken stub.
-      ntdll: Use our own implementation of atoi and atol.
-      gdi32: Add a test for font orientation.
-      gdi32: Glyph advances should be measured for unrotated characters.
+Lei Zhang (4):
+      cmd: Check the return value from HeapAlloc.
+      comctl32: Add a test for TTM_GETTEXT.
+      shell32: Handle directories in ShellExecute.
+      comctl32: Set listview focus on WM_LBUTTONUP instead of WM_LBUTTONDOWN.
 
-Luis Busquets (4):
-      d3dx9: Implement D3DXGetShaderSize().
-      d3dx9: Add a test for D3DXGetShaderSize().
-      d3dx9: Implement D3DXGetShaderVersion().
-      d3dx9: Add a test for D3DXGetShaderVersion().
+Luis C. Busquets Pérez (3):
+      d3dx9: Implementation of D3DXGetPixelShaderProfile.
+      d3dx9: Implementation of D3DXGetVertexShaderProfile.
+      d3dx9: Avoid assignment in D3DXGetVertexShaderProfile.
 
-Maarten Lankhorst (11):
-      quartz: Fix incorrect use of mtCurrent in transform filter.
-      quartz: Fix memory and sample leaks.
-      quartz: Only allocate 1 buffer in transform filter.
-      quartz: Fix reference leak in avi splitter on end of stream.
-      winemp3: Be more tolerant to what a valid mp3 header is.
-      quartz: Explicitly handle wave headers in avi splitter.
-      quartz: Fix wrong assignment of variable in parser.
-      include: Fix typo in vmrender.idl.
-      quartz: Fix handling of zero byte samples and endofstreams.
-      quartz: Fix bugs that occur during connection.
-      quartz: Fix end of stream handling in avi splitter.
+Maarten Lankhorst (14):
+      qcap: Make the server directly register a filter instead of the workarounds.
+      uuids: Add MEDIASUBTYPE_AYUV.
+      quartz: Trace the iface pointer in the memory allocator.
+      quartz: Make transform filter return hresult from running/pausing.
+      quartz: Use correct media type in transformfilter's QueryAccept.
+      quartz: Pass InputPin as parameter to transform filter.
+      quartz: Fix end of file handling when first request is already end of file.
+      quartz: Fix support for files with multiple odml indexes.
+      winealsa.drv: Add ability to recover from underruns to directsound driver.
+      winealsa.drv: Fix compiler warnings and remove deprecated calls.
+      dsound: Remove int24_struct from conversion routines.
+      winmm: Test opening the same device twice.
+      winealsa.drv: Tune some parameters to make pulseaudio work.
+      dsound: Tune some parameters to make pulseaudio work.
 
-Mathias Kosch (2):
-      winex11: Fix typo in X11DRV_SetDIBits optimization.
-      advapi32: Fix RegGetValue when dwFlags includes RRF_RT_ANY.
+Michael Karcher (6):
+      winex11: Fix GetDIBits with monochrome pixmaps.
+      kernel32: Fix profile sharing mode.
+      msvcrt/file: stdio should clamp characters to 8 bits.
+      kernel32/tests: Fix profile crash on NT and up.
+      ntdll: Add sub-second resolution to NtQueryInformationFile.
+      kernel32: Fix profile cache logic and don't cache new files.
 
-Michael Stefaniuc (1):
-      msxml3: Remove redundant NULL check before HeapFree (Smatch).
+Michael Stefaniuc (4):
+      msxml3: Remove redundant NULL checks before HeapFree and fix a memleak (Smatch).
+      advapi/tests: CreateFile returns INVALID_HANDLE_VALUE on error (Smatch).
+      riched20: Remove redundant NULL check before HeapFree (Smatch).
+      d3dxof: Remove unreachable break after return (Smatch).
 
-Mikołaj Zalewski (16):
-      comctl32: statusbar: Window is always Unicode, CCM_SETUNICODEFORMAT should change the notify format.
-      comctl32: statusbar: Rename NtfUnicode to bUnicode to make is more consistent with other controls, use NF_REQUERY in WM_CREATE.
-      comctl32: statusbar: WM_CREATE should not resize the window - it should happen in WM_SIZE.
-      comctl32: statusbar: Don't issue a WM_PAINT during a WM_CREATE.
-      comctl32: statusbar: WM_SETFONT should change the bar height.
-      comctl32: Fix the file version string declaration.
-      oleaut32: Use custom file version in VERSIONINFO.
-      comctl32: statusbar: Change the height expression to one that seems to be the same as in Windows.
-      comctl32: Don't print ERRs for reflected messages.
-      comctl32: toolbar: TB_SETBITMAPSIZE should not change a coordinate when passed -1 (with testcase).
-      comctl32: statusbar: Test and fix SB_SETMINHEIGHT.
-      comctl32: statusbar: Optimize STATUSBAR_RefreshPart.
-      shell32: autocomplete: Don't pass NULL pceltFetched to IEnumString_Next.
-      include: Add KEY_WOW64_* defines.
-      advapi32: Remove access checks from advapi32 (makes KEY_WOW64_* work).
-      advapi32: tests: Make WOW64 test pass under Win2k, fix a flag.
+Mikołaj Zalewski (1):
+      shell32: autocomplete: There is no need for separate IAutoComplete and IAutoComplete2 vtbls.
 
-Nicolas Le Cam (2):
-      comctl32/tests: Fix a test failure in multiple platforms.
-      kernel32/tests: Fix a failing test in Vista.
+Muneyuki Noguchi (3):
+      regedit: Update Japanese translation.
+      notepad: Update Japanese translation.
+      winecfg: Update Japanese translation.
 
-Nikolay Sivov (8):
-      gdiplus: Implemented GdipCreateBitmapFromResource.
-      gdiplus: Fix GdipCreatePathIter to handle NULL as path. Fix tests.
-      gdiplus: Fix for GdipPathIterNextMarker to handle path without markers. Fix tests.
-      gdiplus: Make GdipInvertMatrix test pass on native switching to matrix with determinant 16.
-      gdiplus: implemeted GdipGetPathGradientBlendCount with test.
-      gdiplus: Implement GdipGetPathGradientBlend with basic tests.
-      gdiplus: Implemented GdipGetPathGradientRect with test.
-      gdiplus: Fix swapped got-expected in brush test.
+Nikolay Sivov (30):
+      gdiplus: Added testfile for customlinecap + constr./destr. tests.
+      gdiplus: Implemented GdipGetCustomLineCapStrokeJoin with basic test.
+      gdiplus: Implemented GdipSetCustomLineCapStrokeJoin + tests.
+      gdiplus: Implemented GdipGetCustomLineCapBaseInset + test.
+      gdiplus: Implemented GdipGetCustomLineCapWidthScale with some tests.
+      gdiplus: Add a test that shows GdipCreateFontFromLogfontW problem with empty FaceName.
+      gdiplus: GdipGetStringFormatDigitSubstitution implemented.
+      gdiplus: GdipSetStringFormatDigitSubstitution implemented.
+      gdiplus: GdipStringFormatGetGenericTypographic implemented.
+      gdiplus: GdipGetStringFormatTabStopCount implementation with tests.
+      gdiplus: Implemented Gdip[Get/Set]StringFormatTabStops with tests.
+      gdiplus: Use LANG_NEUTRAL instead of 0.
+      gdiplus: Implemented GdipStringFormatGetGenericDefault with tests.
+      gdiplus: Implemented Gdip[Get/Set]PenMode.
+      gdiplus: Implemented GdipGetPenCustom[Start/End]Cap.
+      gdiplus: Implemented GdipFillPolygon2/GdipFillPolygon2I.
+      gdiplus: Move some Beziers helpers to gdiplus.c to use them for graphicspath.
+      gdiplus: Implemented GdipAddPathCurve2 with tests.
+      gdiplus: Implemented GdipAddPathCurve2I using GdipAddPathCurve2.
+      gdiplus: Implemented GdipAddPathCurve/GdipAddPathCurveI.
+      gdiplus: Implemented GdipAddPathClosedCurve2 with tests.
+      gdiplus: Implemented GdipAddPathClosedCurve2I using GdipAddPathClosedCurve2.
+      gdiplus: Implemented GdipAddPathClosedCurve/GdipAddPathClosedCurveI.
+      gdiplus: Implemented GdipReversePath with tests.
+      gdiplus: Implemented GdipAddPathPie/GdipAddPathPieI with test.
+      gdiplus: Implemented GdipPathIterIsValid with tests.
+      gdiplus: Implemented GdipPathIterNextSubpathPath with tests.
+      gdiplus: Implemented GdipResetWorldTransform.
+      gdiplus: Implemented GdipPathIterNextMarkerPath with tests.
+      gdiplus: Implemented GdipFillClosedCurve2[I].
 
-Owen Rudge (18):
-      shell32: Remove "no control panels" found message.
-      shell32: Use wide functions when creating control panel.
-      shell32: Load Control Panel title from resources.
-      shell32: Add menu bar to Control Panel.
-      shell32: Add code to process menu item selections.
-      shell32: Add About dialog to Control Panel.
-      shell32: Remove existing painting methods from control panel.
-      shell32: Use a listview for the control panel.
-      shell32: Add status bar to control panel.
-      appwiz.cpl: Add skeleton Add/Remove Programs control panel.
-      appwiz.cpl: Display Add/Remove Programs dialog.
-      appwiz.cpl: Add column headers to listview.
-      appwiz.cpl: Add imagelist for listview.
-      appwiz.cpl: Check to see if buttons should be enabled.
-      appwiz.cpl: Read installed application information from registry.
-      appwiz.cpl: Add applications to list, remove on window close.
-      appwiz.cpl: Add uninstall routine for applications.
-      appwiz.cpl: Add basic Support Information dialog.
+Owen Rudge (5):
+      winefile: Fix absolute pidl conversion for non-filesystem shell objects.
+      shell32: Fix descriptions being applied to wrong entries in control panel.
+      shell32: Ensure status bar in control panel is reset when menu closed. Also reset to blank when item deselected.
+      appwiz.cpl: Gather extra information for Support Info dialog.
+      uninstaller: Remove GUI portion of Wine uninstaller.
 
-Philip Nilsson (4):
-      wined3d: Enable filtering for D3DFMT_A4R4G4B4.
-      d3dx8: Allow input and output parameters pointing to the same place.
-      d3dx9: Implement D3DXPlaneTransformArray.
-      d3dx9: Use UINT instead of unsigned int where appropriate.
+Paul Vriens (20):
+      comctl32/tests: Run tests again on Win95.
+      crypt32/tests: Don't crash on some win9x boxes.
+      gdi32/tests: Don't test unimplemented functions.
+      mshtml/tests: Don't fail on unimplemented function.
+      crypt32/tests: Use CryptAcquireContextA instead of CryptAcquireContextW.
+      kernel32/tests: Skip tests when codepage is not available.
+      mlang/tests: Skip tests for unsupported code page identifiers.
+      crypt32/tests: Don't crash on some win9x boxes.
+      iphlpapi/tests: Skip some tests for unsupported functions.
+      kernel32/tests: Fix a test failure on Win9x.
+      quartz/tests: Skip some tests on NT4.
+      kernel32/tests: Show the setting of the debugger registry value.
+      include/wine/svcctl.idl: Remove duplicate define.
+      ole32/tests: Fix a test on win98 and W2K.
+      advapi32/tests: Add helper function to get function pointers.
+      advapi32/tests: Add tests for QueryServiceStatus.
+      advapi32/tests: Add tests for QueryServiceStatusEx.
+      advapi32/tests: Add tests for EnumServicesStatusA.
+      advapi32: Prevent a crash when passing an allowed NULL parameter.
+      advapi32/tests: Add tests for EnumServicesStatusExA.
 
-Piotr Caban (25):
-      msxml3: Fixed typo in create_bsc.
-      msxml3: Added stub implementation of ISAXLocator.
-      msxml3: Added partial implementation of ISAXXMLReader_parse.
-      msxml3: Added ISAXContentHandler_startDocument event.
-      msxml3: Added ISAXLocator_getLineNumber and ISAXLocator_getColumnNumber partial implementation.
-      msxml3: Added ISAXContentHandler_endDocument event.
-      msxml3: Added ISAXContentHandler_startElement event.
-      msxml3: Added ISAXContentHandler_endElement event.
-      msxml3: Added ISAXContentHandler_characters event.
-      msxml3: Added ISAXContentHandler_putDocumentLocator event.
-      msxml3: Added ISAXLocator_getPublicId.
-      msxml3: Added ISAXLocator_getSystemId.
-      msxml3/tests: Added more tests for ISAXXMLReader_parse and ISAXLocator.
-      msxml3: Do not invoke ISAXXMLReader_endDocument when parser was stopped.
-      msxml3/tests: Added tests for ISAXXMLReader_putErrorHandler and ISAXXMLReader_getErrorHandler.
-      msxml3: Add error handling.
-      msxml3: Added support for SafeArrays in ISAXXMLReader_parse.
-      msxml3/tests: Added test for ISAXXMLReader_parse with SafeArray as argument.
-      msxml3: Reorganize ISAXXMLReader_parse function.
-      msxml3: Added support for more arguments in ISAXXMLReader_parse.
-      msxml3: Change ISAXXMLReader_getLine and ISAXXMLReader_getColumn functions.
-      msxml3: Change ISAXXMLReader_characters implementation so it works correctly on files with '\r' characters.
-      msxml3/tests: Add test for parsing from IStream.
-      msxml3/tests: Add test for parsing document with '\r' characters.
-      msxml3: Fix for accessing uninitialized memory.
+Piotr Caban (33):
+      msxml3: Generalize bsc_t implementation.
+      msxml3: Added ISAXXMLReader_parseURL implementation.
+      msxml3/tests: Added test for ISAXXMLReader_parseURL.
+      msxml3: Added stub implementation of ISAXAttributes.
+      msxml3: Initialize ISAXAttribute structure.
+      msxml3: Add ISAXAttribute_getLength implementation.
+      msxml3: Added ISAXAttributes_getLocalName implementation.
+      msxml3: Added ISAXAttributes_getValue implementation.
+      msxml3: Reorganize parse_buffer function (make use of libxml2 parserInternals.h).
+      msxml3: Added ISAXAttributes_getQName implementation.
+      msxml3: Prepare functions for IVBSAX... interfaces implementation.
+      msxml3: Added IVBSAXAttributes implementation.
+      msxml3: Prepare libxml2 callbacks for IVBSAX... interfaces implementation.
+      msxml3: Add IVBSAXLocator implementation.
+      msxml3: Integrate implementation of IVBSAXXMLReader and ISAXXMLReader interfaces.
+      msxml3: Return QNames properly.
+      msxml3: Add NULL pointers check in getLocalName, getQName and getValue.
+      msxml3: Add implementation of ISAXAttributes_getURI.
+      msxml3: Add ISAXContentHandler_startPrefixMapping event.
+      msxml3: Add namespaces to attributes.
+      msxml3: Add ISAXContentHandler_endPrefix event.
+      msxml3: Fix checking if ContentHandler was set.
+      msxml3: Add ISAXAttributes_getName implementation.
+      msxml3: Add ISAXAttributes_getIndexFromName implementation.
+      msxml3: Add ISAXAttributes_getIndexFromQName implementation.
+      msxml3: Add ISAXAttributes_getValueFromName implementation.
+      msxml3: Add ISAXAttributes_getValueFromQName implementation.
+      msxml3: Add error handling when reading from IStream.
+      msxml3: Fix IVBErrorHandler related bugs.
+      msxml3: Use LoadTypeLibEx to register typelib.
+      msxml3: Code clean up.
+      msxml3: Added queryresult's IDispatchEx implementation.
+      msxml3: Added IDispatchEx QueryInterface test.
 
-Reece Dunn (13):
-      uxtheme/tests: Use HRESULT_FROM_WIN32 to check the error codes, not LOWORD.
-      shell32: Do not use a fixed path in the shelllink tests.
-      shell32: Make the tests build with the Vista SDK.
-      oleaut32: Fix the vartype tests on Vista.
-      shell32/tests: Vista returns E_INVALIDARG if the path sent to SetPath is invalid.
-      comctl32: Fixed the MRU tests on Vista.
-      setupapi/tests: Use FIELD_OFFSET instead of offsetof.
-      user32: Fixed building the tests with the Vista SDK.
-      shell32: Don't crash if the shlexec tests fail to create an extension in the registry.
-      crypt32/tests: Be more verbose on the failing base64 tests on Vista to help locate the failures.
-      comctl32: Made the button theme drawing code extensible.
-      crypt32/tests: fix the protectdata tests on Vista.
-      oleaut32: Fix the SafeArrayGetVartype tests on Vista and use that behaviour.
+Reece Dunn (6):
+      crypt32: Check Vista error codes for the msg tests.
+      secur32: Fix the ntlm tests crashing on Vista.
+      secur32: Fix the schannel tests crashing on Vista.
+      shell32: Fix shlexec crashing on Vista.
+      crypt32: Removed the failing base64 test in Vista.
+      shlwapi: Fixed the string tests on Vista.
 
-Rob Shearman (6):
-      rpcrt4: Implement MesEncodeIncrementalHandleCreate, MesDecodeIncrementalHandleCreate, MesIncrementalHandleReset and MesHandleFree.
-      rpcrt4: Implement NdrMesProcEncodeDecode.
-      rpcrt4: Implement MesDecodeBufferHandleCreate and MesEncodeFixedBufferHandleCreate.
-      rpcrt4: Ignore the return value of functions when unmarshalling a pickled procedure.
-      rpcrt4: Implement RpcCancelThreadEx.
-      rpcrt4: Fix the memory pointer passed into the conformant array marshaller in NdrComplexStructMarshall.
+Rico Schüller (1):
+      inetmib1: Fix wrong arguments.
 
-Roy Shea (4):
-      mstask: Skeleton implementation of Task Scheduler Service.
-      mstask: Generate C file with GUID definitions from mstask.idl.
-      mstask: TaskScheduler stub with AddRef, QueryInterface, and Release.
-      mstask: Implement ClassFactory, DllGetClassObject, and DllCanUnloadNow.
+Rob Shearman (50):
+      oleaut32: Use the typelib debug channel for debug messages output during loading of SLTG typelibs.
+      oleaut32: Move the debug logging of the variable type in SLTG_DoVars.
+      oleaut32: Dump the loaded module in SLTG_ProcessModule.
+      oleaut32: Handle strings with a length of 0xffff in SLTG_DoVars.
+      oleaut32: Fix the loading of the parameter name for SLTG propget functions.
+      rpcrt4: Validate the uuid portion of the string passed to RpcStringBindingParseA/W.
+      rpcrt4: Factorise conformant array NDR functions and use them to fix the wire-representation of complex structures with conformant arrays.
+      rpcrt4: Add tests for a complex struct with conformant array.
+      rpcrt4: Factorise conformant varying array functions into array_* functions.
+      rpcrt4: Factorise conformant string functions into array_* functions.
+      rpcrt4: Re-implement part of the conformant varying structure processing routines using array_* functions.
+      rpcrt4: Fix a typo in the ncalrpc protseq in the epm_endpoints structure.
+      rpcrt4: Fix crash calculation of tower size in rpcrt4_ncalrpc_get_top_of_tower.
+      rpcrt4: Fix crash in rpcrt4_ncalrpc_parse_top_of_tower due to unconditionally dereferencing networkaddr and endpoint variables.
+      rpcrt4: Fix the protid used in ncalrpc tower functions.
+      rpcss: Warn in ept_insert if TowerExplode fails.
+      rpcss: Register the endpoint for the ncalrpc protseq for the endpoint mapper.
+      rpcrt4: Check that strings in SMB, NB and pipe floors are nul-terminated before copying the data.
+      include: Fix the WINELIB_NAME_AW macro for RpcBindingToStringBinding.
+      rpcrt4: Add test for RpcBindingToStringBindingA.
+      rpcrt4: Fix RpcBindingToStringBinding to not generate a UUID string if the object UUID is nil.
+      rpcrt4: Print a warning if connecting to a named pipe failed in rpcrt4_conn_open_pipe in the !wait case.
+      rpcrt4: Fix RpcStringBindingComposeA/W and RpcStringBindingParseA/W to escape and unescape delimiters in the string binding.
+      oleaut32: Avoid unnecessary allocations in TLB_MultiByteToBSTR and SLTG_ReadString.
+      oleaut32: Fix invalid free of import library entry name with SLTG typelibs.
+      cryptnet: Fix mismatch between sizeof and countof quantities in CRYPT_GetUrlFromCertificateCRLDistPoint.
+      appwiz.cpl: Fix leak of thread and process handles in UninstallProgram.
+      d3d9: Fix variable type in IDirect3DDevice9Impl_GetSoftwareVertexProcessing.
+      d3d9: Remove unneeded local variable in IDirect3DDevice9Impl_SetFVF.
+      include: Remove superfluous semi-colons from wine/wined3d_gl.h.
+      hhctl.ocx: Fix reference count leak in InPlace_OnPosRectChange.
+      comctl32: Fix use of arithmetic operator on Boolean type in TREEVIEW_ComputeItemInternalMetrics.
+      msrle32: Fix uses of arithmetic operators on Boolean types in MSRLE32_CompressRLE4Line and MSRLE32_CompressRLE8Line.
+      msi: Fix handle leak in ITERATE_SelfRegModules.
+      ole32: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
+      oleaut32: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
+      quartz: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
+      shlwapi: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
+      urlmon: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
+      shell32: Don't assign a result from a function that returns a BOOL to an HRESULT in shellex_get_dataobj.
+      oleaut32: Fix buffer length passed to VARIANT_DI_tostringW in VarBstrFromCy.
+      hhctrl.ocx: Nul-terminate url_indicator constant in NavigateToUrl.
+      quartz: Use memcmp instead of strncmp in MPEGSplitter_pre_connect.
+      rpcrt4: Remove unreachable code in EmbeddedComplexSize.
+      ole32: Remove dead code in StorageImpl_LoadFileHeader.
+      kernel32: Fix a typo in the leadin check in WaitNamedPipeW.
+      rpcrt4: Test the endpoint mapper for the ncalrpc protseq as well as the ncacn_np protseq.
+      rpcrt4: Check for previous association being NULL in RPCRT4_ResolveBinding.
+      rpcrt4: Don't get or create an association for bindings with incomplete endpoints.
+      rpcrt4: Implement RpcBindingReset.
 
-Stefan Dösinger (41):
-      wined3d: Remove the atifs shader backend.
-      wined3d: NP2 coordinate adjustment is a vertex operation.
-      wined3d: Move fixed function texture dimension updates to the fragment pipeline.
-      wined3d: Simplify the fragment pipeline selection.
-      wined3d: Give the nvts/nvrc code its own pipeline implementation.
-      wined3d: WINED3DTSS_TEXCOORDINDEX belongs to the vertex pipeline.
-      wined3d: Move shader constant affecting states to the misc pipeline.
-      wined3d: Give nv* fixed function stuff its own state template.
-      wined3d: Separate texture_activate_dimensions.
-      wined3d: Remove some dead code.
-      wined3d: Add extension information to the states.
-      wined3d: Coalesce the nvrc and nvts+nvrc state template.
-      wined3d: Move an extension check into the state template.
-      wined3d: Move a few extension checks into the state template.
-      wined3d: Move the range fog support test to the template.
-      wined3d: Split the psizemin handler.
-      wined3d: Split the psizemax state handler.
-      wined3d: Move the point sprite support test into the template.
-      wined3d: Test for multisampling in the template.
-      wined3d: Only register the np2 texture fixup if needed.
-      wined3d: Check for ATI_ENVMAP_BUMPMAP in the template.
-      wined3d: Move the vertexblend support check to the template.
-      wined3d: Remove GL_EXT_vertex_weighting stubs.
-      wined3d: Remove more dead code.
-      wined3d: Move an VBO support check to the state template.
-      d3d9: Unset the vertex shader in the compare_instructions test.
-      wined3d: Fix the MULTIPLYADD parameter orders in atifs.
-      wined3d: Correct the D3DTOP_LERP parameter order.
-      wined3d: Use GL_ARB_texture_non_power_of_two emulation.
-      wined3d: Use the nofilter mipmap lookup for np2 textures.
-      wined3d: Use less strict pixel format matching if the match fails.
-      wined3d: Fix a copy and paste bug.
-      wined3d: Whitespace fix.
-      wined3d: Set WINED3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET.
-      wined3d: Remove some #ifdefs.
-      wined3d: Move set_tex_op(_nvrc) to their specific files.
-      d3d: D3DDECLTYPE_UNUSED is not valid in vertex declarations.
-      wined3d: Honor the texcoordindex when setting the texture matrix.
-      wined3d: Support ATI's D3DFMT_ATI2N format.
-      wined3d: ATI2N support using GL_EXT_texture_compression_rgtc.
-      wined3d: Make the MAC ARBvp implementation happy about ARL.
+Roderick Colenbrander (2):
+      wined3d: Fix BltOverride regression.
+      wined3d: Fix window rewrite regression.
 
-Stefan Leichter (1):
-      rasapi32: RasEnumDevicesA test: initialize the input parameters before each call, make sure the return buffer is big enough.
+Roy Shea (24):
+      mstask: Implemented DllRegisterServer.
+      mstask: Implemented DllUnregisterServer.
+      mstask/test: NewWorkItem conformance test.
+      mstask: Task stub with AddRef, QueryInterface, and Release.
+      mstask: Implemented NewWorkItem.
+      mstask: Activate conformance test.
+      mstask: Stub implementation of Activate.
+      include: Add task scheduler specific error codes.
+      include: Added defines used by TASK_TRIGGER members.
+      mstask/test: Conformance test for (Set|Get)ApplicationName.
+      mstask/test: Conformance test for CreateTrigger.
+      mstask/tests: Conformance test for (Set|Get)Parameters.
+      mstask/tests: Conformance test for (Set|Get)Comment.
+      mstask/tests: Conformance test for (Set|Get)MaxRunTime.
+      mstask/tests: Basic conformance test for (Set|Get)AccountInformation.
+      mstask: TaskTrigger stub with AddRef, QueryInterface, and Release.
+      mstask/tests: Conformance test for (Set|Get)Trigger.
+      mstask: Implemented (Set|Get)ApplicationName.
+      expand: Extended expand program to accept /r argument.
+      mstask: Task PersistFile AddRef, QueryInterface, and Release.
+      mstask: Implement (Set|Get)Parameters.
+      mstask: Implemented (Set|Get)Comment.
+      mstask: Implemented (Set|Get)MaxRunTime.
+      mstask: Implemented partial stub for (Set|Get)AccountInformation.
 
-Ulrich Hecht (1):
-      dsound: Fix notification order.
+Stefan Dösinger (50):
+      wined3d: Do not enable GL_TEXTURE_SHADER_NV unconditionally.
+      wined3d: Add fog and tex types to the ffp fragment description.
+      wined3d: Use C bitfields to compact the ffp description.
+      wined3d: Use a hashmap to store the ffp shaders.
+      wined3d: GL_ARB_fragment_program ffp implementation.
+      wined3d: Initialize the texture op function properly.
+      wined3d: Clamp results in the arbfp pipeline replacement.
+      wined3d: Beware of the frontbuffer coordinate system difference.
+      ddraw: Set ddraw caps in wined3d.
+      wined3d: Only set D3D caps when GL was loaded successfully.
+      wined3d: Report the pitch alignment to ddraw.
+      wined3d: Always load glFinish and glFlush from opengl32.dll.
+      d3d9: Skip gracefully if A16R16G16B16 is not supported.
+      wined3d: Call glFlush outside the GL lock.
+      wined3d: Remove a glFlush.
+      wined3d: Move the pshader fog update to the vertex pipeline.
+      wined3d: Implement overlay position tracking.
+      wined3d: Basic overlay emulation with opengl.
+      wined3d: Implement overlay flipping.
+      wined3d: Update the surface locations in Present.
+      wined3d: Track overlay surfaces in the overlayed surface.
+      wined3d: Move some swapchain code into a base class.
+      wined3d: Remove unused enum entry.
+      wined3d: Use a swapchain for GDI surfaces.
+      wined3d: Support redirecting the primary context.
+      d3d: Remove IWineD3DDevice::SetHwnd.
+      wined3d: Remove the device-global fullscreen flag.
+      wined3d: Remove the ddraw_window device member.
+      wined3d: Add a swapchain method to set the dest override.
+      ddraw: Send the ddraw output to the clipper window, if any.
+      ddraw: Implement IDirectDraw7::GetFourCCCodes.
+      wined3d: Support YUV formats with GL_APPLE_ycbcr_422.
+      wined3d: Start a framework for color conversion shaders in blits.
+      wined3d: Test formats for surface support.
+      wined3d: Ask the ffp/shader/blit implementation about format support.
+      wined3d: Implement YUV emulation with GL_ARB_fragment_program.
+      ddraw: Do not set the rendertarget flag just because of the backbuffer flag.
+      wined3d: Keep track of the last used device.
+      ddraw: Set the bitdepth on YUV formats.
+      wined3d: Fix the unused arg marker.
+      wined3d: Update the overlay when the destination was drawn to.
+      d3d9: Test for fixed function value clamping.
+      winex11: Do not cap the cursor size.
+      wined3d: Prefer aux buffer matches over alpha matches.
+      wined3d: Don't enable texture dimensions with shaders.
+      wined3d: Don't skip applying texdims with shaders.
+      wined3d: Set the texture wrap default with the NP2 emulation properly.
+      d3d9: Make the bumpmap test less picky.
+      wined3d: De-pickify the texbem test.
+      wined3d: Filter out more spam.
 
-Vincent Povirk (3):
-      wininet: Always respect Proxy-Connection: or Connection: if it exists.
-      ole32: Add tests for OleIsCurrentClipboard(NULL).
-      ole32: Always return false when asked if NULL is the current clipboard.
+Stefan Leichter (3):
+      rasapi32: Fix building the tests with MSVC (based on a patch by Reece Dunn).
+      rasapi32: Skip RasEnumDevicesA tests on configuration problems.
+      rasapi: Fix test failure on platforms vista, w2k8.
 
-Vladimir Pankratov (1):
-      winhlp32: Update Russian translation.
+Tobias Jakobi (2):
+      ddraw: Fix typo in copy_mipmap_chain.
+      wined3d: Remove arb_tex_npot for NV FX series in fixup_extensions.
 
-Zac Brown (3):
-      ntdll: Remove byte reversed U+3000 (CJK space) from being checked in RtlIsTextUnicode.
-      winhttp/tests: Add test for opening request.
-      include/winhttp.h: Add remaining flags.
+Tony Wasserka (1):
+      d3dx9: Add stubs for the ID3DXSprite functions.
 
-Zhangrong Huang (2):
-      msxml3: Add support for accessing document node.
-      msxml3: Add support for accessing CDATASection node.
+Vijay Kiran Kamuju (1):
+      d3drm: Add minimal d3drmobj.h.
+
+Vincent Povirk (2):
+      wininet: Default to keep-alive when the server is HTTP/1.1, not when it isn't.
+      user32: Implement TPM_*ALIGN flags.
+
+Vitaliy Margolen (3):
+      dinput: Implement saturation property for evdev joystick driver.
+      dinput: Zero the out buffer.
+      dinput: Add mouse warp override config option.
+
+Vladimir Pankratov (14):
+      taskmgr: Update Russian translation.
+      shell32: Update Russian translation.
+      taskmgr: Remove unused code.
+      taskmgr: Update Russian translation.
+      netapi32: Add stub for NetWkstaUserEnum.
+      netapi32: Add stub for NetGroupEnum.
+      taskmgr: Converted some functions to Unicode.
+      winecfg: Update Russian translation.
+      shell32: Update Russian translation.
+      taskmgr: Converted some functions and variables to Unicode.
+      taskmgr: Converted some functions and variables to Unicode.
+      taskmgr: Converted some functions and variables to Unicode.
+      taskmgr: Converted some functions and variables to Unicode.
+      taskmgr: Converted some functions and variables to Unicode.
+
+Will Tipton (1):
+      comctl32: Added input validation to TOOLTIPS_GetTextW() in order to handle gracefully the case where it is called with an empty tooltip.
+
+Zac Brown (10):
+      include/winhttp.h: Add WINHTTP_TIME_FORMAT_BUFSIZE.
+      winhttp: Add stub implementation for WinHttpWriteData.
+      winhttp/tests: Add test for sending request.
+      winhttp: Add stub implementation for WinHttpTimeFromSystemTime.
+      winhttp: Add test for WinHttpTimeFromSystemTime.
+      winhttp: Add stub implementation for WinHttpTimeToSystemTime.
+      winhttp: Add test for WinHttpTimeToSystemTime.
+      winhttp: Add stub implementation for WinHttpQueryHeaders.
+      winhttp: Add stub implementation for WinHttpAddRequestHeaders.
+      winhttp: Add test for adding/querying headers.
 
 --
 Alexandre Julliard
diff --git a/VERSION b/VERSION
index 1c0a528..ede4ec6 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.1.2
+Wine version 1.1.3
diff --git a/configure b/configure
index 4345d95..66e0fd5 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.61 for Wine 1.1.2.
+# Generated by GNU Autoconf 2.61 for Wine 1.1.3.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -574,8 +574,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.1.2'
-PACKAGE_STRING='Wine 1.1.2'
+PACKAGE_VERSION='1.1.3'
+PACKAGE_STRING='Wine 1.1.3'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 
 ac_unique_file="server/atom.c"
@@ -1301,7 +1301,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.1.2 to adapt to many kinds of systems.
+\`configure' configures Wine 1.1.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1370,7 +1370,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.1.2:";;
+     short | recursive ) echo "Configuration of Wine 1.1.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1499,7 +1499,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.1.2
+Wine configure 1.1.3
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1513,7 +1513,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.1.2, which was
+It was created by Wine $as_me 1.1.3, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -25145,7 +25145,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.1.2, which was
+This file was extended by Wine $as_me 1.1.3, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -25198,7 +25198,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-Wine config.status 1.1.2
+Wine config.status 1.1.3
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
