diff --git a/ANNOUNCE b/ANNOUNCE
index f3e3d55..27ca2b4 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,9 +1,9 @@
-This is release 0.9.34 of Wine, a free implementation of Windows on Unix.
+This is release 0.9.35 of Wine, a free implementation of Windows on Unix.
 
 What's new in this release:
-  - Support for Xcursor.
-  - A range of fixes for various installers.
-  - New builtin xcopy tool.
+  - Broken aRts sound driver now removed for good.
+  - Many fixes to the Quartz DLL sound support.
+  - File I/O performance improvements.
   - The usual assortment of Direct3D fixes.
   - Lots of bug fixes.
 
@@ -11,8 +11,8 @@
 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.34.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-0.9.34.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.35.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-0.9.35.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -34,397 +34,367 @@
 
 ----------------------------------------------------------------
 
-Changes since 0.9.33:
+Changes since 0.9.34:
 
-A C Hurst (1):
-      wined3d: Fix struct size calculation in EnumTextureFormats.
+Alessandro Pignotti (1):
+      dplayx: Implement proper interface locking for DP_EnumSession.
 
-Alessandro Pignotti (3):
-      dplayx: Check for null pointer dereference in DP_FindPlayer.
-      dplayx: Corrected the way nameserver initializes the sessiondesc structure on broadcast request reply.
-      dplayx: Fixes the order of GUID initialization and storage.
+Alexandre Julliard (39):
+      make_makefiles: Add the .INIT/.BEGIN rules for the main makefile.
+      server: Add a generic wait queue to the file descriptor object.
+      server: Avoid redundant polling in fd_queue_async_timeout.
+      server: Take advantage of the fd generic wait queue to remove a lot of serial code.
+      server: Use the fd generic wait queue for directory change I/O operations.
+      server: Make async I/O queues into real objects.
+      server: Check file access in register_async before calling the object method.
+      kernel32: Added some last error tests for mailslots.
+      server: Add a separate function to set the timeout of an async I/O operation.
+      server: Make timeout status for async I/O specifiable. Fix mailslots timeout handling.
+      server: Hold a pointer to the queue from the async operations.
+      make_requests: More aggressive grepping for status values.
+      server: Add support for associating a file descriptor to a message queue.
+      winex11.drv: Store the display file descriptor directly in the server message queue.
+      server: Fix the handling of the signaled status for file descriptors.
+      server: Use the standard file descriptor signal mechanism for directory changes.
+      ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done.
+      ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer count.
+      ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished.
+      ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap.
+      kernel32: Add a bit of slack to the mailslot timeout test.
+      ntdll: Reimplement NtReadFile.
+      ntdll: Reimplement NtWriteFile.
+      ntdll: Rely on the server to queue the final APC for asynchronous read/write.
+      ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets.
+      ntdll: Add some test cases for asynchronous I/O.
+      setupapi: Avoid using sizeof in traces.
+      server: Add support for restarting an async I/O when the client side couldn't finish it right away.
+      ntdll: Simplify the async read/write code now that most of the work is done in the server.
+      ntdll: Determine the async read avail_mode flag from the client side.
+      server: Explicitly shutdown closed pipes to prevent access from file descriptors cached in the client.
+      kernel32: Add SYNCHRONIZE access to mailslot handles.
+      server: Store the opening options in the file descriptor instead of in the individual objects.
+      server: Rename the get_file_info function to get_fd_type and get rid of the flags.
+      ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
+      shell32: Have _ILCreateFromFindDataW also create a FileStructW type of pidl.
+      server: Create a separate fd object for each mailslot writer. Make them first-class file handles.
+      server: Don't bother with default entry points for objects that don't even return an fd.
+      winex11.drv: Hack to disable XInitThreads when an XIM is used.
 
-Alexander Farber (1):
-      cmd: Enlarge max. length of PATH variable.
-
-Alexandre Julliard (38):
-      dbghelp: Avoid some warnings on Solaris.
-      wldap32: Prefix option defines with WLDAP32 to avoid conflicts with system headers.
-      ntdll: Remove unnecessary pointers in fstab parsing on Solaris.
-      server: Use the common pattern for async I/O parameters in named pipe requests.
-      server: Grab the owner object of an APC while the APC is executing.
-      server: Make struct async into a real object, to keep it around while the APC is running.
-      server: Return the status from an async I/O APC call to the server.
-      server: Add an async_data_t structure to store parameters for async I/O requests.
-      setupapi: Add support for .inf files in utf-8 format.
-      server: Add support for storing an event to signal upon async I/O completion.
-      server: Notify the async object when the APC call completed.
-      server: Move the signalling of the completion event for NtRead/WriteFile to the server.
-      ws2_32: Move the signalling of the completion event to the server.
-      server: Move the signalling of the named pipe completion event to the server.
-      server: Use a standard async I/O event to signal directory changes.
-      winex11.drv: Relax the bitmap depth check in CreateBitmap to accept some compatible formats.
-      server: Add an open_file() function to the object operations.
-      server: Implemented the open_file method for named pipe and mailslot devices.
-      server: Create the named pipe and mailslot devices under \Device.
-      server: Don't enforce named pipes path format in ntdll, only in the server.
-      server: Don't enforce mailslots path format in ntdll, only in the server.
-      ntdll: Better support for NT path names in wine_nt_to_unix_file_name.
-      server: Implement the open_file method for mailslots.
-      server: Implement the open_file method for named pipes.
-      server: Print the callback function in the APC_ASYNC_IO trace.
-      kernel32: Fixed timeout calculation in WaitNamedPipe.
-      ntdll: Avoid overwriting the result of the async I/O callback in NtFsControlFile.
-      server: A named pipe wait can be satisfied by an idle pipe server too.
-      server: Always return STATUS_PENDING when an async I/O operation has been queued.
-      kernel32: Don't use the reserved argument of the APC routine callback.
-      server: Add support for queuing a user APC upon async I/O completion.
-      server: Remove the return value of the flush() method, it's not used.
-      Makefile: More portable invocation of ctags/etags.
-      ntdll: Ignore failure to open current directory, it's broken on Mac OS X.
-      kernel32: Make default behavior more consistent when AeDebug key is not present.
-      libwine: Hack to work around the Solaris dlopen() brain damage.
-      kernel32: Better default for dwActiveProcessorMask in GetSystemInfo.
-      Makefile: Try to force the makefile to be rebuilt with non-GNU make too.
-
-Andrew Riedi (2):
-      winex11.drv: Add Xcursor support for 32 bit cursors.
-      dsound: Change a couple DPRINTF's to TRACE's
-
-Andrew Talbot (45):
-      comcat: Declare some variables static and const.
-      comctl32: Replace inline static with static inline.
-      advapi32: Replace inline static with static inline.
-      kernel32: Replace inline static with static inline.
-      ntdll: Replace inline static with static inline.
-      user32: Replace inline static with static inline.
-      wined3d: Replace inline static with static inline.
-      winex11.drv: Replace inline static with static inline.
-      server: Replace inline static with static inline.
-      winebuild: Replace inline static with static inline.
-      wineps.drv: Replace inline static with static inline.
-      ddraw: Replace inline static with static inline.
-      dsound: Replace inline static with static inline.
-      msvcrt: Replace inline static with static inline.
-      dinput: Replace inline static with static inline.
-      setupapi: Replace inline static with static inline.
-      gdi32: Replace inline static with static inline.
-      comctl32: Constify some variables.
-      dbghelp: Replace inline static with static inline.
-      kernel32/tests: Replace inline static with static inline.
-      mlang/tests: Replace inline static with static inline.
-      msg711.acm: Replace inline static with static inline.
-      comctl32: Constify some variables.
-      msi: Replace inline static with static inline.
-      shell32: Replace inline static with static inline.
-      msvcrt/tests: Replace inline static with static inline.
-      ole32: Replace inline static with static inline.
-      oleaut32: Replace inline static with static inline.
-      rpcrt4: Replace inline static with static inline.
-      comctl32: Constify some variables.
-      comctl32: Constify some variables.
-      include: Replace inline static with static inline.
-      shlwapi: Replace inline static with static inline.
-      wintab32: Replace inline static with static inline.
-      wininet: Replace inline static with static inline.
-      winmm: Replace inline static with static inline.
-      ws2_32: Replace inline static with static inline.
-      comctl32: Constify some variables.
-      winelib: Replace inline static with static inline.
-      loader: Replace inline static with static inline.
-      secur32: Replace const pointer parameters with correct pointers to const.
+Andrew Talbot (35):
       comctl32: Constify some variables.
       comctl32: Constify some variables.
       comctl32: Constify some variables.
-      comctl32: Cast-qual warnings fix.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      comctl32: Constify some variables.
+      advapi32: Constify some variables.
+      atl: Constify some variables.
+      advpack: Constify some variables.
+      comcat: Constify some variables.
+      avifil32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Constify some variables.
+      comdlg32: Remove inappropriate const qualifier.
+      include: Remove superfluous semicolons.
+      d3d8: Void functions should not return a value.
+      d3d9: Void functions should not return a value.
+      kernel32: Remove superfluous semicolons.
+      mapi32: Void functions should not return a value.
+      crypt32: Constify some variables.
+      mshtml: Void functions should not return a value.
+      msvcrt: Remove superfluous semicolons.
+      ntdll: Void functions should not return a value.
+      ntdll: Remove superfluous semicolons.
+      ole32: Void functions should not return a value.
+      oleaut32: Remove superfluous semicolons.
 
-Aric Stewart (3):
-      ole32: Rework storage with blockfiles to properly use ILockBytes interfaces.
-      Revert 7c35db07c35db0... msiexec: Use CommandLineToArgvW instead of process_args to reduce code duplication.
-      imm32: Change the default IME window to better reflect applications request.
+András Kovács (2):
+      ntdll: Add Vista version option.
+      winecfg: Add Windows Vista version option.
 
-Chris Robinson (15):
-      quartz: Hold a reference on a filter while sending data to it.
-      quartz: Release objects when pins fail to connect.
-      quartz: Disconnect pins when their filter is removed.
-      quartz: Release objects when they're no longer needed.
-      quartz: Don't delete critical sections before the filter's pins are done using them.
-      quartz: Don't redundantly set waveparser output pin data before it's created.
-      quartz: Fully disconnect the AsyncReader when released.
-      quartz: Make DSoundRender_Run start the playback buffer.
-      quartz: Implement volume and pan control for DSoundRenderer.
-      quartz: Store the current reference time with the PullPin.
-      quartz: Propogate transform filter errors upstream.
-      quartz: Return proper CLSID for parser filters.
-      quartz: Protect DSound buffer creation with a critical section lock.
-      winemp3: Clear stream buffers when the stream is reset.
-      quartz: Add filters using their names.
+Aric Stewart (8):
+      comctl32: Unset active page while setting a new active page for a propsheet.
+      comctl32: Propsheet exception fix.
+      ole32: Storage optimization.
+      msi: Register fonts with full target paths as applications can and will install fonts to places other than the windows/fonts directory.
+      shell32: Avoid unneeded A->W conversions in _ILSimpleGetTextW.
+      shell32: Update the debug functions to handle Unicode value pidl.
+      shell32: Use _ILSimpleGetTextW instead of using _ILGetTextPointer
+      msi: Do not crash in MsiGetUserInfo if org, user or serial are not present, instead return USERINFOSTATE_ABSENT.
 
-Clinton Stimpson (1):
-      riched20: Fix text replacement with text limit.
+Byeong-Sik Jeon (2):
+      regedit: Support REG_MULTI_SZ creation and editing.
+      regedit: Update Korean resource.
 
-Damjan Jovanovic (2):
-      ws2_32: In some cases send should block until the entire buffer is sent.
-      ws2_32: WSASendTo should always re-enable the FD_WRITE event.
+Chris Robinson (23):
+      quartz: Don't fill the dsound buffer with small amounts.
+      quartz: Remove errant parser output pins on input connection failure.
+      quartz: Set the sample time based on the number of bytes read before sending it downstream.
+      quartz: Use a safe APC to kill the PullPin thread when the PullPin is being released.
+      quartz: Use a second-long DSound buffer for playback.
+      quartz: Hold a reference on the PullPin's filter while the processing thread is alive.
+      quartz: Connect input when the pins connect, not when querying.
+      quartz: Add a QueryConnect method for transform filters.
+      quartz: Break loop on error in ACMWrapper.
+      quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface.
+      quartz: Don't call ReleaseSemaphore on NULL semaphore handles.
+      quartz: Tell filters to stop sending data when the chain is broken.
+      quartz: Avoid releasing NULL objects.
+      quartz: Send a notification when the filter graph clock changes.
+      quartz: Use more precise positioning information for the DSound filter's reference clock.
+      quartz: Add partial implementation of IReferenceClock for DSoundRenderer.
+      quartz: Add a cleanup callback for parser filters to call on release.
+      quartz: Make sure cached media samples are released for parser filters.
+      quartz: Fix ALIGN macros.
+      quartz: Fix error with operator precedence.
+      quartz: Pass the media sample to the individual transform filter callbacks.
+      winedbg: Align module addresses to 8 characters.
+      quartz: Implement IAMFilterData interface for IFilterMapper.
 
-Detlef Riekenberg (7):
-      libs/wine: Use xstrdup to avoid duplicate code.
-      kernel32/tests: DuplicateTokenEx is not present on all platforms.
-      advapi32/tests: DuplicateTokenEx is not present on all platforms.
-      localspl/tests: Rename hXcv for special tests.
-      localspl/tests: Open the default Xcv-channel only once.
-      localspl/tests: Fix copy+paste bug.
-      winspool.drv: Do not cache the port names.
+Dan Hipschman (1):
+      rpcrt4: Add tests for RpcServerListen and friends.
 
-Dmitry Timoshkov (11):
-      winex11.drv: In the case requested glyphs do not present in the font fail gracefully instead of asserting.
-      msvcrt: Print FIXME on platforms where _except_handler3 is a stub.
-      user32: Avoid compiler specific code in the DefWindowProc test.
-      ole32: Move the storage signatures to the appropriate file that uses them.
-      riched20: Add a test that shows that under Win9x RichEdit20W windows are not unicode, but always expect to see unicode input.
-      user32: WM_GETTEXT message converters have to 0-terminate output buffer if there is enough space even if there is no text to convert.
-      riched20: Split unicode and ansi window procs, handle messages depending on the unicode flag.
-      gdi32: Implement GdiGetCodePage.
-      gdi32: Make the EMF driver return sane NUMCOLORS value.
-      include: Add some API prototypes to appropriate header files, fix some prototypes.
-      shlwapi: Match shlwapi wrappers to MSDN descriptions.
+Dan Kegel (2):
+      imagehlp: BindImageEx stub should report success.
+      winex11.drv: GetAsyncKeyState must check mouse buttons, too.
 
-Erich Hoover (1):
-      wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*.
+Detlef Riekenberg (4):
+      localui: Add localui.dll with stubs.
+      localui/tests: Add initial test.
+      localspl/tests: Remove duplicate tests.
+      localui: Add version resource.
 
-Fabian Bieler (8):
-      wined3d: Implement linear fog with pixel shader.
-      wined3d: Remove fog coordinate clamping in the vertex shader.
-      d3d9/tests: Add test for fog with shader.
-      wined3d: Implemented bump map transform for texbem in GLSL with native signed textures.
-      wined3d: Fix glsl texbem instruction for projective textures.
-      wined3d: Fix arb texbem instruction for projective textures.
-      d3d9/tests: Add test for texbem instruction.
-      wined3d: Implement support for projective textures in ps 2.0 and later.
+Dmitry Timoshkov (8):
+      kernel32: Add GetCPInfo test.
+      gdi32: Make GetKerningPairsA not fail for fonts with SYMBOL charset.
+      winspool: Add a test for DeviceCapabilities, fix some bugs found.
+      shlwapi: Fix a forward to user32.PrivateExtractIconExW.
+      user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize.
+      winebuild: Check if a given forward does exist in one of the imported dlls, fix a couple of problems detected.
+      gdi32: Fix a couple of problems with negative lfWidth test.
+      ntdll: Fix a compiler warning.
 
-Felix Nawothnig (3):
-      wined3d: Only disable GL_TEXTURE_CUBE_MAP_ARB if supported.
-      wined3d: Fix broken ERR() message.
-      wined3d: Use GL_TEXTURE_2D for dummy textures.
+Eric Pouech (3):
+      winedbg: When reloading real PE modules from a minidump, also look in the search path (as we do for ELF modules).
+      winedbg, winedump: Extended some info printed from system info directory in minidump about the CPU.
+      taskmgr: Let the debug channels work again.
 
-Francois Gouget (5):
-      setupapi: Fix InstallCatalog()'s calling convention.
-      netapi32/tests: Add a missing '\n' to a trace().
-      gdi32: Remove a space before '\n' in a trace.
-      cmd: Spelling fix.
-      Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll.
+Fabian Bieler (7):
+      wined3d: Fix GLSL cmp instruction for INF and NAN arguments.
+      wined3d: Fix GLSL cnd instruction for INF and NAN arguments.
+      wined3d: Add support for float texture formats back in.
+      wined3d: Fix UpdateSurface for sourceRect != sourceWidth.
+      wined3d: Fix GLSL cnd instruction.
+      wined3d: Add GL_EXT_framebuffer_blit to extension handler.
+      wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord.
 
-Gabriel Gambetta (1):
-      ntdll: Add Uruguayan Summer Time timezone.
+Felix Nawothnig (13):
+      gdi32: Properly handle negative font widths.
+      wined3d: Make CreateCubeTexture fail when not supported.
+      wined3d: Downgrade some ERRs to FIXMEs.
+      wined3d: Only issue state_patchsegments FIXME once.
+      comctl32: Fix item rect calculation.
+      comctl32: Use appropriate font for header drag image.
+      taskmgr: Use default font for proc listview.
+      comctl32: Allow destruction of toolbar in BN_CLICKED handler.
+      comctl32: Allow enabling TVS_CHECKBOXES on the fly.
+      d3d8: Add missing relay trace.
+      wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE.
+      wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER.
+      wined3d: Issue an error when the render target is read back without SFLAG_INDRAWABLE being set.
 
-Gerald Pfeifer (1):
-      configure: Add -lXau to NASLIBS if applicable to obtain XauGetBestAuthByAddr and XauDisposeAuth.
+Francois Gouget (8):
+      ole32/tests: Spelling fix.
+      ole32/tests: Spelling fix.
+      Assorted spelling and English fixes.
+      shell32/tests: Fix some expected FindExecutable() error codes.
+      shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable to read them back on Win >= 2000.
+      shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the returned command which caused many tests to fail.
+      shell32/tests: On NT4 FindExecutable() returns an extra backspace character in some tests.
+      oleaut32/tests: Fix compilation on systems that don't support nameless structs or unions.
 
-Hagop Hagopian (2):
-      comctl32: tab: Added message sequence tests for the tab control.
-      comctl32: tab: Minor bug fixes in the curSel and curFocus getters and setters.
+H. Verbeet (16):
+      wined3d: Handle FBO attachments slightly more efficiently.
+      wined3d: Fixup FBO depth attachments when the depth attachment is larger than the render target.
+      wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values.
+      wined3d: Make bind_fbo a bit more generic.
+      wined3d: Separate attaching a surface to an FBO from set_render_target_fbo.
+      wined3d: Use the framebuffer blit extension to implement StretchRect.
+      wined3d: Add some StretchRectFilterCaps.
+      wined3d: Don't report render target formats we don't support as supported.
+      wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces.
+      wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP.
+      wined3d: Add some traces to stretch_rect_fbo.
+      wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from stretch_rect_fbo.
+      wined3d: Disable the scissor test in stretch_rect_fbo.
+      wined3d: Disable the scissor test for depth blits.
+      wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in IWineD3DSurfaceImpl_BltOverride.
+      wined3d: Fix some swizzles on scalars.
 
-Hans Leidekker (9):
-      wine.inf: Register an 'install' verb with the shell for .inf files.
-      wine.inf: Open/print .rtf files with wordpad.
-      wine.inf: Add cabinet.dll to the list of fake dlls.
-      setupapi: Add a stub implementation for InstallCatalog.
-      userenv: Add stub implementations for {Register, Unregister}GPNotification.
-      mpr: Fix buffer size calculation in WNetGetUniversalNameW.
-      mpr: Add a stub implementation for WNetGetUniversalNameA.
-      ntdll: Fully initialize the security descriptor returned from RtlSelfRelativeToAbsoluteSD.
-      shell32: Add a stub implementation for SHPathPrepareForWrite{A, W}.
+Hans Leidekker (8):
+      wintrust: Improve a number of stubs.
+      setupapi: Implement SetupGetFileCompressionInfoEx{A, W}.
+      setupapi: Add tests for SetupGetFileCompressionInfoEx.
+      setupapi: Implement SetupDecompressOrCopyFile{A, W}.
+      setupapi: Add tests for SetupDecompressOrCopyFile.
+      setupapi: Remove debug traces from allocation routines.
+      setupapi: Implement SetupGetFileCompressionInfo on top of SetupGetFileCompressionInfoEx.
+      kernel32: Allow any amount of whitespace between the words ANSI and SCSI in /proc/scsi/scsi.
 
 Huw Davies (3):
-      user32: Use a window's icon in preference to its class icon.
-      winex11.drv: Rename a local variable to avoid confusion with a global.
-      winex11.drv: Delete the tile pixmap whenever the drawable is changed.
+      wineps.drv: Add a heuristic to cope with resolution strings of the form "nnnmmmdpi" (ie without the 'x' separator).
+      winspool.drv: Implement level 1 support for EnumPrinters.
+      imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.
 
-Jacek Caban (9):
-      spoolss: Added RevertToPrinterSelf stub implementation.
-      advapi: Constify argument of StartServiceCtrlDispatcher[AW] functions.
-      advapi: Improve SetEntriesInAclW stub.
-      spoolsv: Added spoolsv.exe.
-      wine.inf: Register Spooler service.
-      wine.inf: Code clean up.
-      mshtml: Added DispHTMLDocument dispinterface declaration.
-      mshtml: Added DIID_DispHTMLDocument to QueryInterface.
-      winnt.h: Added activation context structures declarations.
+Ivan Gyurdiev (2):
+      d3d9: Break out two helper functions from test_fvf_to_decl.
+      d3d9: Add a test for the converted vertex decl.
 
-James Hawkins (8):
-      setupapi: Add missing SetupCopyOEMInf flags.
-      setupapi: Add several tests for SetupCopyOEMInf, with fixes so the tests don't crash.
-      setupapi: Handle the SP_COPY_NOOVERWRITE flag.
-      setupapi: Don't allow relative paths in SetupCopyOEMInf.
-      setupapi: The Inf file should be copied regardless of the destination buffer, with tests.
-      setupapi: Correct the Inf output position.
-      setupapi: SetLastError to ERROR_SUCCESS on success.
-      msi: Load the folder property if available and requested.
+Jacek Caban (5):
+      mshtml: Change TRACE to FIXME in stubs.
+      mshtml: Added IHTMLBodyElement::get_background implementation.
+      mshtml: Correctly handle utf-16 encoded pages.
+      mshtml: Added IPersistFile::Save implementation.
+      mshtml: Added IDM_COMPOSESETTINGS and IDM_HTMLEDITMODE stub implementation.
 
-Jan Zerebecki (1):
-      wined3d: Print lastpixel state fixme only once.
+James Hawkins (1):
+      msi: Reset the is_extracted flag when every cabinet is loaded.
 
-Jason Edmeades (18):
-      cmd.exe: Add support for DIR /D.
-      cmd.exe: Add support for dir /-C.
-      cmd.exe: Add support for DIRCMD and sequential qualifier processing.
-      cmd.exe: Add support for dir /A filtering.
-      cmd.exe: Add errorlevel support for DIR command.
-      cmd.exe: Only write 'bytes free' message if a file was displayed during dir.
-      Basic implementation of xcopy.
-      xcopy: Add support for /W (pause).
-      xcopy: Add support for /T (no copy).
-      xcopy: Prompt when overwriting files, add /Y and /-Y support.
-      xcopy: Add support for COPYCMD override and fix /-y.
-      xcopy: Add support for /N (shortname copy).
-      xcopy: Add support for /U (target must exist).
-      xcopy: Add support for /R (Replace read only files).
-      xcopy: Add support for /H (Hidden/System).
-      xcopy: Add support for /C (Continue if errors).
-      xcopy: Add support for /P (Prompt).
-      xcopy: Add support for xcopy /A and /M (archive copies).
+Jason Edmeades (20):
+      xcopy: Add support for /EXCLUDELIST:file1+file2 etc.
+      xcopy: Add support for /D and /D:m-d-y.
+      xcopy: Rearrange code to closely match windows ordering.
+      xcopy: Move all messages into an English resource file.
+      xcopy: Update comments with unsupported operations and current status.
+      xcopy: Add help.
+      xcopy: Make displayed names mirror windows.
+      xcopy: /E implies recursive (fixes ActiveState Perl installer).
+      xcopy: Hack/workaround for filenames starting with a '.'.
+      oleaut32: Convert to VT_DECIMAL fails with overflow (with test).
+      cmd.exe: Only search for supplied command as-is if it includes an extension.
+      cmd.exe: Attempt to launch pgm even if fails to locate it.
+      cmd.exe: Fix dir filename /s and resolve many output differences.
+      cmd.exe: Make dir support multiple parameters.
+      cmd.exe: Make dir a* b* or dir a* b* /s mirror windows.
+      cmd.exe: Partially fix 'dir *.' (ie files with no extension).
+      cmd.exe: Add support for move with simple wildcards.
+      cmd.exe: Add move support for wildcards and directories.
+      cmd.exe: Add prompting and COPYCMD plus /Y support to move.
+      cmd.exe: Fix regression when launching a fully qualified program.
 
-Joris Huizer (2):
-      amstream: sign-compare fixes.
-      advpack: sign-compare fix.
+Kai Blin (1):
+      ntdll: Don't use settimeofday() to attempt to set the timezone.
 
-Juan Lang (2):
-      advapi32: Implement RegGetKeySecurity with NtQuerySecurityObject.
-      wine.inf: Move fake rundll32 to the system directory.
+Laurent Vromman (3):
+      gdi32: Add two basic tests to check what WidenPath does.
+      gdi32: Correction of WidenPath behaviour when pen width is 1.
+      gdi32: Correct WidenPath behaviour when working on an open path.
 
-Kai Blin (13):
-      netapi32: Downgrade a FIXME and an ERR to a trace to not clutter test output on handled error conditions.
-      netapi32: fix a comment.
-      netapi32: Get rid of an ugly macro definition only used once.
-      netapi32: Downgrade another WARN and ERR to a TRACE.
-      netapi32: Remove another macro, replace by more readable functions.
-      netapi32: Downgrade more ERRs to TRACEs.
-      netapi32/tests: Use skip when skipping tests.
-      netapi32: Add test for adding/deleting users.
-      netapi32/test: Test the username and password length limits.
-      netapi32: Implement NetUserAdd with a dummy user database.
-      netapi32: Implement NetUserDel.
-      netapi32: Implement NetUserChangePassword.
-      netapi32/tests: Make NetGetUserInfo checks language independent.
+Lei Zhang (5):
+      advapi32: Spelling fixes.
+      comctl32: Fix first day of the week in monthcal.
+      comctl32: More monthcal hit tests.
+      user32: WM_ACTIVATEAPP on minimize message test.
+      comctl32: monthcal: GetMonthRange Tests.
 
-Kanit Therdsteerasukdi (1):
-      comctl32: datetime: Reject invalid flags in DTM_SETSYSTEMTIME.
+Louis Lenders (1):
+      user32: Add RealChildWindowFromPoint.
 
-Ken Thomases (1):
-      Revert "gdi32: Disable the freetype mmap sharing on Mac OS.".
+Maarten Lankhorst (2):
+      winearts.drv: Kill off winearts.
+      winecfg: Close audio driver when not needed any more.
 
-Laurent Vromman (1):
-      gdi32: WidenPath partial implementation.
+Marcus Meissner (2):
+      ntdll: Remove superflous NULL checks.
+      configure: Include <sys/types.h> before including <linux/joystick.h>.
 
-Louis Lenders (4):
-      kernel32: Print a fixme only once.
-      shell32: Define avi resource #163.
-      kernel32: Add stub for AttachConsole.
-      ntdll: Add NtAreMappedFilesTheSame stub.
+Michael Ploujnikov (1):
+      wined3d: Remove DDBLT_WAIT fixme.
 
-Marcin Grześkowiak (1):
-      user32: Use charset of currently selected font in DrawTextExA.
+Michael Stefaniuc (3):
+      msvcrt: Move the code to demangle a name with its template argument list out of get_class() and into a separate function.
+      msvcrt: Demangle a C++ mangled string that is only a name with it's template argument list.
+      ws2_32/tests: Remove redundant NULL check before HeapFree().
 
-Michael Stefaniuc (1):
-      quartz: Fix typo that produced an empty if-statement.
+Paul Vriens (11):
+      advapi32/tests: Reopen the main handle if needed.
+      advapi32/tests: Some cleanup.
+      ole32/stg_bigblockfile: Check page before use (Coverity).
+      odbccp32: Don't print *pcbPathOut as it can be NULL (Coverity).
+      ntdll/tests: Use GetModuleHandle and skip.
+      user32/tests: Don't run unicode tests if not supported.
+      advapi32/tests: Make sure NT4 and W2K tests don't fail.
+      setupapi/tests: Run tests on win98 again.
+      advapi32/tests: Use skip when OpenSCManagerA is not implemented.
+      advapi32/tests: Fix RegQueryValueExA test for win9x and ME.
+      advpack/tests: Don't hardcode the windows directory.
 
-Mikołaj Zalewski (14):
-      browseui: Remove a test with a wrong pointer.
-      shell32/explorer: Support different structure sizes in Shell_NotifyIcon.
-      shell32: Don't free user supplied data in Shell_NotifyIcon if GetIconInfo failed.
-      shell32: Add some more notify icon defines.
-      user32: tests: Using DefWindowProcA with RegisterClassW works under Windows.
-      comctl32: CreateToolbarEx should send TB_SETBITMAPSIZE twice.
-      comctl32: toolbar: The default button size is 16x16.
-      comctl32: toolbar: Test standard buttons size.
-      comctl32: toolbar: We shouldn't try to resize standard bitmaps.
-      shell32: autocomplete: Don't use sel uninitialized.
-      user32: combobox: The text area height should be font_height+4.
-      wrc: Add HTML resources support to wrc --verify-translation.
-      wrc: Change the format of the output of "wrc --verify-translation".
-      comctl32: toolbar: TB_HIDEBUTTON and TB_MOVEBUTTON shouldn't force a recalc.
+Peter Beutner (2):
+      dinput: Add missing definition to public header.
+      ntdll: Remove one exception test.
 
-Nicolas Delcros (1):
-      gdi32: Don't write a metafile record for escapes that require output.
+Rob Shearman (21):
+      urlmon: Fix a reference count leak that would keep the module alive when it shouldn't.
+      advpack: Call OleInitialize before registering OCXs, like native does.
+      advpack: Stop processing if there was an error registering an OCX.
+      ntdll: Pass the correct value to NtClose in the tests.
+      msi: Don't wait on closed handles in ACTION_FinishCustomActions.
+      atl: AddRef the object being returned in AtlInternalQueryInterface,  not "this".
+      ole32: Convert the OpenDll list to a standard Wine list.
+      ole32: Move the in-process module loading to COMPOBJ_DllList_Add.
+      ole32: Move the handling of loading a dll and getting an in-process object from it to an apartment-specific function.
+      ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries from the current apartment.
+      ole32: Cache the address for the library's DllGetClassObject and DllCanUnloadNow in the OpenDll list entry.
+      ole32: Keep a list of the loaded dlls for each apartment.
+      ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make LoadTypeLib16 take an LPSTR instead of LPOLESTR.
+      ole32: Add tests for drag and drop functions.
+      ole32: Check for COM not being initialised and an invalid window handle being input to RegisterDragDrop.
+      ole32: Check the input hwnd is valid in RevokeDragDrop.
+      ole32: Don't release the registered drop targets in OleUninitialize.
+      ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h to moniker.h.
+      ole32: Fix a hack which depended on the IID of the interface being marshaled
+      shell32: Return Unicode strings from all of the IShellFolder::GetDisplayNameOf functions in not running in Win9x mode.
+      msi: Provide UI action data for uncompressed files, not just compressed ones.
 
-Paul Vriens (18):
-      kernel32/tests: Use skip.
-      wininet/ftp: Simplify FTP_FtpGetFileW a bit.
-      wininet/ftp: Move a definition in FTP_FtpFindFirstFileW (Coverity).
-      wininet/tests: Expose a problem with FtpGetFile.
-      wininet/ftp: Remove unneeded check.
-      wininet/ftp: Fix potential memory leak.
-      netapi32/tests: Use LoadLibrary where needed and skip.
-      shlwapi/path: Proper use of GetProcessHeap().
-      oleaut32/tests: Use skip.
-      kernel32/profile: Rename a test.
-      kernel32/profile: Move GetPrivateProfileSectionA to its own test.
-      kernel32/profile: Add a few NULL checks (Coverity).
-      kernel32/profile: Some parameter tests for GetPrivateProfileSectionA.
-      advapi32/tests: Use skip.
-      advapi32/tests: Move check for ERROR_CALL_NOT_IMPLEMENTED to the first call.
-      advapi32/tests: Add check to see if LookupAccountNameA is implemented.
-      advapi32/tests: Add check to see if ImpersonateSelf is implemented.
-      advapi32/tests: Add check to see if SetEntriesInAclW is implemented.
+Rolf Kalbermatter (4):
+      notepad: Implement handling of page setup dialog parameters.
+      notepad: Fix a possible rounding error when storing the font point size to the registry.
+      notepad: Fix text label.
+      notepad: Improve printing considerably.
 
-Phil Costin (1):
-      wined3d: Ensure all states affected by a change in render_offscreen are marked dirty in ActivateContext.
+Stefan Dösinger (10):
+      wined3d: Add GL_APPLE_client_storage to our extension list.
+      wined3d: Use GL_APPLE_client_storage if available.
+      wined3d: Add D3DDEVCAPS3_* to the wined3d caps header.
+      wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
+      wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap.
+      wined3d: Index buffer data is unsigned.
+      wined3d: Dirtify the shader and declaration states if the bound interface is destroyed.
+      d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef.
+      d3d9: Fix the circular converted vertex declaration reference.
+      d3d9: Fix vertex decl test.
 
-Piotr Caban (2):
-      comctl32: Fixed TreeView_EndEditLabelNow crash.
-      comctl32: Set label width after editting.
+Stefan Leichter (1):
+      advapi32: Add some tests for RegDeleteTreeA.
 
-Rob Shearman (32):
-      ole32: Add warnings for failures in the structured storage stream functions.
-      ole32: Implement TYMED_FILE for STGMEDIUM marshaling and unmarshaling.
-      include: Fix the byte-order in the definition of the USER_MARSHAL_CB_SIGNATURE macro.
-      oleaut32: Add some tests for user marshaling a VT_UNKNOWN variant.
-      oleaut32: Make the VARIANT_UserUnmarshal tests work on XP.
-      oleaut32: Clear the input pvar structure in VARIANT_UserUnmarshal to free the data instead of just initializing.
-      ole32: Add a test for StgStreamImpl_SetSize with a non-zero HighPart for the size.
-      atl: Add support for the pMapEntries parameter to AtlModuleUpdateRegistryFromResourceD.
-      atl: Add support for the registrar parameter of AtlModuleUpdateRegistryFromResourceD.
-      winedump: Fix the output for Makefile.in with respect to the dependencies line to match that required by the build system.
-      ole32: The 16-bit version of CoDisconnectObject is not compatible with the 32-bit version, so create a separate stub for the former.
-      rpcrt4: Implement associations which are intermediary objects that track the relationship between the client and a given endpoint on the server.
-      rpcrt4: Make some parameters of non-exported functions const.
-      ole32: Add a stubbed out implementation of IClientSecurity to the proxy manager.
-      ole32: Add the OXID_INFO structure to dcom.idl.
-      ole32: Generate OXID_INFO in the stub manager.
-      rpcrt4: Retrieve the maximum token length from the security provider rather than using a hardcoded and rather small limit.
-      rpcrt4: Call InitializeSecurityContext from only one function.
-      rpcrt4: Call CompleteAuthToken if InitializeSecurityContext returned a code that says it should be called.
-      rpcrt4: Use the correct authorization trailer length using information from the security provider.
-      ole32: Handle NULL sub-objects correctly in the STGMEDIUM user marshaling functions so that no further data in marshaled or unmarshaled.
-      ole32: Add documentation for CreateBindCtx, BindMoniker, GetRunningObjectTable and OleRun.
-      ole32: Add documentation for CoGetClassObject and GetClassFile.
-      ole32: Move GetClassFile to moniker.c and move OleRun to ole2.c.
-      ole32: Register the ProgID for the class and file monikers.
-      ole32: Pass the OXID info to RPC_CreateClientChannel and use this to pass the server process ID to channel hooks.
-      ole32: Add tests for the standard marshaler's implementation of IClientSecurity.
-      ole32: Do a case-insensitive comparison in the count_moniker_matches in the moniker tests as Win9x marshals an all upper-case file name for file monikers.
-      ole32: Display the testname for the test for display name in test_moniker.
-      ole32: Add some more tests for MkParseDisplayName.
-      ole32: Implement MkParseDisplayName.
-      rpcrt4: Fixing the using of the auth_len values the wrong way round - PKT_PRIVACY implies the packet will be encrypted, not just signed.
+Steven Edwards (1):
+      winecfg: Add a button for audio test.
 
-Stefan Dösinger (13):
-      wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d.
-      wined3d: Fix client gl unit selection.
-      wined3d: Remove some old stuff.
-      wined3d: Activate a context before doing opengl calls.
-      wined3d: Store an array of contexts in the swapchain.
-      wined3d: Add GL_ATI_envmap_bumpmap to our gl extension header.
-      wined3d: Support GL_ATI_envmap_bumpmap for D3DFMT_V8U8.
-      wined3d: Store the pixel format in the texture.
-      wined3d: General signed format correction without native signed formats.
-      wined3d: Handle input modifiers in texcrd with arb shaders.
-      wined3d: Implement bem shader instruction.
-      wined3d: Disable texture coordinate arrays on the correct unit.
-      ddraw: When changing the back buffers also update the render target.
+Vit Hrachovy (1):
+      winecfg: Fix outdated Czech localization.
 
-Vitaly Budovski (1):
-      wined3d: Check for float texture formats correctly.
+Vitaliy Margolen (2):
+      dinput: Set the event regardless of the queue state.
+      ntdll: Take size of the arena from the current pointer before advancing.
 
 --
 Alexandre Julliard
diff --git a/ChangeLog b/ChangeLog
index 74b045e..650141a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1353 @@
+2007-04-13  Huw Davies <huw@codeweavers.com>
+
+	* dlls/imagehlp/integrity.c:
+	imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.
+
+2007-04-12  András Kovács <andras@debian.sth.sze.hu>
+
+	* programs/winecfg/appdefaults.c:
+	winecfg: Add Windows Vista version option.
+
+	* dlls/ntdll/version.c:
+	ntdll: Add Vista version option.
+
+2007-04-12  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/oleaut32/vartype.c:
+	oleaut32: Remove superfluous semicolons.
+
+	* dlls/ole32/rpc.c, dlls/ole32/usrmarshal.c:
+	ole32: Void functions should not return a value.
+
+2007-04-12  Fabian Bieler <der.fabe@gmx.net>
+
+	* dlls/wined3d/baseshader.c:
+	wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord.
+
+2007-04-12  H. Verbeet <hverbeet@gmail.com>
+
+	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Fix some swizzles on scalars.
+
+2007-04-13  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/x11drv_main.c:
+	winex11.drv: Hack to disable XInitThreads when an XIM is used.
+
+2007-04-12  Lei Zhang <thestig@google.com>
+
+	* dlls/comctl32/tests/monthcal.c:
+	comctl32: monthcal: GetMonthRange Tests.
+
+2007-04-13  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/msi/files.c:
+	msi: Provide UI action data for uncompressed files, not just compressed ones.
+
+2007-04-12  Dan Hipschman <dsh@linux.ucla.edu>
+
+	* dlls/rpcrt4/tests/rpc.c:
+	rpcrt4: Add tests for RpcServerListen and friends.
+
+2007-04-12  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/tests/vertexdeclaration.c:
+	d3d9: Fix vertex decl test.
+
+2007-04-12  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/mshtml/olecmd.c:
+	mshtml: Added IDM_COMPOSESETTINGS and IDM_HTMLEDITMODE stub implementation.
+
+	* dlls/mshtml/persist.c:
+	mshtml: Added IPersistFile::Save implementation.
+
+	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
+	  dlls/mshtml/nsio.c:
+	mshtml: Correctly handle utf-16 encoded pages.
+
+	* dlls/mshtml/htmlbody.c:
+	mshtml: Added IHTMLBodyElement::get_background implementation.
+
+	* dlls/mshtml/htmlbody.c:
+	mshtml: Change TRACE to FIXME in stubs.
+
+2007-04-12  Dan Kegel <dank@kegel.com>
+
+	* dlls/winex11.drv/keyboard.c:
+	winex11.drv: GetAsyncKeyState must check mouse buttons, too.
+
+2007-04-12  Alexandre Julliard <julliard@winehq.org>
+
+	* server/change.c, server/fd.c, server/file.h, server/process.c,
+	  server/queue.c, server/request.c, server/signal.c, server/thread.c:
+	server: Don't bother with default entry points for objects that don't even
+	return an fd.
+
+	* server/mailslot.c:
+	server: Create a separate fd object for each mailslot writer. Make them
+	first-class file handles.
+
+2007-04-12  Marcus Meissner <meissner@suse.de>
+
+	* configure, configure.ac:
+	configure: Include <sys/types.h> before including <linux/joystick.h>.
+
+2007-04-11  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* dlls/ntdll/heap.c:
+	ntdll: Take size of the arena from the current pointer before advancing.
+
+2007-04-11  Jason Edmeades <us@edmeades.me.uk>
+
+	* programs/cmd/wcmdmain.c:
+	cmd.exe: Fix regression when launching a fully qualified program.
+
+	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
+	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
+	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
+	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
+	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
+	  programs/cmd/wcmd.h:
+	cmd.exe: Add prompting and COPYCMD plus /Y support to move.
+
+	* programs/cmd/builtins.c:
+	cmd.exe: Add move support for wildcards and directories.
+
+	* programs/cmd/builtins.c:
+	cmd.exe: Add support for move with simple wildcards.
+
+2007-04-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>
+
+	* dlls/user32/user32.spec, dlls/user32/winpos.c:
+	user32: Add RealChildWindowFromPoint.
+
+2007-04-12  Paul Vriens <Paul.Vriens.Wine@gmail.com>
+
+	* dlls/advpack/tests/files.c:
+	advpack/tests: Don't hardcode the windows directory.
+
+2007-04-12  Huw Davies <huw@codeweavers.com>
+
+	* dlls/winspool.drv/info.c:
+	winspool.drv: Implement level 1 support for EnumPrinters.
+
+2007-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/ntdll/server.c:
+	ntdll: Fix a compiler warning.
+
+2007-04-12  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/msi/msi.c:
+	msi: Do not crash in MsiGetUserInfo if org, user or serial are not present,
+	instead return USERINFOSTATE_ABSENT.
+
+2007-04-11  Lei Zhang <thestig@google.com>
+
+	* dlls/user32/tests/msg.c:
+	user32: WM_ACTIVATEAPP on minimize message test.
+
+	* dlls/comctl32/tests/monthcal.c:
+	comctl32: More monthcal hit tests.
+
+2007-04-11  James Hawkins <truiken@gmail.com>
+
+	* dlls/msi/files.c, dlls/msi/tests/install.c:
+	msi: Reset the is_extracted flag when every cabinet is loaded.
+
+2007-04-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* programs/winecfg/audio.c:
+	winecfg: Close audio driver when not needed any more.
+
+2007-04-11  Detlef Riekenberg <wine.dev@web.de>
+
+	* .gitignore, dlls/localui/Makefile.in, dlls/localui/localui.rc:
+	localui: Add version resource.
+
+2007-04-11  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/ntdll/exception.c, dlls/ntdll/relay.c, dlls/ntdll/signal_i386.c:
+	ntdll: Remove superfluous semicolons.
+
+	* dlls/ntdll/string.c:
+	ntdll: Void functions should not return a value.
+
+2007-04-11  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32/tests: Fix RegQueryValueExA test for win9x and ME.
+
+2007-04-11  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/kernel32/oldconfig.c:
+	kernel32: Allow any amount of whitespace between the words ANSI and SCSI in
+	/proc/scsi/scsi.
+
+2007-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/gdi32/tests/font.c:
+	gdi32: Fix a couple of problems with negative lfWidth test.
+
+2006-10-14  Ivan Gyurdiev <ivg2@cornell.edu>
+
+	* dlls/d3d9/tests/vertexdeclaration.c:
+	d3d9: Add a test for the converted vertex decl.
+
+	* dlls/d3d9/tests/vertexdeclaration.c:
+	d3d9: Break out two helper functions from test_fvf_to_decl.
+
+2007-04-08  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/device.c, dlls/d3d9/tests/visual.c,
+	  dlls/d3d9/vertexdeclaration.c:
+	d3d9: Fix the circular converted vertex declaration reference.
+
+2007-04-07  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/vertexdeclaration.c:
+	d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef.
+
+2007-04-11  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexdeclaration.c,
+	  dlls/wined3d/vertexshader.c:
+	wined3d: Dirtify the shader and declaration states if the bound interface
+	is destroyed.
+
+2007-04-11  Kai Blin <kai.blin@gmail.com>
+
+	* dlls/ntdll/time.c:
+	ntdll: Don't use settimeofday() to attempt to set the timezone.
+
+2007-04-10  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/filtermapper.c:
+	quartz: Implement IAMFilterData interface for IFilterMapper.
+
+2007-04-11  Francois Gouget <fgouget@free.fr>
+
+	* dlls/oleaut32/tests/vartest.c:
+	oleaut32/tests: Fix compilation on systems that don't support nameless structs
+	or unions.
+
+2007-04-10  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/shell32/shlfolder.c:
+	shell32: Use _ILSimpleGetTextW instead of using _ILGetTextPointer
+	to be able to make use of FileStructW and avoid W->A->W roundtrips if
+	possible.
+
+2007-04-11  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
+	shell32: Have _ILCreateFromFindDataW also create a FileStructW type of pidl.
+	Based on a patch by Aric Stewart.
+	Also get rid of _ILCreateFromFindDataA and _ILCreateFromPatA.
+
+2007-04-09  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/shell32/debughlp.c, dlls/shell32/pidl.c, dlls/shell32/pidl.h:
+	shell32: Update the debug functions to handle Unicode value pidl.
+	Add _ILIsUnicode as a simple pidl test.
+
+	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
+	shell32: Avoid unneeded A->W conversions in _ILSimpleGetTextW.
+	Implement _ILGetTextPointerW, though it does little now.
+	Handle the LPWSTR from _ILGetTextPointerW in _ILSimpleGetText and
+	_ILSimpleGetTextW.
+
+2007-04-11  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/msi/font.c:
+	msi: Register fonts with full target paths as applications can and will install
+	fonts to places other than the windows/fonts directory.
+
+2007-04-11  Paul Vriens <Paul.Vriens.Wine@gmail.com>
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32/tests: Use skip when OpenSCManagerA is not implemented.
+
+2007-04-11  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/ws2_32/tests/sock.c:
+	ws2_32/tests: Remove redundant NULL check before HeapFree().
+
+2007-04-10  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/msvcrt/cpp.c:
+	msvcrt: Remove superfluous semicolons.
+
+2007-04-10  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
+	  dlls/ws2_32/socket.c, include/wine/server.h,
+	  include/wine/server_protocol.h, server/fd.c, server/protocol.def,
+	  server/trace.c:
+	ntdll: Store the file access and options in the fd cache, and get rid of the
+	dynamic flags.
+	This avoids server round-trips for all file I/O.
+
+	* server/change.c, server/fd.c, server/file.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/process.c,
+	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
+	  server/sock.c, server/thread.c:
+	server: Rename the get_file_info function to get_fd_type and get rid of
+	the flags.
+
+	* server/change.c, server/fd.c, server/file.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/process.c,
+	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
+	  server/sock.c, server/thread.c:
+	server: Store the opening options in the file descriptor instead of in the
+	individual objects.
+	Allows moving the FD_FLAG_OVERLAPPED support to the generic
+	get_handle_fd request handling.
+
+	* dlls/kernel32/sync.c:
+	kernel32: Add SYNCHRONIZE access to mailslot handles.
+	Don't bother to request write access.
+
+2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>
+
+	* programs/notepad/dialog.c, programs/notepad/main.c,
+	  programs/notepad/main.h:
+	notepad: Improve printing considerably.
+	Make fonts and the other measurements the correct size in relation to
+	the actual printer resolution instead of thinking it uses the same
+	resolution as the display.  Before fixed sized (and for most printer
+	resolutions way to small) margins where used and the font size was
+	taken directly from the screen font independent of the actual printer
+	resolution, resulting in a completely unreadable micro text on most
+	printouts.
+
+2007-04-10  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec,
+	  dlls/setupapi/tests/misc.c, include/setupapi.h:
+	setupapi: Implement SetupGetFileCompressionInfo on top of
+	SetupGetFileCompressionInfoEx.
+
+2007-04-10  H. Verbeet <hverbeet@gmail.com>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in
+	IWineD3DSurfaceImpl_BltOverride.
+
+	* dlls/wined3d/drawprim.c:
+	wined3d: Disable the scissor test for depth blits.
+
+	* dlls/wined3d/device.c:
+	wined3d: Disable the scissor test in stretch_rect_fbo.
+
+	* dlls/wined3d/device.c:
+	wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from
+	stretch_rect_fbo.
+
+	* dlls/wined3d/device.c:
+	wined3d: Add some traces to stretch_rect_fbo.
+
+2007-04-10  Huw Davies <huw@codeweavers.com>
+
+	* dlls/wineps.drv/ppd.c:
+	wineps.drv: Add a heuristic to cope with resolution strings of the form
+	"nnnmmmdpi" (ie without the 'x' separator).
+
+2007-04-10  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/file.c, server/mailslot.c, server/named_pipe.c:
+	server: Explicitly shutdown closed pipes to prevent access from file descriptors
+	cached in the client.
+
+	* dlls/ntdll/file.c:
+	ntdll: Determine the async read avail_mode flag from the client side.
+
+	* dlls/ntdll/file.c:
+	ntdll: Simplify the async read/write code now that most of the work is done
+	in the server.
+
+	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/sync.c,
+	  dlls/ws2_32/socket.c, include/wine/server_protocol.h, server/async.c,
+	  server/change.c, server/fd.c, server/file.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/process.c,
+	  server/protocol.def, server/queue.c, server/request.c,
+	  server/serial.c, server/signal.c, server/sock.c, server/thread.c,
+	  server/trace.c:
+	server: Add support for restarting an async I/O when the client side couldn't
+	finish it right away.
+
+2007-04-10  Paul Vriens <Paul.Vriens.Wine@gmail.com>
+
+	* dlls/setupapi/tests/misc.c:
+	setupapi/tests: Run tests on win98 again.
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32/tests: Make sure NT4 and W2K tests don't fail.
+
+2007-04-10  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
+	  dlls/shell32/shfldr_mycomp.c:
+	shell32: Return Unicode strings from all of the IShellFolder::GetDisplayNameOf
+	functions in not running in Win9x mode.
+
+2007-04-09  Lei Zhang <thestig@google.com>
+
+	* dlls/comctl32/monthcal.c:
+	comctl32: Fix first day of the week in monthcal.
+
+2007-04-09  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/mshtml/task.c:
+	mshtml: Void functions should not return a value.
+
+	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
+	crypt32: Constify some variables.
+
+2007-04-09  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/setupapi/tests/misc.c:
+	setupapi: Avoid using sizeof in traces.
+
+2007-04-06  Detlef Riekenberg <wine.dev@web.de>
+
+	* dlls/localspl/tests/localmon.c:
+	localspl/tests: Remove duplicate tests.
+
+	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
+	  dlls/localui/tests/Makefile.in, dlls/localui/tests/localui.c,
+	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
+	localui/tests: Add initial test.
+
+	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
+	  dlls/localui/Makefile.in, dlls/localui/localui.c,
+	  dlls/localui/localui.spec:
+	localui: Add localui.dll with stubs.
+
+2007-04-08  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/setupapi/misc.c:
+	setupapi: Remove debug traces from allocation routines.
+
+	* dlls/setupapi/tests/misc.c:
+	setupapi: Add tests for SetupDecompressOrCopyFile.
+
+	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
+	setupapi: Implement SetupDecompressOrCopyFile{A, W}.
+
+	* dlls/setupapi/tests/misc.c:
+	setupapi: Add tests for SetupGetFileCompressionInfoEx.
+
+	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
+	setupapi: Implement SetupGetFileCompressionInfoEx{A, W}.
+
+2007-04-09  H. Verbeet <hverbeet@gmail.com>
+
+	* dlls/wined3d/device.c:
+	wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP.
+
+	* dlls/wined3d/device.c:
+	wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces.
+
+	* dlls/wined3d/directx.c:
+	wined3d: Don't report render target formats we don't support as supported.
+
+	* dlls/wined3d/directx.c:
+	wined3d: Add some StretchRectFilterCaps.
+
+	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
+	  dlls/wined3d/wined3d_private.h:
+	wined3d: Use the framebuffer blit extension to implement StretchRect.
+
+	* dlls/wined3d/device.c:
+	wined3d: Separate attaching a surface to an FBO from set_render_target_fbo.
+
+	* dlls/wined3d/device.c:
+	wined3d: Make bind_fbo a bit more generic.
+
+	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values.
+
+	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
+	  dlls/wined3d/wined3d_private.h:
+	wined3d: Fixup FBO depth attachments when the depth attachment is larger than
+	the render target.
+
+	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
+	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Handle FBO attachments slightly more efficiently.
+
+2007-04-08  Marcus Meissner <marcus@jet.franken.de>
+
+	* dlls/ntdll/file.c:
+	ntdll: Remove superflous NULL checks.
+
+2007-04-09  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/tests/file.c:
+	ntdll: Add some test cases for asynchronous I/O.
+
+	* dlls/kernel32/tests/mailslot.c, dlls/ntdll/file.c:
+	ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets.
+
+2007-04-09  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/imm32/imm32.spec, dlls/w32skrnl/Makefile.in,
+	  tools/winebuild/import.c:
+	winebuild: Check if a given forward does exist in one of the imported dlls,
+	fix a couple of problems detected.
+
+2007-04-08  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/mapi32/prop.c:
+	mapi32: Void functions should not return a value.
+
+	* dlls/kernel32/heap.c, dlls/kernel32/thunk.c, dlls/kernel32/vxd.c:
+	kernel32: Remove superfluous semicolons.
+
+2007-04-08  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* dlls/dinput/device.c:
+	dinput: Set the event regardless of the queue state.
+
+2007-04-08  Chris Robinson <chris.kcat@gmail.com>
+
+	* programs/winedbg/info.c:
+	winedbg: Align module addresses to 8 characters.
+
+2007-04-08  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Issue an error when the render target is read back without
+	SFLAG_INDRAWABLE being set.
+
+	* dlls/wined3d/context.c:
+	wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER.
+
+2007-04-07  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE.
+
+2007-04-07  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
+	  dlls/d3d9/indexbuffer.c, dlls/d3d9/texture.c,
+	  dlls/d3d9/volumetexture.c:
+	d3d9: Void functions should not return a value.
+
+	* dlls/d3d8/cubetexture.c, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
+	  dlls/d3d8/texture.c, dlls/d3d8/volumetexture.c:
+	d3d8: Void functions should not return a value.
+
+2007-04-07  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
+	  dlls/quartz/transform.h:
+	quartz: Pass the media sample to the individual transform filter callbacks.
+	This is so the filters can pass on and use timing, discontinuity, and other
+	information stored in the sample as needed.
+
+	* dlls/quartz/memallocator.c:
+	quartz: Fix error with operator precedence.
+
+	* dlls/quartz/pin.c:
+	quartz: Fix ALIGN macros.
+
+2007-04-07  Eric Pouech <eric.pouech@wanadoo.fr>
+
+	* programs/taskmgr/dbgchnl.c:
+	taskmgr: Let the debug channels work again.
+	While I was at it, simplified the symbol lookup for the debug options.
+
+2007-04-06  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/avisplit.c, dlls/quartz/waveparser.c:
+	quartz: Make sure cached media samples are released for parser filters.
+
+	* dlls/quartz/avisplit.c, dlls/quartz/parser.c, dlls/quartz/parser.h,
+	  dlls/quartz/waveparser.c:
+	quartz: Add a cleanup callback for parser filters to call on release.
+
+2007-04-07  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/d3d8/device.c:
+	d3d8: Add missing relay trace.
+
+	* dlls/comctl32/treeview.c:
+	comctl32: Allow enabling TVS_CHECKBOXES on the fly.
+
+2007-04-06  Lei Zhang <thestig@google.com>
+
+	* dlls/advapi32/crypt.c, dlls/advapi32/registry.c:
+	advapi32: Spelling fixes.
+
+2007-04-06  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/drawprim.c:
+	wined3d: Index buffer data is unsigned.
+
+	* dlls/wined3d/directx.c:
+	wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap.
+
+2007-04-03  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/d3d9/device.c, dlls/ddraw/surface.c, dlls/wined3d/device.c,
+	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
+	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
+	  include/wine/wined3d_interface.h:
+	wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
+	This is to allow StretchRect to pass the texture filter to WineD3D.
+	DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
+	other functions which do not need filtering.
+
+2007-04-06  Stefan Dösinger <stefan@codeweavers.com>
+
+	* include/wine/wined3d_caps.h:
+	wined3d: Add D3DDEVCAPS3_* to the wined3d caps header.
+
+2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* include/setupapi.h:
+	include: Remove superfluous semicolons.
+
+2007-04-06  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/dsoundrender.c:
+	quartz: Add partial implementation of IReferenceClock for DSoundRenderer.
+
+	* dlls/quartz/dsoundrender.c:
+	quartz: Use more precise positioning information for the DSound filter's
+	reference clock.
+
+2007-04-06  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/file.c:
+	ntdll: Rely on the server to queue the final APC for asynchronous read/write.
+
+	* dlls/ntdll/file.c:
+	ntdll: Reimplement NtWriteFile.
+	Always try a write() before queuing an async I/O.
+	Handle timeout waits for synchronous I/O entirely on the client side.
+	Queue the final APC as a proper user APC.
+
+	* dlls/ntdll/file.c:
+	ntdll: Reimplement NtReadFile.
+	Always try a read() before queuing an async I/O.
+	Handle timeout waits for synchronous I/O entirely on the client side.
+	Queue the final APC as a proper user APC.
+
+2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
+	user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize.
+
+2007-04-06  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/tests/mailslot.c:
+	kernel32: Add a bit of slack to the mailslot timeout test.
+
+2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
+	comdlg32: Remove inappropriate const qualifier.
+
+	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c:
+	comdlg32: Constify some variables.
+
+	* dlls/comdlg32/cdlg.h, dlls/comdlg32/fontdlg.c,
+	  dlls/comdlg32/fontdlg16.c:
+	comdlg32: Constify some variables.
+
+	* dlls/comdlg32/finddlg16.c, dlls/comdlg32/finddlg32.c:
+	comdlg32: Constify some variables.
+
+2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/shlwapi/shlwapi.spec:
+	shlwapi: Fix a forward to user32.PrivateExtractIconExW.
+
+2007-04-05  Fabian Bieler <der.fabe@gmx.net>
+
+	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
+	wined3d: Add GL_EXT_framebuffer_blit to extension handler.
+
+2007-04-05  Jason Edmeades <us@edmeades.me.uk>
+
+	* programs/cmd/directory.c:
+	cmd.exe: Partially fix 'dir *.' (ie files with no extension).
+
+	* programs/cmd/directory.c:
+	cmd.exe: Make dir a* b* or dir a* b* /s mirror windows.
+
+	* programs/cmd/directory.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
+	cmd.exe: Make dir support multiple parameters.
+
+	* programs/cmd/directory.c:
+	cmd.exe: Fix dir filename /s and resolve many output differences.
+
+	* programs/cmd/wcmdmain.c:
+	cmd.exe: Attempt to launch pgm even if fails to locate it.
+
+	* programs/cmd/wcmdmain.c:
+	cmd.exe: Only search for supplied command as-is if it includes an extension.
+	Files with no extensions cannot be run as-is. This enables a directory
+	with 'fred' and 'fred.bat' to correctly run fred.bat if just fred is
+	executed.
+
+2007-04-06  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/comctl32/toolbar.c:
+	comctl32: Allow destruction of toolbar in BN_CLICKED handler.
+
+2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>
+
+	* programs/notepad/En.rc:
+	notepad: Fix text label.
+
+2007-04-05  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/filtergraph.c:
+	quartz: Send a notification when the filter graph clock changes.
+
+2007-04-04  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/filtergraph.c:
+	quartz: Avoid releasing NULL objects.
+
+2007-04-06  Felix Nawothnig <flexo@holycrap.org>
+
+	* programs/taskmgr/procpage.c:
+	taskmgr: Use default font for proc listview.
+
+	* dlls/comctl32/header.c:
+	comctl32: Use appropriate font for header drag image.
+
+2007-04-05  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/comctl32/listview.c:
+	comctl32: Fix item rect calculation.
+
+2007-04-06  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
+	msvcrt: Demangle a C++ mangled string that is only a name with it's template
+	argument list.
+
+	* dlls/msvcrt/undname.c:
+	msvcrt: Move the code to demangle a name with its template argument list out
+	of get_class() and into a separate function.
+
+2007-04-05  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/ole32/compobj_private.h, dlls/ole32/stubmanager.c,
+	  dlls/ole32/tests/marshal.c:
+	ole32: Fix a hack which depended on the IID of the interface being marshaled
+	to determine whether we were marshaling the remote unknown for the
+	apartment or not.
+
+2007-04-05  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
+	wintrust: Improve a number of stubs.
+
+2007-04-05  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/heap.c:
+	ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap.
+
+2007-04-05  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/ole32/compobj_private.h, dlls/ole32/moniker.h:
+	ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h
+	to moniker.h.
+
+	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole2.c,
+	  dlls/ole32/tests/dragdrop.c:
+	ole32: Don't release the registered drop targets in OleUninitialize.
+	Do it in DLL_PROCESS_DETACH instead.
+
+	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
+	ole32: Check the input hwnd is valid in RevokeDragDrop.
+
+	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
+	ole32: Check for COM not being initialised and an invalid window handle being
+	input to RegisterDragDrop.
+
+	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/dragdrop.c:
+	ole32: Add tests for drag and drop functions.
+
+2007-04-05  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/user32/tests/menu.c:
+	user32/tests: Don't run unicode tests if not supported.
+
+	* dlls/ntdll/tests/info.c:
+	ntdll/tests: Use GetModuleHandle and skip.
+
+2007-04-07  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/wineps.drv/driver.c, dlls/winspool.drv/tests/info.c:
+	winspool: Add a test for DeviceCapabilities, fix some bugs found.
+
+2007-04-05  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ws2_32/socket.c:
+	ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished.
+
+	* dlls/ntdll/file.c:
+	ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer
+	count.
+
+	* dlls/ntdll/file.c:
+	ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done.
+
+2007-04-05  Fabian Bieler <der.fabe@gmx.net>
+
+	* dlls/wined3d/glsl_shader.c:
+	wined3d: Fix GLSL cnd instruction.
+	According to MSDN the cnd instruction should translate:
+	dst = src0 > 0.5 ? src1 : src2;
+
+2007-03-31  Fabian Bieler <der.fabe@gmx.net>
+
+	* dlls/wined3d/device.c:
+	wined3d: Fix UpdateSurface for sourceRect != sourceWidth.
+
+2007-04-04  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/comdlg32/filedlgbrowser.c:
+	comdlg32: Constify some variables.
+
+	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
+	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
+	comdlg32: Constify some variables.
+
+	* dlls/comdlg32/cdlg.h, dlls/comdlg32/colordlg.c:
+	comdlg32: Constify some variables.
+
+2007-04-04  Stefan Leichter <Stefan.Leichter@camline.com>
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32: Add some tests for RegDeleteTreeA.
+
+2007-04-04  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/ole32/stg_bigblockfile.c:
+	ole32: Storage optimization.
+	We do not need to unmap and remap all the victim pages with every
+	resize as they are simply a cache. Provides significant speedup for
+	saving large storage files.
+
+2007-04-04  Peter Beutner <p.beutner@gmx.net>
+
+	* dlls/ntdll/tests/exception.c:
+	ntdll: Remove one exception test.
+
+	* include/dinput.h:
+	dinput: Add missing definition to public header.
+
+2007-04-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
+	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
+	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
+	  dlls/winearts.drv/winearts.drv.spec, include/config.h.in,
+	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
+	  programs/winecfg/De.rc, programs/winecfg/En.rc,
+	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
+	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
+	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
+	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
+	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
+	  programs/winecfg/Tr.rc, programs/winecfg/audio.c,
+	  programs/winecfg/libraries.c, programs/winecfg/resource.h,
+	  tools/winapi/win32.api:
+	winearts.drv: Kill off winearts.
+
+2007-04-04  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/oleaut32/typelib16.c:
+	ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make
+	LoadTypeLib16 take an LPSTR instead of LPOLESTR.
+
+	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
+	  dlls/ole32/tests/compobj.c:
+	ole32: Keep a list of the loaded dlls for each apartment.
+	Use it to make CoFreeUnusedLibraries per-apartment.
+
+	* dlls/ole32/compobj.c:
+	ole32: Cache the address for the library's DllGetClassObject and DllCanUnloadNow
+	in the OpenDll list entry.
+
+	* dlls/ole32/tests/compobj.c:
+	ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries
+	from the current apartment.
+
+	* dlls/ole32/compobj.c:
+	ole32: Move the handling of loading a dll and getting an in-process object
+	from it to an apartment-specific function.
+	Use it to implement apartment_hostobject in a cleaner way so that it is
+	guaranteed to not recurse.
+
+	* dlls/ole32/compobj.c:
+	ole32: Move the in-process module loading to COMPOBJ_DllList_Add.
+
+	* dlls/ole32/compobj.c:
+	ole32: Convert the OpenDll list to a standard Wine list.
+	Store the library name and make it reference counted.
+
+2007-03-29  Fabian Bieler <der.fabe@gmx.net>
+
+	* dlls/wined3d/directx.c:
+	wined3d: Add support for float texture formats back in.
+
+	* dlls/wined3d/glsl_shader.c:
+	wined3d: Fix GLSL cnd instruction for INF and NAN arguments.
+
+	* dlls/wined3d/glsl_shader.c:
+	wined3d: Fix GLSL cmp instruction for INF and NAN arguments.
+
+2007-04-03  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/pin.c:
+	quartz: Tell filters to stop sending data when the chain is broken.
+
+2007-04-04  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/memallocator.c:
+	quartz: Don't call ReleaseSemaphore on NULL semaphore handles.
+
+2007-04-03  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/filtergraph.c:
+	quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface.
+
+2007-04-04  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/directory.c, server/change.c:
+	server: Use the standard file descriptor signal mechanism for directory changes.
+
+	* server/async.c, server/fd.c, server/file.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/serial.c:
+	server: Fix the handling of the signaled status for file descriptors.
+	File handles are signaled when an I/O operation completes, and reset
+	when another operation is queued.
+
+	* dlls/user32/message.c, dlls/winex11.drv/event.c,
+	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
+	winex11.drv: Store the display file descriptor directly in the server message
+	queue.
+	Get rid of a few WaitForMultipleObjectsEx hacks.
+
+	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
+	  server/request.h, server/trace.c:
+	server: Add support for associating a file descriptor to a message queue.
+
+	* server/trace.c, tools/make_requests:
+	make_requests: More aggressive grepping for status values.
+
+2007-04-04  Paul Vriens <Paul.Vriens.Wine@gmail.com>
+
+	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
+	odbccp32: Don't print *pcbPathOut as it can be NULL (Coverity).
+
+2007-04-03  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/propsheet.c:
+	comctl32: Propsheet exception fix.
+	Do not attempt to draw a page during WM_PAINT if there is no active page.
+
+2007-04-03  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/wined3d/state.c:
+	wined3d: Only issue state_patchsegments FIXME once.
+
+	* dlls/wined3d/state.c:
+	wined3d: Downgrade some ERRs to FIXMEs.
+
+2007-04-03  Steven Edwards <winehacker@gmail.com>
+
+	* programs/winecfg/En.rc, programs/winecfg/audio.c,
+	  programs/winecfg/resource.h:
+	winecfg: Add a button for audio test.
+
+2007-04-03  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/ole32/stg_bigblockfile.c:
+	ole32/stg_bigblockfile: Check page before use (Coverity).
+
+2007-04-03  Vit Hrachovy <vit.hrachovy@sandbox.cz>
+
+	* programs/winecfg/Cs.rc, programs/winecfg/winecfg.rc:
+	winecfg: Fix outdated Czech localization.
+
+2007-04-03  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/acmwrapper.c:
+	quartz: Break loop on error in ACMWrapper.
+
+	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
+	  dlls/quartz/transform.h:
+	quartz: Add a QueryConnect method for transform filters.
+
+2007-04-02  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/transform.c:
+	quartz: Connect input when the pins connect, not when querying.
+	And clean up when disconnecting input.
+
+2007-04-03  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/pin.c:
+	quartz: Hold a reference on the PullPin's filter while the processing thread
+	is alive.
+	Also removes dead code caused by the change.
+
+2007-04-03  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/atl/atl_main.c:
+	atl: AddRef the object being returned in AtlInternalQueryInterface,  not "this".
+
+	* dlls/msi/custom.c:
+	msi: Don't wait on closed handles in ACTION_FinishCustomActions.
+	The handle will be closed by free_custom_action_data, so duplicate the
+	handle before calling it.
+
+	* dlls/ntdll/tests/om.c, dlls/ntdll/tests/reg.c:
+	ntdll: Pass the correct value to NtClose in the tests.
+
+2007-04-03  Alexandre Julliard <julliard@winehq.org>
+
+	* server/async.c, server/fd.c, server/file.h, server/named_pipe.c,
+	  server/sock.c:
+	server: Hold a pointer to the queue from the async operations.
+
+	* dlls/kernel32/tests/mailslot.c, server/async.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/serial.c:
+	server: Make timeout status for async I/O specifiable. Fix mailslots timeout
+	handling.
+
+2007-03-30  Alessandro Pignotti <alex.pigna@inventati.org>
+
+	* dlls/dplayx/dplay.c, dlls/dplayx/dplay_global.h:
+	dplayx: Implement proper interface locking for DP_EnumSession.
+
+2007-03-30  Byeong-Sik Jeon <wjsqudtlr@gmail.com>
+
+	* programs/regedit/Ko.rc:
+	regedit: Update Korean resource.
+
+2007-03-31  Byeong-Sik Jeon <wjsqudtlr@gmail.com>
+
+	* programs/regedit/En.rc, programs/regedit/edit.c,
+	  programs/regedit/framewnd.c, programs/regedit/resource.h:
+	regedit: Support REG_MULTI_SZ creation and editing.
+
+2007-04-03  Laurent Vromman <laurent@vromman.org>
+
+	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
+	gdi32: Correct WidenPath behaviour when working on an open path.
+
+2007-04-02  Laurent Vromman <laurent@vromman.org>
+
+	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
+	gdi32: Correction of WidenPath behaviour when pen width is 1.
+
+2007-04-02  Jason Edmeades <us@edmeades.me.uk>
+
+	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
+	oleaut32: Convert to VT_DECIMAL fails with overflow (with test).
+
+2007-04-01  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/dsoundrender.c:
+	quartz: Use a second-long DSound buffer for playback.
+
+2007-04-02  Francois Gouget <fgouget@codeweavers.com>
+
+	* dlls/shell32/tests/shlexec.c:
+	shell32/tests: On NT4 FindExecutable() returns an extra backspace character
+	in some tests.
+
+	* dlls/shell32/tests/shlexec.c:
+	shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the
+	returned command which caused many tests to fail.
+
+	* dlls/shell32/tests/shlexec.c:
+	shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable
+	to read them back on Win >= 2000.
+
+	* dlls/shell32/tests/shlexec.c:
+	shell32/tests: Fix some expected FindExecutable() error codes.
+	Add comments indicating which Windows version returns a given error code.
+
+2007-04-02  Francois Gouget <fgouget@free.fr>
+
+	* dlls/comctl32/tests/tab.c, dlls/kernel32/tests/profile.c,
+	  dlls/localspl/tests/localmon.c, dlls/ole32/stg_bigblockfile.c,
+	  dlls/rpcrt4/rpcss_np_client.c, dlls/wined3d/state.c:
+	Assorted spelling and English fixes.
+
+	* dlls/ole32/tests/moniker.c:
+	ole32/tests: Spelling fix.
+
+	* dlls/ole32/tests/moniker.c:
+	ole32/tests: Spelling fix.
+
+2007-04-02  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/avifil32/avifile.c, dlls/avifil32/avifile_private.h,
+	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
+	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
+	avifil32: Constify some variables.
+
+	* dlls/comcat/information.c, dlls/comcat/register.c:
+	comcat: Constify some variables.
+
+	* dlls/advpack/install.c:
+	advpack: Constify some variables.
+
+	* dlls/atl/registrar.c:
+	atl: Constify some variables.
+
+	* dlls/advapi32/service.c:
+	advapi32: Constify some variables.
+
+	* dlls/comctl32/updown.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/treeview.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/trackbar.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/toolbar.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/theme_combo.c, dlls/comctl32/tooltips.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/tab.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/syslink.c:
+	comctl32: Constify some variables.
+
+2007-04-02  Alexandre Julliard <julliard@winehq.org>
+
+	* server/async.c, server/change.c, server/fd.c, server/file.h,
+	  server/mailslot.c, server/named_pipe.c, server/serial.c,
+	  server/sock.c:
+	server: Add a separate function to set the timeout of an async I/O operation.
+
+	* dlls/kernel32/tests/mailslot.c:
+	kernel32: Added some last error tests for mailslots.
+
+	* server/fd.c, server/mailslot.c:
+	server: Check file access in register_async before calling the object method.
+
+	* server/async.c, server/change.c, server/fd.c, server/file.h,
+	  server/named_pipe.c, server/serial.c, server/sock.c:
+	server: Make async I/O queues into real objects.
+
+	* server/change.c:
+	server: Use the fd generic wait queue for directory change I/O operations.
+
+	* server/serial.c:
+	server: Take advantage of the fd generic wait queue to remove a lot of serial
+	code.
+
+	* server/fd.c, server/file.h, server/mailslot.c:
+	server: Avoid redundant polling in fd_queue_async_timeout.
+	Moved the file overlapped flag check to default_fd_queue_async.
+
+	* server/fd.c, server/file.h:
+	server: Add a generic wait queue to the file descriptor object.
+
+	* tools/make_makefiles:
+	make_makefiles: Add the .INIT/.BEGIN rules for the main makefile.
+
+2007-03-30  Aric Stewart <aric@codeweavers.com>
+
+	* dlls/comctl32/propsheet.c:
+	comctl32: Unset active page while setting a new active page for a propsheet.
+	Before calling the PSN_SETACTIVE in PROPSHEET_SetCurSel set the
+	active_page to -1. This prevents crashes and corruption of the
+	property sheet if the application makes any modifications during the
+	PSN_SETACTIVE.
+
+2007-04-01  Eric Pouech <eric.pouech@wanadoo.fr>
+
+	* programs/winedbg/tgt_minidump.c, tools/winedump/minidump.c:
+	winedbg, winedump: Extended some info printed from system info directory in
+	minidump about the CPU.
+
+	* programs/winedbg/tgt_minidump.c:
+	winedbg: When reloading real PE modules from a minidump, also look in the
+	search path (as we do for ELF modules).
+
+2007-03-31  Michael Ploujnikov <ploujj@gmail.com>
+
+	* dlls/wined3d/surface_gdi.c:
+	wined3d: Remove DDBLT_WAIT fixme.
+
+2007-03-31  Jason Edmeades <us@edmeades.me.uk>
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Hack/workaround for filenames starting with a '.'.
+
+	* programs/xcopy/xcopy.c:
+	xcopy: /E implies recursive (fixes ActiveState Perl installer).
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Make displayed names mirror windows.
+
+2007-03-30  Jason Edmeades <us@edmeades.me.uk>
+
+	* programs/xcopy/En.rc, programs/xcopy/xcopy.c, programs/xcopy/xcopy.h:
+	xcopy: Add help.
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Update comments with unsupported operations and current status.
+
+	* .gitignore, programs/xcopy/En.rc, programs/xcopy/Makefile.in,
+	  programs/xcopy/rsrc.rc, programs/xcopy/xcopy.c,
+	  programs/xcopy/xcopy.h:
+	xcopy: Move all messages into an English resource file.
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Rearrange code to closely match windows ordering.
+	Effectively work out if we are interested in a file before worrying
+	about prompting for copy or overwrite.
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Add support for /D and /D:m-d-y.
+
+	* programs/xcopy/xcopy.c:
+	xcopy: Add support for /EXCLUDELIST:file1+file2 etc.
+
+2007-03-31  Andrew Talbot <Andrew.Talbot@talbotville.com>
+
+	* dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
+	  dlls/comctl32/string.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/rebar.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/header.c, dlls/comctl32/pager.c, dlls/comctl32/progress.c,
+	  dlls/comctl32/propsheet.c:
+	comctl32: Constify some variables.
+
+	* dlls/comctl32/animate.c, dlls/comctl32/comctl32undoc.c,
+	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c:
+	comctl32: Constify some variables.
+
+2007-04-01  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>
+
+	* programs/notepad/main.c:
+	notepad: Fix a possible rounding error when storing the font point size to
+	the registry.
+
+	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
+	  programs/notepad/De.rc, programs/notepad/En.rc,
+	  programs/notepad/Eo.rc, programs/notepad/Es.rc,
+	  programs/notepad/Fi.rc, programs/notepad/Fr.rc,
+	  programs/notepad/Hu.rc, programs/notepad/It.rc,
+	  programs/notepad/Ja.rc, programs/notepad/Ko.rc,
+	  programs/notepad/Nl.rc, programs/notepad/No.rc,
+	  programs/notepad/Pl.rc, programs/notepad/Pt.rc,
+	  programs/notepad/Ru.rc, programs/notepad/Si.rc,
+	  programs/notepad/Sk.rc, programs/notepad/Sw.rc,
+	  programs/notepad/Th.rc, programs/notepad/Tr.rc,
+	  programs/notepad/Wa.rc, programs/notepad/Zh.rc,
+	  programs/notepad/dialog.c, programs/notepad/main.c,
+	  programs/notepad/main.h, programs/notepad/notepad_res.h:
+	notepad: Implement handling of page setup dialog parameters.
+
+2007-04-01  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/advpack/install.c:
+	advpack: Stop processing if there was an error registering an OCX.
+
+	* dlls/advpack/Makefile.in, dlls/advpack/install.c:
+	advpack: Call OleInitialize before registering OCXs, like native does.
+
+	* dlls/urlmon/urlmon_main.c:
+	urlmon: Fix a reference count leak that would keep the module alive when
+	it shouldn't.
+
+2007-04-01  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/gdi32/font.c:
+	gdi32: Make GetKerningPairsA not fail for fonts with SYMBOL charset.
+
+	* dlls/kernel32/tests/locale.c:
+	kernel32: Add GetCPInfo test.
+
+2007-03-31  Stefan Dösinger <stefan@codeweavers.com>
+
+	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
+	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
+	wined3d: Use GL_APPLE_client_storage if available.
+
+	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
+	wined3d: Add GL_APPLE_client_storage to our extension list.
+
+2007-03-31  Dan Kegel <dank@kegel.com>
+
+	* dlls/imagehlp/modify.c:
+	imagehlp: BindImageEx stub should report success.
+
+2007-03-31  Laurent Vromman <laurent@vromman.org>
+
+	* dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/path.c:
+	gdi32: Add two basic tests to check what WidenPath does.
+
+2007-03-31  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32/tests: Some cleanup.
+
+	* dlls/advapi32/tests/registry.c:
+	advapi32/tests: Reopen the main handle if needed.
+
+2007-03-30  Felix Nawothnig <flexo@holycrap.org>
+
+	* dlls/d3d8/tests/texture.c, dlls/d3d9/tests/texture.c,
+	  dlls/wined3d/device.c:
+	wined3d: Make CreateCubeTexture fail when not supported.
+
+	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
+	gdi32: Properly handle negative font widths.
+
+2007-03-31  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/pin.c:
+	quartz: Use a safe APC to kill the PullPin thread when the PullPin is being
+	released.
+
+	* dlls/quartz/filesource.c, dlls/quartz/pin.c:
+	quartz: Set the sample time based on the number of bytes read before sending
+	it downstream.
+
+2007-03-30  Chris Robinson <chris.kcat@gmail.com>
+
+	* dlls/quartz/parser.c:
+	quartz: Remove errant parser output pins on input connection failure.
+
+	* dlls/quartz/dsoundrender.c:
+	quartz: Don't fill the dsound buffer with small amounts.
+
+2007-03-30  Alexandre Julliard <julliard@winehq.org>
+
+	* ANNOUNCE, ChangeLog, VERSION, configure:
+	Release 0.9.34.
+
+----------------------------------------------------------------
 2007-03-30  Alexandre Julliard <julliard@winehq.org>
 
 	* Makefile.in:
diff --git a/VERSION b/VERSION
index 10fd670..f475890 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 0.9.34
+Wine version 0.9.35
diff --git a/configure b/configure
index df5dbe3..85b24c5 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.34.
+# Generated by GNU Autoconf 2.61 for Wine 0.9.35.
 #
 # 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.34'
-PACKAGE_STRING='Wine 0.9.34'
+PACKAGE_VERSION='0.9.35'
+PACKAGE_STRING='Wine 0.9.35'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 
 ac_unique_file="server/atom.c"
@@ -1288,7 +1288,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.34 to adapt to many kinds of systems.
+\`configure' configures Wine 0.9.35 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1357,7 +1357,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 0.9.34:";;
+     short | recursive ) echo "Configuration of Wine 0.9.35:";;
    esac
   cat <<\_ACEOF
 
@@ -1452,7 +1452,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 0.9.34
+Wine configure 0.9.35
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1466,7 +1466,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.34, which was
+It was created by Wine $as_me 0.9.35, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -21246,7 +21246,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.34, which was
+This file was extended by Wine $as_me 0.9.35, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21299,7 +21299,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-Wine config.status 0.9.34
+Wine config.status 0.9.35
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
