diff --git a/ANNOUNCE b/ANNOUNCE
index 998fe0f..c98aec2 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,19 +1,18 @@
-This is release 0.9.51 of Wine, a free implementation of Windows on Unix.
+This is release 0.9.52 of Wine, a free implementation of Windows on Unix.
 
 What's new in this release:
-  - A bunch of WinHelp improvements.
-  - Better Japanese font support.
-  - A ton of rpcrt4 fixes.
-  - Several Alsa capture fixes.
-  - Improved support for screen resolution changes.
+  - Improved graphics tablet support.
+  - Support for RPC context handles.
+  - Fixes for some longstanding screen depth issues.
+  - Implementation of "My Network Places" shell folder.
   - Lots of bug fixes.
 
 Because of lags created by using mirrors, this message may reach you
 before the release is available at the public sites. The sources will
 be available from the following locations:
 
-  http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.51.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-0.9.51.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.52.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-0.9.52.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -35,507 +34,366 @@
 
 ----------------------------------------------------------------
 
-Changes since 0.9.50:
+Changes since 0.9.51:
 
-Alex Villacís Lasso (6):
-      riched20: EM_GETTEXTEX with GT_USECRLF should not leave a single CR when running out of space.
-      riched20: WM_GETTEXT should return 0 on overflow but fill buffer anyway.
-      riched20: EM_GETTEXTLENGTHEX must not count last paragraph break if GTL_USECRLF.
-      riched20: WM_GETTEXTLENGTH should include CRLF conversions in returned count.
-      riched20: Invalidate all the text on bogus last selection.
-      riched32: Fix regression in WM_GETTEXTLENGTH on richedit 1.0 emulation.
+Alex Villacís Lasso (2):
+      user32: Fix regression in DlgDirList caused by modified LB_DIR return behavior, with tests.
+      comdlg32: Fix another regression in 3.1-style file dialog from LB_DIR fix.
 
-Alexander Dorofeyev (2):
-      ddraw: Fix wrong initialization order in IDirect3DDevice vtable.
-      wined3d: Improve thread safety in IWineD3DSurfaceImpl_BltOverride.
+Alexander Dorofeyev (7):
+      ddraw: Fix incorrect WARN text.
+      wined3d: Rewrite IWineD3DSurfaceImpl_BltOverride colorfill codepath.
+      wined3d: Use IWineD3DDeviceImpl_ClearSurface in IWineD3DDeviceImpl_Clear.
+      ole32: Fix wrong timeout check.
+      ws2_32: Fix timeout check.
+      wined3d: Add zero/near zero vertex rhw special case.
+      wined3d: Also update alpha test when stage texture is NULL.
 
-Alexander Nicolaysen Sørnes (14):
-      shell32: Localize file context menu.
-      winecfg: Update Norwegian resource.
-      wineboot: Add Norwegian resources.
-      write: Add Norwegian resources.
-      browseui: Add Norwegian resources.
-      mshtml: Update Norwegian resources.
-      credui: Update Norwegian resources.
-      shell32: Localize 'new folder' string.
-      shell32: Handle backspace key in shellview.
-      user32: A few more colour changes to match modern Windows.
-      comdlg32: PageSetupDlgA: Read margins from correct edit boxes.
-      comdlg32: PageSetupDlgA: Swap margins when changing orientation.
-      comdlg32: PageSetupDlgW: Swap margins when changing orientation.
-      wordpad: Move registry functions to a separate file.
+Alexander Nicolaysen Sørnes (1):
+      comdlg32: PageSetupDlgW: Load paper orientation in ChangePrinterW.
 
-Alexandre Julliard (36):
-      ntdll: Added a sleep in NtGet/SetContextThread, a yield is not enough on some kernels.
-      shell32: Get rid of the internal _InsertMenuItem function.
-      kernel32: Remove the no-exec fault workaround, it shouldn't be needed anymore.
-      winmm/tests: Don't mess with the mixer controls in non-interactive mode.
-      server: Implemented EnumWindowStations and EnumDesktops.
-      server: Partial implementation of NtQueryDirectoryObject.
-      server: Return correct object types in the get_directory_entry request.
-      clock: Use system colors instead of hardcoded RGB values.
-      winhelp: Use system colors instead of hardcoded colors.
-      shell32: Fix some wrc warnings.
-      Removed some unneeded imports.
-      winebuild: Print a warning when failing to import a data export.
-      winebuild: Improved checks for missing forward entry point targets.
-      ntdll: Support delayed loading of modules referenced by forwarded entry points.
-      winebuild: Also optimize out imports that are only used for forwards.
-      msvfw32: Fix invalid check that caused the rest of VideoCapDriverDescAndVer16 to be optimized out.
-      server: Fix incorrect use of size_t instead of data_size_t.
-      comctl32: Fix a compiler warning.
-      Avoid size_t types in traces.
-      opengl32: ntdll import is still needed when building without optimizations.
-      kernel32: Revert change that slipped in commit db24d3af9a6e56c3036ba0a3e5d62dae4f2676d3 by mistake.
-      kernel32: Read label and serial from the filesystem when the device is accessible but unknown.
-      user32: Keep waiting for posted messages in peek_message after we get an ignored message.
-      Make.rules: Added rules for building the dlldata.c file.
-      makedep: Added support for dlldata.c dependencies.
-      wordpad: Fix a compiler warning.
-      Makedll.rules: Add a generic EXTRADLLFLAGS variable instead of defining a specific variable for every possible parameter.
-      winebuild: Don't set the IMAGE_FILE_DLL flag on native modules.
-      winecrt0: DriverEntry is a WINAPI function.
-      Make.rules: Process man pages in the C locale.
-      wordpad: Fix invalid pointer usage.
-      hhctrl.ocx: Store a copy of the string pointers to enable freeing them without casting away const.
-      user32: Print the RegisterHotKey fixme only once.
-      gdi32/tests: Fix a compiler warning.
-      riched20/tests: Avoid using size_t in traces.
-      riched32/tests: Avoid using size_t in traces.
+Alexandre Julliard (30):
+      Revert "user32: Moved some 16-bit functions."
+      oleaut32/tests: Avoid relying on system-dependent rounding.
+      server: Fix possible NULL dereference.
+      ntoskrnl.exe: Added implementation for IoCreateDriver and IoDeleteDriver.
+      ntoskrnl.exe: Allow returning data in ioctls along with a positive non-zero status.
+      user32: Set the WSF_VISIBLE flag on the main window station.
+      advapi32: Reimplement RegisterServiceCtrlHandler on top of RegisterServiceCtrlHandlerEx.
+      advapi32: Fix RegisterServiceCtrlHandler spec entry.
+      advapi32: Use exponential backoff when waiting for a service to start.
+      advapi32: Replace the list of services with an array.
+      advapi32: Return from StartServiceCtrlDispatcher when all services are stopped.
+      kernel32: Forward interrupts in 32-bit code to winedos too.
+      server: Use SIGQUIT instead of SIGTERM to terminate a thread.
+      advapi32: Move the EnumDependentServicesA/W stubs in service.c where they belong.
+      wineboot: Simplify the unnecessarily complex code structure.
+      wineboot: Add support for starting NT-style services.
+      wineboot: Rewrite wininit.ini processing to use GetPrivateProfileSectionW. Convert to Unicode.
+      wineboot: Convert the rest of the code to Unicode.
+      wine.inf: Mark the spool service as disabled, it's just a stub.
+      include: Added the mountmgr.h header.
+      server: Don't count system processes as users of a desktop.
+      server: Don't give out full access to the system process event.
+      explorer: It no longer needs to be made a system process.
+      advapi32: Start non-interactive services in a separate window station.
+      ntdll: Increase the buffer size dynamically for relay debug lists.
+      kernel32: Store the initial directory as a full path in the process parameters.
+      kernel32: Yet another workaround for broken apps in GlobalMemoryStatus.
+      kernel32: Initialize MaximumLength of the user params directory too.
+      winedos: Add the possibility of refusing to emulate some interrupts.
+      wintab32: Fix debug traces to use wine_dbg_sprintf.
 
-Alexandru Balut (2):
-      oleaut32: Implement VarWeekdayName + tests.
-      wine.inf: Fix the type of some values in HKLM, System\CurrentControlSet\Control\Session Manager\Environment.
+Alistair Leslie-Hughes (1):
+      msxml3: Fix memory leaks in tests.
 
-Alistair Leslie-Hughes (10):
-      msxml3: Implement cloneNode.
-      msxml3: Fix memory leaks.
-      msxml3: Fix memory leak.
-      shdocvw: Fix memory leak.
-      urlmon: Fix memory leaks.
-      msxml3: Implement IPersistStream.
-      msxml: Register missing components.
-      shlwapi: Fix memory leak in test.
-      msxml3: Fix memory leak in test.
-      msxml3: Fix memory leak in tests.
+Andrew Riedi (1):
+      gdiplus: Add GdipCreateHBITMAPFromBitmap() stub.
 
-Anatoly Lyutin (1):
-      start: Convert to Unicode.
-
-Andrew Riedi (10):
-      winealsa.drv: Fix a comment.
-      user32: Add a FIXME for animated cursors.
-      comdlg32: DPRINTF -> TRACE.
-      ddraw: DPRINTF -> TRACE.
-      user32: Uncomment and explain a test in test_DestroyCursor().
-      user32: Improve test_DestroyCursor().
-      user32: Test the initial state of the cursor.
-      ole32: DPRINTF -> TRACE.
-      dinput: DPRINTF -> TRACE.
-      dsound: DPRINTF -> TRACE.
-
-Andrew Talbot (19):
-      cabinet: Remove unneeded casts.
-      advapi32: Remove unneeded casts.
-      comctl32: Remove unneeded casts.
-      comdlg32: Remove unnecessary casts.
-      crypt32: Remove unnecessary casts.
-      d3d8: Remove unneeded casts.
-      d3d9: Remove unneeded casts.
-      dbghelp: Remove unneeded casts.
-      cabinet: Remove unneeded casts.
-      ddraw: Remove unneeded casts.
-      cabinet: Remove unneeded casts.
-      dinput: Remove unneeded casts.
-      devenum: Remove unneeded cast.
-      dmime: Remove unneeded casts.
-      dmloader: Remove unneeded casts.
-      dmusic: Remove unneeded casts.
-      dnsapi: Remove unneeded casts.
-      dplayx: Remove unneeded casts.
+Andrew Talbot (10):
       kernel32: Remove unneeded casts.
+      kernel32: Remove unneeded casts.
+      kernel32: Remove unneeded casts.
+      mapi32: Remove unneeded casts.
+      kernel32: Revert the removal of a cast from a macro.
+      mciavi32: Remove unneeded casts.
+      mciseq: Remove unneeded casts.
+      msacm32: Remove unneeded casts.
+      msvcrt: Remove unneeded cast.
+      msi: Remove unneeded cast.
 
-Aric Stewart (12):
-      uninstaller: Iterate keys in HKEY_CURRENT_USER also as some programs install their uninstall information there.
-      commdlg: File name and extension offsets are not guaranteed to be the same in W->A conversions.
-      fonts: Add 18 pixel strike with japanese fonts to system.sdf.
-      system.sfd: Modify a few 18 pixel glyphs to generate metrics correctly.
-      sfnt2fnt: Use code from gdi32/freetype to do a better job finding the TTAG_EBLC to deal with older version of freetype without having to fall back on unreliable hacks.
-      fonts: Build the jvgasys.fon from the 18 pixel strike.
-      gdi32: Font tests with Japanese font data.  Thanks to Dmitry Timoshkov for the data and tests.
-      wintrust: Implementations for WTHelperGetFileName and WTHelperGetFileHandle.
-      imagehlp: Improve last error handling in ImageGetCertificateData.
-      netapi32: Improve stub for NetLocalGroupGetMembers a bit to return current user.
-      gdi32: Cache font enum info.
-      cryptnet: InternetCrackUrlW requires component buffers when used with ICU_DECODE.
+Andrey Turkin (5):
+      server: I/O completion ports can only be used with overlapped I/O.
+      server: Store I/O completion information in async structure.
+      ntdll: Implement BindIoCompletionCallback.
+      dbghelp: Adjust minidump streams ordering and sizing.
+      dbghelp: Treat const addresses as const unsigned.
 
-Detlef Riekenberg (4):
-      wine.inf: Add more fake dlls.
-      rsabase: Add version resource.
-      schannel: Add version resource.
+Aric Stewart (1):
+      fonts: Correct External leading for japanese small font and enable fontmetric test for the font.
+
+David Adam (4):
+      d3dx8: Add definition for MatrixStack.
+      d3dx8: Rename d3dx_core_private.h to d3dx8_private.h.
+      d3dx8: Add basic functions and stubs for MatrixStack.
+      d3dx8: Implement D3DXCreateMatrixStack.
+
+Dmitry Timoshkov (11):
+      user32: Always clip the button painting to the client rectangle.
+      gdi32: Add a GdiConvertToDevmodeW test, make it pass under Wine.
+      gdi32: When compiling with PSDK headers request latest DEVMODE definition.
+      gdi32: In the calculations use a fixed dmSize, not a passed in (possibly too large) one.
+      user32: Make sure to setup clipping before any painting is done.
+      user32: Set the edit text in a combobox only if combobox has strings.
+      include: Add CONTEXT86_EXTENDED_REGISTERS and CONTEXT86_ALL definitions.
+      gdi32: Add a test for minimal acceptable DEVMODEA size, make it pass under Wine.
+      user32: Add a test for an invalid DEVMODE passed to ChangeDisplaySettings, make it pass under Wine.
+      riched20: Remove a redundant parameter from trace.
+      user32: Reimplement IsHungAppWindow.
+
+Eric Pouech (1):
+      valgrind: Made Wine compliant will latest Valgrind macros (the one removed from 3.3.0 and deprecated since 3.2.0).
+
+Francois Gouget (13):
+      rpcrt4: Add an rpcasync.h header stub and fix the RpcErrorStartEnumeration() prototype.
+      user32/tests: Use GetProcAddress() on ChangeDisplaySettingsExA() because it is missing on Windows 95.
+      msi: Add a trailing '\n' to Wine traces.
+      secur32/tests: Dynamically load various APIs and don't link with crypt32.dll to make the test run on Windows 95.
+      shell32/tests: Avoid SHDeleteKeyA() because shlwapi.dll is missing on Windows 95.
+      shell32/tests: Copy the PathRemoveBackslashA() and PathAddBackslashW() implementations because shlwapi.dll is missing on Windows 95.
+      shell32/tests: Use GetProcAddress() on SHGetPathFromIDListW() because it is missing on Windows 95.
+      shell32/tests: Use GetProcAddress() on Shell_NotifyIconW() because it is missing on Windows 95.
+      shell32/tests: Use GetProcAddress() on SHFileOperationW() because it is missing on Windows 95.
+      oleaut32/tests: Avoid SHDeleteKeyW() because shlwapi.dll is missing on Windows 95.
+      dinput: Make _dump_cooperativelevel_DI() and _dump_EnumDevices_dwFlags() more self-contained.
       Assorted spelling fixes.
+      configure: Work around an Xcode 3.0 bug when detecting the libGL library.
 
-Dmitry Timoshkov (8):
-      server: Make fd_poll_event static.
-      user32: Make sure the desktop window is created before mode enumeration.
-      explorer: Store current display mode in the registry on startup.
-      explorer: Make initialize_display_settings work with a Win9x version of rpcrt4.
-      winex11.drv: Don't forget to initialize dmFields.
-      winex11.drv: Use registry settings as a default display mode.
-      include: Add an initial version of oleacc.idl.
-      ntdll: Initialize the APC call union to suppress valgrind warnings. Take 2.
+Gerald Pfeifer (1):
+      msi: Fix error handling in encode_streamname().
 
-Francois Gouget (14):
-      ddraw: Rename DDRAW_dump_flags_() to DDRAW_dump_flags_nolf() to clarify its difference from DDRAW_dump_flags().
-      ddraw: Modify DDRAW_dump_(DWORD|PTR|DDCOLORKEY|DDSCAPS2|pixelformat)() to print a trailing '\n'.
-      inetcomm: Fix compilation on systems that don't support nameless unions.
-      inetcomm/tests: Fix compilation on systems that don't support nameless unions.
-      wininet/tests: Remove trailing spaces in ok() calls.
-      Assorted spelling fixes.
-      winealsa.drv: Remove trailing spaces in Wine traces.
-      kernel32/tests: dll_capable() makes no sense since it's only used on APIs we link with. So remove it.
-      kernel32/tests: Get the test to run on Windows 95.
-      hlink: Fix the HlinkUpdateStackItem() prototype.
-      ddraw/tests: Fix compilation on systems that don't support nameless unions.
-      comtcl32/tests: Dynamically load ImageList_SetImageCount() because it is missing on Windows 95.
-      comctl32/tests: InitCommonControlsEx() is missing on Windows 95 so call InitCommonControls() instead.
-      comctl32/tests: Avoid SHDeleteKeyA() because it does not exist on Windows 95.
+Huw Davies (6):
+      include: Add IMimeAllocator.
+      inetcomm: Add IMimeAllocator implementation.
+      inetcomm: Fix spelling typo.
+      inetcomm: Implement IMimeBody_GetParameters.
+      inetcomm: Unquote parameter values.
+      inetcomm: Implement IMimeBody_GetOffsets.
 
-Gerald Pfeifer (7):
-      comctl32: Remove extraneous check (unsigned < 0).
-      wined3d: Fix handling of a special case in IWineD3DImpl_FillGLCaps() and adjust type of loop variable.
-      msvcrt: Fix error handling in _aligned_offset_realloc().
-      wined3d: Fix error handling in transform_texture().
-      comctl32: Simplify condition based on WPARAM always being >= 0.
-      wined3d: Fix error handling in fixed_get_input().
-      icmp: Correctly handle underflow in IcmpSendEcho().
+Ivan Sinitsin (1):
+      winefile: Save font settings in registry.
 
-Gregor Brunmar (3):
-      comctl32: Disable propsheet apply button at start up.
-      comctl32: Added context menu to treeview.
-      comctl32: Monthcal lost focus fix.
+Jacek Caban (24):
+      mshtml: Remove not used argument of nsACString_GetData.
+      mshtml: Remove not used argument in nsAString_GetData.
+      shdocvw: Ignore Exec(CGID_Explorer, 66) calls in tests.
+      urlmon: Use flag to store protocol lock state.
+      urlmon: Fixed protocol tests.
+      urlmon: Added BindProtocol::GetBindString implementation.
+      urlmon: Added IServiceProvider implementation to BindProtocol object.
+      urlmon: Added BindProtocol::Switch implementation.
+      urlmon: Added BindProtocol::Continue implementation.
+      urlmon: Added BindProtocol::[Un]LockRequest.
+      urlmon: Added more BindProtocol::ReportProgress implementation.
+      urlmon: Added more binding tests.
+      urlmon: Fixed BindToObject tests.
+      mshtml: Use IBindCtx passed to Load in BindToStorage call.
+      mshtml: Added AboutProtocolInfo::QueryInfo implementation.
+      mshtml: Added ResProtocolInfo::QueryInfo implementation.
+      mshtml: Added QueryInfo tests.
+      urlmon: Added CoInternetQueryInfo implementation.
+      urlmon: Added CoInternetQueryInfo tests.
+      urlmon: RegisterNameSpace clean up.
+      urlmon: Added [Un]RegisterMimeFilter implementation.
+      urlmon: Added mime filters tests.
+      urlmon: Use heap_alloc_zero to allocate BindProtocol.
+      urlmon: Rename BindProtocol's IInternetProtocolSink methods.
 
-Guido Barzini (1):
-      iphlpapi: Restore lost initialisation of ptr->AddressLength in GetAdaptersInfo.
+James Hawkins (23):
+      msi: Release the record when loading the hash data.
+      msi: Add more tests for MsiOpenPackage.
+      msi: Validate the parameters of MsiOpenPackage.
+      msi: If the package doesn't exist, return ERROR_FILE_NOT_FOUND.
+      msi: Verify that the PID_PAGECOUNT and PID_REVNUMBER summary info properties exist.
+      msi: Simplify ExpandAnyPath.
+      msi: Add tests for MsiEnumClients.
+      msi: Validate the parameters of MsiEnumClients.
+      msi: Check the user component key for the clients.
+      msi: Also check the local system component key for the clients.
+      msi: Return ERROR_UNKNOWN_COMPONENT if no products exist.
+      msi: Return ERROR_INVALID_PARAMETER if the product list is empty and index is not zero.
+      msi: The line control has a height of exactly 2 device units.
+      msi: Set the text color after calling the window proc.
+      msi: Test sorting a table using a column that is not selected.
+      msi: Sort each table of the join separately.
+      msi: Free the ordering information.
+      msi: Allow NULL parameters to be passed to the local MsiSetProperty.
+      msi: Initialize a default COM apartment for custom actions.
+      msi: The BS_GROUPBOX style should only be used if the HasBorder attribute is set.
+      msi: Fix deleting temporary rows, with tests.
+      msi: Allow the not-equal operator in WHERE query string comparisons.
+      msi: Allow whitespace after the property name when setting a property in the dialog.
 
-Hans Leidekker (10):
-      gdi32: Implement GetTextExtentExPointI.
-      kernel32: Implement and test {G, S}etConsoleInputExeName{A, W}.
-      usp10: Use GetCharABCWidthsI to implement ScriptGetGlyphABCWidth.
-      usp10: Store original font in the script cache and reselect it on successive calls.
-      usp10: Don't trace char to glyph mappings.
-      kernel32: GetConsoleInputExeNameW returns TRUE even when it fails.
-      wininet: Make FtpGetCurrentDirectoryA pass all todo_wine tests.
-      gdi32: GetCharABCWidthsI does not require a scalable font.
-      usp10: Add some tests for ScriptShape/Place and make them pass.
-      usp10: Do glyph translation for truetype fonts only.
+Jeremy White (11):
+      wintab32: Store and use the physical device id to match device to cursor.
+      wintab32: Do not offset the physical device id by the cursor number.
+      wintab32: Add constants for cursor types and use them.
+      wintab32: Order the cursor array by the standard Wacom promulgates.
+      wintab32: Add additional device tracing.
+      wintab32: Compute our physical device characteristics based on the first tablet device that looks like a stylus.
+      wintab32: Correctly handle devices with a device id of 0.
+      wintab32: Don't return information for non existent cursors.
+      wintab32: Implement the ability to return the number of devices and cursors.
+      wintab32: Capture the number of buttons earlier, allowing our button maps to be filled in.
+      wintab32: Fix the W->A translation for CSR_NAME and CSR_BTNNAMES.
 
-Jacek Caban (23):
-      mshtml: Added IHTMLElement2::get_dir implementation.
-      mshtml: Make IConnectionPointContainer more flexible.
-      mshtml: Initialize HTMLElement in the beginning of constructors.
-      mshtml: Added IConnectionPointContainer iface to all HTMLElement objects.
-      mshtml: Move HTMLTextContainerEvents connection point to HTMLTextContainer object.
-      mshtml: Added DIID_HTMLTableEvents connection point.
-      mshtml: Return NULL instead of empty string in IHTMLBodyElement::get_background.
-      mshtml: Improve debug traces.
-      shlwapi: Uncomment IUnknown_EnableModeless code.
-      mshtml: Added more DOM tests.
-      mshtml: Added IHTMLStyleSheet::get_rules implementation.
-      mshtml: Added IHTMLStyleSheetRulesCollection::get_length implementation.
-      mshtml: Fixed ref counting.
-      mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) implementation.
-      mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) test.
-      hlink: Added IHttpNegotiate interface to ExtensionService.
-      shdocvw: Added client site's IOleCommandTarget tests.
-      mshtml: Added more IHTMLStyle implementation.
-      mshtml: Fix CSS px unit handling differences between Gecko and IE.
-      shdocvw: Return S_OK in IOleObject::SetHostNames.
-      urlmon: Fixed handling MIME type in Binding object.
-      urlmon: Includes clean up.
-      shdocvw: Register IE settings by iexplore.exe.
+Johannes Stezenbach (3):
+      wininet: Implement support for INTERNET_OPTION_VERSION in InternetQueryOptionW.
+      wininet: Fix error return code in FindFirstUrlCacheEntryW() stub.
+      ws2_32: Set *res = NULL for error return from WS_getaddrinfo().
 
-James Hawkins (16):
-      msi: Use a hash table for reordering rows in a WHERE query to conserve space.
-      msi: Test the CCPSearch action.
-      msi: Implement the Version property of the Installer object.
-      msi: Add a stub implementation of MsiEnumComponentCostsW.
-      msi: Test the CompLocator subset of the AppSearch action.
-      msi: Add tests for MsiGetComponentPath.
-      msi: Reimplement MsiGetComponentPath.
-      msi: Add tests for MsiGetProductCode.
-      msi: Remove two tests that depend on the sort order of RegEnumValue.
-      msi: Reimplement MsiGetProductCode.
-      msi: Handle the CompLocator table in the AppSearch action.
-      msi: Free the deformatted string.
-      msi: Free the user sid string.
-      msi: Properly release the record.
-      msi: Free the cabinet string on error.
-      msi: Close the file handle returned by FindFirstFile.
+Kirill K. Smirnov (7):
+      winhelp: Remember last added page.
+      winhelp: Avoid any keywords comparision during lookup, store pointer to listbox ITEMDATA instead.
+      server: Properly notify renderer while activating another screen buffer.
+      ws2_32: Fix flags conversion in getnameinfo() function.
+      kernel32: ReadConsoleW should wait for at least one character before returning.
+      winhelp: When we reuse window structure, old brush should not be reused.
+      kernel32: Invalidate local copy of console input event handle while reallocating console.
 
-Jonathan Ernst (9):
-      shell32: Updated French translation.
-      browseui: Updated French translation.
-      wineboot: New French translation.
-      write: New French translation.
-      wordpad: Updated French translation.
-      mshtml: Updated French translation.
-      Updated French translation.
-      winecfg: Updated French translation.
-      winecfg: Add missing audio tab controls to other languages.
+Lei Zhang (2):
+      quartz: Move aggregation tests into separate file.
+      quartz: Make filtergraph aggregatable.
 
-Kirill K. Smirnov (16):
-      winhelp: Correctly deal with various TopicBlockSize/Compression combinations. Simplify HLPFILE_Uncompress_Topic function.
-      winhelp: Add support for winhelp 3.0 phrases.
-      winhelp: Add support for winhelp 3.0 topics.
-      winhelp: winhelp 3.0 uses page numbers instead of hash values.
-      winhelp: Implement generic B+ tree search function.
-      winhelp: Rewrite Context support using B+ tree search.
-      winhelp: Rewrite internal files lookup using B+ tree search. Add some sanity checks.
-      winhelp: Enlarge font size by 3 as native winhelp does.
-      winhelp: Use HEAP_ZERO_MEMORY instead of setting individual fields to zero.
-      winhelp: There are files without Phrases or Phrases40 compression, add support for them.
-      winhelp: Do not confuse caller application with bogus error when we really succeeded.
-      winhelp: winhelp >3.0 files always use 0x4000 as a divisor in TOPICPOS regardless of DecompressSize.
-      winhelp: Change font charset from ANSI to DEFAULT.
-      winhelp: Export enum and search B+ tree functions.
-      winhelp: Read keywords.
-      winhelp: Display keywords index dialog box.
+Lionel Debroux (2):
+      winedevice: Fix memory leak (found by Smatch).
+      winspool: Fix memory leak (found by Smatch).
 
-Lei Zhang (16):
-      quartz: Move current tests into their own test case.
-      quartz: Add a test for IFilterGraph2.
-      quartz: Add some IGraphBuilder related tests.
-      quartz: Fix return value in IFilterGraph_FindFilterByName.
-      quartz: Validate input for IFilterGraph_FindFilterByName.
-      quartz: Add IFilterGraph2 interface and stubs.
-      quartz: Add videorenderer QueryInterface test.
-      quartz: Add videorenderer aggregation test.
-      quartz: Add referenceclock QueryInterface test.
-      quartz: Set *ppvObject to NULL if QueryInterface fails.
-      quartz: Make video renderer aggregatable.
-      ole32: Print a fixme when an aggregation attempt fails.
-      quartz: Give video renderer's Inner_QueryInterface a less generic name.
-      quartz: Fix typo in GraphConfig_AddRef.
-      quartz: Make aggregation test generic.
-      quartz: Do aggregation test for more video renderer interfaces.
+Maarten Lankhorst (3):
+      riched20: Implement ECO/EM SELECTIONBAR.
+      riched20: Fix bugs in EM_SETOPTIONS.
+      winealsa: Add special case for microphone source in mixer.
 
-Lionel Debroux (3):
-      msi: Fix missing alloc check.
-      msi: Fix memory leaks (found by Smatch).
-      winhelp: Fix memory leaks (found by Smatch).
+Marcus Meissner (2):
+      msi: Fixed buffer overflow in number parsing.
+      d3d9: Initialize pVertexBuffer.
 
-Louis Lenders (1):
-      msvcrt40: Add DllMain.
+Michael Jung (1):
+      ole32: Avoid leaving a critical section twice.
 
-Luis C. Busquets Pérez (10):
-      d3dx8: Implementation of D3DXAssembleShaderFromFileA.
-      mshtml: Update Spanish resource.
-      shell32: Update Spanish resource.
-      browseui: Add Spanish resource.
-      wineboot: Added Spanish resource.
-      gphoto2: Add Spanish resource.
-      credui: Add Spanish resource.
-      msvfw32: Add Spanish resource.
-      sane: Add Spanish Resource.
-      shell32: Update Spanish resource.
+Michael Stefaniuc (3):
+      rpcrt4: Add missing LeaveCriticalSection. Found by Smatch.
+      secur32/tests: InitFunctionPtrs() needs to use the global crypt32dll variable.
+      gdi32: There is no need to cast NULL to a function pointer.
 
-Maarten Lankhorst (10):
-      winealsa: Fix period size in capture.
-      winealsa: Fix return value checking in wavein.
-      winealsa: Simplify the feeding of capture buffers.
-      winealsa: Clear dwBytesRecorded in waveheader when adding buffer.
-      winealsa: Remove fixed fixme.
-      winealsa: Add control 'Digital' as alias for microphone.
-      winealsa: Don't require a cswitch control for capture.
-      winealsa: Add 'Front Mic' as alias for microphone.
-      riched20: Make some functions static.
-      include: Update oleacc with new constants and IAccessible interface.
+Mike McCormack (1):
+      shell32: Implement "My Network Places" shell folder.
 
-Marcel Partap (3):
-      include/winspool.h: Add FORM_INFO_2.
-      winspool.drv/tests: Add dumping of FORM_INFO_1/2 in test_EnumForms.
-      configure: Add i586-mingw32 prefix for crosscompiling.
-
-Marco Schuster (3):
-      wined3d: Fixed a bug that the 8600M GT could not be detected.
-      wine.man: Added small clarification for AppDB.
-      loader: Added de_DE.UTF-8 translated Wine man page.
-
-Marcus Meissner (1):
-      server: Removed superflous async->queue NULL tests.
-
-Michael Stefaniuc (20):
-      secur32: Remove the SECUR32_ALLOC() macro around HeapAlloc().
-      kernel32: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory with a separate memset() call.
-      mshtml: Rename the wrappers around HeapAlloc() &Co to use the new standard naming.
-      winecfg: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory with a separate memset() call.
-      user32/tests: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory with a separate memset() call.
-      riched20: Rename the wrappers around HeapAlloc() &Co to use the new standard naming.
-      riched20: Remove the RTFAlloc() wrapper around heap_alloc().
-      hhctrl.ocx: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      iccvid: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      pdh: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      localspl: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      hlink: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      crypt32: Do not use an empty body in an else-statement as documentation.
-      usp10: Rename the wrappers around HeapAlloc() &Co to use the standard names.
-      wined3d: Fix a "ordered comparison of pointer with integer zero".
-      rsaenh/tests: Remove duplicate abPlainPrivateKey variable.
-      rsaenh/tests: Remove an unused global variable.
-      wineoss.drv: Move a function wide variable down to the block it is used in.
-      kernel32: Do not reuse the name of a function argument for a local variable.
-      winebuild: Remove duplicate declaration of variable 'j'.
-
-Paul Vriens (3):
-      kernel32: Add some simple tests for GetVersionExA.
-      kernel32: Make tests run on Win98 again.
-      kernel32/tests: Test for functions should be or-ed.
+Peter Beutner (1):
+      d3d9: Add stub for Direct3DShaderValidatorCreate9().
 
 Peter Oberndorfer (2):
-      comctl32: Add EnumMRUList tests.
-      comctl32: EnumMRUListA/W fix getting list size by negative item pos.
+      winex11: Remove unused SWAP_INT macro.
+      gdi32: Fix a comment typo.
 
-Rob Shearman (73):
-      oleaut32: Implement OLEPictureImpl_GetIDsOfNames.
-      include: Move Wine-specific EH_* defines from winnt.h to include/wine/exception.h.
-      ole32: Always create a window for the main apartment.
-      ole32: Ignore the threading model of the PSFactoryBuffer object created during standard marshaling.
-      include: Fix the HRESULT_FROM_WIN32 macro to not change the HRESULT if the error is already an HRESULT.
-      rpcrt4: Initialise the memory in test_simple_struct_marshal before passing it to NdrSimpleStructUnmarshall.
-      rpcrt4: Reverse the conditions for which *pPointer is assigned base_ptr_val in PointerUnmarshall.
-      rpcrt4: Test that the string retrieved from get_name was actually unmarshalled correctly.
-      d3dx8: Initialise temp in D3DXQuaternionInverse to avoid a uninitialised variable warning with some versions of gcc.
-      rpcrt4: Flesh out more of the IRpcChannelBuffer vtable to make the test_delegating_Invoke test succeed on Windows.
-      rpcrt4: Call IRpcChannelBuffer_GetDestCtx in NdrStubInitialize, just like we do in NdrProxyInitialize.
-      rpcrt4: Put the delegating stub thunks in an executable memory page,  rather than on the heap.
-      ole32: Fix the test of the size returned from WdtpInterfacePointer_UserSize.
-      rpcrt4: Handle all non-continuable exceptions in CStdStubBuffer_Invoke.
-      rpcrt4: Set the destination pointer in PointerUnmarshall before calling the referenced type's unmarshalling routine.
-      rpcrt4: Add tests for a pointer to a conformant strings.
-      rpcrt4: Set fMustAlloc to TRUE when unmarshalling an object pointer.
-      rpcrt4: Set the memory pointer in NdrBaseTypeUnmarshall to the buffer if we're unmarshalling on a server without memory being passed in.
-      ole32: Initialise object variable in RunningObjectTableImpl_GetObject.
-      mshtml: Use the correct deallocator in the htmldoc tests for the memory returned by IMoniker_GetDisplayName and fix a use-after-free error.
-      rpcrt4: Fix a memory leak in RpcAssoc_BindConnection.
-      rpcrt4: Fix a memory leak when freeing an association by deleting the critical section.
-      rpcrt4: Fix a memory leak caused by NdrFullPointerXlatFree not freeing the entries in the full pointer translation table.
-      rpcrt4: Improve PointerFree to not free buffer memory.
-      oleaut32: Don't call SafeArrayAllocData in LPSAFEARRAY_UserUnmarshal if we called SafeArrayCreateEx instead of SafeArrayAllocDescriptor.
-      oleaut32: Try to re-use existing memory when unmarshalling variants with byref types.
-      oleaut32: Set the number of locks held on the safe arrays in the safe array tests to zero before destroying them, otherwise the operation will fail and leak memory.
-      mshtml: Fix a memory leak in the htmldoc tests.
-      ole32: Register the window used in the marshal tests only once.
-      rpcrt4: Implement NdrConformantStructFree.
-      rsaenh: Fix some leaks of the provider handle in the rsaenh tests.
-      oleaut32: Fix a reference count leak of the TMarshalDispatchChannel.
-      oleaut32: Fix two memory leaks in the test for DispCallFunc.
-      oleaut32: Fix a leak of the typelib in the tmarshal tests.
-      rpcrt4: Use an alertable wait in rpcrt4_protseq_np_wait_for_new_connection to fix a small memory leak flagged by Valgrind.
-      ole32: Process messages while waiting for a local server to create a pipe.
-      widl: Don't override the pointer type in top-level arrays.
-      rpcrt4: Fix NdrConformantArrayUnmarshall to use buffer memory if applicable and to reuse memory for embedded pointers.
-      rpcrt4: Fix NdrFixedArrayUnmarshall to use buffer memory if applicable and to reuse memory for embedded pointers.
-      rpcrt4: Fix NdrConformantStructUnmarshall to use buffer memory if applicable and to reuse memory for embedded pointers.
-      rpcrt4: Implement PointerMemorySize.
-      rpcrt4: Add a trace to NdrBaseTypeMemorySize.
-      rpcrt4: Fix the return value from NdrSimpleStructMemorySize.
-      rpcrt4: Save the buffer in EmbeddedPointerMemorySize, like EmbeddedPointerUnmarshall does.
-      rpcrt4: Add a missing break in DllMain.
-      rpcrt4: Implement NdrConformantArrayMemorySize.
-      rpcrt4: NdrRangeUnmarshall is implemented so add it to the spec file.
-      rpcrt4: Pass the USER_MARSHAL_CB structure into user marshal routines.
-      actxprxy: Add the start of actxprxy.dll.
-      wine.inf: Register actxprxy.dll and create a fake DLL for it.
-      widl: Always write a freeing function for arrays in generated code.
-      widl: Arrays should have freeing code generated on the server side, even if they are [in] parameters.
-      widl: Make sure to generate freeing calls for all non-simple structures with pointers and pointers to user marshalled types.
-      widl: Support the address-of operator in expressions.
-      widl: iid_is should take expressions, not just identifiers.
-      widl: Add support for non-basetype return types.
-      rsaenh: Fix some memory leaks in the tests.
-      rpcrt4: Make the NdrAllocate tests pass on XP SP2 and greater.
-      rpcrt4: Store allocated memory in a singly-linked list to keep track of what we should and shouldn't free in NdrFree.
-      rpcrt4: Try to free every non-stack pointer in PointerFree now that NdrFree does the sanity checking for us.
-      widl: Remove some confusion in how version numbers are packed into an attribute by defining some macros for this purpose.
-      widl: Swap the version packing order back to what typelibs expect.
-      rpcrt4: Add tests for freeing non-NdrAllocate allocated memory blocks.
-      widl: Don't write redundant FC_RP type format out for conformant strings, unless it is a top level variable.
-      Revert "rpcrt4: Try to free every non-stack pointer in PointerFree now that NdrFree does the sanity checking for us.".
-      rpcrt4: NdrStubGetBuffer shouldn't set BufferStart and BufferEnd.
-      rpcrt4: Fix the check in NdrPointerFree.
-      rpcrt4: Free the base pointer in PointerFree when freeing a pointer with RPC_FC_P_DEREF.
-      rpcrt4: Partially revert commit 18faf3184b2ea263d77c2a7ad92eef27bc4ba08f.
-      rpcrt4: Document NdrAllocate.
-      rpcrt4: Update TODO list.
-      rpcrt4: Fix a typo in rpcrt4_conn_tcp_read.
-      include: Make RpcRaiseException DECLSPEC_NORETURN, like it is in the PSDK.
+Reece H. Dunn (2):
+      include: Added the new Vista messages.
+      user32: Added the new Vista messages to spy.
 
-Roy Shea (7):
-      wininet: Removed inline from copy_compsA and zero_compsA to allow Windows testing.
-      wininet: Added check of dwStructSize required by Windows in calls to InternetCrackUrlA.
-      svchost: Implementation of svchost.
-      qmgr: Renamed bits_main.c to qmgr_main.c and updated comments.
-      include: Added bitsmsg.h header.
-      include: Added IDL file for BITS.
-      qmgrprxy: Queue manager proxy generated using an IDL compiler and bits.idl.
+Rico Schüller (3):
+      comdlg32: Fix typo.
+      kernel32: Fix typo.
+      wined3d: Fix some typos.
 
-Sam Dennis (1):
-      advapi32: Fix undocumented behaviour in ReqQueryValueEx when 'count' and 'type' point to the same address.
+Rob Shearman (50):
+      widl: Clear padding in the buffer due to alignment.
+      widl: Return types shouldn't be freed.
+      widl: Only base types or reference pointers to base types don't need to be freed.
+      include: Add definitions for RPC_FC_SSTRING and RPC_FC_C_SSTRING.
+      rpcrt4: Clear padding inserted into the buffer during marshalling because of alignment.
+      rpcrt4: Add a FIXME for RPC_FC_P_ALLOCALLNODES in PointerUnmarshall.
+      rpcrt4: Fix NdrConformantStringUnmarshall to use buffer memory if possible.
+      rpcrt4: Return an error from rpcrt4_conn_tcp_read if recv returns 0.
+      rpcrt4: Make a server association when a bind packet is received in the server.
+      rpcrt4: Move association code into a separate file.
+      hlink: Fix some memory leaks in the tests.
+      include: Add more NDR types and function declarations to rpcndr.h.
+      include: Add more types and function declarations to the rpcasync.h header file.
+      rpcrt4: Don't copy memory from the buffer in NdrConformantStringUnmarshall if we just pointed the memory pointer into the buffer.
+      rpcrt4: Add a stub for I_RpcGetCurrentCallHandle.
+      include: Add some context handle defines to rpcdcep.h.
+      mscoree: Add a stub for GetVersionFromProcess.
+      rpcrt4: Implement I_RpcGetCurrentCallHandle.
+      widl: The detection of types is highly dependent on the ordering of the various type detection functions.
+      widl: Fix the length used when clearing alignment space in generated files.
+      rpcrt4: Fix the ALIGN_POINTER_CLEAR macro.
+      rpcrt4: Memory should only be cleared in ComplexUnmarshall, not in ComplexMarshall.
+      rpcrt4: Initialise memory passed into RPCs in the server test.
+      rpcrt4: Don't use BufferEnd in RpcStream_Write.
+      rpcrt4: Fix NdrConformantStringUnmarshall to always increment the buffer during unmarshalling.
+      ole32: Fix RPC_GetLocalClassObject to wait for 30 seconds, even if messages arrive while we are waiting.
+      rpcrt4: Print an error if stub buffer pointer is passed into safe_copy_from_buffer.
+      rpcrt4: Fix a memory leak from the get_filename call in the server tests.
+      kernel32: Add a test for calling VirtualAlloc on a view of a SEC_RESERVE file mapping.
+      widl: Tweak the rules for when to call pfnFree for arrays.
+      rpcrt4: Set pStubMsg->BufferMark in NdrConformantVaryingArrayUnmarshall and NdrVaryingArrayUnmarshall.
+      widl: Fix the generation of temporary variables for declared arrays.
+      widl: Fix pointer detection in structures and arrays.
+      include: Remove semi-colons from the end of cpp_quote statements as MIDL likes them.
+      rpcrt4: Move low-level NDR context handle functions to a separate file.
+      rpcrt4: Implement higher-level NDR server context handle functions.
+      rpcrt4: Implement low-level context handle support.
+      rpcrt4: Add tests for low-level context handle functions.
+      widl: Add support for generating code for out-only context handles by calling NdrContextHandleInitialize.
+      rpcss: Use context handles to automatically free running object table entries if the client process quits without calling IrotRevoke.
+      hlink: Fix memory leak by freeing extension services This->headers in the release function.
+      msi: Fix several memory leaks after using IEnumSTATSTG_Next.
+      oleaut32: Fix copy and paste error in VARIANT_UserUnmarshall with VT_UNKNOWN test.
+      quartz: Fix memory leak in FilterGraphInner_Release.
+      rpcrt4: Add tests for varying and conformant varying arrays.
+      rpcrt4: Re-use existing memory for embedded pointers in NdrConformantVaryingArrayUnmarshall.
+      rpcrt4: Re-use existing memory for embedded pointers in NdrVaryingArrayUnmarshall.
+      rpcss: Zero the memory of several variables before writing them to the pipe to silence Valgrind warnings.
+      explorer: Fix memory leak when one or more properties are not present on a hal device.
+      server: Initialise the apc_call_t union in async_set_result to all zero to avoid a Valgrind warning.
 
-Stefan Dösinger (30):
-      wined3d: mov to a0.x does a floor(), not a round to nearest.
-      wined3d: Enabling too many lights is silently ignored.
-      wined3d: Unify bpp to format conversion.
-      wined3d: Detect the Intel GPU in macbooks.
-      wined3d: Add parentheses to a flag check.
-      wined3d: Add a method for querying the gl drawable size of rendertarget.
-      wined3d: Use the proper drawable size when setting the scissor rect.
-      wined3d: Retrieve the height properly when setting the viewport.
-      wined3d: Disable the scissor test when blitting.
-      wined3d: Fixes for drawable handling in Clear.
-      wined3d: Clear honors the viewport.
-      wined3d: Use the proper drawable size when clearing.
-      wined3d: Test clearing regarding the scissor test and colorwrite.
-      wined3d: Ignore unused attributes when generating the swizzle array.
-      wined3d: Initialize output texcoord .w to 1.0 if needed.
-      wined3d: A more detailed occlusion query test and fixes.
-      ddraw: Set X8R8G8B8 for 32 bpp.
-      wined3d: Add an alpha blending test.
-      wined3d: Use the adapter to read the display mode.
-      wined3d: Remove 24/32 bit hacks.
-      wined3d: Use SetDisplayMode to set the display mode.
-      winex11: Remove an unused variable.
-      gdi32, winex11drv: Add a test for compatible bitmap depths.
-      gdi32: Test bitmap depths.
-      winex11: Remove an unused variable.
-      gdi32: Test the bit depth of compatible bitmaps explicitly.
-      winex11: Ignore the alpha if all pixels are 0.
-      gdi32: Test the "alpha" channel on compatible bitmaps.
-      user32: Add a test for WM_DISPLAYCHANGE.
-      user32: Add a test for EnumDisplaySettings vs GetDeviceCaps.
+Roderick Colenbrander (2):
+      wined3d: In case of GL_EXT_paletted_textures we use GL_COLOR_INDEX and don't need a GL_RED fixup.
+      wined3d: Only store the palette index in the alpha component when the primary render target uses P8.
 
-Ted Percival (1):
-      regedit: Display REG_DWORD as unsigned with lowercase hex digits.
+Roy Shea (2):
+      qmgr: Generate C file with local GUID definitions from bits.idl.
+      qmgr: AddRef, QueryInterface, and stub functions for queue manager interface.
 
-Thomas Weidenmueller (1):
-      comctl32: Fix painting bug in listview control.
+Stefan Dösinger (37):
+      winex11: Distinguish between bpp and depth.
+      winex11: Activate the depth-bpp difference.
+      d3d9: The refrast returns an error on invalid clear rects.
+      d3d9: D3DLOCK_DISCARD is not valid on managed textures.
+      d3d9: Do not set NONE MIN and MAG filters.
+      d3d9: Remove a few more incorrect D3DLOCK_DISCARDs.
+      d3d9: Add a note about a breakage in the refrast.
+      wined3d: Disable the SWAPEFFECT_DISCARD clear.
+      wined3d: Correct a pixel shader version comparison.
+      wined3d: Ignore tesselated and unused streams when comparing attribs.
+      wined3d: Filter out some shader compilation spam.
+      kernel32: Add a test for BindIoCompletionCallback.
+      wined3d: Implement D3DFMT_G16R16.
+      wined3d: Split up the render target -> render target blit.
+      wined3d: Implement blits from the active render target to swapchains.
+      wined3d: Emulate half float vertices if GL_NV_half_float is not there.
+      wined3d: Some improvements for SFLAG_CONVERTED checking.
+      wined3d: Implement texture -> swapchain blits with stretch_rect_fbo.
+      wined3d: Always dump the fbo state on errors.
+      wined3d: Store if half float conversion is needed in the decl.
+      wined3d: Fixed function vertex attribute types are flexible.
+      wined3d: Fix vertex buffers based on type, not semantic.
+      wined3d: Move the GL info structure into the adapter.
+      wined3d: Add a test for 16 bit floats.
+      wined3d: Implement half float vertex buffer conversion.
+      wined3d: Change the vertex buffer declaration's data format.
+      d3d9: Extend the fixed function vertex declaration test.
+      wined3d: Improve some traces.
+      wined3d: Add a test for POSITIONT vertex fixups.
+      wined3d: Vertex attributes are 4 byte aligned.
+      wined3d: Per stream offsets are 4 byte aligned.
+      wined3d: Implement and test vertex fixups with per stream offsets.
+      d3d9: Accept D3DDEVTYPE_REF devices in the vertex declaration test.
+      wined3d: Fix a problem in BltOverride.
+      wined3d: Get rid of the invymat.
+      wined3d: Combine two glScalef calls into one.
+      wined3d: Multiply the half pixel correction with .w.
 
-Tim Schwartz (1):
-      advapi32: service_control_dispatcher(): Fixed invalid pipe test to display GetLastError() before it gets overwritten.
+Stefan Leichter (2):
+      gdiplus: Partly implement GdipCreateFromHDC2
+      kernel32: Silence a fixme in GetNativeSystemInfo.
 
-Vitaly Lipatov (7):
-      oledlg: Use wide strings, fix buffers size.
-      oledlg: Add Russian translation.
-      avifil32: Fix buffer sizes.
-      midimap: Fix buffer sizes.
-      shell32: Use sizeof instead of constant for buffer size.
-      winspool.drv: Fix buffer sizes.
-      winecfg: Updated Russian translation.
+Vincent Hardy (1):
+      regedit: Window caption correction.
 
-Zac Brown (2):
-      wininet: Fix FtpGetCurrentDirectoryW to handle bad input.
-      wininet: Add test for FtpGetCurrentDirectoryA in wininet/tests/ftp.c.
+Zhangrong Huang (2):
+      gdi32, winex11.drv: Correct default Chinese font name.
+      secur32: Fix possible crash while loading SSP providers from registry.
 
 --
 Alexandre Julliard
diff --git a/ChangeLog b/ChangeLog
index a7dc84d..fa8e26a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1318 @@
+2007-12-28  Vincent Hardy <vincent.hardy.be@gmail.com>
+
+	* programs/regedit/Fr.rc:
+	regedit: Window caption correction.
+
+2007-12-23  Roderick Colenbrander <thunderbird2k@gmx.net>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Only store the palette index in the alpha component when the primary
+	render target uses P8.
+	This was already done in other places but I missed this spot.
+
+	* dlls/wined3d/surface.c:
+	wined3d: In case of GL_EXT_paletted_textures we use GL_COLOR_INDEX and don't
+	need a GL_RED fixup.
+
+2007-12-28  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/message.c, include/wine/server_protocol.h,
+	  server/protocol.def, server/queue.c, server/request.h,
+	  server/trace.c:
+	user32: Reimplement IsHungAppWindow.
+
+2007-12-28  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Rename BindProtocol's IInternetProtocolSink methods.
+	Binding's implementation uses the same names, what makes reading logs
+	harder.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Use heap_alloc_zero to allocate BindProtocol.
+
+	* dlls/urlmon/tests/misc.c:
+	urlmon: Added mime filters tests.
+
+	* dlls/urlmon/session.c:
+	urlmon: Added [Un]RegisterMimeFilter implementation.
+
+	* dlls/urlmon/session.c:
+	urlmon: RegisterNameSpace clean up.
+
+	* dlls/urlmon/tests/misc.c:
+	urlmon: Added CoInternetQueryInfo tests.
+
+	* dlls/urlmon/internet.c, dlls/urlmon/umon.c:
+	urlmon: Added CoInternetQueryInfo implementation.
+
+	* dlls/mshtml/tests/protocol.c:
+	mshtml: Added QueryInfo tests.
+
+	* dlls/mshtml/protocol.c:
+	mshtml: Added ResProtocolInfo::QueryInfo implementation.
+
+	* dlls/mshtml/protocol.c:
+	mshtml: Added AboutProtocolInfo::QueryInfo implementation.
+
+2007-12-27  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/vertexshader.c:
+	wined3d: Multiply the half pixel correction with .w.
+
+2007-12-27  Rob Shearman <rob@codeweavers.com>
+
+	* server/async.c:
+	server: Initialise the apc_call_t union in async_set_result to all zero to
+	avoid a Valgrind warning.
+
+2007-12-26  Mike McCormack <mike@codeweavers.com>
+
+	* dlls/shell32/Makefile.in, dlls/shell32/pidl.c, dlls/shell32/pidl.h,
+	  dlls/shell32/shell32_main.h, dlls/shell32/shellole.c,
+	  dlls/shell32/shfldr_netplaces.c, dlls/shell32/shres.rc:
+	shell32: Implement "My Network Places" shell folder.
+
+2007-12-24  Marcus Meissner <marcus@jet.franken.de>
+
+	* dlls/d3d9/tests/device.c:
+	d3d9: Initialize pVertexBuffer.
+
+2007-12-26  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/gdi32/tests/font.c, tools/sfnt2fnt.c:
+	fonts: Correct External leading for japanese small font and enable fontmetric
+	test for the font.
+
+2007-12-27  Rob Shearman <rob@codeweavers.com>
+
+	* programs/explorer/hal.c:
+	explorer: Fix memory leak when one or more properties are not present on a
+	hal device.
+
+	* programs/rpcss/np_server.c:
+	rpcss: Zero the memory of several variables before writing them to the pipe
+	to silence Valgrind warnings.
+
+2007-12-26  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/state.c:
+	wined3d: Combine two glScalef calls into one.
+
+2007-12-25  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/state.c:
+	wined3d: Get rid of the invymat.
+	glScalef(1.0, -1.0, 1.0) does the same as the glMultMatrix with the
+	invymat matrix, and it is more optimal.
+
+	* dlls/wined3d/surface.c:
+	wined3d: Fix a problem in BltOverride.
+
+2007-12-26  Gerald Pfeifer <gerald@pfeifer.com>
+
+	* dlls/msi/table.c:
+	msi: Fix error handling in encode_streamname().
+
+2007-12-27  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/wined3d/state.c:
+	wined3d: Also update alpha test when stage texture is NULL.
+
+2007-12-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>
+
+	* dlls/comdlg32/printdlg.c:
+	comdlg32: PageSetupDlgW: Load paper orientation in ChangePrinterW.
+
+2007-12-25  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/wined3d/directx.c:
+	wined3d: Add zero/near zero vertex rhw special case.
+
+2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/ws2_32/socket.c:
+	ws2_32: Fix timeout check.
+
+2007-12-24  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
+	rpcrt4: Re-use existing memory for embedded pointers in
+	NdrVaryingArrayUnmarshall.
+
+	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
+	rpcrt4: Re-use existing memory for embedded pointers in
+	NdrConformantVaryingArrayUnmarshall.
+
+	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
+	rpcrt4: Add tests for varying and conformant varying arrays.
+
+2007-12-26  Andrey Turkin <andrey.turkin@gmail.com>
+
+	* dlls/dbghelp/dwarf.c:
+	dbghelp: Treat const addresses as const unsigned.
+	This will prevent winedbg from spamming about __wine_dbch__default.
+
+2007-12-26  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/quartz/filtergraph.c:
+	quartz: Fix memory leak in FilterGraphInner_Release.
+
+	* dlls/oleaut32/tests/usrmarshal.c:
+	oleaut32: Fix copy and paste error in VARIANT_UserUnmarshall with VT_UNKNOWN
+	test.
+	The variant type is VT_UNKNOWN so we should be using V_UNKNOWN, not
+	V_VARIANTREF(V_R8) to check the type unmarshalled properly.
+
+	* dlls/msi/streams.c, dlls/msi/table.c:
+	msi: Fix several memory leaks after using IEnumSTATSTG_Next.
+	The pwcsName field of STATSTG must be freed, otherwise the memory will
+	be leaked.
+
+	* dlls/hlink/extserv.c:
+	hlink: Fix memory leak by freeing extension services This->headers in the
+	release function.
+
+2007-12-25  Reece H. Dunn <msclrhd@gmail.com>
+
+	* dlls/user32/spy.c:
+	user32: Added the new Vista messages to spy.
+
+	* include/winuser.h:
+	include: Added the new Vista messages.
+
+2007-12-25  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/ole32/moniker.c, include/wine/irot.idl, programs/rpcss/irotp.c:
+	rpcss: Use context handles to automatically free running object table entries
+	if the client process quits without calling IrotRevoke.
+
+	* tools/widl/typegen.c:
+	widl: Add support for generating code for out-only context handles by calling
+	NdrContextHandleInitialize.
+
+	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
+	rpcrt4: Add tests for low-level context handle functions.
+
+	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_assoc.c,
+	  dlls/rpcrt4/rpc_assoc.h:
+	rpcrt4: Implement low-level context handle support.
+	Server context handles are tracked from associations as their lifetime
+	is determined by the lifetime of the association.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Implement higher-level NDR server context handle functions.
+	Implement NdrServerContextMarshall and NdrServerContextNewMarshall on
+	top of NDRSContextMarshall2. Implement NdrContextHandleInitialize,
+	NdrServerContextUnmarshall and NdrServerContextNewUnmarshall on top of
+	NDSContextUnmarshall2.
+
+	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_contexthandle.c,
+	  dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Move low-level NDR context handle functions to a separate file.
+
+	* include/d3d10.idl, include/msinkaut.idl, include/oleacc.idl,
+	  include/wine/irot.idl:
+	include: Remove semi-colons from the end of cpp_quote statements as MIDL
+	likes them.
+
+	* tools/widl/typegen.c:
+	widl: Fix pointer detection in structures and arrays.
+	write_embedded_types doesn't descend into all types contained by the
+	array or structure, so create a new function, type_has_pointers, for the
+	purpose of descending into all types and returning whether or not
+	pointers are present.
+
+2007-12-26  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/wintab32/context.c:
+	wintab32: Fix debug traces to use wine_dbg_sprintf.
+
+2007-12-24  Jeremy White <jwhite@codeweavers.com>
+
+	* dlls/wintab32/context.c:
+	wintab32: Fix the W->A translation for CSR_NAME and CSR_BTNNAMES.
+	Has the lovely side effect of making Photoshop pressure + tilt work.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Capture the number of buttons earlier, allowing our button maps to
+	be filled in.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Implement the ability to return the number of devices and cursors.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Don't return information for non existent cursors.
+
+2007-12-23  Jeremy White <jwhite@winehq.org>
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Correctly handle devices with a device id of 0.
+	The XInput macros such as DeviceMotionNotify will correctly return an eventclass
+	of 0
+	if the device id is 0.	Given that, we cannot use eventclass != 0 as a meaningful
+	test, and must instead use the returned type.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Compute our physical device characteristics based on the first tablet
+	device that looks like a stylus.
+	Otherwise, we may be computing based on a mouse or cursor, and then
+	come to incorrect values for our tilt and pressure settings.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Add additional device tracing.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Order the cursor array by the standard Wacom promulgates.
+
+2007-12-24  Jeremy White <jwhite@winehq.org>
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Add constants for cursor types and use them.
+
+2007-12-24  Maarten Lankhorst <maarten@codeweavers.com>
+
+	* dlls/winealsa.drv/mixer.c:
+	winealsa: Add special case for microphone source in mixer.
+	Some microphones don't have a capture control, but a playback control
+	instead. So use the playback volume, but still register it as capture
+	volume.
+
+2007-12-24  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
+	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
+	mshtml: Use IBindCtx passed to Load in BindToStorage call.
+
+	* dlls/urlmon/tests/url.c:
+	urlmon: Fixed BindToObject tests.
+
+	* dlls/urlmon/tests/protocol.c:
+	urlmon: Added more binding tests.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added more BindProtocol::ReportProgress implementation.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added BindProtocol::[Un]LockRequest.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added BindProtocol::Continue implementation.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added BindProtocol::Switch implementation.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added IServiceProvider implementation to BindProtocol object.
+
+	* dlls/urlmon/bindprot.c:
+	urlmon: Added BindProtocol::GetBindString implementation.
+
+	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
+	urlmon: Fixed protocol tests.
+
+2007-12-23  Jeremy White <jwhite@winehq.org>
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Do not offset the physical device id by the cursor number.
+
+	* dlls/winex11.drv/wintab.c:
+	wintab32: Store and use the physical device id to match device to cursor.
+
+2007-12-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
+
+	* dlls/msxml3/tests/domdoc.c:
+	msxml3: Fix memory leaks in tests.
+
+2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/ole32/compobj.c:
+	ole32: Fix wrong timeout check.
+
+2007-12-23  Eric Pouech <eric.pouech@orange.fr>
+
+	* dlls/ntdll/heap.c, dlls/ntdll/signal_i386.c, loader/kthread.c:
+	valgrind: Made Wine compliant will latest Valgrind macros (the one removed
+	from 3.3.0 and deprecated since 3.2.0).
+
+2007-12-22  Rob Shearman <rob@codeweavers.com>
+
+	* tools/widl/typegen.c:
+	widl: Fix the generation of temporary variables for declared arrays.
+	These need to include their array part so use var->type instead of
+	var->ref->type.
+
+2007-12-21  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/msi/format.c:
+	msi: Remove unneeded cast.
+
+	* dlls/msvcrt/file.c:
+	msvcrt: Remove unneeded cast.
+
+	* dlls/msacm32/driver.c, dlls/msacm32/pcmconverter.c:
+	msacm32: Remove unneeded casts.
+
+2007-12-23  Stefan Leichter <Stefan.Leichter@camline.com>
+
+	* dlls/kernel32/cpu.c:
+	kernel32: Silence a fixme in GetNativeSystemInfo.
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
+	  include/gdiplusflat.h:
+	gdiplus: Partly implement GdipCreateFromHDC2
+
+2007-12-22  Johannes Stezenbach <js@sig21.net>
+
+	* dlls/ws2_32/socket.c:
+	ws2_32: Set *res = NULL for error return from WS_getaddrinfo().
+
+	* dlls/wininet/urlcache.c:
+	wininet: Fix error return code in FindFirstUrlCacheEntryW() stub.
+
+	* dlls/wininet/internet.c:
+	wininet: Implement support for INTERNET_OPTION_VERSION in InternetQueryOptionW.
+
+2007-12-22  Peter Oberndorfer <kumbayo84@arcor.de>
+
+	* dlls/gdi32/palette.c:
+	gdi32: Fix a comment typo.
+
+	* dlls/winex11.drv/text.c:
+	winex11: Remove unused SWAP_INT macro.
+
+2007-12-21  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/dialog.c:
+	msi: Allow whitespace after the property name when setting a property in
+	the dialog.
+
+	* dlls/msi/tests/db.c, dlls/msi/where.c:
+	msi: Allow the not-equal operator in WHERE query string comparisons.
+
+	* dlls/msi/table.c, dlls/msi/tests/db.c:
+	msi: Fix deleting temporary rows, with tests.
+
+2007-12-22  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Set pStubMsg->BufferMark in NdrConformantVaryingArrayUnmarshall and
+	NdrVaryingArrayUnmarshall.
+	pStubMsg->BufferMark should always be set before
+	EmbeddedPointerUnmarshall is called and these functions didn't
+	previously do so.
+
+2007-12-22  Andrey Turkin <andrey.turkin@gmail.com>
+
+	* dlls/dbghelp/minidump.c:
+	dbghelp: Adjust minidump streams ordering and sizing.
+	To more closely match native format; this is required for windbg.
+
+2007-12-23  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/instr.c, dlls/kernel32/kernel_private.h,
+	  dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
+	winedos: Add the possibility of refusing to emulate some interrupts.
+
+	* dlls/kernel32/process.c:
+	kernel32: Initialize MaximumLength of the user params directory too.
+
+2007-12-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/heap.c:
+	kernel32: Yet another workaround for broken apps in GlobalMemoryStatus.
+
+2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* dlls/kernel32/console.c:
+	kernel32: Invalidate local copy of console input event handle while reallocating
+	console.
+
+2007-12-20  Lei Zhang <thestig@google.com>
+
+	* dlls/quartz/filtergraph.c, dlls/quartz/tests/misc.c:
+	quartz: Make filtergraph aggregatable.
+
+	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/misc.c,
+	  dlls/quartz/tests/videorenderer.c:
+	quartz: Move aggregation tests into separate file.
+
+2007-12-19  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/wined3d/device.c:
+	wined3d: Use IWineD3DDeviceImpl_ClearSurface in IWineD3DDeviceImpl_Clear.
+
+	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
+	  dlls/wined3d/wined3d_private.h:
+	wined3d: Rewrite IWineD3DSurfaceImpl_BltOverride colorfill codepath.
+
+2007-12-20  Andrey Turkin <andrey.turkin@gmail.com>
+
+	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c, dlls/ntdll/ntdll.spec,
+	  dlls/ntdll/threadpool.c, include/winternl.h:
+	ntdll: Implement BindIoCompletionCallback.
+
+2007-12-20  Zhangrong Huang <hzhrong@gmail.com>
+
+	* dlls/secur32/secur32.c:
+	secur32: Fix possible crash while loading SSP providers from registry.
+
+	* dlls/gdi32/gdiobj.c, dlls/winex11.drv/xfont.c:
+	gdi32, winex11.drv: Correct default Chinese font name.
+
+2007-12-20  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/vertexdeclaration.c:
+	d3d9: Accept D3DDEVTYPE_REF devices in the vertex declaration test.
+
+	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c,
+	  dlls/wined3d/vertexbuffer.c:
+	wined3d: Implement and test vertex fixups with per stream offsets.
+
+	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
+	wined3d: Per stream offsets are 4 byte aligned.
+
+	* dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
+	  dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
+	  dlls/wined3d/vertexdeclaration.c:
+	wined3d: Vertex attributes are 4 byte aligned.
+
+	* dlls/d3d9/tests/visual.c:
+	wined3d: Add a test for POSITIONT vertex fixups.
+
+2007-12-19  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/device.c:
+	wined3d: Improve some traces.
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: Extend the fixed function vertex declaration test.
+
+2007-12-21  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Change the vertex buffer declaration's data format.
+	This hopefully makes the vertex attribute detection simpler, more solid,
+	readable and flexible.
+
+2007-12-19  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
+	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Implement half float vertex buffer conversion.
+
+2007-12-21  Michael Jung <mjung@iss.tu-darmstadt.de>
+
+	* dlls/ole32/moniker.c:
+	ole32: Avoid leaving a critical section twice.
+
+2007-12-21  Rob Shearman <rob@codeweavers.com>
+
+	* tools/widl/typegen.c:
+	widl: Tweak the rules for when to call pfnFree for arrays.
+	Varying arrays that aren't unmarshalled shouldn't be freed, but
+	conformant arrays that aren't unmarshalled should.
+
+2007-12-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/process.c:
+	kernel32: Store the initial directory as a full path in the process parameters.
+
+2007-12-20  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/kernel32/tests/virtual.c:
+	kernel32: Add a test for calling VirtualAlloc on a view of a SEC_RESERVE
+	file mapping.
+
+	* dlls/rpcrt4/tests/server.c:
+	rpcrt4: Fix a memory leak from the get_filename call in the server tests.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Print an error if stub buffer pointer is passed into
+	safe_copy_from_buffer.
+	Also print an error message if there was an overflow.
+
+2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* programs/winhelp/winhelp.c:
+	winhelp: When we reuse window structure, old brush should not be reused.
+
+2007-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>
+
+	* dlls/comdlg32/filedlg31.c:
+	comdlg32: Fix another regression in 3.1-style file dialog from LB_DIR fix.
+
+2007-12-20  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/mciseq/mcimidi.c:
+	mciseq: Remove unneeded casts.
+
+	* dlls/mciavi32/mciavi.c, dlls/mciavi32/mmoutput.c:
+	mciavi32: Remove unneeded casts.
+
+	* dlls/kernel32/local16.c:
+	kernel32: Revert the removal of a cast from a macro.
+
+	* dlls/mapi32/imalloc.c, dlls/mapi32/prop.c:
+	mapi32: Remove unneeded casts.
+
+	* dlls/kernel32/thunk.c, dlls/kernel32/toolhelp.c:
+	kernel32: Remove unneeded casts.
+
+2007-12-20  Huw Davies <huw@codeweavers.com>
+
+	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
+	inetcomm: Implement IMimeBody_GetOffsets.
+
+2007-12-20  Ivan Sinitsin <ivan@etersoft.ru>
+
+	* programs/winefile/winefile.c:
+	winefile: Save font settings in registry.
+
+2007-12-20  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/relay.c:
+	ntdll: Increase the buffer size dynamically for relay debug lists.
+
+	* dlls/advapi32/service.c:
+	advapi32: Start non-interactive services in a separate window station.
+
+	* programs/explorer/desktop.c:
+	explorer: It no longer needs to be made a system process.
+
+	* server/process.c:
+	server: Don't give out full access to the system process event.
+
+	* server/process.c:
+	server: Don't count system processes as users of a desktop.
+
+	* include/Makefile.in, include/ddk/mountmgr.h:
+	include: Added the mountmgr.h header.
+
+	* tools/wine.inf:
+	wine.inf: Mark the spool service as disabled, it's just a stub.
+
+	* programs/wineboot/wineboot.c:
+	wineboot: Convert the rest of the code to Unicode.
+	Fix Windows File Protection handling to use the correct system directory.
+
+	* programs/wineboot/wineboot.c:
+	wineboot: Rewrite wininit.ini processing to use
+	GetPrivateProfileSectionW. Convert to Unicode.
+
+	* programs/wineboot/wineboot.c:
+	wineboot: Add support for starting NT-style services.
+
+	* programs/wineboot/wineboot.c:
+	wineboot: Simplify the unnecessarily complex code structure.
+
+	* dlls/advapi32/security.c, dlls/advapi32/service.c:
+	advapi32: Move the EnumDependentServicesA/W stubs in service.c where they belong.
+	Make the stubs return success.
+
+2007-12-19  Roy Shea <roy@cs.hmc.edu>
+
+	* dlls/qmgr/Makefile.in, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
+	qmgr: AddRef, QueryInterface, and stub functions for queue manager interface.
+
+2007-12-20  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_powerpc.c,
+	  dlls/ntdll/signal_sparc.c, dlls/ntdll/signal_x86_64.c,
+	  server/thread.c:
+	server: Use SIGQUIT instead of SIGTERM to terminate a thread.
+	This allows keeping the default SIGTERM behavior of killing the whole
+	process.
+
+	* dlls/kernel32/instr.c, dlls/winedos/interrupts.c:
+	kernel32: Forward interrupts in 32-bit code to winedos too.
+
+2007-12-20  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/riched20/reader.c:
+	riched20: Remove a redundant parameter from trace.
+
+2007-12-20  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/dialog.c:
+	msi: The BS_GROUPBOX style should only be used if the HasBorder attribute is set.
+
+2007-12-20  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/ole32/rpc.c:
+	ole32: Fix RPC_GetLocalClassObject to wait for 30 seconds, even if messages
+	arrive while we are waiting.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Fix NdrConformantStringUnmarshall to always increment the buffer
+	during unmarshalling.
+	safe_copy_from_buffer has the side-effect of incrementing the buffer and
+	this still needs to be done when we point the memory into the buffer.
+	(Thanks to Maarten Lankhorst for finding the mistake and suggesting a fix.)
+
+2007-12-19  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/visual.c, dlls/wined3d/drawprim.c:
+	wined3d: Add a test for 16 bit floats.
+
+	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/utils.c,
+	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
+	wined3d: Move the GL info structure into the adapter.
+
+	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Fix vertex buffers based on type, not semantic.
+
+	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
+	  dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
+	  dlls/wined3d/wined3d_private.h:
+	wined3d: Fixed function vertex attribute types are flexible.
+
+2007-12-20  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
+	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Store if half float conversion is needed in the decl.
+
+2007-12-18  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/device.c:
+	wined3d: Always dump the fbo state on errors.
+
+2007-12-20  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/sysparams.c, dlls/user32/tests/monitor.c,
+	  dlls/winex11.drv/settings.c:
+	user32: Add a test for an invalid DEVMODE passed to ChangeDisplaySettings,
+	make it pass under Wine.
+
+	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
+	gdi32: Add a test for minimal acceptable DEVMODEA size, make it pass under Wine.
+
+2007-12-20  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/custom.c:
+	msi: Initialize a default COM apartment for custom actions.
+
+	* dlls/msi/package.c:
+	msi: Allow NULL parameters to be passed to the local MsiSetProperty.
+
+2007-12-19  Andrew Riedi <andrewriedi@gmail.com>
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
+	gdiplus: Add GdipCreateHBITMAPFromBitmap() stub.
+
+2007-12-19  Rico Schüller <kgbricola@web.de>
+
+	* dlls/wined3d/state.c:
+	wined3d: Fix some typos.
+
+2007-12-19  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
+	  dlls/kernel32/resource.c:
+	kernel32: Remove unneeded casts.
+
+2007-12-19  Alex Villacís Lasso <a_villacis@palosanto.com>
+
+	* dlls/user32/dialog.c, dlls/user32/tests/listbox.c:
+	user32: Fix regression in DlgDirList caused by modified LB_DIR return behavior,
+	with tests.
+
+2007-12-19  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/ndr_ole.c:
+	rpcrt4: Don't use BufferEnd in RpcStream_Write.
+	It is usually used during marshalling, where pStubMsg->BufferStart and
+	pStubMsg->BufferEnd won't be valid. Replace it with a check using
+	RpcMsg->Buffer and pStubMsg->BufferLength.
+
+	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
+	rpcrt4: Initialise memory passed into RPCs in the server test.
+	aligns contains padding, but the memory is marshalled in one block so
+	call memset to avoid Valgrind warnings. padded and padded2 are
+	marshalled as complex types so this is not required here.
+	Initialise the dummy member of test_list_t to zero for the TL_NULL case.
+	Change the type to the smallest available to not waste buffer space.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Memory should only be cleared in ComplexUnmarshall, not in
+	ComplexMarshall.
+	Also clear memory when FC_STRUCTPAD* is encountered.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Fix the ALIGN_POINTER_CLEAR macro.
+
+	* tools/widl/typegen.c:
+	widl: Fix the length used when clearing alignment space in generated files.
+	Only do the clearing when marshalling a base type.
+
+	* tools/widl/typegen.c:
+	widl: The detection of types is highly dependent on the ordering of the various
+	type detection functions.
+	Therefore, needs_freeing would have to duplicate a lot of
+	write_remoting_arg in order to get the detection right. Because of
+	this, it is easier and will cause less problems in the future to
+	simply move the logic of needs_freeing into write_remoting_arg in the
+	appropriate handling code for the detected type.
+
+2007-12-19  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/advapi32/service.c:
+	advapi32: Return from StartServiceCtrlDispatcher when all services are stopped.
+
+	* dlls/advapi32/service.c:
+	advapi32: Replace the list of services with an array.
+
+	* dlls/advapi32/service.c:
+	advapi32: Use exponential backoff when waiting for a service to start.
+
+	* dlls/advapi32/advapi32.spec:
+	advapi32: Fix RegisterServiceCtrlHandler spec entry.
+
+	* dlls/advapi32/service.c:
+	advapi32: Reimplement RegisterServiceCtrlHandler on top of
+	RegisterServiceCtrlHandlerEx.
+
+2007-12-17  Roy Shea <roy@cs.hmc.edu>
+
+	* .gitignore, dlls/qmgr/Makefile.in, dlls/qmgr/qmgr_local.idl:
+	qmgr: Generate C file with local GUID definitions from bits.idl.
+
+2007-12-19  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* include/winnt.h:
+	include: Add CONTEXT86_EXTENDED_REGISTERS and CONTEXT86_ALL definitions.
+
+	* dlls/user32/combo.c:
+	user32: Set the edit text in a combobox only if combobox has strings.
+
+	* dlls/user32/button.c:
+	user32: Make sure to setup clipping before any painting is done.
+
+	* dlls/gdi32/driver.c:
+	gdi32: In the calculations use a fixed dmSize, not a passed in (possibly too
+	large) one.
+
+	* dlls/gdi32/tests/dc.c:
+	gdi32: When compiling with PSDK headers request latest DEVMODE definition.
+
+2007-12-18  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Implement texture -> swapchain blits with stretch_rect_fbo.
+
+2007-12-16  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Some improvements for SFLAG_CONVERTED checking.
+	We can check this flag before setting up the gl lock, and add the
+	surface format to the FIXME.
+
+2007-12-17  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
+	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Emulate half float vertices if GL_NV_half_float is not there.
+
+2007-12-18  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Implement blits from the active render target to swapchains.
+
+2007-12-19  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/gdi32/region.c:
+	gdi32: There is no need to cast NULL to a function pointer.
+
+2007-12-18  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/secur32/tests/schannel.c:
+	secur32/tests: InitFunctionPtrs() needs to use the global crypt32dll variable.
+
+2007-12-18  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/table.c:
+	msi: Free the ordering information.
+
+2007-12-18  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/kernel32/local16.c, dlls/kernel32/module.c:
+	kernel32: Remove unneeded casts.
+
+2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* dlls/kernel32/console.c:
+	kernel32: ReadConsoleW should wait for at least one character before returning.
+
+2007-12-18  Huw Davies <huw@codeweavers.com>
+
+	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
+	inetcomm: Unquote parameter values.
+
+	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
+	inetcomm: Implement IMimeBody_GetParameters.
+
+2007-12-18  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
+	  dlls/rpcrt4/rpcrt4_main.c:
+	rpcrt4: Implement I_RpcGetCurrentCallHandle.
+
+	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
+	mscoree: Add a stub for GetVersionFromProcess.
+
+2007-12-18  Rico Schüller <kgbricola@web.de>
+
+	* dlls/kernel32/sync.c:
+	kernel32: Fix typo.
+
+	* dlls/comdlg32/fontdlg.c:
+	comdlg32: Fix typo.
+
+2007-12-18  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/user32/user_main.c:
+	user32: Set the WSF_VISIBLE flag on the main window station.
+
+	* dlls/ntoskrnl.exe/ntoskrnl.c:
+	ntoskrnl.exe: Allow returning data in ioctls along with a positive non-zero
+	status.
+
+	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
+	  include/ddk/wdm.h:
+	ntoskrnl.exe: Added implementation for IoCreateDriver and IoDeleteDriver.
+
+	* server/async.c:
+	server: Fix possible NULL dereference.
+
+2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>
+
+	* dlls/ntdll/tests/file.c, server/async.c, server/fd.c, server/file.h:
+	server: Store I/O completion information in async structure.
+	This is to allow completions to be sent on handle close. Also this can
+	be helpful for AcceptEx/TransmitFile implementation.
+
+2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* dlls/ws2_32/socket.c:
+	ws2_32: Fix flags conversion in getnameinfo() function.
+
+2007-12-18  Francois Gouget <fgouget@codeweavers.com>
+
+	* configure, configure.ac:
+	configure: Work around an Xcode 3.0 bug when detecting the libGL library.
+
+2007-12-18  Francois Gouget <fgouget@free.fr>
+
+	* dlls/comctl32/commctrl.c, dlls/d3d9/tests/device.c, dlls/gdi32/font.c,
+	  dlls/shell32/shfldr_unixfs.c:
+	Assorted spelling fixes.
+
+2007-12-17  David Adam <david.adam.cnrs@gmail.com>
+
+	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c:
+	d3dx8: Implement D3DXCreateMatrixStack.
+
+2007-12-18  David Adam <david.adam.cnrs@gmail.com>
+
+	* dlls/d3dx8/d3dx8_private.h, dlls/d3dx8/math.c:
+	d3dx8: Add basic functions and stubs for MatrixStack.
+
+2007-12-17  David Adam <david.adam.cnrs@gmail.com>
+
+	* dlls/d3dx8/d3dx8_main.c, dlls/d3dx8/d3dx8_private.h,
+	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
+	d3dx8: Rename d3dx_core_private.h to d3dx8_private.h.
+
+	* dlls/dxguid/dx8guid.c, include/d3dx8math.h:
+	d3dx8: Add definition for MatrixStack.
+
+2007-12-16  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Split up the render target -> render target blit.
+
+2007-12-15  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
+	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
+	  dlls/wined3d/wined3d_private.h:
+	wined3d: Implement D3DFMT_G16R16.
+
+2007-12-17  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/kernel32/tests/sync.c:
+	kernel32: Add a test for BindIoCompletionCallback.
+
+2007-12-15  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/glsl_shader.c:
+	wined3d: Filter out some shader compilation spam.
+
+2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* server/console.c:
+	server: Properly notify renderer while activating another screen buffer.
+
+2007-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
+	gdi32: Add a GdiConvertToDevmodeW test, make it pass under Wine.
+
+2007-12-18  Huw Davies <huw@codeweavers.com>
+
+	* dlls/inetcomm/mimeole.c:
+	inetcomm: Fix spelling typo.
+
+	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/inetcomm_main.c,
+	  dlls/inetcomm/inetcomm_private.h, dlls/inetcomm/mimeole.c,
+	  dlls/inetcomm/regsvr.c, dlls/inetcomm/tests/mimeole.c:
+	inetcomm: Add IMimeAllocator implementation.
+
+2007-12-14  Huw Davies <huw@codeweavers.com>
+
+	* include/mimeole.idl:
+	include: Add IMimeAllocator.
+
+2007-12-15  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/vertexshader.c:
+	wined3d: Ignore tesselated and unused streams when comparing attribs.
+
+2007-12-14  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/glsl_shader.c:
+	wined3d: Correct a pixel shader version comparison.
+
+2007-12-13  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/swapchain.c:
+	wined3d: Disable the SWAPEFFECT_DISCARD clear.
+
+2007-12-08  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: Add a note about a breakage in the refrast.
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: Remove a few more incorrect D3DLOCK_DISCARDs.
+
+2007-12-18  Peter Beutner <p.beutner@gmx.net>
+
+	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
+	d3d9: Add stub for Direct3DShaderValidatorCreate9().
+
+2007-12-18  Francois Gouget <fgouget@free.fr>
+
+	* dlls/dinput/device.c, dlls/dinput/dinput_main.c:
+	dinput: Make _dump_cooperativelevel_DI() and _dump_EnumDevices_dwFlags()
+	more self-contained.
+
+	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
+	oleaut32/tests: Avoid SHDeleteKeyW() because shlwapi.dll is missing on
+	Windows 95.
+
+	* dlls/shell32/tests/shlfileop.c:
+	shell32/tests: Use GetProcAddress() on SHFileOperationW() because it is missing
+	on Windows 95.
+
+	* dlls/shell32/tests/systray.c:
+	shell32/tests: Use GetProcAddress() on Shell_NotifyIconW() because it is
+	missing on Windows 95.
+
+	* dlls/shell32/tests/shlfolder.c:
+	shell32/tests: Use GetProcAddress() on SHGetPathFromIDListW() because it is
+	missing on Windows 95.
+
+	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shellpath.c,
+	  dlls/shell32/tests/shlfolder.c:
+	shell32/tests: Copy the PathRemoveBackslashA() and PathAddBackslashW()
+	implementations because shlwapi.dll is missing on Windows 95.
+
+	* dlls/shell32/tests/shlexec.c:
+	shell32/tests: Avoid SHDeleteKeyA() because shlwapi.dll is missing on Windows 95.
+
+	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
+	secur32/tests: Dynamically load various APIs and don't link with crypt32.dll
+	to make the test run on Windows 95.
+
+	* dlls/msi/package.c:
+	msi: Add a trailing '\n' to Wine traces.
+
+	* dlls/user32/tests/sysparams.c:
+	user32/tests: Use GetProcAddress() on ChangeDisplaySettingsExA() because it
+	is missing on Windows 95.
+
+2007-12-17  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/create.c,
+	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
+	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/query.h,
+	  dlls/msi/select.c, dlls/msi/sql.y, dlls/msi/streams.c,
+	  dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
+	msi: Sort each table of the join separately.
+
+	* dlls/msi/tests/db.c:
+	msi: Test sorting a table using a column that is not selected.
+
+2007-12-17  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/rpcrt4/rpc_assoc.c:
+	rpcrt4: Add missing LeaveCriticalSection. Found by Smatch.
+
+2007-12-17  Rob Shearman <rob@codeweavers.com>
+
+	* include/rpcdcep.h:
+	include: Add some context handle defines to rpcdcep.h.
+
+	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
+	rpcrt4: Add a stub for I_RpcGetCurrentCallHandle.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Don't copy memory from the buffer in NdrConformantStringUnmarshall if
+	we just pointed the memory pointer into the buffer.
+	(Reported by Dan Kegel.)
+
+2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>
+
+	* programs/winhelp/winhelp.c:
+	winhelp: Avoid any keywords comparision during lookup, store pointer to listbox
+	ITEMDATA instead.
+
+	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
+	winhelp: Remember last added page.
+
+2007-12-17  Maarten Lankhorst <maarten@codeweavers.com>
+
+	* dlls/riched20/editor.c:
+	riched20: Fix bugs in EM_SETOPTIONS.
+	Add SELECTIONBAR to mask, and use settings rather then lParam. 2 subtle
+	bugs that prevent selectionbar from working.
+
+2007-12-17  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/event.c,
+	  include/rpcasync.h:
+	include: Add more types and function declarations to the rpcasync.h header file.
+	Fix up a couple of conflicts with the Status field in the
+	RPC_EXTENDED_ERROR_INFO and the X Status define.
+
+2007-11-13  Francois Gouget <fgouget@free.fr>
+
+	* dlls/rpcrt4/rpcrt4_main.c, include/Makefile.in, include/rpc.h,
+	  include/rpcasync.h:
+	rpcrt4: Add an rpcasync.h header stub and fix the RpcErrorStartEnumeration()
+	prototype.
+
+2007-12-17  Rob Shearman <rob@codeweavers.com>
+
+	* include/rpcndr.h:
+	include: Add more NDR types and function declarations to rpcndr.h.
+
+2007-12-13  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/button.c:
+	user32: Always clip the button painting to the client rectangle.
+
+2007-12-16  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/ddraw/surface.c:
+	ddraw: Fix incorrect WARN text.
+
+2007-12-14  Lionel Debroux <lionel_debroux@yahoo.fr>
+
+	* dlls/winspool.drv/info.c:
+	winspool: Fix memory leak (found by Smatch).
+
+	* programs/winedevice/device.c:
+	winedevice: Fix memory leak (found by Smatch).
+
+2007-12-08  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: Do not set NONE MIN and MAG filters.
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: D3DLOCK_DISCARD is not valid on managed textures.
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: The refrast returns an error on invalid clear rects.
+
+2007-12-14  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/gdi32/tests/bitmap.c, dlls/user32/tests/sysparams.c,
+	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
+	  dlls/winex11.drv/settings.c, dlls/winex11.drv/x11drv_main.c,
+	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xvidmode.c:
+	winex11: Activate the depth-bpp difference.
+
+2007-12-16  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
+	  dlls/winex11.drv/init.c, dlls/winex11.drv/settings.c,
+	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
+	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xrandr.c,
+	  dlls/winex11.drv/xvidmode.c:
+	winex11: Distinguish between bpp and depth.
+
+2007-12-14  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/hlink/tests/hlink.c:
+	hlink: Fix some memory leaks in the tests.
+
+2007-12-16  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_assoc.c,
+	  dlls/rpcrt4/rpc_assoc.h, dlls/rpcrt4/rpc_binding.c,
+	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
+	  dlls/rpcrt4/rpc_transport.c:
+	rpcrt4: Move association code into a separate file.
+
+	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
+	  dlls/rpcrt4/rpc_message.h, dlls/rpcrt4/rpc_server.c,
+	  dlls/rpcrt4/rpc_transport.c:
+	rpcrt4: Make a server association when a bind packet is received in the server.
+	Support handing out association group IDs.
+
+	* dlls/rpcrt4/rpc_transport.c:
+	rpcrt4: Return an error from rpcrt4_conn_tcp_read if recv returns 0.
+
+2007-12-15  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
+	rpcrt4: Fix NdrConformantStringUnmarshall to use buffer memory if possible.
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Add a FIXME for RPC_FC_P_ALLOCALLNODES in PointerUnmarshall.
+
+2007-12-14  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/rpcrt4/ndr_marshall.c:
+	rpcrt4: Clear padding inserted into the buffer during marshalling because
+	of alignment.
+
+2007-12-15  Rob Shearman <rob@codeweavers.com>
+
+	* include/wine/rpcfc.h:
+	include: Add definitions for RPC_FC_SSTRING and RPC_FC_C_SSTRING.
+
+	* tools/widl/typegen.c:
+	widl: Only base types or reference pointers to base types don't need to be freed.
+	There are other cases where calls to Free functions can be omitted (such
+	as types always unmarshalled using buffer memory with no embedded
+	pointers), but these are easier dealt with inside the relevent case in
+	write_remoting_arg.
+
+	* tools/widl/server.c:
+	widl: Return types shouldn't be freed.
+
+2007-12-14  Rob Shearman <rob@codeweavers.com>
+
+	* tools/widl/typegen.c:
+	widl: Clear padding in the buffer due to alignment.
+
+2007-12-17  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/oleaut32/tests/vartest.c:
+	oleaut32/tests: Avoid relying on system-dependent rounding.
+
+	* dlls/user32/clipboard.c, dlls/user32/user16.c:
+	Revert "user32: Moved some 16-bit functions."
+	This partially reverts commit 6e9fea22f82fe60624e1081d74ad990a5c428eed.
+	16-bit and 32-bit clipboard handles aren't interchangeable.
+
+2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>
+
+	* dlls/ntdll/tests/file.c, server/fd.c:
+	server: I/O completion ports can only be used with overlapped I/O.
+
+2007-12-17  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/urlmon/binding.c:
+	urlmon: Use flag to store protocol lock state.
+
+	* dlls/shdocvw/tests/webbrowser.c:
+	shdocvw: Ignore Exec(CGID_Explorer, 66) calls in tests.
+
+	* dlls/mshtml/editor.c, dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc5.c,
+	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlelem2.c,
+	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
+	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlselect.c,
+	  dlls/mshtml/htmlstyle.c, dlls/mshtml/htmltextarea.c,
+	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
+	  dlls/mshtml/nsservice.c, dlls/mshtml/persist.c,
+	  dlls/mshtml/txtrange.c:
+	mshtml: Remove not used argument in nsAString_GetData.
+
+	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
+	mshtml: Remove not used argument of nsACString_GetData.
+
+2007-12-16  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/dialog.c:
+	msi: Set the text color after calling the window proc.
+
+	* dlls/msi/dialog.c:
+	msi: The line control has a height of exactly 2 device units.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Return ERROR_INVALID_PARAMETER if the product list is empty and index is
+	not zero.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Return ERROR_UNKNOWN_COMPONENT if no products exist.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Also check the local system component key for the clients.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Check the user component key for the clients.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Validate the parameters of MsiEnumClients.
+
+	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
+	msi: Add tests for MsiEnumClients.
+
+	* dlls/msi/appsearch.c:
+	msi: Simplify ExpandAnyPath.
+
+	* dlls/msi/package.c, dlls/msi/tests/package.c:
+	msi: Verify that the PID_PAGECOUNT and PID_REVNUMBER summary info properties
+	exist.
+
+	* dlls/msi/package.c, dlls/msi/tests/package.c:
+	msi: If the package doesn't exist, return ERROR_FILE_NOT_FOUND.
+
+	* dlls/msi/package.c, dlls/msi/tests/package.c:
+	msi: Validate the parameters of MsiOpenPackage.
+
+	* dlls/msi/package.c, dlls/msi/tests/package.c:
+	msi: Add more tests for MsiOpenPackage.
+
+2007-12-14  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/action.c:
+	msi: Release the record when loading the hash data.
+
+2007-12-14  Maarten Lankhorst <maarten@codeweavers.com>
+
+	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
+	  dlls/riched20/ocr_reverse.cur, dlls/riched20/res.h,
+	  dlls/riched20/version.rc, dlls/riched20/wrap.c:
+	riched20: Implement ECO/EM SELECTIONBAR.
+
+2007-12-14  Marcus Meissner <marcus@jet.franken.de>
+
+	* dlls/msi/dialog.c:
+	msi: Fixed buffer overflow in number parsing.
+
+2007-12-14  Alexandre Julliard <julliard@winehq.org>
+
+	* ANNOUNCE, ChangeLog, VERSION, configure:
+	Release 0.9.51.
+
+----------------------------------------------------------------
 2007-12-14  Alexandre Julliard <julliard@winehq.org>
 
 	* dlls/riched32/tests/editor.c:
diff --git a/VERSION b/VERSION
index 6d8e2ac..b4447a7 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 0.9.51
+Wine version 0.9.52
diff --git a/configure b/configure
index 9a88bd5..a5d8209 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 0.9.51.
+# Generated by GNU Autoconf 2.61 for Wine 0.9.52.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -574,8 +574,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='0.9.51'
-PACKAGE_STRING='Wine 0.9.51'
+PACKAGE_VERSION='0.9.52'
+PACKAGE_STRING='Wine 0.9.52'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 
 ac_unique_file="server/atom.c"
@@ -1289,7 +1289,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 0.9.51 to adapt to many kinds of systems.
+\`configure' configures Wine 0.9.52 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1358,7 +1358,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 0.9.51:";;
+     short | recursive ) echo "Configuration of Wine 0.9.52:";;
    esac
   cat <<\_ACEOF
 
@@ -1453,7 +1453,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 0.9.51
+Wine configure 0.9.52
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1467,7 +1467,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 0.9.51, which was
+It was created by Wine $as_me 0.9.52, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -21733,7 +21733,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 0.9.51, which was
+This file was extended by Wine $as_me 0.9.52, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21786,7 +21786,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-Wine config.status 0.9.51
+Wine config.status 0.9.52
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
