diff --git a/ANNOUNCE b/ANNOUNCE
index f5ae4bb..c6c9bf3 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,9 +1,4 @@
-This is release 1.0-rc1 of Wine, a free implementation of Windows on Unix.
-
-This is the first release candidate for Wine 1.0. Please give it a
-good testing to help us make 1.0 as good as possible. In particular
-please help us look for apps that used to work, but don't now. See
-http://wiki.winehq.org/PlatinumRegressionHunt for details.
+This is release 1.0-rc2 of Wine, a free implementation of Windows on Unix.
 
 What's new in this release (see below for details):
   - Bug fixes only, we are in code freeze.
@@ -12,8 +7,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-1.0-rc1.tar.bz2
-  http://prdownloads.sourceforge.net/wine/wine-1.0-rc1.tar.bz2
+  http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.0-rc2.tar.bz2
+  http://prdownloads.sourceforge.net/wine/wine-1.0-rc2.tar.bz2
 
 Binary packages for various distributions will be available from:
 
@@ -35,305 +30,435 @@
 
 ----------------------------------------------------------------
 
-Bugs fixed in 1.0-rc1:
+Bugs fixed in 1.0-rc2:
 
-   3164  Missing XP Theme toolbars in app toolbar for Metatrader4
-   3362  Picasa Movie feature does nothing
-   3426  WinGizmo does not download magic number code
-   3792  PrinterPorts does not exist in win.ini
-   4644  Intuit Quicken 2006 will not run after installation
-   4969  IDA Pro Trial 5.0 doesn't run; VkKeyScan failure?
-   6538  Adobe After Effects 7 installer crashes upon startup
-   6911  MetaTrader 4.0 icons missing
-   6947  CSpy/Tab: Tabs are in the wrong order
-   7024  VB program using Tabstrip control produces invalid property under wine
-   7179  Enhanced metafile: record EMR_EXTSELECTCLIPRGN not handled
-   7800  Grand Theft Auto Series with a gamepad plugged in the protagonistwill start running ahead immedeately
-   8069  FAR manager 1.70(build 2087): keeps printing "fixme:curses:WCCURSES_GetEvents Ooch. somebody beat us", and doesn't work.
-   8115  MyScribe loads but doesn't go past the login screen (Centos 4.4)
-   8125  Marratech 6.1 crashes on start
-   8615  Medieval 2: Total War crashes when loading game scenario.
-   8783  USB serial ports do not work
-   8919  CSS Tab Designer 2 lets wine crash
-   9178  "hello world" dos program hangs
-   9356  Serial communication not working since wine-0.9.33
-   9419  Autocad 2002 crashes after 2 mins of running
-   9588  Dragon Naturally Speaking 7 dragonpad corrupted left few chars
-   9729  gdi/x11 related changes cause lockups in various win32 gui apps
-   9770  Graphical glitches in Children of the Nile demo
-  10046  GPSMapedit crashes when editing label on a map
-  10056  False error on serial port read
-  10431  GPSMapEdit: Unimplemented function gdiplus.dll.GdipGetImageDimension
-  10573  dlls/kernel32/tests/comm.c test fails on systems with serial ports
-  10627  child window position is not updated
-  10756  Dragon Naturally Speaking 9 training feedback lags behind until you pause
-  10757  Dragon Naturally Speaking 9 can't control mic volume
-  10794  LEGO Racers (and the demo) crashes when launced outside virtual desktop
-  10847  Dragon NaturallySpeaking 9.0 Preferred sound level unstable
-  11072  Gun Metal thinks POV2 Up is permanently set
-  11306  software built with Visual C++ software library crashes
-  11339  serial.c:wait_on() sanity checks seem to be too strict
-  11420  service control manager API problem: name of named objects might differ (client vs. service process)
-  11559  Blood 2: The Chosen (version 1.0) - D3D crash
-  11644  Crashes in the dinput device.c and joystick.c tests...
-  12052  Flatout 2, dinput_test: crashes if joystick axis mapping is enabled, different joystick sensitivity
-  12064  SkySorter halts while starting
-  12165  Wrong height on 1st list item, on eMule Plus preferences.
-  12166  Richedit "word wrap" refresh
-  12373  Nothing is rendered in Crimsonland - blank black screen
-  12395  NeverWinterNights 2 DM Toolkit crashes on 0.9.59
-  12429  Gamepad buttons not working in PES 6 (ProEvolutionSoccer)
-  12431  programs window moves down when clicking in a menu
-  12597  3d studio MAX 9 trial installer crash
-  12613  Adobe Acrobat Pro 7 trial version does not install
-  12680  jack driver produces buffer underruns (regression)
-  12831  wineserver use ~34% cpu permanently.
-  12833  no hide button in FlashFxp
-  12857  Guitar Pro 5 window jumps by the size of the window decoration
-  12866  wineserver assertion failure when TMG7 installer completes
-  12885  application sees IPv6 enabled, even if whole system has it disabled / blacklisted
-  12892  Winedbg crashes on a simple mingw binary
-  12895  Winedbg can't return the value of a double
-  12907  Text not totally visible in the Display tab (winecfg)
-  12913  Regression with D3DTBLEND_MODULATE
-  12922  Black screen in all direct'x 3d Apps
-  12924  Children of the nile demo crashes
-  12928  Microsoft Office 2003 won't install in Wine 0.9.61
-  12972  Neverwinter Nights upgrade crashes
-  13016  Steel Panthers crashes between missions in campaign
-  13074  Large filesize in winefile shown as negative size
+   2493  Multi-select listview: Shift-arrow up only selects top two items
+   3003  Random crash during gameplay in Alien vs Predator Gold
+   3270  Problem with minimized top-level windows
+   3747  Motorhead fails to start with message: DirectInput CreateDevice joystick failed
+   4848  Meetro 0.94 produces a page fault at start time
+   4860  Sun Java plugin installation broken, plugin doesn't work properly in Firefox
+   4873  Sun's appletviewer can't load applets
+   5001  Rhapsody 3.1 quits immediately
+   5024  Thief: Deadly Shadows crashes:page fault on read access to 0x0000040c
+   5059  Firefox displays background of  banner ad in wrong location
+   5094  bitmap creation problem
+   5115  Editing inline lines in BeyondCompare2 broken again
+   5302  Arena Chess GUI (V1.99 Beta 2) freezes solid when menu drops down
+   5844  tray minimize
+   5901  EU Playonline Viewer Crash
+   5926  Wine does not provide an implementation of winhlp32.exe
+   5948  Star Trek: Armada does not install
+   5968  Richedit crashes when adding a chr(10) or chr(13)
+   6046  text display gets a white screen
+   6050  Interstate'76 install should play sound but plays loud noise instead
+   6797  Quite some apps (like Zuma and Intuit QuickBooks Pro installer) start with a complete white screen (shlwapi/urlmon bug)
+   6806  Shareaza 2.3.0.0 crashes when loading
+   7050  No shaders in Guild Wars
+   7125  Wine reports not enough free memory to apps
+   7153  Epson Print CD only prints background picture
+   7189  VS.NET 2005 fails to install
+   7317  Cannot use high resolutions in Heroes V
+   7332  Versacheck Business & Enterprise 2007 autorun crashes on startup
+   7370  FalconAF black screen and freezes
+   7460  crashes when running Civilization III setup.exe
+   7521  err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair
+   7620  winedbg fails with Unhandled page fault
+   8004  Verge3 Does Not Start "vid_bpp(24) not a standard value"
+   8205  Microsoft Flight Simulator X Trial fails to Install
+   8225  Fireworks 8 trial hangs on splash screen
+   8303  Beatware mobile designer 1.0 hangs on startup
+   8307  Onimusha 3: Demon Siege Demo: Fails to start
+   8326  Text in Blitz3DDemo is garbled
+   8417  AssaultTech1: Transparencies don't work
+   8479  p4win installer does not terminate
+   8491  Library tab in winecfg crashes winecfg
+   8636  implement GDI32.GetTextExtentExPointI
+   8767  CreateDIBSection driver loading race
+   8788  Unrecognized vertex shader version 0
+   8845  Halo screen usage is messed up when in Virtual Desktop mode
+   8891  Trackmania United won't start with a joystick plugged in.
+   8898  Run Time Error "445": Object doesn't support this action in Europa Knowledgebase
+   8909  Half life 2 crashes when loading scenes with a Cmeshdx8 error
+   9211  Klipfolio 4 installer fails
+   9215  joystick travel error
+   9324  Mp3Tag: crash when editing the "Year" field in some cases
+   9376  Trendyflash Site Builder displays blank window
+   9812  Bad some czech characters in older coursewares
+   9910  Interaction delay in menus while navigating (CNC: The First Decade CD games)
+  10151  "make test" crashes in riched32/tests/editor.c
+  10283  Outcast : game and demo don't start.
+  10323  Can not get Hellgate London Demo to install
+  10422  Dota-Client: Does not run
+  10542  Bug in TEXT_Ellipsify when returning modstr
+  10599  dlls/oleaut32/tests/vartest.c fails
+  10785  Wine 0.9.51 crash when launching Slingplayer v1.5 - gdiplus.GdipDrawImageRectI not implemented
+  10854  Codeblocks - black box in the about window
+  10882  sPlan 6.0: Illegal Floating Point Operation
+  10969  Strange deadzones with Logitech Cordless Rumblepad
+  10977  GG-client: Insides of windows are not drawn
+  11103  Launching any application w/ current git tree results in advapi32 Unhandled page fault
+  11123  Firefox 1.5 welcome text rendered poorly
+  11172  no web cache
+  11613  Adobe Premiere Pro 1, 1.5 crash on startup with unimplemented function SHELL32.dll.SHGetFolderPathAndSubDirA
+  11742  Small .net 1.1 app (FastMD5 1.3) fails to start up
+  11806  regedit creates bogus hex:(1) value instead of empty ""
+  11893  GdipBitmapUnLockBit does not accept null rect pointer
+  11954  Google Sketchup, Google bug splat never finish sending report.
+  12055  Sacrifice Demo: rendering problem - black figures
+  12094  mouse side buttons do not work in wine when mapped to gtk/qt standard
+  12168  Supreme Commander: Bloom renderer makes screen flicker
+  12194  Some DDraw games flicker the screen
+  12195  AussaultTech1: Broken fonts/cursor
+  12221  Jaman player won't install
+  12230  Palringo: Alpha images aren't displayed correctly
+  12263  Sketchup Cannot initialize OpenGL - ChoosePixelFormat fails
+  12268  Steam update fail at 26%
+  12306  Firefox 3 beta shows one-pixel-high black line when rendering some images
+  12358  Demo scene application crashes at start up
+  12361  Exact Audio Copy 0.99pb4 crashes in winemenubuilder when creating png icon
+  12412  Klingon honor guard: fails to start if opengl set as render device
+  12568  edit area in PSPad is badly rendrawn when changing tabs by mouse
+  12643  Analog sticks don't work well with trackmania
+  12674  [shell] Miranda IM tray icon malfunction
+  12693  statusbar doubletab problem
+  12780  wine iexplore http://winehq.org doesn't work
+  12813  XMLSpy 2007 refuses to install
+  12884  MessageBox " is not a valid integer value in Visual Trading
+  12890  Menu doesn't render in Thief The Dark Project in readtex mode
+  12902  IHP Kitchen: Unhandled page fault on read access when starting
+  12935  Audiosurf crashes with a page fault on read access to a NULL pointer
+  12942  Facewound doesn't run on 64bit
+  12967  MS Office 97 will not install since 0.9.60 possibly 0.9.59
+  12968  MS Visual Studio V6 setup error 258 since 0.9.58
+  12979  Trucks&Trains game error in quartz.dll
+  12988  Microsoft Office Communicator 2005 Trial installer does nothing when you click 'next'
+  13052  Thief II: The Metal Age 1.18 crashes when trying to play back video
+  13055  settler 3 x64 error
+  13090  winecfg crashes if you click the "Test Sound" button while using the ALSA driver
+  13093  cepstral speach stops working when reading a second time
+  13109  Error during install after compile from source
+  13113  wineprefixcreate has multiplied messages in new WINEPREFIX
+  13121  Sipru Installation Error
+  13144  enabling 3d acceleration in-game crashes Jedi Knight: Dark Forces II
+  13166  system tray icons show up twice
+  13168  Update the README before the 1.0 release
+  13170  Wine freezes on audio test (in winecfg)
+  13176  Fails to compile
+  13192  AutoCAD 2008 Trial fails to install
+  13228  Blockland crashes when returning focus
+  13240  Running "explorer" should open an "explorer" window
+  13246  Emperor - Rise of the middle kingdom shows name <Unknown> for each network adapter
+  13250  majesty exits due to page fault
+  13264  Warblade Demo: crashes on startup, maybe regression
+  13269  ntdll/tests/exception crashes
+  13311  winetest always fails on shell32:shelllink, but "make test" doesn't
+  13337  Legacy 5 Crash doing backup
+  13343  Microsoft Office 2003 won't install
 
 ----------------------------------------------------------------
 
-Changes since 0.9.61:
+Changes since 1.0-rc1:
 
-Aleksey Bragin (1):
-      atl: Remove freeing of an invalid pointer.
+Alam Arias (1):
+      include: Modify UNREFERENCED macros to cast to void.
 
-Alexander Dorofeyev (10):
-      ddraw/tests: Add test for deprecated render states in d3d7.
-      ddraw: Move handling of D3DRENDERSTATE_TEXTUREHANDLE from d3ddevice7 to d3ddevice3.
-      ddraw: Move handling of D3DRENDERSTATE_TEXTUREMAPBLEND from d3ddevice2 to d3ddevice3.
-      ddraw: Fix some texture blending modes.
-      ddraw: Add full implementation of IDirect3DDevice7_Load.
-      ddraw: Return DDERR_NOCOLORKEY when there is no colorkey.
-      ddraw/tests: Add tests for IDirect3DDevice7_Load.
-      wined3d: Use source colorkey when passed KEYSRC or KEYSRCOVERRIDE.
-      ddraw/tests: Add KEYSRCOVERRIDE test in p8_primary_test.
-      wined3d: Set alpha to index even when there is no palette.
+Alexander Dorofeyev (4):
+      wined3d: glFlush when updating front buffer.
+      wined3d: Activate context for the right target in surface_blt_to_drawable.
+      ddraw: Fix some code unprotected by ddraw lock.
+      wined3d: Only copy front buffer to screen in gdi RealizePalette.
 
-Alexandre Julliard (22):
-      spoolsv: Improve the service stub so that it can be started and stopped.
-      services: Use the correct invalid handle value for the control pipe.
-      services: Fixed the result check for the control mutex wait.
-      winevdm: Move the DOS memory range check to not trigger for Win16 apps.
-      winex11: The XIM callback is called with the X11 lock held.
-      preloader: Silence the warning for the low 64k.
-      Revert "quartz: Clean up pullpin code."
-      server: Don't touch the users count when a system process switches desktops.
-      shell32: Set the correct default for shell folders relative to the windows directory.
-      kernel32: Set the USERPROFILE and ALLUSERSPROFILE environment variables based on the ProfileList registry keys.
-      ntdll: Serial with ReadIntervalTimeout set to MAXDWORD should return immediately even if nothing was read.
-      wineconsole: Don't use a Win32 wait on a Unix file descriptor.
-      winedos: Only read input from the stdin handle if it is a console.
-      winedos: Make sure that the main message queue exists before the DOS thread starts.
-      winedos: Print better diagnostics when a DOS app fails to start.
-      ntdll: Always set VTIME to 0 to avoid blocking, don't try to set it from the comm timeouts.
-      ntdll: Don't consider a 0-byte read from a serial port as a broken pipe.
-      ntdll: Ignore failures to retrieve serial status for events we are not interested in.
-      user32: The client rectangle is in screen coordinates for the initial WM_NCCALCSIZE.
-      services: Send the service name in the control requests.
-      winefile: Fix the printf formats for file sizes.
-      gdi32: Add missing braces in EMFDRV_SelectPalette.
+Alexander Nicolaysen Sørnes (4):
+      regedit: Add Export option to context menu.
+      regedit: Improve dialog layout.
+      regedit: Allow modifying values of root keys.
+      regedit: Set selected key name as default favourite name.
 
-Andrew Talbot (9):
-      dbghelp: Include port.h for possible alternative to strtoull().
-      wininet: Remove unused variables.
-      inetcomm: Remove unused variables.
-      wnaspi32: Remove unused variables.
-      cabinet: Indentation fix.
-      advapi32: Avoid giving variables same name as library functions.
-      hlink: Remove unneeded address-of operators from function names.
-      d3d8: Dangling pointers fix.
-      ddraw: Indentation fix.
+Alexandre Julliard (44):
+      winedos: Don't disable long filename functions on NT versions.
+      server: When moving/resizing a window crop the update region against the new rectangle of the parents.
+      server: Also crop the update region of children when moving a window.
+      server: Crop the invalidate region against the rectangles of all parents.
+      user32: Invalidate the DCE in SetWindowPos before we attempt to move the window bits.
+      winex11: Create all the GL drawables using the gdi_display to avoid synchronization issues.
+      winex11: Create a dummy parent window for composite child windows to avoid using the root.
+      Revert "winealsa: Remove calls to deprecated functions."
+      gdi32: Make sure the DC is up-to-date before accessing the pixel format.
+      winex11: Silence a harmless error.
+      configure: Improve the libcrypto checks.
+      winex11: When re-creating a client window check the new visual against the current one instead of the default one.
+      winhelp.exe: Renamed to winhlp32.exe.
+      kernel32: Add a builtin 16-bit winhelp.exe.
+      kernel32: Move the wineboot event wait so that 16-bit processes wait too.
+      winemenubuilder: Copy the icon data before modifying it, resources are read-only.
+      regedit: Fix editing and exporting of zero-size strings.
+      explorer: Use a different return value to indicate that the x11 system tray is not available, so that x11drv can return errors too.
+      wineprefixcreate: Avoid redundant update on initial wineprefix creation.
+      wineprefixcreate: Added a deprecation warning.
+      wgl: Don't call ExtEscape if we don't have a GL context.
+      user32: Moved the class extra bytes check to catch uninitialised data sooner.
+      ntdll/tests: Make sure to clear the DF flag on return from the exception.
+      ntdll: Move signal unmasking to make sure injected code runs on the correct stack.
+      user32: Support creating cursors and icons from DIB section bitmaps.
+      user32: Add an ASCII window procedure for scrollbars.
+      kernel32: Fix the profile file sharing modes.
+      kernel32: Add some test cases for profile file sharing modes.
+      comctl32: Fix extending a multiple listview selection.
+      configure: Added an ERROR_WITH macro for packages that we can't do without.
+      configure: Make the lack of FreeType an error, and add a --without option for it.
+      configure: Upgrade notices to warnings for some important libraries.
+      kernel32: Mutex names are case sensitive.
+      kernel32: Event names are case sensitive.
+      kernel32: Semaphore names are case sensitive.
+      kernel32: Waitable timer names are case sensitive.
+      kernel32: File mapping names are case sensitive.
+      kernel32: Don't require write access on profile file when only reading.
+      user32: Return reasonable values in GetWindowPlacement for the desktop window.
+      gdi32: Perform coordinate transformations using doubles instead of floats to avoid precision loss.
+      gdi32: Use atan2 to compute angles in WidenPath without triggering floating point errors.
+      wineinstall: Remove a lot of no longer needed code.
+      winex11: Add support for X11 mouse buttons 8 and 9.
+      README: Updated.
 
-Aric Stewart (1):
-      shdocvw: Do not do our iexplore.exe registration if native Internet Explorer is detected to be present.
+Andrej Sinicyn (5):
+      cmd: German translation.
+      taskmgr: German translation.
+      wineconsole: German translation.
+      reg: German translation.
+      uninstaller: German translation.
 
-Detlef Riekenberg (1):
-      winspool: Set PrinterPorts for win3.x/win9.x compatibility.
+Andrew Talbot (17):
+      wined3d: Remove test for value of unsigned variable being less than zero.
+      dsound: Memory allocation sizes fix.
+      wineoss.drv: Memory allocation sizes fix.
+      qmgr: Memory allocation size fix.
+      ddraw: Memory allocation size fix.
+      secur32: Memory allocation size fix.
+      cabinet: Remove order-of-evaluation dependencies.
+      advapi32: Remove unused file-static variables.
+      mshtml: Remove unused function.
+      cryptnet: Remove unused function.
+      shell32: Remove unused file-static variable.
+      user32: Remove unused function.
+      rsaenh: Remove unused file-static variable.
+      ws2_32: Remove unused function.
+      wined3d: Remove unneeded "extern" from function definition.
+      dplayx: Remove unneeded "extern" from function definitions.
+      comctl32: Indentation fix.
+
+Austin English (1):
+      wine.inf: Add a fake dll for sensapi.dll.
+
+Ben Mayhew (1):
+      wined3d: Only display Missing vbo streams fixme once.
+
+ByeongSik Jeon (3):
+      imm32: Add the missing is_himc_ime_unicode() check.
+      imm32: Add the all GCS_* value check.
+      comdlg32: Updated Korean translation.
+
+Dan Kegel (5):
+      d3d9: shademode_test: Increase slop in color comparison.
+      kernel32: comm.c: increase time slop.
+      ws2_32/tests: Cannot reliably detect bad hostnames in "modern" internet.
+      d3d9/tests: Add missing skip().
+      d3d9/tests: Another wee bit of slop.
 
 Dmitry Timoshkov (8):
-      winex11.drv: Set the size of returned DEVMODE to least common one as XP does.
-      user32: Set the size of returned DEVMODE to least common one as XP does.
-      winecfg: Fix coordinates and sizes of controls in French Graphics dialog.
-      winoldap.mod: Wait until the 32-bit process starts up.
-      kernel32: Print in the trace pid and tid of the created process.
-      gdi32: Set offPalEntries member of EMREOF to what XP sets it to.
-      gdi32: More carefully compare EMF records in tests.
-      gdi32: Implement EMFDRV_SelectPalette.
+      user32: Make sure that we send proper notifications in all cases.
+      shell32: Fix calling convention of LPFNOFN, don't use static buffers.
+      user32: Add tests for painting minimized/clipped windows.
+      gdi32: Add more font substitution tests, make them pass under Wine.
+      cabinet: Fix the regression caused by 4046075462c00f4479f185d1c0514584ff851223.
+      user32: Make ChangeDisplaySettingsA/W reset dmDriverExtra to 0 like XP and Vista do.
+      kernel32: Update locale info for Esperanto.
+      gdi32: Slightly relax EMF record comparisons allowing rounding errors.
 
-Dylan Smith (3):
-      richedit: Removed useless code.
-      richedit: The wrong bits were cleared from wBorders in PARAFORMAT2.
-      wordpad: Empty the richedit undo buffer on creation.
+Eric Pouech (2):
+      winedbg: Fix the path traversal.
+      dbghelp: Protect dwarf parsing against NULL function names.
 
-Francois Gouget (11):
-      ole32: Fix spelling of pCapabilities.
-      fusion: Fix compilation on systems that don't support nameless unions.
-      gdi32/tests: Add a trailing '\n' to a couple of ok() calls.
-      msxml3/tests: Add a trailing '\n' to an ok() call.
-      d3d9/tests: Fix compilation on systems that don't support nameless unions.
-      cryptdlg: Fix the GetFriendlyNameOfCert[AW] call convention.
-      mshtml: gcc 2.95 does not allow an array of undefined dimension in a struct. So fix dispex_static_data_t accordingly.
-      Assorted spelling fixes.
-      Add a comment warning when a table must be kept sorted for later use with bsearch().
-      winex11: Standardize a stub trace and add a trailing '\n'.
-      Assorted spelling fixes.
+Francois Gouget (5):
+      ddraw/tests: Fix compilation on systems that don't support nameless unions.
+      ole32/tests: Add a trailing '\n' to ok() calls.
+      advapi32/tests: Remove a stray reference to CryptReleaseContext(). This gets the test to run again on Win95.
+      wininet/tests: Remove a stray reference to InternetSetStatusCallback().
+      wininet/tests: Get the tests running again on Win98.
 
-Frans Kool (1):
-      winhelp: Added missing Dutch translations.
+Hans Leidekker (7):
+      wininet: Don't overwrite content length header in HttpSendRequest.
+      wininet: Make a test pass on IE6.
+      wininet: Partial implementation of InternetGet/SetCookieEx.
+      wininet: HTTP_BuildProxyRequestUrl returns a pointer.
+      wininet: Implement INTERNET_OPTION_USER_AGENT for InternetQueryOption.
+      wininet: INTERNET_STATUS_REQUEST_COMPLETE callback must supply a handle.
+      wininet: Fix buffer size query for HttpQueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF).
 
-Gerald Pfeifer (2):
-      winhelp: Remove extraneous positiveness check for unsigned variable in WINHELP_HandleTextMouse().
-      winecfg: Add variable initialization in get_registry_version().
+Huw Davies (5):
+      gdiplus: Add some stubs for region functions.
+      gdiplus: Stubs for GdipGetDC and GdipReleaseDC.
+      gdiplus: Stub for GdipGetClip.
+      gdi32: Move a couple of TRACEs to the beginning of functions.
+      gdiplus: Add some notes about the format of the data blob returned by GdipGetRegionData.
 
-Guy Albertelli (1):
-      listview: Return correct value from WM_NOTIFYFORMAT with test.
+Hwang YunSong(황윤성) (2):
+      shell32: Updated Korean Resource.
+      regedit: Updated Korean resource.
 
-Hans Leidekker (2):
-      wininet: Don't add the user agent header until HttpSendRequest is called.
-      wininet: Deal with bogus accept types array passed into HttpOpenRequestA.
-
-Hwang YunSong(황윤성 (2):
-      winhelp: Updated Korean resource.
-      winecfg: Updated Korean resource.
+Igor Tarasov (1):
+      comctl32: Fix statusbar text alignment bug.
 
 Jacek Caban (3):
-      mshtml: Added DispHTMLSelectElement declaration.
-      mshtml: Added more script tests.
-      mshtml: Added IMG element tests.
+      urlmon: Correctly handle file URLs with '|' instead of ':' after drive letter.
+      urlmon: Better error handling in file protocol.
+      mshtml: Fixed a typo.
 
-James Hawkins (5):
-      msi: Fix a typo.
-      fusion: Fix the type of an assembly struct member.
-      fusion: Add the missing assembly table structs.
-      fusion: The Strings stream can be without a #.
-      msi: Use the handle to the treeview item if the item text is not returned.
+James Hawkins (27):
+      msi: Test the ScreenX/Y properties.
+      msi: Convert string variables to ints when appropriate.
+      ntdll: Fix a few failing tests in win2k3.
+      msi: Copy the assembly file directly if it's not compressed.
+      msi: Set the OutOfDiskSpace property.
+      msi: Create the MSI hidden window on demand.
+      ntdll: Fix a few tests that fail in win2k3.
+      ntdll: Fix a test that fails in win2k3.
+      gdi32: Fix two tests that fail in win2k3.
+      user32: Fix a few tests that fail in win2k3.
+      msi: Don't enable a feature's components if that feature is disabled.
+      msi: Reset the hasLocalFeature flag when updating components.
+      kernel32: Fix a debugger test that fails in win2k3.
+      kernel32: Remove a test that fails on all platforms.
+      msi: Check that the file key is valid before installing the assembly.
+      hhctrl.ocx: Check the filename param before dereferencing it.
+      ntdll: Remove NULL checks for attr, which has already been dereferenced.
+      user32: Fix the BSM_ALL_RECIPS test flag.
+      setupapi: Fix a few test failures in win2k3.
+      msi: Search the last used source if the cabinet to extract cannot be found.
+      secur32: Fix a few tests that fail in win2k3.
+      user32: Fix a test that fails in almost all reports.
+      mlang: Only return the locale language name if no country name exists.
+      mlang: Fix all test failures for NT+ platforms.
+      kernel32: Don't test the invalid locale 0 if it is enumerated.
+      mshtml: Fix a few test failures in win2k3.
+      opengl32: Trace a test result that fails inconsistently across different drivers.
 
-Jens Albretsen (40):
-      xcopy: Added Danish translation.
-      winecfg: Added Danish translation.
-      cmd: Added Danish translation.
-      net: Added Danish translation.
-      avifil32: Added Danish translation.
-      credui: Added Danish translation.
-      wineps.drv: Added Danish translation.
-      comdlg: Added missing Danish translations.
-      shlwapi: Added Danish translation.
-      wordpad: Added Danish translation.
-      shell32: Added missing Danish translations.
-      oleaut32: Renamed oleaut32_Dk.rc to oleaut32_Da.rc.
-      iccvid: Danish translation.
-      localui: Danish translation.
-      gphoto2: Danish translation.
-      mpr: Danish translation.
-      mshtml: Danish translation.
-      msrle: Danish translation.
-      msi: Danish translation.
-      msacm: Danish translation.
-      hhctrl.ocx: Danish translation.
-      localspl: Danish translation.
-      msvidc32: Danish translation.
-      sane.ds: Danish translation.
-      oledlg: Danish translation.
-      regedit: Danish translation.
-      cmdlgtst: Danish translation.
-      progman: Danish translation.
-      winspool.drv: Danish translation.
-      clock: Danish spelling fixes.
-      notepad: Danish spelling fixes.
-      wldap32: Danish translation.
-      winmm: Danish translation.
-      shdoclc: Danish translation.
-      wininet: Danish translation.
-      oleview: Danish translation.
-      reg: Danish translation.
-      msvfw32: Danish translation.
-      setupapi: Danish translation.
-      serialui: Danish translation.
+Jens Albretsen (9):
+      wineps.drv: Danish spelling fixes.
+      user32: Danish spelling fixes.
+      winhelp: Danish translation additions, fixes.
+      winemine: Danish translation.
+      winefile: Danish translation.
+      uninstaller: Danish translation.
+      wineboot: Danish translation.
+      taskmgr: Danish translation.
+      view: Danish translation.
 
-John Klehm (2):
-      winex11.drv: Wintab packet serial numbers are passed via WPARAM.
-      winex11.drv: Move hardware tablet proximity into x11 layer.
+Jeremy White (2):
+      winebrowser: Route default url handlers to /usr/bin/open on Mac OS X.
+      ntdll/tests: Only test the readcount for a read below 0x10000 if  the return code indicates a partial copy result.
 
-Kai Blin (3):
-      secur32: Remove test for sft->Reserved8 field.
-      ws2_32: On Win98, SO_MAX_MSG_SIZE is 65527, not 65507.
-      secur32: Fix ntlm tests on Vista.
+Jonathan Ernst (1):
+      winhelp: Updated French translation.
 
-Kirill K. Smirnov (2):
-      winhelp: Updated Russian translation.
-      winhelp: Pointer coordinates are relative to richedit text window, not the main window.
+Juan Lang (3):
+      snmpapi: Test and correct SnmpUtilOidNCmp when Oid lengths don't match.
+      snmpapi: Test and correct SnmpUtilOidNCmp when count is less than Oid length.
+      iphlpapi: Set the adapter's description to its name in GetAdaptersInfo.
 
-Kusanagi Kouichi (1):
-      imm32: Avoid false FIXMEs.
+Jörg Höhle (1):
+      dsound: Fix off by 1 heap error in DSOUND_MixerVol.
 
-Lei Zhang (1):
-      wininet: Handle NULL input for FindCloseUrlCache.
+Kai Blin (1):
+      ws2_32: Test for invalid hostnames again.
 
-Maarten Lankhorst (14):
-      winex11.drv: Fix a compiler warning.
-      netapi32: Make the tests pass under XP that enforces a strict password policy.
-      gdi32: Make mapping test slightly less strict so it passes on windows XP.
-      winmm: Make mixer test less strict so it passes with SoundMAX drivers on XP.
-      netapi32: Fix test crash occuring when NetWkstaUserGetInfo fails.
-      winetest: Fix CreateProcess so that debugger tests run without timing out.
-      winetest: Fix CreateProcess so that debugger tests run without timing out.
-      wininet: Ignore INTERNET_STATUS_DETECTING_PROXY messages in the http test.
-      rpcrt4: Fix ndr_marshall test failures.
-      ntdll: Fix some exception tests to pass on Windows.
-      ntdll: Fix file test to not free memory allocated on the stack.
-      kernel32: Fix process tests to pass in Windows.
-      kernel32: Fix temporary path test.
-      winealsa: Remove calls to deprecated functions.
+Ken Thomases (1):
+      winex11: Bias MapVirtualKeyEx(MAPVK_VSC_TO_VK) against numpad vkeys.
+
+Lei Zhang (5):
+      quartz: Check input in MediaControl_GetState.
+      explorer: Allow explorer with no arguments to run winefile.
+      wine.inf: Open xml files using winebrowser.
+      mshtml: Added ProxyEnable / ProxyServer handling.
+      wininet: Send https scheme to proxy server when appropriate.
+
+Maarten Lankhorst (11):
+      quartz: Don't return a pin in filesource when there is none.
+      quartz: Silence a fixme.
+      quartz: Reset time when rejecting sample in the mpeg splitter.
+      ntdll: Give earlier notify to valgrind that HeapFree is trying to free some memory.
+      quartz: Don't free memory twice in null renderer.
+      quartz: Do timekeeping in the avi decoder.
+      quartz: Initialize some uninitialized variables in the video renderer.
+      winmm: Use HeapAlloc in the wave test instead of using strdup.
+      msacm32.drv: Check for message type before comparing handles.
+      include: Update aviriff header to use the right alignment.
+      winmm: Fix valgrind warnings on exit.
 
 Marcus Meissner (1):
-      widl: Mark non-returning functions as noreturn.
+      server: Remove superflous empty region allocation.
+
+Markus Weiland (1):
+      dxdiagn: Implemented OS version properties for DXDiagSystemInfoContainer.
+
+Michael Karcher (3):
+      oleaut32: Cache localised number chars.
+      ole32/tests: Do not call Release if CoCreateInstance failed.
+      ole32/tests: Test StringFromGUID2.
 
 Michael Stefaniuc (1):
-      ws2_32: Fix test output string to match the test.
+      shdocvw: Plug memory leak introduced in 1.0-rc1 (Smatch).
 
-Nikolay Sivov (1):
-      gdiplus: Let GdipDrawArcI use float args version.
+Mikołaj Zalewski (2):
+      Update Polish translation.
+      Make Swedish use SUBLANG_NEUTRAL.
 
-Paul Vriens (6):
-      setupapi/tests: Skip some tests on win9x.
-      setupapi/tests: Clean up properly on win9x.
-      services.exe: Move a trace to a more appropriate place.
-      advapi32/tests: Add another test.
-      services.exe: Spelling fixes.
-      crypt32/tests: Cleanup registry after tests.
+Nikolay Sivov (12):
+      gdi32: Avoid null pointer dereference in CreateDIBSection.
+      gdiplus: ImageFlags enum defined.
+      gdiplus: GdipGetImageFlags simple stub with test.
+      gdiplus: Added GdipLoadImageFromFileICM (no icm yet).
+      gdiplus: Added GdipCreateFromHWNDICM (no icm yet) with test.
+      gdiplus: GdipCreateFontFromLogfontA: no reason to put CHAR to WCHAR array.
+      gdiplus: Check count argument in GdipTransformMatrixPoints.
+      gdiplus: Check count argument in GdipVectorTransformMatrixPoints.
+      gdiplus: Make GdipSetPenDashArray return OutOfMemory on (count <= 0).
+      gdiplus: Added GdipAddPathRectangle with tests.
+      user32: Correct termination of returning string in Text_Ellipsify.
+      gdiplus: GdipBitmapLockBits should allow a NULL rect argument.
 
-Rob Shearman (3):
-      winetest: Detect if an unhandled exception occurred in a child process and print an appropriate message.
-      rpcrt4: Add better traces for the server test.
-      crypt32: Add stub for CertVerifyCTLUsage.
+Paul Vriens (11):
+      kernel32/tests: Skip tests if codepage is not installed/available.
+      ntdll/tests: Free library after use.
+      ntdll/tests: Skip test when we don't have enough rights.
+      janitorial: Close COM after tests.
+      regedit: Sync Dutch resource with latest changes.
+      shell32/tests: Fix test when running on Wine.
+      shell32/tests: SHGetPathFromIDListA returns a BOOL not a HRESULT.
+      setupapi/tests: Remove a duplicate function call.
+      setupapi/tests: Skip some tests if we are on win9x.
+      setupapi/tests: Fix typo.
+      setupapi/tests: Fix typos.
 
-Roderick Colenbrander (2):
-      wined3d: At the start of RemoveContextFromArray numContexts is decreased by 1, the loop which loops through the whole array doesn't take this into account.
-      wined3d: Allow stencil support when it wasn't requested on broken drivers.
+Petr Dlouhý (1):
+      shdocvw: Partial implementation of WebBrowser_put_RegisterAsBrowser and WebBrowser_get_RegisterAsBrowser.
+
+Rob Shearman (1):
+      wininet: Fix a typo in is_basic_auth_value.
+
+Roderick Colenbrander (1):
+      wined3d: Request a WGL depth stencil capable pixel format by default until we have proper SetDepthStencilSurface support.
+
+Tomasz Jezierski (1):
+      comctl32: Conformance test for multiple selection in listbox.
 
 Vitaliy Margolen (6):
-      mshtml: Don't overwrite file types that could be changed by user.
-      comctl32: tab: Fix drawing of the icons.
-      dinput: Remove redundant variable.
-      dinput: Limit number of axes in a different way - map all extra axes to -1.
-      dinput: Ignore events from extra joystick buttons.
-      dinput: Default value for unassigned POVs should be -1.
-
-Vitaly Lipatov (1):
-      wineboot: Add missed short option -u.
+      dmime: Update dx version to 9.0c.
+      dxdiagn: Update dx version to 9.0c.
+      dinput: Implement GetDeviceStatus.
+      dinput: Clamp joystick position values to min-max range.
+      winecfg: Remove mostly unused properties.h.
+      wineserver: Add support for long command line options.
 
 --
 Alexandre Julliard
diff --git a/ChangeLog b/ChangeLog
index fb36446..4d8d84b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1022 @@
+2008-05-23  Alexandre Julliard <julliard@winehq.org>
+
+	* README:
+	README: Updated.
+
+2008-05-23  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/opengl32/tests/opengl.c:
+	opengl32: Trace a test result that fails inconsistently across different drivers.
+
+	* dlls/mshtml/tests/htmldoc.c:
+	mshtml: Fix a few test failures in win2k3.
+
+	* dlls/kernel32/tests/locale.c:
+	kernel32: Don't test the invalid locale 0 if it is enumerated.
+
+2008-05-08  Alam Arias <Alam.GBC@gmail.com>
+
+	* include/winnt.h:
+	include: Modify UNREFERENCED macros to cast to void.
+
+2008-05-23  Markus Weiland <kde@graph-ix.net>
+
+	* dlls/dxdiagn/provider.c:
+	dxdiagn: Implemented OS version properties for DXDiagSystemInfoContainer.
+
+2008-05-22  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/comctl32/listview.c, dlls/comctl32/toolbar.c:
+	comctl32: Indentation fix.
+
+2008-05-22  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/winmm/lolvldrv.c:
+	winmm: Fix valgrind warnings on exit.
+
+2008-05-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* include/aviriff.h:
+	include: Update aviriff header to use the right alignment.
+
+2008-05-22  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/msacm32.drv/wavemap.c:
+	msacm32.drv: Check for message type before comparing handles.
+	Fixes a valgrind warning.
+
+	* dlls/winmm/tests/wave.c:
+	winmm: Use HeapAlloc in the wave test instead of using strdup.
+
+2008-05-22  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/mouse.c:
+	winex11: Add support for X11 mouse buttons 8 and 9.
+
+	* tools/wineinstall:
+	wineinstall: Remove a lot of no longer needed code.
+
+	* dlls/gdi32/path.c:
+	gdi32: Use atan2 to compute angles in WidenPath without triggering floating
+	point errors.
+
+	* dlls/gdi32/bitblt.c, dlls/gdi32/dc.c, dlls/gdi32/enhmetafile.c,
+	  dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h,
+	  dlls/gdi32/mapping.c, dlls/gdi32/path.c, dlls/gdi32/region.c:
+	gdi32: Perform coordinate transformations using doubles instead of floats to
+	avoid precision loss.
+
+	* dlls/user32/winpos.c:
+	user32: Return reasonable values in GetWindowPlacement for the desktop window.
+
+2008-05-21  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/mlang/tests/mlang.c:
+	mlang: Fix all test failures for NT+ platforms.
+
+	* dlls/mlang/mlang.c, dlls/mlang/tests/Makefile.in,
+	  dlls/mlang/tests/mlang.c:
+	mlang: Only return the locale language name if no country name exists.
+
+2008-05-21  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* server/main.c, server/wineserver.man.in:
+	wineserver: Add support for long command line options.
+
+2008-05-22  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/profile.c, dlls/kernel32/tests/profile.c:
+	kernel32: Don't require write access on profile file when only reading.
+
+2008-05-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/quartz/videorenderer.c:
+	quartz: Initialize some uninitialized variables in the video renderer.
+
+	* dlls/quartz/avidec.c:
+	quartz: Do timekeeping in the avi decoder.
+	Fixes the timestamps generated.
+
+	* dlls/quartz/nullrenderer.c:
+	quartz: Don't free memory twice in null renderer.
+	_Release already frees it.
+
+	* dlls/ntdll/heap.c:
+	ntdll: Give earlier notify to valgrind that HeapFree is trying to free some
+	memory.
+
+2008-05-21  Lei Zhang <thestig@google.com>
+
+	* dlls/wininet/http.c:
+	wininet: Send https scheme to proxy server when appropriate.
+
+	* dlls/mshtml/nsembed.c:
+	mshtml: Added ProxyEnable / ProxyServer handling.
+
+2008-05-22  Francois Gouget <fgouget@free.fr>
+
+	* dlls/wininet/tests/urlcache.c:
+	wininet/tests: Get the tests running again on Win98.
+
+	* dlls/wininet/tests/http.c:
+	wininet/tests: Remove a stray reference to InternetSetStatusCallback().
+
+	* dlls/advapi32/tests/crypt.c:
+	advapi32/tests: Remove a stray reference to CryptReleaseContext(). This gets
+	the test to run again on Win95.
+
+	* dlls/ole32/tests/compobj.c:
+	ole32/tests: Add a trailing '\n' to ok() calls.
+
+2008-05-21  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/user32/tests/listbox.c:
+	user32: Fix a test that fails in almost all reports.
+
+	* dlls/secur32/tests/schannel.c:
+	secur32: Fix a few tests that fail in win2k3.
+
+	* dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
+	msi: Search the last used source if the cabinet to extract cannot be found.
+
+2008-05-22  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>
+
+	* programs/regedit/framewnd.c:
+	regedit: Set selected key name as default favourite name.
+
+2008-05-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>
+
+	* programs/regedit/framewnd.c:
+	regedit: Allow modifying values of root keys.
+
+2008-05-21  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dplayx/dplobby.c:
+	dplayx: Remove unneeded "extern" from function definitions.
+
+	* dlls/wined3d/surface.c:
+	wined3d: Remove unneeded "extern" from function definition.
+
+	* dlls/ws2_32/socket.c:
+	ws2_32: Remove unused function.
+
+2008-05-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/tests/virtual.c, dlls/kernel32/virtual.c:
+	kernel32: File mapping names are case sensitive.
+
+	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c:
+	kernel32: Waitable timer names are case sensitive.
+
+	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c:
+	kernel32: Semaphore names are case sensitive.
+
+	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c:
+	kernel32: Event names are case sensitive.
+
+	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c:
+	kernel32: Mutex names are case sensitive.
+
+2008-05-21  Nikolay Sivov <bunglehead@gmail.com>
+
+	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
+	gdiplus: GdipBitmapLockBits should allow a NULL rect argument.
+
+	* dlls/user32/text.c:
+	user32: Correct termination of returning string in Text_Ellipsify.
+
+2008-05-21  Jeremy White <jwhite@codeweavers.com>
+
+	* dlls/ntdll/tests/info.c:
+	ntdll/tests: Only test the readcount for a read below 0x10000 if  the return
+	code indicates a partial copy result.
+
+	* programs/winebrowser/main.c:
+	winebrowser: Route default url handlers to /usr/bin/open on Mac OS X.
+
+2008-05-21  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/setupapi/tests/devinst.c:
+	setupapi/tests: Fix typos.
+
+	* dlls/setupapi/tests/devinst.c:
+	setupapi/tests: Fix typo.
+
+	* dlls/setupapi/tests/devinst.c:
+	setupapi/tests: Skip some tests if we are on win9x.
+
+	* dlls/setupapi/tests/devinst.c:
+	setupapi/tests: Remove a duplicate function call.
+
+2008-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/gdi32/tests/metafile.c:
+	gdi32: Slightly relax EMF record comparisons allowing rounding errors.
+
+2008-05-21  Alexandre Julliard <julliard@winehq.org>
+
+	* configure, configure.ac:
+	configure: Upgrade notices to warnings for some important libraries.
+
+	* configure, configure.ac:
+	configure: Make the lack of FreeType an error, and add a --without option for it.
+
+	* aclocal.m4, configure, configure.ac:
+	configure: Added an ERROR_WITH macro for packages that we can't do without.
+
+2008-05-19  Tomasz Jezierski <developers@tefnet.pl>
+
+	* dlls/comctl32/tests/listview.c:
+	comctl32: Conformance test for multiple selection in listbox.
+
+2008-05-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/comctl32/listview.c:
+	comctl32: Fix extending a multiple listview selection.
+
+2008-05-16  Ken Thomases <ken@codeweavers.com>
+
+	* dlls/user32/tests/input.c, dlls/winex11.drv/keyboard.c:
+	winex11: Bias MapVirtualKeyEx(MAPVK_VSC_TO_VK) against numpad vkeys.
+	The scan codes for the numeric keypad keys and those for the arrow keys and
+	keys like Home, End, etc. often match (ignoring the extended key bit).
+	However, if you map from one of those scan codes to a vkey, Windows reliably
+	prefers the non-numpad vkey.
+
+2008-05-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/kernel32/tests/profile.c:
+	kernel32: Add some test cases for profile file sharing modes.
+	Based on a patch by Louis Lenders.
+
+	* dlls/kernel32/profile.c:
+	kernel32: Fix the profile file sharing modes.
+	Based on a patch by Louis Lenders.
+
+	* dlls/user32/scroll.c, dlls/user32/tests/class.c, dlls/user32/winproc.c:
+	user32: Add an ASCII window procedure for scrollbars.
+
+2008-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/kernel32/nls/eox.nls:
+	kernel32: Update locale info for Esperanto.
+
+2008-05-21  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
+	user32: Support creating cursors and icons from DIB section bitmaps.
+
+2008-05-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>
+
+	* programs/regedit/Ko.rc:
+	regedit: Updated Korean resource.
+
+2008-05-20  Dan Kegel <dank@kegel.com>
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9/tests: Another wee bit of slop.
+
+2008-05-20  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/setupapi/tests/devinst.c:
+	setupapi: Fix a few test failures in win2k3.
+
+	* dlls/user32/tests/broadcast.c:
+	user32: Fix the BSM_ALL_RECIPS test flag.
+
+2008-05-20  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/rsaenh/aes.c:
+	rsaenh: Remove unused file-static variable.
+
+	* dlls/user32/message.c:
+	user32: Remove unused function.
+
+	* dlls/shell32/shellole.c:
+	shell32: Remove unused file-static variable.
+
+2008-05-20  Juan Lang <juan.lang@gmail.com>
+
+	* dlls/iphlpapi/iphlpapi_main.c:
+	iphlpapi: Set the adapter's description to its name in GetAdaptersInfo.
+
+2008-05-20  Francois Gouget <fgouget@free.fr>
+
+	* dlls/ddraw/tests/d3d.c:
+	ddraw/tests: Fix compilation on systems that don't support nameless unions.
+
+2008-05-20  Jörg Höhle <hoehle@users.sourceforge.net>
+
+	* dlls/dsound/mixer.c:
+	dsound: Fix off by 1 heap error in DSOUND_MixerVol.
+
+2008-05-20  Michael Karcher <wine@mkarcher.dialup.fu-berlin.de>
+
+	* dlls/ole32/tests/compobj.c:
+	ole32/tests: Test StringFromGUID2.
+
+	* dlls/ole32/tests/compobj.c:
+	ole32/tests: Do not call Release if CoCreateInstance failed.
+
+2008-05-20  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/shell32/tests/shelllink.c:
+	shell32/tests: SHGetPathFromIDListA returns a BOOL not a HRESULT.
+
+2008-05-20  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/ntdll/virtual.c:
+	ntdll: Remove NULL checks for attr, which has already been dereferenced.
+
+	* dlls/hhctrl.ocx/hhctrl.c:
+	hhctrl.ocx: Check the filename param before dereferencing it.
+
+	* dlls/msi/action.c:
+	msi: Check that the file key is valid before installing the assembly.
+
+	* dlls/kernel32/tests/process.c:
+	kernel32: Remove a test that fails on all platforms.
+
+2008-05-19  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/cryptnet/cryptnet_main.c:
+	cryptnet: Remove unused function.
+
+	* dlls/mshtml/txtrange.c:
+	mshtml: Remove unused function.
+
+	* dlls/advapi32/service.c:
+	advapi32: Remove unused file-static variables.
+
+2008-05-20  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/loader.c:
+	ntdll: Move signal unmasking to make sure injected code runs on the correct
+	stack.
+
+2008-05-19  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/ntdll/tests/exception.c:
+	ntdll/tests: Make sure to clear the DF flag on return from the exception.
+
+2008-05-19  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/shell32/tests/shelllink.c:
+	shell32/tests: Fix test when running on Wine.
+
+	* programs/regedit/Nl.rc:
+	regedit: Sync Dutch resource with latest changes.
+
+	* dlls/quartz/tests/filtergraph.c, dlls/quartz/tests/memallocator.c,
+	  dlls/quartz/tests/misc.c, dlls/quartz/tests/referenceclock.c,
+	  dlls/quartz/tests/videorenderer.c, dlls/shell32/tests/string.c,
+	  dlls/shlwapi/tests/string.c:
+	janitorial: Close COM after tests.
+
+2008-05-19  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/user32/class.c:
+	user32: Moved the class extra bytes check to catch uninitialised data sooner.
+
+2008-05-18  Roderick Colenbrander <thunderbird2k@gmx.net>
+
+	* dlls/wined3d/context.c:
+	wined3d: Request a WGL depth stencil capable pixel format by default until we
+	have proper SetDepthStencilSurface support.
+
+2008-05-16  Juan Lang <juan.lang@gmail.com>
+
+	* dlls/snmpapi/main.c, dlls/snmpapi/tests/util.c:
+	snmpapi: Test and correct SnmpUtilOidNCmp when count is less than Oid length.
+
+	* dlls/snmpapi/main.c, dlls/snmpapi/tests/util.c:
+	snmpapi: Test and correct SnmpUtilOidNCmp when Oid lengths don't match.
+
+2008-05-15  Kai Blin <kai.blin@gmail.com>
+
+	* dlls/ws2_32/tests/sock.c:
+	ws2_32: Test for invalid hostnames again.
+
+2008-05-15  Michael Karcher <wine@mkarcher.dialup.fu-berlin.de>
+
+	* dlls/oleaut32/variant.c:
+	oleaut32: Cache localised number chars.
+
+2008-05-19  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/ntdll/tests/port.c:
+	ntdll/tests: Skip test when we don't have enough rights.
+
+	* dlls/ntdll/tests/port.c:
+	ntdll/tests: Free library after use.
+
+2008-05-19  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/kernel32/tests/debugger.c:
+	kernel32: Fix a debugger test that fails in win2k3.
+
+2008-05-16  Lei Zhang <thestig@google.com>
+
+	* tools/wine.inf.in:
+	wine.inf: Open xml files using winebrowser.
+
+2008-05-15  Mikołaj Zalewski <mikolaj@zalewski.pl>
+
+	* dlls/avifil32/avifile_Sv.rc, dlls/comctl32/comctl_Sv.rc,
+	  dlls/comdlg32/cdlg_Sv.rc, dlls/credui/credui_Sv.rc,
+	  dlls/crypt32/crypt32_Sv.rc, dlls/gphoto2.ds/gphoto2_Sv.rc,
+	  dlls/hhctrl.ocx/Sv.rc, dlls/iccvid/iccvid_Sv.rc,
+	  dlls/localspl/spl_Sv.rc, dlls/localui/ui_Sv.rc, dlls/mpr/mpr_Sv.rc,
+	  dlls/msacm32/msacm_Sv.rc, dlls/mshtml/Sv.rc, dlls/msi/msi_Sv.rc,
+	  dlls/msrle32/msrle_Sv.rc, dlls/msvfw32/msvfw32_Sv.rc,
+	  dlls/msvidc32/msvidc32_Sv.rc, dlls/oleaut32/oleaut32_Sv.rc,
+	  dlls/oledlg/oledlg_Sv.rc, dlls/sane.ds/sane_Sv.rc,
+	  dlls/serialui/Sv.rc, dlls/setupapi/Sv.rc, dlls/shdoclc/Sv.rc,
+	  dlls/shell32/shell32_Sv.rc, dlls/shlwapi/shlwapi_Sv.rc,
+	  dlls/user32/resources/user32_Sv.rc, dlls/wineps.drv/wps_Sv.rc,
+	  dlls/wininet/wininet_Sv.rc, dlls/winspool.drv/Sv.rc,
+	  dlls/wldap32/wldap32_Sv.rc, programs/clock/Sv.rc,
+	  programs/notepad/Sv.rc, programs/uninstaller/Sv.rc,
+	  programs/wineboot/wineboot_Sv.rc, programs/winecfg/Sv.rc,
+	  programs/wineconsole/wineconsole_Sv.rc, programs/winefile/Sv.rc,
+	  programs/winhlp32/Sv.rc:
+	Make Swedish use SUBLANG_NEUTRAL.
+
+2008-05-18  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* programs/winecfg/audio.c, programs/winecfg/drivedetect.c,
+	  programs/winecfg/main.c, programs/winecfg/properties.h,
+	  programs/winecfg/winecfg.h:
+	winecfg: Remove mostly unused properties.h.
+
+2008-05-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>
+
+	* programs/regedit/En.rc, programs/regedit/No.rc:
+	regedit: Improve dialog layout.
+
+2008-05-18  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
+	wininet: Fix buffer size query for HttpQueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF).
+
+2008-05-16  Lei Zhang <thestig@google.com>
+
+	* programs/explorer/explorer.c:
+	explorer: Allow explorer with no arguments to run winefile.
+
+2008-05-19  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/msi/helpers.c:
+	msi: Reset the hasLocalFeature flag when updating components.
+
+	* dlls/msi/action.c, dlls/msi/tests/install.c:
+	msi: Don't enable a feature's components if that feature is disabled.
+
+	* dlls/user32/tests/broadcast.c:
+	user32: Fix a few tests that fail in win2k3.
+
+	* dlls/gdi32/tests/font.c:
+	gdi32: Fix two tests that fail in win2k3.
+
+2008-05-17  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>
+
+	* programs/regedit/En.rc, programs/regedit/No.rc,
+	  programs/regedit/framewnd.c, programs/regedit/resource.h:
+	regedit: Add Export option to context menu.
+
+2008-05-18  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/sysparams.c, dlls/user32/tests/monitor.c:
+	user32: Make ChangeDisplaySettingsA/W reset dmDriverExtra to 0 like XP and
+	Vista do.
+
+2008-05-18  Eric Pouech <eric.pouech@orange.fr>
+
+	* dlls/dbghelp/dwarf.c:
+	dbghelp: Protect dwarf parsing against NULL function names.
+
+2008-05-16  Dan Kegel <dank@kegel.com>
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9/tests: Add missing skip().
+
+2008-05-16  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
+	wininet: INTERNET_STATUS_REQUEST_COMPLETE callback must supply a handle.
+
+2008-05-15  Rob Shearman <rob@codeweavers.com>
+
+	* dlls/wininet/http.c:
+	wininet: Fix a typo in is_basic_auth_value.
+	This fixes basic authentication when the server uses a realm string.
+
+2008-05-15  Huw Davies <huw@codeweavers.com>
+
+	* dlls/gdiplus/region.c:
+	gdiplus: Add some notes about the format of the data blob returned by
+	GdipGetRegionData.
+
+2008-05-15  Mikołaj Zalewski <mikolaj@zalewski.pl>
+
+	* dlls/shell32/shell32_Pl.rc, programs/start/Pl.rc,
+	  programs/winecfg/Pl.rc, programs/winhlp32/Pl.rc:
+	Update Polish translation.
+
+2008-05-15  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/cabinet/fdi.c:
+	cabinet: Fix the regression caused by 4046075462c00f4479f185d1c0514584ff851223.
+
+2008-05-14  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/ntdll/tests/exception.c:
+	ntdll: Fix a test that fails in win2k3.
+
+	* dlls/ntdll/tests/rtlstr.c:
+	ntdll: Fix a few tests that fail in win2k3.
+
+2008-05-14  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/wined3d/surface_gdi.c:
+	wined3d: Only copy front buffer to screen in gdi RealizePalette.
+
+2008-05-14  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/msi/dialog.c, dlls/msi/msi_main.c:
+	msi: Create the MSI hidden window on demand.
+
+2008-05-14  Austin English <austinenglish@gmail.com>
+
+	* tools/wine.inf.in:
+	wine.inf: Add a fake dll for sensapi.dll.
+
+2008-05-14  Marcus Meissner <marcus@jet.franken.de>
+
+	* server/window.c:
+	server: Remove superflous empty region allocation.
+
+2008-05-14  Dan Kegel <dank@kegel.com>
+
+	* dlls/ws2_32/tests/sock.c:
+	ws2_32/tests: Cannot reliably detect bad hostnames in "modern" internet.
+
+	* dlls/kernel32/tests/comm.c:
+	kernel32: comm.c: increase time slop.
+
+2008-05-14  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/opengl.c:
+	wgl: Don't call ExtEscape if we don't have a GL context.
+
+	* tools/wineprefixcreate.in:
+	wineprefixcreate: Added a deprecation warning.
+
+	* tools/wineprefixcreate.in:
+	wineprefixcreate: Avoid redundant update on initial wineprefix creation.
+
+2008-05-14  Igor Tarasov <tarasov.igor@gmail.com>
+
+	* dlls/comctl32/commctrl.c:
+	comctl32: Fix statusbar text alignment bug.
+
+2008-05-13  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/msi/action.c:
+	msi: Set the OutOfDiskSpace property.
+
+	* dlls/msi/action.c:
+	msi: Copy the assembly file directly if it's not compressed.
+
+2008-05-14  ByeongSik Jeon <bsjeon@hanmail.net>
+
+	* dlls/comdlg32/cdlg_Ko.rc:
+	comdlg32: Updated Korean translation.
+
+2008-05-13  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/cabinet/fdi.c:
+	cabinet: Remove order-of-evaluation dependencies.
+
+2008-05-13  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/ntdll/tests/file.c:
+	ntdll: Fix a few failing tests in win2k3.
+
+2008-05-13  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/systray.c, programs/explorer/systray.c:
+	explorer: Use a different return value to indicate that the x11 system tray
+	is not available, so that x11drv can return errors too.
+
+	* programs/regedit/edit.c, programs/regedit/regproc.c:
+	regedit: Fix editing and exporting of zero-size strings.
+
+	* programs/winemenubuilder/winemenubuilder.c:
+	winemenubuilder: Copy the icon data before modifying it, resources are read-only.
+
+	* dlls/kernel32/process.c:
+	kernel32: Move the wineboot event wait so that 16-bit processes wait too.
+
+2008-05-13  Andrej Sinicyn <Andrej.Sinicyn@gmx.de>
+
+	* programs/uninstaller/De.rc:
+	uninstaller: German translation.
+
+	* programs/reg/De.rc, programs/reg/rsrc.rc:
+	reg: German translation.
+
+	* programs/wineconsole/wineconsole_De.rc:
+	wineconsole: German translation.
+
+	* programs/taskmgr/De.rc:
+	taskmgr: German translation.
+
+	* programs/cmd/De.rc:
+	cmd: German translation.
+
+2008-05-13  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* dlls/dinput/joystick_linuxinput.c:
+	dinput: Clamp joystick position values to min-max range.
+
+2008-05-13  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
+	gdi32: Add more font substitution tests, make them pass under Wine.
+
+2008-05-13  Huw Davies <huw@codeweavers.com>
+
+	* dlls/gdi32/bitblt.c:
+	gdi32: Move a couple of TRACEs to the beginning of functions.
+
+2008-05-13  Alexandre Julliard <julliard@winehq.org>
+
+	* .gitignore, dlls/Makefile.in, dlls/kernel32/Makefile.in,
+	  dlls/kernel32/kernel16.c:
+	kernel32: Add a builtin 16-bit winhelp.exe.
+	This should be moved to winhlp32.exe once we support 16-bit modules in
+	executables.
+
+	* .gitignore, Makefile.in, configure, configure.ac, dlls/user32/winhelp.c,
+	  programs/Makefile.in, programs/winhelp/Bg.rc, programs/winhelp/Cs.rc,
+	  programs/winhelp/Da.rc, programs/winhelp/De.rc,
+	  programs/winhelp/En.rc, programs/winhelp/Eo.rc,
+	  programs/winhelp/Es.rc, programs/winhelp/Fi.rc,
+	  programs/winhelp/Fr.rc, programs/winhelp/Hu.rc,
+	  programs/winhelp/It.rc, programs/winhelp/Ko.rc,
+	  programs/winhelp/Makefile.in, programs/winhelp/Nl.rc,
+	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
+	  programs/winhelp/Pt.rc, programs/winhelp/Rm.rc,
+	  programs/winhelp/Ru.rc, programs/winhelp/Si.rc,
+	  programs/winhelp/Sk.rc, programs/winhelp/Sv.rc,
+	  programs/winhelp/Tr.rc, programs/winhelp/Wa.rc,
+	  programs/winhelp/Zh.rc, programs/winhelp/callback.c,
+	  programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
+	  programs/winhelp/macro.c, programs/winhelp/macro.h,
+	  programs/winhelp/macro.lex.l, programs/winhelp/rsrc.rc,
+	  programs/winhelp/string.c, programs/winhelp/winhelp.c,
+	  programs/winhelp/winhelp.h, programs/winhelp/winhelp.ico,
+	  programs/winhelp/winhelp.svg, programs/winhelp/winhelp_res.h,
+	  programs/winhlp32/Bg.rc, programs/winhlp32/Cs.rc,
+	  programs/winhlp32/Da.rc, programs/winhlp32/De.rc,
+	  programs/winhlp32/En.rc, programs/winhlp32/Eo.rc,
+	  programs/winhlp32/Es.rc, programs/winhlp32/Fi.rc,
+	  programs/winhlp32/Fr.rc, programs/winhlp32/Hu.rc,
+	  programs/winhlp32/It.rc, programs/winhlp32/Ko.rc,
+	  programs/winhlp32/Makefile.in, programs/winhlp32/Nl.rc,
+	  programs/winhlp32/No.rc, programs/winhlp32/Pl.rc,
+	  programs/winhlp32/Pt.rc, programs/winhlp32/Rm.rc,
+	  programs/winhlp32/Ru.rc, programs/winhlp32/Si.rc,
+	  programs/winhlp32/Sk.rc, programs/winhlp32/Sv.rc,
+	  programs/winhlp32/Tr.rc, programs/winhlp32/Wa.rc,
+	  programs/winhlp32/Zh.rc, programs/winhlp32/callback.c,
+	  programs/winhlp32/hlpfile.c, programs/winhlp32/hlpfile.h,
+	  programs/winhlp32/macro.c, programs/winhlp32/macro.h,
+	  programs/winhlp32/macro.lex.l, programs/winhlp32/rsrc.rc,
+	  programs/winhlp32/string.c, programs/winhlp32/winhelp.c,
+	  programs/winhlp32/winhelp.h, programs/winhlp32/winhelp.ico,
+	  programs/winhlp32/winhelp.svg, programs/winhlp32/winhelp_res.h,
+	  tools/make_makefiles, tools/wine.inf.in:
+	winhelp.exe: Renamed to winhlp32.exe.
+
+2008-05-12  Dan Kegel <dank@kegel.com>
+
+	* dlls/d3d9/tests/visual.c:
+	d3d9: shademode_test: Increase slop in color comparison.
+
+2008-05-13  Nikolay Sivov <bunglehead@gmail.com>
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
+	  dlls/gdiplus/tests/graphicspath.c, include/gdiplusflat.h:
+	gdiplus: Added GdipAddPathRectangle with tests.
+
+	* dlls/gdiplus/pen.c:
+	gdiplus: Make GdipSetPenDashArray return OutOfMemory on (count <= 0).
+
+	* dlls/gdiplus/matrix.c:
+	gdiplus: Check count argument in GdipVectorTransformMatrixPoints.
+
+	* dlls/gdiplus/matrix.c:
+	gdiplus: Check count argument in GdipTransformMatrixPoints.
+
+	* dlls/gdiplus/font.c:
+	gdiplus: GdipCreateFontFromLogfontA: no reason to put CHAR to WCHAR array.
+
+2008-05-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/quartz/mpegsplit.c:
+	quartz: Reset time when rejecting sample in the mpeg splitter.
+
+2008-05-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/quartz/acmwrapper.c:
+	quartz: Silence a fixme.
+
+2008-05-12  Lei Zhang <thestig@google.com>
+
+	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
+	quartz: Check input in MediaControl_GetState.
+
+2008-05-12  James Hawkins <jhawkins@codeweavers.com>
+
+	* dlls/msi/cond.y, dlls/msi/tests/package.c:
+	msi: Convert string variables to ints when appropriate.
+
+	* dlls/msi/tests/Makefile.in, dlls/msi/tests/package.c:
+	msi: Test the ScreenX/Y properties.
+
+2008-05-13  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h:
+	winex11: When re-creating a client window check the new visual against the
+	current one instead of the default one.
+
+	* configure, configure.ac, dlls/wininet/netconnection.c:
+	configure: Improve the libcrypto checks.
+
+2008-05-13  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/user32/tests/msg.c:
+	user32: Add tests for painting minimized/clipped windows.
+
+2008-05-13  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/mshtml/install.c:
+	mshtml: Fixed a typo.
+
+2008-05-12  Eric Pouech <eric.pouech@orange.fr>
+
+	* programs/winedbg/source.c:
+	winedbg: Fix the path traversal.
+
+2008-05-12  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/secur32/ntlm.c:
+	secur32: Memory allocation size fix.
+
+	* dlls/ddraw/direct3d.c:
+	ddraw: Memory allocation size fix.
+
+2008-05-12  Jens Albretsen <jens@albretsen.dk>
+
+	* programs/view/Da.rc, programs/view/viewrc.rc:
+	view: Danish translation.
+
+	* programs/taskmgr/Da.rc, programs/taskmgr/taskmgr.rc:
+	taskmgr: Danish translation.
+
+	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Da.rc:
+	wineboot: Danish translation.
+
+	* programs/uninstaller/Da.rc, programs/uninstaller/rsrc.rc:
+	uninstaller: Danish translation.
+
+	* programs/winefile/Da.rc, programs/winefile/rsrc.rc:
+	winefile: Danish translation.
+
+	* programs/winemine/Da.rc, programs/winemine/rsrc.rc:
+	winemine: Danish translation.
+
+2008-05-09  ByeongSik Jeon <bsjeon@hanmail.net>
+
+	* dlls/imm32/imm.c:
+	imm32: Add the all GCS_* value check.
+
+	* dlls/imm32/imm.c:
+	imm32: Add the missing is_himc_ime_unicode() check.
+
+2008-05-12  Petr Dlouhý <petr.dlouhy@email.cz>
+
+	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
+	shdocvw: Partial implementation of WebBrowser_put_RegisterAsBrowser and
+	WebBrowser_get_RegisterAsBrowser.
+
+2008-05-12  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winex11.drv/opengl.c:
+	winex11: Silence a harmless error.
+
+	* dlls/gdi32/opengl.c, dlls/gdi32/painting.c:
+	gdi32: Make sure the DC is up-to-date before accessing the pixel format.
+
+2008-05-12  Huw Davies <huw@codeweavers.com>
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
+	  include/gdiplusflat.h:
+	gdiplus: Stub for GdipGetClip.
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
+	  include/gdiplusflat.h:
+	gdiplus: Stubs for GdipGetDC and GdipReleaseDC.
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/region.c, include/gdiplusflat.h:
+	gdiplus: Add some stubs for region functions.
+
+2008-05-11  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/ddraw/device.c:
+	ddraw: Fix some code unprotected by ddraw lock.
+
+2008-05-12  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/winealsa.drv/alsa.c, dlls/winealsa.drv/dscapture.c,
+	  dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/wavein.c,
+	  dlls/winealsa.drv/waveout.c:
+	Revert "winealsa: Remove calls to deprecated functions."
+	This reverts commit c8bdebde3dc94baf1439697306e6f797ca5c7ad2.
+	To be revisited after 1.0.
+
+	* dlls/winex11.drv/window.c:
+	winex11: Create a dummy parent window for composite child windows to avoid
+	using the root.
+
+	* dlls/winex11.drv/window.c:
+	winex11: Create all the GL drawables using the gdi_display to avoid
+	synchronization issues.
+
+2008-05-09  Hans Leidekker <hans@it.vu.nl>
+
+	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
+	wininet: Implement INTERNET_OPTION_USER_AGENT for InternetQueryOption.
+
+	* dlls/wininet/http.c:
+	wininet: HTTP_BuildProxyRequestUrl returns a pointer.
+
+	* dlls/wininet/cookie.c:
+	wininet: Partial implementation of InternetGet/SetCookieEx.
+
+	* dlls/wininet/tests/http.c:
+	wininet: Make a test pass on IE6.
+
+	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
+	wininet: Don't overwrite content length header in HttpSendRequest.
+
+2008-05-09  Nikolay Sivov <bunglehead@gmail.com>
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
+	  dlls/gdiplus/tests/graphics.c, include/gdiplusflat.h:
+	gdiplus: Added GdipCreateFromHWNDICM (no icm yet) with test.
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
+	  dlls/gdiplus/tests/image.c:
+	gdiplus: Added GdipLoadImageFromFileICM (no icm yet).
+
+	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
+	  dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
+	gdiplus: GdipGetImageFlags simple stub with test.
+
+	* include/gdiplusenums.h, include/gdiplusflat.h:
+	gdiplus: ImageFlags enum defined.
+
+2008-05-10  Nikolay Sivov <bunglehead@gmail.com>
+
+	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
+	gdi32: Avoid null pointer dereference in CreateDIBSection.
+
+2008-05-10  Jacek Caban <jacek@codeweavers.com>
+
+	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
+	urlmon: Better error handling in file protocol.
+
+	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
+	urlmon: Correctly handle file URLs with '|' instead of ':' after drive letter.
+
+2008-05-12  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/user32/winpos.c:
+	user32: Invalidate the DCE in SetWindowPos before we attempt to move the
+	window bits.
+
+2008-05-12  Alexander Dorofeyev <alexd4@inbox.lv>
+
+	* dlls/wined3d/surface.c:
+	wined3d: Activate context for the right target in surface_blt_to_drawable.
+
+	* dlls/wined3d/surface.c:
+	wined3d: glFlush when updating front buffer.
+	Fixes screen not updating or getting updated inconsistently when apps blit to
+	front buffer or lock it when RenderTargetLockMode=readtex, as happens in e.g.
+	Red Alert 2 and also in p8_primary_test in ddraw tests.
+
+2008-05-12  Alexandre Julliard <julliard@winehq.org>
+
+	* dlls/user32/tests/msg.c, server/window.c:
+	server: Crop the invalidate region against the rectangles of all parents.
+
+	* dlls/user32/tests/msg.c, server/window.c:
+	server: Also crop the update region of children when moving a window.
+
+	* dlls/user32/tests/msg.c, server/window.c:
+	server: When moving/resizing a window crop the update region against the new
+	rectangle of the parents.
+
+	* dlls/winedos/int21.c:
+	winedos: Don't disable long filename functions on NT versions.
+
+2008-05-12  Hwang YunSong(황윤성) <hys545@dreamwiz.com>
+
+	* dlls/shell32/shell32_Ko.rc:
+	shell32: Updated Korean Resource.
+
+2008-05-11  Vitaliy Margolen <wine-patches@kievinfo.com>
+
+	* dlls/dinput/dinput_main.c, dlls/dinput/tests/device.c:
+	dinput: Implement GetDeviceStatus.
+
+	* dlls/dxdiagn/version.rc:
+	dxdiagn: Update dx version to 9.0c.
+
+	* dlls/dmime/version.rc:
+	dmime: Update dx version to 9.0c.
+
+2008-05-11  Jens Albretsen <jens@albretsen.dk>
+
+	* programs/winhelp/Da.rc:
+	winhelp: Danish translation additions, fixes.
+
+	* dlls/user32/resources/user32_Da.rc:
+	user32: Danish spelling fixes.
+
+	* dlls/wineps.drv/wps_Da.rc:
+	wineps.drv: Danish spelling fixes.
+
+2008-05-10  Dmitry Timoshkov <dmitry@codeweavers.com>
+
+	* dlls/shell32/dialogs.c:
+	shell32: Fix calling convention of LPFNOFN, don't use static buffers.
+
+	* dlls/user32/mdi.c:
+	user32: Make sure that we send proper notifications in all cases.
+
+2008-05-10  Michael Stefaniuc <mstefani@redhat.de>
+
+	* dlls/shdocvw/factory.c:
+	shdocvw: Plug memory leak introduced in 1.0-rc1 (Smatch).
+
+2008-05-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>
+
+	* dlls/quartz/filesource.c:
+	quartz: Don't return a pin in filesource when there is none.
+	Based on a patch by Olivier Samyn.
+
+2008-05-10  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/qmgr/file.c:
+	qmgr: Memory allocation size fix.
+
+	* dlls/wineoss.drv/dscapture.c, dlls/wineoss.drv/dsrender.c:
+	wineoss.drv: Memory allocation sizes fix.
+
+	* dlls/dsound/buffer.c, dlls/dsound/capture.c:
+	dsound: Memory allocation sizes fix.
+
+2008-05-09  Andrew Talbot <andrew.talbot@talbotville.com>
+
+	* dlls/wined3d/basetexture.c:
+	wined3d: Remove test for value of unsigned variable being less than zero.
+
+2008-05-09  Jonathan Ernst <jonathan@ernstfamily.ch>
+
+	* programs/winhelp/Fr.rc:
+	winhelp: Updated French translation.
+
+2008-05-09  Ben Mayhew <ben-dev@gmx.net>
+
+	* dlls/wined3d/drawprim.c:
+	wined3d: Only display Missing vbo streams fixme once.
+
+2008-05-09  Paul Vriens <paul.vriens.wine@gmail.com>
+
+	* dlls/kernel32/tests/locale.c:
+	kernel32/tests: Skip tests if codepage is not installed/available.
+
+2008-05-09  Alexandre Julliard <julliard@winehq.org>
+
+	* ANNOUNCE, ChangeLog, VERSION, configure:
+	Release 1.0-rc1.
+
+----------------------------------------------------------------
 2008-05-09  Alexandre Julliard <julliard@winehq.org>
 
 	* dlls/gdi32/enhmfdrv/objects.c:
diff --git a/VERSION b/VERSION
index f34173d..3e86e6d 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Wine version 1.0-rc1
+Wine version 1.0-rc2
diff --git a/configure b/configure
index a828897..2cccc91 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for Wine 1.0-rc1.
+# Generated by GNU Autoconf 2.61 for Wine 1.0-rc2.
 #
 # Report bugs to <wine-devel@winehq.org>.
 #
@@ -574,8 +574,8 @@
 # Identity of this package.
 PACKAGE_NAME='Wine'
 PACKAGE_TARNAME='wine'
-PACKAGE_VERSION='1.0-rc1'
-PACKAGE_STRING='Wine 1.0-rc1'
+PACKAGE_VERSION='1.0-rc2'
+PACKAGE_STRING='Wine 1.0-rc2'
 PACKAGE_BUGREPORT='wine-devel@winehq.org'
 
 ac_unique_file="server/atom.c"
@@ -1293,7 +1293,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Wine 1.0-rc1 to adapt to many kinds of systems.
+\`configure' configures Wine 1.0-rc2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1362,7 +1362,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Wine 1.0-rc1:";;
+     short | recursive ) echo "Configuration of Wine 1.0-rc2:";;
    esac
   cat <<\_ACEOF
 
@@ -1491,7 +1491,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Wine configure 1.0-rc1
+Wine configure 1.0-rc2
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1505,7 +1505,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Wine $as_me 1.0-rc1, which was
+It was created by Wine $as_me 1.0-rc2, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -22804,7 +22804,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Wine $as_me 1.0-rc1, which was
+This file was extended by Wine $as_me 1.0-rc2, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -22857,7 +22857,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-Wine config.status 1.0-rc1
+Wine config.status 1.0-rc2
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
