diff --git a/ANNOUNCE b/ANNOUNCE
index ef6dca9..4294236 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,16 +1,17 @@
-The Wine development release 1.1.12 is now available.
+The Wine development release 1.1.13 is now available.
 
 What's new in this release (see below for details):
-  - Some simple 64-bit apps should now run.
-  - Support for subpixel font rendering.
-  - 64-bit code generation in the IDL compiler.
-  - New version of the Gecko engine.
+  - Freedesktop.org-compliant startup notifications.
+  - Many fixes for 64-bit application support.
+  - Improved graphics support in Internet Explorer.
+  - Various Richedit improvements.
+  - Better certificate manager dialog.
   - Various bug fixes.
 
 The source is available from the following locations:
 
-  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.12.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-1.1.12.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.13.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.1.13.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -26,546 +27,847 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.1.12:
+Bugs fixed in 1.1.13:
 
-   3276  warhammer 40 k failed to initialize video card - Initialisation of Graphics driver fails in W40K: Dawn of War.
-   3577  Wine suffers a big slow down after renaming an item
-   5048  mswsock:TransmitFile not implemented
-   6275  Adobe Audition 2.0 installation program fails to start, needs IXMLDOMDocument2
-   7294  Aura aborts silently on startup
-   7814  EVE Online mini maps in agent missions/browser are corrupted
-   7815  Photomatix 2.4 crashes when copying/pasting license information
-   8383  Black & White 2 quirks and crash
-   8442  configure finds sysctl.h but it does not compile on OpenBSD 4.1
-   8946  EA's FIFA Games only show a black screen
-   9511  Wine uses wrong icon on desktop for installed application
-   9927  qq installer crashes near end
-  10489  Winemaker fails to process directories with '+' in them.
-  10594  EVE Online has several rendering/stability problems
-  11001  Flanker 2.0 Demo: stack overflow after mission loads
-  11142  Roland XV-Editor program crashes when setting midi ports
-  11182  Unimplemented function winmm.midiDisconnect
-  11565  Cypress PSoC Designer installer hang/crash
-  11755  MediaMonkey 3.0.2 Error initializing Media Player
-  12179  MSN Messenger 7.0 crashes while starting
-  12208  TsRemux v0.20 crashes when launching (needs gdiplus.GetFontHeightGivenDPI)
-  12226  DrawTextA/W + DT_CALCRECT + Empty String returns 0
-  12261  Sonic Heroes Demo's shadows are messed up
-  12299  Commandos 3 crashes when selecting soldier
-  12339  Yahoo! Messenger 8.1 crashes in new user registration wizard
-  12344  eISLP -HTML rendering produces strange characters
-  12355  Utopia Angel tool crashes in statup and is unstable
-  12387  Civilization 4 fails to install
-  12477  NBC Direct installer requires installation of Windows Installer 3.1 redist
-  12604  SimGolf v1.03 exits when starting a new game
-  12638  Photodex ProShowGold crashes on service startup
-  12753  CIRCAD 5.3b: does not start
-  13069  EdWord needs oleacc.dll.AccessibleObjectFromPoint
-  13219  ProntoEdit NG 2.1.8 Emulator;  Freezes on launch and beeps continuously
-  13226  Fury: Unable to patch, because of buggy Window/Buttons/...
-  13392  Game Maker games have screen corruptions that renders them unplayable
-  13452  Typing anything in ePSXe freezes the application
-  13580  ARX Fatalis crashes
-  13726  handycafe.com installer unpacker hangs
-  13818  Yahoo! Messenger 9.0 beta installer crashes in ntdll when changing window focus
-  13894  Kyodai Mahjongg 2006 crashes, when started in 3D mode
-  13906  Guild Wars crashes on startup, before rendering scene
-  13911  Unhandled page fault on prefix creation on osx 10.5
-  13943  Active Worlds: crashes on startup
-  13977  CallWave: Crash on install
-  13998  other programs cant use alsa
-  14021  CallWave does not work
-  14042  Midnight Club II does not run with sound enabled
-  14044  Google SketchUp fails to run
-  14050  Forces Of Corruption : Empty launcher, can't load game
-  14063  Unimplemented function gdiplus.dll.GdipGetPropertyCount and gdiplus.dll.GdipGetPropertyIdList
-  14088  Gvox Encore: no sound
-  14112  PhotoAcute: Does not open browser links
-  14257  UltimateBet: Installs, but does nothing when run
-  14289  winhelp: crash with ME_InsertTableCellFromCursor: Assertion `run->member.run.pCell->next' failed.
-  14508  Music doesn't work in Hears of Iron 2: Armageddon
-  14777  T-Online Browser installer fails with unhandled exception on first try
-  15163  Installation of MP3Gain hangs
-  15652  Adobe Photoshop CS4 installer fails
-  15768  lego star wars II crashes with 2 joysticks plugged in
-  16165  Warhammer Online refuses to patch with builtin winhttp.dll
-  16293  Activeworlds client 4.2 crashes in IDirectXFileEnumObjectImpl_Create
-  16344  cmd.exe builtin time prints wrong message : current date instead of current time
-  16421  EVE Online fails to start with hardware vertex shaders
-  16544  winmm: mixerOpen(): when CALLBACK_WINDOW flag given, NULL Callback is also valid
-  16547  Pampered Chef Plus installer doesn't recognize windows version
-  16554  FeedDemon startup dialog is incomplete
-  16558  Google Sketchup 7 "Tools / Interact" cursor wrapped
-  16561  warning: implicit declaration of function '_mkdir'
-  16587  Warhammer:  Battle March - Copy protection (?) prevents loading
-  16591  Sword of the Stars crashes after intro movies, before main menu
-  16603  DllRegisterServer not implemented in itircl.dll
-  16605  riched20 regression: FullTiltPoker client crashes when leaving game window
-  16610  libport compilation fails because widl isn't there
-  16611  Regression: WoW crashes on startup in git
-  16646  Digital download, World of Goo 1.2 crashes wine
-  16659  configure doesn't pick up libpng on OpenBSD unless -lz is given
-  16665  build broken in dlls/winhttp/cookie.c on OpenBSD 4.4
+   4937  NASA WorldWind doesn't start.
+   5415  Intuit QuickBooks Pro 2006/2007 does not install
+   5554  Tachyon the Fringe crashes when detecting video modes
+   6334  support the fd.o startup notification spec better
+   6494  shdocvw fails to build on linux ppc
+   8081  ABMIS Professional - Loading of typelib L"oleacc.dll" failed with error 1812
+   8084  Starmoney 6 requires IE6
+   8404  Dungeon Keeper 2 crashes after mouse movement
+   8460  DVD Profiler: returns "Invalid floating point operation"
+  10547  .NET 3.5 Framework installation problems (msi, bits, crypt32)
+  10612  LookupAccountNameA returns Domain Size that is one byte too big
+  10698  Windows Installer 3.1 Incorrectly verifies
+  10765  The Format function of Visual Basic 6 does not work properly
+  10966  explorer.exe crash every time when removing folders
+  11600  Jetmen revival: mouse only moves from left to right
+  11691  Truespace crashes when using file save
+  11720  Intuit (Au) QuickBooks Pro 2007/2008 free trial massive memory leak
+  12021  Navyfield crashes after starting (possible dsound crash)
+  12099  .NET Framework 1.1 installer requires loadperf.dll in case of AeDebug -> Auto=0 (unhandled exception dialog)
+  12136  Sketchup6: crashes on x86-64 right after startup
+  12394  PanoramaStudio automatic Barrel/pincushion correction fails on too many pipes
+  12513  Cepstral SwiftTalker changes font when modifying a different option
+  12667  Sins of Solar Empire Key bindings glitches
+  12750  Forte Agent crashes when using Freefont 20080323
+  12766  Cursor incorectly drawn in Dungeon Siege
+  12810  Blade Runner crashes after opening sequence
+  12887  Regression: GTA san andreas too slow to be playable
+  13160  Final Fantasy XI Official Benchmark v. 3 doesn't display properly
+  13174  Launching the game through AssassinsCreed_Game.exe fails
+  13237  Cannot insert pictures from file due to rapid folder switching in Office 2007
+  13331  aSc TimeTables new timetable wizard can't receive focus with managed windows
+  13462  Launchpad Enhanced crashes due to problem with Context_QueryInterface
+  13473  Cannot load Python's sqlite module
+  13540  Sound recorder in aimp2.5 beta does not work
+  13755  Outcast (and sometimes Outcast Demo 1) : crashes when starting a new game because of amstream.dll
+  13803  QUIK Junior, not restored child windows, regression.
+  13962  wine-1.0rc5-6-g0123f5a compiler warnings - dlls/kernel32
+  13964  small .NET cmd util: CoWaitForMultipleHandles Unexpected wait termination
+  14015  Eclipse 3.3.x (customized) crashes on null REFCLSID passed to ole32.WriteClassStg
+  14056  Anatomie des Gehirns Version 2.0: crashes during installation after asking, wether program group should be created
+  14065  WordPerfect Office X3:  Application crash after change of window focus
+  14068  Blade Runner not drawing overlays
+  14160  Surface conversion problem with native d3dx
+  14171  Igor Engraver 1.7: crashes on startup
+  14191  Might and Magic 7: Crash at startup
+  14196  eclipse 3.4 crashes when starting
+  14341  gtasa: looking underwater turns things black
+  14354  Wineasio in no longer available in the Audio selection of MyOrgan
+  14362  RtlDestroyHeap forgot to notify_free on allocated blocks
+  14363  valgrind #includes have changed
+  14372  co-operate with valgrind to load debugging info
+  14406  Goldwave loaded mp3 file is corrupted
+  14874  Might and Magic 7: DirectDraw errors
+  15076  MS Train Simulator crashes on start
+  16102  archicad 10 demo installer crashes when launched
+  16231  ArchiCAD 11 cannot install, NULL pointer dereference
+  16349  Text is garbled in Teach 2000
+  16403  No text visible in Ever17
+  16546  Slingplayer exits with a Vis C error
+  16598  winuser.rh misses some standard control ids (dialog button, ...) resulting in wrc failure with windows.h include only
+  16635  Mathematica 7 Player crashes on startup with unimplemented KERNEL32.dll.GetErrorMode
+  16708  Installshield regression: PureEdge Viewer, Final Fantasy XI Benchmark 2 and 3 install fail
+  16714  World of Goo crashes on exit
+  16732  wine crashes on breakpoints
+  16735  ddraw/device: ‘oldcw’ is used uninitialized, needs FPUPRESERVE implemented
+  16738  Lineage2 shows only black screen at startup
+  16739  kernel32/instr.c: initialization from incompatible pointer type
+  16741  msvcrt/except.c: compiler errors
+  16743  ntoskrnl.exe: warning: initialization from incompatible pointer type
+  16748  rpcrt4/ndr_marshall.c: value computed is not used
+  16777  EnumDisplaySettingsEx does not set DM_DISPLAYFLAGS
+  16780  directory listing in cmd is not formatted correctly
+  16790  Lineage 2: Graphics bug with camera position
+  16828  Nirvis CDJ: serial port mode not completely clean on FreeBSD (IEXTEN still on)
+  16840  Children of the nile demo crashes when loading the menu
+  16875  .NET 3.0: WIC installer fails due to bug(s) in setupapi.SetupGetTargetPathW
+  16878  .NET 3.0: XPSEPSC installer fails due to missing ntoskrnl.exe placeholder and version resource
+  16879  .NET 3.0: XPSEPSC installer fails due to unimpl kernel32.RtlCaptureStackBackTrace
+  16888  .NET 3.0: WCF installer requires httpapi.dll with some stubs
+  16893  .NET 3.0: Windows Workflow Foundation post-install: loadperf needs LoadPerfCounterTextStringsA/W stubs
+  16906  .NET 3.0: XPSEPSC installer copies print processor files to wrong directory (setupapi unhandled dirid 55)
+  16911  WriteProcessMemory() not working for memory protected by X11DRV_DIB_DoProtectDIBSection()
+  16922  Build broken on NetBSD
 
 ----------------------------------------------------------------
 
-Changes since 1.1.11:
+Changes since 1.1.12:
 
 Aleksey Bragin (1):
-      ntdll: Fix memory corruption in RtlSetBits.
+      ntdll: Fix buffer overread in RtlNumberOfSetBits.
 
-Alexandre Julliard (73):
-      configure: Better check for the broken mkdir on Windows.
-      libport: Add a stub replacement for symlink().
-      wininet: Store file time as a SYSTEMTIME instead of a Unix struct tm.
-      shell32: Use Win32 functions instead of Unix ones to retrieve the current time.
-      winedevice: Make sure that all dependencies of the driver are relocated too.
-      libport: Replacement for poll().
-      secur32: Check for lack of fork() support.
-      ws2_32: Added implementation for inet_ntop.
-      rpcrt4: Disable TCP/IP connection support if we don't have socketpair.
-      shell32: Use RtlRandom instead of the non-portable rand_r.
-      include: Add the needed dllimport attribute to the RtlUnwind declaration.
-      gdi32: Fix the build without Freetype LCD support.
-      libport: Avoid including winsock2.h.
-      user32: Fix SPI_SETMOUSESPEED handling, the parameter is not a pointer.
-      server: Store data for hardware messages in the message extra data.
-      server: Make lparam_t always 64-bit.
-      server: Store the async handle inside the async_data_t structure.
-      server: Use the same field for process and thread handle in the queue_apc request.
-      server: Get rid of the unused count parameter in fd_queue_async().
-      widl: Move determination of the exact type of structures and array to the code generation phase.
-      widl: Store the size of a pointer in a variable instead of hardcoding the value of the host compiler.
-      widl: Add --win32/--win64 options to select the type of code generated.
-      widl: Add support for generating 32-bit and/or 64-bit code for proxies/clients/servers.
-      configure: When cross-compiling, propagate the target specification to winebuild.
-      configure: Improve check for libresolv.
-      winetest: Link against the Wine import libraries for the dist version too.
-      kernel32: Move AllocMappedBuffer/FreeMappedBuffer to thunk.c.
-      include: Move the DEFINE_REGS_ENTRYPOINT macros to the dlls that use it.
-      winebuild: Generate the __wine_call_from_32_regs function along with the 16-bit kernel routines.
-      winebuild: Fix delay load code to preserve stack alignment and save the correct registers.
-      winebuild: Generate relay debugging thunks for x86_64.
-      ntdll: Make the relay debug code more generic to allow supporting 64-bit platforms.
-      ntdll: Add support for relay debugging on x86_64.
-      libport: Check for ENOTSUP being defined before using it.
-      ntdll: Make sure we don't return from a stub exception.
-      server: Add a module_handle_t type to represent client-side module handles.
-      server: Make module handles always 64-bit.
-      server: Store module names as client_ptr_t instead of void pointers.
-      server: Store debugging output strings as client_ptr_t instead of void pointers.
-      server: Make the select cookie a client_ptr_t instead of a void pointer.
-      server: Make the class opaque data a client_ptr_t instead of a void pointer.
-      server: Make the device opaque data a client_ptr_t instead of a void pointer.
-      server: Make hook procedures client_ptr_t instead of void pointers.
-      server: Make timer callback function and argument client_ptr_t instead of void pointers.
-      opengl32: Define an enum for extensions to make diffs smaller when adding new extensions.
-      server: Make the message callback function a client_ptr_t instead of a void pointer.
-      server: Make the address argument for read/write_process_memory a client_ptr_t.
-      server: Make the mapping base address a client_ptr_t instead of a void pointer.
-      server: Make the address parameters in inter-process virtual memory calls client_ptr_t.
-      server: Make padding explicit in the wake_up_reply structure.
-      server: Make a couple of fields smaller in the apc_call_t/apc_result_t structures.
-      server: Make the arguments for CreateRemoteThread client_ptr_t instead of void pointers.
-      server: Explicitly specify when an ioctl call needs to be blocking.
-      server: Specify the user APC to call only once the system APC has executed.
-      server: Make the various async I/O parameters client_ptr_t instead of void pointers.
-      server: Send the version with the initial fd so that it can be checked before sending the first request.
-      server: Move ldt_copy to the init_process_done request and make it a client_ptr_t.
-      server: Make thread entry points client_ptr_t instead of void pointers.
-      server: Make TEB and PEB client_ptr_t instead of void pointers.
-      server: Make atom_t an unsigned int to avoid padding issues.
-      server: Reorganize some requests to avoid padding, and make remaining padding explicit.
-      cmd: Don't include time.h before winsock.h to avoid conflicts.
-      user32: Convert wvsprintfA/W to use an MS ABI vararg list for x86_64.
-      shlwapi: Convert wvnsprintfA/W to use an MS ABI vararg list for x86_64.
-      shlwapi: Convert SHPackDispParams to use an MS ABI vararg list for x86_64.
-      wldap32: Convert ber_printf to use an MS ABI vararg list for x86_64.
-      kernel32: Convert FormatMessageA/W to use an MS ABI vararg list for x86_64.
-      ntdll: Use INT_MAX for the semaphore count since LONG_MAX won't work on 64-bit.
-      include: Don't pack shellapi.h on 64-bit.
-      include: Fix a couple of winsock structures for 64-bit.
-      kernel32/tests: Use the correct value for invalid heap sizes on 64-bit.
-      winecoreaudio: Fix a redefinition warning.
-      Update copyright info for 2009.
+Alexandre Julliard (169):
+      server: Avoid crash on initialization of the thread creation debug event.
+      server: Simplify the debug_event_t structure.
+      server: Replace EXCEPTION_RECORD by an explicit definition in debug events.
+      msvcrt: Fix formatting of pointers in printf.
+      msvcrt: Convert all the printf functions to use MS ABI varargs.
+      msvcrt: Convert all the scanf functions to use MS ABI varargs.
+      msvcrt: Convert the open functions to use MS ABI varargs.
+      msvcrt: Convert the spawn and exec functions to use MS ABI varargs.
+      reg.exe: Fix broken usage of va_list.
+      cmd.exe: Don't use wvsprintf on sysv-style varargs, use a libwine function instead.
+      xcopy.exe: Don't use wvsprintf on sysv-style varargs, use a libwine function instead.
+      ntdll/tests: Skip large integer tests that crash on 64-bit Vista.
+      ntdll: Fix the various structures returned by NtQuerySystemInformation for 64-bit.
+      msvcrt: Add missing __cdecl on some function pointers.
+      advpack/tests: Add CDECL to the cabinet callback functions.
+      cabinet/tests: Add CDECL to the cabinet callback functions.
+      msi/tests: Add CDECL to the cabinet callback functions.
+      comctl32/tests: Fix pointer casting warnings on 64-bit.
+      gdi32/tests: Fix a pointer casting warning on 64-bit.
+      mlang/tests: Fix a pointer casting warning on 64-bit.
+      msi/tests: Fix pointer casting warnings on 64-bit.
+      ntdll/tests: Fix pointer casting warnings on 64-bit.
+      ole32/tests: Fix a pointer casting warning on 64-bit.
+      qedit/tests: Fix a pointer casting warning on 64-bit.
+      shell32/tests: Fix handle casting warnings on 64-bit.
+      winhttp/tests: Use ~0u instead of ~0ul for DWORD values.
+      wininet/tests: Use ~0u instead of ~0ul for DWORD values.
+      wldap32/tests: Use ~0u instead of ~0ul for DWORD values.
+      winmm/tests: Fix handle casting warnings on 64-bit.
+      user32/tests: Fix pointer casting warnings on 64-bit.
+      user32/tests: Fix some printf formats for 64-bit.
+      kernel32/tests: Fix pointer casting warnings on 64-bit.
+      kernel32/tests: Don't compare the result of llseek or hwrite against HFILE_ERROR.
+      kernel32/tests: Fix the NT header initialization for 64-bit.
+      kernel32/tests: Use the correct SIZE_T type instead of unsigned long.
+      msvcrt/tests: Use unsigned int instead of size_t for the malloc tests.
+      msvcrt/tests: Fix some printf formats for 64-bit.
+      ntdll/tests: Avoid long long printf formats in traces.
+      include: Fix data structures for processor affinity on 64-bit.
+      include: Fix the PROCESSENTRY32 structure on 64-bit.
+      include: Fix the msvcrt time_t definition on 64-bit.
+      msvcrt/tests: Fix the printf pointer formatting tests on 64-bit.
+      msvcrt/tests: Fix the scanf pointer formatting tests on 64-bit.
+      kernel32/tests: Comment out a couple of heap tests that crash on 64-bit Vista.
+      kernel32/tests: Use the actual name of the exe module in toolhelp tests.
+      riched20/tests: Move the itextServicesStdcallVtbl definition to avoid a compiler warning.
+      libwine: Fix vsnprintfW string formatting to handle alignment and padding.
+      libwine: Ignore format modifiers 'h' and 'l' when formatting a string.
+      cabinet: Add CDECL to the cabinet callback functions.
+      setupapi: Add CDECL to the cabinet callback functions.
+      dinput: Fix pointer cast warnings on 64-bit.
+      wldap32: Use ~0u instead of ~0ul for DWORD values.
+      winhttp: Use ~0u instead of ~0ul for DWORD values.
+      wininet: Use ~0u instead of ~0ul for DWORD values.
+      msvcrt: Fix the time_t definition for the msvcrt build.
+      urlmon/tests: Fix an uninitialized variable check for Win64.
+      mshtml/tests: Fix the platform test for Win64.
+      ole32/tests: Fix a structure size check for Win64.
+      crypt32/tests: Fix handle size in CERT_KEY_PROV_HANDLE_PROP_ID for Win64.
+      include: Fix the PROCESS_MEMORY_COUNTERS structure definition for Win64.
+      jscript/tests: Don't crash if we fail to get the IActiveScriptParse interface.
+      include: Fix 64-bit sign extension in the MAKEWPARAM/LPARAM macros.
+      setupapi: Implemented SetupEnumInfSectionsA/W.
+      setupapi/tests: Added some tests for SetupEnumInfSectionsA/W.
+      updspapi: Added an updspapi implementation that forwards to setupapi.
+      ntdll: Change the DEFINE_REGS_ENTRYPOINT macro to use a number of args instead of a size.
+      kernel32: Change the DEFINE_REGS_ENTRYPOINT macro to use a number of args instead of a size.
+      winebuild: Improve the calling sequence for register functions.
+      winedump: List exported functions sorted by ordinal.
+      winedump: Implement dumping of relocations.
+      include: Document offsets in the x86_64 context structure.
+      winebuild: Implement register entry points for x86_64.
+      ntdll: Implement relay debugging for register entry points on x86_64.
+      ntdll: Print exception context on x86_64.
+      ntdll: Replaced get_cpu_context by RtlCaptureContext. Implemented it for x86_64.
+      kernel32: Moved _DebugOutput to kernel16.c.
+      kernel32: Moved the 16-bit WOW thunk routines to thunk.c.
+      kernel32: #ifdef out some code that is not needed on non-i386.
+      winefile: Get rid of hack to load vswprintf from msvcrt.
+      regedit: Fix integer printf formats in resource strings.
+      regedit: Convert error box display to Unicode.
+      include/msvcrt: Replace va_list by __ms_va_list for x86_64.
+      msvcrt: Correctly walk up the list of trylevels in except_handler3.
+      user32/tests: Fix most of the macro abuse in the menu test.
+      opengl32: Use INT_PTR instead of ptrdiff_t in generated code to avoid printf warnings.
+      opengl32: Automatically download the GL spec files in make_opengl. Add a default value for the OpenGL version.
+      msvcrt/tests: Avoid printing pointer differences in traces.
+      ntdll/tests: Avoid printing pointer differences in traces.
+      oleaut32/tests: Avoid printing pointer differences in traces.
+      rpcrt4/tests: Avoid printing pointer differences in traces.
+      shlwapi/tests: Avoid printing pointer differences in traces.
+      ws2_32/tests: Avoid printing pointer differences in traces.
+      crypt32: Avoid printing pointer differences in traces.
+      kernel32/tests: Use _lclose instead of CloseHandle to avoid handle casts.
+      msi/tests: Use CreateFile instead of OpenFile to avoid handle casts.
+      ntdll/tests: Fix a long long format in a trace.
+      user32/tests: Fix some integer to pointer conversion warnings.
+      dinput: Avoid size_t in traces.
+      msvcrt: Avoid size_t in printf format.
+      dsound: Avoid a pointer cast in a trace.
+      imm32: Avoid pointer casts in traces.
+      shell32: Avoid a pointer cast in a trace.
+      user32: Avoid a pointer cast in a trace.
+      version: Avoid pointer casts in a trace.
+      wininet: Avoid pointer casts in traces.
+      quartz: Avoid a pointer cast in a trace.
+      kernel32/tests: Fix some integer to pointer conversion warnings.
+      user32/tests: Fix some integer to pointer conversion warnings.
+      advapi32: Fix pointer cast warnings on 64-bit.
+      mshtml: Fix pointer cast warnings on 64-bit.
+      msi: Fix pointer cast warnings on 64-bit.
+      ntoskrnl.exe: Fix handle cast warnings on 64-bit.
+      oleaut32: Fix handle cast warnings on 64-bit.
+      setupapi: Fix pointer cast warnings on 64-bit.
+      shell32: Fix a pointer cast warning on 64-bit.
+      shdocvw: Fix a pointer cast warning on 64-bit.
+      urlmon: Fix pointer cast warnings on 64-bit.
+      user32: Fix pointer cast warnings on 64-bit.
+      wininet: Fix handle cast warnings on 64-bit.
+      ntdll: Fix pointer cast warnings on 64-bit.
+      wineps.drv: Use INT_MAX instead of LONG_MAX to initialize a LONG value.
+      ws2_32: Fix an error return value in bind().
+      msvcrt: Fix an unused function warning on non-i386.
+      rpcrt4: Fix an unused value warning on non-i386.
+      ddraw: Fix an uninitialized variable warning on non-i386.
+      quartz: Use SetWindowLongPtr to store a pointer value.
+      wineconsole: Replace a couple of handle casts by the appropriate server function.
+      winhlp32: Use LONG instead of long for data loaded from a file.
+      winhlp32: Use GetWindowLongPtr to retrieve a pointer, and make sure there is enough space for it.
+      winedbg: Fix pointer cast warnings on 64-bit.
+      oleaut32/tests: Only compare the initialized part of DECIMAL variants.
+      include: Fix packing of the setupapi structures.
+      include: Fix packing of the STRRET structure.
+      include: Fix packing of the msacm structures.
+      include: Fix a number of mmsystem.h structure for Win64.
+      gdi32/tests: Fix an uninitialized pointer check for Win64.
+      rpcrt4/tests: Fix an uninitialized pointer check for Win64.
+      shell32/tests: Fix some uninitialized handle checks for Win64.
+      setupapi/tests: Pass the correct size to SetupDiGetDeviceInterfaceDetailA.
+      comctl32: Fix the COMBOBOXEXITEM structure and the treeview handles for Win64.
+      comctl32/tests: Fix lparam checks in the treeview test for Win64.
+      gdi32/tests: Fix an uninitialized value check and a structure size for Win64.
+      ole32/tests: Fix marshalling data layout for Win64.
+      user32: Winproc handles do not get sign-extended on 64-bit.
+      user32: The PackDDElParam return value is sign-extended on 64-bit.
+      makedep: Copy the makefile to append dependencies instead of truncating in place.
+      configure: Improve error reporting for missing 32-bit development environment.
+      configure: Don't force a 32-bit build when cross-compiling.
+      user32/tests: Centralize the tracing of the received messages in the msg.c test.
+      user32/tests: Only display failing message sequences instead of every single message.
+      user32/tests: Comment out the menu size tests, there's no consistent behavior to test for.
+      user32/tests: Fix the layered window tests for some Vista versions.
+      winebuild: Add -b as a short option for --target for gcc compatibility.
+      configure: Specify the target flags directly from configure to avoid trouble on BSD make.
+      cabinet: Don't try to copy data from the file if we don't even have a data buffer.
+      ntdll: Check buffer for access in NtWriteFile before performing I/O.
+      ntdll: Check buffer for access in NtReadFile before performing I/O.
+      kernel32/tests: Add test cases for reading/writing from an invalid buffer address.
+      gdi32/tests: Add a test case for calling WriteFile with the DIB section bits as buffer.
+      kernel32: Remove the DIB section hack in WriteFile now that NtWriteFile takes care of it.
+      ntdll: Check buffer for access in NtRead/WriteVirtualMemory.
+      kernel32/tests: Add test cases for reading/writing process memory from an invalid buffer address.
+      user32: Use the message_data_t union when receiving a message.
+      user32/tests: Print the failure position in the message sequence.
+      user32/tests: Add support for testing only some bits of wparam or lparam. Make some more messages optional.
+      winebuild: Add -m32/-m64 options to allow 32/64-bit cross-compiles.
+      server: Set stderr in line-buffered mode before doing anything else.
+      user32/tests: Fix some more failures in the message test.
+      gdiplus: Fix a typo that breaks the Mingw build.
 
-Alistair Leslie-Hughes (1):
-      msxml3: Use xmlNodeGetContent to get text data.
+Alistair Leslie-Hughes (8):
+      mshtml: Add missing IHTMLStyle interfaces.
+      mshtml: Implement IHTMLStyle get/set Attribute.
+      msxml3: Add fixme for unsupported parameter.
+      mshtml: Add missing IHTMLCurrentStyle interfaces.
+      mshtml: Implement IHTMLStyle get/put borderLeftStyle.
+      mshtml: Implement IHTMLStyle get/put borderBottomStyle.
+      mshtml: Implement IHTMLStyle get/put borderRightStyle.
+      mshtml: Implement IHTMLStyle get/put borderTopStyle.
 
 Allan Tong (1):
-      wined3d: Add mapping for MOV instructions in shader_hw_map2gl.
+      wined3d: Add code to cleanup device multistate_funcs.
 
-Anders Jonsson (2):
-      mciseq: Fix typo.
-      mciavi32: Fix typo.
+Anders Jonsson (1):
+      winebrowser: Fix typo.
 
-Andrew Fenn (4):
-      xinput: Added prototypes to header file.
-      xinput: Added stub for XInputEnable.
-      xinput1_3: Added stub XInputSetState.
-      xinput1_3: Added tests for XInputSetState.
+Andrew Fenn (6):
+      xinput1_3: Added stub code for XInputGetKeystroke.
+      xinput1_3: Added tests for XInputGetKeystroke.
+      xinput1_3: Added stub for XInputGetDSoundAudioDeviceGuids.
+      xinput1_3: Added test for XInputGetDSoundAudioDeviceGuids.
+      xinput1_3: Added stub code for XInputGetBatteryInformation.
+      xinput1_3: Added test for XInputGetBatteryInformation.
 
-Andrew Nguyen (6):
-      winmm/tests: Fix a mismatched failure message.
-      winmm/tests: Refactor the mixerOpen and mixerClose tests and add a few additional test cases.
-      winmm: mixerOpen should return success with NULL dwCallback and CALLBACK_WINDOW flag.
-      cfgmgr32: Forward and stub CM_Connect_MachineA.
-      setupapi: Stub the SetupDiDestroyClassImageList function.
-      cfgmgr32: Forward and stub CM_Create_DevNodeA/W.
+Andrew Talbot (16):
+      dbghelp: Declare some functions static.
+      dpnet: Declare a function static.
+      dsound: Declare some variables static.
+      inkobj: Declare a variable static.
+      jscript: Declare a function static.
+      msacm32: Declare a function static.
+      msacm32: Declare a variable static.
+      d3dxof: Declare a function static.
+      mshtml: Declare a function static.
+      iphlpapi: Remove unused function.
+      ddraw: Fix double unlock of critical section.
+      msi: Declare some functions static.
+      ole32: Declare a function static.
+      qcap: Declare a function static.
+      riched20: Declare some functions static.
+      riched20: Declare some functions static.
 
-Andrew Riedi (3):
-      itircl: Fix documentation typo.
-      winex11.drv: Calculate the cursor bitmap offsets in a way consistent with user32.
-      winex11: Factor out the 'alpha_zero' test and use it for legacy cursor support.
+Andrey Turkin (20):
+      user32: GetUserObjectSecurity should return a valid security descriptor.
+      shell32: Add explorer toolbar bitmaps.
+      ntdll: Always set output values in RtlGetDaclSecurityDescriptor.
+      shell32: Fix typo.
+      include: Add more definitions to winuser.rh.
+      loadperf: Add stub loadperf.dll.
+      loadperf: Add UnloadPerfCounterTextStrings stubs.
+      loadperf: Add LoadPerfCounterTextStrings stubs.
+      ntoskrnl: Add version resource.
+      ntdll: Add RtlCaptureStackBackTrace stub.
+      programs: Add cacls stub.
+      httpapi: Add HttpInitialize and HttpTerminate stubs.
+      httpapi: Add HttpDeleteServiceConfiguration, HttpQueryServiceConfiguration and HttpSetServiceConfiguration stubs.
+      setupapi: Add support for DIRID_PRINTPROCESSOR.
+      include: Add ctxtcall.idl file with IContextCallback interface definition.
+      ole32/tests: Add test for IContextCallback.
+      ole32: Add IContextCallback interface to context object.
+      ole32: Do not crash in WriteClassStg if passed NULL pointer.
+      gdiplus: GdipLoadImageFromStream should use well-known pixel format constants when possible.
+      qmgr: Make credentials stubs return success code.
 
-Andrew Talbot (20):
-      dmime: Remove unused Wine debug channel.
-      dmstyle: Remove unused Wine debug channel.
-      sxs: Remove unused Wine debug channel.
-      winealsa.drv: Do nothing if HAVE_ALSA is not defined.
-      winecoreaudio.drv: Do nothing if HAVE_AUDIOUNIT_AUDIOUNIT_H is not defined.
-      riched20: Remove unused Wine debug channel.
-      mshtml: Remove superfluous semicolons.
-      msvfw32: Remove superfluous semicolon.
-      winex11.drv: Superfluous semicolons fix.
-      ddraw: Remove a superfluous semicolon.
-      wineoss: Remove a superfluous semicolon.
-      wined3d: Remove superfluous semicolons.
-      ole32: Superfluous semicolons fix.
-      ntdll: Remove a superfluous semicolon.
-      msvcrt: Remove a superfluous semicolon.
-      advapi32: Remove unused function.
-      comdlg32: Unreachable code fix.
-      cabinet: Declare a function static.
-      comctl32: Declare some variables static.
-      comdlg32: Declare a function static.
+André Hentschel (1):
+      comctl32/tests: Fix wrong comment-headline in toolbar.c.
 
-Andrey Turkin (1):
-      advapi32: Implement CredReadDomainCredentials stub and tests.
+Austin English (7):
+      kernel32: Add heap support for OpenBSD.
+      ntdll: Add file support for OpenBSD.
+      mpr: Fix a compiler warning on PowerPC.
+      kernel32: Fix a compiler warning on non-i386.
+      httpapi: Add stub dll.
+      ole32: Add tests for CoInitializeEx.
+      iphlpapi: Define RTF_MULTICAST if not available.
 
-Austin English (5):
-      itircl: Add stub functions.
-      configure: Fix sysctl.h check for OpenBSD.
-      configure: Fix libpng detection on OpenBSD.
-      winhttp: Fix a missing include for OpenBSD.
-      kernel32/tests: Fix compile on powerpc.
+Austin Lund (1):
+      riched20/tests: Added ITextServices::TxSetText test.
 
-ByeongSik Jeon (1):
-      gdi32, winex11: Add support for subpixel font rendering.
+Chris Wulff (2):
+      gdiplus: Partial implementation of GdipCreateHatchBrush.
+      gdiplus: Implement hatch brush accessor functions.
 
-Byeongsik Jeon (4):
-      gdi32: Don't truncate the added pixels with FT_LCD_FILTER_DEFAULT.
-      gdi32: Restore the trimmed bitmap image by FT_Render_Glyph().
-      user32: Implementation the SPI_{GET|SET}FONTSMOOTHING* actions.
-      winex11.drv: Add the basic antialias type decision code.
-
-Chris Robinson (1):
-      d3d9: Use the correct size for D3DFVF_XYZW.
-
-Christian Costa (29):
-      wineoss.drv: Initialize correctly the header before adding it to the queue.
-      winecoreaudio.drv: Initialize correctly the header before adding it to the queue.
-      dmusic: Improve IDirectMusicPortImpl_DownloadInstrument stub.
-      dmusic: Add support for IID_IDirectMusicDownloadedInstrument8 query in IDirectMusicDownloadedInstrumentImpl_QueryInterface.
-      dmusic: Fix IDirectMusicPortImpl_QueryInterface.
-      dmusic: Improve IDirectMusicPortDownloadImpl_GetBuffer stub.
-      dmusic: Implement IDirectMusic8Impl_CreateMusicBuffer.
-      d3dxof: Simplify error handling in IDirectXFileEnumObjectImpl_GetNextDataObject.
-      d3dxof: Allocate subobjects at object creation time.
-      d3dxof: Release properly all allocated resources.
-      d3dxof: Make FileEnumObject keep references to top level objects. Add corresponding test.
-      d3dxof: Release allocated xobjects.
-      d3dxof: Small cleanup.
-      ddraw: Display fixme only once in IDirect3DVertexBufferImpl_Optimize.
-      d3dxof: Initialize object member names correctly.
-      d3dxof: Template names are case insensitive.
-      ntoskrnl.exe: Add stub for KeInitializeEvent.
-      ntoskrnl.exe: Fix some FIXMEs.
-      ntoskrnl.exe: Add stub for PsSetCreateThreadNotifyRoutine.
-      quartz: Fix some traces and fixmes.
-      winedos: Document CMOS image bytes.
-      winedos: Compute CMOS image checksum automatically.
-      winedos: Increase extended memory from 7MB to 15MB.
-      quartz: Remove unused IMemInputPin vtables.
-      cmd.exe: Use WCMD_CURRENTTIME resource to show the time.
-      d3dxof: Move X files parsing into a separate file.
-      ddraw: Display fixme only once in IDirectDrawImpl_WaitForVerticalBlank.
-      winmm: Check param in joyConfigChanged.
-      mciavi: Implement MCI_DGV_PUT_WINDOW in MCIAVI_mciPut.
+Christian Costa (2):
+      d3dxof: Avoid accessing template/object buffer directly.
+      mciavi: In MCI, RECT structure is used differently: rc.right = width & rc.bottom = height so do the conversion when needed.
 
 Damjan Jovanovic (1):
-      winemenubuilder: Improve icon generation.
+      winex11: Support the startup notification fd.o spec.
 
-Dan Kegel (2):
-      tools: Remove bashisms from wineinstall.
-      winmm: Don't crash on PlaySound(... SND_ALIAS_ID).
+David Adam (2):
+      d3dx9_36/test: Remove an unconsistent test.
+      d3dx9: Fix falling tests in native windows.
 
-Detlef Riekenberg (3):
-      shdocvw/tests: Fix a test on IE 5.x.
-      shdocvw: Implement ParseURLFromOutsideSource.
-      shdocvw/tests: Add tests for ParseURLFromOutsideSource.
+Detlef Riekenberg (1):
+      localspl: Call DrvDriverEvent in AddPrinterDriverEx.
 
-Dylan Smith (1):
-      richedit: Prevented a dereference of a freed pointer.
+Dmitry Timoshkov (10):
+      winex11: Indicate that dmDisplayFlags is also initialized.
+      credui: Use "-1" as a "don't care value", fix dialog id duplicates.
+      cryptui: Use "-1" as a "don't care value", fix dialog id duplicates.
+      mshtml: Use "-1" as a "don't care value", fix dialog id duplicates.
+      serialui: Use "-1" as a "don't care value", fix dialog id duplicates.
+      oleview: Use "-1" as a "don't care value", fix dialog id duplicates.
+      progman: Use "-1" as a "don't care value", fix dialog id duplicates.
+      winemine: Use "-1" as a "don't care value", fix dialog id duplicates.
+      wordpad: Use "-1" as a "don't care value", fix dialog id duplicates.
+      wrc: Warn for duplicate dialog ids.
 
-Francois Gouget (13):
-      kernel32: Fix a comment in LocalInit16().
-      shell32/tests: Add a trailing '\n' to ok() calls.
-      wnaspi32: Add a trailing '\n' to a Wine trace.
-      advapi32/tests: Add a trailing '\n' to ok() calls.
-      winecoreaudio.drv: Remove an unused debug channel (midi).
-      winedbg: Remove an unused debug channel (winedbg).
-      browseui/tests: Make some functions static.
-      configure: Fix the linux/ipx.h check.
+Dylan Smith (28):
+      richedit: Fix unicode truncation on EM_GETLINE message.
+      richedit: Mask window id on WM_COMMAND notifications.
+      richedit: Use 32-bit rather than 16-bit trackbar value for scrolling.
+      richedit: Scroll up with less than page of text with ES_DISABLENOSCROLL.
+      richedit: Prevent redundant rewraps when scrollbar is shown.
+      richedit: Avoid rewrapping all text for isolated format changes.
+      richedit: Added tests for WM_GETDLGCODE message.
+      richedit: Fixed implementation of WM_GETDLGCODE message.
+      richedit: Missing condition for inserting newline before table.
+      wordpad: Use winelib's sprintfW for floating point formatting.
+      wordpad: Use unicode version of CBEM_GETITEM message.
+      richedit: Added tests to show that options are stored internally.
+      richedit: Added tests for autoscrolling options based on WS_V/HSCROLL.
+      richedit: Tested EM_CHARFROMPOS with position outside of control.
+      richedit: Pressing enter adds newline on WM_KEYDOWN rather than WM_CHAR.
+      richedit: Set bEmulateVersion10 initially to avoid retroactive  changes.
+      richedit: Prevent an unsigned integer underflow.
+      richedit: Store mouse captured state rather than calling GetCapture.
+      richedit: Added tests for zooming.
+      richedit: Zoom in and out with mouse wheel with control held.
+      richedit: Correct limitations on values for setting zoom ratio.
+      richedit: Clip painting to formatting rectangle.
+      richedit: Implemented the horizontal scrollbar.
+      richedit: Fix implementation of handling Page Up/Down keys.
+      richedit: Added tests for initial options.
+      richedit: Store an internal copy of the window style flags.
+      richedit: Prevent copying PARAFORMAT2 fields from PARAFORMAT struct.
+      richedit: Respect the cbSize field on EM_GETPARAFORMAT.
+
+Erich Hoover (2):
+      wcmd: Handle batch scripts containing quotes within quotes.
+      wcmd: Fix redirecting a pipe to another pipe.
+
+Francois Gouget (37):
+      winemine: Make some functions static.
+      cmd: Make WCMD_ask_confirm() static.
+      cmd: WCMD_strtrim_trailing_spaces() is unused so remove it.
+      cmd: Make some functions static.
+      oleview: Make some functions static.
+      gdi32: Remove some dead code.
+      winedos: Remove unused functions from devices.c.
+      winedos: VGA_SetTextAttribute() is unused so remove it.
+      winedos: VGA_SetQuadPalette() is unused so remove it.
+      d3dxof: Reorder some functions to avoid forward declarations.
+      view: Make FileIsPlaceable() and GetPlaceableMetaFile() static.
+      quartz: Reorder some functions to avoid forward declarations.
+      w32skrnl: _GetThunkBuff() is unused so remove it.
+      dnsapi: dns_ns_name_pton() is unused so remove it.
+      dnsapi: Reorder a couple of functions to avoid forward declarations.
       Assorted spelling fixes.
-      cmd: Reorder some functions to avoid forward declarations.
-      cmd: Reorder some functions to avoid forward declarations.
-      winemine: Remove AboutDlgProc() as it is unused.
-      winemine: Reorder some functions to avoid forward declarations.
+      quartz: OutputPin_DeliverNewSegment() is unused so remove it.
+      winapi_test: Updated so the generated tests work.
+      winapi_test: FIELD_ALIGNMENT() is redundant so remove it.
+      winapi_test: Fix TEST_FIELD() so it correctly tests the field size.
+      winapi_test: The real tests are done at compile time so use C_ASSERT() instead of ok(). Do only one test per line so one can know exactly what went wrong.
+      winapi_test: The tests don't support WIN64 yet so disable them there.
+      winhlp32: Reorder some functions to avoid forward declarations in winhelp.c.
+      winhlp32: Make some functions static in winhelp.c.
+      ole32: Don't use the default debug channel before it has been defined.
+      winhlp32: Reorder some functions to avoid forward declarations in macro.c.
+      winhlp32: Make some functions static in macro.c.
+      setupapi: Fix the StringTableLookUpStringEx() prototype.
+      xinput1_3/tests: Add a trailing '\n' to an ok() call.
+      kernel32: Fix the sysctl() usage and the CPU detection on NetBSD.
+      configure: Check for HAL and GnuTLS even if pkg-config is not present.
+      rpcrt4/tests: Add a trailing '\n' to ok() calls.
+      widl: Add a trailing '\n' to an error() message.
+      ddrawex: Add a trailing '\n' to a Wine trace.
+      configure: Check for ESound, FreeType, GPhoto2 and SANE even if their 'xxx-config' tool is missing.
+      winhlp32: Reorder some functions to avoid forward declarations in hlpfile.c.
+      winhlp32: Make some functions static in hlpfile.c and remove HLPFILE_PointsToTwips().
 
-Frans Kool (1):
-      crypt32: Updated Dutch translations.
+G. Paul Ziemba (1):
+      ntdll: Clear IEXTEN when clearing ICANON.
 
-Ge van Geldorp (1):
-      kernel32/tests: Use shared Windows directory on TS to find regedit.exe.
+Ge van Geldorp (11):
+      ole32/tests: Work around broken Windows urlmon.dll.
+      ole32/tests: Add declarations which are not present in SDK headers.
+      comctl32/tests: Fix title bar tests for non-English locales.
+      wininet/tests: INTERNET_STATUS_CLOSING_CONNECTION and  ..._CONNECTION_CLOSED callbacks can appear after ..._REQUEST_COMPLETE.
+      mscms/tests: Pass correct device name to AssociateColorProfileWithDevice().
+      mshtml/tests: Skip a couple of tests when IE is running in Enhanced Security Configuration.
+      urlmon/tests: Skip a couple of tests when IE is running in Enhanced Security Configuration.
+      msi/tests: Opening package with relative filename sometimes succeeds on Windows.
+      rpcrt4/tests: Remove NdrVaryingArrayUnmarshall() test, it is broken on Windows.
+      user32/tests: keybd_event can send HCBT_KEYSKIPPED notifications.
+      shell32/tests: Prevent crash on XP/W2K3.
 
-Gerald Pfeifer (6):
-      comctl32: Shed off some unused parameters.
-      comctl32: Simplify DATETIME_Char.
-      comctl32: Simplify COMBOEX_Command.
-      comctl32: Simplify NATIVEFONT_Create.
-      wpp: Add missing #include <ctype.h>.
-      comctl32: Simplify fifteen functions by removing unused parameters.
+Gerald Pfeifer (2):
+      README: Make FreeBSD requirements less conservative, only requiring FreeBSD 6.3.
+      Sync documentation/README.de.
 
-Hans Leidekker (11):
-      pidgen: Fix typo.
-      include/mscat.h: Add a few declarations.
-      wintrust: Record full catalog filename in catalog info structure, not just the basename.
-      wintrust: Implement CryptCATAdminEnumCatalogFromHash.
-      wintrust: Implement CryptCATOpen and CryptCATClose.
-      wintrust: Test find handles against INVALID_HANDLE_VALUE.
-      wintrust: Implement CryptCATEnumerateMember.
-      wintrust: Implement CryptCATAdminResolveCatalogPath and CryptCATCatalogInfoFromContext.
-      wintrust: Add stub implementations of CryptCATEnumerateAttr, CryptCATEnumerateCatAttr, CryptCATGetAttrInfo, CryptCATGetCatAttrInfo and CryptCATGetMemberInfo.
-      wintrust: Add some tests.
-      wintrust: Fix message handle type.
+Hans Leidekker (19):
+      winhttp: Set last error for invalid URLs passed to WinHttpCrackUrl.
+      setupapi: Add stubs for pSetupInstallCatalog and pSetupVerifyCatalogFile.
+      sfc: Add missing exports.
+      sfc: Add a stub implementation for ordinal 3.
+      setupapi: Implement StringTableLookUpStringEx.
+      setupapi: Have each test create and destroy its own string table.
+      setupapi: Add tests for StringTableAddStringEx and StringTableLookupStringEx.
+      usp10: Improve handling of whitespace in ScriptBreak.
+      usp10: Handle CR/LF in ScriptItemize.
+      usp10: Set better visual attribute values in ScriptShape.
+      usp10: Improve some traces.
+      qmgr: Improve a couple of stubs.
+      setupapi: Add some tests for StringTableLookUpStringEx. Make them pass.
+      setupapi: Enable reuse of create_inf_file in tests.
+      setupapi: Fix resolving target path when given a section. Default to the system directory.
+      wininet: Send a content length header for all verbs other than GET.
+      shell32: Implement GUIDFromStringW.
+      wininet: Implement InternetReadFileExW.
+      wininet: Calculate the header size if needed in HttpSendRequestW.
 
-Henri Verbeet (28):
-      d3d9: Don't crash in GetFVF() if a NULL vertex declaration is set.
-      secur32: Try an EMPTY buffer if we can't find one of type TOKEN.
-      secur32: Dump the buffer descs in schan_InitializeSecurityContextW().
-      secur32: Add stubs for schannel QueryContextAttributesA() and QueryContextAttributesW().
-      secur32: Handle SECPKG_ATTR_STREAM_SIZES in schan_QueryContextAttributesW().
-      secur32: Implement schannel EncryptMessage().
-      secur32: Implement schannel DecryptMessage().
-      d3d9: Release the vertex declaration once we're done with it.
-      d3d: Make sure the device is properly released when exiting the tests.
-      wined3d: The initial value for D3DRS_POINTSIZE_MAX depends on the pointsize limit.
-      d3d9: Use a HAL device for the stateblock tests.
-      wined3d: D3DRS_POINTSIZE_MIN is initially 0.0f for d3d8.
-      d3d8: Port the d3d9 stateblock tests to d3d8.
-      wined3d: Get rid of the glname field in struct SHADER_OPCODE.
-      d3d9: Use separate codepaths for failure and NULL return values in GetVertexShader() / GetPixelShader().
-      d3d: Correct some debug levels.
-      wined3d: Handle D3DFVF_XYZW in ConvertFvfToDeclaration().
-      configure: Check for gnutls_mac_get_key_size() instead of gnutls_transport_set_errno().
-      wined3d: Make use_vs() and use_ps() work on a stateblock instead of a device.
-      wined3d: Remove an unused field from the device.
-      wined3d: Convert some BOOLs to bitfields in struct WineD3DContext.
-      wined3d: Convert some BOOLs to bitfields in struct IWineD3DDeviceImpl.
-      wined3d: Convert some BOOLs to bitfields in struct SAVEDSTATES.
-      wined3d: Use slightly nicer loops in device_map_fixed_function_samplers().
-      wined3d: Fix a few format specifiers in IWineD3DStateBlockImpl_Capture().
-      wined3d: Fix the value of HIGHEST_TRANSFORMSTATE.
-      wined3d: Convert streamSource and streamFreq to bitmaps in struct SAVEDSTATES.
-      wined3d: Convert clipplane to a bitmap in struct SAVEDSTATES.
+Henri Verbeet (60):
+      wined3d: Fix the line number for some fglrx spam.
+      wined3d: Don't bother with the GLSL info log if nobody's looking.
+      d3d: Fix the value of D3DFVF_POSITION_MASK.
+      wined3d: Handle WINED3DFVF_XYZW in get_flexible_vertex_size().
+      wined3d: Convert textures to a bitmap in struct SAVEDSTATES.
+      ntdll: Fix ExceptionAddress for FPU exceptions.
+      ntdll: Don't throw masked FPU exceptions.
+      ntdll: Add a small test for FPU exceptions.
+      wined3d: Convert transform to a bitmap in struct SAVEDSTATES.
+      wined3d: Convert renderState to a bitmap in struct SAVEDSTATES.
+      wined3d: Convert samplerState to a bitmap in struct SAVEDSTATES.
+      d3d9: Remove d3d8 enum elements from D3DTEXTURESTAGESTATETYPE.
+      wined3d: Remove unused enum elements from WINED3DTEXTURESTAGESTATETYPE.
+      d3d9: Don't test invalid texture stages.
+      ddraw: Properly handle sampler states.
+      d3d: Explicitly translate texture stage states.
+      wined3d: Renumber WINED3DTEXTURESTAGESTATETYPE enum elements.
+      wined3d: Convert textureState to a bitmap in struct SAVEDSTATES.
+      wined3d: Also apply the last sampler state.
+      wined3d: Make calling a query from the wrong context a FIXME.
+      wined3d: Simplify IWineD3DOcclusionQueryImpl_GetData().
+      wined3d: Don't delete queries from the wrong context.
+      wined3d: Remove a redundant parameter to drawPrimitive().
+      wined3d: Cleanup drawStridedFast().
+      wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData.
+      wined3d: Simplify handling of swizzled attributes.
+      wined3d: Add support for EXT_vertex_array_bgra.
+      wined3d: Enable GL_HALF_FLOAT_NV when NV_HALF_FLOAT is supported.
+      wined3d: Use GL_ALIASED_POINT_SIZE_RANGE to retrieve the max point size.
+      wined3d: Failing HeapAlloc() should be an ERR.
+      wined3d: Simplify checking if an attribute is used in loadNumberedArrays().
+      wined3d: Remove a silly check in drawStridedInstanced().
+      wined3d: Rewrite BeginStateBlock() to use CreateStateBlock() instead of duplicating the code.
+      wined3d: Remove stray tabs.
+      wined3d: Update the pixelshader when the texture type changes.
+      wined3d: Get rid of D3DINITIALIZEBASETEXTURE.
+      wined3d: Get rid of D3DCREATESHADEROBJECTINSTANCE.
+      wined3d: Fix and unify shader creation error handling.
+      dsound: Const correctness fixes.
+      wined3d: Get rid of D3DCREATERESOURCEOBJECTINSTANCE.
+      wined3d: Fix texture creation error handling.
+      wined3d: Fix surface creation error handling.
+      wined3d: Fix volume texture creation error handling.
+      wined3d: Fix cube texture creation error handling.
+      wined3d: Remove CleanDirtyBox().
+      wined3d: Remove AddDirtyBox() from the public interface.
+      wined3d: Remove AddDirtyRect() from the public interface.
+      wined3d: Get rid of D3DCREATEOBJECTINSTANCE.
+      wined3d: Fix a memory leak in CreateSwapChain() error handling.
+      dxgi: Add a stub IDXGISurface implementation.
+      d3d10core: Add a stub ID3D10Texture2D implementation.
+      wined3d: Implement a R5G6B5 to X8R8G8B8 surface format converter.
+      wined3d: Remove some comments.
+      dsound: Don't convert single samples at a time.
+      wined3d: Add an IWineD3DDeviceParent interface.
+      dxgi: Add a small test for CreateSurface().
+      d3d10core: Add a small test for CreateTexture2D().
+      d3d8: Properly test for dynamic usage in device_parent_CreateSurface().
+      d3d9: Properly test for dynamic usage in device_parent_CreateSurface().
+      ddraw: Add extern to some global variable declarations.
 
-Hervé Chanal (2):
-      shell32: A nicer icon for "folder".
-      shell32: A nicer icon for "open folder".
+Hervé Chanal (1):
+      shell32: A nicer icon for desktop.
 
-Huw Davies (1):
-      comdlg32: Use [G|S]etPropW instead of [G|S]etPropA.
+Huw Davies (12):
+      comdlg32: Update the original dialog structure rather than a temporary copy.
+      comdlg32: Use the DEVMODE and DEVNAMES directly from the PAGESETUPDLG structure.
+      comdlg32: Keep the DEVMODE's orientation member up to date.
+      comdlg32: Keep the DEVMODE's papersize member up to date.
+      comdlg32: Use a unicode dialog.
+      comdlg32: We no longer need to update the dialog struct on exit as all of the information is up to date.
+      comdlg32: If a measurement system isn't specified use the default one and update the Flags field to reflect this.
+      comdlg32: Simplify the margin initialization.
+      comdlg32: Set the margin edit controls using unicode functions.
+      comdlg32: Remove a couple of obsolete WARN()s.
+      comdlg32: Correctly rotate the margins when the paper orientation is changed.
+      comdlg32: Add an is_metric() helper function.
 
 Hwang YunSong(황윤성) (1):
-      winecfg: Updated Korean resource.
+      cryptui: New Korean resource.
 
-Jacek Caban (11):
-      mshtml: Pass window to GetCommandState and DoCommand.
-      mshtml: Release owner in nsChannel destructor.
-      mshtml: Move preferences settings to separated function.
-      cabinet: Make sure that parent directories exist when creating a new directory.
-      mshtml: Wine Gecko 0.9.0 release.
-      mshtml: Remove no longer needed set_profile.
-      mshtml: Remove no longer used node_insert_listener.
-      mshtml: Move handle_insert_comment to mutation.c.
-      mshtml: Set XPCOM_DEBUG_BREAK to 'warn' before loading Gecko.
-      mshtml: Added gecko debug channel to control Gecko logging.
-      mshtml.idl: Added HTMLStyle coclass declaration.
+Jacek Caban (13):
+      mshtml: Added IHTMLWindow2::get_location implementation.
+      mshtml: Added IDispatchEx support to HTMLLocation object.
+      mshtml: Fixed IOmNavigator::get_platform for win64 platform.
+      urlmon: Skip more tests on old IE and ignore BINDSTATUS_PROXYDETECTING notification.
+      wininet: Improve NETCON_recv over SSL implementation.
+      wininet: Use SSL_pending in NETCON_query_data_available.
+      urlmon: Added https pluggable protocol handler.
+      wininet: Make sure that we have data buffered before sending INTERNET_STATUS_REQUEST_COMPLETE notification.
+      urlmon: Call ReportProgress(BINDSTATUS_ACCEPTRANGES) in https handler.
+      urlmon: Added HttpSProtocol object tests.
+      urlmon: Ignore ReportProgress(BINDSTATUS_ACCEPTRANGES) calls.
+      urlmon: Use pluggable protocol handler for https binding.
+      urlmon: Added https binding tests.
 
-James Hawkins (1):
-      advapi32: Request the owner and group token size instead of hardcoding the value.
+Jeff Latimer (3):
+      user32: Check for NULL pData in DdeClientTransAction expecting to be passed a handle.
+      user32/tests: Add tests for DdeGetData Ascii interface.
+      user32/tests: Clarify the msgs to differentiate Unicode and ASCII in tests.
 
-Jeff Zaroyko (4):
-      iphlpapi/tests: Fix a failing test.
-      dsound: Fix a typo in convert_32_to_24.
-      dsound: Check for invalid parameter when unlocking primary buffers.
-      dsound: Check for invalid parameter when locking primary and secondary buffers.
+Juan Lang (29):
+      crypt32: Add stub for CryptMsgEncodeAndSignCTL.
+      crypt32: Add stub for CryptMsgSignCTL.
+      crypt32: Implement CryptMsgEncodeAndSignCTL on top of CryptMsgSignCTL.
+      crypt32: Implement CryptMsgSignCTL.
+      crypt32: Use specified inner content type for signed messages when it's given.
+      cryptui: Add a (empty) certificate manager dialog.
+      cryptui: Add purpose selection and column headings to certificate manager dialog.
+      cryptui: Show names of stores certificate manager dialog.
+      cryptui: Display contents of certificate store in certificate manager dialog.
+      cryptui: Refresh store display when a tab is switched or the purpose selection is changed in the certificate manager dialog.
+      cryptui: Add a (empty) advanced dialog to the certificate manager dialog.
+      cryptui: Add known usages to certificate manager dialog's advanced dialog.
+      cryptui: Allow toggling a usage in the certificate manager dialog's advanced dialog.
+      cryptui: Recall usage state from registry in certificate manager dialog's advanced dialog.
+      cryptui: Save purposes in certificate manager dialog's advanced dialog.
+      cryptui: Add saved purposes to the purpose selection in the certificate manager dialog.
+      cryptui: Refresh cert view when purpose selection is changed in the certificate manager dialog.
+      cryptui: Filter shown certs according to purpose selection in certificate manager dialog.
+      cryptui: Enable/disable controls based on selection in certificate manager dialog.
+      cryptui: Show selected certificate when requested in the certificate manager dialog.
+      cryptui: Show usages for selected cert in certificate manager dialog.
+      cryptui: Implement removing certificates from certificate manager dialog.
+      cryptui: Set appropriate radio button in CryptUIWizImport if the destination store is specified.
+      cryptui: Call CryptUIWizImport from the certificate manager dialog.
+      cryptui: Fix crash with native riched20.
+      cryptui: Improve control spacing.
+      cryptui: Don't make certificate status control disabled.
+      riched20: Add stub IOleClientSite interface.
+      shell32: Document SHFlushSFCache, and remove an unneeded fixme.
 
-Jesse Allen (1):
-      winecfg: Make virtual desktop shortcut key unique.
+Lei Zhang (1):
+      quartz: Add a filtergraph test for mpeg files.
 
-Joris Huizer (1):
-      mshtml: Increment pointer as intended.
+Markus Weiland (1):
+      dxdiaxgn: Implemented retrieval of szDeviceIdentifier property.
 
-Juan Lang (39):
-      cryptui: Add stubs for CryptUIDlgSelectStoreA/W.
-      cryptui: Add declarations for undocumented types used by CryptUIDlgSelectStoreA/W.
-      cryptui: Implement CryptUIDlgSelectStoreA on top of CryptUIDlgSelectStoreW.
-      cryptui: Add a (empty) select store dialog.
-      include: Add declaration of CryptFindLocalizedName.
-      cryptui: Add system stores to the select store dialog.
-      cryptui: Add additional stores to select store dialog.
-      cryptui: Make sure a store is selected when the user click OK in the select store dialog.
-      cryptui: Return selected store from CryptUIDlgSelectStoreW.
-      cryptui: Test mismatches between allowed and given types in CryptUIWizImport.
-      cryptui: Test importing from a store.
-      crypt32: Support add disposition CERT_STORE_ADD_NEWER_INHERIT_PROPERTIES.
-      cryptui: Use helper function for importing certificates.
-      cryptui: Inherit existing properties when importing a cert.
-      cryptui: Check for type mismatches in CryptUIWizImport.
-      cryptui: Implement importing CRLs with CryptUIWizImport.
-      cryptui: Implement importing stores in CryptUIWizImport.
-      cryptui: Implement importing CTLs in CryptUIWizImport.
-      cryptui: Use CryptQueryObject to import files in CryptUIWizImport.
-      cryptui: Add a non-operational wizard for CryptUIWizImport.
-      cryptui: Implement browsing for input file in CryptUIWizImport.
-      cryptui: Show UI rather than failing if no import source is specified.
-      cryptui: Make sure input file is not empty.
-      cryptui: Separate opening a file from importing it.
-      cryptui: Validate input file in CryptUIWizImport.
-      cryptui: Store input file as a store in the file page of CryptUIWizImport.
-      cryptui: Skip the file page in CryptUIWizImport when the import source isn't a file.
-      cryptui: Implement specifying the destination store in CryptUIWizImport.
-      cryptui: Ensure that a destination store is selected in CryptUIWizImport.
-      cryptui: Show file name and type of destination store in final page of CryptUIWizImport.
-      cryptui: Show the content type on the final page of CryptUIWizImport.
-      cryptui: Perform import when finishing the CryptUIWizImport wizard.
-      cryptui: Call CryptUIWizImport from CryptUIDlgViewCertificateW.
-      crypt32: Don't crash when querying the length of the hash of a CRL or a CTL.
-      wintrust: Fix encoding OIDs with only two components.
-      cryptui: Use an appropriate title font for the welcome and finish wizard pages.
-      cryptui: Hide the column header on the finish page of CryptUIWizImport.
-      cryptui: Add watermark image to welcome and finish pages of CryptUIWizImport.
-      cryptui: Add a header bitmap to CryptUIWizImport's interior pages.
+Michael Karcher (7):
+      ole32: Add HICON user marshalling stubs.
+      oleaut32: Implement IPropertyBag::Read proxying.
+      widl: Make write_base_type take a format char instead of a type desc ptr.
+      widl: Write struct fields as signed fields.
+      widl: Fix handling of [local] functions without [call_as].
+      widl: Don't forget conformance info on [iid_is] void pointers.
+      widl: Dereference operator in expr works on any declared pointer.
 
-Maarten Lankhorst (10):
-      winex11.drv/wined3d: Fix tsx11 calling convention.
-      gdi32/winex11.drv: Change all gdi/opengl operations to use CDECL calling convention.
-      user32/winex11.drv: Change all user32 operations to use CDECL.
-      kernel32: Change all functions to use CDECL.
-      msi: Add missing CDECL to cabinet functions.
-      includes: Fix EDITSTREAM definition for win64.
-      riched20: Fix cast for dwCookie.
-      ntdll: Print the expected and found assembly versions if no compatible version is found.
-      ntdll: Make the loader process relocations correctly for x86_64.
-      dsound: Correct amount of buffers used for playing.
+Michael Stefaniuc (82):
+      dpnet: Remove superfluous casts.
+      browseui: Remove superfluous casts from/to void pointers.
+      ddraw/tests: Simplify a pointer increment.
+      ddraw/tests: Remove superfluous casts.
+      mshtml: Add the Romanian translation.
+      mshtml: Fix a dialog size for the Pt and Si translations.
+      appwiz.cpl: Add Romanian translation.
+      include: Change RPC_STATUS from long to LONG for Win64 compatibility.
+      include: Change unsigned long to ULONG in rpcdce.h for Win64 compatibility.
+      include: Use LONG instead of long in richedit.h.
+      include: Change long to LONG in d3dtypes.h for Win64 compatibility.
+      include: Change RPC_LENGTH to ULONG for Win64 compatibility.
+      msi: Change MSIHANDLE to ULONG for Win64 compatibility.
+      include: Change long to LONG in olectl.h for Win64 compatibility.
+      comctl32/tests: Do not cast the IDC_* defines to a LPSTR.
+      include: Use ULONG instead of unsigned long in ipexport.h.
+      include: sspi.h: Use the Win types as per MSDN.
+      include: Change the rest of sspi.h to use LONG/ULONG for Win64 compatibility.
+      include: Change mapix.h to use ULONG for Win64 compatibility.
+      include: Change  twain.h to use LONG/ULONG for Win64 compatibility.
+      include: Change mapi.h to use ULONG for Win64 compatibility.
+      imm32: Remove superfluous casts.
+      fusion: Remove superfluous casts.
+      qcap: Remove superfluous casts.
+      cmdlgtst: Remove superfluous casts.
+      amstream: Remove superfluous casts.
+      dmband: Remove superfluous casts.
+      dmcompos: Remove superfluous casts.
+      winecfg: Remove superfluous casts.
+      mapi32: Remove superfluous casts.
+      ddrawex: Remove redundant NULL check before HeapFree (Smatch).
+      include: Change MUSIC_TIME from long to LONG for Win64 compatibility.
+      include: Use LONG instead of long in dmusici.h for Win64 compatibility.
+      include: Use LONG instead of long in msacmdrv.h.
+      include: Change to ULONG in dmerror.h for Win64 compatibility.
+      include: Change to LONG/ULONG in xcmc.h for Win64 compatibility.
+      include: Use LONG instead of long in dmusics.h for Win64 compatibility.
+      include: Change from long to LONG in the remaining DirectMusic headers.
+      widl: Move "inline" right after the storage class specifier.
+      crypt32/tests: Remove some superfluous pointer casts.
+      dsound: Remove superfluous pointer casts.
+      mpr: Remove superfluous pointer casts.
+      msvfw32: Remove superfluous pointer casts.
+      include: Use ULONG in rpcdcep.h for Win64 compatibility.
+      include: Use LONG in vfw.h for Win64 compatibility.
+      dxgi: Remove superfluous pointer casts.
+      include: Replace unsigned long with unsigned int in winerror.h.
+      wsock32: Remove superfluous pointer casts.
+      devenum: Remove superfluous pointer casts.
+      wldap32: Remove superfluous pointer casts.
+      dmloader: Remove superfluous pointer casts.
+      rsaenh: Remove superfluous pointer casts.
+      dmscript: Remove superfluous pointer casts.
+      dmstyle: Remove superfluous pointer casts.
+      uxtheme: Remove superfluous pointer casts.
+      advapi32/tests: Remove superfluous pointer casts.
+      wintrust/tests: Remove superfluous pointer casts.
+      user32/tests: Do not cast the (IDC|IDI|RT)_* defines to LPSTR.
+      version: Remove superfluous pointer casts.
+      dmusic: Remove superfluous pointer casts.
+      dmime: Remove superfluous pointer casts.
+      comdlg32: Fix typo in #pragma line in cdlg_Ro.rc.
+      wineps.drv: Add the Romanian translation.
+      setupapi: Add the Romanian translation.
+      comdlg32: Remove superfluous pointer casts.
+      ddraw: Remove superfluous pointer casts.
+      ddrawex: Remove superfluous pointer casts.
+      include: Change to LONG/ULONG in fci.h for Win64 compatibility.
+      include: Change to LONG/ULONG in fdi.h for Win64 compatibility.
+      gdiplus: Remove superfluous pointer casts.
+      dswave: Remove superfluous pointer casts.
+      d3d8: Remove superfluous pointer casts.
+      cryptnet: Remove superfluous pointer casts.
+      mciseq: Remove superfluous pointer casts.
+      msi/tests: Remove superfluous pointer casts.
+      msrle32: Remove superfluous pointer casts.
+      msi: Remove superfluous pointer casts.
+      regedit: Remove superfluous pointer casts.
+      dxdiagn: Remove superfluous pointer casts.
+      winejack.drv: Remove superflouous pointer casts.
+      dplayx: Remove superfluous pointer casts.
+      riched20: Fix a typo (stray address of operator).
 
-Michael Karcher (4):
-      include: Add missing local attributes to shobjidl.idl.
-      include: Fix out string type from LPCSTR to LPSTR in shobjidl.idl.
-      include: Add a missing [unique] to shobjidl.idl.
-      widl: Recurse search for need of delegation.
+Nikolay Sivov (13):
+      oleaut32: Add PICTYPE_NONE and PICTYPE_UNINITIALIZED to IPicture_get_Attributes.
+      oleaut32: Check pointer in IPicture_get_Attributes.
+      ole32: Fix return value for DefaultHandler_GetMiscStatus.
+      oleaut32: Check pointer in IPicture::get_Handle.
+      oleaut32: Check pointer in IPicture::get_Type.
+      oleaut32/tests: Fix copy/paste typo in test output.
+      ole32: Fix some comment typos.
+      ole32: Some tests for IMoniker::IsRunning with NULL args.
+      kernel32: Implemented GetErrorMode().
+      ntdll: Check pointers in NtAccessCheck to prevent access violation.
+      kernel32/tests: Some todo tests for CompareStringA and lstrcmpi.
+      advapi32/tests: Test for enumeration order preservation of reg keys.
+      advapi32: Added SaferCreateLevel stub.
 
-Michael Stefaniuc (6):
-      msvcrt/tests: Use the C standard for multiline strings.
-      opengl32: make_opengl: Do not add explicit casts of function pointers to void pointers.
-      dplayx/tests: Do not explicitly cast LPVOID function arguments.
-      dplayx/tests: Fix typo.
-      cabinet: Don't cast the return value of PF[CD]I_ALLOC; those are void pointers.
-      dnsapi/tests: Remove superfluous casts.
+Paul Bryan Roberts (1):
+      libwine: Avoid writing to repository during install.
 
-Mike Ruprecht (1):
-      wininet/tests: Add test for FtpFindFirstFile.
+Paul Vriens (24):
+      d3d8/tests: Fix a test failure on VMware and VirtualBox.
+      shdocvw/tests: Fix test failures on XP SP2 and higher.
+      shell32/tests: Fix some test failures on Vista and W2K8.
+      advapi32/tests: Fix two test failures on Vista and W2K8.
+      shell32/tests: Fix some test failures on Win9x and NT4.
+      shell32/tests: Change some tests with respect to Vista.
+      shell32/tests: Fix some test failures on Vista.
+      shell32/tests: Use a different name for the return value.
+      shell32/tests: Fix some test failures on NT4 (FO_MOVE).
+      shell32/tests: Fix some test failures on NT4 (FO_COPY).
+      setupapi/tests: Skip some tests if we don't have enough rights.
+      msi/tests: Skip some tests if we don't have enough rights.
+      shell32/tests: Fix test failures on Win9x, NT4 and Vista (FO_RENAME).
+      wintrust/tests: Add a few tests.
+      wintrust: Fix removing a catalog file.
+      shell32/tests: Fix the last test failure on Win9x.
+      shell32/tests: Fix some errors on NT4 (FO_DELETE).
+      shell32/tests: Fix some test failures on Vista.
+      shell32/tests: Fix remaining test failures on NT4.
+      shell32/tests: Fix test failures on Vista.
+      shell32/tests: Skip a test on Vista.
+      crypt32/tests: Make tests run on some Win9x boxes again.
+      setupapi/tests: Fix some test failures on win9x.
+      ddrawex/tests: Don't crash on win9x.
 
-Nick Burns (3):
-      wined3d: Fix a couple of typos in wined3d_gl.h
-      wined3d: Fix glReadPixels call from read_from_framebuffer.
-      ddraw: Fix surface version setting.
+Pavel Troller (1):
+      ntdll: Fix serial.c for linux-2.6.28.
 
-Nikolay Sivov (4):
-      ole32: Fix return value for IDataObject_GetData.
-      gdiplus: Stub for GdipResetPenTransform.
-      gdiplus: Stub for GdipScalePenTransform.
-      gdiplus: Stub for GdipRotateLineTransform.
+Peter Urbanec (1):
+      wintab32: Check for NULL before using context.
 
-Paul TBBle Hampson (4):
-      winhttp: Fix resolution-failure TRACE in netconn_resolve to use input WCHAR* rather than already-freed CHAR*.
-      winhttp/tests: Add tests for WinHttpCrackUrl port number handling.
-      winhttp: Correctly parse specified ports in WinHttpCrackUrl.
-      winhttp: Don't try and call a null callback.
+Rich Ercolani (1):
+      winefile: Fix NULL pointer deref in read_tree.
 
-Paul Vriens (3):
-      shell32/tests: Cope with Vista's behavior.
-      winmm/tests: Fix a test failure on NT4 and W2K.
-      shell32/tests: Fix a few test failures on Vista and W2K8.
+Rico Schüller (2):
+      wined3d: Add a checkGLcall() after glReadBuffer.
+      setupapi: Fix if condition in SetupEnumInfSectionsA/W.
 
-Reece Dunn (1):
-      dsound: Correct the dsound fraglen calculations.
+Rob Shearman (22):
+      widl: Add aliased types to the typelib for statements in the library block if the typedef itself doesn't need to be added.
+      widl: Do the consistency checks on interfaces after parsing is complete.
+      widl: Move funcs and stmts fields from type_t structure to module_details and function_details.
+      widl: Access array type properties through accessors instead of getting them directly.
+      widl: Add new type_is_alias and type_get_real_type helper functions.
+      widl: Move duptype and alias to parser.y.
+      widl: Move creation of module type into a separate function, type_new_module and give it a special FC type.
+      widl: Don't store typelib kind information in the type structure.
+      widl: Add function for getting the interfaces defined by a coclass type.
+      widl: Move the ifaces field of the type_t structure to coclass details.
+      widl: Add a new function, type_array_get_element.
+      widl: Add a new function, type_pointer_get_ref.
+      widl: Add a new function, type_iface_get_inherit.
+      widl: Add new function, type_iface_get_stmts.
+      widl: Replace uses of get_func_return_type with type_function_get_rettype.
+      widl: Determine the type of an array entirely at code generation time instead of at parse time.
+      widl: Make the case of messages output by warning and error functions consistent.
+      oleaut32: Dump MSFT format typeinfos upon loading.
+      ntoskrnl: Free allocated buffers on exit from wine_ntoskrnl_main_loop.
+      user32: Free allocated memory in USER_unload_driver.
+      oleaut32: Test the return value of the remote IWidget_StructArgs call.
+      rpcrt4: Unmarshalling functions should always set fMustAlloc when allocating memory.
 
-Ricardo Filipe (4):
-      setupapi: Add stubs for CM_Locate_DevNodeA/W.
-      cfgmgr32: Forward CM_Locate_DevNodeA/W to setupapi.
-      oleacc: Fix LresultFromObject return type.
-      oleacc: Add stub for AccessibleObjectFromPoint.
+Stefan Dösinger (21):
+      ddraw: Add a test for IDirectDrawSurface::GetDC.
+      ddraw: Reject IDirectDraw3 QI in ddraw.dll.
+      include: Fix a typo in ddraw.h.
+      include: Fix a IDirectDrawSurface4 method prototype.
+      include: Fix the EnumOverlayZOrders prototype.
+      ddrawex: Implement a wrapper around IDirectDraw.
+      ddrawex: Start some tests.
+      ddraw[ex]: Show a caps handling difference.
+      ddrawex: Add a refcount test.
+      ddrawex: Create a surface wrapper.
+      ddrawex: Implement a GetDC special behavior Internet Explorer depends on.
+      ddrawex: Make the GetDC test more generic.
+      ddrawex: Add a test for the permanent DC function.
+      wined3d: Remove the pixelshader fogstart/fogend optimization.
+      wined3d: Use the ARB fog option in ARB_fragment_program shaders.
+      wined3d: Move fogdensity and fogcolor to the fragment pipeline.
+      wined3d: Remove the apply_pshader_fog state handler.
+      wined3d: Split the remains of state_fog.
+      wined3d: Avoid hooking non-fog glEnable/glDisable calls.
+      d3d9: Properly set AutoRestoreDisplayMode.
+      d3d9: Use D3DFOG_* constants instead of plain integers.
 
-Rico Schüller (4):
-      wined3d: Fix compilation for Windows build.
-      d3d9/tests: Don't create a Null-shader in d3d9, it will crash.
-      ddraw/tests: Fis some ok() lines in alpha_test().
-      ddraw/tests: Fix alpha_test and offscreen_test on geforce 8800 on XP.
+Stefan Leichter (2):
+      shell32: Add stub for ordinal 526.
+      shell32: Rename ordinal 525 to SHFlushSFCache.
 
-Rob Shearman (18):
-      mshtml: Check for the container's doc being NULL in nsTooltipListener_OnShowTooltip and nsTooltipListener_OnHideTooltip.
-      widl: Structures and arrays with pointers should be complex when generating code for 64-bit platforms.
-      include: Include winuser.h from generated oleidl.h header.
-      widl: Follow aliases in check_remoting_fields so that the fields for the type are correctly enumerated.
-      widl: Hide the details of where arguments, fields, values and cases are stored in the type_t structure for functions, structures, enums and unions.
-      widl: Store the type-specific information in a union in the type_t structure.
-      widl: Don't create a temporary variable in the t_ident rule.
-      widl: Create a separate type_t object for each structure declaration or defintion.
-      widl: Write the typelib based on the statement list generated in the typelib_t object instead of using hooks in the parser code.
-      widl: Write the generated file containing IID, DIID, CLSID and LIBID data based on the parsed list of statements instead of using hooks in the parser code.
-      widl: Write the local stubs file based on the parsed list of statements, rather than using hooks in the parser code.
-      widl: Generate header files from the parse tree instead of using hooks in the parser.
-      widl: Don't add NULL pointer checks in generated code for user types.
-      widl: Remove duplicate pointer handling code in get_struct_type.
-      winecoreaudio: Remove some unnecessary text conversions by using snprintfW instead of snprintf.
-      comctl32: Add names for now documented toolbar messages.
-      configure.ac: Fix test for libresolv on Mac OS 10.4.x.
-      widl: Use is_string_type instead of is_attr(..., ATTR_STRING) for detecting strings.
+Stefan Reimer (1):
+      loader: Fix build with gcc-4.3 and ssp.
 
-Roderick Colenbrander (1):
-      d3d9: Relax color matching in bumpmap test.
+Vincent Pelletier (1):
+      wined3d: Make WARN about oversized texture output surface and texture sizes.
 
-Vincent Pelletier (3):
-      user32: Fix SPI_GETMOUSESPEED and SPI_SETMOUSESPEED.
-      d3d9: Set IDirect3DDevice9Impl_GetVertexShader return value to NULL on error.
-      wined3d: Detect intel 945 GM.
+Vincent Povirk (3):
+      start.exe: Don't use the NO_UI flag when invoked with /unix.
+      explorer: Quiet a few fixmes.
+      winex11: Select StructureNotifyMask input on all windows.
 
-Vitaliy Margolen (9):
-      winmm: Stub joyConfigChanged.
-      dinput: Make find_joydevs re-entrant.
-      dinput: snprintf zero-terminates string no need to do it explicitly.
-      dinput: Warn if failed to open device.
-      dinput: Replace perror with more appropriate ERR and WARN.
-      dinput: Fix usage of HeapReAlloc.
-      dinput: Fix remaining formatting of the find_joydevs().
-      dxdiagn: Fix DxDiag_DirectXFiles container to have child sub containers.
-      dxdiagn: Add dxdiagn.dll to DxDiag_DirectXFiles container. Create fake dll for it as well.
-
-Wolfgang Walter (1):
-      ntdll: Fix set_XOff and set_XOn.
+Vitaliy Margolen (2):
+      dinput: Allow for holes in device status structure.
+      dinput: Copy device data up to maximum available bytes.
 
 --
 Alexandre Julliard
diff --git a/VERSION b/VERSION
index 16aafb3..1958c38 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.1.12
+Wine version 1.1.13
diff --git a/configure b/configure
index 3f0e4bd..cc46abe 100755
--- a/configure
+++ b/configure
Binary files differ
