2008-05-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/enhmfdrv/objects.c:
	gdi32: Add missing braces in EMFDRV_SelectPalette.

2008-05-09  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/imm32/imm.c:
	imm32: Avoid false FIXMEs.

2008-05-09  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Set alpha to index even when there is no palette.
	Fixes a failure in p8_primary_test when running with opengl ddraw renderer.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add KEYSRCOVERRIDE test in p8_primary_test.

	* dlls/wined3d/surface.c:
	wined3d: Use source colorkey when passed KEYSRC or KEYSRCOVERRIDE.
	Fixes failure in p8_primary_test when using opengl ddraw renderer.

2008-05-09  Alexandre Julliard <julliard@winehq.org>

	* programs/winefile/winefile.c:
	winefile: Fix the printf formats for file sizes.

2008-05-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* 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:
	winealsa: Remove calls to deprecated functions.

2008-05-08  Aric Stewart <aric@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c:
	shdocvw: Do not do our iexplore.exe registration if native Internet Explorer
	is detected to be present.

2008-05-08  Lei Zhang <thestig@google.com>

	* dlls/wininet/tests/urlcache.c, dlls/wininet/urlcache.c:
	wininet: Handle NULL input for FindCloseUrlCache.

2008-05-08  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/joystick.c:
	dinput: Default value for unassigned POVs should be -1.

2008-05-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Cleanup registry after tests.

2008-05-08  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Pointer coordinates are relative to richedit text window, not the
	main window.

	* programs/winhelp/Ru.rc:
	winhelp: Updated Russian translation.

2008-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c, programs/services/services.c:
	services: Send the service name in the control requests.
	Only start a single dispatcher thread for all services.

2008-05-07  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/winex11.drv/wintab.c, dlls/wintab32/wintab32.c:
	winex11.drv: Move hardware tablet proximity into x11 layer.

2008-05-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/services/services.c:
	services.exe: Spelling fixes.

2008-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/win.c, dlls/user32/win.c:
	user32: The client rectangle is in screen coordinates for the initial
	WM_NCCALCSIZE.

2008-05-08  Guy Albertelli <galberte@neo.rr.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	listview: Return correct value from WM_NOTIFYFORMAT with test.

2008-05-08  Dylan Smith <dylan.ah.smith@gmail.com>

	* programs/wordpad/wordpad.c:
	wordpad: Empty the richedit undo buffer on creation.

2008-05-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/kernel32/tests/path.c:
	kernel32: Fix temporary path test.

	* dlls/kernel32/tests/process.c:
	kernel32: Fix process tests to pass in Windows.

2008-05-07  Frans Kool <Frans.Kool@gmail.com>

	* programs/winhelp/Nl.rc:
	winhelp: Added missing Dutch translations.

2008-05-08  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Let GdipDrawArcI use float args version.

2008-05-07  Vitaly Lipatov <lav@etersoft.ru>

	* programs/wineboot/wineboot.c:
	wineboot: Add missed short option -u.

2008-05-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Ignore failures to retrieve serial status for events we are not
	interested in.
	Based on a patch by Valentine Sinitsyn.

2008-05-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/ntdll/tests/file.c:
	ntdll: Fix file test to not free memory allocated on the stack.

	* dlls/ntdll/tests/exception.c:
	ntdll: Fix some exception tests to pass on Windows.

2008-05-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix ndr_marshall test failures.
	Created with help from Robert Shearman.

2008-05-07  Rob Shearman <rob@codeweavers.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Add stub for CertVerifyCTLUsage.

2008-05-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Don't consider a 0-byte read from a serial port as a broken pipe.

	* dlls/ntdll/serial.c:
	ntdll: Always set VTIME to 0 to avoid blocking, don't try to set it from the
	comm timeouts.

2008-05-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmfdrv/enhmetafiledrv.h, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/objects.c:
	gdi32: Implement EMFDRV_SelectPalette.

	* dlls/gdi32/tests/metafile.c:
	gdi32: More carefully compare EMF records in tests.

	* dlls/gdi32/enhmfdrv/init.c:
	gdi32: Set offPalEntries member of EMREOF to what XP sets it to.

2008-05-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Ignore events from extra joystick buttons.

2008-05-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Limit number of axes in a different way - map all extra axes to -1.
	We can't stop device from sending us extra axes so have to keep axes mapping
	around for them.

	* dlls/dinput/joystick_linux.c:
	dinput: Remove redundant variable.

2008-05-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Deal with bogus accept types array passed into HttpOpenRequestA.

2008-05-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/ntlm.c:
	secur32: Fix ntlm tests on Vista.

2008-05-07  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Add better traces for the server test.
	Handle failure to use one or more protocol sequences more gracefully, as
	ncacn_np servers aren't support on Win9x and ncacn_ip_tcp fails on some
	machines.

	* include/wine/test.h:
	winetest: Detect if an unhandled exception occurred in a child process and
	print an appropriate message.
	Avoid getting caught incrementing the failure count in this case, as it
	could take a very long time to complete.

2008-05-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/wowthunk.c, dlls/winedos/dosmem.c, dlls/winedos/dosvm.c,
	  dlls/winedos/module.c:
	winedos: Print better diagnostics when a DOS app fails to start.

	* dlls/winedos/module.c:
	winedos: Make sure that the main message queue exists before the DOS thread
	starts.

	* dlls/winedos/dosvm.c:
	winedos: Only read input from the stdin handle if it is a console.

	* programs/wineconsole/curses.c:
	wineconsole: Don't use a Win32 wait on a Unix file descriptor.

	* dlls/ntdll/file.c:
	ntdll: Serial with ReadIntervalTimeout set to MAXDWORD should return immediately
	even if nothing was read.

2008-05-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c, dlls/winspool.drv/info.c:
	winspool: Set PrinterPorts for win3.x/win9.x compatibility.

2008-05-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ddraw/executebuffer.c:
	ddraw: Indentation fix.

2008-05-06  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Wintab packet serial numbers are passed via WPARAM.

2008-05-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wininet/tests/http.c, include/wininet.h:
	wininet: Ignore INTERNET_STATUS_DETECTING_PROXY messages in the http test.

	* programs/winetest/main.c:
	winetest: Fix CreateProcess so that debugger tests run without timing out.

2008-05-05  Jens Albretsen <jens@albretsen.dk>

	* dlls/serialui/Da.rc, dlls/serialui/serialui_rc.rc:
	serialui: Danish translation.

	* dlls/setupapi/Da.rc, dlls/setupapi/setupapi.rc:
	setupapi: Danish translation.

	* dlls/msvfw32/msvfw32_Da.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Danish translation.

2008-05-06  Jens Albretsen <jens@albretsen.dk>

	* programs/reg/Da.rc, programs/reg/rsrc.rc:
	reg: Danish translation.

	* programs/oleview/Da.rc, programs/oleview/rsrc.rc:
	oleview: Danish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Da.rc:
	wininet: Danish translation.

	* dlls/shdoclc/Da.rc, dlls/shdoclc/rsrc.rc:
	shdoclc: Danish translation.

	* dlls/winmm/winmm_Da.rc, dlls/winmm/winmm_res.rc:
	winmm: Danish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Da.rc:
	wldap32: Danish translation.

	* programs/notepad/Da.rc:
	notepad: Danish spelling fixes.

	* programs/clock/Da.rc:
	clock: Danish spelling fixes.

	* dlls/winspool.drv/Da.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Danish translation.

	* programs/progman/Da.rc, programs/progman/rsrc.rc:
	progman: Danish translation.

	* programs/cmdlgtst/Da.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Danish translation.

	* programs/regedit/Da.rc, programs/regedit/rsrc.rc:
	regedit: Danish translation.

2008-05-05  Jens Albretsen <jens@albretsen.dk>

	* dlls/oledlg/oledlg_Da.rc, dlls/oledlg/rsrc.rc:
	oledlg: Danish translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Da.rc:
	sane.ds: Danish translation.

	* dlls/msvidc32/msvidc32_Da.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Danish translation.

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Da.rc:
	localspl: Danish translation.

	* dlls/hhctrl.ocx/Da.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Danish translation.

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Da.rc:
	msacm: Danish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Da.rc:
	msi: Danish translation.

	* dlls/msrle32/msrle_Da.rc, dlls/msrle32/rsrc.rc:
	msrle: Danish translation.

	* dlls/mshtml/Da.rc, dlls/mshtml/rsrc.rc:
	mshtml: Danish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Da.rc:
	mpr: Danish translation.

	* dlls/gphoto2.ds/gphoto2_Da.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2: Danish translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Da.rc:
	localui: Danish translation.

	* dlls/iccvid/iccvid_Da.rc, dlls/iccvid/rsrc.rc:
	iccvid: Danish translation.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Da.rc,
	  dlls/oleaut32/oleaut32_Dk.rc:
	oleaut32: Renamed oleaut32_Dk.rc to oleaut32_Da.rc.

2008-05-06  Marcus Meissner <marcus@jet.franken.de>

	* tools/widl/utils.c, tools/widl/utils.h:
	widl: Mark non-returning functions as noreturn.

2008-05-06  Aleksey Bragin <aleksey@reactos.org>

	* dlls/atl/registrar.c:
	atl: Remove freeing of an invalid pointer.

2008-05-06  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/comboex.c, dlls/comctl32/listview.c, dlls/dmime/segment.c,
	  dlls/dmstyle/styletrack.c, dlls/kernel32/module.c, dlls/msi/action.c,
	  dlls/quartz/mpegsplit.c, dlls/quartz/pin.h, dlls/quartz/waveparser.c,
	  dlls/rsaenh/mpi.c, dlls/shell32/tests/shelllink.c,
	  dlls/shell32/tests/shellpath.c, dlls/twain_32/dsm_ctrl.c,
	  dlls/wined3d/state.c, dlls/wined3d/swapchain.c,
	  dlls/winmm/lolvldrv.c, dlls/winmm/mmsystem.c, dlls/winmm/playsound.c,
	  tools/widl/parser.y:
	Assorted spelling fixes.

	* dlls/winex11.drv/ime.c:
	winex11: Standardize a stub trace and add a trailing '\n'.

2008-05-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add another test.

2008-05-06  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tokenize.c, dlls/opengl32/opengl_ext.c, tools/widl/parser.l,
	  tools/widl/typelib.c:
	Add a comment warning when a table must be kept sorted for later use with
	bsearch().

	* dlls/comctl32/tests/header.c, dlls/ctapi32/ctapi32.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/device.c, dlls/ddraw/surface.c,
	  dlls/dinput/device.c, dlls/dmime/tempotrack.c,
	  dlls/mshtml/nsiface.idl, dlls/msi/msi.c, dlls/ole32/moniker.c,
	  dlls/quartz/avisplit.c, dlls/riched20/tests/editor.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, dlls/ws2_32/async.c,
	  programs/rpcss/np_server.c, tools/winemaker, tools/wrc/parser.y:
	Assorted spelling fixes.

	* dlls/mshtml/htmlcomment.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlimg.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/htmltextnode.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/omnavigator.c:
	mshtml: gcc 2.95 does not allow an array of undefined dimension in a struct. So
	fix dispex_static_data_t accordingly.

	* dlls/cryptdlg/main.c:
	cryptdlg: Fix the GetFriendlyNameOfCert[AW] call convention.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Add a trailing '\n' to an ok() call.

	* dlls/gdi32/tests/clipping.c, dlls/gdi32/tests/metafile.c:
	gdi32/tests: Add a trailing '\n' to a couple of ok() calls.

	* dlls/fusion/assembly.c:
	fusion: Fix compilation on systems that don't support nameless unions.

	* include/objbase.h:
	ole32: Fix spelling of pCapabilities.

2008-05-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/process.c, dlls/userenv/tests/userenv.c,
	  tools/wine.inf.in:
	kernel32: Set the USERPROFILE and ALLUSERSPROFILE environment variables based
	on the ProfileList registry keys.

	* dlls/shell32/shellpath.c:
	shell32: Set the correct default for shell folders relative to the windows
	directory.

2008-05-06  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Add tests for IDirect3DDevice7_Load.

	* dlls/ddraw/surface.c:
	ddraw: Return DDERR_NOCOLORKEY when there is no colorkey.

	* dlls/ddraw/device.c:
	ddraw: Add full implementation of IDirect3DDevice7_Load.

2008-05-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/process.c:
	kernel32: Print in the trace pid and tid of the created process.

2008-05-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/services/services.c:
	services.exe: Move a trace to a more appropriate place.

2008-05-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* programs/winetest/main.c:
	winetest: Fix CreateProcess so that debugger tests run without timing out.

	* dlls/netapi32/tests/wksta.c:
	netapi32: Fix test crash occuring when NetWkstaUserGetInfo fails.

	* dlls/winmm/tests/mixer.c:
	winmm: Make mixer test less strict so it passes with SoundMAX drivers on XP.

	* dlls/gdi32/tests/mapping.c:
	gdi32: Make mapping test slightly less strict so it passes on windows XP.

2008-05-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/comctl32/tab.c:
	comctl32: tab: Fix drawing of the icons.
	This patch partially reverts aa57ad37. It's not correct. The top/left
	is added later on.

2008-05-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Fix test output string to match the test.

2008-05-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32: Make the tests pass under XP that enforces a strict password policy.

2008-05-05  Dylan Smith <dylan.ah.smith@gmail.com>

	* dlls/riched20/editor.c:
	richedit: The wrong bits were cleared from wBorders in PARAFORMAT2.

2008-05-02  Dylan Smith <dylan.ah.smith@gmail.com>

	* dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Removed useless code.

2008-05-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow stencil support when it wasn't requested on broken drivers.

2008-05-05  Alexandre Julliard <julliard@winehq.org>

	* server/winstation.c:
	server: Don't touch the users count when a system process switches desktops.

2008-05-05  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: On Win98, SO_MAX_MSG_SIZE is 65527, not 65507.

	* dlls/secur32/tests/secur32.c:
	secur32: Remove test for sft->Reserved8 field.
	This seems to be set on Win98.

2008-05-05  Maarten Lankhorst <crumb@virgo23.smo.corp.google.com>

	* dlls/winex11.drv/graphics.c:
	winex11.drv: Fix a compiler warning.

2008-05-05  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/device.c:
	ddraw: Fix some texture blending modes.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c:
	ddraw: Move handling of D3DRENDERSTATE_TEXTUREMAPBLEND from d3ddevice2 to
	d3ddevice3.

2008-05-04  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/device.c:
	ddraw: Move handling of D3DRENDERSTATE_TEXTUREHANDLE from d3ddevice7 to
	d3ddevice3.
	As supported by tests, there is no reason for this state to be handled by
	d3ddevice7, and moving it to d3ddevice3 prepares for the changes in next patch
	(setting TEXTUREHANDLE state can then go through SetTexture of d3ddevice3).

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Add test for deprecated render states in d3d7.

2008-05-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/kernel16.c:
	winoldap.mod: Wait until the 32-bit process starts up.

2008-05-05  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

2008-05-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/d3d8/device.c:
	d3d8: Dangling pointers fix.

	* dlls/hlink/hlink_main.c:
	hlink: Remove unneeded address-of operators from function names.

	* dlls/advapi32/crypt.c:
	advapi32: Avoid giving variables same name as library functions.

2008-05-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/quartz/pin.c:
	Revert "quartz: Clean up pullpin code."
	This reverts commit 3066116f76c0c44950fde3552485b37dce24d1f8.

	* loader/preloader.c:
	preloader: Silence the warning for the low 64k.

	* dlls/winex11.drv/xim.c:
	winex11: The XIM callback is called with the X11 lock held.

2008-05-04  Jens Albretsen <jens@albretsen.dk>

	* dlls/shell32/shell32_Da.rc:
	shell32: Added missing Danish translations.

	* programs/wordpad/Da.rc, programs/wordpad/rsrc.rc:
	wordpad: Added Danish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Da.rc:
	shlwapi: Added Danish translation.

	* dlls/comdlg32/cdlg_Da.rc:
	comdlg: Added missing Danish translations.

	* dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/wps_Da.rc:
	wineps.drv: Added Danish translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Da.rc:
	credui: Added Danish translation.

	* dlls/avifil32/avifile_Da.rc, dlls/avifil32/rsrc.rc:
	avifil32: Added Danish translation.

	* programs/net/Da.rc, programs/net/rsrc.rc:
	net: Added Danish translation.

	* programs/cmd/Da.rc, programs/cmd/wcmdrc.rc:
	cmd: Added Danish translation.

	* programs/winecfg/Da.rc, programs/winecfg/winecfg.rc:
	winecfg: Added Danish translation.

	* programs/xcopy/Da.rc, programs/xcopy/rsrc.rc:
	xcopy: Added Danish translation.

2008-05-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/cabinet/fdi.c:
	cabinet: Indentation fix.

2008-05-02  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Add variable initialization in get_registry_version().

2008-05-03  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winhelp/winhelp.c:
	winhelp: Remove extraneous positiveness check for unsigned variable in
	WINHELP_HandleTextMouse().

2008-05-04  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Use the handle to the treeview item if the item text is not returned.

2008-05-03  James Hawkins <jhawkins@codeweavers.com>

	* dlls/fusion/assembly.c:
	fusion: The Strings stream can be without a #.

	* dlls/fusion/assembly.c, dlls/fusion/fusionpriv.h:
	fusion: Add the missing assembly table structs.

	* dlls/fusion/fusionpriv.h:
	fusion: Fix the type of an assembly struct member.

2008-05-05  Alexandre Julliard <julliard@winehq.org>

	* programs/winevdm/winevdm.c:
	winevdm: Move the DOS memory range check to not trigger for Win16 apps.

	* programs/services/rpc.c:
	services: Fixed the result check for the control mutex wait.

	* programs/services/rpc.c:
	services: Use the correct invalid handle value for the control pipe.

2008-05-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c:
	mshtml: Added IMG element tests.

	* dlls/mshtml/tests/script.c:
	mshtml: Added more script tests.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added DispHTMLSelectElement declaration.

2008-05-05  Alexandre Julliard <julliard@winehq.org>

	* programs/spoolsv/main.c:
	spoolsv: Improve the service stub so that it can be started and stopped.

2008-05-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Fr.rc:
	winecfg: Fix coordinates and sizes of controls in French Graphics dialog.

2008-05-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/mshtml/mshtml.inf:
	mshtml: Don't overwrite file types that could be changed by user.

2008-05-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/sysparams.c:
	user32: Set the size of returned DEVMODE to least common one as XP does.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Set the size of returned DEVMODE to least common one as XP does.

2008-05-03  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/helpers.c:
	msi: Fix a typo.

2008-05-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	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.
	Discovered by Peter Oberndorfer.

2008-05-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Clean up properly on win9x.

2008-05-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Skip some tests on win9x.

2008-05-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wnaspi32/winaspi16.c, dlls/wnaspi32/winaspi32.c:
	wnaspi32: Remove unused variables.

	* dlls/inetcomm/internettransport.c, dlls/inetcomm/mimeole.c:
	inetcomm: Remove unused variables.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/urlcache.c:
	wininet: Remove unused variables.

2008-05-02  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dbghelp/stabs.c:
	dbghelp: Include port.h for possible alternative to strtoull().

2008-05-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Don't add the user agent header until HttpSendRequest is called.

2008-05-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.61.

----------------------------------------------------------------
2008-05-02  Alexandre Julliard <julliard@winehq.org>

	* AUTHORS:
	Updated the authors list.

2008-05-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Skip some tests on win98.

2008-05-02  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_dst_swap.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/systray.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/xfont.c:
	winex11.drv: Remove unused variables.

2008-05-02  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/brush.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/x11drv.h:
	winex11.drv: Rename X11DRV_DIB_BitmapInfoSize to bitmap_info_size and fix to
	take into account bit field masks.

	* dlls/gdi32/brush.c, dlls/gdi32/dib.c, dlls/gdi32/enhmfdrv/bitblt.c,
	  dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/metafile.c, dlls/gdi32/mfdrv/bitblt.c,
	  dlls/gdi32/mfdrv/objects.c:
	gdi32: Rename DIB_BitmapInfoSize to bitmap_info_size and fix to take into
	account bit field masks.

	* dlls/user32/cursoricon.c:
	user32: Fix bitmap_info_size to take into account bit field masks.

2008-05-02  Gerald Pfeifer <gerald@pfeifer.com>

	* tools/widl/parser.y:
	widl: Fix syntax to also work with older versions of bison.

2008-05-02  Mathias Gottschlag <mathias-go@web.de>

	* programs/taskmgr/De.rc:
	taskmgr: Fix some German translation errors.

	* programs/winecfg/De.rc:
	winecfg: Fix some errors in the German translation.

2008-05-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/tests/misc.c:
	urlmon: Avoid sizeof in traces.

	* dlls/riched20/tests/editor.c, dlls/riched32/tests/editor.c:
	richedit: Avoid strlen in traces.

2008-05-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Don't run tests on win9x if we are out of memory.

2008-05-02  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/winhelp/Makefile.in, programs/winhelp/winhelp.ico,
	  programs/winhelp/winhelp.svg:
	winhelp: A nicer icon.

2008-05-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/listbox.c:
	user32: Add an exception handler around LB_GETTEXT to hide a Delphi bug.

2008-05-02  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/imm32/imm.c:
	imm32: Implementation of the ImmRequestMessage{A|W}.

	* dlls/imm32/imm.c:
	imm32: Updated implementation of the ImmGetConversionList{A|W}.

	* dlls/imm32/imm.c:
	imm32: Updated implementation of the ImmGetCandidateListCount{A|W}.

	* dlls/imm32/imm.c:
	imm32: Updated implementation of the ImmGetCandidateList{A|W}.

	* dlls/imm32/imm.c:
	imm32: Updated implementation of the ImmEnumRegisterWord{A|W}.

2008-05-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/ddraw.c:
	ddraw: Enable EnableAutoDepthStencil to receive depth support.

2008-05-02  James Hawkins <jhawkins@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Remove a test that we expect to fail sometimes.

	* dlls/msi/classes.c:
	msi: A progid who is its own parent cannot have a clsid.

	* dlls/ntdll/tests/path.c:
	ntdll: Fix two tests that fail on all NT platforms.

2008-05-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/text.c, dlls/wineps.drv/type42.c:
	wineps.drv: Remove unused code.

2008-05-01  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Don't call waitpid() in dispatcher.
	As Wine ignores SIGCHLD, waitpid() works on Linux only by accident. On
	FreeBSD it doesn't work.

2008-05-01  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c:
	winhelp: Added support for relative offsets in richedit rendered pages.

	* programs/winhelp/En.rc, programs/winhelp/Fr.rc,
	  programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Added support for font scaling when using RichEdit.

	* programs/winhelp/hlpfile.c:
	winhelp: We can now get rid of the tests about a NULL rtfData block.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Remove the internal data used for the old rendering.

	* programs/winhelp/string.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Get rid of the old internal rendering.

2008-05-01  Dylan Smith <dylan.ah.smith@gmail.com>

	* dlls/riched20/editor.h:
	richedit: Updated editor.h to reflect the contents of source files.

2008-05-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix a few failing tests and make them pass on Wine.

	* dlls/usp10/usp10.c:
	usp10: Remove redundant code from ScriptTextOut.

2008-05-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlimg.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IDispatchEx support to HTMLImgElement.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlimg.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLImgElement stub implementation.

2008-05-01  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y:
	widl: Consolidate writing of COM and dispatch interfaces into one function to
	remove duplicated code.
	Split up the writing into start and end to eventually support the style
	MIDL uses where it writes declared types, etc. between the start and end
	of the interface.
	Make internal header functions take the file pointer to print to.
	Don't write interface IDs for non-object interfaces and always write
	handle declarations even if the interface has no methods, like MIDL does.

2008-05-01  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Better alignment of text and combobox.

	* dlls/user32/tests/win.c:
	user32/tests: Run tests again on win95.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Fix timeout for tests on win9x.

2008-05-01  Eric Pouech <eric.pouech@orange.fr>

	* programs/winedbg/memory.c:
	winedbg: Added ability to print properly float/double values.

2008-05-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: We don't want double buffering in pbuffer mode.

	* dlls/wined3d/context.c:
	wined3d: In window mode (!pbuffer) we want both a window drawable format and
	double buffering.

	* dlls/wined3d/directx.c:
	wined3d: Fix typo in pixel format trace.

2008-05-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Only unmap a window when explicitly hidden, not just when WS_VISIBLE
	is cleared.

	* dlls/winex11.drv/window.c:
	winex11: Ignore the specified owner if it's a zero-size window.
	Go back to not mapping zero-size windows.

	* dlls/winex11.drv/dib.c:
	winex11: Don't free the pixmap in X11DRV_DIB_CreateDIBFromPixmap since we
	don't own it.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: Avoid duplicate rules for static import libs on PE builds.

	* configure, configure.ac, dlls/glu32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Dynamically load libGLU.
	Based on a patch by Roderick Colenbrander.

	* dlls/msftedit/msftedit.spec, dlls/msftedit/msftedit_main.c:
	msftedit: Export a few more IIDs.

2008-04-30  Rico Schüller <kgbricola@web.de>

	* dlls/msftedit/Makefile.in, dlls/msftedit/msftedit.spec,
	  dlls/msftedit/msftedit_main.c, dlls/msftedit/version.rc:
	msftedit: Add DllGetVersion.

2008-05-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/opengl32/wgl.c, include/config.h.in:
	configure: Improve the check for the GLU library.

2008-05-01  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/toolhelp.c:
	kernel32/tests: Fix tests on win9x.

2008-04-30  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/gdi32/freetype.c:
	gdi32: Add font faces to families in a specific order.

2008-05-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/ime.c:
	winex11: Avoid printing traces without a \n.

2008-04-29  Guy Albertelli <galberte@neo.rr.com>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Use passed hdc instead of cached one for ScriptTextOut with test to check.

2008-04-30  Lei Zhang <thestig@google.com>

	* dlls/userenv/tests/userenv.c:
	userenv: Add a test for variable inheritance for CreateEnvironmentBlock.

	* dlls/userenv/tests/userenv.c:
	userenv: Add more tests for environment variables for CreateEnvironmentBlock.

	* dlls/userenv/tests/userenv.c:
	userenv: Add tests for environment variables for CreateEnvironmentBlock.

2008-04-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/vfw.h:
	headers: Add some extra defines to vfw.h.

	* dlls/quartz/parser.c:
	quartz: Silence a fixme that isn't.

	* dlls/quartz/waveparser.c:
	quartz: Get rid of the sample holding code in the wave parser.

	* dlls/quartz/mpegsplit.c:
	quartz: Get rid of the sample holding code in the mpeg splitter.
	Instead just revert the position slightly, this is a lot easier to maintain.

	* dlls/quartz/pin.c:
	quartz: Clean up pullpin code.

	* dlls/quartz/filesource.c:
	quartz: More filesource fixes.
	After a flush call there should be no more samples in the buffer.

	* dlls/quartz/acmwrapper.c:
	Revert "quartz: Handle failures better in acmwrapper.".
	This reverts commit 1ba8ece76e1b87f43270edb1324c31b818e8162e.
	Code for holding sample doesn't make sense and shouldn't be there
	because it should really be handled by keeping track of the last
	successful position of a frame sent and aborting the whole processing
	as soon as rejection occurs.

2008-05-01  James Hawkins <jhawkins@codeweavers.com>

	* dlls/urlmon/tests/misc.c:
	urlmon: Fix a test that fails in win2k3.

	* dlls/user32/tests/sysparams.c:
	user32: Fix a test that fails in win2k3.

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Remove a dependency on the amount of available memory.

2008-04-30  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/cred.c:
	advapi32: Make sure not to return a credential with a NULL UserName field when
	a Mac Keychain doesn't have an account name attribute.

2008-04-30  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: Some cleanup in dwarf include files.

	* dlls/dbghelp/stabs.c:
	dbghelp: Revert commit ae1791b0b8d181e0d01f8db1cae4eba48edefbac and correctly
	fix what this patch was trying to do.

	* dlls/dbghelp/msc.c:
	dbghelp: Prevent debug overflow of internal buffer while tracing.

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/source.c, programs/winedbg/winedbg.c:
	winedbg: Attach the source files to a given process, and unload them at
	process end.

	* programs/winedbg/gdbproxy.c:
	winedbg: Added implementation of qSupported request.

	* programs/winedbg/source.c:
	winedbg: Try harder to locate a source file.

	* include/wine/mscvpdb.h, tools/winedump/pdb.c:
	winedump: Added support for latest versions of Codeview (VC70).

	* tools/winedump/pdb.c:
	winedump: Print more meaningful information about module list.

2008-05-01  Alexandre Julliard <julliard@winehq.org>

	* include/wine/exception.h:
	exception.h: Preserve registers when calling RtlUnwind.

	* include/wine/exception.h:
	exception.h: Only push the exception frame after sigsetjmp.
	Otherwise on Windows longjmp may want to mess with the exception frame.

	* dlls/ntdll/exception.c, dlls/ntdll/ntdll.spec, include/wine/exception.h:
	ntdll: Make the exception handling functions inline.

	* dlls/winex11.drv/ime.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Register IME classes only when needed.

2008-04-30  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/user32/defwnd.c, dlls/user32/tests/msg.c:
	user32: Post the WM_KEY{DOWN|UP} message whenWM_IME_KEY{DOWN|UP} message is
	generated by IME.

2008-04-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	opengl32: Get rid of X/GLX leftovers.

2008-04-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/dom.c:
	mshtml: Added IDispatchEx support to HTMLStyle.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlcomment.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/dom.c:
	mshtml: Added IDispatchEx support to HTMLCommentElement.

	* include/mshtml.idl:
	mshtml.idl: Added DispHTMLCommentElement declaration.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added comment and childNodes test.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlcomment.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLCommentElement stub implementation.

	* dlls/mshtml/htmlelem.c:
	mshtml: Handle COMMENT_NODE like ELEMENT_NODE in element collection.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlelem2.c:
	mshtml: Don't assume that nselem is valid in HTMLElement.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmloption.c:
	mshtml: Moved IDispatchEx initialization to HTMLElement_Init.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IDispatchEx support to HTMLDOMChildrenCollection.

	* dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLDOMChildrenCollection::item implementation.

	* dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLDOMChildrenCollection::get_length implementation.

	* dlls/mshtml/htmlnode.c:
	mshtml: Added get_childNodes implementation.

2008-04-30  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c:
	richedit: Add tests for EM_FINDTEXT in 1.0 emulation, make them pass under Wine.

2008-04-30  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipCreateFontFromDC.

2008-04-30  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/urlcache.c:
	wininet: Add tests for GetUrlCacheEntryInfoExA.
	Factorise out bits of the other tests so that the code is cleaner and
	can be re-used.

	* dlls/wininet/urlcache.c:
	wininet: Don't crash in GetUrlCacheEntryInfoA/W if lpdwCacheEntryInfoBufferSize
	is NULL.

	* dlls/cryptdlg/cryptdlg.spec, dlls/cryptdlg/main.c:
	cryptdlg: Add stubs for CertTrustInit, CertTrustCertPolicy, CertTrustCleanup
	and CertTrustFinalPolicy.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.l,
	  tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add the parsing of storage classes into declaration-specifiers.
	Support the static and register keywords.
	This consolidates externdef and constdef rules into one declaration rule.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Prepare for supporting storage classes in declaration statements.
	Return a decl_spec_t structure from decl_spec rules so that the storage
	class and type qualifiers can both be returned.

2008-04-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/dxerr9/dxerr9.c:
	dxerr9: Don't use Wine debugging macros in static libraries.

	* dlls/dxerr8/dxerr8.c:
	dxerr8: Don't use Wine debugging macros in static libraries.

	* dlls/advapi32/tests/Makefile.in, dlls/amstream/Makefile.in,
	  dlls/atl/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/tests/Makefile.in,
	  dlls/comcat/Makefile.in, dlls/comcat/tests/Makefile.in,
	  dlls/comdlg32/Makefile.in, dlls/d3d10/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d9/Makefile.in, dlls/d3d9/tests/Makefile.in,
	  dlls/d3drm/tests/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/d3dx8/tests/Makefile.in, dlls/d3dxof/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/ddrawex/Makefile.in, dlls/devenum/Makefile.in,
	  dlls/dinput/Makefile.in, dlls/dinput/tests/Makefile.in,
	  dlls/dinput8/Makefile.in, dlls/dmband/Makefile.in,
	  dlls/dmcompos/Makefile.in, dlls/dmime/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmscript/Makefile.in,
	  dlls/dmstyle/Makefile.in, dlls/dmsynth/Makefile.in,
	  dlls/dmusic/Makefile.in, dlls/dmusic32/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/dplayx/tests/Makefile.in,
	  dlls/dpnet/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/gdiplus/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/hlink/tests/Makefile.in, dlls/inetcomm/Makefile.in,
	  dlls/inetcomm/tests/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/inseng/Makefile.in, dlls/itss/Makefile.in,
	  dlls/itss/tests/Makefile.in, dlls/jscript/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mlang/Makefile.in, dlls/mlang/tests/Makefile.in,
	  dlls/mountmgr.sys/Makefile.in, dlls/mscoree/Makefile.in,
	  dlls/msdmo/Makefile.in, dlls/msftedit/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msimtf/Makefile.in, dlls/msisys.ocx/Makefile.in,
	  dlls/msxml3/Makefile.in, dlls/msxml3/tests/Makefile.in,
	  dlls/objsel/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleaut32/Makefile.in, dlls/oleaut32/tests/Makefile.in,
	  dlls/pstorec/Makefile.in, dlls/qcap/Makefile.in,
	  dlls/qedit/Makefile.in, dlls/qedit/tests/Makefile.in,
	  dlls/qmgr/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/tests/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shdocvw/tests/Makefile.in,
	  dlls/shell32/Makefile.in, dlls/shell32/tests/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/urlmon/Makefile.in, dlls/urlmon/tests/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/wineaudioio.drv/Makefile.in,
	  dlls/winecoreaudio.drv/Makefile.in, dlls/wined3d/Makefile.in,
	  dlls/wineesd.drv/Makefile.in, dlls/winejack.drv/Makefile.in,
	  dlls/winenas.drv/Makefile.in, dlls/wineoss.drv/Makefile.in,
	  programs/oleview/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winecfg/Makefile.in, programs/winefile/Makefile.in,
	  programs/winemenubuilder/Makefile.in:
	makefiles: List the static libraries as normal imports instead of extra libs.

2008-04-29  Petr Sumbera <petr.sumbera@sun.com>

	* configure, configure.ac, include/config.h.in, include/wine/port.h,
	  libs/port/Makefile.in, libs/port/isinf.c:
	port: Add alternative for isinf.

2008-04-30  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, include/msidefs.h:
	msi: Add initial implementation of MsiPublishAssemblies.

2008-04-30  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLStyle declaration.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLImg implementation.

2008-04-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/tests/opengl.c:
	opengl32: Drop the ChoosePixelFormat test as it is very unreliable.

2008-04-30  Eric Pouech <eric.pouech@orange.fr>

	* dlls/capi2032/cap20wxx.c, dlls/dmstyle/regsvr.c,
	  dlls/gphoto2.ds/ds_image.c, dlls/msxml3/domimpl.c,
	  dlls/winex11.drv/ime.c:
	janitorial: Prototype func() should be func(void).

	* dlls/msvcr71/msvcr71.spec, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added __iob_func implementation.

	* programs/winhelp/hlpfile.c:
	winhelp: Added support for transparent bitmaps.

	* programs/winhelp/hlpfile.c:
	winhelp: Generate the proper RTF data for a table formatting.

2008-04-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/itss/itss.c:
	itss: Fix function prototype now that widl does the right thing with const.

2008-04-29  Lei Zhang <thestig@google.com>

	* dlls/userenv/Makefile.in, dlls/userenv/tests/userenv.c,
	  dlls/userenv/userenv_main.c:
	userenv: Initial implementation of CreateEnvironmentBlock.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/userenv/Makefile.in, dlls/userenv/tests/Makefile.in,
	  dlls/userenv/tests/userenv.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	userenv: Add initial tests for CreateEnvironmentBlock.

2008-04-29  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.l:
	widl: callback, code, comm_status and in_line are attribute names, not keywords.

	* tools/widl/parser.y:
	widl: Allow pointer attributes to be applied to function pointers.

	* tools/widl/parser.y:
	widl: Make constdef and externdef take a declarator instead of an ident so
	that functions and arrays can be defined using the statements.

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/widltypes.h:
	widl: Add support for "inline" on function definitions.
	Fix applying calling convention to function type.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Keep const attributes applied to pointers when writing out the type.
	Use an attribute to store the const qualifier for the pointer and type.
	Allow multiple type-qualifiers to be applied to a type by adding a
	declaration-specifier rule that encompasses type-qualifiers and types.

2008-04-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c, include/wine/wgl.h:
	wgl: We were already advertising GL_EXT_framebuffer_sRGB but not the
	corresponding WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT.

2008-04-30  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipSetPathGradientCenterPointI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipMultiplyWorldTransform.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipIsMatrixIdentity.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipIsMatrixEqual.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c:
	gdiplus: Implemented GdipGetPathWorldBoundsI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipGetPathPointsI.

2008-04-29  Austin English <austinenglish@gmail.com>

	* dlls/shell32/xdg.c:
	shell32: Fix a typo.

2008-04-30  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/start/Ko.rc:
	start: Updated Korean resource.

2008-04-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/advapi32/advapi.c:
	advapi32: Use correct function pointer cast.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/surface.c:
	wined3d: Remove unused variables.

	* dlls/uxtheme/draw.c:
	uxtheme: Remove unused variable.

	* dlls/user32/caret.c, dlls/user32/cursoricon.c, dlls/user32/dde_server.c,
	  dlls/user32/edit.c, dlls/user32/menu.c, dlls/user32/message.c,
	  dlls/user32/user16.c, dlls/user32/winpos.c:
	user32: Remove unused variables.

2008-04-29  Markus Weiland <kde@graph-ix.net>

	* dlls/dxdiagn/provider.c:
	dxdiagn: Implemented ullPhysicalMemory property for DXDiagSystemInfoContainer.

2008-04-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add multisampling support.

2008-04-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Si.rc, programs/winecfg/Sv.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/Zh.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	winecfg: Add a font size preview, update all language resources to reflect
	this change.

2008-04-29  Elias Benali <elptr@users.sourceforge.net>

	* programs/winhelp/winhelp.c:
	winhelp: Check against a NULL pointer dereference.

2008-04-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c:
	richedit: On failure to parse incoming text as RTF, EM_STREAMIN must set
	dwError to -16.

2008-04-29  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Add stub versions of the pthread functions.

	* dlls/advapi32/service.c, dlls/crypt32/msg.c, dlls/crypt32/serialize.c,
	  dlls/msi/custom.c, dlls/ole32/moniker.c, dlls/oleaut32/tmarshal.c,
	  dlls/rpcrt4/cstub.c, dlls/wintrust/asn.c,
	  programs/winedbg/tgt_minidump.c:
	Include wine/port.h everywhere we use exceptions.

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Rename a few functions to avoid conflicts with Windows headers.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Fix the GdipFillRectangles spec entries.

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Fix the gethostname prototype.

	* dlls/ws2_32/protocol.c:
	ws2_32: Don't name a parameter errno.

	* dlls/winex11.drv/opengl.c:
	winex11: Fix debug trace using the removed opengl channel.

2008-04-29  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/comment.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment insertData.

	* dlls/msxml3/domdoc.c:
	msxml3: Implement IObjectSafety for IXMLDOMDocument2.

	* dlls/msxml3/main.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml3: Implement IDispatch for IXMLDOMNode.

2008-04-28  Lei Zhang <thestig@google.com>

	* dlls/winmm/winmm.c:
	winmm: Do not unload drivers when the process is terminating.

2008-04-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/wrap.c:
	richedit: Paragraph may have multiple rows, which should possibly update nHeight.
	Otherwise, a paragraph with multiple rows might fail to make the
	scrollbar appear when displaying text.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	richedit: Private movement of cursors in text insertion should not cause
	WM_NOTIFY to be sent.
	As text is inserted, the cursor is moved to the end, and then back to
	offset 0. A reordering of operations prevents a WM_NOTIFY from being
	sent on cursor being moved to the end, and another by being moved
	back to the beginning. If the cursor was not at offset 0, then
	exactly one WM_NOTIFY must be sent, for the movement from previous
	position to the beginning.  With tests to prove this change and the
	previous one (modify flag should be off on WM_SETTEXT-caused
	WM_NOTIFY).

	* dlls/riched20/editor.c:
	richedit: WM_SETTEXT - Clear modify step flag before any notifications can
	be sent.
	Otherwise the app-defined WM_NOTIFY callback might see the modify flag
	set, even though WM_SETTEXT is supposed to clear it.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	richedit: Fix modify step setting in EM_SETCHARFORMAT.
	EM_SETCHARFORMAT with wParam==0 sets default char format and does NOT set
	modify step flag.
	EM_SETCHARFORMAT with wParam==SCF_SELECTION only sets modify step flag when
	selection is nonempty.
	EM_GETMODIFY returns -1, not 1, when modify flag is set.
	Tests for the above behavior.

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h:
	richedit: Only notify selection change when selection has actually changed
	from previous notification.
	Otherwise, redundant and early notifications are sent to apps that do not
	expect them. Fixes crash #1 with Perfect! TextEdit.

	* dlls/riched20/editor.c, dlls/riched32/tests/editor.c:
	richedit: Implement rule that in 1.0 emulation, a single CR that terminates
	the text is NOT a line break.
	Fix riched32 test that now succeed.

2008-04-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/reader.c,
	  dlls/riched32/tests/editor.c:
	richedit: Flip the big switch and encode actual CR and LF into end-of-paragraph
	runs.
	Document remaining uses of bEmulateVersion10 and other checks for CRLF in
	editor.c.
	Make RTF reader emit a \r or a \r\n according to emulation, not a \n, which
	breaks streaming tests.
	Remove todo_wine from a bunch of riched32 tests that now succeed.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c:
	richedit: Remove indication for bCRLF, now that ME_GetTextW() knows how to
	honor CR and LF counters.
	EM_GETTEXTRANGE and EM_GETSELTEXT are affected by this, so include tests to
	ensure no behavior was broken.

	* dlls/riched20/caret.c, dlls/riched20/editor.c:
	richedit: Modify ME_GetTextW() to honor CR and LF encodings.
	ME_GetTextLengthEx should ignore GTL_USECRLF in 1.0 emulation mode.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c:
	richedit: EM_LINELENGTH: honor CR and LF counters.
	Add fixup to ME_FindItemAtOffset(), fixes crash by null-pointer access.
	Add tests for EM_LINELENGTH.

	* dlls/riched20/editor.c, dlls/riched32/tests/editor.c:
	richedit: EM_GETLINE: honor CR and LF counters.
	Add richedit 1.0 tests for EM_GETLINE.

	* dlls/riched20/caret.c:
	richedit: Remove reliance on bEmulateVersion10 for end-of-line handling in
	ME_InternalDeleteText.

	* dlls/riched20/editor.c, dlls/riched20/para.c, dlls/riched20/run.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/writer.c,
	  dlls/riched32/tests/editor.c:
	richedit: Fixups to move over to reliance on CR and LF counters.
	Text streamout now honors CR and LF counters.
	Tests to pin down required EM_STREAMOUT behavior.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/para.c, dlls/riched20/undo.c:
	richedit: Add support for encoding number of CR and LF contained within a
	line break.

2008-04-28  Aric Stewart <aric@codeweavers.com>

	* dlls/hlink/extserv.c, include/hlguids.h, include/hlink.idl:
	hlink: Implement IExtensionServices.

2008-04-23  Jeremy White <jwhite@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Shift default height used in EnumStructs to the standard em size of 2048.
	As pointed out by Dmitry Timoshkov.

2008-04-29  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/ime.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/xim.c:
	winex11: Allow XIM server to be started after Wine.

2008-04-28  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl: Fix NULL pointer dereference in some failure cases.

2008-04-29  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipGetPathGradientCenterPointI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipGetDpiX/GdipGetDpiY.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipFillRectangles/GdipFillRectanglesI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipFillEllipse/GdipFillEllipseI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawImagePointsRectI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawImage.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawCurve/GdipDrawCurveI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawCurve2I.

2008-04-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Fix a few small bugs in WineD3D_ChoosePixelFormat.

2008-04-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Make the bitmap test pass under Windows 2000.

	* dlls/gdi32/enhmetafile.c:
	gdi32: info->state.next is always NULL, there is no need to save/restore it.

2008-04-29  Alexandre Julliard <julliard@winehq.org>

	* documentation/PACKAGING:
	documentation: Remove PACKAGING, this is maintained on the wiki now.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h:
	winex11: Don't put window manager decorations on shaped windows.

2008-04-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Some state changes fixes.

	* dlls/quartz/acmwrapper.c:
	quartz: Handle failures better in acmwrapper.

	* dlls/quartz/videorenderer.c:
	quartz: Keep track of the time in the video renderer.

	* dlls/quartz/memallocator.c, dlls/quartz/tests/memallocator.c:
	quartz: Fix bug in memallocator with test.

2008-04-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/dom.c:
	mshtml: Added IDispatchEx support to HTMLOptionElement.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IDispatchEx support to HTMLInputElement.

	* dlls/mshtml/htmlelem.c:
	mshtml: Added indexed access to HTMLElementCollection object support.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltextnode.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/omnavigator.c:
	mshtml: Added support for custom DISPIDs.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added IHTMLCommentElement declaration.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLOptionElement declaration.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLDOMChildrenCollection and DispDOMChildrenCollection
	declaration.

2008-04-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/reg.c, dlls/shlwapi/url.c:
	shlwapi: Remove unused variables.

2008-04-28  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Plug memory leak.

2008-04-28  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/winhelp.c:
	winhelp: Make richedit the default for rendering.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Fixed space in type with double indirection.
	Spotted by James Hawkins.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: undname: correctly handle multi-dimensional arrays.
	Based on a patch from Ulrich Küttler.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Fixed symbol unmangling for template-parameter-?? form, as well as test.
	Spotted by James Hawkins.

2008-04-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c, programs/rpcss/irotp.c:
	rpcss: When registering a moniker that is already registered in the ROT another
	ROT entry should still be created and a distinct cookie returned.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c, dlls/ole32/stubmanager.c,
	  dlls/ole32/tests/moniker.c:
	ole32: Keep track of the number of weak references to an object.
	This is so that an object will only be released when a weak-reference is
	used after the last weak reference has been released (either by
	CoReleaseMarshalData or CoUnmarshalInterface + Release).

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for marshaling an object as table-weak and as normal and
	then unmarshaling and testing that the object is released on the final release.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for registering a moniker more than once in the ROT and then
	using it.

2008-04-28  Lei Zhang <thestig@google.com>

	* dlls/advapi32/crypt.c:
	advapi32: Replace UuidToStringW call with a sprintfW.

2008-04-28  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

	* programs/reg/Ko.rc:
	reg: Updated Korean resource.

2008-04-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix typo.

2008-04-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/clipping.c,
	  dlls/winex11.drv/graphics.c:
	winex11: Merge the contents of clipping.c into graphics.c.

2008-04-27  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winecfg/driveui.c:
	winecfg: Transform the set_advanced() driveui function to unicode.

2008-04-25  James Hawkins <jhawkins@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Fix a test that fails on platforms without IME.

2008-04-20  Jens Albretsen <jens@albretsen.dk>

	* dlls/ddraw/direct3d.c:
	ddraw: Fixed device name.

2008-04-28  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Handle gethostbyname call failure, add tests.

2008-04-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlinput.c, dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLInputElement::get_disabled implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_backgroundImage implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLInputElement declaration.

2008-04-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix default axes mapping generation.

2008-04-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/moniker.c:
	ole32: Fix two comments about the running object table.

2008-04-27  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/comboex.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c:
	comctl32: Dangling pointers fix.

2008-04-28  Jeff Zaroyko <jeffz@jeffz.name>

	* tools/wine.inf.in:
	wine.inf: Use lowercase for some drivers32 entries and remove trailing
	whitespace.

2008-04-27  Jeff Zaroyko <jeffz@jeffz.name>

	* dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Increase the reported vDriverVersion.

2008-04-27  David Adam <david.adam.cnrs@gmail.com>

	* dlls/amstream/main.c, dlls/amstream/regsvr.c:
	amstream: Register CLSID_AMDirectDrawStream.

	* dlls/amstream/mediastream.c:
	amstream: Fix the condition of existence of the IMediaStream interface.

2008-04-26  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Added IObjectWithSite support in IXMLDOMDocument2.

2008-04-26  Bryan DeGrendel <sirnuke@gmail.com>

	* dlls/winex11.drv/systray.c:
	winex11: Rudimentary drawing support for display balloon tool tips in systray.

2008-04-26  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/imm32/imm.c:
	imm32: Updated implementation of the Imm{Get|Set}CompositionFont{A|W}.

	* dlls/imm32/imm.c:
	imm32: Implementation of the Imm{Get|Set}StatusWindowPos.

	* dlls/imm32/imm.c:
	imm32: Implementation of the Imm{Get|Set}CandidateWindow.

	* dlls/user32/message.c:
	user32: Set the vkey value to VK_PROCESSKEY when IME process key.

	* dlls/imm32/imm.c, include/ddk/imm.h:
	imm32: Add the updated ImmTranslateMessage declaration.

2008-04-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmfdrv/init.c:
	gdi32: Add SetPixel to the EMF DC functions.

2008-04-26  Guy Albertelli <galberte@neo.rr.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	listview: Correct return value from LVM_GETORIGIN including tests for this.
	Tests to validate return value of the LVM_GETORIGIN message and fix our
	implementation.

	* dlls/comctl32/listview.c:
	listview: Implement 2 pixel decoration at top of report style with grid lines.
	The native control has a 2 pixel header. This implements that background pixel
	line and the gridline below it.

	* dlls/comctl32/listview.c:
	listview: Implement LVS_EX_GRIDLINES functionality.
	Implement basic LVS_EX_GRIDLINES functionality including support for no items.

2008-04-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/acmwrapper.c:
	quartz: Fix acmwrapper time regression.

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/waveparser.c:
	quartz: Add a function that can be called when stopping processing data.

	* dlls/quartz/parser.h:
	quartz: Make dwSamplesProcessed a longlong.

	* dlls/quartz/filesource.c:
	quartz: Optimize the file source to do its job better.

	* dlls/quartz/dsoundrender.c, dlls/quartz/enumpins.c,
	  dlls/quartz/filesource.c, dlls/quartz/nullrenderer.c,
	  dlls/quartz/parser.c, dlls/quartz/parser.h,
	  dlls/quartz/quartz_private.h, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Make the EnumPins interface dynamic.
	Take a reference to the ibasefilter and request it for the pins and a
	cookie. This seems to be the easiest way to ensure correctness.

	* dlls/quartz/acmwrapper.c:
	quartz: Fix time discontinuities in the acm wrapper.

	* dlls/quartz/pin.c, dlls/quartz/tests/videorenderer.c:
	quartz: NotifyAllocator does not like a null argument.

2008-04-23  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/waveparser.c:
	quartz: Add a vtable argument to Parser_Create that individual filters can
	override.

2008-04-25  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix possible copy/paste error.

	* programs/winhelp/hlpfile.c:
	winhelp: Shift by 6 not 4 in case of old 3.0 file.
	This necessary piece of code was lost. Restore it.

	* programs/winhelp/hlpfile.c:
	winhelp: We can reference any page in HLPFILE_BrowsePage(). Perform similar
	change in HLPFILE_DoReadHlpFile() for the symmetry.

2008-04-27  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.l:
	widl: Accept integer constant suffixes in the lexer.

2008-04-26  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.l:
	widl: Support hex digits that use an uppercase 0X prefix.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Add typedefs to typelibs which have the public or uuid attributes,
	not any other attribute.

2008-04-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2008-04-28  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_copy_from_buffer instead of direct memory copy in
	NdrBaseTypeUnmarshall.
	This makes the code check that the buffer is big enough to read from
	before copying the data from it. The safe_buffer_increment call is still
	needed for the case where we point the memory to the buffer, so move the
	call there.

2008-04-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmetafile.c, dlls/gdi32/tests/metafile.c:
	gdi32: Save/restore internal EMF playing state on EMR_SAVEDC/EMR_RESTOREDC,
	add a test for this.

	* dlls/gdi32/dc.c:
	gdi32: Do not reselect objects while recording a metafile, that's done at the
	playing time.

2008-04-26  Eric Pouech <eric.pouech@orange.fr>

	* programs/wordpad/wordpad.c:
	wordpad: Open the filename passed on command line if any.

2008-04-26  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/input.c, dlls/winex11.drv/keyboard.c:
	winex11: Fix MapVirtualKeyEx to properly map left-right modifier keys.

	* dlls/winex11.drv/keyboard.c:
	winex11: Use constants instead of magic numbers in GetKeyNameText.

	* dlls/winex11.drv/keyboard.c:
	winex11: Fix GetKeyNameText for Right Shift.

	* dlls/dinput/keyboard.c:
	dinput: Explicitly set extended key flag for Right Shift.

2008-04-26  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/dinput/tests/joystick.c:
	dinput: joystick test: Improve reporting when enumerated axes/buttons/POVs
	don't match capabilities.

2008-04-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Also use WineD3D_ChoosePixelFormat for pbuffers.

	* dlls/wined3d/context.c:
	wined3d: Let WineD3D_ChoosePixelFormat operate on the pixel format database
	we store at WineD3D startup.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store more information about pixel formats. This is needed for some
	WineD3D_ChoosePixelFormat restructuring.

	* dlls/wined3d/context.c:
	wined3d: Split WGL pixel format selection code off from CreateContext.

2008-04-26  James Hawkins <jhawkins@codeweavers.com>

	* dlls/schannel/tests/main.c:
	schannel: Fix a test that fails in win2k3.

2008-04-25  James Hawkins <jhawkins@codeweavers.com>

	* dlls/ddraw/tests/visual.c:
	ddraw: Remove a test that fails in VMs.

	* dlls/d3d9/tests/device.c:
	d3d9: Fix a few test failures in win2k3.

	* dlls/cabinet/fdi.c, dlls/cabinet/tests/fdi.c:
	cabinet: Revert "cabinet: Fix for FDICopy with an empty cabinet file.".
	This reverts commit 33e561f53cc510c6b5be3b4f1f3d2fbf8aa7486c.
	Fixed the test that fails on all platforms.

	* dlls/msi/tests/install.c:
	msi: Remove a debugging call.

2008-04-26  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/xim.c:
	winex11: Remove unnecessary #include.

	* dlls/winex11.drv/ime.c:
	winex11: hCompStr should never be NULL because Wine expects it is not NULL.

2008-04-25  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Implemented GdipCreateLineBrushFromRect.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Implemented GdipCreatePathGradientI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c:
	gdiplus: Implemented GdipAddPathEllipseI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipAddPathBeziersI.

2008-04-21  Matthias Derer <webmaster@tonstube.de>

	* dlls/winejack.drv/audio.c:
	winejack: Re-added line which has been accidently deleted.

2008-04-25  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Change calling conventions for Interlocked* functions.

2008-04-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahomabd.sfd, fonts/tahomabd.ttf:
	fonts: Change encoding of tahomabd.sfd to unicode.

2008-04-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shellpath.c:
	shell32: Avoid traces that use size_t.

	* dlls/winex11.drv/wintab.c:
	winex11: Check if IsXExtensionPointer is defined before using it.

2008-04-24  Vitaly Perov <vitperov@etersoft.ru>

	* dlls/cabinet/fdi.c, dlls/cabinet/tests/fdi.c:
	cabinet: Fix for FDICopy with an empty cabinet file.

	* dlls/cabinet/tests/fdi.c:
	cabinet: Added a test for FDICopy with an empty cabinet file.

2008-04-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Limit number of supported axis and buttons.

2008-04-25  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/imm32/imm.c:
	imm32: Fix typos.

	* dlls/winex11.drv/ime.c:
	winex11: Destroy the handle to the composition string after it is cancelled.

2008-04-24  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c:
	user32: Edit controls should ignore WM_KEYDOWN on control + enter.

2008-04-24  James Hawkins <jhawkins@codeweavers.com>

	* dlls/kernel32/tests/sync.c:
	kernel32: Fix a test that fails in win2k3.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Fix tests that fail with the reference rasterizer.

2008-04-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected transformNode.

2008-04-25  Jeff Zaroyko <jeffz@jeffz.name>

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Use the same szShortName value as windows.

2008-04-25  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Allow to configure the desktop separately for each application.

	* programs/winecfg/winecfg.c, programs/winecfg/winecfg.h:
	winecfg: Add a couple of Unicode helper functions.

2008-04-25  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/imm32/imm.c:
	imm32: Fix a typo.

	* dlls/imm32/imm.c:
	imm32: ImmGetVirtualKey return orignal virtual key value.

	* dlls/imm32/imm.c:
	imm32: Reconstruct the ImmProcessKey, ImmTranslateMessage for the VK_PROCESSKEY.

2008-04-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Don't force tool windows to unmanaged mode.
	The detection algorithm should be good enough for that case now.

2008-04-25  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Move the func_declarator rule entirely into direct_declarator.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.l,
	  tools/widl/parser.y:
	widl: Create a statement object for import statements.
	Move the writing of include directives into the generated header into
	header.c.

	* tools/widl/expr.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Add support for string literals and wide-string literals in expressions.

	* tools/widl/parser.y:
	widl: Add support for declaring multiple fields of a structure in one statement.

	* tools/widl/parser.y:
	widl: Make the rules for parsing fields in structures, encapsulated unions
	and non-encapsulated unions more strict.
	Move the rules in fields that handle empty union cases into separate
	union rules so that they can't erroneously be accepted for structures or
	other types of unions.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Rename pident to declarator and parse the array declarations as part
	of declarators.
	This allows arrays to be used in typedefs and const statements.

	* tools/widl/parser.y:
	widl: Consolidate most of the inner loop of reg_typedefs into set_type.

2008-04-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/tmarshal.rc, dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Store the test typelib in resources instead of depending on
	an external file.

2008-04-24  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c:
	richedit: Ensure wrapping is done all the time after inserting an RTF stream.

	* dlls/riched20/paint.c:
	richedit: Properly handle the background in case of border in paragraph.

2008-04-22  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/winex11.drv/wintab.c:
	winex11: Add support for IsXExtensionPointer tablet devices.

2008-04-17  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/winex11.drv/wintab.c:
	winex11: Allow wizardpen to be detected as a stylus.

2008-04-16  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/winex11.drv/wintab.c:
	winex11: Allow wintab devices with less than 5 axes.

2008-04-25  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawImageRect/GdipDrawImageRectI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipAddPathBezier.

2008-04-25  Erik de Castro Lopo <mle+win@mega-nerd.com>

	* dlls/dbghelp/dbghelp_private.h:
	dbghelp: Fix pointer cast.

	* dlls/ntdll/rtl.c:
	ntdll: Win64 fix for get_pointer_obfuscator.

	* dlls/crypt32/chain.c, dlls/crypt32/store.c:
	crypt32: Use LOWORD on LPCSTR type instead of casting to int.

	* dlls/user32/tests/edit.c:
	user32/tests: Use SetWindowLongPtr instead of SetWindowLong.

2008-04-25  James Hawkins <jhawkins@codeweavers.com>

	* dlls/winmm/tests/mixer.c:
	winmm: Remove a failing test that is driver-specific.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv: Disable a test for capabilities not available on all printer
	drivers.

2008-04-24  James Hawkins <jhawkins@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Remove a dependence on the amount of available memory.

	* dlls/d3d8/tests/device.c:
	d3d8: Fix a few test failures in win2k3.

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix a test that fails in win2k3 SP2.

2008-04-24  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix a test failure on Windows with Terminal Server.

2008-04-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Remove unused variables.

	* dlls/setupapi/parser.c, dlls/setupapi/setupx_main.c:
	setupapi: Remove unused variables.

	* dlls/shell32/shlfileop.c, dlls/shell32/shlmenu.c:
	shell32: Remove unused variables.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove unused variables.

2008-04-24  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/hlpfile.c:
	winhelp: Emit the proper RTF stream for a metafile to RichEdit.

	* programs/winhelp/hlpfile.c:
	winhelp: Emit proper RTF tokens for a bitmap.

	* programs/winhelp/hlpfile.c:
	winhelp: Properly decode the keep bit in paragraph style.

	* programs/winhelp/hlpfile.c:
	winhelp: Set the borders of a paragraph in richedit.

	* programs/winhelp/hlpfile.c:
	winhelp: Set the alignment of paragraph in richedit.

	* programs/winhelp/hlpfile.c:
	winhelp: Added support for paragraph information.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Added support for richedit tabs in paragraph format.

2008-04-24  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c:
	makedep: Don't try to open .tlb files.

2008-04-24  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/brush.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipSetLineColors.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipGetLineColors.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipGetLineRect/GdipGetLineRectI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipFillPieI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawPolygon/GdipDrawPolygonI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawRectanglesI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawPieI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipTransformMatrixPointsI.

2008-04-24  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add typedef statements to the statement lists.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h, tools/widl/typelib.c,
	  tools/widl/typelib.h, tools/widl/widl.c, tools/widl/widl.h,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Create a list of statements in the whole IDL file, instead of just a
	list of interfaces.

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Allow NULL to be used in expressions.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Construct the pointer chain while parsing pointers, rather than storing
	a ptr_level.
	This method is more flexible and somewhat simpler.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Implement lcid property on library declarations.

2008-04-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/dom.c:
	mshtml: Added IDispatchEx support to HTMLElementCollection object.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLElementCollection declaration.

	* dlls/mshtml/htmlnode.c, dlls/mshtml/tests/dom.c:
	mshtml: Added get_nodeType implementation.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmltextnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/dom.c:
	mshtml: Added IDispatchEx support to text node.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmltextnode.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLDOMTextNode stub implementation.

	* dlls/mshtml/htmlnode.c, dlls/mshtml/tests/dom.c:
	mshtml: Added get_firstChild implementation.

	* include/mshtml.idl:
	mshtml.idl: Added IHTMLDOMTextNode declaration.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLDOMText declaration.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDOMNode2 to IDispatchEx support.

	* dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLDOMNode2 stub implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/tests/dom.c:
	mshtml: Return VT_NULL instead of empty string in getAttribute.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added more IDispatchEx tests.

2008-04-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml.tlb/rsrc.rc, dlls/msi/msi.rc, dlls/msxml3/version.rc,
	  dlls/oleaut32/tests/tmarshal.rc, dlls/shdocvw/shdocvw.rc,
	  dlls/stdole2.tlb/rsrc.rc, dlls/stdole32.tlb/rsrc.rc:
	Add makedep magic comments for typelibs in resource files.

	* Make.rules.in, configure, configure.ac, tools/makedep.c:
	makefiles: Add support for generating correct dependencies for tlb files.

2008-04-24  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix an off-by-one error in toolbar TOOLBAR_SetHotItem.

2008-04-24  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c:
	riched20: Reject RTF that is recognized as invalid.

	* dlls/riched20/editor.c, dlls/riched32/tests/editor.c:
	riched20: Implement ignoring of last \par for EM_STREAMIN - 1.0 emulation.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement ignoring of last \par for EM_STREAMIN.

2008-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/ati_fragment_shader.c:
	wined3d: Remove an unused variable.

	* dlls/d3d9/tests/visual.c:
	d3d9: Dump the device information in the visual tests.

	* dlls/d3d9/tests/visual.c:
	d3d9: Check textures for srgb writing, not surfaces.

2008-04-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix DP2ADD in GLSL.
	DP2ADD returns a scalar, and fglrx (correctly) complains that it can't
	assign that to a 3 component vector.

	* dlls/wined3d/state.c:
	wined3d: Fix the GL_ATI_separate_stencil codepath.
	glStencilFuncSeparateATI does not take a face argument, instead it
	sets the front and back facing functions at once. This means the
	renderstate_stencil_twosided helper function is somewhat pointless for
	this extension.

	* dlls/wined3d/glsl_shader.c:
	wined3d: More fglrx spam.

	* dlls/d3d9/tests/visual.c:
	d3d9: Make the offscreen format test a bit more tolerant.

2008-04-24  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Work around the host name resolving to 127.x.x.x when using that
	for binding.

2008-04-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/user_main.c:
	user32: Allow the default desktop name to be specified on a per-app basis.

	* programs/explorer/desktop.c:
	explorer: Retrieve the default desktop name from the startup parameters or
	the registry.

	* programs/explorer/desktop.c:
	explorer: Allow specifying a default size for each desktop using the
	HKCU\Software\Wine\Explorer\Desktops registry key.

	* tools/wine.inf.in:
	wine.inf: Fix the service type of the spooler service.

	* programs/services/rpc.c:
	services.exe: Don't reject config changes if the display name corresponds to
	the service being changed.

	* programs/services/services.c:
	services.exe: Make the changed status event an auto-reset event.

2008-04-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/broadcast.c:
	user32/tests: Skip tests if function is not implemented.

	* dlls/oleaut32/tests/varformat.c:
	oleaut32/tests: Skip a test on win9x.

2008-04-24  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/imm32/tests/imm32.c:
	imm32: Fix a meaningless test.
	ImmSetCompositionString generates WM_IME_COMPOSITION. Therefore test always
	fails if messages are not flushed.

	* dlls/winex11.drv/ime.c:
	winex11: Generate WM_IME_ENDCOMPOSITION when composition string is canceled.

2008-04-24  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in:
	Make.rules: Move the all: target before the implicit rules to avoid confusing
	FreeBSD make.

2008-04-23  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/keyboard.c:
	winex11: control + enter should generate '\n' instead of '\r'.

2008-04-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/wined3d/context.c, dlls/wined3d/directx.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, include/wine/wined3d_gl.h:
	wgl: Add a wine specific WGL extension which allows you to change the pixel
	format multiple times.

2008-04-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Put the core functionality of X11DRV_SetPixelFormat in a separate function.
	This is needed for a new X11DRV_SetPixelFormatWINE function which allows you
	to change the pixel format multiple times.

2008-04-23  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/hlpfile.c, programs/winhelp/winhelp.c:
	winhelp: Setup a better font size for the richedit rendering.

	* programs/winhelp/winhelp.c:
	winhelp: Allow links inside popups to work properly.

	* programs/winhelp/winhelp.c:
	winhelp: Create the shadow window also for popups handled by RichEdit.

	* programs/winhelp/winhelp.c:
	winhelp: Correctly compute the popup size and manage the popup when richedit
	is used.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Implement the first round of support for links in RichEdit.

	* programs/winhelp/hlpfile.c:
	winhelp: Added proper RTF conversion for non breakable space and hyphen.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Add proper support for charset from headers and escaped non ANSI
	characters in RTF stream.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c:
	winhelp: Start feeding the richedit control with relevant RTF stream.

	* 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/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/winhelp.c,
	  programs/winhelp/winhelp_res.h:
	winhelp: Added as an option, to use richedit to render the text window.

2008-04-23  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/wininet/http.c:
	wininet: Don't forget the INTERNET_STATUS_REDIRECT callback in HttpEndRequest.

2008-04-23  Juan Lang <juan.lang@gmail.com>

	* dlls/cryptdlg/Makefile.in, dlls/cryptdlg/cryptdlg.spec,
	  dlls/cryptdlg/main.c:
	cryptdlg: Implement GetFriendlyNameOfCertA/W.

2008-04-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/script.c:
	mshtml: Return S_OK in QueryContinue.

	* dlls/mshtml/script.c:
	mshtml: Fixed typo.

	* dlls/oleaut32/recinfo.c:
	oleaut32: Handle VT_R4 in RecordClear (spotted by Konrad Rzepecki).

	* dlls/oleaut32/recinfo.c:
	oleaut32: Clear record in RecordDestroy.

	* dlls/oleaut32/recinfo.c:
	oleaut32: Properly clear VT_BSTR record.

	* dlls/urlmon/file.c:
	urlmon: Ignore query and hash part in file protocol URL.

2008-04-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/ati_fragment_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Call activate_dimensions from the atifs code.

2008-04-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/driver.c:
	user32: Make drivers non-const to avoid a compiler warning.

	* dlls/kernel32/process.c:
	kernel32: If necessary reload the environment after wineboot has run.

2008-04-23  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Handle VK_RETURN WM_KEYDOWN events better in edit controls.
	Elias Benali wrote the initial version of this patch.

	* dlls/user32/tests/edit.c:
	user32: Add a test for sending WM_KEYDOWN to a child edit control.

2008-04-23  James Hawkins <jhawkins@codeweavers.com>

	* dlls/uxtheme/tests/system.c:
	uxtheme: Fix a test that fails in win2k3.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Fix a test that fails in win2k3.

	* dlls/riched20/tests/editor.c:
	riched20: Fix a few tests that fail in XP and up.

	* dlls/pdh/tests/pdh.c:
	pdh: Fix two tests that fail on win2k3.

2008-04-24  Michael Stefaniuc <mstefani@redhat.de>

	* programs/start/De.rc:
	start: Update the German translation.

2008-04-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/quartz/avidec.c, dlls/quartz/mpegsplit.c,
	  dlls/quartz/videorenderer.c:
	quartz: Remove unused variables.

	* dlls/riched20/editor.c, dlls/riched20/paint.c, dlls/riched20/style.c,
	  dlls/riched20/wrap.c:
	riched20: Remove unused variables.

	* dlls/qcap/yuv.c:
	qcap: Remove unused variable.

2008-04-23  Rob Shearman <rob@codeweavers.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Check that provider functions are not NULL before using them.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h,
	  include/wintrust.h:
	wintrust: Implement WTHelperGetProvPrivateDataFromChain.
	Also fill in pfnAddPrivData2Chain in WintrustLoadFunctionPointers, which
	is the complement of WTHelperGetProvPrivateDataFromChain.

	* dlls/crypt32/msg.c:
	crypt32: Decode the message content on finishing in CDecodeMsg_Update for the
	streamed case as well as the non-streamed case.

2008-04-22  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Add 'res:' protocol tests for UrlCanonicalize.

2008-04-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Yet more tests for EM_STREAMIN.

	* dlls/uxtheme/draw.c:
	uxtheme: Skip creation of temporary bitmap when painting a single tile.

	* dlls/uxtheme/draw.c:
	uxtheme: Fix nasty regression with painting of themed progress bar.

2008-04-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added elements IDispatchEx implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLUnknownElement declaration.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/htmlscript.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltable.c, dlls/mshtml/htmltextarea.c:
	mshtml: Use heap_alloc_zero for allocating node objects.

	* dlls/mshtml/htmldoc3.c, dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLDocument3::getElementById implementation.

2008-04-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/surface.c:
	d3d9: Add a test for NP2 stretchrect.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support framebuffer reading from texture_rectangle sources.

2008-04-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/ati_fragment_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/context.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use the shader backend to enable / disable atifs and nvts.
	The previous logic assumed that if NVTS or ATIFS are available they
	will be used. This happens to be true for NVTS, but ATIFS is only used
	if neither ARBFP nor GLSL are supported. This breaks fixed function
	fragment processing on ATI r300 and newer cards

2008-04-23  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	explorer: Convert the command line parsing to Unicode.

	* dlls/winex11.drv/window.c:
	winex11: Don't allow changing the X11 size of a maximized window.

	* dlls/winex11.drv/window.c:
	winex11: Make sure that the window gravity is always set.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Merged the contents of winpos.c into window.c.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Moved the X11DRV_resize_desktop function to desktop.c.

2008-04-22  Dan Kegel <dank@kegel.com>

	* dlls/gdiplus/image.c:
	gdiplus: GdipLoadImageFromStream: initialize variable.

2008-04-23  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Implemented GdipCloneFont.

2008-04-22  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Improve the way that the UrlCanonicalize tests report failure.

2008-04-21  James Hawkins <jhawkins@codeweavers.com>

	* dlls/kernel32/tests/time.c:
	kernel32: Fix a test that fails on win9x.

2008-04-21  James Hawkins <truiken@gmail.com>

	* dlls/version/tests/info.c:
	version: Fix tests that fail in win9x and win2k.

2008-04-23  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/imm32/imm.c:
	imm32: More implementation of the ImmGetConversionStatus().
	Match the ImmSetConversionStatus() function.

	* dlls/imm32/imm.c:
	imm32: Pass the old conversion status value to the IME.

	* dlls/imm32/imm.c:
	imm32: Examine whether the fOpen value differs with its old value.

2008-04-22  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/user32/defwnd.c:
	user32: Pass the WM_IME_NOTIFY message to the default IME window.

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec, include/ddk/imm.h:
	imm32: Add stub and header of Imm{Create|Show|Destroy}SoftKeyboard.

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec, include/ddk/imm.h,
	  include/imm.h:
	imm32: Add stub and header of ImmRequestMessage.

2008-04-22  Tomasz Jezierski <developers@tefnet.pl>

	* dlls/shell32/shlexec.c:
	shell32: Secure filename copy to fixed size variable wfileName.

2008-04-22  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/tests/dsound.c:
	dsound: Skip WAVE_FORMAT_EXTENSIBLE tests on directx < 8.

	* dlls/quartz/filesource.c:
	quartz: Make the file source support multiple samples by preallocating enough
	handles.

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/waveparser.c:
	quartz: Make wave parser and mpeg splitter zero copy by getting rid of the
	seperate allocator for the output pin.

	* dlls/quartz/filesource.c:
	quartz: Add some sanity checks to file splitter.

	* dlls/quartz/acmwrapper.c:
	quartz: Copy discontinuity status in acmwrapper.

	* dlls/quartz/memallocator.c:
	quartz: Fix inverted logic in memallocator.

2008-04-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/tests/filtergraph.c:
	quartz: Fix error message names in tests.

2008-04-18  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/waveparser.c:
	quartz: Optimize the processing thread to fetch one sample while processing
	another.

2008-04-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/dc.c:
	gdi32: Reselect objects into the DC only if scaling factors change.

2008-04-23  Austin English <austinenglish@gmail.com>

	* dlls/comctl32/pager.c, dlls/comctl32/toolbar.c, dlls/kernel32/comm.c,
	  dlls/kernel32/console.c, dlls/ole32/compobj.c,
	  dlls/ole32/stubmanager.c, dlls/oleaut32/typelib.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/utils.c, dlls/winex11.drv/xfont.c:
	Spelling fixes.

2008-04-22  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/winhelp.c:
	winhelp: Be sure to raise a newly (re)created window in all cases.

	* programs/winhelp/hlpfile.c:
	winhelp: Fix the link kind (and color) of the 0xEA-0xEF family.

	* programs/winhelp/winhelp.c:
	winhelp: Popup's background color should be inherited from parent.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Store reference to the popup (if any) as a WINHELP_WINDOW pointer.

	* programs/winhelp/hlpfile.c, programs/winhelp/macro.c,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Simplify most of the helpers dealing with window creation.

	* programs/winhelp/winhelp.c:
	winhelp: Also store the relative offsets of a page in the history and back
	information sets.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Added ability to locate information within a page (and to store it
	inside WNDPAGE).

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c:
	winhelp: Now use the icon out of hlpfile if any.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Simplified message box handling.

	* programs/winhelp/macro.c, programs/winhelp/winhelp.c:
	winhelp: Enable/Disable prev/next buttons if there's a prev/next page.

	* programs/winhelp/macro.c, programs/winhelp/macro.h:
	winhelp: Fixed JumpId and JumpKeyword with correct signature and implementation.

	* programs/winhelp/macro.c:
	winhelp: Replaced an erroneous FIXME by a TRACE in MACRO_DisableButton().

	* programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Don't add a page to the history when using the back button.

	* programs/winhelp/winhelp.c:
	winhelp: Properly display the page title.

	* programs/winhelp/hlpfile.c:
	winhelp: Fix the loading of a row in a table (especially, for multiple paragraphs
	in a single cell).

	* programs/winhelp/hlpfile.c:
	winhelp: Fix window caption index in |SYSTEM.

	* programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Properly handle the back button (in multiple windows, in empty
	stack...).

	* programs/winhelp/winhelp.c:
	winhelp: Present correctly the history when dealing with multiple files.

	* programs/winhelp/winhelp.c:
	winhelp: Store the history in correct order.

	* programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Added the notion of WINHELP_WNDPAGE and use it to move the history
	to the global variables.

	* programs/winhelp/winhelp.c:
	winhelp: Get rid of the reuse concept for Windows and refactor the code a bit
	for window creation / deletion.

2008-04-22  Dan Kegel <dank@kegel.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Restrict dpi slider to sane values.

2008-04-22  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/wininet/http.c:
	wininet: Remove custom content-length/type headers from redirects.

2008-04-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/netapi32/wksta.c:
	netapi32: Remove unused variable.

	* dlls/ntdll/cdrom.c, dlls/ntdll/loadorder.c, dlls/ntdll/path.c:
	ntdll: Remove unused variables.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/varformat.c:
	oleaut32: Remove unused variables.

	* dlls/msvcrt/undname.c:
	msvcrt: Remove unused variable.

	* dlls/msvfw32/drawdib.c:
	msvfw32: Remove unused variable.

2008-04-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Run tests on win9x again.

2008-04-22  Joris Huizer <jorishuizer@debian>

	* dlls/mshtml/htmldoc.c:
	mshtml: Fixed copy/paste mistake.

2008-04-22  Frans Kool <Frans.Kool@gmail.com>

	* programs/start/Nl.rc:
	start: Fixed Dutch translations.

2008-04-22  Jeff Latimer <lats@yless4u.com.au>

	* dlls/user32/tests/broadcast.c:
	user32/tests: Fix typedefs & function definitions so that the code compiles
	in visual C++ 2005.

2008-04-22  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/shdoclc/Ko.rc:
	shdoclc: Update Korean translation.

	* programs/net/Ko.rc:
	net: Update Korean translation.

	* programs/reg/Ko.rc, programs/reg/rsrc.rc:
	reg: Add Korean translation.

	* programs/start/Ko.rc:
	start: Update Korean translation.

2008-04-22  Erik de Castro Lopo <mle+win@mega-nerd.com>

	* include/wine/list.h:
	include: Fix "warning: cast from pointer to integer of different size".

2008-04-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/localspl/localspl_main.c:
	localspl: Avoid creating zero-length string values in the registry.

	* dlls/msi/action.c, dlls/msi/registry.c, dlls/msi/source.c:
	msi: Avoid creating zero-length string values in the registry.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Moved the ConfigureNotify handler to event.c.

2008-04-22  Rob Shearman <rob@codeweavers.com>

	* tools/widl/expr.c, tools/widl/expr.h, tools/widl/header.c,
	  tools/widl/proxy.c, tools/widl/typegen.c:
	widl: Remove duplicated code in the form of the write_struct_expr function by
	enhancing write_expr to allow toplevel identifiers to be prefixed by a string,
	if specified.

	* tools/widl/typegen.c:
	widl: Use expr_resolve_type to get the type of the identifier in
	write_conf_or_var_desc.
	Remove the conversion of pointer types into base types as this was only
	needed due to lack of proper type resolving.

	* tools/widl/Makefile.in, tools/widl/client.c, tools/widl/expr.c,
	  tools/widl/expr.h, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Move expression functions to a new file, expr.c.

	* tools/widl/parser.y:
	widl: Check that expressions resolve so that expressions in generated code
	will compile.
	Also check that expressions return the correct type for the attribute.

	* tools/widl/parser.y:
	widl: Pass the actual type into check_remoting_fields and check_field_common
	instead of the type name.

	* tools/widl/parser.l:
	widl: Don't free input_name in pop_import as we keep pointers to it in the
	var_t type now.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Remove EXPR_MEMBERPTR and implement it using EXPR_PPTR and EXPR_MEMBER
	instead.

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Add support for comparison, exclusive or, logical not and positive
	operators in expressions.

	* tools/widl/parser.y:
	widl: Require a constant expression for case statements.

	* tools/widl/parser.y:
	widl: Fix operator precedence in expressions.

2008-03-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/mountmgr.sys/Makefile.in, dlls/mountmgr.sys/device.c,
	  dlls/mountmgr.sys/diskarb.c, dlls/mountmgr.sys/hal.c,
	  dlls/mountmgr.sys/mountmgr.c, dlls/mountmgr.sys/mountmgr.h,
	  programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/device.c, programs/explorer/diskarb.c,
	  programs/explorer/hal.c:
	explorer/mountmgr.sys: Move device hotplug code over to mount manager.

2008-04-22  Austin English <austinenglish@gmail.com>

	* dlls/user32/button.c, dlls/user32/combo.c, dlls/user32/dde_private.h,
	  dlls/user32/edit.c, dlls/user32/painting.c, dlls/user32/spy.c,
	  dlls/user32/tests/class.c, dlls/user32/tests/combo.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/menu.c,
	  dlls/user32/uitools.c, dlls/user32/winhelp.c, dlls/user32/winproc.c,
	  dlls/uxtheme/draw.c, dlls/uxtheme/system.c,
	  dlls/winealsa.drv/waveinit.c, dlls/wineaudioio.drv/audio.c,
	  dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/ati_fragment_shader.c, dlls/wined3d/context.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  dlls/winedos/int31.c, dlls/winex11.drv/bitblt.c, dlls/wininet/http.c,
	  dlls/winmm/winmm.c, dlls/wintrust/tests/crypt.c, include/custcntl.h,
	  include/ddraw.h, include/dmusicf.h, include/mapidefs.h,
	  include/mapitags.h, include/msvcrt/share.h, include/rpcdcep.h,
	  include/shlobj.h, include/twain.h, include/wine/mscvpdb.h,
	  include/wine/wined3d_types.h, include/winsock.h,
	  programs/cmd/directory.c, programs/services/rpc.c,
	  programs/wineconsole/user.c, programs/winhelp/hlpfile.c,
	  tools/wmc/write.c:
	Spelling fixes.

2008-04-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/uxtheme/draw.c:
	uxtheme: Speed up UXTHEME_SizedBlt in the ST_TILE by building an
	appropriately-sized memory bitmap out of the tile instead of iterating with
	UXTHEME_Blt() directly.

2008-04-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/xcopy/No.rc, programs/xcopy/rsrc.rc:
	xcopy: Add Norwegian Bokmål resource.

	* programs/start/No.rc:
	start: Update Norwegian Bokmål resource.

2008-04-21  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/tests/graphics.c:
	gdiplus: Do not access freed memory in a test.

	* dlls/gdiplus/tests/graphics.c:
	gdiplus: Initialize variables in the graphics test.

2008-04-22  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winecfg/Ro.rc:
	winecfg: Update and fix the Romanian translation.

	* programs/winecfg/En.rc:
	winecfg: Fix typos in the En(US) resource.

2008-04-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c:
	richedit: Accept RTF stream that does not start with {\rtf1 in 1.0 emulation.

	* dlls/riched20/tests/editor.c:
	richedit: EM_STREAMIN tests for richedit 2.0.

	* dlls/riched32/tests/editor.c:
	richedit: EM_STREAMIN tests for richedit 1.0 emulation.

2008-04-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mpr/nps.c:
	mpr: Remove unused variables.

	* dlls/mshtml/install.c:
	mshtml: Remove unused variable.

	* dlls/msi/action.c, dlls/msi/msiquery.c, dlls/msi/source.c,
	  dlls/msi/sql.y, dlls/msi/suminfo.c:
	msi: Remove unused variables.

	* dlls/mciseq/mcimidi.c:
	mciseq: Remove unused variable.

2008-04-21  Tomasz Nowiński <arctgx@mat.uni.torun.pl>

	* dlls/shell32/shell32_Pl.rc, programs/cmd/Pl.rc, programs/cmdlgtst/Pl.rc,
	  programs/net/Pl.rc, programs/start/Pl.rc, programs/taskmgr/Pl.rc,
	  programs/winecfg/Pl.rc, programs/winefile/Pl.rc,
	  programs/wordpad/Pl.rc:
	Fixed typos in the Polish translations.

2008-04-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Process messages while waiting for the semaphore or the
	parent process.

	* dlls/winex11.drv/opengl.c:
	winex11: Get rid of the unnecessary opengl debug channel.

	* dlls/winex11.drv/window.c:
	winex11: Set type to dialog for owned popup windows.

	* dlls/user32/user32.spec, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use SetWindowPos to invalidate DCEs when changing the pixel format.

	* dlls/user32/winpos.c:
	user32: Invalide DCEs also when resizing a hidden window, or when minimizing.

	* dlls/user32/winpos.c:
	user32: Dump more SetWindowPos flags.

	* programs/winecfg/driveui.c:
	winecfg: Don't allow editing the configuration of the C drive.

2008-04-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/caret.c, dlls/riched32/tests/editor.c:
	riched32: Implement a portion of suggested interpretation of CRLF handling
	for richedit 1.0 emulation.
	Fixes a few todos introduced by previous patch.

	* dlls/riched32/tests/editor.c:
	riched32: Add more todo tests for CR and LF behavior for richedit 1.0.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETTEXTEX supports RTF strings, with tests.

	* dlls/riched20/paint.c, dlls/riched20/tests/editor.c:
	riched20: Fix behavior of EM_REPLACESEL with painting disabled.

2008-04-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c:
	mshtml: Forward IHTMLDocument2's IDispatch methods to IDispatchEx implementation.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added HTMLDocument's IDispatchEx implementation.

	* dlls/mshtml/htmldoc.c:
	mshtml: Make IHTMLDocument2 iterface offset independent.

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/task.c:
	mshtml: Added setTimeout implementation.

	* dlls/mshtml/htmlwindow.c:
	mshtml: Forward IHTMLWindow2::setTimeout to IHTMLWindow3::setTimeout.

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLWindow2::get_document implementation.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added navigator's IDispatchEx test.

2008-04-21  Steven Edwards <winehacker@gmail.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Correct the number of aguments for fill_method on unsupported
	architectures.

2008-04-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmetafile.c, dlls/gdi32/tests/metafile.c:
	gdi32: Add a test for EMR_EXTSELECTCLIPRGN, make it pass under Wine.

2008-04-21  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: GdipCreateLineBrushI implemented using float args version.

2008-04-20  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawRectangle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c:
	gdiplus: Implemented GdipAddPathLine.

2008-04-19  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/device.c:
	wined3d: Fix a possible null dereference.

2008-04-21  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c:
	libwine: Allow to specify a non-existing directory as WINEPREFIX.

	* tools/wineprefixcreate.in:
	wineprefixcreate: Use wineboot --update to run wine.inf.

	* dlls/ntdll/server.c, programs/wineboot/wineboot.c:
	wineboot: Automatically update the prefix directory if wine.inf changes.

2008-04-17  Alexandre Julliard <julliard@winehq.org>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Add an option to update the prefix directory by re-executing wine.inf.

2008-04-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Automatically setup the dosdevices directory if it doesn't exist.

2008-04-21  Austin English <austinenglish@gmail.com>

	* dlls/mciwave/mciwave.c, dlls/msvcrt/dir.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/string.c, dlls/odbccp32/tests/misc.c,
	  dlls/oleaut32/variant.c, dlls/oleaut32/vartype.c,
	  dlls/quartz/avisplit.c, dlls/quartz/dsoundrender.c,
	  dlls/riched20/style.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/serialui/confdlg.c, dlls/setupapi/devinst.c,
	  dlls/setupapi/tests/stringtable.c, dlls/setupapi/virtcopy.c,
	  dlls/shell32/shell.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/path.c, dlls/shlwapi/reg.c, dlls/shlwapi/resource.h,
	  dlls/shlwapi/string.c, dlls/shlwapi/url.c,
	  dlls/spoolss/tests/spoolss.c:
	Spelling fixes.

2008-04-19  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/drawprim.c:
	wined3d: Prevent console spamming in drawPrimitive.

	* dlls/wined3d/surface.c:
	wined3d: Add missing check for p8 primary in surface_download_data.

2008-04-19  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipVectorTransformMatrixPointsI.

2008-04-18  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/ime.c:
	winex11.drv: Generate WM_IME_ENDCOMPOSITION when preedit ends.

2008-04-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/shell32.spec, dlls/shell32/shellpath.c, include/shlobj.h:
	shell32: Implement SHGetFolderPathAndSubDirA/W.

2008-04-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/enumpins.c,
	  dlls/quartz/nullrenderer.c, dlls/quartz/tests/filtergraph.c,
	  dlls/quartz/tests/videorenderer.c, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Add some more tests and fix wine to pass them.

2008-04-18  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/waveparser.c:
	quartz: Change longlong printfs.

	* dlls/quartz/mpegsplit.c:
	quartz: Add more seek entries and fix a time continuity bug.

	* dlls/quartz/dsoundrender.c:
	quartz: Only drop Preroll samples after obtaining its time.

	* dlls/quartz/dsoundrender.c:
	quartz: Drop preroll frames in directsound renderer too.

	* dlls/quartz/acmwrapper.c:
	quartz: No longer drop packets on discontinuities.

	* dlls/quartz/filesource.c:
	quartz: Set media time in the file source.

	* dlls/quartz/acmwrapper.c:
	quartz: Make acmwrapper respect preroll samples.

2008-04-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Flux AsyncReader in PullPin_BeginFlush.

	* dlls/quartz/filesource.c:
	quartz: Fix sample leak in file source on failure path.

	* dlls/quartz/avisplit.c:
	quartz: Fix theoretical memory leak.

	* dlls/quartz/videorenderer.c:
	quartz: Make the video renderer drop preroll samples.

2008-04-18  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/hlpfile.c:
	winhelp: Silencing the copyright system record entry while parsing help files.

	* programs/winhelp/winhelp.c:
	winhelp: When no help file is passed on command line,  we should open then
	file pickup dialog.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c:
	winhelp: Instead of loading all pages at once, allow to browse them one by one.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Removed a couple of internal windows' handle and replaced them with
	control IDs.

	* programs/winhelp/winhelp.c:
	winhelp: No longer store the WINHELP_WINDOW* inside the button box.

	* programs/winhelp/winhelp.c:
	winhelp: Always create a main window, even for popups.

	* programs/winhelp/hlpfile.c:
	winhelp: Fixed the parsing of a link containing both a .hlp file and a window
	name.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Removed no longer needed field (wStringTableOffset) in Globals.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Moved all static data used when parsing HLP files into the internal
	structures.

	* programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Get rid of the WM_USER message.

	* programs/winhelp/rsrc.rc, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.ico, programs/winhelp/winhelp_res.h:
	winhelp: Add an (ugly) icon.

2008-04-21  ByeongSik Jeon <bsjeon@hanmail.net>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean translation.

2008-04-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add palette re-upload support for cards with hardware palette support.
	Before it was broken and when it worked it was slow due to unneeded
	gpu -> cpu -> gpu copying.

2008-04-20  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Add support for '%' operator in expressions.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Add support for arrays in expressions.

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Add support for "->" and "." operators in expressions.

	* tools/widl/parser.y:
	widl: Issue an error instead of crashing for dividing by zero in a constant
	expression.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y:
	widl: Automatically add "handle_t IDL_handle" parameter to functions with no
	explicit handle specified whose containing interface has the explicit_handle
	attribute.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/server.c:
	widl: The implicit_handle attribute is allowed with a handle explicitly
	specified in the function parameters.
	In that case, that handle is used instead of the implicit handle.
	Fix the check for the explicit_handle attribute being specified without
	a handle being specified in the function parameters, even though issuing
	an error is wrong. (Thanks to Marcus Meissner & Coverity for spotting
	that the check didn't do what it was supposed to do.)

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Check that fields in structures and unions referenced by non-local
	functions can be marshalled and that their attributes are consistent.

	* tools/widl/parser.y:
	widl: Stop looping in check_remoting_args when a context_handle or wire_marshal
	type is found as they are in effect fundamental types.

2008-04-20  James Hawkins <jhawkins@codeweavers.com>

	* dlls/shdocvw/tests/shortcut.c:
	shdocvw: Fix a test that fails on all platforms.

	* dlls/imm32/tests/imm32.c:
	imm32: Fix a test that fails on all systems.

	* dlls/kernel32/tests/change.c:
	kernel32: Fix two tests that fail in win9x.

	* dlls/kernel32/tests/atom.c:
	kernel32: Fix a test that fails in win9x.

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix a test that fails in win2k3.

2008-04-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Fix a few tests that fail in win9x.

2008-04-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/tests/dsound.c:
	dsound: Skip the sound checks on the primary module and change its driver
	module to "".

2008-04-20  James Hawkins <jhawkins@codeweavers.com>

	* dlls/kernel32/tests/console.c:
	kernel32: Skip the screen buffer tests if codepage 866 is not available.

2008-04-19  James Hawkins <jhawkins@codeweavers.com>

	* dlls/inetcomm/tests/mimeole.c:
	inetcomm: Fix a test that fails on all systems.

	* dlls/crypt32/tests/cert.c:
	crypt32: Remove tests for properties not present on all systems.

	* dlls/advpack/tests/files.c:
	advpack: Fix a few failing tests in win95.

2008-04-18  James Hawkins <jhawkins@codeweavers.com>

	* dlls/advapi32/tests/crypt.c:
	advapi32: Remove a test that fails on some systems.

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix a test that fails on some versions of win2k.

	* dlls/advpack/tests/files.c:
	advpack: Remove a test that fails inconsistently on several platforms.

2008-04-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* tools/wine.inf.in:
	tools/wine.inf.in: Fix a typo.

2008-04-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/cmdlgtst/Ru.rc, programs/wineconsole/wineconsole_Ru.rc:
	Update Russian translation.

	* dlls/shdoclc/Ru.rc, dlls/shdoclc/rsrc.rc:
	shdoclc: Add Russian translation.

2008-04-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/comment.c:
	msxml3: Corrected IXMLDOMComment appendData with a broken xmlTextConcat function.

2008-04-18  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml3: Implement get_prefix.

2008-04-19  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add tests for get_prefix and get_namespaceURI.

2008-04-18  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml3: Implement get_namespaceURI.

2008-04-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/edit.c:
	user32: Remove redundant LocalUnlock calls.

	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Return bitmask for 32-bit bitmaps too in GetDIBits.

2008-04-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mcicda/mcicda.c:
	mcicda: Remove unused variable.

	* dlls/mciavi32/mmoutput.c:
	mciavi32: Remove unused variables.

	* dlls/mciseq/mcimidi.c:
	mciseq: Remove unused variable.

	* dlls/kernel32/local16.c, dlls/kernel32/ne_module.c:
	kernel32: Remove unused variables.

2008-04-18  Alam Arias <Alam.GBC@gmail.com>

	* include/wingdi.h:
	include: Fix wingdi.h to define AW version of wglUseFontBitmaps and
	wglUseFontOutlines.

2008-04-18  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi/tests: Fix the return codes for Windows 2000 (without IE6 installed).

2008-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c:
	mshtml: Forward window IDispatch methods.

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added window IDispatchEx implementation.

2008-04-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/omnavigator.c:
	mshtml: Forward IOmNavigator's IDispatch method to IDispatchEx implementation.

	* dlls/mshtml/dispex.c:
	mshtml: Added IDispatchEx::GetIDsOfNames implementation.

	* dlls/mshtml/dispex.c:
	mshtml: Added IDispatchEx::Invoke implementation.

	* dlls/mshtml/dispex.c:
	mshtml: Added IDispatchEx::InvokeEx implementation.

2008-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/omnavigator.c:
	mshtml: Added IDispEx::GetDispID implementation.

2008-04-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/htmlevent.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsevents.c:
	mshtml: Added load event support.

2008-04-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlevent.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsevents.c, dlls/mshtml/script.c:
	mshtml: Parse and store onload attributes.

2008-04-18  Frans Kool <Frans.Kool@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Added missing Dutch translation.

2008-04-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/region.c, dlls/gdi32/tests/clipping.c:
	gdi32: Add a test for ExtCreateRegion, make it pass under Wine.

	* tools/winedump/emf.c:
	winedump: Print contents of EMR_INTERSECTCLIPRECT and EMR_EXTSELECTCLIPRGN.

2008-04-18  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.60.

----------------------------------------------------------------
2008-04-18  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wininet/urlcache.c:
	wininet: Improve stub for FindNextUrlCacheEntryW a tiny bit.

2008-04-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/advapi32/service.c:
	advapi32: Initialize hLock.

2008-04-18  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipVectorTransformMatrixPoints.

2008-04-17  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipGetCustomLineCapBaseCap.

2008-04-17  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Add test for switching not maximized mdi children.

	* dlls/user32/tests/msg.c:
	user32/tests: Get rid of magic number.

2008-04-17  Lei Zhang <thestig@google.com>

	* configure, configure.ac, dlls/msxml3/main.c, include/config.h.in:
	msxml3: Check for xsltInit before calling it.

2008-04-18  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/ime.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/xim.c:
	winex11: Update caret position.

	* dlls/user32/edit.c:
	user32: Handle IME messages more gracefully.

2008-04-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Fixed initialization of bit masks in GetDIBits for 16-bit bitmaps.
	Fix and improve the test cases.

2008-04-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ddraw/executebuffer.c:
	ddraw: Remove unused variables.

2008-04-18  Sergey Khodych <khodych@gmail.com>

	* dlls/dinput/tests/keyboard.c:
	dinput/tests: Add test to show dinput does not use user defined data format
	for keyboard.

2008-04-18  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Updated Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

	* dlls/user32/resources/user32_Ko.rc:
	user32: Updated Korean resource.

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

2008-04-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/script.c:
	mshtml: Store IActiveScriptParseProcedure in ScriptHost.

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLWindow3 stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Added possibility to get node object from nsIDOMNode only if available.

2008-04-17  Eric Pouech <eric.pouech@orange.fr>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix regression introduced by Win64 warning fixes.

2008-04-17  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Correct the case where Content-Length is set as well as
	Transfer-Encoding == chunked.

2008-04-18  Rhys McGuckin <rhysmcguckin@yahoo.com.au>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Check for null CleanupPolicy function pointer.

2008-04-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Don't create a temporary dir, run wineprefixcreate directly in the
	final dir.

	* tools/wine.inf.in, tools/wineprefixcreate.in:
	wineprefixcreate: Moved creation of directories to wine.inf.

	* dlls/setupapi/fakedll.c:
	setupapi: Add support for creating directories from the FakeDlls section.

	* dlls/kernel32/process.c:
	kernel32: Create the windows and system directories if necessary.

2008-04-17  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: SetupDiGetDeviceRegistryProperty should return ERROR_INVALID_DATA
	when buffer size is not 0 but buffer is NULL.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: SetupDiGetDeviceRegistryProperty should return
	ERROR_INSUFFICIENT_BUFFER when buffer size is insufficient.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add a test for SetupDiGetDeviceRegistryProperty and
	SetupDiSetDeviceRegistryProperty.

2008-04-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Remove unused variable.

	* dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Remove unused variable.

	* dlls/gdi32/path.c:
	gdi32: Remove unused variable.

2008-04-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/emf.c:
	winedump: Decipher contents of a couple EMF records.

2008-04-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/quartz/avisplit.c:
	quartz: Avoid sizeof in traces.

	* dlls/user32/static.c:
	user32: Added support for WS_EX_RIGHT in the static control.

	* dlls/user32/edit.c:
	user32: Added support for WS_EX_RIGHT in the edit control.

	* dlls/user32/button.c:
	user32: Added support for WS_EX_RIGHT in the button control.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Moved the WM_SYSCOMMAND handling to window.c.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Moved the MapNotify handler to event.c.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Moved the ExposeEvent handler to event.c.
	Use consistent naming for all event handlers.

2008-04-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* server/winstation.c:
	server: Make enum_desktop enumerate all the desktops on the window station
	with the DESKTOP_ENUMERATE right.

	* server/winstation.c:
	server: Make enum_winstations enumerate all the window stations with
	WINSTA_ENUMERATE right.

2008-04-13  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi/tests: Enumerate the STGM sharing modes in the SHCreateStreamOnFile
	tests.

2008-04-15  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/istream.c, dlls/shlwapi/tests/istream.c:
	shlwapi: Fixed the todo blocks in the SHCreateStreamOnFile tests.

2008-04-17  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implement GdipCreatePath2I.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Implement GdipCreateMatrix3I.

2008-04-16  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implement GdipAddPathArcI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Implement GdipAddPathLine2I.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/stringformat.c,
	  include/gdiplusflat.h:
	gdiplus: Implement GdipCloneStringFormat.

2008-04-16  James Hawkins <jhawkins@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix a few tests that fail in win2k.

	* dlls/ole32/tests/marshal.c:
	ole32: Fix a few tests that fail in win2k.

	* dlls/kernel32/tests/volume.c:
	kernel32: Fix a test that fails in win2k and up.

	* dlls/kernel32/tests/locale.c:
	kernel32: Fix a test that fails in win2k.

2008-04-17  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c, server/request.c, server/request.h:
	server: Keep a file descriptor open to the config directory to make sure we
	don't write the registry in the wrong place.

2008-04-16  James Hawkins <jhawkins@codeweavers.com>

	* dlls/fusion/assembly.c:
	fusion: Explicitly check for -1 for a missing table.

2008-04-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/emf.c:
	winedump: Print names for all known EMF records.

2008-04-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Map zero-sized windows but don't add WM decoration to them.

2008-04-14  Hin-Tak Leung <hintak_leung@yahoo.co.uk>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Look up in chm if url doesn't contain "://".

2008-04-16  Hin-Tak Leung <htl10@users.sourceforge.net>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Return help window handle to caller.

2008-04-12  Vincent Povirk <madewokherd+d41d@gmail.com>

	* tools/wine.desktop:
	tools: Modify wine.desktop to use start.exe /unix.

	* programs/start/En.rc, programs/start/resources.h,
	  programs/start/start.c:
	start.exe: Add /Unix switch for native file managers.

2008-04-10  Austin English <austinenglish@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/quartz/control.c,
	  dlls/quartz/filesource.c, dlls/quartz/mpegsplit.c,
	  dlls/quartz/videorenderer.c, dlls/riched20/paint.c,
	  dlls/riched20/style.c, dlls/riched20/tests/editor.c,
	  dlls/riched20/undo.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/ndr_stubless.h,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.h,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/rsaenh/mpi.c,
	  dlls/rsaenh/rc2.c, dlls/sane.ds/capability.c, dlls/sane.ds/sane_i.h:
	Spelling fixes.

2008-04-15  Tony Wasserka <tony.wasserka@freenet.de>

	* include/Makefile.in, include/d3dx9.h, include/d3dx9tex.h:
	d3dx9: Add d3dx9tex.h.

2008-03-26  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/main.c, dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement transformNode.

2008-04-13  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/urlmon/internet.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	urlmon: Add stub for CoInternetSetFeatureEnabled.

2008-04-16  Michael Hoffman <blackdragon1157@gmail.com>

	* dlls/powrprof/powrprof.c:
	powrprof: Implement IsPwrHibernateAllowed.

	* dlls/powrprof/powrprof.c:
	powrprof: Implement IsPwrShutdownAllowed.

	* dlls/powrprof/powrprof.c:
	powrprof: Implement IsPwrSuspendAllowed.

2008-04-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/dispex.c, dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h:
	mshtml: Move get_typeinfo to dispex.c.

	* dlls/mshtml/Makefile.in, dlls/mshtml/dispex.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/omnavigator.c:
	mshtml: Added generic IDispatchEx implementation and use it in OnNavigator.

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptDebug32 stub implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/script.c:
	mshtml: Make sure to null terminate buffer in parse_extern_script.

2008-04-16  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c:
	quartz: Obtain the duration using the index in avisplitter.

	* dlls/quartz/avisplit.c:
	quartz: Store the stream index in the avi stream for files that have them.

	* dlls/quartz/dsoundrender.c:
	quartz: Check for discontinuities in the directsound renderer.

	* dlls/quartz/pin.c:
	quartz: Make sure at least 1 sample is processed before returning.

	* dlls/quartz/transform.c:
	quartz: Reject samples in transform filter only when stopped.
	Use S_FALSE for saying sample is rejected.

	* dlls/quartz/videorenderer.c:
	quartz: Reject samples in video renderer when stopped.
	When stopped video renderer no longer updates, so don't even try.

	* dlls/quartz/memallocator.c:
	quartz: Fix IMediaSample2 SetPreroll and SetSyncPoint.

	* dlls/quartz/waveparser.c:
	quartz: Fix discontinuities in wave parser.

2008-04-16  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c:
	dplayx: Remove unused variables.

	* dlls/dsound/mixer.c:
	dsound: Remove unused variable.

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Remove unused variable.

2008-04-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/dib.c:
	winex11: Move code behind error return.

	* dlls/wined3d/basetexture.c:
	wined3d: Handle out of array bounds state.

2008-04-16  James Hawkins <jhawkins@codeweavers.com>

	* dlls/kernel32/tests/environ.c:
	kernel32: Remove an invalid trace and comment.

	* dlls/kernel32/tests/environ.c:
	kernel32: Fix a few failing tests in win2k.

	* dlls/kernel32/tests/environ.c:
	kernel32: Split the GetComputerName/Ex tests into their own test functions.

	* dlls/user32/tests/sysparams.c:
	user32: Fix a test that fails in XP and win2k3.

2008-04-16  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/format.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Fix the value parameter of IWineMsiRemotePackage::FormatRecord to have
	the right level of indirection for an [out] parameter.
	Remove the redundant size parameter and simplify the client code such
	that the remote function is only called once, with the value being
	automatically allocated. Add corresponding code on the server side to
	automatically allocate said value.

2008-04-16  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Create the IME UI window with the IME instance so the registered class
	can be found.

2008-04-16  ByeongSik Jeon <bsjeon@hanmail.net>

	* dlls/imm32/imm.c:
	imm32: Implement ImmSetConversionStatus.

	* dlls/winex11.drv/keyboard.c:
	winex11: Add VK_HANGUL, VK_HANJA for Korean Native IME.

2008-04-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/comdlg32/filedlg.c:
	comdlg32: CDM_GETSPEC and CDM_GETFILEPATH should preserve double quotes in
	file lists.

2008-04-16  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* configure, configure.ac, dlls/winex11.drv/xim.c, include/config.h.in:
	winex11.drv: Fix Solaris build error.
	Solaris doesn't define XICCallback.

2008-04-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/waveparser.c:
	quartz: Add a Disconnect function to the parser and use it to clean up allocated
	memory in avisplitter.

2008-04-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c:
	quartz: Parse old style avi index.

	* dlls/quartz/avisplit.c:
	quartz: Make the avi splitter skip index headers.

	* dlls/quartz/avisplit.c:
	quartz: Dump opendml indexes and header.

2008-04-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Handle exit path where bind not allocated yet.

2008-04-14  Tomasz Jezierski <developers@tefnet.pl>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Apparently it is possible to have chm file without #STRINGS in it,
	so we should not stop processing file at it.

2008-04-16  Michael Stefaniuc <mstefani@redhat.de>

	* fonts/tahoma.sfd, fonts/tahoma.ttf:
	fonts: Add the Romanian glyphs SsTt with "comma below" to the tahoma font.

2008-04-15  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/tests/enum_jobs.c, dlls/qmgr/tests/job.c:
	qmgr/tests: Fix minor potential memory leaks.

2008-04-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmime/graph.c, dlls/dmime/performance.c, dlls/dmime/segment.c:
	dmime: Remove unused variables.

	* dlls/comctl32/syslink.c, dlls/comctl32/toolbar.c:
	comctl32: Remove unused variables.

	* dlls/dinput/joystick_linux.c:
	dinput: Fix handle leak.

	* dlls/browseui/progressdlg.c:
	browseui: Fix handle leak.

2008-04-15  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Change alls calls to error in the parser to error_loc so that line number
	information is printed.

	* dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Test and fix I_RpcExceptionFilter.

	* dlls/ole32/tests/clipboard.c:
	ole32: Add tests for clipboard's implementation of IDataObject_GetData.

	* dlls/ole32/clipboard.c, dlls/ole32/tests/clipboard.c:
	ole32: Fix OLEClipbrd_IDataObject_QueryGetData to conform to the tests.

	* dlls/ole32/tests/clipboard.c:
	ole32: Add some tests for OleGetClipboard.
	Test the IDataObject_QueryGetData function of the returned object.

	* include/shobjidl.idl:
	include: Make IContextMenu interface in shobjidl.idl local since some parameters
	are pointers to structures with fields that can't be marshalled.

2008-04-15  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: LineDDA shouldn't include the end point.  Add some tests.

2008-04-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/fusion/assembly.c:
	fusion: Fix a number of leaks in assembly_create.

	* tools/wine.inf.in:
	wine.inf: Use a proper services section to install services.

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Install services in InstallHinfSection.

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Implemented SetupInstallServicesFromInfSectionW.

	* dlls/setupapi/queue.c, dlls/setupapi/setupapi_private.h:
	setupapi: Move strdupW and strdupWtoA to the setupapi_private.h header.

	* include/setupapi.h:
	include: Add the SPSVCINST_* setupapi flags.

2008-04-13  James Hawkins <jhawkins@codeweavers.com>

	* dlls/fusion/Makefile.in, dlls/fusion/asmcache.c, dlls/fusion/assembly.c,
	  dlls/fusion/fusionpriv.h, dlls/fusion/tests/asmcache.c:
	fusion: Implement IAssemblyCache::InstallAssembly.

2008-04-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Remove unused variables.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Remove unused variables.

	* dlls/crypt32/encode.c:
	crypt32: Remove unwanted shadow variable.

2008-04-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/d3d9/tests/visual.c:
	d3d9: Initialized 2 variables with NULL.

2008-04-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shell32_De.rc:
	shell32: Correct casing for "Wine".

2008-04-14  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c:
	user32: Handle ctrl + end in edit control.

	* dlls/user32/edit.c:
	user32: Handle ctrl + home in edit control.

	* dlls/user32/edit.c:
	user32: Do checks in the right order in EDIT_BuildLineDefs_ML.

2008-04-15  Jacek Caban <jacek@codeweavers.com>

	* include/mshtml.idl:
	mshtml.idl: Added IHTMLWindow3 declaration.

	* include/mshtmdid.h:
	mshtmdid.h: Fixed IHTMLWindow2 dispids.

2008-04-10  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/fourcc.h, dlls/quartz/waveparser.c,
	  include/aviriff.h:
	include: Update aviriff header.

2008-04-14  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Update start_time if the current position is changed.

2008-04-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/videorenderer.c:
	quartz: Add VIDEOINFOHEADER2 support to VideoRenderer.

2008-04-14  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winhelp/Fr.rc:
	winhelp: Updated French translation.

	* programs/winefile/Fr.rc:
	winefile: Updated French translation.

	* programs/winecfg/Fr.rc:
	winecfg: Updated French translation.

	* dlls/comdlg32/cdlg_Fr.rc:
	comdlg32: Updated French translation.

2008-04-14  Jörg Höhle <hoehle@users.sourceforge.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Fix missing break inside switch in SetAutoGenFilterType.

2008-04-14  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/message.c, include/imm.h:
	user32: Call ImmProcessKey in TranslateMessage to allow IMEs to handle key
	processing if they choose to.

2008-04-14  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* dlls/user32/resources/user32_Ko.rc:
	user32: Updated Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

	* programs/winemine/Ko.rc:
	winemine: Updated Korean resource.

2008-04-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winhelp/No.rc:
	winhelp: Update Norwegian Bokmål resource.

	* programs/regedit/No.rc:
	regedit: Update Norwegian Bokmål resource.

2008-04-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/Makefile.in, include/dvdmedia.h:
	include: Add dvdmedia stub header.

2008-04-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/waveparser.c:
	quartz: Bring waveparser to the same level as the mpeg splitter.

	* dlls/quartz/transform.c:
	quartz: Silence seeking fixmes on transform filter.

2008-04-10  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/nullrenderer.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c:
	quartz: Silence requests for IVideoWindow.

2008-04-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Set sane defaults for pin stream rate.

	* dlls/quartz/avidec.c:
	quartz: Don't clean up in avi decoder if driver isn't opened.

2008-04-14  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c:
	richedit: Force window update when the word wrap option has changed.

2008-04-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Map glyph to Symbol range only if the font supports symbol encoding.

2008-04-10  Austin English <austinenglish@gmail.com>

	* dlls/oleaut32/dispatch.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/recinfo.c, dlls/oleaut32/safearray.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/ungif.h, dlls/oleaut32/varformat.c,
	  dlls/oleaut32/variant.c, dlls/oleaut32/vartype.c:
	oleaut32: Spelling fixes.

2008-04-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/dosmem.c, programs/winevdm/winevdm.c:
	winedos: Handle memory reservation errors more gracefully.

	* dlls/kernel32/dosmem.c:
	kernel32: Reserve the low 64Kb area separately from the rest of the DOS memory.

	* loader/preloader.c:
	preloader: Reserve low memory areas in separate chunks.

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Fixed typo in CLSID_InternetShortcut.

2008-04-14  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Add checking to arguments of non-local functions.
	Check that out arguments have enough levels of indirection and that they
	don't derive from void * or a function pointer.

	* tools/widl/parser.y, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widltypes.h:
	widl: Add functions to print an error or warning message using location
	information to enable these to be printed accurately when a check is done
	after an element is parsed.
	Add location information to variable automatically, since this is will
	be useful for type checking of arguments.

	* tools/widl/write_msft.c:
	widl: Write out TYPEFLAG, FUNCFLAG and VARFLAG flags for all attribute we
	currently parse.
	Add FIXMEs for the remaining ones and remove the warning for
	unimplemented attribute types since we now support all the attributes
	that we parse.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add support for the broadcast and idempotent operation attributes.

	* tools/widl/parser.y:
	widl: Output a warning if duplicate attributes are specified.

	* tools/widl/parser.y:
	widl: Check that attributes are applicable for libraries,  modules,
	dispinterfaces and coclasses and otherwise issue an error.

	* tools/widl/parser.y:
	widl: The odl attribute is valid for dispinterfaces.

	* tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h:
	widl: Make the attrs parameter passed to start_typelib const.

	* tools/widl/parser.y:
	widl: Check that attributes applied to typedefs and fields are applicable and
	issue an error otherwise.

	* tools/widl/parser.y:
	widl: Check that attributes applied to interfaces, functions and arguments
	are applicable and issue an error if not.

	* dlls/pstorec/pstorec.c, include/pstore.idl:
	pstorec: Fix incorrectly spelt PPST_PROMPTIFO type in pstorec.c and pstore.idl.

	* include/amvideo.idl, include/axextend.idl, include/dimm.idl,
	  include/shobjidl.idl:
	include: Add local to interfaces or functions that take a void * parameter
	and so aren't designed to work remotely.

	* include/tom.idl:
	include: Fix a typo in a level of indirection in tom.idl.
	The parameter for ITextPara::GetDuplicate should have two levels of
	indirection.

	* include/indexsrv.idl:
	include: The unique attribute doesn't make any sense in the interface header,
	so remove it.
	It is only accepted by MIDL as a synonym for pointer_default(unique),
	but it isn't a synonym in widl so remove it.

2008-04-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Fix the type hint for the desktop window.

	* dlls/winex11.drv/window.c:
	winex11: Make WS_EX_APPWINDOW windows have normal type.

	* dlls/winex11.drv/winpos.c:
	winex11: Don't set full screen style on minimized windows.

2008-04-12  Kai Blin <kai.blin@gmail.com>

	* dlls/dpnhpast/dpnhpast.spec, dlls/dpnhpast/main.c, include/dpnathlp.h:
	dpnhpast: Implement a stub for DirectPlayNATHelpCreate.

2008-04-12  Rok Mandeljc <rok.mandeljc@email.si>

	* dlls/shell32/shell32_Si.rc:
	shell32: Updated Slovenian translation to reflect changes in About dialog.

	* programs/winecfg/Si.rc:
	winecfg: Update Slovenian translation to reflect recently introduced changes.

	* dlls/comdlg32/cdlg_Si.rc:
	comdlg32: Fix a mistake in Slovenian translation.

	* dlls/winmm/winmm_Si.rc:
	winmm: Slovenian translation: Add a string that got lost during last update.

2008-04-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Remove unused variables.

2008-04-11  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm32: Implement ImmProcessKey and ImmTranslateMessage.

	* dlls/imm32/imm.c, include/ddk/imm.h:
	imm32: All HIMCC in the InputContext should be initialized at creation.

2008-04-09  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/wintab32/context.c:
	wintab32: Implement WTSetA/W.

2008-04-13  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/gphoto2.ds/gphoto2_Ru.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Russian translation.

	* programs/notepad/Ru.rc, programs/wineconsole/wineconsole_Ru.rc:
	Update Russian translation.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Send scan code when adjusting modifier key states.

2008-04-13  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resource.

2008-04-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Clarify which font doesn't contain 'x'.

2008-04-14  Francois Gouget <fgouget@free.fr>

	* libs/wine/ldt.c, loader/preloader.c:
	Spelling fix in the ldt bitfields.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/jscript/tests/jscript.c:
	jscript/tests: Fix the '\n's in an ok() call.

	* dlls/wldap32/wldap32_Fr.rc:
	wldap32: Fix typo in the French resources.

	* dlls/mshtml/tests/htmldoc.c, dlls/shdocvw/tests/webbrowser.c:
	Fix spelling of dwAssign.

	* dlls/ole32/antimoniker.c, dlls/ole32/classmoniker.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/itemmoniker.c:
	ole32: Fix spelling of GetComparisonData().

2008-04-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't use dead-zone from the device.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Joysticks are not supported for DX v3.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Assign button GUID to joystick buttons.

2008-04-11  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Fixed incorrect brackets bug.

	* programs/oleview/typelib.c:
	oleview: Add dual interfaces support to coclasses.

2008-04-12  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/pe_module.c:
	dbghelp: Fix invalid pointer dereference.

2008-04-12  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add buffer size checks to base type unmarshalling.
	Reimplement NdrSimpleTypeUnmarshall using similar macros to
	NdrBaseTypeUnmarshalling without buffer checks, due to
	NdrSimpleTypeUnmarshall not doing any safety checks.

	* dlls/qmgr/Makefile.in, dlls/qmgr/qmgr_main.c:
	qmgr: Dynamically link to advpack.dll.
	Use RegInstall instead of RegInstallA as RegInstallA isn't available in
	some native versions of advpack commonly installed by programs.

2008-04-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/comboex.c, dlls/comctl32/listview.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/rebar.c:
	comctl32: Remove unused variables.

2008-04-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dnsapi/record.c:
	dnsapi: Remove unused variables.

2008-04-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
	user32: LoadImage(IMAGE_BITMAP) should reject invalid BMP files (with tests).

2008-04-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dc.c, dlls/gdi32/tests/dc.c:
	gdi32: Fix CreateCompatibleDC to reject invalid DCs.

	* programs/wordpad/print.c:
	wordpad: Don't pass an invalid DC to CreateCompatibleDC.

2008-04-11  Colin Finck <mail@colinfinck.de>

	* dlls/gdi32/tests/dc.c:
	gdi32: Add a test to demonstrate a CreateCompatibleDC problem.

2008-04-11  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/combo.c:
	user32: Make sure there is space for at least 6 items in a combo dropdown
	without forcing it to be at most 6 items as well.

	* dlls/imm32/imm.c:
	imm32: Remember to unset the hwnd for a context when that hwnd is associated
	with a different context.

2008-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/message.c:
	user32: Use appropriate type for lresult.

2008-04-11  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, tools/Makefile.in, tools/wine.inf, tools/wine.inf.in,
	  tools/wineprefixcreate.in:
	wine.inf: Add a version number to make sure the file changes between versions.

2008-04-10  Matthew D'Asaro <matthew@thinkpad.home>

	* programs/winecfg/En.rc, programs/winecfg/resource.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Add option to let wine decorate windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Add registry option to let wine decorate windows.

2008-04-10  James Hawkins <jhawkins@codeweavers.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Fix a few tests that fail in win2k.

2008-04-10  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add colorkeyed blit to p8_primary_test.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add viewport clearing tests.

	* dlls/ddraw/viewport.c:
	ddraw: Temporarily activate viewport when clearing.

	* dlls/ddraw/device.c, dlls/ddraw/viewport.c:
	ddraw: Set active_device in AddViewport.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/viewport.c:
	ddraw: Add possibility to ignore lights in viewport_activate.
	Mostly NOP regarding existing functionality, but makes it possible to skip light
	activation when it's not needed (like when clearing).

	* include/d3d.h:
	include/d3d.h: Fix method calling macros.

2008-04-11  Rob Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/header.c:
	widl: Support non-default calling conventions for non-object functions.

	* tools/widl/header.c, tools/widl/proxy.c:
	widl: Support non-default calling conventions for object methods.

	* dlls/advapi32/service.c:
	advapi32: Add exception handling around all service RPC calls.

	* dlls/ole32/moniker.c:
	ole32: Use I_RpcExceptionFilter instead of custom exception filter for RPC calls.

	* programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h, programs/wineboot/wineboot.c:
	services: Automatically start boot-start, system-start and auto-start services
	when services.exe is started, instead of in wineboot.exe.

	* programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h:
	services: Split RPC_MainLoop into initialisation and the actual loop.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcExceptionFilter.

2008-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/exticon.c, dlls/user32/listbox.c, dlls/user32/sysparams.c:
	user32: Fix Win64 warnings.

2008-04-11  Peter Urbanec <winehq.org@urbanec.net>

	* dlls/comctl32/updown.c:
	comctl32: Mousewheel support for updown control.

2008-04-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/wininet/utility.c:
	wininet: Properly initialize struct.

2008-04-09  Jeremy White <jwhite@winehq.org>

	* include/wine/winbase16.h:
	include: Add a resource type for scalable font resource (.fot) files.

2008-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/fnt2bdf.h, tools/fnt2fon.c:
	tools: Fix font structure layout for 64-bit mode.

2008-04-11  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: CreateCoclassHeader partially implemented.

	* programs/oleview/typelib.c:
	oleview: Removed memory leak in EnumImplTypes.

	* programs/oleview/typelib.c:
	oleview: Added coclass handling base.

	* programs/oleview/typelib.c:
	oleview: Skip IDispatch functions in dual interfaces properly.

2008-04-10  James Hawkins <jhawkins@codeweavers.com>

	* dlls/kernel32/tests/environ.c:
	kernel32: Add traces to see why the tests fail in win2k.

	* dlls/ntdll/tests/error.c:
	ntdll: Fix a few tests that fail in win2k.

	* dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c:
	crypt32: Fix a few tests that fail in win2k.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix a few tests that fail in win2k.

2008-04-10  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Add a stub for GdipSetMetafileDownLevelRasterizationLimit.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetLineTransform.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetLinePresetBlend.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetLineLinearBlend.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetLineColors.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/region.c:
	gdiplus: Add a stub for GdipSetInfinite.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesToIdentity.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesThreshold.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/gdipluscolor.h, include/gdipluscolormatrix.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Add a stub for GdipSetImageAttributesRemapTable.

2008-04-10  Petr Sumbera <petr.sumbera@sun.com>

	* server/fd.c:
	server: Workaround for conflict between Wine and Solaris list.h.

	* programs/winetest/Makefile.in:
	winetest: Fix shell substitution syntax for Solaris.

2008-04-10  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* tools/wine.desktop:
	tools: Add Spanish translation to wine.desktop.

2008-04-10  Juan Lang <juan.lang@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/cryptui/Makefile.in, dlls/cryptui/cryptui.spec,
	  dlls/cryptui/main.c:
	cryptui: Add stub DLL.

	* dlls/softpub/Makefile.in, dlls/softpub/main.c,
	  dlls/softpub/softpub.spec:
	softpub: Forward softpub functions to wintrust.

2008-04-10  Rob Shearman <rob@codeweavers.com>

	* dlls/winedos/vga.c:
	winedos: The calling convention should come after the return type in the
	declaration of VGA_DoShowMouse for portability.

	* dlls/mshtml/install.c:
	mshtml: Fix the buffer length being passed into MultiByteToWideChar in
	set_registry.

	* dlls/mshtml/protocol.c:
	mshtml: Support parsing the resource type in the res:// protocol.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h,
	  dlls/shell32/shfldr_netplaces.c, dlls/shell32/tests/Makefile.in,
	  dlls/shell32/tests/shfldr_netplaces.c:
	shell32: Implement ParseDisplayName for EntireNetwork in the Network Places
	shell folder.
	Add a test for this behaviour.

2008-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/input.c:
	user32/tests: Replace the keyboard flags bitfield by the official flag
	definitions.

	* dlls/winex11.drv/keyboard.c:
	winex11: Replace the keyboard flags bitfield by the official flag definitions.

	* dlls/user32/menu.c, dlls/winex11.drv/winpos.c:
	user32: Moved the menu activation hack on managed windows to the X11 driver.

	* dlls/user32/driver.c, dlls/user32/nonclient.c,
	  dlls/user32/user_private.h, dlls/user32/winpos.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c:
	user32: Forward all WM_SYSCOMMAND messages to the driver, not only moves
	and resizes.

	* dlls/comctl32/status.c:
	comctl32: Get rid of the hack to remove size grips on managed windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Make sure to flush painting operations before moving a window.

2008-04-04  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xim.c:
	winex11: Connect to XIM server dynamically.

2008-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xim.c:
	winex11: Separate the XIM process-wide setup from the IME creation.

2008-04-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/control.c:
	quartz: Add stubs for the IMediaSeeking interface in SeekingPassThru.

	* dlls/quartz/control.c, dlls/quartz/main.c, dlls/quartz/quartz_private.h:
	quartz: Add a stub for SeekingPassThru.

2008-04-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Correctly handle NULL req in get_nscontainer_from_load_group.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added DispHTMLWindow2 dispinterface.

	* include/dispex.idl:
	include: Added ICanHandleException interface.

	* dlls/jscript/tests/Makefile.in, dlls/jscript/tests/jscript.c:
	jscript: Added IObjectSafety tests.

2008-04-09  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesOutputChannelColorProfile.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/Makefile.in, include/gdiplus.h, include/gdipluscolor.h:
	gdiplus: Add a stub for GdipSetImageAttributesOutputChannel.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesNoOp.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesGamma.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c:
	gdiplus: Add a stub for GdipSetImageAttributesCachedBackground.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/region.c:
	gdiplus: Add a stub for GdipSetEmpty.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  include/gdiplusgpstubs.h:
	gdiplus: Add a stub for GdipSetEffectParameters.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetCustomLineCapWidthScale.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetCustomLineCapStrokeJoin.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetCustomLineCapBaseInset.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipGetCustomLineCapBaseInset.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Add a stub for GdipSetCustomLineCapBaseCap.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusgpstubs.h:
	gdiplus: Add a stub for GdipSetClipRegion.

	* dlls/user32/dialog.c, dlls/user32/edit.c:
	user32: Handle VK_TAB in EDIT_WM_KeyDown.

2008-04-09  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qedit/mediadet.c:
	qedit: Add a stub for IMediaDet_get_StreamLength.
	To get this working by querying the filters for IMediaSeeking and calling
	GetDuration, we need a little better support from quartz.  For now a stub
	is better than nothing.

	* dlls/qedit/mediadet.c, dlls/qedit/tests/mediadet.c:
	qedit: Implement IMediaDet_get_FrameRate.

	* dlls/qedit/mediadet.c, dlls/qedit/tests/mediadet.c:
	qedit: Implement IMediaDet_get_StreamMediaType.

2008-04-09  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added returns as arguments in interfaces with oleautomation flag.

	* programs/oleview/typelib.c:
	oleview: Hide functions without id property in dual interfaces.

	* programs/oleview/typelib.c:
	oleview: Fixed idl files generation with oleautomation flag.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Fixed idl files generation with dual interfaces.

	* programs/oleview/typelib.c:
	oleview: Added helpstring to functions.

2008-04-09  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Fix calculation of array size in bytes.

2008-04-09  Austin English <austinenglish@gmail.com>

	* dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c, dlls/ole32/compobj.c,
	  dlls/ole32/compositemoniker.c, dlls/ole32/datacache.c,
	  dlls/ole32/defaulthandler.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ifs.c, dlls/ole32/itemmoniker.c, dlls/ole32/moniker.c,
	  dlls/ole32/ole16.c, dlls/ole32/pointermoniker.c, dlls/ole32/rpc.c,
	  dlls/ole32/stg_prop.c, dlls/ole32/storage.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Spelling fixes.

2008-04-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/axextend.idl:
	include: Add ISeekingPassThru interface.

	* dlls/quartz/mpegsplit.c:
	quartz: Implement stop position in the mpeg splitter.

	* dlls/quartz/filtergraph.c:
	quartz: Implement stop position in the filtergraph.

2008-04-10  Alexandre Julliard <julliard@winehq.org>

	* programs/Makefile.in:
	programs: Remove winelauncher from install rules.

	* dlls/user32/tests/cursoricon.c:
	user32/tests: Avoid testing uninitialized data.

2008-04-09  Tomasz Jezierski <developers@tefnet.pl>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix for writing outside allocated memory in HH_AddToolbar.

2008-04-08  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c:
	user32: Fix a typo.

2008-04-09  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Add edit control check to see if its in a dialog on WM_CHAR/VK_TAB.

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Add edit control check to see if its in a dialog on WM_CHAR/VK_RETURN.

2008-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Flush the display after creating X windows.

	* dlls/winex11.drv/clipboard.c:
	winex11: Added an error handler to catch bad atoms in clipboard selections.

2008-04-09  Steven Edwards <winehacker@gmail.com>

	* include/setupapi.h:
	include/setupapi: Remove extra semicolons.

	* server/mach.c:
	server: Remove unneeded semicolon.

2008-04-09  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Implement ImmUnregisterWord using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Implement ImmRegisterWord using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Implement ImmGetRegisterWordStyle using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Semi-stub implement ImmGetConversionList using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Semi-stub implement ImmEscape using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Semi-stub implement ImmEnumRegisterWord using loaded IME.

2008-04-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winhelp/callback.c, programs/winhelp/hlpfile.c,
	  programs/winhelp/macro.lex.l, programs/winhelp/winhelp.c:
	winhelp: Fix Win64 warnings.

	* programs/wordpad/print.c, programs/wordpad/registry.c:
	wordpad: Fix Win64 warnings.

	* programs/winefile/winefile.c:
	winefile: Fix Win64 warnings.

	* programs/wineconsole/wineconsole.c:
	wineconsole: Fix Win64 warning.

	* programs/wineboot/wineboot.c:
	wineboot: Fix Win64 warnings.

	* programs/regedit/listview.c, programs/regedit/main.c,
	  programs/regedit/main.h, programs/regedit/treeview.c:
	regedit: Fix Win64 warnings.

2008-04-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/qedit/tests/qedit.rc:
	qedit/tests: Fix dependency.

2008-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/keyboard.c:
	winex11: Fix KeymapNotify handler to take left/right modifiers into account.

	* dlls/winex11.drv/systray.c:
	winex11: Get rid of the useless systray hidden flag.

	* dlls/winex11.drv/systray.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add some generic support for XEMBED client windows.

	* dlls/winex11.drv/winpos.c:
	winex11: Abstract window map/unmap to separate functions.

2008-04-04  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/wineps.drv/wps_Ko.rc:
	wineps.drv: Updated Korean resource.

	* programs/xcopy/Ko.rc:
	xcopy: Updated Korean resource.

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

	* programs/winemine/Ko.rc:
	winemine: Update Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

	* programs/uninstaller/Ko.rc:
	uninstaller: Updated Korean resource.

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* programs/notepad/Ko.rc:
	notepad: Updated Korean resource.

2008-04-07  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Check for NULL vertex declarations.

2008-04-08  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusenums.h:
	gdiplus: Add a stub for GdipSetClipRectI.

2008-04-08  Austin English <austinenglish@gmail.com>

	* dlls/msvcrt/cppexcept.h, dlls/msvcrt/main.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrt/undname.c, dlls/mswsock/mswsock.c, dlls/msxml3/node.c,
	  dlls/msxml3/pi.c, dlls/msxml3/tests/domdoc.c, dlls/netapi32/ds.c,
	  dlls/netapi32/nbnamecache.h, dlls/netapi32/nbt.c,
	  dlls/netapi32/wksta.c, dlls/ntdll/directory.c, dlls/ntdll/path.c,
	  dlls/ntdll/reg.c, dlls/ntdll/relay.c, dlls/ntdll/serial.c,
	  dlls/ntdll/tests/atom.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/om.c, dlls/ntdll/tests/reg.c,
	  dlls/ntdll/tests/rtl.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c:
	Spelling fixes.

2008-04-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Make the directsound renderer handle the Play->Pause->Play position
	without dropping data.

	* dlls/quartz/mpegsplit.c:
	quartz: Generate a seek table for the mpeg splitter.
	Speeds up seeking mp3's on large files.

	* dlls/quartz/control.c, dlls/quartz/pin.c:
	quartz: Remove while { } while construct.
	Thanks to Andrew Talbot for spotting this.

2008-04-09  Alexandre Julliard <julliard@winehq.org>

	* tools/bug_report.pl, tools/genpatch:
	tools: Remove the obsolete bug_report.pl and genpatch scripts.

	* .gitignore, programs/Makefile.in, programs/winelauncher.in:
	programs: Remove obsolete winelauncher script.

2008-04-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c:
	d3d9: Some Windows drivers set undefined attributes to 0.0.

	* dlls/d3d9/tests/visual.c:
	d3d9: Accept erros in the fvp->3.0 pixel shader varying test.
	Some cards/drivers like ATI and the Geforce 8 driver return an error in
	this case, make the test accept that. This lifts some constraints we
	have to care for in WineD3D and removes one of the requirement for the
	packing shader. We still need the packing shader for vs_1_1 -> ps_3_0
	mapping and for indirect pixel shader varying addressing though.

	* dlls/d3d9/tests/visual.c:
	d3d9: Make the srgb reading test less strict.

2008-04-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c:
	wined3d: Disable blending when clearing.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Disable MAG filters on formats that do not support them.

	* dlls/wined3d/basetexture.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make the mag filter lookup a separate array.
	This makes it easier to make this a per texture / per adapter property.
	Somewhen we should rename the remaining lookup type in the general
	lookup table to wraplookup.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Disable texture filtering on textures that do not support it.
	OpenGL always offers filtering on all formats, and if the hardware
	doesn't support it the driver falls back to software. Direct3D on the
	other hand silently disables filtering, so that's what we should do too.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the min mip lookup type a texture property.

2008-04-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Report D3DUSAGE_QUERY_WRAPANDMIP support.

2008-04-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Store the number of aux buffers in the context.

2008-04-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/quartz/parser.c:
	quartz: Add missing lock releases on some code paths (Smatch).

2008-04-08  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qedit/mediadet.c, dlls/qedit/tests/mediadet.c:
	qedit: Implement IMediaDet_(put|get)_CurrentStream.

	* dlls/qedit/mediadet.c, dlls/qedit/tests/mediadet.c,
	  dlls/qedit/tests/qedit.rc, dlls/qedit/tests/rc.h,
	  dlls/qedit/tests/test_sound.avi:
	qedit: Implement IMediaDet_get_OutputStreams.

	* dlls/qedit/Makefile.in, dlls/qedit/mediadet.c,
	  dlls/qedit/tests/mediadet.c:
	qedit: Implement IMediaDet_get_Filename.

	* dlls/qedit/mediadet.c, dlls/qedit/tests/mediadet.c:
	qedit: Implement IMediaDet_put_Filename.

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Fix an incorrect count given to GetTempPathW.

2008-04-08  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: ImmDestroyContext cannot destroy the default context.

2008-04-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/advapi32/cred.c:
	advapi32: Array parameters are passed to function as pointers so lose size
	information.

2008-04-08  Erik de Castro Lopo <mle+win@mega-nerd.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Clear end-of-file flag on fseek.

2008-04-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Make the pullpin forward the BeginFlush before doing its own flushing.

	* dlls/quartz/filesource.c:
	quartz: Don't free a null media type in the file source.

	* dlls/quartz/dsoundrender.c:
	quartz: Make the DirectSound renderer return S_FALSE packet if in the paused
	state.

	* dlls/quartz/transform.c:
	quartz: Drop packets in the transform filter if in the wrong state.

	* dlls/quartz/filtergraph.c:
	quartz: Try creating the file reader from the filter source first before
	falling back to the generic async file reader.

	* dlls/quartz/mpegsplit.c:
	quartz: Make mpeg splitter keep track of play position and keep last sample
	if sending was not successful.
	This fixes data discontinuities that earlier occured after a
	stop/pause command or the downright rejection of a sample (S_FALSE).

2008-04-08  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/systray.c:
	explorer: Implement a global system tray window.

	* dlls/winex11.drv/systray.c:
	winex11: Add a timer to detect when a systray owner has been destroyed.

	* dlls/winex11.drv/systray.c:
	winex11: Make the system tray window transparent.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/systray.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  programs/explorer/systray.c:
	winex11: Move all the embedded systray window support to winex11.drv.

2008-04-08  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Don't overrun the current scanline while copying a glyph's bitmap.

2008-04-08  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/drawprim.c:
	wined3d: Set isInDraw later in drawPrimitive.
	This should fix the problem that in LoadLocation SFLAG_INTEXTURE path gl calls
	can be made without activating context, due to isInDraw checks.

2008-04-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Ro.rc:
	msacm32: Add the Romanian translation.

	* programs/notepad/Ro.rc, programs/notepad/rsrc.rc:
	notepad: Add the Romanian translation.

	* programs/view/Ro.rc, programs/view/viewrc.rc:
	view: Add the Romanian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Ro.rc:
	mpr: Add the Romanian translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Ro.rc:
	sane.ds: Add the Romanian translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Ro.rc:
	localui: Add the Romanian translation.

2008-04-07  Austin English <austinenglish@gmail.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msi.c,
	  dlls/msi/tests/db.c, dlls/msi/tests/format.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/package.c,
	  dlls/msi/tests/source.c:
	msi: Spelling fixes.

2008-04-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/clipboard.c:
	winex11: Improved handling of broken 8-bit TARGETS selection.

2008-04-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implement KeQueryInterruptTime.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implement KeQueryActiveProcessors.

2008-04-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/parser.c, dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Fix deadlocks in pullpin.

	* dlls/quartz/dsoundrender.c:
	quartz: Make wait timeout in directsound slightly larger.

2008-04-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/nonclient.c, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Fr.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Ja.rc,
	  dlls/user32/resources/user32_Ko.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ro.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc,
	  dlls/user32/resources/user32_Wa.rc:
	user32: Get rid of the debug mark option in the system menu.

	* libs/wine/Makefile.in, libs/wine/c_1361.c, libs/wine/cpmap.pl,
	  libs/wine/cptable.c:
	libwine: Added mappings for codepage 1361 (Korean Johab).

2008-04-07  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Handle VK_ESCAPE correctly in EDIT_WM_KeyDown.

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Handle ES_MULTILINE correctly for WM_KEYDOWN/VK_RETURN.

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Fix WM_CHAR return value for edit controls.

	* dlls/user32/tests/edit.c:
	user32: Add tests for edit controls and VK_TAB.

	* dlls/user32/tests/edit.c:
	user32: Add tests for edit controls and VK_RETURN.

	* dlls/user32/tests/edit.c, dlls/user32/tests/resource.rc:
	user32: Add more tests for single line edit control inside a dialog.

	* dlls/user32/tests/edit.c, dlls/user32/tests/resource.rc:
	user32: Add more tests for ES_WANTRETURN.

2008-04-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Mark the SYSMEM copy outdated after releasing memory.
	Strictly speaking this is redundant because the UnLoad before did the
	job, but if we mess with the allocated memory we have to tell the
	surface about that. Updating INDRAWABLE will automatically mark SYSMEM
	outdated.

	* dlls/wined3d/surface.c:
	wined3d: Put implicit surfaces into drawable on unload.
	If we mark the sysmem copy up to date we would have to take care about
	allocating it. As explained in the comment, INDRAWABLE is a saner
	choice

2008-04-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Array parameter is passed to function as pointer so loses size
	information.

2008-04-07  Rok Mandeljc <rok.mandeljc@email.si>

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Si.rc:
	oleaut32: Added Slovenian translation.

	* programs/regedit/Si.rc:
	regedit: Updated Slovenian translation.

	* dlls/msvfw32/msvfw32_Si.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Added Slovenian translation.

	* dlls/msvidc32/msvidc32_Si.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Added Slovenian translation.

	* programs/cmd/Si.rc:
	cmd: Updated Slovenian translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Si.rc:
	localui: Added Slovenian translation.

	* programs/taskmgr/Si.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Added Slovenian translation.

	* programs/xcopy/Si.rc, programs/xcopy/rsrc.rc:
	xcopy: Added Slovenian translation.

	* programs/reg/Si.rc, programs/reg/rsrc.rc:
	reg: Added Slovenian translation.

	* programs/start/Si.rc, programs/start/rsrc.rc:
	start: Updated Slovenian translation.

	* dlls/shell32/shell32_Si.rc:
	shell32: Updated Slovenian translation.

	* programs/wineconsole/wineconsole_Si.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Added Slovenian translation.

	* programs/cmdlgtst/Si.rc:
	cmdlgtest: Updated Slovenian translation.

	* dlls/devenum/devenum.rc:
	devenum: Added Slovenian translation.

	* programs/write/Si.rc, programs/write/rsrc.rc:
	write: Added Slovenian translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Si.rc:
	shlwapi: Added Slovenian translation.

	* dlls/shdoclc/Si.rc, dlls/shdoclc/rsrc.rc:
	shdoclc: Added Slovenian translation.

	* programs/winecfg/Si.rc, programs/winecfg/winecfg.rc:
	winecfg: Added Slovenian translation.

	* programs/uninstaller/Si.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Added Slovenian translation.

	* dlls/hhctrl.ocx/Si.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Added Slovenian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Si.rc:
	mpr: Added Slovenian translation.

	* programs/net/Si.rc, programs/net/rsrc.rc:
	net: Added Slovenian Translation.

	* programs/wordpad/Si.rc, programs/wordpad/rsrc.rc:
	wordpad: Added Slovenian translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Si.rc:
	credui: Added Slovenian translation.

	* dlls/oledlg/oledlg_Si.rc, dlls/oledlg/rsrc.rc:
	oledlg: Added Slovenian translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Si.rc:
	browseui: Added Slovenian translation.

	* programs/progman/Si.rc:
	progman: Updated Slovenian translation.

	* programs/view/Si.rc:
	view: Updated Slovenian translation.

2008-04-08  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.y:
	wrc: Add support for Unicode accelerator strings.

2008-04-07  Rok Mandeljc <rok.mandeljc@email.si>

	* programs/winefile/Si.rc:
	winefile: Updated Slovenian translation.

	* programs/winhelp/Si.rc:
	winhelp: Updated Slovenian translation.

	* programs/clock/Si.rc:
	clock: Updated Slovenian translation.

	* programs/notepad/Si.rc:
	notepad: Updated Slovenian translation.

	* programs/winemine/Si.rc:
	winemine: Updated Slovenian translation.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Si.rc:
	wineboot: Added Slovenian translation.

	* dlls/wininet/wininet_Si.rc:
	wininet: Updated Slovenian translation.

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Si.rc:
	localspl: Added Slovenian translation.

	* dlls/comdlg32/cdlg_Si.rc:
	comdlg32: Updated Slovenian translation.

	* dlls/winmm/winmm_Si.rc:
	winmm: Updated Slovenian translation.

	* dlls/user32/resources/user32_Si.rc:
	user32: Updated Slovenian translation.

	* dlls/msrle32/msrle_Si.rc:
	msrle32: Updated Slovenian translation.

	* dlls/comctl32/comctl_Si.rc:
	comctl32: Updated Slovenian translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Si.rc:
	msi: Added Slovenian translation.

	* dlls/winspool.drv/Si.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Added Slovenian translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Si.rc:
	sane.ds: Added Slovenian translation.

	* dlls/mshtml/Si.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Slovenian translation.

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Si.rc:
	mscacm32: Added Slovenian translation.

	* dlls/iccvid/iccvid_Si.rc, dlls/iccvid/rsrc.rc:
	iccvid: Added Slovenian translation.

	* dlls/gphoto2.ds/gphoto2_Si.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Slovenian translation.

	* dlls/avifil32/avifile_Si.rc:
	avifil32: Updated Slovenian translation.

2008-04-06  Rico Schüller <kgbricola@web.de>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add stream_test with instancing.

	* dlls/wined3d/drawprim.c:
	wined3d: Improve drawStridedInstanced().

	* dlls/wined3d/device.c:
	wined3d: Filter out invalid stuff in SetStreamSourceFreq().

2008-04-07  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Move PreLoad to avoid calling it with gl lock held.

	* dlls/wined3d/surface.c:
	wined3d: Add device->isInDraw checks in LoadLocation.
	Prevents calling ActivateContext while holding gl lock, e.g. when preloading
	texture in sampler().

	* dlls/wined3d/device.c:
	wined3d: move ENTER_GL in IWineD3DDeviceImpl_Init3D.

	* dlls/wined3d/query.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DOcclusionQueryImpl_Issue.

	* dlls/wined3d/query.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DEventQueryImpl_Issue.

	* dlls/wined3d/query.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DEventQueryImpl_GetData.

	* dlls/wined3d/query.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DOcclusionQueryImpl_GetData.

	* dlls/wined3d/query.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DQueryImpl_Release.

	* dlls/wined3d/drawprim.c:
	wined3d: LEAVE_GL when exiting with error in tesselate_rectpatch.

	* dlls/wined3d/device.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DDeviceImpl_ResourceReleased.

	* dlls/wined3d/device.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DDeviceImpl_ColorFill.

	* dlls/wined3d/device.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DDeviceImpl_Uninit3D.

	* dlls/wined3d/surface.c:
	wined3d: Implement CONVERT_RGB32_888 conversion.

	* dlls/wined3d/surface_base.c:
	wined3d: Don't copy the extra line.
	biSizeImage has an extra line added to it, and passing it to memcpy can cause a
	crash.

2008-04-07  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Properly handle unicode and non unicode IMEs with SetCompositionString.

	* dlls/imm32/imm.c:
	imm: Default context and hwnd are per thread so store that data in a thread
	local storage.

	* dlls/imm32/imm.c:
	imm32: Make use of of the loaded IME for all processing.

	* dlls/winex11.drv/xim.c:
	winex11: Have all xim interaction pass through the new x11drv IME interface.

2008-04-03  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Implement ImmGetImeMenuItems using loaded IME.

	* dlls/imm32/imm.c:
	imm32: Load a default IME if a specific one is not specified. This defaults
	to x11.

2008-04-02  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Implement ImmConfigureIME using the loaded IME.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/ime.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xim.c:
	winex11: Add IME functionality to winex11drv.
	All XIM interaction will soon pass through this functionality instead
	of directly to imm32.

2008-04-06  Reece Dunn <msclrhd@googlemail.com>

	* tools/winapi/msvcmaker:
	tools/msvcmaker: Suppress deprecation warnings on VC8 and above.

2008-04-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Do not set window type to utility to avoid a Metacity bug.

	* dlls/gdi32/tests/font.c:
	gdi32: Move negative lfWidth test into a separate body, skip the test if there
	is no 'x' in the font.

	* dlls/gdi32/freetype.c:
	gdi32: Fix lfWidth before caching the font to avoid duplicate entries in
	the cache.

2008-04-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c:
	user32: Fix list_window_parents when run in the desktop process.

	* libs/wine/Makefile.in:
	libwine: Only use the last line of the git version description.

	* dlls/winex11.drv/winpos.c:
	winex11: Don't set NET_WM_STATE on the desktop window.

2008-04-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: Do not call MIDL_user_free() with pointer to stack memory.

2008-04-07  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/nls/rmc.nls, dlls/oleaut32/tests/olefont.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/user32/tests/winstation.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/ati_fragment_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/winedos/int31.c,
	  dlls/wineoss.drv/midi.c, programs/cmd/batch.c,
	  programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/services/services.c, programs/taskmgr/taskmgr.h,
	  programs/winecfg/libraries.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/winedbg.c,
	  programs/xcopy/xcopy.c, server/atom.c, server/change.c,
	  tools/wrc/genres.c:
	Assorted spelling fixes.

	* dlls/fusion/tests/asmcache.c:
	fusion/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* programs/wineboot/wineboot.c:
	wineboot: Make sure COBJMACROS is defined before objidl.h is included.

	* programs/services/rpc.c:
	services: Add a trailing '\n' to a couple of Wine traces.

2008-04-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/jscript/jscript.c:
	jscript: Added IObjectSafety implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/editor.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlelem2.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlscript.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/htmltable.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/main.c, dlls/mshtml/olecmd.c, dlls/mshtml/selection.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Remove unneeded includes.

	* dlls/mshtml/nsembed.c:
	mshtml: Don't crash if nsWebBrowser could not be created.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/omnavigator.c,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLWindow2::get_navigator implementation.

2008-04-04  Austin English <austinenglish@gmail.com>

	* dlls/ddraw/main.c, dlls/ddraw/tests/visual.c,
	  dlls/dplayx/dplayx_global.c, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/mapi32/prop.c, dlls/mciseq/mcimidi.c, dlls/mciwave/mciwave.c,
	  dlls/mpr/pwcache.c, dlls/msadp32.acm/msadp32.c, dlls/mshtml/editor.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/service.c,
	  dlls/mshtml/tests/htmldoc.c:
	Spelling fixes.

2008-04-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/keyboard.c:
	winex11: Properly report state of the caps-lock and num-lock and scroll-lock
	keys.

2008-04-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/keyboard.c:
	winex11: Get the ScrollLock mask.

2008-04-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c:
	winex11: Change the priority of evaluated window styles to workaround a Metacity
	bug with handling of utility windows.

	* dlls/gdi32/freetype.c:
	gdi32: Fully initialize face->ntmFlags on font load.

2008-04-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/progman/Ko.rc:
	progman: Updated Korean resource.

2008-04-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Update Norwegian Bokmål resource.

	* dlls/oledlg/oledlg_No.rc:
	oledlg: Fix control class in Norwegian Bokmål resource.

	* dlls/comdlg32/cdlg_No.rc:
	comdlg32: Update Norwegian Bokmål resource.

2008-04-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Remove a PBO when a converted surface is detected.
	This can happen e.g. when suddenly color keying is activated and at
	some stages we don't know if we will need conversion at PBO creation
	time.

2008-04-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Use the render target its palette when performing a texture copy as
	the texture doesn't hold one.

2008-04-06  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Convert to Unicode.

2008-04-06  Rico Schüller <kgbricola@web.de>

	* dlls/d3d9/tests/visual.c:
	d3d9: fix two copy and paste mistakes.

	* dlls/d3d9/tests/visual.c:
	d3d9: Make the shader test more precision tolerant.

2008-04-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Run the visual test with hardware vertex processing.

	* dlls/d3d9/tests/visual.c:
	d3d9: Fix a few ok conditions in the visual tests.

	* dlls/d3d9/tests/visual.c:
	d3d9: Accept nvidia hardware vp garbage.
	Apparently nvidia cards do not like 3.0 vshader + fixed function fragment
	processing, so accept their result. This has no implementation implications
	for Wine because we need the code to support the 3.0+ffp combination to
	handle 3.0+1.x and 3.0+2.0 shader combinations too

	* dlls/d3d9/tests/visual.c:
	d3d9: Read from a slightly different spot in a test.

	* dlls/d3d9/tests/visual.c:
	d3d9: Remove some test trace lines.

2008-04-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Enforce ColorFill restrictions.

2008-04-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Set the _NET_WM_STATE atom directly for unmapped windows.

	* dlls/winex11.drv/window.c:
	winex11: Get rid of the SetWindowPos hack to unmap systray windows.

	* dlls/winex11.drv/clipboard.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/xdnd.c:
	winex11: Fix handling of property sizes for 64-bit platforms.

2008-04-05  Apostolos Alexiadis <djapal@gmail.com>

	* dlls/comdlg32/cdlg_El.rc:
	comdlg32: Greek resources update.

	* dlls/comctl32/comctl_El.rc:
	comctl32: Greek resources update.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_El.rc:
	oleaut32: Added Greek translation.

2008-04-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/nullrenderer.c,
	  dlls/quartz/pin.c, dlls/quartz/pin.h, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Handle flushing and end of stream notifications for input pins.

	* dlls/quartz/filtergraph.c:
	quartz: Reset EcCompleteCount before starting filters.
	This sends EC_COMPLETE notifications to the application after a graph has
	finished running for the second time.

	* dlls/quartz/filtergraph.c:
	quartz: Fix past mistake to release lock during seeking and changing state.

	* dlls/quartz/filesource.c:
	quartz: Fix some memory leaks in the file source.

	* dlls/quartz/filesource.c:
	quartz: Make FileAsyncReader_WaitForNext return an empty sample in flushing
	state.

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/nullrenderer.c, dlls/quartz/parser.c, dlls/quartz/pin.c,
	  dlls/quartz/pin.h, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Get rid of code duplication and add a flush method.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Add more state transitions to the filtergraph.

2008-04-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Hold lock in GetStatus.

2008-04-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Ru.rc:
	msacm32: Add Russian translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Ru.rc:
	sane.ds: Add Russian translation.

	* dlls/msvidc32/msvidc32_Ru.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Add Russian translation.

	* dlls/msvfw32/msvfw32_Ru.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Russian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Ru.rc:
	mpr: Add Russian translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Ru.rc:
	localui: Add Russian translation.

	* dlls/iccvid/iccvid_Ru.rc, dlls/iccvid/rsrc.rc:
	iccvid: Add Russian translation.

2008-04-05  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/msc.c:
	dbghelp: Prevent debug overflow of internal buffer while tracing.

	* dlls/dbghelp/msc.c:
	dbghelp: Be stricter when looping in symbol tables.

2008-04-06  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Don't execute the view again when modifying a WHERE query.

2008-04-05  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c:
	msi: Open the install properties key based on the install context.

	* dlls/msi/action.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/registry.c, dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Test and reimplement MsiQueryProductState.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Don't reorder the table when matching rows as the results are already
	ordered.

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c:
	msi: Set the install context based on the ALLUSERS property.

2008-04-04  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/install.c:
	msi: Reset the feature states if iInstallLevel is 0 or below.

2008-04-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Add a partial test for IMediaDet_get_StreamMediaType.

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Add a test for IMediaDet_(put|get)_CurrentStream.

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Add a test for IMediaDet_get_Filename.

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Add a test for IMediaDet_get_OutputStreams.

	* dlls/qedit/tests/Makefile.in, dlls/qedit/tests/mediadet.c,
	  dlls/qedit/tests/qedit.rc, dlls/qedit/tests/test.avi:
	qedit/tests: Add test framework and test for IMediaDet_put_Filename.

	* dlls/qedit/tests/mediadet.c:
	qedit/tests: Don't forget CoUninitialize.

2008-04-04  Michael Moss <mmoss@google.com>

	* tools/wine.inf:
	wine.inf: Move winebrowser.exe to the system directory.

2008-04-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wintrust/register.c:
	wintrust: Avoid assigning to struct members from other structs.

	* libs/port/interlocked.c:
	port: Remove superfluous semicolon.

2008-04-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Fix a test on W2K and above.

2008-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: Fix a few ShowWindow todo tests.

	* dlls/winex11.drv/winpos.c:
	winex11: Ignore ConfigureNotify events when a window is iconified.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.59.

----------------------------------------------------------------
2008-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Avoid updating the wm states inside a ConfigureNotify event.

	* dlls/wininet/http.c:
	wininet: Avoid size_t type in trace.

2008-04-04  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/crypt32/crypt32_Ko.rc:
	crypt32: Updated Korean resource.

	* dlls/msrle32/msrle_Ko.rc:
	msrle32: Updated Korean resource.

	* dlls/msi/msi_Ko.rc:
	msi: Updated Korean resource.

	* dlls/devenum/devenum.rc:
	devenum: New Korean resource.

	* dlls/credui/credui_Ko.rc:
	credui: Updated Korean resource.

	* programs/clock/Ko.rc:
	clock: Updated Korean resource.

2008-04-03  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/setupapi/devinst.c:
	setupapi: Prevent of reallocating memory for _SP_DEVINFO_DATA structures.

2008-04-03  Austin English <austinenglish@gmail.com>

	* dlls/gdi32/enhmetafile.c, dlls/gdi32/font.c, dlls/gdi32/tests/bitmap.c,
	  dlls/gdiplus/graphicspath.c, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/icmp/icmp_main.c, dlls/imaadp32.acm/imaadp32.c,
	  dlls/iphlpapi/ifenum.h, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/itss/chm_lib.c, dlls/kernel32/snoop16.c,
	  dlls/kernel32/tests/path.c, dlls/kernel32/time.c,
	  dlls/localspl/localspl_main.c:
	Spelling fixes.

2008-04-03  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qedit/mediadet.c:
	qedit: Indicate the methods of IMediaDet are not implemented in the FIXMEs.

2008-04-03  Allan Tong <actong88@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Call ActivateContext before any gl call in IWineD3DSurfaceImpl_Release.

2008-04-04  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Extend p8_primary_test.
	Additional tests for blitting and locking.

2008-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Don't update the normal size hints when a window is minimized or
	maximized.

	* dlls/winex11.drv/window.c:
	winex11: Use the same test for resizable windows when setting size and mwm hints.

	* dlls/winex11.drv/winpos.c:
	winex11: Ignore ConfigureNotify events on unmapped windows.

	* dlls/winex11.drv/window.c:
	winex11: Always update the window position without relying on the cached values.

2008-04-04  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/listbox.c:
	user32: Use a bogus wildcard in listbox test, change wildcard string to a const.

2008-04-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Advertise shader emulation of bumpmap formats.

	* dlls/wined3d/directx.c:
	wined3d: Advertize postpixelshader blending for surfaces.

2008-04-03  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi/tests: Fixed the wide-character strings.

2008-04-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/mpi.c:
	rsaenh: Remove tentative declaration of static array with no size specifier.

	* dlls/msi/action.c:
	msi: Remove tentative declaration of static array with no size specifier.

2008-04-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Add a font scaling test when lfHeight == 0 and lfWidth != 0, make it
	pass under Wine.

2008-04-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/rsabase/tests/Makefile.in, dlls/rsabase/tests/rsabase.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	rsabase: Remove rsabase tests as they are covered in rsaenh.

2008-04-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Add a few skips for non implemented parameters.

2008-03-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c:
	wined3d: Deactivate GL_FRAGMENT_SHADER_ATI before deactivating a context.
	Mesa has a bug that causes a crash due to a NULL pointer dereference
	with the R200 driver when making a context current that has
	GL_FRAGMENT_SHADER_ATI enabled. This patch works around this bug by
	making sure that GL_FRAGMENT_SHADER_ATI is disabled before deactivating
	a context, and reactivates it afterwards. The context manager keeps
	GL_ATI_FRAGMENT_SHADER generally enabled, except if the context is in 2D
	blit mode.

2008-03-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Improve an ok line.

2008-04-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Initialize some ARB shader output parameters.

2008-04-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/user32/message.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/broadcast.c, dlls/user32/user32.spec,
	  dlls/user32/win.h, dlls/user32/winstation.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/winstation.c:
	user32: Implement BroadcastSystemMessage.

2008-04-03  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tests/tooltips.c, dlls/comctl32/tooltips.c:
	comctl32: Add basic custom draw support for tooltips.

2008-04-02  Austin English <austinenglish@gmail.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/light.c, dlls/ddraw/main.c, dlls/ddraw/palette.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/dsurface.c, dlls/ddraw/tests/visual.c,
	  dlls/ddraw/viewport.c:
	ddraw: Spelling fixes.

2008-04-03  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/d3d8/tests/visual.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Improve detection of device palette change.

	* dlls/wined3d/surface.c:
	wined3d: Support index in alpha in BltOverride colorfill codepath.
	Fixes a failure in ddraw p8_primary_test when running with opengl ddraw renderer.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Additional colorfill test in p8_primary_test.

	* dlls/wined3d/cubetexture.c:
	wined3d: Remove ENTER_GL/LEAVE_GL in IWineD3DCubeTextureImpl_PreLoad.

	* dlls/wined3d/texture.c:
	wined3d: Remove ENTER_GL/LEAVE_GL in IWineD3DTextureImpl_PreLoad.

	* dlls/wined3d/surface.c:
	wined3d: Avoid calling LoadTexture with gl lock held in
	IWineD3DSurfaceImpl_PreLoad.
	Needed to prevent ActivateContext being called while holding gl lock.

	* dlls/wined3d/surface.c:
	wined3d: Add ENTER_GL/LEAVE_GL in IWineD3DSurfaceImpl_Release.

	* dlls/wined3d/surface.c:
	wined3d: Add ENTER_GL/LEAVE_GL in surface_allocate_surface.

	* dlls/wined3d/surface.c:
	wined3d: Add ENTER_GL/LEAVE_GL in surface_bind_and_dirtify.

	* dlls/ddraw/surface.c, dlls/ddraw/surface_thunks.c,
	  dlls/ddraw/tests/dsurface.c:
	ddraw: Set surface to NULL on failure in GetAttachedSurface.

2008-04-03  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resource.

2008-04-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/rsaenh/rsaenh.c, include/wincrypt.h:
	rsaenh: Add some new flags to wincrypt.h and use one of them.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Fix a typo.

2008-04-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/reg/Ru.rc, programs/reg/rsrc.rc:
	reg: Add Russian translation.

2008-04-02  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.l:
	widl: Fix a mistake in an ordered list (keywords).

2008-04-02  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Fix joining a nonexistent table with another table.

	* dlls/msi/action.c, dlls/msi/dialog.c:
	msi: Downgrade a few messages to WARN.

	* dlls/msi/action.c:
	msi: Handle the case where no files match the wildcard in MoveFiles.

2008-04-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Fix memory leak found by valgrind.

	* dlls/winemp3.acm/interface.c:
	winemp3: Change a few more fprintf's to wine logs.

2008-04-02  James Hawkins <jhawkins@codeweavers.com>

	* dlls/shell32/shlfileop.c, dlls/shell32/tests/shlfileop.c:
	shell32: Fix and simplify the FO_COPY operation, with tests.

2008-04-02  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c,
	  dlls/user32/tests/resource.rc:
	user32: Correctly handle VK_RETURN for edit controls with ES_WANTRETURN style.

	* dlls/user32/dialog.c, dlls/user32/tests/edit.c,
	  dlls/user32/tests/resource.rc:
	user32: Dialog should ignore WM_KEYDOWN messages if it gets DLGC_WANTCHARS.

	* dlls/user32/tests/edit.c:
	user32: Add more edit dialog tests.

2008-04-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winecfg/Pl.rc:
	winecfg: Update Polish translation.

2008-04-02  Austin English <austinenglish@gmail.com>

	* dlls/d3d9/tests/visual.c, dlls/dmloader/container.c,
	  dlls/dmstyle/style.c, dlls/dmusic/collection.c,
	  dlls/dnsapi/ns_name.c, dlls/dplayx/dplay.c,
	  dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplobby.c, dlls/dplayx/tests/dplayx.c,
	  dlls/dsound/mixer.c, dlls/faultrep/faultrep.c:
	Spelling fixes.

2008-04-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/nullrenderer.c:
	quartz: Implement seeking on the null renderer.

	* dlls/quartz/pin.c:
	quartz: Fix stop_playback used in pullpin.

2008-04-02  Frans Kool <Frans.Kool@gmail.com>

	* dlls/shell32/shell32_Nl.rc:
	shell32: Corrected/added Dutch translations.

2008-04-02  Alexandre Julliard <julliard@winehq.org>

	* programs/winedevice/device.c:
	winedevice: Apply relocations to the driver in cases where the loader doesn't
	do it.

	* dlls/ntdll/virtual.c:
	ntdll: Use LdrProcessRelocationBlock to apply relocations.
	Don't apply relocations to non page-aligned binaries.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented LdrProcessRelocationBlock.

2008-04-02  Frans Kool <Frans.Kool@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Added missing Dutch translations.

2008-03-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/visual.c:
	ddraw: Pass the NULL rectangle to IDirectDrawSurface::Unlock.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Remove some leftover test debug output.

	* dlls/ddraw/tests/visual.c:
	ddraw: Add a D3D7 cube map test.
	The DirectDraw cube mapping interface has a few pitfalls. So far we have
	a test testing the surface enumeration, this adds a rendering test. So
	far everything used in the test works.

	* dlls/d3d9/tests/visual.c:
	d3d9: Make the shading test even more precision tolerant.
	This is needed on both windows and wine, seems to be a hardware thing.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/query.c,
	  dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_main.c:
	wined3d: Update copyright lines.

	* dlls/wined3d/baseshader.c, dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement TSSARGTEMP with register combiners.

2008-04-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Do not report pixel shaders if not supported.

2008-03-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/ati_fragment_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement D3DTA_TEMP in the GL_ATI_fragment_shader codepath.

	* dlls/wined3d/ati_fragment_shader.c:
	wined3d: Prepare the atifs shader generator for temp register support.

2008-04-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a test for temporary results.

2008-04-02  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Keep track of context associations between HWND and HIMC.

2008-04-02  Alexandre Julliard <julliard@winehq.org>

	* programs/wordpad/wordpad.c:
	wordpad: Display the larger icon in the about box.

2008-04-02  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/wordpad/Makefile.in, programs/wordpad/wordpad.ico,
	  programs/wordpad/wordpad.svg:
	wordpad: A nicer icon.

2008-04-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi/tests: Turn printf into trace or skip.

	* dlls/setupapi/tests/query.c:
	setupapi/tests: No need to use GetProcAddress as all functions exist on all
	platforms.

2008-04-02  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Turn on verbose errors, which gives a little more information in the
	case of a syntax error.

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Fix the writing out of function pointers with more than one level of
	indirection.

	* tools/widl/header.c:
	widl: Add a newline between function prototypes for non-object interfaces.

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Support __fastcall and __pascal calling conventions.
	Support the synonyms for these and existing calling conventions.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Support parsing calling conventions for function identifiers.
	Support automatically setting the calling convention to
	STDMETHODCALLTYPE if it is part of an object interface.
	Write out the calling convention in write_type_v.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Store function and function pointer types completely within type_t type.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Add a function to get the return type of a parsed function.
	This clarifies its use in code and makes it simpler to change the way
	functions are parsed into types.

2008-04-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Allow mapping/unmapping a window even while processing another event.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Replace the lock_changes flag by a check on the event currently
	being processed.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Rely on PropertyNotify events instead of Map/UnmapNotify to detect
	iconification.

	* dlls/winex11.drv/event.c:
	winex11: Move handling of WM_STATE changes to a separate function, and call
	it directly from wait_from_withdrawn_state.

2008-04-01  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Create DeviceInstance value in registry, delete todo_wine from test.

	* dlls/setupapi/devinst.c:
	setupapi: Create device interface keys in registry as in Windows XP.

	* dlls/setupapi/devinst.c:
	setupapi: Creating SymbolicLink value in registry as in Windows XP.

2008-03-28  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/setupapi/tests/devinst.c:
	setupapi: Added a test for registering device interface and getting device path.

2008-03-27  Nikolay Sivov <bunglehead@gmail.com>

	* dlls/gdi32/bitblt.c:
	gdi32: PlgBlt implementation.

2008-03-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Fix GetGlyphIndices to select properly the invalid char glyph for
	TrueType fonts.

2008-04-02  James Hawkins <jhawkins@codeweavers.com>

	* dlls/shell32/shlfileop.c, dlls/shell32/tests/shlfileop.c:
	shell32: Handle a few cases in FO_COPY that arise from not double-NULL
	terminating the input.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle sorting an empty table.

2008-03-31  EA Durbin <ead1234@hotmail.com>

	* include/wincon.h:
	include: Define some console display modes.

2008-04-01  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc:
	avifil32: Updated Korean resource.

2008-04-02  Alexandre Julliard <julliard@winehq.org>

	* programs/wineboot/wineboot.c:
	wineboot: Make services.exe inherit the wineboot event to keep it alive.

2008-04-01  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c, programs/wineboot/wineboot.c:
	wineboot: Start services.exe on startup instead of on demand in the advapi32
	services code.

	* programs/net/net.c:
	net: Display a more specific error message when a service command fails.
	Use FormatMessage to get the message for the Win32 error.

2008-04-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/winuser.h:
	include: Add BroadcastSystemMessageEx.

	* dlls/quartz/acmwrapper.c:
	quartz: Make acmwrapper respond to a sample discontinuity by dropping the
	frame after parsing it.

	* dlls/quartz/mpegsplit.c:
	quartz: Add seeking to mpeg splitter.

	* dlls/quartz/mpegsplit.c:
	quartz: Prepare mpeg splitter code for seeking by making most splitter parsing
	locked.

	* dlls/quartz/parser.c, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/tests/filtergraph.c:
	quartz: Fix parser and pins logic to no longer deadlock.

	* dlls/quartz/filtergraph.c:
	quartz: Implement filtergraph mediaseeking setposition.

	* dlls/quartz/filtergraph.c:
	quartz: Don't hold lock when changing state in filtergraph.

	* dlls/quartz/control.c:
	quartz: Fix locking in MediaSeeking and forward SetPosition.
	Don't hold locks while forwarding messages, instead rely on the
	reference count. This prevents some really fun deadlocks from
	occuring.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c,
	  dlls/quartz/control_private.h, dlls/quartz/transform.c,
	  dlls/quartz/transform.h:
	quartz: Implement seeking stubs for transform filters.

2008-04-01  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/input.c, dlls/winex11.drv/keyboard.c, server/queue.c:
	winex11drv: Distinguish left and right keys for shift, ctrl and alt.

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2008-04-02  Michael Stefaniuc <mstefani@redhat.de>

	* programs/progman/Da.rc, programs/progman/Fi.rc, programs/progman/Sk.rc,
	  programs/progman/Sw.rc, programs/progman/Va.rc,
	  programs/progman/Wa.rc, programs/progman/rsrc.rc:
	progman: Delete bitrotted translations.

	* tools/wrc/utils.c:
	wrc: Sync the codepage mapping to the LANG_* identifiers from include/winnt.h.

2008-04-01  Apostolos Alexiadis <djapal@gmail.com>

	* dlls/hhctrl.ocx/El.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl: Added Greek translation.

	* dlls/comdlg32/cdlg_El.rc, dlls/comdlg32/rsrc.rc:
	comdlg32: Added Greek translation.

	* dlls/comctl32/comctl_El.rc:
	comctl32: Greek translation update.

2008-04-01  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm: Implement GetCompositionFont.

2008-03-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement graph MediaSeeking GetPositions.

2008-03-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/mpegsplit.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/waveparser.c:
	quartz: Allow parser filters to implement their own seeking methods.

2008-03-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/mpegsplit.c:
	quartz: Small mpeg splitter fixes.
	Just to be cautious, since it reads 4 bytes it should stop trying at
	EOF-3. Also be more strict with the return values.

2008-03-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winemp3.acm/common.c, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/layer3.c:
	winemp3: Replace fprintf with wine debugging facilities.

2008-04-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/imm32/imm.c:
	imm32: Remove stray semicolon. Don't try to load an invalid file.

2008-03-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/texture.c, dlls/wined3d/device.c:
	wined3d: Catch D3DUSAGE_AUTOGENMIPMAP and D3DUSAGE_RENDERTARGET combos.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Do not fail if D3D is not available.

	* dlls/wined3d/device.c:
	wined3d: Refuse 3D initialization without opengl.

	* dlls/wined3d/utils.c:
	wined3d: Return a fake pixel format if gl is not loaded.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Create a fake non-gl adapter.

2008-04-01  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: Remove some unused services functions.

	* programs/services/services.c:
	services: Fix memory leak of some data in the service record.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a reference to the binding object in I_RpcNegotiateTransferSyntax
	and release the reference in I_RpcFreeBuffer.
	This is needed because a context binding handle could be released on
	unmarshall, but it still needs to stay valid until the binding handle is
	no longer being used.
	Re-use the previously unused RPCRT4_ExportBinding function as
	RPCRT4_AddRefBinding and rename RPCRT4_DestroyBinding to
	RPCRT4_ReleaseBinding to show that it's purpose is to release a
	reference count and destroy if necessary, not always destroy.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Improve trace in RPCRT4_find_interface to print the interface identifier
	data as well as the object guid.

	* tools/widl/parser.h, tools/widl/parser.l, tools/widl/parser.y:
	widl: Be more strict about where semicolons can appear in IDL files.
	In particular, don't allow them after cpp_quote and without a statement.
	Update the rules for importlib, library definition, dispinterface
	definition, interface definition, coclass definition and module
	definition to optionally allow a semicolon postfix.
	Call pop_import from the parser instead of the lexer to ensure that
	pop_import is only called after the last statement in the imported file
	has been parsed.

2008-04-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/virtual.c:
	ntdll: Add a guard page at the bottom of the stack and raise a stack overflow
	exception when hit.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/virtual.c:
	ntdll: Add support for handling page faults caused by guard pages on the
	thread stack.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c,
	  dlls/ntdll/virtual.c:
	ntdll: Moved stack allocation for thread and process to a common routine
	in virtual.c.

2008-04-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmllocation.c:
	mshtml: Fixed copy&paste mistake.

	* .gitignore, dlls/uuid/uuid.c, include/Makefile.in, include/activdbg.idl:
	include: Added activedbg.idl.

2008-04-01  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add some visual tests for Direct3DDevice9_StretchRect().

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a visual test for the DP2ADD shader instruction.

2008-03-31  Vitaly Perov <vitperov@etersoft.ru>

	* dlls/comdlg32/printdlg.c:
	comdlg32: When PD_USEDEVMODECOPIESANDCOLLATE flag is not set dmCopies must be 1.

2008-03-31  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Begin to add basic framework for loading IMEs as dlls.

	* dlls/imm32/imm.c:
	imm32: Correct a typo accidently using data instead of root_context.

2008-04-01  Alexandre Julliard <julliard@winehq.org>

	* programs/winemine/Cs.rc, programs/winemine/De.rc,
	  programs/winemine/En.rc, programs/winemine/Es.rc,
	  programs/winemine/Fi.rc, programs/winemine/Fr.rc,
	  programs/winemine/It.rc, programs/winemine/Ko.rc,
	  programs/winemine/Makefile.in, programs/winemine/Nl.rc,
	  programs/winemine/No.rc, programs/winemine/Pl.rc,
	  programs/winemine/Pt.rc, programs/winemine/Ro.rc,
	  programs/winemine/Ru.rc, programs/winemine/Si.rc,
	  programs/winemine/Tr.rc, programs/winemine/main.c,
	  programs/winemine/resource.h:
	winemine: Use a standard About box with the larger icon.

2008-04-01  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/winemine/Makefile.in, programs/winemine/winemine.ico,
	  programs/winemine/winemine.svg:
	winemine: A nicer icon.

2008-03-31  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi/tests: Loop over the STGM access modes when testing the
	SHCreateStreamOnFile methods.

2008-03-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix for SetupGetIntField, with tests.

2008-02-10  Reece Dunn <msclrhd@googlemail.com>

	* programs/winecfg/En.rc, programs/winecfg/resource.h,
	  programs/winecfg/theme.c:
	winecfg: Add support for updating all system colours.

2008-03-28  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/Makefile.in, dlls/mscoree/corruntimehost.c,
	  dlls/mscoree/mscoree_main.c, dlls/mscoree/mscoree_private.h:
	mscoree: Added ICorRuntimeHost support.

2008-03-27  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* include/mscoree.idl:
	mscoree: Add missing interfaces.

2008-03-31  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Ru.rc:
	localspl: Add Russian translation.

2008-04-01  Piotr Caban <piotr.caban@gmail.com>

	* dlls/msxml3/saxreader.c:
	msxml3: Added fixmes to stubs.

	* dlls/msxml3/regsvr.c:
	msxml3: Added SAXXMLReader registration.

2008-03-31  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atliface.idl, include/hlink.idl:
	Remove superfluous semicolons from IDL files.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Parse typedefs of function pointers.

2008-03-31  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ntdll/thread.c:
	ntdll: Remove superfluous semicolon.

	* dlls/msxml3/saxreader.c:
	msxml3: Remove superfluous semicolon.

	* dlls/mshtml/nsevents.c:
	mshtml: Remove superfluous semicolon.

2008-03-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Add missing WGL_STEREO_ARB to ConvertAttribWGLtoGLX.

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: Fix ChoosePixelFormat behavior.

2008-03-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c:
	wininet: Use INTERNET_MAX_URL_LENGTH to size buffers we intend to store a URL in.

	* dlls/wininet/http.c:
	wininet: Parse the redirect URL in HTTP_HandleRedirect in case of a proxy
	connection.

	* dlls/wininet/http.c:
	wininet: Remove dead code from HTTP_DealWithProxy and improve its debug trace.

2008-03-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Update the Dutch resources.

2008-03-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/mpegsplit.c:
	quartz: Break processing loop when shutting down.

2008-03-31  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ws2_32/async.c:
	ws2_32: Make function declarations match definitions.

2008-03-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c:
	user32: Don't start explorer.exe on non-visible window stations.

	* programs/wineboot/wineboot.c:
	wineboot: No longer needs to keep running now that we have services.exe.

	* dlls/advapi32/service.c:
	advapi32: Silence the pipe read error in the normal case.

2008-03-29  Dan Kegel <dank@kegel.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Test retrieving BI_BITFIELDS info for 16bpp modes.

2008-03-29  Vitaliy Margolen <vitaliy@kievinfo.com>

	* dlls/user32/message.c:
	user32: Properly translate keyboard left/right-shift, alt, ctrl keys hardware
	messages.

2008-03-28  Alexander Morozov <amorozov@etersoft.ru>

	* dlls/setupapi/devinst.c:
	setupapi: Add a check of "#" for interface subkey names.

2008-03-27  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Have both ImmInternalPostIMEMessage and ImmInternalSendIMENotify receive
	an InputContextData parameter instead of relaying on root_context.

2008-03-31  James Hawkins <jhawkins@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/fusion/tests/Makefile.in, dlls/fusion/tests/asmcache.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	fusion: Add initial tests for IAssemblyCache.

	* include/Makefile.in, include/corerror.h:
	include: Add corerror.h.

2008-03-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Move all winex11.drv opengl traces to wgl.

	* dlls/wined3d/context.c:
	wined3d: Request a pixel format with alpha support in case of P8 render targets.

2008-03-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/http.c:
	wininet: Use a direct connection for tests that connect to localhost.

	* dlls/wininet/internet.c:
	wininet: Set ProxyEnable registry value if it isn't already set.

	* dlls/wininet/http.c:
	wininet: Don't set the host port from the server port.
	This works for direct connections but in case of proxy connections server
	port and host port usually are different.

	* dlls/wininet/http.c:
	wininet: Fix redirects through a proxy.
	HTTP_DealWithProxy replaces the request path with a full URL to make sure
	a correct request is built for for the proxy. This will work just once in
	case of a redirect because the path will be appended to the redirect url,
	resulting in an incorrect url.

	* dlls/wininet/http.c:
	wininet: Don't close proxy connections when keep-alive is specified.

	* dlls/wininet/internet.c:
	wininet: Support http_proxy environment variable.
	Based on a patch by Mike Hearn.

2008-03-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shell32_De.rc:
	shell32: Adjusted German about dialog for changes in English one.

2008-03-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/net/No.rc, programs/net/rsrc.rc:
	net: Add Norwegian Bokmål resource.

	* programs/reg/No.rc, programs/reg/rsrc.rc:
	reg: Add Norwegian Bokmål resource.

2008-03-28  Maarten Lankhorst <crumb@google.com>

	* dlls/quartz/mpegsplit.c:
	quartz: Check against a null dereference and don't read beyond the end of file.

2008-03-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dbghelp/stabs.c:
	dbghelp: Fix type mismatch in comparison.

	* dlls/qcap/enumpins.c:
	qcap: Assign to struct instead of using CopyMemory.

	* dlls/ole32/ole2.c:
	ole32: Assign to structs instead of using CopyMemory.

	* dlls/quartz/enumpins.c, dlls/quartz/filesource.c:
	quartz: Assign to structs instead of using CopyMemory.

	* dlls/uxtheme/metric.c:
	uxtheme: Assign to struct instead of using CopyMemory.

	* dlls/dsound/capture.c, dlls/dsound/dsound_main.c, dlls/dsound/primary.c:
	dsound: Assign to structs instead of using CopyMemory.

2008-03-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/script.c:
	mshtml: Added parsing external scripts support.

	* dlls/mshtml/script.c:
	mshtml: Added parsing inline script support.

	* dlls/mshtml/script.c:
	mshtml: Return S_OK in OnEnterScript and OnLeaveScript.

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptSite::GetItemInfo implementation.

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptSite::GetLCID implementation.

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptSiteWindow stub implementation.

2008-03-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/shell32/shell32_Ru.rc, dlls/wininet/wininet_Ru.rc,
	  programs/net/Ru.rc, programs/winecfg/Ru.rc,
	  programs/wineconsole/wineconsole_Ru.rc:
	Update Russian translations.

	* dlls/mshtml/Ru.rc, dlls/mshtml/rsrc.rc:
	mshtml: Add Russian translation.

	* programs/net/En.rc:
	net: Update help.

2008-03-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/kernel32/cpu.c:
	kernel32: Set processorLevel to cpu family.

2008-03-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c:
	wined3d: Fix a postpixelshader_blending bug.

2008-03-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update timezone information.

2008-03-29  Michael Stefaniuc <mstefani@redhat.de>

	* programs/wordpad/De.rc:
	wordpad: Update the German translation.

	* programs/notepad/De.rc:
	notepad: Update the German translation.

2008-03-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/driver.c:
	user32: Void functions should not return a value.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Void functions should not return a value.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Void functions should not return a value.

2008-03-29  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/credui/credui_Pl.rc:
	credui: Update Polish translation.

	* programs/reg/Pl.rc, programs/reg/rsrc.rc:
	reg: Add Polish translation.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* programs/regedit/Cs.rc, programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc:
	regedit: Add some ES_AUTOHSCROLL to dialog templates in languages that didn't
	have them.

	* programs/winecfg/Pl.rc:
	winecfg: Update Polish translation.

	* dlls/comdlg32/cdlg_Cn.rc, dlls/comdlg32/cdlg_Es.rc,
	  dlls/comdlg32/cdlg_Fr.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Pl.rc, dlls/comdlg32/cdlg_Pt.rc,
	  dlls/comdlg32/cdlg_Si.rc, dlls/comdlg32/cdlg_Sv.rc,
	  dlls/comdlg32/cdlg_Th.rc:
	comdlg32: Add some ES_NUMBER to pagesetup dialog templates in languages that
	don't have them.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Pl.rc:
	wldap32: Add Polish translation.

	* tools/wrc/translation.c:
	wrc: verify-translation: Allow the translators to set BS_MULTILINE on buttons
	without an error.

2008-03-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* tools/wrc/translation.c:
	wrc: verify-translation: Remove dumping of stringtables.

	* tools/wrc/translation.c:
	wrc: verify-translation: Compare all the controls of dialogs, not only the
	first one.

2008-03-29  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* fonts/Makefile.in:
	fonts: Fix uninstall of TrueType fonts.

2008-03-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/mouse.c:
	winex11: Ignore EnterNotify resulting from a pointer grab.

2008-03-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11: Add owned windows to the taskbar if it has WS_EX_APPWINDOW style.

2008-03-28  Rob Shearman <rob@codeweavers.com>

	* include/wine/svcctl.idl, programs/services/rpc.c:
	services: Fill in the functions between implemented functions in svcctl.idl
	so that it our remoting code is wire-compatible with NT.
	Add the necessary stubs for these in services.exe.

	* programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h:
	services: Introduce an scmdatabase object to store the root key of the services
	database.
	Make the functions that deal with the service database more object-oriented.
	Add a finer-grained locking architecture.

	* dlls/advapi32/service.c, programs/services/rpc.c:
	services: Remove dependency on service name being determined correctly in
	order for the two ends on the control pipe to meet up.
	Instead use the mechanism used by native which uses
	\\.\pipe\net\NtControlPipeN.
	Also remove the service startup event set by StartServiceCtrlDispatcher
	as we wait for the service status to change instead.

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h:
	services: Move ControlService and StartServiceW from advapi32.dll to
	services.exe.
	This also changes the architecture such that services.exe is the server
	end of the control pipe and the service is the client end.

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h:
	services: Move LockServiceDatabase and UnlockServiceDatabase from advapi32.dll
	to services.exe.

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c:
	services: Move SetServiceStatus and QueryServiceStatusEx to services.exe.

2008-03-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c,
	  include/wine/svcctl.idl, programs/services/rpc.c:
	services: Move GetServiceDisplayName to services.exe and implement
	GetServiceKeyName.

2008-03-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c,
	  include/wine/svcctl.idl, programs/services/rpc.c,
	  programs/services/services.c, programs/services/services.h:
	services: Move ChangeServiceConfigW implementation from advapi32.dll to
	services.exe.

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c:
	services: Move QueryServiceConfigW from advapi32.dll to services.exe.

	* dlls/advapi32/service.c, include/wine/svcctl.idl,
	  programs/services/rpc.c, programs/services/services.c,
	  programs/services/services.h, programs/services/utils.c:
	services: Move CreateService, OpenService and DeleteService implementations
	from advapi32.dll to services.exe.

2008-03-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, dlls/advapi32/Makefile.in, dlls/advapi32/service.c,
	  dlls/advapi32/svcctl.idl, dlls/advapi32/tests/service.c,
	  include/Makefile.in, include/wine/svcctl.idl,
	  programs/services/Makefile.in, programs/services/rpc.c,
	  programs/services/services.c, programs/services/svcctl.idl:
	services: Start a local RPC server.

2008-03-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Also move the rendertarget capability to the formats table.

2008-03-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add a depthstencil flag to the formats table and make use of it in
	CheckDepthStencilCapability.

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Make the filtering capability of a format a flag in the formats table.

2008-03-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplayx_global.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/name_server.c:
	dplayx: Assign to structs instead of using CopyMemory.

	* dlls/dinput/joystick_linux.c:
	dinput: Assign to struct instead of using CopyMemory.

2008-03-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptSiteInterruptPoll stub implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsevents.c,
	  dlls/mshtml/script.c:
	mshtml: Set script engine state to SCRIPTSTATE_CONNECTED when page is loaded.

	* dlls/mshtml/script.c:
	mshtml: Added script engine initialization implementation.

	* dlls/mshtml/script.c:
	mshtml: Added IActiveScriptSite::OnStateChange implementation.

	* dlls/uuid/uuid.c:
	uuid: Include objsafe.h.

2008-03-28  Rob Shearman <rob@codeweavers.com>

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Eo.rc, programs/notepad/Es.rc,
	  programs/notepad/Fi.rc, programs/notepad/Fr.rc,
	  programs/notepad/Hu.rc, programs/notepad/It.rc,
	  programs/notepad/Ja.rc, programs/notepad/Ko.rc,
	  programs/notepad/Nl.rc, programs/notepad/No.rc,
	  programs/notepad/Pl.rc, programs/notepad/Pt.rc,
	  programs/notepad/Ru.rc, programs/notepad/Si.rc,
	  programs/notepad/Sk.rc, programs/notepad/Sv.rc,
	  programs/notepad/Th.rc, programs/notepad/Tr.rc,
	  programs/notepad/Wa.rc, programs/notepad/Zh.rc,
	  programs/notepad/dialog.c, programs/notepad/dialog.h,
	  programs/notepad/main.c, programs/notepad/notepad_res.h:
	notepad: Remove the License and NO WARRANTY options from the Help->Information
	popup menu as the same information can now be viewed from the About dialog.
	Remove the Help->Information popup menu and rename the "About Wine"
	option to "About Notepad".

	* dlls/rpcrt4/ndr_contexthandle.c:
	rpcrt4: Print an error if an invalid client context handle is used.

	* programs/winedevice/device.c:
	winedevice: Handle failure of RegisterServiceCtrlHandlerExW.

2008-03-28  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/winetest/Makefile.in, programs/winetest/wine.ico,
	  programs/winetest/winetest.ico, programs/winetest/winetest.rc,
	  programs/winetest/winetest.svg:
	winetest: A nicer icon.

2008-03-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix some last errors for SetupGetLineByIndex.

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix some last errors for SetupFindFirstLine.

2008-03-28  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf, tools/wineprefixcreate.in:
	wine.inf: Create a fake module for mountmgr.sys.

	* include/winioctl.h:
	include: Fix access permissions in some ioctl codes, and add a few more.

2008-03-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/devenum/devenum.rc:
	devenum: Add Russian translation.

	* dlls/hhctrl.ocx/Ru.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl: Add Russian translation.

2008-03-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Add D3DUSAGE_QUERY_PIXELSHADER_BLENDING to CheckDeviceFormat.

2008-03-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private_types.h, include/wine/wined3d_gl.h:
	wined3d: Initial post pixelshader blending support. [attempt 2].
	For each pixel format we store a flag in the table whether it supports
	post pixelshader blending. Before applying blending or during a
	context switch we verify that blending is turned off for the
	format. In case of R32F this gave a 5-6x performance boost (without
	filtering and software conversion).

	* dlls/d3d9/tests/visual.c:
	d3d9: Test post pixelshader blending.

2008-03-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/parser.c:
	setupapi/tests: Remove check as we don't care how 'field' is allocated.

	* dlls/setupapi/tests/install.c:
	setupapi/tests: Add a few tests for SetupInstallServicesFromInfSectionA.

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Run tests on win9x again.

2008-03-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Update the DPI trackbar according to the edit box changes.

2008-03-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Remove some debug TRACE stuff.

2008-03-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/ati_fragment_shader.c:
	wined3d: Inherit from the proper state table in atifs.

2008-03-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/tests/device.c,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Reject broken normal declaration types with fixed function.

2008-03-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/services/Makefile.in, programs/services/services.c,
	  programs/services/services.h, programs/services/utils.c:
	services.exe: Load list of services from registry at startup.

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/services/Makefile.in, programs/services/services.c:
	services.exe: Add a new program.

2008-03-28  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Initialize ddprimpal.

	* dlls/user32/tests/resource.c:
	user32/tests: Mark unsigned entitities as unsigned.

2008-03-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/comdlg32/cdlg_Ru.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/user32/resources/user32_Ru.rc, programs/notepad/Ru.rc,
	  programs/regedit/Ru.rc, programs/wordpad/Ru.rc:
	Update Russian translations.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Ru.rc:
	shlwapi: Add Russian translation.

	* programs/regedit/En.rc:
	regedit: Fix typo.

2008-03-28  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winhelp/Rm.rc, programs/winhelp/Va.rc,
	  programs/winhelp/rsrc.rc:
	winhelp: Fix and activate the Romansh translation.

	* dlls/kernel32/locale_rc.rc, dlls/kernel32/nls/rmc.nls:
	kernel32: Add the NLS file for Romansh (Switzerland).

	* tools/wrc/utils.c:
	wrc: Add the code page mapping for LANG_ROMANSH.

	* dlls/user32/resources/user32_Ro.rc:
	user32: About dialog cosmetic fixes for the Romanian translation too.

2008-03-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Add GetCurrentPosition using the reference clock.

	* dlls/quartz/control.c, dlls/quartz/control_private.h:
	quartz: Change name from Start position to Current position in MediaSeeking.

2008-03-27  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: InternetReadFileExA should check INTERNET_FLAG_ASYNC.

	* dlls/wininet/http.c:
	wininet: HttpSendRequestExA is not a stub.

2008-03-27  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/text.c:
	user32: Add more DrawText tests.

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Handle WM_CHAR messages better in edit controls.

	* dlls/user32/tests/edit.c, dlls/user32/tests/resource.rc:
	user32: Add more dialog with edit control tests.

	* dlls/user32/tests/edit.c, dlls/user32/tests/resource.rc:
	user32: Make an edit test more readable.

2008-03-27  Austin English <austinenglish@gmail.com>

	* dlls/advapi32/service.c, dlls/comctl32/rebar.c, dlls/d3d8/directx.c,
	  dlls/dbghelp/stabs.c, dlls/dinput/keyboard.c, dlls/dinput/mouse.c,
	  dlls/dmime/performance.c, dlls/dmime/segment.c:
	Spelling fixes.

2008-03-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/script.c:
	mshtml: Don't access released object in release_script_hosts.

2008-03-26  Christopher Berner <raccoonone@procyongames.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Fix buffer size in SetupDiGetDeviceInterfaceDetailW.

2008-03-27  Michael Stefaniuc <mstefani@redhat.de>

	* programs/wordpad/print.c:
	wordpad: Remove bogus ';' after the if statement.

2008-03-28  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* programs/regedit/Ja.rc:
	regedit: Fix Japanese resource.

2008-03-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add a defwinproc flag when appropriate.

2008-03-27  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi: Added basic tests for the SHCreateStreamOnFile IStream implementation.

2008-03-26  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi: Added STGM_TRANSACTED tests for SHCreateStreamOnFileA/W/Ex.

2008-03-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/parser.c:
	setupapi/tests: Add some tests for the last error returned.

2008-03-27  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Make sure that string types are always written out by write_string_tfs
	and not write_simple_pointer.
	This is because write_string_tfs has support for the full range of
	string types, write_simple_pointer doesn't have access to the var
	attributes which are needed to properly detect strings, and
	write_string_tfs sets the typestring offset to after the pointer is
	written and write_remoting_arg depends on this.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix detection of non-pointer context handles.
	is_ptr cannot be used because it follows the chain of types into the
	type which has the context_handle attribute, which is typically "void *"
	and so causes these context handles to be incorrectly detected as
	context handles. Instead, we can use is_aliaschain_ptr to follow the
	chain of aliases without following pointers and the absence of the
	context_handle attribute indicates that it must be present on a type
	after following a pointer.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Add support for generic binding handles.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/typegen.c:
	widl: Use is_string_type for detecting strings in write_typeformatstring_var
	to make it consistent with write_remoting_arg.
	Fix the is_string_type function used for detecting strings by only
	examining aliases instead of both aliases and pointers. This is due to
	the requirement that pointers to strings be handled as pointers and so
	not detected as strings.

2008-03-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winetest/Makefile.in, programs/winetest/main.c,
	  programs/winetest/resource.h, programs/winetest/winetest.rc:
	winetest: Use the HEAD commit sha1 as default build id.

	* programs/winetest/main.c:
	winetest: Add the Wine build id to the version information.

	* dlls/user32/nonclient.c, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Cs.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Sv.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc:
	user32: Cosmetic fixes to the About dialog.

	* programs/winefile/De.rc, programs/winefile/En.rc,
	  programs/winefile/Es.rc, programs/winefile/Fr.rc,
	  programs/winefile/Ko.rc, programs/winefile/Nl.rc,
	  programs/winefile/No.rc, programs/winefile/Pl.rc,
	  programs/winefile/Ru.rc, programs/winefile/resource.h,
	  programs/winefile/winefile.c:
	winefile: Remove some unused resources.

	* programs/winefile/winefile.c:
	winefile: Use the larger icon in the About box.

	* programs/winefile/Cs.rc, programs/winefile/De.rc,
	  programs/winefile/En.rc, programs/winefile/Es.rc,
	  programs/winefile/Fr.rc, programs/winefile/Hu.rc,
	  programs/winefile/It.rc, programs/winefile/Ko.rc,
	  programs/winefile/Nl.rc, programs/winefile/No.rc,
	  programs/winefile/Pl.rc, programs/winefile/Pt.rc,
	  programs/winefile/Ru.rc, programs/winefile/Si.rc,
	  programs/winefile/Sv.rc, programs/winefile/Tr.rc,
	  programs/winefile/Zh.rc, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Remove redundant About Wine menu option.

2008-03-25  Hin-Tak Leung <Hin-Tak@localhost.localdomain>

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Implement more navigation of chm to TOC, default topic and
	specific title.

2008-03-26  Rob Shearman <rob@codeweavers.com>

	* tools/widl/client.c:
	widl: Support using context handles as the binding handle in client functions.

2008-03-27  Ge van Geldorp <ge@thinstall.com>

	* dlls/shell32/shellpath.c:
	shell32: Support getting the shell folder path for users other than the current
	user and the default user.

2008-03-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Free heapMemory, not allocatedMemory when adjusting the surface.

2008-02-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a basic test for multiple rendertargets.

2008-03-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Some EnumZBufferFormat fixes.

	* dlls/ddraw/utils.c:
	ddraw: Fix some Z buffer formats.

2008-03-26  Austin English <austinenglish@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/tests/device.c,
	  dlls/d3d8/tests/surface.c, dlls/d3d8/tests/visual.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/stateblock.c,
	  dlls/d3d9/tests/device.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/visual.c, dlls/d3dx8/tests/math.c:
	Spelling fixes.

2008-03-27  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Test that GOURAUD and PHONG modes are equal.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make device palettes dynamically allocated.

2008-03-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/combo.c, dlls/user32/listbox.c, dlls/user32/tests/msg.c:
	user32: Add a test for combobox navigation with arrow keys, make it pass
	under Wine.

2008-03-27  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/cdata.c:
	msxml3: Correct IXMLDOMCDATASection appendData.

	* dlls/msxml3/comment.c:
	msxml3: Correct IXMLDOMComment appendData.

	* dlls/msxml3/text.c:
	msxml3: Correct IXMLDOMText appendData.

2008-03-27  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/print.c,
	  programs/wordpad/wordpad.h:
	wordpad: Add support for previewing two pages side-by-side.

2008-03-26  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Remove trailing spaces in ok() calls.

2008-03-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user32/resources/user32.rc, dlls/user32/resources/user32_Ro.rc:
	user32: Add the Romanian translation.

	* programs/winhelp/De.rc:
	winhelp: Update the German translation.

2008-03-26  Aurimas Fischer <aurimas@gmail.com>

	* fonts/tahoma.sfd, fonts/tahoma.ttf, fonts/tahomabd.sfd,
	  fonts/tahomabd.ttf:
	fonts: Where possible use references to Latin glyphs in Latin-Extended glyphs.

2008-03-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/dscapture.c,
	  dlls/wineoss.drv/dsrender.c:
	wineoss.drv: Assign to structs instead of using memcpy.

	* dlls/winejack.drv/audio.c:
	winejack.drv: Assign to structs instead of using memcpy.

	* dlls/winenas.drv/audio.c:
	winenas.drv: Assign to struct instead of using memcpy.

	* dlls/wineesd.drv/audio.c:
	wineesd.drv: Assign to structs instead of using memcpy.

2008-03-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c:
	wininet: Support chunked reads in InternetReadFileEx too.

2008-03-26  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/winefile/Makefile.in, programs/winefile/winefile.ico,
	  programs/winefile/winefile.svg:
	winefile: A nicer icon.

2008-03-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dib.c:
	gdi32: Store the return value separately in StretchDIBits instead of overwriting
	heightSrc.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.c,
	  dlls/shell32/shresdef.h:
	shell32: Add a license message box and a build id to the About dialog. Clean
	things up a little.

	* dlls/user32/msgbox.c:
	user32: Allow arbitrary text size for loaded strings in message boxes.

	* dlls/ntdll/misc.c, dlls/ntdll/ntdll.spec:
	ntdll: Export the libwine version functions from ntdll too.

	* include/wine/library.h, libs/.gitignore, libs/wine/Makefile.in,
	  libs/wine/config.c, libs/wine/wine.def, libs/wine/wine.map,
	  loader/.gitignore, loader/Makefile.in, loader/main.c:
	libwine: Export functions that return the Wine version number and build id.

2008-03-26  Dan Kegel <dank@kegel.com>

	* dlls/kernel32/tests/codepage.c:
	kernel32: Test negative dest len in WideCharToMultiByte.

2008-03-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Don't use -1 length in WideCharToMultiByte call.

	* dlls/mshtml/editor.c, dlls/mshtml/install.c, dlls/mshtml/persist.c:
	mshtml: Fixed invalid use of -1 length in WideCharToMultiByte calls.

	* dlls/mshtml/tests/script.c:
	mshtml: Fixed crash in tests if Gecko is not available.

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIChannel::SetContentType implementation.

	* dlls/mshtml/mshtml_private.h:
	mshtml: Pass buffer length to MultiByteToWideChar instead of -1.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Rename nsChannel::content to content_type and clean up its handling.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmllocation.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLDocument2::get_location implementation.

2008-03-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/quartz/acmwrapper.c, dlls/quartz/mpegsplit.c:
	quartz: Avoid %ll printf formats.

	* dlls/qmgr/tests/file.c, dlls/qmgr/tests/job.c:
	qmgr: Avoid %ll printf formats.

	* dlls/ntdll/loader.c:
	ntdll: Clear the process stack again after dll init and before calling the
	main entry point.

	* dlls/kernel32/process.c, dlls/ntdll/loader.c:
	kernel32: Moved the allocation of the process stack to ntdll.

	* include/wine/library.h, libs/wine/port.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added a wine_call_on_stack function.

	* server/security.h, server/token.c:
	server: impersonation_level should be an int since we store -1 in it.
	Make sure we don't check the impersonation level for primary tokens.

2008-03-21  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c,
	  dlls/advapi32/tests/service.c, include/winsvc.h:
	advapi32: Partly implemented QueryServiceConfig2A/W.

2008-03-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/install.c:
	setupapi: Forward SetupInstallServicesFromInfSectionA to W-function.

2008-03-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c:
	wininet: Implement chunked reads.

2008-03-25  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/Makefile.in, dlls/imm32/imm.c:
	imm: Implement ImmGetIMEFileNameW and ImmGetIMEFileNameA.

2008-03-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/clipboard.c:
	winex11: Fix X11DRV_CLIPBOARD_ReadProperty to read data in larger chunks and
	to properly null-terminate the buffer.

2008-03-25  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c,
	  dlls/user32/tests/resource.rc:
	user32: Tweak how the edit control handles WM_GETDLGCODE.

2008-03-25  Aurimas Fischer <aurimas@gmail.com>

	* fonts/tahomabd.sfd, fonts/tahomabd.ttf:
	fonts: Where possible use references to Latin glyphs in Latin-Extended glyphs.

2008-03-25  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/comctl32/comctl32.h, dlls/comctl32/commctrl.c:
	comctl32: Add HotTrackingColor into COMCTL32_SysColor structure.

2008-03-26  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/saxreader.c:
	msxml3: Correct SAXXMLReader_create.

2008-03-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Make the visual test pass on GeForce Go 7600.

	* dlls/kernel32/tests/codepage.c:
	kernel32: Make the test compatible with win9x.

2008-03-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comdlg32/cdlg_De.rc:
	comdlg32: Small typo fix in the German translation.

	* dlls/comdlg32/cdlg_Ro.rc, dlls/comdlg32/rsrc.rc:
	comdlg32: Add the Romanian translation.

	* dlls/shell32/shell32_De.rc:
	shell32: Update the German Translation.

	* dlls/mshtml/De.rc:
	mshtml: Update the German translation.

2008-03-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Assign to structs instead of using memcpy.

	* dlls/wineaudioio.drv/audio.c:
	wineaudioio.drv: Assign to structs instead of using memcpy.

2008-03-25  Lei Zhang <thestig@google.com>

	* dlls/msxml3/saxreader.c:
	msxml3: Fix compiles for systems without libxml2.

2008-03-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Allow one update to a decode message after the final update if it's
	a detached message.

	* dlls/crypt32/msg.c:
	crypt32: Keep track of state in each message type's update function rather
	than in CryptMsgUpdate.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test updates after the final update to a detached message.

2008-03-25  Lei Zhang <thestig@google.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Avoid double free in PRINTDLG_PaperSizeA/W.

2008-03-25  Juan Lang <juan.lang@gmail.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/tests/crypt.c:
	advapi32: Create MachineGuid value if it doesn't exist.

	* dlls/advapi32/tests/crypt.c:
	advapi32: Test the MachineGuid value.

2008-03-25  Austin English <austinenglish@gmail.com>

	* dlls/gdi32/dc.c, dlls/gdi32/enhmfdrv/bitblt.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/mfdrv/bitblt.c, dlls/gdi32/pen.c, dlls/gdi32/printdrv16.c,
	  dlls/gdi32/region.c, dlls/gdi32/tests/pen.c:
	gdi32: Spelling fixes.

2008-03-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Enable D3DFMT_V8U8 with GL_ATI_fragment_shader.

2008-03-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/ati_fragment_shader.c, dlls/wined3d/utils.c:
	wined3d: Implement env bump mapping in the atifs ffp replacement.

2008-03-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/ati_fragment_shader.c,
	  dlls/wined3d/context.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fragment processing using GL_ATI_fragment_shader.
	This adds code for handling fixed function fragment processing with the
	GL_ATI_fragment_shader extension. This is a sort-of programmable
	interface for fragment processing at the level of shader model 1.4 in
	d3d. This code is of use on r200, r250 and r280 cards(radeon 8500 to
	9200) which do not support GL_ARB_fragment_program, but support pixel
	shader 1.4 on Windows. This code is somewhat a counterpart to the
	existing fragment processing code using GL_NV_register_combiners and
	GL_NV_texture_shader.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a shader DLL init callback.

2008-03-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_ATI_fragment_shader.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Alloc / free shader private data and blt stuff in Init3D/Uninit3D.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c:
	wined3d: Free shader private data on reset.
	Since the shader backend implementations might track opengl resources in
	their private data inform them about reset calls. For example, the atifs
	backend keeps track of the replacement shaders, which are lost during an
	opengl context recreation.

2008-03-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a projected texture test.

2008-03-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move shader caps setting into the arb and glsl shader backends.

2008-03-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Set shader specific caps in the shader backend.
	The whole control structures in directx.c get terribly confusing with
	the various codepaths for texturing and different shader
	implementations. It is also hard to reflect the shader model
	decisions this way too. This patch moves the shader specific parts of
	the caps code into the shader backend where we can set our caps
	dependent of the shader model decisions and without complex caps flag
	checks.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/direct3d.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_types.h:
	d3d: De-pointerize the WINED3DCAPS structure.

	* dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c:
	wined3d: Move the shader backend selection into a separate function.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move shader generation into the shader backend.
	Generating the shader ID and parts of the shader prolog and epilog was
	done by the common vertexshader.c / pixelshader.c, which is ugly.
	This patch doesn't get rid of all the uglyness, somewhen we'll still
	have to sort out the relationship of [arb|glsl]_generate_shader and
	[arb|glsl]_generate_declarations.

2008-03-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the state table a property of the shader backend.

2008-03-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Fixed a number of buffer overflows in the file dialog.

2008-03-25  Huw Davies <huw@codeweavers.com>

	* dlls/mscms/mscms_main.c:
	mscms: Fix compilation without lcms.

2008-03-25  Alexandre Julliard <julliard@winehq.org>

	* programs/regedit/about.c:
	regedit: Display a larger icon in the About box.

2008-03-25  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/regedit/Makefile.in, programs/regedit/regedit.ico,
	  programs/regedit/regedit.svg:
	regedit: A nicer icon.

2008-03-25  Marcus Meissner <meissner@suse.de>

	* dlls/msxml3/saxreader.c:
	msxml3: Fixed include of SAX.h.

2008-03-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Always report D16 as Windows drivers report it on all cards (likely
	using emulation).

2008-03-25  Justin Chevrier <jchevrier@nexicom.net>

	* tools/wine.inf:
	wine.inf: Create fake dll entry for dosx.exe.

2008-03-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Implement a number of interop helpers.

2008-03-23  Kolbjørn Fredheim <coolbeer1980@yahoo.com>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/vertexbuffer.c:
	ddraw: Don't clear the return value anymore, we fill the fields anyway, also
	a test for the behaviour.

2008-03-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/handle.c, dlls/mscms/mscms_main.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c, dlls/mscms/transform.c:
	mscms: Rewrite handle management to be thread-safe. Allocate handles dynamically.

2008-03-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Don't attempt to dock into the system tray in desktop mode.

2008-03-25  James Hawkins <jhawkins@codeweavers.com>

	* dlls/fusion/asmcache.c, dlls/fusion/fusion.c:
	fusion: Implement CreateAssemblyCache.

	* dlls/fusion/asmcache.c, include/fusion.idl:
	fusion: Add a stub implementation of IAssemblyEnum.

	* dlls/fusion/Makefile.in, dlls/fusion/asmcache.c, include/fusion.idl:
	fusion: Add a stub implementation of IAssemblyCache.

2008-03-25  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/palette.c, dlls/wined3d/surface_base.c:
	wined3d: Don't store primary surface palette in device palettes.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Don't use device palettes in RealizePalette.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Don't use device palettes in GetDC.

	* dlls/wined3d/surface.c:
	wined3d: Don't use device palettes in read_from_framebuffer.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add test for ddraw 8-bit mode.
	Adds rudimentary test for 8 bit mode ddraw (palettized primary surface). Tests
	things like GetDC and its palette handling and SetPalette affected by patches
	that follow.

	* dlls/wined3d/surface.c:
	wined3d: Fix comment.

2008-03-25  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/factory.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/saxreader.c:
	msxml3: Added support for SAXXMLReader.

	* dlls/msxml3/main.c, dlls/msxml3/msxml_private.h:
	msxml3: Added typelib ids for SAX interfaces.

2008-03-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Don't add owned windows to the taskbar.

2008-03-24  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/utils.c:
	ddraw: DDRAW_dump_flags_nolf must not add LF.

2008-03-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winealsa.drv/dscapture.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/winealsa.drv/midi.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveout.c:
	winealsa.drv: Assign to structs instead of using memcpy.

2008-03-24  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a typo.

2008-03-24  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdiplus/image.c:
	gdiplus: Remove break after return (Smatch).

2008-03-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/script.c:
	mshtml: Added script engine loading test.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsevents.c,
	  dlls/mshtml/script.c:
	mshtml: Added script engine loading implementation.

2008-03-24  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/jscript/tests/Makefile.in, dlls/jscript/tests/jscript.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	jscript: Added tests.

	* dlls/jscript/jscript.c, dlls/jscript/jscript.h,
	  dlls/jscript/jscript_main.c:
	jscript: Added DllCanUnloadNow implementation.

2008-03-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Avoid a crash with traces on.

	* dlls/wininet/wininet.spec:
	wininet: Correct spec file entry for InternetCanonicalizeUrl{A, W}.

	* dlls/wininet/http.c:
	wininet: Don't strip Accept-Encoding headers from version 1.1 requests.

2008-03-24  Reece Dunn <msclrhd@googlemail.com>

	* dlls/shlwapi/tests/istream.c:
	shlwapi: Added SHCreateStreamOnFileEx tests.

	* dlls/shlwapi/tests/istream.c:
	shlwapi: Added SHCreateStreamOnFileW tests.

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/istream.c:
	shlwapi: Added SHCreateStreamOnFileA tests.

2008-03-24  Tony Wasserka <tony.wasserka@freenet.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_37/Makefile.in, dlls/d3dx9_37/d3dx9_37.spec,
	  dlls/d3dx9_37/d3dx9_37_main.c:
	d3dx9: Start implementation of d3dx9_37.

2008-03-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use FIELD_OFFSET instead of offsetof.

2008-03-24  Aurimas Fischer <aurimas@gmail.com>

	* fonts/courier.sfd, fonts/courier.ttf, fonts/ms_sans_serif.sfd,
	  fonts/ms_sans_serif.ttf, fonts/small_fonts.sfd,
	  fonts/small_fonts.ttf, fonts/system.sfd, fonts/system.ttf,
	  fonts/tahoma.sfd, fonts/tahoma.ttf, fonts/tahomabd.sfd,
	  fonts/tahomabd.ttf:
	fonts: Added/updated all (9x2) Lithuanian glyphs.

2008-03-23  Reece Dunn <msclrhd@googlemail.com>

	* dlls/ntdsapi/tests/ntdsapi.c:
	ntdsapi: Fix building the tests with MSVC headers.

	* dlls/ole32/tests/marshal.c:
	ole32: Added a missing include needed for CLSID_ShellDesktop using MSVC headers.

	* dlls/quartz/tests/misc.c:
	quartz: Fixed building with MSVC headers.

	* tools/winapi/msvcmaker:
	tools: Target the version defines to Vista in msvcmaker.

2008-03-22  Reece Dunn <msclrhd@googlemail.com>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32: Fix building the tests with MSVC headers.

2008-03-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* include/msxml2.idl:
	msxml3: Add SAX interfaces.

	* include/msxml2did.h:
	msxml3: Add support for SAX Documents.

2008-03-24  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/nbt.c:
	netapi32: Revert "janitorial: Use poll() instead of select()."
	As Juan Lang pointed out, fd is a SOCKET here and the netapi32 call to
	select calls ws2_32.WS_select(), which uses poll internally already.

2008-03-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/inetcomm/internettransport.c:
	inetcomm: Assign to structs instead of using memcpy.

	* dlls/wsock32/socket.c:
	wsock32: Assign to struct instead of using memcpy.

	* dlls/ws2_32/protocol.c:
	ws2_32: Assign to structs instead of using memcpy.

2008-03-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user32/tests/msg.c:
	user32/tests: Fix uninitialized struct component.

2008-03-23  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/executebuffer.c:
	ddraw: Fix vertex processing.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Test DrawIndexedPrimitiveUP with primitive count zero.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Test executebuffer triangle instruction with zero count.

	* dlls/wined3d/drawprim.c:
	wined3d: Handle zero primitive count.

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Test SetPalette on non-palettized surfaces.

	* dlls/ddraw/surface.c:
	ddraw: Make SetPalette fail for non-palettized surfaces.

2008-03-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Fix a typo in CheckSrgbWriteCapability. We support both X8R8G8B8
	and A8R8G8B8.

	* dlls/wined3d/directx.c:
	wined3d: Add more debug code to CheckDeviceFormat.

2008-03-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Forward EnumPrintersA to EnumPrintersW.

2008-03-21  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/process.c:
	kernel32: Implement IsWow64Process.

2008-03-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winpos.c:
	user32: Clamp the mouse position to the window rectangle when starting a
	window resize.

	* dlls/user32/menu.c:
	user32: Make sure we set menu capture to a window that is visible.

	* dlls/winex11.drv/window.c:
	winex11: Grab the pointer in menu tracking mode too.

	* dlls/winex11.drv/window.c:
	winex11: Setting window z-order using a sibling doesn't work with some window
	managers.
	So let's see what happens if we don't set z-order at all in that case.

2008-03-24  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/nbt.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c:
	janitorial: Use poll() instead of select().

2008-03-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/version/install.c:
	version: LZCopy return value is LONG.

2008-03-23  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Add support for 24 and 32 bit icons using png format.

	* tools/wineshelllink:
	wineshelllink: Don't hard-code icon extension to xpm.

2008-03-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: We want to compare the old and the new format and not the old with
	the old.

2008-03-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user32/tests/resource.c:
	user32/tests: Skip checks if pre-condition does not match.

2008-03-22  Philip Nilsson <pnilsson@nullref.se>

	* dlls/wined3d/state.c:
	wined3d: Initialize maxAttribs in case it isn't changed by glGetIntegerv.

2008-03-24  James Hawkins <truiken@gmail.com>

	* dlls/fusion/Makefile.in, dlls/fusion/asmname.c, include/fusion.idl:
	fusion: Add a stub implementation of IAssemblyName.

2008-03-23  James Hawkins <jhawkins@codeweavers.com>

	* dlls/fusion/Makefile.in, dlls/fusion/fusion.c, dlls/fusion/fusion.spec:
	fusion: Add a few fusion stubs.

	* .gitignore, include/Makefile.in, include/fusion.idl:
	fusion: Add initial fusion.idl.

2008-03-24  Markus Amsler <markus.amsler@oribi.org>

	* dlls/opengl32/wgl.c:
	opengl: Allocate DisabledExtensions buffer.

2008-03-23  Eric Pouech <eric.pouech@orange.fr>

	* programs/wordpad/wordpad.c:
	wordpad: Don't try to use information that hasn't been initialized yet.

	* dlls/riched20/editor.c:
	richedit: For setting word wrapping, native only uses a null vs non null value.

	* dlls/riched20/wrap.c:
	richedit: Fixed a bogus computation of paragraph indentation.

	* dlls/riched20/editor.c:
	richedit: Fixed the initialization of the word wrap mode.

2008-03-21  Sean Huckins <bhuckins@ucla.edu>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/image.c,
	  include/gdiplusflat.h:
	gdiplus: Implementation of GdipCreateBitmapFromHBITMAP.

2008-03-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: CheckTextureCapability returns TRUE for V8U8.

	* dlls/winex11.drv/opengl.c:
	wgl: Return TRUE on wglReleasePbufferDCARB success.

2008-03-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add a missing break to blt_to_drawable.

2008-03-24  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c:
	msi: Implement the StopServices action.

2008-03-23  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/format.c:
	msi: Don't hardcode the root drive.

	* dlls/msi/tests/msi.c:
	msi: INSTALLPROPERTY_AUTHORIZED_LUA_APP is only available with msi >= 3.0.

	* dlls/msi/tests/source.c:
	msi: Initialize the size parameter.

2008-03-23  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/comctl_Ro.rc, dlls/comctl32/rsrc.rc:
	comctl32: Add the Romanian translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_De.rc:
	browseui: Add the German translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Ro.rc:
	shlwapi: Add the Romanian translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Ro.rc:
	browseui: Add the Romanian translation.

	* dlls/credui/credui_De.rc:
	credui: Update the German translation.

2008-03-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/task.c:
	mshtml: Abstract BSCallback implementation.

	* dlls/mshtml/navigate.c:
	mshtml: Move hlink_frame_navigate function.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Move BSCallback declaration to navigate.c.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Added new nsChannelBSC type.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c:
	mshtml: Don't access BSCallback directly in nsembed.c.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Don't access BSCallback directly in nsio.c.

2008-03-22  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c:
	richedit: Added missing fields to be reinitialized for the RTF \pard token.

2008-03-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/defwnd.c, dlls/user32/message.c, dlls/user32/tests/msg.c,
	  include/winuser.h:
	user32: Fix F1 message sequence.

2008-03-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winex11.drv/clipboard.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/xrender.c:
	winex11.drv: Assign to structs instead of using memcpy.

	* dlls/wininet/internet.c:
	wininet: Assign to structs instead of using memcpy.

	* dlls/winmm/mmio.c:
	winmm: Assign to struct instead of using memcpy.

	* dlls/wintab32/context.c:
	wintab32: Assign to structs instead of using memcpy.

	* dlls/wintrust/softpub.c:
	wintrust: Assign to structs instead of using memcpy.

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Assign to struct instead of using memcpy.

2008-03-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/nullrenderer.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Silence requests for ipin on filters.

	* dlls/quartz/parser.c, dlls/quartz/pin.c:
	quartz: Forward requests for MediaSeeking from all pins properly.

	* dlls/quartz/dsoundrender.c:
	quartz: Play silence in directsound renderer on end of stream notification.

	* dlls/quartz/acmwrapper.c:
	quartz: Make acmwrapper code aware of time, and get rid of its internal buffer.

	* dlls/quartz/control.c:
	quartz: Add sanity check to mediaseeking setrate.

2008-03-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/mpegsplit.c:
	quartz: Parse audio packets in mpeg splitter to obtain the duration.

2008-03-22  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, fonts/.gitignore,
	  fonts/Makefile.in, fonts/courier.ttf, fonts/marlett.ttf,
	  fonts/ms_sans_serif.ttf, fonts/small_fonts.ttf,
	  fonts/small_fonts_jp.ttf, fonts/system.ttf, fonts/tahoma.ttf,
	  fonts/tahomabd.ttf:
	fonts: Store the generated TrueType fonts in the repository, and rebuild them
	only in maintainer mode.

	* fonts/Makefile.in, tools/sfnt2fnt.c:
	tools/sfnt2fnt: Add getopt option parsing.

	* fonts/.gitignore, fonts/Makefile.in, tools/sfnt2fnt.c:
	tools/sfnt2fnt: Merge the fnt2fon code into sfnt2fnt to allow generating fonts
	in a single step.

	* tools/sfnt2fnt.c:
	tools/sfnt2fnt: Separate the building of the font data and the actual file
	creation.

2008-03-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/init.c:
	wineps.drv: Assign to structs instead of using memcpy.

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Indirection level fix.

	* dlls/winedos/int21.c:
	winedos: Assign to struct instead of using memcpy.

2008-03-21  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Allow for driver precision differences in some visual tests.

	* dlls/d3d9/tests/visual.c:
	d3d9: Add visual test for D3DRS_SHADEMODE states.

2008-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: Fix the FindFirstVolume test on Vista.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/resource.c,
	  dlls/kernel32/tests/resource.rc:
	kernel32/tests: Added some tests for FindResource.

2008-03-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Add srgb write support to CheckDeviceFormat.

	* dlls/wined3d/directx.c:
	wined3d: Remove unneeded code in CheckDeviceFormat.
	All these checks are done during the capability checks which are
	performed under the resource type checks.

	* dlls/wined3d/directx.c:
	wined3d: Don't continue with CheckDeviceFormat when the texture format isn't
	around.
	It is legal to pass Usage=0 to CheckDeviceFormat and in both this case
	and in the case a format isn't available UsageCaps would be 0 and a
	format would be reported available.

	* dlls/wined3d/directx.c:
	wined3d: Return WINED3DERR_NOTAVAILABLE when cubemapping isn't supported.

	* dlls/wined3d/directx.c:
	wined3d: Add reporting of D3DRTYPE_VOLUME capabilties.
	We assume it has the same capabilities as VOLUMETEXTURE. MSDN is very
	vague on this topic. Intel/Nvidia/ATI drivers seem to offer nearly the
	same caps on both, so do that too.

	* dlls/wined3d/directx.c:
	wined3d: When volume textures aren't around (GL_EXT_texture3D not supported)
	return WINED3DERR_NOTAVAILABLE.

	* dlls/wined3d/directx.c:
	wined3d: We don't offer index/vertex buffer caps. Neither do Windows drivers
	(at least Nvidia, Ati and Intel).

2008-03-21  Ken Thomases <ken@codeweavers.com>

	* libs/wine/loader.c:
	libwine: Cope with Leopard brokenness w.r.t. setrlimit(RLIMIT_NOFILE).

2008-03-21  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h, include/winnt.h:
	advapi32: Add a stub for CreateRestrictedToken.

2008-03-21  Reece Dunn <msclrhd@googlemail.com>

	* dlls/user32/tests/menu.c:
	user32: Fixed the HiliteMenuItem tests to pass on Windows 9x.

2008-03-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implement MmIsAddressValid.

2008-03-21  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/newstruc.c, tools/wrc/parser.l, tools/wrc/parser.y,
	  tools/wrc/utils.c:
	wrc: parser_error must append a newline.

	* programs/notepad/dialog.c:
	notepad: Use the larger icon in the About dialog.

	* dlls/shell32/shell32_main.c:
	shell32: Use the larger Wine logo icon in the About dialog.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Ca.rc,
	  dlls/shell32/shell32_Cn.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_Da.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_Hu.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ja.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Si.rc, dlls/shell32/shell32_Sk.rc,
	  dlls/shell32/shell32_Sv.rc, dlls/shell32/shell32_Tr.rc,
	  dlls/shell32/shell32_Uk.rc, dlls/shell32/shell32_Wa.rc,
	  dlls/shell32/shell32_Zh.rc, dlls/shell32/shell32_main.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Make the icon space a bit larger in the About dialog.
	Also replace numeric ids by appropriate constants.

2008-03-21  Herve Chanal <chanal_herve@yahoo.fr>

	* dlls/user32/Makefile.in, dlls/user32/resources/oic_winlogo.ico,
	  dlls/user32/resources/oic_winlogo.svg:
	user32: A nicer icon for oic_winlogo.

2008-03-21  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.58.

----------------------------------------------------------------
2008-03-21  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/notepad/Makefile.in, programs/notepad/notepad.ico,
	  programs/notepad/notepad.svg:
	notepad: Add a nicer icon.

2008-03-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/direct3d.c:
	ddraw: Use a correct resource type and a valid format.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Check pixel formats of the same pixel type.

2008-03-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/jscript/jscript.c, dlls/jscript/jscript_main.c:
	jscript: Added IObjectSafety stub implementation.

	* dlls/jscript/jscript.c:
	jscript: Added IActiveScriptParseProcedure2 stub implementation.

	* include/activscp.idl:
	jscript: Added IActiveScriptParseProcedure2 declaration.

	* tools/wine.inf:
	wine.inf: Register jscript.dll.

2008-03-21  Philip Nilsson <pnilsson@nullref.se>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_36/tests/Makefile.in, dlls/d3dx9_36/tests/math.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	d3dx9/tests: Test the D3DXVec*Array functions.

	* dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/d3dx9_36.spec,
	  dlls/d3dx9_36/math.c, include/d3dx9math.h:
	d3dx9: Implement the D3DXVec*Array functions.

2008-03-20  James Hawkins <truiken@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/fusion/Makefile.in, dlls/fusion/fusion.spec,
	  dlls/fusion/fusion_main.c:
	fusion: Add a stub implementation of fusion.dll.

2008-03-21  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Ignore fonts with names that begin with a '.'.

2008-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/win.c:
	user32/tests: Flush events during the mouse button tests.

	* dlls/ntdll/server.c:
	ntdll: Refuse to create the .wine directory if the parent belongs to a
	different user.

2008-03-21  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Si.rc, programs/winecfg/Sv.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/Zh.rc,
	  programs/winecfg/resource.h:
	winecfg: Remove the unused IDS_WINE_VERSION resource.

2008-03-21  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: IMEs do not expect the hMsgBuf to be NULL, so initialize it.

	* include/ddk/imm.h:
	imm32: Add IME dll prototypes to the ddk/imm.h header.

2008-03-20  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y:
	widl: Make structures with FC_ENUM16 fields complex.
	Structures containing enum fields without the v1_enum attribute must be
	treated as complex because of the range check and memory/wire size
	differences.  This includes a test which didn't pass before and now
	passes on Wine and Windows.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle FC_ENUM16.

2008-03-20  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/install.c:
	msi: Remove the dependence on compressed cabinets in the install tests.

2008-03-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface_base.c:
	wined3d: Assign to structs instead of using memcpy.

2008-03-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Ro.rc:
	oleaut32: Add the Romanian translation.

	* dlls/devenum/devenum.rc:
	devenum: Add the Romanian translation.

	* dlls/comdlg32/cdlg_De.rc:
	comdlg32: Update the German translation.

	* dlls/quartz/control.c:
	quartz: Replace second EnterCriticalSection with LeaveCriticalSection (Smatch).

2008-03-21  Kusanagi Kouichi <slash@ma.neweb.ne.jp>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Fix crash by long preedit text.

2008-03-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/install.c:
	setupapi/tests: Add a test for installing a driver service via an INF file.

2008-03-20  Michael Moss <mmoss@google.com>

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Test notifications for overlapping directory watches.

2008-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/scanf.h:
	msvcrt: Add support for field width in scanf %c format.

2008-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/win.c, dlls/user32/winpos.c:
	user32: Increase an initial buffer size from 32 to 128 hwnds for enumerated
	children.

2008-03-20  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/cmd/Makefile.in, programs/cmd/wcmd.ico, programs/cmd/wcmd.svg:
	cmd: Add a nicer icon.

2008-03-19  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.ico,
	  programs/msiexec/msiexec.svg:
	msiexec: Add SVG source for the icon.

2008-03-20  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac:
	configure: Add rules for rebuilding icons in maintainer mode.

2008-03-19  Michael Moss <mmoss@google.com>

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Fix false positive file notification tests.

2008-03-19  Luis Javier Merino <ninjalj@gmail.com>

	* dlls/wined3d/surface_base.c:
	wined3d: BltFast dealing correctly with overlapping src and dest.

2008-03-19  Lei Zhang <thestig@google.com>

	* dlls/comctl32/listview.c:
	comctl32: Fix listview redraw when deleting items.

	* dlls/comctl32/listview.c:
	comctl32: Correct listview hittest check to include the state rect.

	* dlls/comctl32/listview.c:
	comctl32: Redraw listview after changing extended styles.

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Implement listview checkbox toggle.

	* dlls/comctl32/tests/listview.c:
	comctl32: Add listview checkbox toggle test.

2008-03-20  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, include/stamp-h.in:
	makefile: Add rules for automatically rebuilding configure in maintainer mode.

	* configure, configure.ac:
	configure: Add a --enable-maintainer-mode option.

2008-03-20  Michael Stefaniuc <mstefani@redhat.de>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ro.rc:
	wineboot: Add the Romanian translation.

2008-03-19  Michael Stefaniuc <mstefani@redhat.de>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_De.rc:
	wineboot: Add the German translation.

2008-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add test cases for the direction flag.

	* dlls/ntdll/signal_i386.c:
	ntdll: Clear the direction flag before calling exception handlers.

2008-03-20  Marcus Meissner <meissner@suse.de>

	* dlls/mshtml/protocol.c:
	mshtml: Fix potential 1 byte 0 overwrite.

2008-03-20  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/automation.c:
	msi: Don't trace the tables names on import.

	* dlls/msi/automation.c, dlls/msi/tests/automation.c:
	msi: Fix the registry root indices for Installer::RegistryValue.

	* dlls/msi/tests/package.c:
	msi: Fix a few failing tests on win9x.

	* dlls/msi/tests/db.c:
	msi: Clean up the db when skipping the tests.

	* dlls/msi/tests/msi.c:
	msi: win95 returns ERROR_BAD_PATHNAME.

	* dlls/msi/files.c, dlls/msi/source.c, dlls/msi/tests/source.c,
	  include/msi.h:
	msi: Fix the type of the ID parameter of MsiSourceListEnumMediaDisks.

2008-03-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/control.c, dlls/quartz/pin.c, dlls/quartz/quartz_private.h:
	quartz: Implement forwarding mediaseeking messages.

	* dlls/quartz/control.c, dlls/quartz/control_private.h,
	  dlls/quartz/parser.c:
	quartz: Add critical sections to IMediaSeeking.

	* dlls/quartz/dsoundrender.c:
	quartz: Add mediaseeking stub to audio renderer.

	* dlls/quartz/filtergraph.c:
	quartz: Fix checking for duration.

	* dlls/quartz/filtergraph.c:
	quartz: Pass the reference time + small delay on on begin of playback.

	* dlls/quartz/parser.c:
	quartz: Don't pass reference time when running.

	* dlls/quartz/pin.c:
	quartz: Transmit pullpin messages further.

	* dlls/quartz/pin.c:
	quartz: Fix bug in transmitting messages further.

2008-03-19  Dan Hipschman <dsh@linux.ucla.edu>

	* .gitignore, dlls/qmgr/enum_files.c, dlls/qmgr/job.c, dlls/qmgr/qmgr.h,
	  dlls/qmgr/qmgr_local.idl, dlls/qmgrprxy/qmgrprxy.idl,
	  include/Makefile.in, include/bits1_5.idl:
	qmgr: Add a stub implementation of IBackgroundCopyJob2.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use correct count in rpcrt4_conn_np_write.
	count is the total count passed into rpcrt4_conn_np_write.  If WriteFile
	does a partial write it would end up writing too much subsequent times
	through the loop.  All tests pass as before.

2008-03-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Ro.rc:
	localspl: Add the Romanian translation.

2008-03-19  Michael Stefaniuc <mstefani@redhat.de>

	* programs/write/De.rc, programs/write/rsrc.rc:
	write: Add the German translation.

	* programs/write/Ro.rc, programs/write/rsrc.rc:
	write: Add the Romanian translation.

2008-03-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/uxtheme/draw.c, dlls/uxtheme/msstyles.c:
	uxtheme: Assign to structs instead of using memcpy.

	* dlls/user32/driver.c, dlls/user32/sysparams.c:
	user32: Assign to structs instead of using memcpy.

2008-03-19  Frans Kool <Frans.Kool@gmail.com>

	* programs/reg/Nl.rc:
	reg: Added Dutch resources.

	* programs/reg/rsrc.rc:
	reg: Corrected #include statement for translations to work.

2008-03-18  Samuel Lidén Borell <samuel@slbdata.se>

	* dlls/mshtml/Sv.rc:
	mshtml: Update Swedish translation.

2008-03-18  Samuel Lidén Borell <samuellb@crashie>

	* dlls/shdoclc/Sv.rc:
	shdoclc: Update Swedish translation.

2008-03-19  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a visual test case for the D3DSAMP_SRGBTEXTURE sampler state.

2008-03-19  Anatoly Lyutin <vostok@etersoft.ru>

	* tools/wine.inf:
	wine.inf: Add "MenuShowDelay" value.

2008-03-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msrle32/msrle_Ro.rc, dlls/msrle32/rsrc.rc:
	msrle32: Add the Romanian translation.

	* programs/regedit/De.rc:
	regedit: Fix and update the German translation.
	- Add the translations for REG_MULTI_SZ.
	- Replace "Zeichenkette" with "Zeichenfolge" as that seems to be what
	Windows uses.
	- Fix the size and placement of the "OK"/"Abbrechen" buttons.
	- Remove bogus accelerators on some LTEXT entries in dialogs.

	* dlls/crypt32/crypt32_De.rc:
	crypt32: Update the German translation.

2008-03-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Report software processing in CheckDeviceFormat.

	* dlls/wined3d/directx.c:
	wined3d: Add dynamic locking support to CheckDeviceFormat.

	* dlls/wined3d/directx.c:
	wined3d: There is no need for the !Usage checks at the start of the resource
	type checks.
	The return-path of the code will handle this properly and this also
	ensures that the R8G8B8 dxVersion test is reached.

2008-03-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Remove leftover debugging output.

2008-03-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/jscript/jscript.c:
	jscript: Added IActiveScriptProperty stub implementation.

	* dlls/jscript/jscript.c:
	jscript: Added IActiveScriptParse stub implementation.

	* include/activscp.idl:
	activscp.idl: Added IActiveScriptProperty declaration.

2008-03-18  Andrew Riedi <andrewriedi@gmail.com>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/reg/En.rc, programs/reg/Makefile.in, programs/reg/reg.c,
	  programs/reg/reg.h, programs/reg/rsrc.rc:
	reg: Add stub 'reg' program.

2008-03-18  Herve Chanal <chanal_herve@yahoo.fr>

	* programs/msiexec/msiexec.ico:
	msiexec: A nicer icon.

2008-03-18  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/control_private.h, dlls/quartz/filtergraph.c,
	  dlls/quartz/mpegsplit.c, dlls/quartz/parser.c, dlls/quartz/parser.h,
	  dlls/quartz/waveparser.c:
	quartz: Move IMediaSeeking from the parser pin to the parser filter.
	This interface really shouldn't be in a pin, but rather in the
	implementation of the filter, since any seeking is done on the entire
	filtergraph, so implementing it in the filter makes more sense.

	* dlls/quartz/pin.c:
	quartz: Call send flush/endofstream and segment messages downstream.

2008-03-19  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	freetype: Fix a typo that prevented checking more than the first range in
	Range Format 2.

2008-03-19  Frans Kool <Frans.Kool@gmail.com>

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Corrected Dutch translations.

2008-03-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvidc32/msvidc32_Ro.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Add the Romanian translation.

	* dlls/iccvid/iccvid_Ro.rc, dlls/iccvid/rsrc.rc:
	iccvid: Add the Romanian translation.

2008-03-18  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Ignore libraries in imported IDL files.

2008-03-18  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/regsvr.c:
	quartz: Fix the magic bytes for mp3's with id3 tags.

	* dlls/winemp3.acm/mpegl3.c:
	winemp3: Skip idv3 header too.

2008-03-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c:
	urlmon: Assign to structs instead of using memcpy.

	* dlls/twain_32/dsm_ctrl.c:
	twain_32: Assign to structs instead of using memcpy.

2008-03-18  Dan Kegel <dank@kegel.com>

	* dlls/shell32/classes.c:
	shell32: Only print "HCR_GetFolderAttributes should be called for simple
	PIDL's" once.

2008-03-18  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/security.c, dlls/d3dx9_24/d3dx9_24_main.c,
	  dlls/d3dx9_25/d3dx9_25_main.c, dlls/d3dx9_26/d3dx9_26_main.c,
	  dlls/d3dx9_27/d3dx9_27_main.c, dlls/d3dx9_28/d3dx9_28_main.c,
	  dlls/d3dx9_29/d3dx9_29_main.c, dlls/d3dx9_30/d3dx9_30_main.c,
	  dlls/d3dx9_31/d3dx9_31_main.c, dlls/d3dx9_32/d3dx9_32_main.c,
	  dlls/d3dx9_33/d3dx9_33_main.c, dlls/d3dx9_34/d3dx9_34_main.c,
	  dlls/d3dx9_35/d3dx9_35_main.c, dlls/d3dx9_36/d3dx9_36_main.c,
	  dlls/msxml3/cdata.c, dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c,
	  dlls/msxml3/text.c, dlls/qmgr/tests/enum_files.c,
	  dlls/qmgr/tests/enum_jobs.c, dlls/qmgr/tests/file.c,
	  dlls/qmgr/tests/job.c, dlls/wined3d/glsl_shader.c,
	  programs/cmd/wcmdmain.c:
	Assorted spelling fixes.

	* dlls/msi/tests/source.c:
	msi/tests: Skip the tests if we are unable to identify the user SID. This
	fixes crashes on Win9x.

	* dlls/gdi32/freetype.c:
	gdi32: Remove a trailing space in a Wine trace.

2008-03-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Add a some heuristics when to add a maximize or fullscreen hint.

	* dlls/mlang/mlang.c, dlls/mlang/mlang.spec:
	mlang: Implement Rfc1766ToLcidA.

	* tools/wine.inf:
	wine.inf: Update time zone information for America/Los_Angeles and
	America/Tijuana.

2008-03-18  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/controls.h, dlls/user32/defwnd.c, dlls/user32/nonclient.c:
	user32: Handle the undocumented behaviour in DefWindowProc for WM_NCACTIVATE
	that causes the nonclient area not to be redrawn.
	If the lParam is 0xffffffff then the nonclient area is not redrawn.

2008-03-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c, dlls/user32/winstation.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/user.h, server/window.c, server/winstation.c:
	user32: Implemented EnumDesktopWindows.

2008-03-16  Michael Karcher <wine@mkarcher.dialup.fu-berlin.de>

	* dlls/winex11.drv/xrender.c:
	winex11: Fix alpha for client-side-rendered text.

2008-03-17  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/rebar.c:
	rebar: In AutoSize get the window rc after REBAR_Layout if needed to respect
	the sizing changes made by REBAR_Layout.

2008-03-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Clip out children window when repainting the desktop.

	* server/window.c:
	server: Fix desktop window coordinates mapping in expose_window.

	* dlls/winex11.drv/mouse.c:
	winex11: Fix mouse coordinates mapping on desktop window.

	* dlls/winex11.drv/winpos.c:
	winex11: Avoid useless updates of the desktop window Z-order.

	* dlls/winex11.drv/winpos.c:
	winex11: Fix typo that was causing superfluous updates of the visible rect.

	* dlls/winex11.drv/wintab.c:
	winex11: Fix bug report address.

2008-03-17  Reece Dunn <msclrhd@googlemail.com>

	* dlls/user32/tests/menu.c:
	user32: Improve the HiliteMenuItem tests so they reflect actual behaviour
	on Windows.

2008-03-17  Austin English <austinenglish@gmail.com>

	* dlls/kernel32/cpu.c, dlls/kernel32/debugger.c, dlls/kernel32/global16.c,
	  dlls/kernel32/kernel_main.c, dlls/kernel32/pthread.c,
	  dlls/kernel32/registry16.c, dlls/kernel32/sync.c,
	  dlls/kernel32/tests/alloc.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/format_msg.c, dlls/kernel32/tests/locale.c,
	  dlls/kernel32/tests/path.c, dlls/kernel32/tests/thread.c,
	  dlls/kernel32/thread.c, dlls/kernel32/time.c:
	kernel32: Spelling fixes.

2008-03-17  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/cursoricon.c:
	user32: Move the bitmap header check as far up as possible.
	Based on a patchset by Henri Verbeet.

2008-03-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* tools/wine.inf:
	wine.inf: Change default windows version to XP.

2008-03-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Add correct autogenmipmap support.

	* dlls/wined3d/directx.c:
	wined3d: Add a function which checks the filtering capabilities for a format.

	* dlls/wined3d/directx.c:
	wined3d: Put vertex texture capability checking in its own function.

	* dlls/wined3d/directx.c:
	wined3d: Put the SRG read capability check in its own function.

	* dlls/wined3d/directx.c:
	wined3d: Add a function which checks the legacy bump mapping capabilities.

2008-03-17  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/suminfo.c:
	msi: Fix a few test failures on win9x.

2008-03-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Fix a few test failures on win9x.

2008-03-17  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Fix a few test failures on win9x.

	* dlls/msi/tests/automation.c:
	msi: Skip the Installer object tests on win9x.

	* dlls/msi/tests/automation.c:
	msi: Fix a few tests of display IDs that don't exist on win9x.

	* dlls/msi/tests/db.c:
	msi: Skip the endlines test if the table fails on import.

2008-03-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/cpanelfolder.c, dlls/shell32/folders.c,
	  dlls/shell32/pidl.c, dlls/shell32/recyclebin.c,
	  dlls/shell32/shelllink.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlexec.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/shlfsbind.c:
	shell32: Assign to structs instead of using memcpy.

	* dlls/shdocvw/classinfo.c, dlls/shdocvw/client.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Assign to structs instead of using memcpy.

2008-03-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/mci.c:
	winmm: Fix midi deadlock by not holding lock on release.

2008-03-17  H. Verbeet <hverbeet@gmail.com>

	* server/token.c:
	server: Don't drop the SE_GROUP_LOGON_ID attribute.

2008-03-17  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/urlcache.c:
	wininet: The lpszLocalFileName parameter to CommitUrlCacheEntryA is optional,
	so check before converting it from Unicode to ANSI.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	rpcrt4: Add a stub for RpcCancelThreadEx.

2008-03-16  Cihan Altinay <bobbyg@gmx.net>

	* dlls/ddraw/texture.c:
	ddraw: Fix refcounting of palettes.

2008-03-15  Aric Stewart <aric@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Check for unicode file without using fseek.

2008-03-15  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/image.c:
	gdiplus: Fix test crash in GdipSaveImageToStream.
	Correctly initialized parameters to GetDIBits (based on
	GdipLockBitmapBits).

2008-03-17  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/tests/menu.c:
	user32: HiliteMenuItem fails if an invalid window handle is passed to it.

2008-03-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Add an option to mix sound buffers in the mixer again.

2008-03-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Break Wine Gecko 0.0.1 support.

2008-03-16  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c, dlls/riched20/reader.c, dlls/riched20/rtf.h:
	richedit: Allow reading an enhanced metafile from an RTF stream.

	* dlls/riched20/editor.c:
	richedit: Don't force cursor change when it's not needed.

	* dlls/riched20/caret.c, dlls/riched20/context.c, dlls/riched20/editor.h,
	  dlls/riched20/paint.c, dlls/riched20/para.c, dlls/riched20/run.c,
	  dlls/riched20/wrap.c:
	richedit: Fixed object leaks generated by context creation & destruction.

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/wrap.c:
	richedit: Added support for EM_SETTARGETDEVICE with a NULL DC.

	* include/richedit.h:
	include: Added msftedit support in richedit.h.

	* dlls/riched20/editor.c, dlls/riched20/para.c, dlls/riched20/style.c:
	richedit: Use the FW_ constants instead of the raw values.

	* dlls/riched20/editor.c:
	richedit: In RTF reader, set both bold and weight attributes, so that we don't
	care about priority between the two.

	* dlls/riched20/editor.c, dlls/riched20/reader.c:
	richedit: Correctly set the pitch and family for a font when reading an
	RTF stream.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/run.c,
	  dlls/riched20/wrap.c:
	richedit: Pass left margin around when computing the size of a run, so that
	a tab will get a correct size.

	* dlls/riched20/para.c, dlls/riched20/style.c, dlls/riched20/undo.c:
	richedit: Assign equivalent structures instead of copying them.

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/reader.c, dlls/riched20/writer.c:
	richedit: Store shift-enter (keyboard) and \line (rtf) as end of row (and emit
	\line while saving in RTF).

	* dlls/riched20/editstr.h, dlls/riched20/wrap.c:
	richedit: Added support for end of line inside paragraphs.

	* dlls/riched20/richole.c:
	richedit: Fixed typo in bitmap scaling (for OLE objects).

	* dlls/riched20/editor.c:
	richedit: When handling \pard in RTF stream, really resets all paragraph styles.

	* dlls/riched20/editor.c:
	richedit: Fix reading paragraph left & first indentation attributes.

	* dlls/riched20/editor.c:
	richedit: Added support for reading DI bitmaps in RTF streams.

	* dlls/riched20/editor.c:
	richedit: Properly set the border width while parsing RTF stream.

	* dlls/riched20/paint.c:
	richedit: Prevent division by zero when 0-width border is used.

2008-03-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/jscript/Makefile.in, dlls/jscript/jscript.c,
	  dlls/jscript/jscript.h, dlls/jscript/jscript_main.c:
	jscript: Added JScript stub implementation.

	* dlls/jscript/Makefile.in, dlls/jscript/jscript_main.c:
	jscript: Added JScript class factory.

	* dlls/wininet/urlcache.c:
	wininet: Don't use query and hash part of URL to generate cache file name.

2008-03-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Check the render target capabilities of a resource type.

	* dlls/wined3d/directx.c:
	wined3d: Check the texture capabilities we offer for the different texture types
	(cube, plain, volume).

	* dlls/wined3d/directx.c:
	wined3d: Move depth/stencil verification to CheckDepthStencilCapability.

2008-03-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/secur32.c, dlls/secur32/wrapper.c:
	secur32: Assign to structs instead of using memcpy.

	* dlls/setupapi/devinst.c, dlls/setupapi/misc.c,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/virtcopy.c:
	setupapi: Assign to structs instead of using memcpy.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/rsaenh.c:
	rsaenh: Assign to structs instead of using memcpy.

2008-03-15  Joris Huizer <jorishuizer@debian>

	* dlls/qmgr/tests/job.c:
	qmgr/tests: Test the correct handle.

2008-03-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: Remove spurious linefeeds in error messages.

2008-03-13  Jared Lapsley <jared151@gmail.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: WebBrowser_get_Busy implementation.

2008-03-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/user32/tests/winstation.c, dlls/user32/winstation.c:
	user32: Fix enumeration for EnumWindowStations and EnumDesktops.

2008-03-14  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/internet.c:
	wininet: Split out NULL ptr and function ptr check.

2008-03-14  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Test processing of expose events.

2008-03-14  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement a few MediaSeeking functions.

	* dlls/quartz/filtergraph.c:
	quartz: Change some more stubs from traces to fixmes.

	* dlls/quartz/filtergraph.c:
	quartz: Add initial support for time formats in IMediaSeeking.
	Only support the SYSTEM_MEDIA_TIME for now.

	* dlls/quartz/filtergraph.c:
	quartz: Make MediaSeeking stubs fixmes.

	* dlls/quartz/dsoundrender.c:
	quartz: Silence the directsound buffer on starting.
	If the buffer is created and stopped, the contents of the buffer are
	indeterminate, by zeroing it you won't get leftovers from last play.

	* dlls/quartz/filtergraph.c:
	quartz: Set a default sync source on the filtergraph.
	Use the fallback system IReferenceClock, unless the app comes up with
	its own clock.

2008-03-14  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_AddFileSet.

2008-03-14  Tony Wasserka <tony.wasserka@freenet.de>

	* dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/d3dx9_36.spec,
	  dlls/d3dx9_36/d3dx9_36_main.c, dlls/d3dx9_36/d3dx9_36_private.h,
	  dlls/d3dx9_36/font.c:
	d3dx9: Add stubs for the ID3DXFont functions.

2008-03-14  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/install.c:
	msi: Don't publish the product for the custom action test.

2008-03-14  Rob Shearman <rob@codeweavers.com>

	* dlls/dxerr8/dxerr8.c, dlls/dxerr9/dxerr9.c:
	dxerr{8,9}: Include wine/port.h for snprintf.

	* dlls/wininet/http.c:
	wininet: If we receive an error from InitializeSecurityContext in
	HTTP_DoAuthorization then set pAuthInfo->finished so that we don't carry on
	using the security context.

	* dlls/wininet/http.c:
	wininet: Assume that if we're connected to an HTTP/1.1 server then connections
	can be kept alive by default.
	So don't close the connection in this case in HTTP_FinishedReading.

	* dlls/ole32/pointermoniker.c:
	ole32: CreatePointerMoniker is implemented.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the return type of TLB_ReadTypeLib.

2008-03-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Fix IFilterGraph RemoveFilter to stop the filter before removing it.
	Also checks for VFW_E_NOT_STOPPED that is allowed to cause a
	disconnection to fail.

	* dlls/quartz/filtergraph.c:
	quartz: Destroy the filtergraph better in releasing.
	RemoveFilter is better at removing a filter from a filtergraph then
	some method there.

2008-03-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/kernel32.spec, include/winbase.h:
	kernel32: Implemented ReadFileScatter and WriteFileGather.

	* dlls/kernel32/file.c:
	kernel32: Propagate the FILE_FLAG_NO_BUFFERING CreateFile flag to ntdll.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented NtWriteFileGather.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented NtReadFileScatter.

2008-03-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Added special URLACTION_SCRIPT_OVERRIDE_SAFETY handling.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added more policy tests.

	* dlls/urlmon/sec_mgr.c:
	urlmon: Added ProcessUrlAction implementation.

2008-03-12  Jacek Caban <jacek@codeweavers.com>

	* include/urlmon.idl:
	urlmon: Added URLACTION_* and URLPOLICY_* declarations.

2008-03-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fixed URLZONEREG_DEFAULT handling in GetZoneActionPolicy.

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Remove tests that fail on IE7 and make Wine behave like IE7.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return full patch in res protocol's secure URL.

	* dlls/urlmon/sec_mgr.c:
	urlmon: Move InternetParseUrl(PARSE_SECURITY_URL) call to map_url_to_zone and
	fix buffer size.

2008-03-14  Aric Stewart <aric@codeweavers.com>

	* dlls/dsound/mixer.c:
	dsound: Set the status from STATE_STARTING to STATE_PLAYING before mixing our
	next buffer so that we do not potentially skip early event when starting.

2008-03-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Added stub CorBindToRuntimeEx.

2008-03-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/regsvr.c:
	quartz: Add directsound renderer to filter list.

	* dlls/quartz/Makefile.in, dlls/quartz/filesource.c:
	quartz: Implement detection on file extension in filesource.

	* dlls/quartz/pin.c:
	quartz: Uncomment a trace.

	* dlls/quartz/dsoundrender.c:
	quartz: Fix typo.

	* dlls/quartz/mpegsplit.c:
	quartz: Detect and skip id3v2 header in mpeg splitter.

2008-03-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/Makefile.in, dlls/quartz/main.c, dlls/quartz/nullrenderer.c,
	  dlls/quartz/quartz_private.h, dlls/quartz/regsvr.c, include/uuids.h:
	quartz: Implement a dummy null renderer for directshow.

2008-03-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Don't add MERIT_DO_NOT_USE filters automatically to create a connection.
	NullRenderer might accidentally be rendered otherwise.

2008-03-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/qcap/capturegraph.c:
	qcap: Implement a stubby CaptureGraphBuilder2::RenderStream.
	This just uses enumeratepins to find 2 non-connected pins and connects
	them using the filtergraph.

2008-03-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/qcap/capturegraph.c:
	qcap: Add better findpin stub for CaptureGraphBuilder.
	ICaptureGraphBuilder::RenderStream needs to enumerate pins, and to
	prevent duplication I implemented a bit of findpin first.

2008-03-13  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/file.c:
	qmgr: Implement progress updates for downloads given by URL.

	* dlls/qmgr/tests/job.c:
	qmgr: Transfer files given by URL (including HTTP, etc).

	* dlls/qmgr/Makefile.in, dlls/qmgr/file.c, dlls/qmgr/tests/job.c:
	qmgr: Transfer files given by URL (including HTTP, etc).

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement BackgroundCopyJob_Complete.

	* dlls/kernel32/path.c, include/winbase.h:
	kernel32: Add the MOVEFILE_WRITE_THROUGH flag for MoveFileEx (stub).

	* dlls/qmgr/file.c, dlls/qmgr/job.c, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
	qmgr: Implement local file background "downloads."

	* dlls/qmgr/job.c, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h,
	  dlls/qmgr/service.c:
	qmgr: Add infrastructure for background file transferring.

2008-03-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Fix SHGetFolderPathAndSubDir tests.

2008-03-13  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/user32/msgbox.c, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Cs.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Fr.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Ja.rc,
	  dlls/user32/resources/user32_Ko.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Sv.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc,
	  dlls/user32/resources/user32_Wa.rc,
	  dlls/user32/resources/user32_Zh.rc, include/winuser.h:
	user32: Fix MessageBox button contents and ordering.

2008-03-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi/service: Give service its own debug channel.

2008-03-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/oledlg/insobjdlg.c:
	oledlg: Assign to structs instead of using memcpy.

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/style.c:
	riched20: Assign to structs instead of using memcpy (with typo fixes).

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Assign to structs instead of using memcpy.

	* dlls/ole32/enumx.c, dlls/ole32/stg_prop.c:
	ole32: Assign to structs instead of using memcpy.

2008-03-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/action.c:
	msi: Initialize variables.

2008-03-13  Artur Szymiec <artur.szymiec@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Add a device uuid.

2008-03-13  Joris Huizer <jorishuizer@debian>

	* dlls/wininet/urlcache.c:
	wininet: Fixed typos in two out-of-memory checks.

2008-03-13  Rob Shearman <rob@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update timezone information.

2008-03-13  Dan Kegel <dank@kegel.com>

	* dlls/winex11.drv/wintab.c:
	wintab: Expand whitelist of tablets.

2008-03-13  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/cdata.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implemented IXMLDOMCDATASection_insertData.

	* dlls/msxml3/comment.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment_appendData.

2008-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/event.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Store a pointer to the X11 event currently being handled instead of
	a simple count.

2008-03-13  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Add loading and processing of GSUB table vert/vrt2 functions for proper
	tategaki (vertical writing).

2008-03-13  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in, tools/make_makefiles:
	makefiles: Consider all .res files as object files.

2008-03-12  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Test and fix MsiSourceListAddSource.

2008-03-13  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/pi.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Cannot use put_nodeValue on a IXMLDOMProcessingInstruction node whose
	target is xml.

2008-03-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/quartz/avisplit.c, dlls/quartz/enummedia.c,
	  dlls/quartz/filesource.c, dlls/quartz/memallocator.c,
	  dlls/quartz/mpegsplit.c, dlls/quartz/pin.c, dlls/quartz/waveparser.c:
	quartz: Assign to structs instead of using memcpy.

	* dlls/qcap/enummedia.c, dlls/qcap/pin.c, dlls/qcap/v4l.c:
	qcap: Assign to structs instead of using memcpy.

2008-03-12  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/enum_files.c, dlls/qmgr/file.c, dlls/qmgr/job.c,
	  dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
	qmgr: Add critical sections for jobs and files.

2008-03-12  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/urlcache.c:
	wininet: Fix local variable shadowing in URLCacheContainer_OpenIndex.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Passing NULL for szBuffer and NULL for pcchValueBuf into
	MsiGetProductInfo{A, W} shouldn't crash.
	Add a test for this.

	* dlls/msi/join.c:
	msi: Fix typos which caused joins of three or more tables to not work properly.
	In JOIN_fetch_int and JOIN_fetch_stream, prev_rows should be multiplied
	by the rows encountered in the current table so that prev_rows contains
	all of counts of the rows encountered multiplied together, rather than
	just the count of the rows in the last table encountered.

	* dlls/oleaut32/typelib.c:
	oleaut32: Split the methods for opening different sources of typelibs out
	of TLB_ReadTypeLib.

2008-03-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/jscript/Makefile.in, dlls/jscript/jscript.inf,
	  dlls/jscript/jscript_main.c, dlls/jscript/rsrc.rc:
	jscript: Added Dll[Un]RegisterServer implementation.

	* dlls/secur32/schannel.c, dlls/secur32/tests/schannel.c:
	secur32: Improve SECPKG_ATTR_CIPHER_STRENGTHS stub.

	* dlls/secur32/tests/schannel.c:
	secur32: Fixed dynamic loading in schannel test.

2008-03-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Factor out FreeType initialization into a separate function.

2008-03-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tests/toolbar.c:
	comctl32/tests: Avoid size_t printf format warnings.

2008-03-12  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/urlcache.c, dlls/wininet/urlcache.c:
	wininet: Support the lpszFileExtension "reserved" parameter being passed into
	CommitUrlCacheEntryA.
	Store it in the URL cache entry and allow it to be retrieved by
	RetrieveUrlCacheEntryFile and other functions.

	* dlls/wininet/urlcache.c:
	wininet: The URL in CommitUrlCacheEntryInternal shouldn't be restricted to
	MAX_PATH chars in length.
	Dynamically allocate it and consolidate cleanup at the end of the function.

	* dlls/wininet/tests/urlcache.c, dlls/wininet/urlcache.c:
	wininet: Fix URLCache_LocalFileNameToPathA to return a full path, rather than
	just the container path.
	This was caused by path_len including the nul-terminator and so the rest
	of the string was being added after the nul-terminator, which is
	incorrect. This is fixed by making path_len not include the nul-terminator.
	Also fix a few other issues with the function, like not passing a
	correct length into the second call to WideCharToMultiByte, nRequired
	being calculated incorrectly and the string not always being nul-terminated.
	Add a test for this function by testing the lpszLocalFileName field
	obtained from RetrieveUrlCacheEntryFileA.

	* dlls/wininet/urlcache.c:
	wininet: Make some pointers const in URL cache functions.

	* dlls/wininet/urlcache.c:
	wininet: Use LIST_FOR_EACH_ENTRY in URLCacheContainers_FindContainerW instead
	of LIST_FOR_EACH and LIST_ENTRY.

	* dlls/wininet/tests/urlcache.c:
	wininet: Add tests for Find{First,Next}UrlCacheEntryA functions.

	* dlls/wininet/urlcache.c:
	wininet: Move URL cache hash entry validation to a separate function.

	* dlls/wininet/urlcache.c:
	wininet: Implement FindFirstUrlCacheEntry{A, W}, FindNextUrlCacheEntryA and
	FindCloseUrlCache.

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/urlcache.c:
	wininet: Add tests for some URL cache functions.

	* dlls/wininet/http.c:
	wininet: Only clear authentication header if the connection has authentication
	information.

	* dlls/wininet/http.c:
	wininet: Fix proxy authentication by using the data in lpwhr->pProxyAuthInfo
	in HTTP_InsertAuthorization instead of lpwhr->pAuthInfo when inserting the
	Proxy-Authentication header.

2008-03-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Check if _NET_WM_MOVERESIZE is supported before using it.

	* dlls/user32/driver.c, dlls/user32/nonclient.c, dlls/user32/user32.spec,
	  dlls/user32/user_private.h, dlls/user32/win.h, dlls/user32/winpos.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h:
	winex11: Moved support for window moving/resizing back to user32.

	* dlls/user32/driver.c, dlls/user32/input.c, dlls/user32/user_private.h:
	user32: Add a SetCapture function to the driver interface.

	* dlls/user32/input.c, dlls/user32/menu.c, dlls/user32/user_private.h:
	user32: Add a helper function to set the capture window.

2008-03-12  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Always send WM_CTLCOLORSTATIC during WM_ERASEBKGND.

2008-03-12  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Allow IXMLDOMDocument to save as another IXMLDOMDocument.

	* dlls/msxml3/main.c, dlls/msxml3/msxml_private.h, dlls/msxml3/regsvr.c:
	msxml3: Register msxml3 typelib.

2008-03-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/oleacc/main.c, dlls/oleacc/oleacc.spec:
	oleacc: Add GetOleaccVersionInfo.

2008-03-11  Lei Zhang <thestig@google.com>

	* dlls/shell32/shellpath.c:
	shell32: Use xdg well known directories for desktop folder symbolic link.

	* dlls/shell32/shellpath.c:
	shell32: Use xdg well known directories for my_xxx folder symbolic links.

2008-03-10  Lei Zhang <thestig@google.com>

	* dlls/shell32/xdg.c, dlls/shell32/xdg.h:
	shell32: Add xdg-user-dirs lookup code.

2008-03-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Add a few skips instead of just returning.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: DATE_YEARMONTH is only present on W2K and later.

	* dlls/kernel32/tests/codepage.c:
	kernel32/tests: Skip some tests on win95.

2008-03-12  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/coreaudio.c:
	coreaudio: Signal driver load failure if any component fails to initialize.

	* dlls/winecoreaudio.drv/audio.c, dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/midi.c, dlls/winecoreaudio.drv/mixer.c:
	coreaudio: Standardize on DRV_SUCCESS/FAILURE status codes for setup functions.

	* dlls/dsound/capture.c:
	dsound: Adjust for partial block before prepare-header and add-buffer steps.
	Otherwise, the wave-in driver(s) may copy incorrect data to internal structures.

	* dlls/avifil32/acmstream.c:
	avifil32: Fix copy/paste error.

2008-03-11  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Deformat the service name and display name when installing the service.

2008-03-11  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: Fix TB_GETSTRING return values.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: Add tests for TB_GETSTRING, fix NULL pointer access.

2008-03-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Move InternetQueryOption(INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT)
	to vtbl.

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Move InternetQueryOption(INTERNET_OPTION_DATAFILE_NAME).

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Move InternetQueryOption(INTERNET_OPTION_URL) to vtbl.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Move INTERNET_OPTION_HANDLE_TYPE to vtbl.

2008-03-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c:
	mshtml: Improve header parsing.

2008-03-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/recinfo.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/variant.c:
	oleaut32: Assign to structs instead of using memcpy.

2008-03-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/monthcal.c:
	comctl32/tests: Fix a variable type in monthcal.c. Removes 19 -Wsign-compare
	warnings.

2008-03-11  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdiplus/tests/image.c:
	gdiplus/tests: Remove redundant NULL check before GdipFree().

	* tools/widl/write_msft.c:
	widl: Remove local variable shadowing in add_func_desc().

2008-03-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/mshtml/Pl.rc, dlls/mshtml/rsrc.rc:
	mshtml: Add Polish translation.

2008-03-10  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/main.c, programs/regedit/main.h:
	regedit: Remove windows class names (they shouldn't be localized) and unused
	IDC_REGEDIT menu from resources.

2008-03-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/event.c:
	winex11: Discard ConfigureNotify events even if the intervening events are
	for other windows.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Implemented RegOverridePredefKey.

2008-03-11  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Revert to waiting on just the thread object, since the thread no
	longer sends messages.

	* dlls/comctl32/animate.c:
	comctl32: Animation notifications should be posted not sent.

	* dlls/comctl32/animate.c:
	comctl32: Get the background brush in ACM_OPEN where native does.

2008-03-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcr71/msvcr71.spec, dlls/msvcrt/cppexcept.c,
	  dlls/msvcrt/cppexcept.h, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented __CppXcptFilter.

2008-03-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix setting version to Vista.

2008-03-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c:
	uuid: Avoid some guids that shouldn't be defined in libuuid.

2008-03-11  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, dlls/uuid/uuid.c, include/Makefile.in, include/activaut.idl:
	include: Added activaut.idl.

	* include/activscp.idl:
	activscp.idl: Added CATID_* declarations.

2008-03-11  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Skip leading @ from FontFace when looking for font to load.

2008-03-10  Denver Gingerich <denver@ossguy.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Implement ForceRefreshRate registry entry for overriding DirectX
	refresh rate.

2008-03-05  Christopher Berner <raccoonone@procyongames.com>

	* dlls/crypt32/oid.c, dlls/hhctrl.ocx/help.c, dlls/mpr/wnet.c,
	  dlls/user32/resource.c, dlls/user32/tests/resource.c:
	user32: Make LoadStringW pass tests.

2008-03-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected double free in test.

2008-03-11  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/tests/install.c:
	msi: Ignore the custom action type 51 if the source field is empty.

2008-03-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fix an off-by-one error when applying embedded transforms.

2008-03-10  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/source.c:
	msi: Optimize MsiSourceListAddSourceEx for adding to the end of the list.

2008-03-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/event.c:
	winex11: Add support for merging redundant events, and use it for ConfigureNotify
	and MotionNotify.

2008-03-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/version.c:
	kernel32: Fix/change tests for systems with no ServicePack.

2008-03-11  Aric Stewart <aric@codeweavers.com>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ja.rc:
	wineboot: Add Japanese resources.

2008-03-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Set the fullscreen flag before the display Mode.

	* dlls/wined3d/device.c:
	wined3d: Only restore the style and exStyle when it is untouched.

	* dlls/wined3d/device.c:
	wined3d: Only adjust windows in fullscreen mode to the screen.

2008-03-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ole32/ftmarshal.c, dlls/ole32/oleobj.c, dlls/ole32/rpc.c,
	  dlls/ole32/stg_prop.c, dlls/ole32/storage32.c:
	ole32: Assign to structs instead of using memcpy.

	* dlls/ole32/clipboard.c, dlls/ole32/compobj.c, dlls/ole32/datacache.c,
	  dlls/ole32/defaulthandler.c, dlls/ole32/errorinfo.c:
	ole32: Assign to structs instead of using memcpy.

2008-03-10  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg_En.rc,
	  dlls/comdlg32/cdlg_Pl.rc, dlls/comdlg32/fontdlg.c:
	comdlg32: Move font style names to resources.

2008-03-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_Nl.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pl.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shell32_Ru.rc, dlls/shell32/shell32_Si.rc,
	  dlls/shell32/shell32_Sk.rc, dlls/shell32/shell32_Tr.rc,
	  dlls/shell32/shell32_Uk.rc, dlls/shell32/shell32_Zh.rc:
	shell32: Remove DISCARDABLE from STRINGTABLE resources.

2008-03-10  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/download.c:
	urlmon: Initialise the cache_file field of DownloadBSC on creation.

2008-03-10  L. Rahyen <research@science.su>

	* programs/winecfg/winecfg.c, programs/winecfg/x11drvdlg.c:
	winecfg: Make DPI interval to be the same as in Windows.

2008-03-10  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/tests/image.c:
	gdiplus: Add more sophisticated tests for GdipSaveImageToFile.
	Add a test to make sure the saved image has the same dimensions as
	original. Delete the test file when finished.

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Implement BMP encoding.
	Implement the encoding function for GDI+ images so that
	GdipSaveImageToStream can encode images as BMP files.

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Implement GdipSaveImageToStream using encoders.
	Add the correct framework for a fully-functional implementation of
	image encoding (not a hack like before). Currently, only a stub for
	BMP encoding is supported. New tests added as well.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/tests/image.c:
	gdiplus: Implement GdipSaveImageToFile via GdipSaveImageToStream.
	Still need to implement saving the image based on the encoder
	parameter.
	Basic tests included.

	* dlls/gdiplus/image.c:
	gdiplus: Remove unnecessary IStream_AddRef from GdipLoadImageFromFile.

2008-03-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c:
	quartz: Don't print errors for handled return values.

2008-03-10  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/winuser.h:
	include: Add flag for BSM_ALLDESKTOPS.

2008-03-10  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the pointer level being passed into call_unmarshaller in
	client_do_args_old_format for base return parameters.
	NdrBaseTypeUnmarshall expects a pointer to a pointer to a base type.
	pRetVal contains a pointer to a base type, so we need to pass the
	address of pRetVal into call_unmarshaller here.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix -Oi interpreter for base types.
	Don't call memory sizing rountines to compute the size of a type, since
	memory sizing routines have side effects like checking there is enough
	space in the buffer for the type and incrementing the buffer pointer.
	Instead, create a function which returns the necessary size of the
	limited set of types we can encounter and remove call_memory_sizer which
	is no longer needed.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Check that the input to RPCRT4_strndupW was not NULL before assuming
	that the string couldn't be allocated due to lack of memory.

	* dlls/Makeimplib.rules.in, dlls/adsiid/Makefile.in,
	  dlls/dxerr8/Makefile.in, dlls/dxerr9/Makefile.in,
	  dlls/dxguid/Makefile.in, dlls/strmiids/Makefile.in,
	  dlls/uuid/Makefile.in, dlls/winecrt0/Makefile.in,
	  tools/make_makefiles:
	makefiles: Simplify the use of the MODULE variable in static import libraries.
	Don't include platform-specific information when declaring the name of
	the static import libary to build. Instead, add this information in
	Makeimplib.rules.in.

	* dlls/secur32/ntlm.c:
	secur32: Fix ntlm_GetCachedCredential to not call strlenW on a NULL pointer.
	pszHost should just be set to pszTargetName if pszTargetName doesn't
	contain any other information.

	* dlls/wininet/http.c:
	wininet: Retrieve the maximum token length from the SSP and use a buffer of
	that length in calls to InitializeSecurityContextW.
	Otherwise, InitializeSecurityContextW could run out of space with our
	small, fixed buffer and fail.

	* dlls/wininet/http.c:
	wininet: Allow HTTP_DoAuthorization to accept a NULL username/domain in the
	non-Basic case.
	When using SSPI, pass in a NULL identity in this case so that the SSP
	can try to use cached credentials.

	* dlls/wininet/http.c:
	wininet: Don't call DeleteSecurityContext and FreeCredentialsHandle on invalid
	handles.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Make the reference count of WININETHANDLEHEADER thread-safe by using
	InterlockedIncrement/InterlockedDecrement.

2008-03-10  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix compilation on systems that don't support nameless unions.

2008-03-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Free the library after use.

2008-03-10  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Store the Windows path (if it's available) in the font registry entries.

2008-03-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c, dlls/msxml3/text.c:
	msxml3: Implemented IXMLDOMText_insertData.

	* dlls/msxml3/text.c:
	msxml3: Support IXMLDOMCharacterData lookup in IXMLDOMText QueryInterface.

2008-03-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dib.c:
	winex11: Added an exception handler to catch bad pointers in X11DRV_SetImageBits.

	* dlls/gdi32/dib.c:
	gdi32: Properly handle SetDIBits failure in StretchDIBits.

2008-03-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Add some missing Ukrainian and Belarusian cyrillic glyphs.

2008-03-09  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Use primary_render_target_is_p8 in read_from_framebuffer.

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Cover one more case in p8_texture_test.
	Test if a P8 texture gets properly updated if there was a palette change while
	this texture wasn't bound to any stage.

	* dlls/wined3d/surface.c:
	wined3d: Get rid of spurious err when locking with WINED3DLOCK_DISCARD.

2008-03-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Don't use FreeLibrary with GetModuleHandle.

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/advpack/tests/install.c:
	advpack/tests: Free the library after use.

2008-03-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/cdata.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMCDATASection_appendData.

2008-03-09  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/cdata.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMCDATASection_substringData.

2008-03-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/comment.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment_substringData.

2008-03-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Cleanup for DEVMODEdupWtoA.

2008-03-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/winspool.drv.spec:
	winspool: Implement SpoolerInit.

	* dlls/winspool.drv/winspool.drv.spec:
	winspool: Export ConvertAnsiDevModeToUnicodeDevMode and
	ConvertUnicodeDevModeToAnsiDevMode.

2008-03-07  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Return an error for consecutive GdipLockBitmapBit calls.

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Update bitmap state in GdipUnlockBitmapBits.

	* dlls/gdiplus/image.c:
	gdiplus: Fix memory leak in GdipLockBitmapBits.

	* dlls/gdiplus/tests/image.c:
	gdiplus: Tests for GdipLockBitmapBits/GdipUnlockBitmapBits.

2008-03-07  Jeremy White <jwhite@winehq.org>

	* dlls/gdi32/font.c:
	gdi32: Revise CreateScalableFontResourceA to pass through
	CreateScalableFontResourceW.

2008-03-08  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx9.h:
	d3dx9: Add the _D3DXERR enumeration.

2008-03-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/string.c:
	msvcrt/tests: The new string functions don't have to exist.

2008-03-09  Jacek Caban <jacek@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/jscript/Makefile.in, dlls/jscript/jscript.spec,
	  dlls/jscript/jscript_main.c:
	jscript: Added stub DLL.

2008-03-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fixed MapUrlToZone test on IE7.

	* dlls/mshtml/nsio.c:
	mshtml: Use load group to find NSContainer in AsyncOpen if URI has no associated
	container.

	* dlls/mshtml/htmlscript.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLScriptElement:get_type implementation.

2008-03-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ntdll/reg.c, dlls/ntdll/sec.c, dlls/ntdll/time.c:
	ntdll: Assign to structs instead of using memcpy.

	* dlls/qmgr/job.c:
	qmgr: Assign to structs instead of using memcpy.

	* dlls/netapi32/nbt.c:
	netapi32: Assign to struct instead of using memcpy.

2008-03-07  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Update both winnt and win9x font keys and factor out the cleanup code.

2008-03-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: ProcessImageFileName is not supported before XP.

	* dlls/user32/tests/dialog.c:
	user32/tests: Use A-call.

	* dlls/user32/tests/cursoricon.c, dlls/user32/tests/listbox.c:
	users32/tests: Win9x doesn't like FILE_ALL_ACCESS.

	* dlls/dinput/tests/device.c, dlls/dinput/tests/keyboard.c,
	  dlls/dinput/tests/mouse.c:
	dinput/tests: Don't treat old dinput versions as an error.

	* dlls/shell32/tests/systray.c:
	shell32/tests: Make tests run again on win95 and NT.

2008-03-07  Ethan Chen <echen@thunder-08-L>

	* include/gdiplusflat.h:
	include: Add GdipBitmapUnlockBits to include/gdiplusflat.h.

2008-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Added IHTMLDocument2::write implementation.

2008-03-07  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.57.

----------------------------------------------------------------
2008-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/mscms/profile.c, dlls/mscms/stub.c:
	mscms: Fix a couple of compiler warnings when lcms is missing.

2008-03-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Return something more useful for WebBrowser_get_ReadyState.

2008-03-06  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/tests/image.c, include/gdiplusenums.h,
	  include/gdiplusflat.h, include/gdiplusimaging.h:
	gdiplus: Implement GdipGetImageEncoders.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Replace bitmap integer constants with symbolic constants.

2008-03-06  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/enum_jobs.c, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h,
	  dlls/qmgr/tests/qmgr.c:
	qmgr: Only have one BackgroundCopyManager per system.

2008-03-07  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32: Correct test for NetUserChangePassword.

2008-03-06  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Fix a few ok() comparisons to not always return true in the visual tests.

2008-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Add cyrillic glyphs of a 9 pixel bitmap set to Tahoma.

2008-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winpos.c:
	user32: Force the window position to be on-screen in SetWindowPlacement.

2008-02-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a point size test.

2008-03-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Mark constants dirty in the EXT_gpu_program_parameters path.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: gl_FragCoord isn't exact.

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a test for the vPos register.
	The vPos register returns the unnormalised position of the current
	fragment to the pixel shader. This test tests for its functionality in
	both onscreen and offscreen render targets. On- and offscreen targets
	are used because of the inverted y coordinate.

2008-03-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* server/winstation.c:
	server: Fix reference leak in enum_desktop.

2008-03-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msvcrt/file.c:
	msvcrt: Assign to structs instead of using memcpy.

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Assign to structs instead of using memcpy.

	* dlls/msi/suminfo.c, dlls/msi/table.c:
	msi: Assign to structs instead of using memcpy.

2008-03-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Fix handling of published installer properties.

2008-03-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Fix SizeToHeight when no bands visible.

2008-03-06  Dan Kegel <dank@kegel.com>

	* dlls/winex11.drv/wintab.c:
	winex11: wintab.c: use atan2 instead of atan.

2008-03-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a few typos.

2008-03-06  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/stg_stream.c:
	ole32: Fix CopyTo to work correctly with LARGE_INTEGERs.

2008-03-04  Ove Kaaven <ovek@transgaming.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Fix bug in handling of multivolume CAB files.

2008-03-06  Rob Shearman <rob@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/adsiid/Makefile.in, dlls/adsiid/adsiid.c:
	adsiid: Add static import library for active directory GUIDs.

	* include/excpt.h:
	include: Add defines for GetExceptionCode, GetExceptionInformation and
	AbnormalTermination to excpt.h for the MS compiler when using compiler
	exceptions.

	* dlls/ole32/compobj_private.h, dlls/uuid/uuid.c:
	uuid: Add CLSID_InProcFreeMarshaler.
	Remove its initialisation from ole32.

	* dlls/user32/tests/winstation.c:
	user32: Add test for calling CreateDesktop on already created desktop name.

	* dlls/mshtml/main.c, include/shlguid.h:
	mshtml: Move some public GUIDs to shlguid.h.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use closesocket to close sockets and define it to close on Unix
	platforms to make the code more portable.

2008-03-06  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/hglobalstream.c:
	ole32: Fix CopyTo to work correctly with LARGE_INTEGERs.

2008-03-06  Francois Gouget <fgouget@codeweavers.com>

	* dlls/hal/hal.c, dlls/hal/hal.spec:
	hal: Add a stub for HalGetBusData() to make 3DMark2001SE happy in WinNT mode.

	* include/Makefile.in, include/ddk/ntddk.h:
	ddk: Add a stub ntddk.h header.

2008-03-06  Francois Gouget <fgouget@free.fr>

	* libs/port/getopt.c:
	port: s/#if/#ifdef/ so it still works if HAVE_XXX is not defined.

	* configure, configure.ac:
	configure: s/#if/#ifdef/ so it still works if HAVE_XXX is not defined.

	* dlls/ws2_32/socket.c:
	ws2_32: s/#if/#ifdef/ so it still works if HAVE_XXX is not defined.

2008-03-04  Ethan Chen <echen@thunder-08-L>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipCreateBitmapFromFileICM.

2008-03-05  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/install.c:
	msi: Break out the publishing tests into their respective actions.

2008-03-06  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Validate input for FilterGraph2_AddFilter.

2008-03-06  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/image.c:
	gdiplus: Fix errors in image dimensions.

2008-03-05  Rico Schüller <kgbricola@web.de>

	* dlls/wined3d/directx.c:
	wined3d: Fix copy and past error.

	* dlls/ddraw/device.c:
	ddraw: Fix diffuse and specular color types.

2008-03-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/winuser.h:
	include: Add flag for BROADCAST_QUERY_DENY.

2008-03-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msdmo/dmort.c:
	msdmo: Assign to structs instead of using memcpy.

	* dlls/mshtml/conpoint.c, dlls/mshtml/oleobj.c, dlls/mshtml/persist.c:
	mshtml: Assign to structs instead of using memcpy.

	* dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Assign to structs instead of using memcpy.

2008-03-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec, include/winhttp.h:
	winhttp: Add a stub implementation of WinHttpDetectAutoProxyConfigUrl.

2008-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makedll.rules.in, dlls/d3dx9_36/Makefile.in,
	  dlls/winspool.drv/Makefile.in:
	makefiles: Support non-standard import lib names in the global dll rules.

2008-03-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Reset the cursor window when re-creating the client window.

2008-03-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Retrieve X color profile in GetICMProfile.

	* dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/icm.c, dlls/gdi32/mfdrv/init.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/winex11.drv.spec:
	gdi32: Move GetICMProfile to the driver.

2008-02-23  Tony Wasserka <tony.wasserka@freenet.de>

	* dlls/d3dx9_36/d3dx9_36.spec, dlls/d3dx9_36/d3dx9_36_main.c:
	d3dx9: Implement D3DXDebugMute.

2008-03-05  Huw Davies <huw@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Start of a 9 pixel high strike for Tahoma.

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/systray.c:
	shell32: Add a test for ABM_GETTASKBARPOS.

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/systray.c:
	shell32: ABM_GETAUTOHIDEBAR should return a HWND or NULL.

	* dlls/shell32/shell32_main.c, include/shellapi.h:
	shell32: Fix return type of SHAppBarMessage.

2008-03-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Support shininess > 128 if opengl does.

2008-03-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a test testing two texbem instructions in one shader.

2008-03-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Support more than one texbem instruction per shader.

2008-03-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Add a number to the ARB program shader bumpenvmat matrices.

2008-03-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/mdi.c, dlls/user32/user32.spec:
	user32: Added stubs for Cascade/TileChildWindows.

	* dlls/user32/winpos.c, dlls/user32/wnd16.c:
	user32: Moved Cascade/TileChildWindows16 to wnd16.c.

	* dlls/winex11.drv/winpos.c:
	winex11: Don't set the fullscreen hint on maximized windows.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Wait for a window to move out of withdrawn state before withdrawing
	it again.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add a DestroyNotify handler to catch a situation that is not supposed
	to happen.

	* dlls/user32/tests/dde.c, dlls/user32/tests/msg.c,
	  dlls/user32/tests/win.c:
	user32/tests: Make the initial timeout longer in flush_events() for machines
	with slower round-trip times.

2008-03-05  Francois Gouget <fgouget@free.fr>

	* tools/winapi/msvcmaker:
	msvcmaker: We don't use .dbg.c files anymore.

	* tools/winapi/msvcmaker:
	msvcmaker: We don't build wine.lib so don't try to copy it.

	* tools/winapi/msvcmaker:
	msvcmaker: winebuild needs getopt*.c and mkstemps.c when compiled with MSVC.

2008-03-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Fixed handling of fake dlls when loading a builtin. Reported by Jacek
	Caban.

2008-03-05  Francois Gouget <fgouget@free.fr>

	* libs/port/getopt.c:
	port/getopt: s/#if/#ifdef/ so it still works if HAVE_STRING_H is not defined.

	* dlls/ntdll/tests/atom.c:
	ntdll/tests: Don't use 0x55/0xaa to avoid any confusion when running with +heap.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Don't use 0xaa to avoid any confusion when running with +heap.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Don't use 0xaa to avoid any confusion when running with +heap.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Don't use 0xaa to avoid any confusion when running with +heap.

	* dlls/user32/tests/menu.c:
	user32/tests: Don't use 0x55 to avoid any confusion when running with +heap.

	* dlls/user32/tests/resource.c:
	user32/tests: Add the trailing '\n' to a couple of ok() calls.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Skip the string tests for the functions that are not available
	on Win9x.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: The function pointers are global so initialize them on startup,
	before they are used.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Add skip statements for missing functions to the string tests.

2008-03-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Handle TKIND_ALIAS properly when passed as pointer.

2008-03-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Retrieve the current window placement in MapNotify before modifying it.

	* dlls/winex11.drv/winpos.c:
	winex11: Ignore Map/UnmapNotify if the window is already in the appropriate
	state.

2008-03-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/msi.c:
	msi/tests: Make tests run on win9x/NT4 again.

2008-03-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c:
	wined3d: Fix a small bug in a patch from yesterday.

2008-03-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/job.c, dlls/qmgr/qmgr.h, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_Resume.

2008-02-29  Lei Zhang <thestig@google.com>

	* dlls/shell32/shellpath.c:
	shell32: Remove unused variable.

2008-03-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mciavi32/mciavi.c:
	mciavi32: Assign to struct instead of using memcpy.

	* dlls/mciwave/mciwave.c:
	mciwave: Assign to struct instead of using memcpy.

	* dlls/mpr/wnet.c:
	mpr: Assign to struct instead of using memcpy.

	* dlls/mapi32/prop.c:
	mapi32: Assign to structs instead of using memcpy.

2008-03-02  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Added support for Windows 2008.

	* dlls/ntdll/version.c:
	ntdll: Added support for Windows 2008.

2008-03-04  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml3: Remove Byte since it's not a valid datatype.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Stopped seg faults during regression tests on windows.

2008-03-04  Eric Pouech <eric.pouech@orange.fr>

	* dlls/ntdll/cdrom.c:
	ntdll: Removed conflict for FAILED (defined both in our winerror.h and in
	linux/scsi.h).

2008-03-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shellord.c:
	shell32: Improve SHRegisterDragDrop and SHRevokeDragDrop.

2008-03-03  Steven Edwards <winehacker@gmail.com>

	* include/winnt.h:
	winnt.h: Fix dllimport and visibility attributes on cygwin.

2008-03-04  Rob Shearman <rob@codeweavers.com>

	* Make.rules.in, configure, configure.ac, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, libs/port/Makefile.in,
	  libs/wpp/Makefile.in:
	makefiles: Split AR into AR and ARFLAGS.

	* dlls/Makedll.rules.in, dlls/activeds/Makefile.in,
	  dlls/advapi32/Makefile.in, dlls/advpack/Makefile.in,
	  dlls/atl/Makefile.in, dlls/avicap32/Makefile.in,
	  dlls/avifil32/Makefile.in, dlls/cabinet/Makefile.in,
	  dlls/capi2032/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/clusapi/Makefile.in,
	  dlls/comctl32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/compstui/Makefile.in, dlls/credui/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/cryptdll/Makefile.in, dlls/cryptnet/Makefile.in,
	  dlls/ctl3d32/Makefile.in, dlls/d3d8/Makefile.in,
	  dlls/d3d9/Makefile.in, dlls/d3dim/Makefile.in,
	  dlls/d3drm/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/d3dx9_36/Makefile.in, dlls/d3dxof/Makefile.in,
	  dlls/dbghelp/Makefile.in, dlls/dciman32/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput8/Makefile.in, dlls/dmusic32/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplay/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/dpnet/Makefile.in,
	  dlls/dsound/Makefile.in, dlls/dwmapi/Makefile.in,
	  dlls/gdi32/Makefile.in, dlls/gdiplus/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/hid/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/icmp/Makefile.in, dlls/imagehlp/Makefile.in,
	  dlls/imm32/Makefile.in, dlls/inetcomm/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/kernel32/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/mapi32/Makefile.in,
	  dlls/mlang/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/mprapi/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msi/Makefile.in,
	  dlls/msimg32/Makefile.in, dlls/msvcr71/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt20/Makefile.in,
	  dlls/msvcrt40/Makefile.in, dlls/msvcrtd/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/mswsock/Makefile.in,
	  dlls/nddeapi/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/newdev/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ntdsapi/Makefile.in, dlls/ntoskrnl.exe/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleacc/Makefile.in,
	  dlls/oleaut32/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/oledlg/Makefile.in, dlls/olepro32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/pdh/Makefile.in, dlls/powrprof/Makefile.in,
	  dlls/psapi/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/resutils/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rsaenh/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/sensapi/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/sfc/Makefile.in,
	  dlls/sfc_os/Makefile.in, dlls/shdocvw/Makefile.in,
	  dlls/shell32/Makefile.in, dlls/shfolder/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/slc/Makefile.in,
	  dlls/snmpapi/Makefile.in, dlls/spoolss/Makefile.in,
	  dlls/sti/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/unicows/Makefile.in, dlls/url/Makefile.in,
	  dlls/urlmon/Makefile.in, dlls/user32/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/uxtheme/Makefile.in,
	  dlls/vdmdbg/Makefile.in, dlls/version/Makefile.in,
	  dlls/wined3d/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winnls32/Makefile.in, dlls/winscard/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/wintab32/Makefile.in,
	  dlls/wintrust/Makefile.in, dlls/wldap32/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/wow32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/wsock32/Makefile.in,
	  dlls/wtsapi32/Makefile.in, tools/make_makefiles:
	makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
	Only specify the root to keep platform-specifics out of the individual
	DLL makefiles.

2008-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Add the bitmap sets for cyrillic glyphs to tahoma.sfd.

2008-03-04  Tony Wasserka <tony.wasserka@freenet.de>

	* .gitignore, dlls/Makefile.in, dlls/d3dx9_36/Makefile.in:
	d3dx9_36: Create d3dx9 importlib.

	* tools/make_makefiles:
	make_makefiles: Fix importlib handling.

2008-02-19  Tony Wasserka <tony.wasserka@freenet.de>

	* dlls/d3dx9_24/d3dx9_24.spec, dlls/d3dx9_24/d3dx9_24_main.c,
	  dlls/d3dx9_25/d3dx9_25.spec, dlls/d3dx9_25/d3dx9_25_main.c,
	  dlls/d3dx9_26/d3dx9_26.spec, dlls/d3dx9_26/d3dx9_26_main.c,
	  dlls/d3dx9_27/d3dx9_27.spec, dlls/d3dx9_27/d3dx9_27_main.c,
	  dlls/d3dx9_28/d3dx9_28.spec, dlls/d3dx9_28/d3dx9_28_main.c,
	  dlls/d3dx9_29/d3dx9_29.spec, dlls/d3dx9_29/d3dx9_29_main.c,
	  dlls/d3dx9_30/d3dx9_30.spec, dlls/d3dx9_30/d3dx9_30_main.c,
	  dlls/d3dx9_31/d3dx9_31.spec, dlls/d3dx9_31/d3dx9_31_main.c,
	  dlls/d3dx9_32/d3dx9_32.spec, dlls/d3dx9_32/d3dx9_32_main.c,
	  dlls/d3dx9_33/d3dx9_33.spec, dlls/d3dx9_33/d3dx9_33_main.c,
	  dlls/d3dx9_34/d3dx9_34.spec, dlls/d3dx9_34/d3dx9_34_main.c,
	  dlls/d3dx9_35/d3dx9_35.spec, dlls/d3dx9_35/d3dx9_35_main.c,
	  dlls/d3dx9_36/d3dx9_36.spec, dlls/d3dx9_36/d3dx9_36_main.c:
	d3dx9: Implement D3DXCheckVersion.

2008-03-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c, dlls/user32/win.h, dlls/user32/winpos.c:
	user32: Store the window placement information directly in the main window
	structure.

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: Fix a couple of message test failures.

	* dlls/user32/tests/msg.c:
	user32/tests: Fix most message tests to pass on Vista.

2008-03-04  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Use "default" as the default card name instead of "default:0".

2008-02-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Use GL_EXT_gpu_program_parameters if available.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Hardcode local constants in ARB shaders if possible.

2008-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement a different constant dirtification algorithm.
	Add a new property of the shader backend which indicates whether the
	shader backend is able to dirtify single constants rather than
	dirtifying vshader and pshader constants as a whole. Depending on this
	a different Set*ConstantF implementation is used which marks constants
	dirty. The ARB shader backend uses this and marks constants clean
	after uploading.

2008-03-04  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/widl.c:
	widl: Avoid getopt constants that may not be defined.

2008-03-03  Rob Shearman <rob@codeweavers.com>

	* libs/port/strcasecmp.c, libs/port/strncasecmp.c:
	libport: Undefine strcasecmp and strncasecmp in case they are defined to
	stricmp and strnicmp respectively.

	* include/d3d9.h:
	include: Remove superfluous semi-colon from d3d9.h.

	* configure, configure.ac, include/config.h.in, include/wine/port.h:
	Add configure check for strtoll and strtoull.
	Define these to _strtoi64 and _strtoui64 if these are available instead.

	* libs/wpp/ppl.l:
	libwpp: Include wine/port.h in ppl.l as strcasecmp is used, which isn't
	available on all platforms.

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: Fix compile with MinGW.

2008-03-03  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_GetProgress.

	* dlls/qmgr/enum_jobs.c, dlls/qmgr/tests/enum_jobs.c:
	qmgr: Implement Skip and Reset for IEnumBackgroundCopyJobs.

2008-03-03  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/enum_jobs.c, dlls/qmgr/tests/enum_jobs.c:
	qmgr: Implement IEnumBackgroundCopyJobs_Next.

2008-03-03  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/enum_jobs.c, dlls/qmgr/qmgr.h, dlls/qmgr/tests/Makefile.in,
	  dlls/qmgr/tests/enum_jobs.c:
	qmgr: Implement IEnumBackgroundCopyJobs_GetCount.

2008-03-04  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetProductInfoEx.

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	msi: Implement MsiGetProductInfoEx.

2008-03-03  Austin English <austinenglish@gmail.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Raise max screen resolution to 160 DPI.

2008-03-03  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd.exe: Support cd .. when saving current directory.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Fix pipes.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix running programs from root of drive.

2008-03-03  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Added tests for SHGetFolderPathAndSubDirA.

2008-03-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Add aux buffers support for use with wglChoosePixelFormatARB.

2008-03-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/comm.c, dlls/kernel32/cpu.c, dlls/kernel32/environ.c,
	  dlls/kernel32/heap.c, dlls/kernel32/thunk.c, dlls/kernel32/time.c:
	kernel32: Assign to structs instead of using memcpy.

2008-03-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Remove unneeded DLGPROC casts.

	* programs/wordpad/wordpad.c:
	wordpad: Use correct prototype for dialog functions.

2008-02-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Remove D3D9GetSWInfo.

	* dlls/d3d9/d3d9.spec:
	d3d9: Reorder the spec file.

2008-02-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/d3d9ex.c:
	d3d9: Implement Direct3DCreate9Ex + tests.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/stateblock.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: IDirect3DDevice9Ex stub.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/directx.c:
	d3d9: Add an IDirect3D9Ex stub.

	* dlls/ddraw/device.c:
	ddraw: Catch No-op SetRenderTarget operations.

2008-02-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Call fixup_extensions before destroying the fake context.

2008-03-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Moved InternetReadFileExA to vtbl.

2008-03-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/comdlg32/printdlg.c, dlls/oledlg/insobjdlg.c, dlls/sane.ds/ui.c:
	Replace some instances of LoadStringA by LoadStringW.

	* dlls/user32/resource.c, dlls/user32/tests/resource.c:
	user32: Reimplement LoadStringA to avoid memory allocations and to pass
	the tests.

2008-03-02  Christopher Berner <raccoonone@procyongames.com>

	* dlls/user32/tests/resource.c, dlls/user32/tests/resource.rc:
	user32/tests: Conformance tests for LoadStringW and LoadStringA.

2008-03-03  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Invalidate the newly exposed child region on the parent too if it
	doesn't clip children.

	* dlls/user32/tests/msg.c:
	user32/tests: Skip tests instead of crashing if global hook cannot be set.

2008-03-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Add small cyrillic glyphs to tahoma.sfd.

2008-03-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Skip not available functions.

2008-03-03  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/Makefile.in, dlls/kernel32/Makefile.in,
	  dlls/kernel32/kernel16.c, dlls/kernel32/ne_module.c,
	  include/wine/winbase16.h, tools/make_makefiles:
	kernel32: Added a winoldap.mod 16-bit exe to launch 32-bit processes.
	Based on a patch by Dmitry Timoshkov.

	* tools/winebuild/main.c, tools/winebuild/spec16.c:
	winebuild: Add support for 16-bit exe modules.

	* dlls/Makedll.rules.in, dlls/Makefile.in:
	dlls: Move installation rules for 16-bit placeholders to the top-level makefile.

2008-03-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlscript.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLScriptElement stub implementation.

2008-02-24  Nathan Beckmann <nathan.beckmann@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/tests/image.c:
	gdiplus: Implement GdipLoadImageFromFile.

	* dlls/gdiplus/tests/image.c:
	gdiplus: Add tests for GdipCreateBitmapFromFile.

	* dlls/gdiplus/image.c:
	gdiplus: Fix IStream_Release in GdipCreateBitmapFromFile.

2008-03-03  Alexandre Julliard <julliard@winehq.org>

	* programs/regedit/regproc.c:
	regedit: Include the terminating null in string lengths.

2008-03-02  Francois Gouget <fgouget@free.fr>

	* dlls/winmm/tests/mmio.c:
	winmm/tests: Don't use 0x55 to avoid any confusion when running with +heap.

2008-03-01  Francois Gouget <fgouget@free.fr>

	* configure, configure.ac, dlls/d3drm/tests/vector.c,
	  dlls/msxml3/tests/xmldoc.c, dlls/ole32/compobj.c,
	  dlls/ole32/compobj_private.h, dlls/ole32/ole2.c,
	  dlls/usp10/tests/usp10.c, dlls/wined3d/directx.c:
	Assorted spelling, punctuation and case fixes.

	* dlls/wininet/tests/ftp.c:
	wininet/tests: FtpCommandA() is not available on Win9x. So load it dynamically
	and skip some tests.

	* dlls/wintrust/tests/asn.c:
	wintrust/tests: Crypt(En,De)codeObjectEx() are not available on Win9x. So load
	them dynamically and skip some tests.

	* dlls/gdiplus/tests/image.c:
	gdiplus/tests: Add the trailing '\n' to a couple of ok() calls.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Add the trailing '\n' to a couple of ok() calls.

2008-03-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/utils.c:
	wined3d: Add D32F_LOCKABLE to getDepthStencilBits.

2008-03-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Don't use INTERNET_ReadFile in HTTP_DrainContent.

	* dlls/wininet/ftp.c, dlls/wininet/internet.h:
	wininet: Move FTP structs and functions declarations from internet.h.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Move InternetReadFile to vtbl.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Move INTERNET_STATUS_REQUEST_COMPLETE call from INTERNET_ReadFile.

	* dlls/wininet/tests/internet.c:
	wininet: Fixed some tests.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLScriptElement declaration.

2008-03-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/tahoma.sfd:
	fonts: Add capital cyrillic glyphs to tahoma.sfd.

	* fonts/tahoma.sfd:
	fonts: Change encoding of tahoma.sfd to unicode.

2008-03-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* tools/wrc/parser.y:
	wrc: Convert standard control classes names into ids also for UTF-8 resource
	files.

2008-03-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Handle buffer overflow on A->W converter.

2008-02-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_base.c:
	wined3d: Catch NOP palette changes.

2008-02-23  Stefan Dösinger <stefan@codeweavers.com>

	* include/d3d9.h, include/d3d9types.h:
	include: Declare IDirect3D9Ex and IDirect3DDevice9Ex.

2008-02-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Fix an ok line.

2008-02-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Give occlusion queries their own vtable.

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Subclass queries.

2008-03-01  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMProcessingInstruction_get_nodeName.

	* dlls/msxml3/cdata.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implmented IXMLDOMCDATASection_get_data.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMCDATASection_get_nodeValue.

	* dlls/msxml3/tests/domdoc.c, dlls/msxml3/text.c:
	msxml3: Implement IXMLDOMText_appendData.

2008-03-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Set the appropriate _NET_WM_STATE properties for maximized windows.

	* dlls/ntdll/loader.c:
	ntdll: Only grab the loader lock once we actually call external functions.

2008-02-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/kernel32/volume.c:
	kernel32: Fix GetVolumeInformation for fat32 partitions.

2008-02-28  Jon Yang <jyang08@ucla.edu>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawImageRectRectI.

2008-03-01  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/streams.c:
	msi: Include query.h to pull in the definition of STREAMS_CreateView.

	* include/msi.h:
	msi: Add definitions for MsiEnumComponentCosts.

	* dlls/msi/registry.c:
	msi: Remove a pointless wrapper of RegCreateKey.

2008-02-29  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/automation.c, dlls/msi/database.c,
	  dlls/msi/package.c, dlls/msi/record.c:
	msi: Make local functions static.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: Implement the UILevel property of the Installer object.

	* dlls/msi/where.c:
	msi: Don't bail out if the row to modify is not found as not all modify commands
	need the row.

	* dlls/ole32/storage32.c, include/d3d9types.h, include/ndrtypes.h,
	  include/rpcproxy.h, include/ws2tcpip.h, programs/notepad/dialog.c,
	  tools/winedump/winedump.h:
	janitorial: Remove links to any microsoft site.

	* dlls/ole32/compobj_private.h, dlls/ole32/dcom.idl, dlls/ole32/moniker.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/stg_prop.c, dlls/ws2_32/socket.c:
	janitorial: Remove links to any microsoft site.

	* dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/cursoricon.c,
	  dlls/user32/dde_client.c, dlls/user32/exticon.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/xfont.c:
	janitorial: Remove links to any microsoft site.

	* dlls/dmime/performance.c, dlls/dmime/segment.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/query.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c:
	janitorial: Remove links to any microsoft site.

	* dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/gdi32/dib.c,
	  dlls/gdi32/freetype.c, dlls/setupapi/setupx_main.c,
	  dlls/shell32/shellpath.c, dlls/shell32/shlexec.c,
	  dlls/svrapi/svrapi_main.c:
	janitorial: Remove links to any microsoft site.

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/events.c,
	  dlls/msi/package.c, dlls/msvcrt/except.c, dlls/msvcrt/file.c,
	  dlls/msvcrt/scanf.h, dlls/usp10/usp10.c:
	janitorial: Remove links to any microsoft site.

	* dlls/lz32/tests/lzexpand_main.c, dlls/mscms/tests/profile.c,
	  dlls/mshtml/service.c, dlls/ntdll/tests/error.c,
	  dlls/ntdll/version.c, dlls/rpcrt4/cproxy.c,
	  dlls/rpcrt4/ndr_stubless.h, dlls/rpcrt4/rpc_defs.h:
	janitorial: Remove links to any microsoft site.

2008-02-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/cfgmgr32/cfgmgr32.spec:
	cfgmgr32: Forward some more functions to setupapi.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/stubs.c:
	setupapi: Implement CM_Get_Device_ID and add a stub for CM_Get_Parent.

2008-02-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/itss/moniker.c, dlls/itss/protocol.c, dlls/itss/storage.c:
	itss: Assign to structs instead of using memcpy.

	* dlls/gdiplus/font.c, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/graphicspath.c, dlls/gdiplus/image.c,
	  dlls/gdiplus/matrix.c, dlls/gdiplus/pen.c:
	gdiplus: Assign to structs instead of using memcpy.

	* dlls/dinput/effect_linuxinput.c, dlls/dinput/mouse.c:
	dinput: Assign to structs instead of using memcpy.

	* dlls/dbghelp/minidump.c:
	dbghelp: Assign to struct instead of using memcpy.

2008-03-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/instr.c, dlls/kernel32/module.c,
	  dlls/kernel32/task.c, dlls/kernel32/thread.c,
	  dlls/kernel32/wowthunk.c, dlls/ntdll/directory.c, dlls/ntdll/env.c,
	  dlls/ntdll/file.c, dlls/ntdll/path.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/sync.c, dlls/ntdll/thread.c, dlls/winedos/dosvm.c,
	  dlls/winedos/int31.c, dlls/winedos/interrupts.c, include/thread.h,
	  include/winternl.h, tools/make_makefiles, tools/winebuild/relay.c:
	Get rid of the global thread.h header.

2008-02-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/automation.c:
	msi/tests: Replace a printf() by a trace().

2008-02-20  Divan Burger <divan.burger@gmail.com>

	* dlls/user32/nonclient.c:
	user32: Correct the button sizes of the caption bar.

2008-02-29  Rob Shearman <rob@codeweavers.com>

	* dlls/gdi32/Makefile.in, dlls/gdi32/printdrv.c, dlls/gdi32/printdrv16.c:
	gdi32: Move 16-bit printing functions to printdrv16.c.

2008-02-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/fontdlg.c, dlls/comdlg32/printdlg.c:
	comdlg32: Assign to structs instead of using memcpy.

2008-02-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Create a copy of memory based profiles.

2008-02-29  Royal Chan <chanroyal@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/tests/graphics.c:
	gdiplus: Implement GdipDrawLinesI based on GdipDrawLines.

2008-02-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Don't call ReportProgress(BINDSTATUS_DIRECTBIND) in MkProtocol::Start
	(current IE doesn't call it).

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Move InternetQueryDataAvailable to vtbl.

2008-02-29  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c, dlls/msxml3/text.c:
	msxml3: Implemented IXMLDOMText substringData.

2008-02-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/fiber.c:
	kernel32: Implement the fiber local storage functions.

	* dlls/ntdll/server.c, dlls/ntdll/thread.c, include/winternl.h:
	ntdll: Added definitions and structures for fiber local storage.

	* dlls/user32/user32.spec, dlls/user32/win.h, include/win.h,
	  tools/make_makefiles:
	user32: Moved win.h to the user32 directory.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h:
	winex11: Avoid depending on win.h.

	* dlls/winex11.drv/winpos.c:
	winex11: Avoid accessing the internals of the window structure in the
	Map/UnmapNotify handlers.

2008-02-27  Jon Yang <jyang08@ucla.edu>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/tests/image.c, include/gdiplusflat.h:
	gdiplus: Implemented and tested GdipGetImageDimension().

2008-02-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement Level 9 for GetPrinter.

2008-02-29  Rob Shearman <rob@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Add default case to sub_stream_Seek to avoid using uninitialised
	memory.

	* dlls/dbghelp/pe_module.c, dlls/dmband/dmutils.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmime/dmutils.c,
	  dlls/dmloader/debug.c, dlls/dmscript/dmscript_main.c,
	  dlls/dmsynth/dmsynth_main.c, dlls/dmusic/dmusic_main.c,
	  dlls/dswave/dswave_main.c, dlls/rpcrt4/cpsf.c,
	  dlls/tapi32/assisted.c:
	Include config.h and wine/port.h in files that use snprintf.

	* dlls/quartz/filtermapper.c:
	quartz: Don't assume that strlenW of a constant string can be determined at
	compile time.
	Use sizeof instead to calculate the size of wszKeyName in
	FilterMapper2_CreateCategory.

	* dlls/kernel32/utthunk.c:
	kernel32: Fix typo in UTUnRegister.

	* dlls/kernel32/resource.c:
	kernel32: Fix use of uninitialised nameW and typeW in find_resourceA.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Fix the variable that the result of GetFileVersionInfoW is assigned
	to in DXDiag_AddFileDescContainer.

	* dlls/msisys.ocx/msisys.c:
	msisys.ocx: Fix the signature of DllGetClassObject to match that declared in
	the headers.

2008-02-29  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/pi.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Correct IXMLDOMProcessingInstruction_put_data function.

2008-02-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/hlink/link.c:
	hlink: Assign to struct instead of using memcpy.

	* dlls/imm32/imm.c:
	imm32: Assign to structs instead of using memcpy.

	* dlls/hid/main.c:
	hid: Assign to struct instead of using memcpy.

2008-02-26  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/secedit/Makefile.in, programs/secedit/main.c:
	programs: Add a stubbed out secedit.exe.

2008-02-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/fiber.c, dlls/kernel32/kernel32.spec, include/winbase.h,
	  include/winnt.h:
	kernel32: Add stubs for fiber local storage APIs.

2008-02-28  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
	qmgr: Implement job lists for IBackgroundCopyManager.

	* dlls/qmgr/file.c, dlls/qmgr/qmgr.h, dlls/qmgr/tests/file.c:
	qmgr: Implement IBackgroundCopyFile_GetProgress.

	* dlls/qmgr/file.c, dlls/qmgr/tests/Makefile.in, dlls/qmgr/tests/file.c:
	qmgr: Implement GetLocalName and GetRemoteName for IBackgroundCopyFile.

	* dlls/qmgr/enum_files.c, dlls/qmgr/tests/enum_files.c:
	qmgr: Implement Skip and Reset for IEnumBackgroundCopyFiles.

2008-02-28  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/qmgr/enum_files.c, dlls/qmgr/tests/enum_files.c:
	qmgr: Implement IEnumBackgroundCopyFiles_Next.

2008-02-28  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/texture.c:
	d3d9: Add tests showing the D3DUSAGE_RENDERTARGET and D3DUSAGE_AUTOGENMIPMAP
	are mutually exlusive.

2008-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove VBFLAG_LOAD.

2008-02-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/event.c:
	winex11: Get rid of direct accesses to the window structure in the drag&drop
	code.

2008-02-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/crypt.c:
	wintrust/tests: Add a few tests.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: W2K and XP-SP1 don't set last error.

2008-02-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/net/rsrc.rc:
	net: Add Polish translation to rsrc.rc.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Fixes in Polish translation.

	* programs/winefile/winefile.c:
	winefile: Add FOF_ALLOWUNDO to winefile to allow files go to trash.

2008-02-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/tests/wave.c:
	winmm/tests: Make sure the callback thread has a message queue.

	* dlls/user32/tests/win.c:
	user32/tests: Flush events after showing/hiding a window to avoid z-order
	race conditions.

	* dlls/user32/winpos.c:
	user32: Hide the icon title when hiding a window.

	* dlls/user32/driver.c, dlls/user32/user32.spec,
	  dlls/user32/user_private.h, dlls/user32/win.c, dlls/user32/winpos.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/winpos.c, include/win.h:
	user32: Moved the ShowWindow implementation from winex11 back to user32.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Merge the iconification support into the SetWindowPos driver backend.

2008-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c:
	winex11: Add a workaround for Metacity being too strict and disabling fullscreen
	support for not resizable windows.

2008-02-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/handle.c, dlls/mscms/profile.c:
	mscms: Avoid closing a random file when destroying a memory based profile.

2008-02-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIURI::Equals implementation on URIs without necko interface
	associated.

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIURI::Clone implementation on URIs without necko interface
	associated.

2008-02-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Make tests run on win9x/NT4 again.

2008-02-28  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/comment.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment_get_data.

	* dlls/msxml3/tests/domdoc.c, dlls/msxml3/text.c:
	msxml3: Implement IXMLDOMText_get_data.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment_get_nodeValue.

2008-02-27  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/enum_files.c, dlls/qmgr/tests/Makefile.in,
	  dlls/qmgr/tests/enum_files.c:
	qmgr: Implement IEnumBackgroundCopyFiles_GetCount.

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_EnumFiles.

2008-02-27  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Update controls based on a property when that property changes.

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	msi: If a feature's action is INSTALLSTATE_UNKNOWN, MsiEvaluateCondition should
	return MSICONDITION_FALSE.

2008-02-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/msi.c:
	msi: Initialize type (Coverity).

2008-02-28  Alexandre Julliard <julliard@winehq.org>

	* server/change.c:
	server: Unlink remaining children inodes when deleting the parent.

2008-02-27  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/gdi16.c, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/pen.c:
	gdi32: Assign to structs instead of using memcpy.

2008-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Add tests for RpcStringBindingParseA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Don't crash in RpcStringBindingParseA/W if Endpoint or Options is NULL.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Include fcntl.h instead of sys/fcntl.h since they are equivalent and
	the former is more portable.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/type.c:
	dbghelp: Define NONAMELESSUNION in dwarf.c and type.c as they access VARIANT
	fields directly.

2008-02-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/net/Pl.rc:
	net: Add Polish translation.

	* programs/wordpad/wordpad.c:
	wordpad: Always use RB_GETBARHEIGHT.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Don't assume the first band is visible.
	The code required that a row started with a visible band. However this
	was not met if the first band of the rebar was hidden. The new code
	should fix this case. I've also made it explicit in the comments that
	the functions require the first band to be visible and renamed
	next_band, prev_band to next_visible and prev_visible to make it clear
	what these functions do.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: To check if an image is present iImage should be compared to -1
	(with testcase).

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Image height should be taken into account when computing the
	band height.

2008-02-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Guess URL scheme if not available.

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Register default URL prefixes.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Added more tests.

	* dlls/shlwapi/url.c:
	shlwapi: Added TRACEs to PathIsURL.

	* dlls/shlwapi/url.c:
	shlwapi: Store rekistry key name in unicode to avoid conversion.

	* dlls/wininet/ftp.c, dlls/wininet/internet.h:
	wininet: Move WININETFTPFINDNEXTW declaration to ftp.c.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Moved InternetFindNextFileW implementation to vtbl.

2008-02-27  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/gdi32.spec, dlls/gdi32/tests/font.c:
	gdi32: Add a partial implementation of GdiRealizationInfo.

2008-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Fix local variable shadowing in OLEFontImpl_Invoke.

	* dlls/oleaut32/olefont.c:
	oleaut32: Fix size calculation in OLEFontImpl_GetSizeMax for multi-byte locale
	environments.

	* dlls/oleaut32/olefont.c:
	oleaut32: Don't store result of CompareStringW in HRESULT in OLEFontImpl_IsEqual.
	It returns an INT, which is quite different to an HRESULT.

	* dlls/msi/format.c:
	msi: Fix buffer size calculation in build_default_format.

	* dlls/msi/database.c:
	msi: Fix the buffer size calculation in msi_build_createsql_prelude.

2008-02-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/icm.c:
	gdi32: Return registered monitor profile from GetICMProfile.

2008-02-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Check the current window state on Map/UnmapNotify and ignore obsolete
	events.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use XWithdrawWindow to unmap managed windows, and wait until they
	are withdrawn before mapping them again.

	* dlls/winex11.drv/event.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11: Added tracking of the WM_STATE window property.

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h:
	winex11: Clear the NET_WM_STATE status when a window is withdrawn.
	Change WM_STATE to NET_WM_STATE in variable and function names to
	avoid confusion with the ICCCM WM_STATE property.

	* dlls/mscms/tests/profile.c:
	mscms/tests: The tests shouldn't fail if we have some ICM files.

2008-02-27  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c, dlls/msvcrt/wcs.c:
	msvcrt: Implement wcscpy_s.

2008-02-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/process.c, dlls/kernel32/tests/path.c, dlls/ntdll/path.c:
	kernel32: Return upper cased drive letters in paths, some applications depend
	on it.

2008-02-27  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/suminfo.c:
	msi: Change the property variant if the types don't match.

	* dlls/propsys/Makefile.in, dlls/propsys/propsys.spec,
	  dlls/propsys/propvar.c, include/Makefile.in, include/propidl.idl,
	  include/propvarutil.h:
	propsys: Add an initial implementation of PropVariantChangeType.

2008-02-26  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/Makefile.in, dlls/qmgr/enum_files.c, dlls/qmgr/qmgr.h:
	qmgr: Implement the IUnknown interface for IEnumBackgroundCopyFiles.

	* dlls/qmgr/job.c, dlls/qmgr/qmgr.h, dlls/qmgr/tests/Makefile.in,
	  dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_AddFile.

	* dlls/qmgr/Makefile.in, dlls/qmgr/file.c, dlls/qmgr/qmgr.h:
	qmgr: Implement the IUnknown interface for IBackgroundCopyFile.

2008-01-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PrintDlgW: Remove incorrect FIXME.

2008-02-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d9/tests/device.c, dlls/wined3d/directx.c:
	wined3d: Improved CheckDeviceType.

2008-02-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/heap.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/string.c:
	msvcrt: Use the correct msvcrt defines for errno values.

	* dlls/msvcrt/heap.c, dlls/msvcrt/mbcs.c:
	msvcrt: Fix incorrect uses of msvcrt_set_errno.

2008-02-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Fix test that depends on the order of the files in a directory.

2008-02-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement Level 6 + 7 for GetPrinter.

	* include/winspool.h:
	include/winspool: Add defines for dwAction.

2008-02-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Code cleanup.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Add RBS_AUTOSIZE support.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Invalidate children in CalcHorz/VertBand.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: An implementation of RB_SIZETORECT.

2008-02-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Don't add a trailing slash in the case that nothing has to be appended
	to relative, with testcase.

2008-02-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dpnet/address.c:
	dpnet: Assign to structs instead of using memcpy.

	* dlls/dswave/dswave.c:
	dswave: Assign to structs instead of using memcpy.

	* dlls/dplayx/dplay.c:
	dplayx: Assign to struct instead of using memcpy.

2008-02-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c,
	  dlls/wininet/tests/internet.c:
	wininet: Use vtbl for InternetSetOption(INTERNET_OPTION_[SEND|RECEIVE]_TIMEOUT)
	implementation.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Use vtbl in InternetWriteFile implementation.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Moved close_connection to vtbl.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Moved handle destructor to vtbl.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Fixed version returned by INTERNET_OPTION_VERSION.

	* include/urlmon.idl:
	urlmon.idl: Added IInternet declaration.

2008-02-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wininet/http.c:
	wininet: Fix retrieving raw headers.

2008-02-26  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Don't use typeof as it's not portable.

	* dlls/shdocvw/factory.c:
	shdocvw: Don't use typeof as it's not portable.

	* dlls/mshtml/install.c, dlls/mshtml/main.c, dlls/mshtml/nsembed.c:
	mshtml: Don't use typeof as it's not portable.

	* dlls/msimtf/main.c:
	msimtf: Don't use typeof as it's not portable.

	* dlls/itss/itss.c:
	itss: Don't use typeof as it's not portable.

	* dlls/dsound/regsvr.c:
	dsound: Don't use typeof as it's not portable.

	* dlls/ddraw/regsvr.c:
	ddraw: Don't use typeof as it's not portable.

2008-02-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Skip tests that contain functions that are not available.

	* dlls/msi/tests/source.c:
	msi/tests: Skip tests for functions that are not available.

	* dlls/msi/tests/source.c:
	msi/tests: Make sure tests will run on Win9x and NT.

	* dlls/gdi32/tests/icm.c:
	gdi32/tests: Skip a test as it crashes on Vista.

	* dlls/gdi32/tests/icm.c:
	gdi32/tests: Skip functions that are available but not implemented.

	* dlls/kernel32/tests/version.c:
	kernel32/tests: Win9x doesn't change last error.

2008-02-26  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Correct offset of text in default IME window when using not default
	window position.

2008-02-26  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Use the IShellLinkDataList's standard 'C' interface.

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Add the trailing '\n' to an ok() call and make a spelling fix.

	* dlls/msxml3/node.c:
	msxml3: Add a trailing '\n' to a Wine trace.

	* dlls/d3dx9_24/d3dx9_24.spec, dlls/d3dx9_25/d3dx9_25.spec,
	  dlls/d3dx9_26/d3dx9_26.spec, dlls/d3dx9_27/d3dx9_27.spec,
	  dlls/d3dx9_28/d3dx9_28.spec, dlls/d3dx9_29/d3dx9_29.spec,
	  dlls/d3dx9_30/d3dx9_30.spec, dlls/d3dx9_31/d3dx9_31.spec,
	  dlls/d3dx9_32/d3dx9_32.spec, dlls/d3dx9_33/d3dx9_33.spec,
	  dlls/d3dx9_34/d3dx9_34.spec, dlls/d3dx9_35/d3dx9_35.spec:
	d3dx9_*: Fix the D3DXMatrixDeterminant() forwards.

2008-02-26  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/cdata.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMCDATASection_get_length.

	* dlls/msxml3/comment.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMComment_get_length.

2008-01-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	commdlg: PrintDlg16: Handle print quality combobox.

2008-02-25  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/enum_jobs.c, dlls/qmgr/qmgr.c, dlls/qmgr/tests/qmgr.c:
	qmgr: Implement IBackgroundCopyManager_EnumJobs with test.

	* dlls/qmgr/Makefile.in, dlls/qmgr/enum_jobs.c, dlls/qmgr/qmgr.h:
	qmgr: Implement the IUnknown interface for IEnumBackgroundCopyJobs.

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_GetDisplayName with test.

	* dlls/qmgr/job.c, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_GetType with test.

2008-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Mark a vertex buffer dirty after VBO creation.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Move the dummy texture creation to the device.

2008-02-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move shader model private data into its own structure.

2008-02-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_APPLE_float_pixels.

2008-02-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: General cross format blitting infrastrucutre, R32F->R16F blits.

2008-02-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Check real depth/stencil capabilities based on WGL pixel formats.

2008-02-25  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Fix wglCopyContext case where GLX contexts are missing.

2008-02-25  Royal Chan <chanroyal@gmail.com>

	* dlls/gdiplus/tests/graphics.c:
	gdiplus: Added conformance tests for GdipDrawLineI.

	* dlls/gdiplus/graphics.c, dlls/gdiplus/tests/graphics.c:
	gdiplus: GdipDrawArc should return InvalidParameter for non-positive values
	of height and width.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/tests/graphics.c:
	diplus: Implemented GdipDrawArcI based on GdipDrawArc.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/tests/graphics.c:
	diplus: Implement GdipDrawBezierI based on GdipDrawBezier.

2008-02-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec, include/objbase.h:
	ole32: Added a CoGetContextToken stub.

2008-02-26  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/dinput_main.c:
	dinput: Fix compilation on systems that don't support nameless unions.

2008-02-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mscms/transform.c:
	mscms: Allow compilation without LCMS installed.

2008-02-26  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/files.c:
	msi: Search existing published sources if the media cannot be found.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/source.c:
	msi: Allow setting a media disk as the last used source in the internal
	msi_set_last_used_source.

	* dlls/msi/action.c, dlls/msi/files.c:
	msi: Store the media type and set the last used source type accordingly.

	* dlls/msi/msi.c:
	msi: Read the source list properties from the user-unmanaged context.

	* dlls/msi/action.c:
	msi: Read the disk prompt source list property from the user-unmanaged context.

	* dlls/msi/files.c:
	msi: Remove setting a source list property that's in the wrong place.

	* dlls/msi/files.c:
	msi: Publish source information in the user-unmanaged context.

2008-02-25  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListEnumMediaDisks.

	* dlls/msi/msi.spec, dlls/msi/source.c, include/msi.h:
	msi: Implement MsiSourceListEnumMediaDisks.

	* dlls/msi/format.c:
	msi: Fix skipping a NULL record.

2008-02-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Add stub for INTERNET_OPTION_PER_CONNECTION.

2008-02-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c:
	dmstyle: Assign to structs instead of using memcpy.

	* dlls/dmusic/collection.c, dlls/dmusic/port.c:
	dmusic: Assign to structs instead of using memcpy.

	* dlls/dmscript/script.c, dlls/dmscript/scripttrack.c:
	dmscript: Assign to structs instead of using memcpy.

2008-02-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi/devinst: Struct size passed needs to be exact.

2008-02-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/mscms_priv.h, dlls/mscms/profile.c, dlls/mscms/stub.c,
	  dlls/mscms/transform.c:
	mscms: Implement TranslateColors and improve the other transformation functions.

2008-02-23  Hans Leidekker <hans@it.vu.nl>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Create the color directory.

2008-02-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/tests/opengl.c:
	wgl: Add a test case for wglCreateContext.

2008-02-22  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/job.c, dlls/qmgr/tests/Makefile.in, dlls/qmgr/tests/job.c:
	qmgr: Implement IBackgroundCopyJob_GetId with test.

	* dlls/qmgr/job.c, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h,
	  dlls/qmgr/tests/qmgr.c:
	qmgr: Implement IBackgroundCopyManager_CreateJob with test.

	* dlls/qmgr/Makefile.in, dlls/qmgr/job.c, dlls/qmgr/qmgr.h:
	qmgr: Implement the IUnknown interface for IBackgroundCopyJob and stubs for
	the rest of the methods.

2008-02-25  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Return a nullpointer as lpSurface in Lock() if the rect is invalid.

2008-02-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/version/tests/info.c:
	version/tests: Win98, NT4 and W2K return different errors.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Don't crash on NT4, W2K and XP-SP1.

2008-02-25  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Implement VT_VECTOR|VT_VARIANT in PropVariantCopy.

	* dlls/imm32/imm.c:
	imm32: Destroy the data of the context passed into ImmDestroyContext,  not
	the data in the root context.

2008-02-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi/tests: Make tests run on win9x/NT4 again.

2008-02-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add an exception handler around check_actctx to catch bad handles.

	* dlls/winex11.drv/window.c:
	winex11: Use the same full screen test in is_window_managed and update_wm_states.

	* dlls/winex11.drv/window.c:
	winex11: Get rid of the visual id property, we are using the default now.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/driver.c,
	  dlls/user32/painting.c, dlls/user32/tests/dce.c,
	  dlls/user32/user32.spec, dlls/user32/user_private.h,
	  dlls/user32/win.c, dlls/user32/winpos.c,
	  dlls/winex11.drv/Makefile.in, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, include/win.h:
	user32: Moved the DCE support from winex11 back to user32.
	Window and class DCEs are now allocated lazily.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/win.c,
	  include/win.h:
	user32: Simplify the window structure creation. Get rid of the unused clsStyle
	field.

2008-02-25  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Tests for put_data.

2008-02-25  Alexandre Julliard <julliard@winehq.org>

	* include/xmldom.idl:
	include: Fixed definition of IXMLDOMComment interface.

2008-02-25  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/comment.c:
	msxml3: Implement IXMLDOMComment put_data.

	* dlls/msxml3/text.c:
	msxml3: Implement IXMLDOMText put_data.

	* dlls/msxml3/pi.c:
	msxml3: Implement IXMLDOMProcessingInstruction put_data.

	* dlls/msxml3/cdata.c:
	msxml3: Implement IXMLDOMCDATASection put_data.

	* dlls/msxml3/node.c:
	msxml3: Implement IXMLDOMNode put_nodeValue.

2008-02-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11: Correctly initialize the cursor in a newly-created thread.

2008-02-25  Rob Shearman <rob@codeweavers.com>

	* dlls/netapi32/tests/wksta.c:
	netapi32: Fix character count passed to GetUserNameW and GetComputerNameW
	in init_wksta_tests.

	* dlls/user32/tests/class.c:
	user32: Fix the number of characters passed to GetClassNameW in ClassTest.

	* dlls/kernel32/tests/atom.c:
	kernel32: Fix the number of characters passed to GetAtomNameW in
	test_local_get_atom_name.

	* dlls/shell32/shlexec.c:
	shell32: Fix the character count passed to SearchPathW in SHELL_execute.

	* dlls/dinput/keyboard.c:
	dinput: Fix character count passed to GetKeyNameTextW in
	SysKeyboardWImpl_GetObjectInfo.

	* dlls/avifil32/api.c:
	avifil32: Fix the character count passed into LoadStringW in AVIBuildFilterW
	and AVISaveOptionsUpdate.

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix the character count passed into RegEnumKeyExW in
	get_local_monitors.
	len is used in RegEnumKeyExW and this takes a character count for the
	key argument, not a byte count.

	* dlls/mciavi32/info.c:
	mciavi32: Fix the buffer length passed into strncat in MCIAVI_mciSet.
	The number of remaining characters should be passed in, not the total
	buffer size.

	* programs/explorer/explorer.c:
	explorer: Clean up after CreateProcess in WinMain.

	* programs/wineboot/wineboot.c:
	wineboot: Fix the character count passed to RegEnumKeyW in start_services.

	* programs/wineboot/wineboot.c:
	wineboot: Fix thread handle leak in runCmd.

	* programs/cmd/batch.c:
	cmd: Fix character count passed to GetShortPathName in WCMD_HandleTildaModifiers.

	* programs/cmd/batch.c:
	cmd: Fix loop termination check in WCMD_batch.

	* dlls/comctl32/rebar.c:
	comctl32: Fix possible use of uninitialised variable in REBAR_Paint.
	In the case where an hdc is passed in via the wParam, ps.fErase could be
	uninitialised. Fix this by rearranging the code so that ps is only used
	when an hdc isn't passed in.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Fix checks for failure of COMDLG32_SHGetFolderPathW in
	FILEDLG95_InitControls.
	COMDLG32_SHGetFolderPathW returns a BOOL, not an HRESULT.

	* dlls/avicap32/avicap32_main.c:
	avicap32: Fix the type of retval in capGetDriverDescriptionA.

2008-02-23  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Include ws2tcpip.h instead of Unix headers when targeting a build
	for Windows.

2008-02-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/user32/input.c, dlls/user32/user32.spec:
	user32: Added stub for GetMouseMovePointsEx.

	* dlls/user32/tests/input.c:
	user32: Fix a test of GetMouseMovePointsEx.

2008-02-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmloader/container.c, dlls/dmloader/loader.c:
	dmloader: Assign to structs instead of using memcpy.

	* dlls/dmime/segment.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/wavetrack.c:
	dmime: Assign to structs instead of using memcpy.

	* dlls/dmime/audiopath.c, dlls/dmime/dmutils.c, dlls/dmime/graph.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/performance.c:
	dmime: Assign to structs instead of using memcpy.

	* dlls/dmband/bandtrack.c:
	dmband: Assign to struct instead of using memcpy.

2008-02-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Support literals in apostrophes.

2008-02-22  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/scroll.c, dlls/user32/tests/scroll.c:
	user32: Fix return value in ShowScrollBar according with test.

	* dlls/user32/tests/Makefile.in, dlls/user32/tests/scroll.c:
	user32: Added some tests for scrollbar.

2008-02-24  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Add a P8 texture test.

2008-02-24  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/d3dx8/math.c:
	d3dx8: Simplify D3DXMatrixInverse().

2008-02-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Fix a ok line.

	* dlls/d3d9/tests/visual.c:
	d3d9: ATI drivers do not handle D3DUSAGE_QUERY_LEGACYBUMPMAP properly.

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a non-shader reversed fog test.

2008-02-24  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix and simplify handling of REG_MULTI_SZ strings in the WriteRegistryValues
	action.

	* dlls/msi/source.c:
	msi: Simplify MsiSourceListAddMediaDisk.

	* dlls/msi/source.c:
	msi: Remove invalid fixmes.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return the result of the call to OpenSourceKey.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate the parameters of MsiSourceListAddMediaDisk.

	* dlls/msi/msi.spec, dlls/msi/source.c, dlls/msi/tests/automation.c,
	  dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListAddMediaDisk.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Fix the INSTALLPROPERTY_LASTUSEDTYPE case.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Fix the INSTALLPROPERTY_LASTUSEDSOURCE case.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Factorize and fix the INSTALLPROPERTY_MEDIAPACKAGEPATH case.

	* dlls/msi/source.c:
	msi: Simplify the check for a valid product code.

	* dlls/msi/tests/source.c:
	msi: Add more tests for MsiSourceListGetInfo.

2008-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::aLink implementation.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::vLink implementation.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::get_link implementation.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::put_link implementation.

2008-02-24  Steven Edwards <steven@codeweavers.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Up the default desktop resolution to 800x600.

2008-02-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/qmgr/qmgr_main.c:
	qmgr: Ignore errors when registering the service.

2008-02-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Request aux buffers when using backbuffer rendering.

	* dlls/winex11.drv/opengl.c:
	wgl: Add aux buffers support to DescribePixelFormat.

2008-02-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	wgl: Remove unneeded opengl initialisation code at wine startup.

	* dlls/winex11.drv/opengl.c:
	wgl: Remove the pixel format limitation.

	* dlls/wined3d/context.c:
	wined3d: Request alpha in backbuffer mode, to work correctly with multiple
	opengl pixel formats.

2008-02-22  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Rename the dwStyle and dwOldStyle variables in
	LISTVIEW_SetExtendedListViewStyle to more accurately reflect their purpose.
	This also fixes local variable shadowing in the function, which should
	be avoided for purposes of code readability.

	* dlls/comctl32/propsheet.c:
	comctl32: Fix local variable shadowing in load_string by moving len to the
	block in which it is actually used.

	* dlls/comctl32/status.c:
	comctl32: Fix the signedness of i, oldNumParts and nTipCount in
	STATUSBAR_SetParts.

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: The default value for the "CLSID\%CLSID_Internet" key isn't set on
	Windows, so we shouldn't set it either.

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Add more keys to the CLSID_Internet key.

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Fix quoting of double-quote in shdocvw.inf.

2008-02-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Assume read sharing when no sharing flags are specified in
	OpenColorProfile.

	* dlls/mscms/tests/profile.c:
	mscms: Add tests for AssociateColorProfileWithDevice and
	DisassociateColorProfileFromDevice.

	* dlls/mscms/Makefile.in, dlls/mscms/profile.c, dlls/mscms/stub.c:
	mscms: Implement AssociateColorProfileWithDevice and
	DisassociateColorProfileFromDevice.

2008-02-22  Gerald Pfeifer <gerald@pfeifer.com>

	* tools/widl/parser.l:
	widl: Include <unistd.h> for prototype of unlink().

2008-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::TheaterMode implementation.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence more invalid QueryInterface FIXMEs.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added get_LocationURL implementation.

2008-02-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.56.

----------------------------------------------------------------
2008-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Force the client dimensions to at least 1x1 in sync_gl_drawable.

2008-02-21  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/slc/Makefile.in, dlls/slc/slc.c, dlls/slc/slc.spec,
	  include/Makefile.in, include/slerror.h, include/slpublic.h:
	slc: Added stub for SLGetWindowsInformationDWORD.

2008-02-21  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/source.c:
	msi: Fix the size of the data sent in to RegSetValueExW.

2008-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/browseui/aclmulti.c, dlls/browseui/browseui.h,
	  dlls/browseui/browseui_main.c, dlls/browseui/compcatcachedaemon.c,
	  dlls/browseui/progressdlg.c:
	browseui: Code clean up.

	* dlls/urlmon/binding.c:
	urlmon: 0x800c0008 is INET_E_DOWNLOAD_FAILURE.

	* dlls/urlmon/binding.c:
	urlmon: Correctly handle creating object failure.

2008-02-21  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/header.h, tools/widl/typegen.c:
	widl: Allow is_string_type to work for typedef'd types.

2008-02-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/utils.c, dlls/wined3d/utils.c, include/wine/wined3d_types.h:
	ddraw: Add yv12 detection support.

2008-02-21  Frans Kool <Frans.Kool@gmail.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Nl.rc:
	crypt32: Created Dutch translations.

2008-02-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmband/bandtrack.c, dlls/dmband/dmband_private.h:
	dmband: Rename identifiers to remove false implications of type.

2008-02-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/advapi32/service.c:
	advapi: Check if service really exists before bombing out in CreateService.

2008-02-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Use the color key in glAlphaFunc in case of index_in_alpha.

	* dlls/wined3d/surface.c:
	wined3d: Unify p8 render target detection code.

	* dlls/wined3d/surface.c:
	wined3d: In DirectDraw a palette is a property of a surface while in d3d8/9
	it is a property of a device.

	* dlls/wined3d/surface.c:
	wined3d: Don't flush in D3D RealizePalette without a palette.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Don't flush in GDI RealizePalette without a palette.

2008-02-21  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/user32/tests/input.c:
	user32: Fix a test of GetMouseMovePointsEx failing on platforms winxp and win2k3.

2008-02-21  Rob Shearman <rob@codeweavers.com>

	* dlls/winex11.drv/dib.c:
	winex11.drv: Optimise getting the bits of a DIB after calling SetDIBits.
	Sync the application's bits in SetDIBits if the input bits are in
	exactly the same format and the size of the image is small enough not to
	cause a performance hit (in case the application doesn't get ever access
	the bits directly).

	* dlls/gdi32/dib.c:
	gdi32: Optimise StretchBlt for the case where no stretching is being done and
	the whole image is being set.
	In this case, we can just call SetDIBits which is likely to be a lot faster.

2008-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Re-create the client window when setting the pixel format on a
	top-level window.

2008-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h:
	winex11: Keep track of the window colormap and free it on destroy.

2008-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	coreaudio: Set mDataByteSize of the buffer to the amount data provided. Greatly
	helps reduce audio corruption on buffer underflows.

2008-02-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Pretend success in WebBrowser_get_RegisterAsDropTarget.

2008-02-21  Rob Shearman <rob@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool: Fix the character count passed into RegEnumKeyExW in
	get_local_monitors.
	RegEnumKeyExW takes a character count for the key name, not a byte count.

	* dlls/winspool.drv/info.c:
	Revert "winspool: Fix character count passed to RegQueryValueExW in
	get_local_monitors".
	This reverts commit 6886a49c5953c2cf5c141b1b09f288ce32ced3f3.
	RegQueryValueExW takes a byte count, not a character count (spotted by
	Detlef Riekenberg).

	* dlls/dplayx/dplobby.c:
	dplayx: Fix incorrect check in DirectPlayLobbyAImpl_EnumLocalApplications and
	IDirectPlayLobbyAImpl_EnumAddressTypes.
	Dereferencing a function pointer and checking it against NULL doesn't
	make any sense, so remove the checks.

	* dlls/dplayx/dplay.c:
	dplayx: Fix incorrect check in DirectPlay3AImpl_EnumConnections.
	Dereferencing a function pointer and checking it against NULL doesn't
	make any sense, so remove the check.

	* dlls/dbghelp/module.c:
	dbghelp: Fix read beyond end of field in module_get_debug.

	* dlls/dbghelp/msc.c:
	dbghelp: VARIANT unions are accessed by name in msc.c so define NONAMELESSUNION.

	* include/wine/exception.h:
	include: Include excpt.h from wine/exception.h.
	Some files use wine/exception.h without also including excpt.h, but
	excpt.h is needed when using native exception handling.

2008-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/user32/tests/dce.c:
	user32: Add a test for CS_OWNDC windows that are created invisible.

2008-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/bitblt.c:
	winex11: Make the BitBlt short-cuts more generic to apply to all possible ROPs.

2008-02-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/devenum/devenum.rc, dlls/gphoto2.ds/gphoto2_Es.rc,
	  dlls/localui/ui_De.rc, dlls/msvfw32/msvfw32_Es.rc,
	  dlls/sane.ds/sane_Es.rc, programs/clock/Nl.rc:
	Make Italian, Spanish, Dutch and German resources use SUBLANG_NEUTRAL.

2008-02-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Make session object thread safe.

	* dlls/urlmon/session.c:
	urlmon: Optimize get_protocol_info for urlmon protocols.

	* dlls/urlmon/session.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Optimize registering urlmon protocols.

2008-02-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Add an optimized path for BitBlt(SRCINVERT).

2008-02-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmcompos/chordmap.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Assign to structs instead of using memcpy.

2008-02-20  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/heap.c:
	ntdll: When using HEAP_ZERO_MEMORY in heap allocation functions, don't clear
	the whole block.
	Instead only clear the number of bytes requested and mark the remainder
	as uninitialised.

	* dlls/ntdll/heap.c:
	ntdll: Fix the use of oldSize in RtlReAllocateHeap as both the size of the
	old block and the number of bytes used in the old block.

2008-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, server/window.c:
	winex11: Re-introduce a separate X11 window for the client area of top-level
	windows.

2008-02-21  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Fix the INSTALLPROPERTY_LASTUSEDSOURCE case of MsiSourceListSetInfo.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Allow enumerating the sources without querying the source name.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Publish a few SourceList properties.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Implement MsiSourceListEnumSources.

2008-02-20  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add a test of D3DTBLEND_MODULATE with P8 texture.

	* dlls/ddraw/texture.c:
	ddraw: Release interfaces when exiting with error.

2008-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Fixed crash on old IE.

	* dlls/mshtml/nsio.c:
	mshtml: Report true scheme for about:blank URL.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added nsINetUtil interface to nsIOService.

	* dlls/browseui/aclmulti.c, dlls/browseui/browseui.h:
	browseui: Code clean up.

2008-02-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/oleview/De.rc, programs/oleview/En.rc, programs/oleview/Fr.rc,
	  programs/oleview/Ko.rc, programs/oleview/Nl.rc,
	  programs/oleview/No.rc, programs/oleview/Pl.rc,
	  programs/oleview/oleview.c, programs/oleview/resource.h:
	oleview: Move the TypeLib open dialog filter message into a resource.

	* programs/oleview/De.rc, programs/oleview/En.rc, programs/oleview/Fr.rc,
	  programs/oleview/Ko.rc, programs/oleview/Nl.rc,
	  programs/oleview/No.rc, programs/oleview/Pl.rc:
	oleview: Add ellipsis to menu items that show dialogs.

	* programs/oleview/Pl.rc, programs/oleview/rsrc.rc:
	oleview: Add Polish translation.

2008-02-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/interface.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpglib.h:
	winemp3: Don't keep unused data buffered.

2008-02-21  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/nodelist.c:
	msxml3: Implement IDispatch for IXMLDOMNodeList.

2008-02-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domimpl.c, dlls/msxml3/main.c, dlls/msxml3/msxml_private.h:
	msxml3: Implement IDispatch for IXMLDOMImplementation.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Added PI tests.

	* dlls/msxml3/pi.c:
	msxml3: Implement get_data for PI Nodes.

	* dlls/msxml3/node.c:
	msxml3: Correct get_nodeValue for PI Nodes.

2008-02-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winpos.c:
	user32: Pass the modified SetWindowPos flags to the set_window_pos server
	request.

2008-02-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/slc/Makefile.in, dlls/slc/slc.c, dlls/slc/slc.spec:
	slc: Initial stub DLL.

2008-02-19  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Test LoadImage() to load an icon as a cursor.

2008-02-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c:
	user32: Add a z-order test for owned popup windows.

2008-02-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement put_dataType.

2008-02-19  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/attribute.c:
	msxml3: Implemented IDispatch for IXMLDOMAttribute.

2008-02-19  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Forward MsiSourceListEnumSourcesA to a stub implementation of
	MsiSourceListEnumSourcesW.

2008-02-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi32/font.c, dlls/gdi32/gdi16.c:
	gdi32: Move EnumFontFamiliesEx16() to gdi16.c and reimplement it based on
	EnumFontFamiliesExW().

2008-02-19  Marcus Meissner <marcus@jet.franken.de>

	* dlls/netapi32/wksta.c:
	netapi32: Added some return value checking.

2008-02-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Let flush_to_framebuffer_drawpixels use a valid rect.

2008-02-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmband/band.c, dlls/dmband/bandtrack.c, dlls/dmband/dmutils.c:
	dmband: Assign to struct instead of using memcpy.

2008-02-19  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/lnk.c:
	winedump: Check return value of fetch_block (Coverity).

2008-02-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Avoid endless loop, when T&L is not supported.

2008-02-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ddraw/texture.c:
	ddraw: Add missing unlock on error path. Found by Smatch.

2008-02-11  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qmgr/tests/Makefile.in, dlls/qmgr/tests/qmgr.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	qmgr: Add some tests.

	* dlls/qmgr/Makefile.in, dlls/qmgr/qmgr.spec, dlls/qmgr/service.c:
	qmgr: Add ServiceMain.

	* .gitignore, dlls/qmgr/Makefile.in, dlls/qmgr/qmgr.h, dlls/qmgr/qmgr.inf,
	  dlls/qmgr/qmgr.spec, dlls/qmgr/qmgr_main.c, dlls/qmgr/rsrc.rc,
	  tools/wine.inf:
	qmgr: Implement DLL server registration.

2008-02-16  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/user32/tests/input.c, include/winuser.h:
	user32: Add some tests for GetMouseMovePointsEx.

2008-02-17  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/nonclient.c:
	user32: Fix caption bar being drawn 1 pixel too high.

2008-02-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c:
	uuid: Fixed the CLSID_Picture_EnhMetafile definition.

	* dlls/avifil32/factory.c, dlls/dplayx/dpclassfactory.c,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/tests/prop.c,
	  dlls/uuid/uuid.c:
	uuid: Remove a few iids that don't belong here.

	* dlls/dxguid/dxguid.c:
	dxguid: Add a few more iids.

2008-02-19  David Adam <david.adam.cnrs@gmail.com>

	* include/d3dx8math.h:
	d3dx8: Fix a typo in d3dx8math.h.

2008-02-17  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/msi.c:
	msi: Remove unused parameter to msi_comp_find_prodcode().

	* dlls/msi/streams.c:
	msi: Adjust the signedness of three variables.

2008-02-13  Lei Zhang <thestig@google.com>

	* dlls/qedit/Makefile.in, dlls/qedit/main.c, dlls/qedit/mediadet.c,
	  dlls/qedit/qedit_private.h, dlls/qedit/tests/mediadet.c:
	qedit: Add stub implementation of MediaDet.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qedit/tests/Makefile.in, dlls/qedit/tests/mediadet.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	qedit: Add tests directory and a simple test.

	* dlls/qedit/Makefile.in, dlls/qedit/qedit_private.h, dlls/qedit/regsvr.c,
	  tools/wine.inf:
	qedit: Add MediaDet registration.
	Much of the code is from quartz.

	* include/qedit.idl:
	include: Add IMediaDet interface and MediaDet class.

	* include/qedit.idl:
	include: Add ISampleGrabber interface.

	* .gitignore, dlls/strmiids/strmiids.c, include/Makefile.in,
	  include/qedit.idl:
	include: Generate qedit.h, add ISampleGrabberCB interface.

2008-02-11  Lei Zhang <thestig@google.com>

	* dlls/qedit/Makefile.in, dlls/qedit/main.c:
	qedit: Add the DirectShow ClassFactory.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qedit/Makefile.in, dlls/qedit/main.c, dlls/qedit/qedit.spec,
	  dlls/qedit/qedit_private.h, dlls/qedit/regsvr.c:
	qedit: Skeleton implementation of qedit.dll.

2008-02-19  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Don't access the process after send_client_fd as it may have been killed.

	* libs/wpp/ppl.l, programs/winedbg/debug.l, programs/winhelp/macro.lex.l,
	  tools/widl/parser.l, tools/wrc/parser.l:
	Avoid the nounistd option that doesn't exist on older flex, define YY_NO_UNISTD_H
	instead.

2008-02-18  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Japanese Windows had a default fallback Font SystemLink of Microsoft
	Sans Serif. Implement that for Japanese.

2008-02-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Some Windows drivers do not like reversed fog.
	The fog test used start = 0.9 and end = 0.1. This is perfectly ok in
	theory, but some Windows drivers do not like it. Since this test tests
	how fog is calculated with Vertex and Pixel shaders put the fog range in
	the normal order(start = 0.1, end = 0.9), this fixes a number of fog
	failures on ATI cards on Windows.

	* dlls/d3d9/tests/visual.c:
	d3d9: Do not expect consistent failures.
	The drivers for some radeon cards are not prepared for the things the
	fixed function type test does and fail inconsistently. Thus skip the
	color comparison if one of the two draws fails, and do not write an
	extra complaint about the inconsistency

2008-02-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a stencil+culling test.

2008-02-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Enable the texcoord init workaround on radeon HD cards on MacOS.

2008-02-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Create a VBO before returning memory.
	The state manager calls GetMemory before it calls PreLoad on the VBO,
	and PreLoad depends on finding the VBO in the strided vertex structure.
	This can cause problems on the first draw which creates the vertex
	buffer, because the first PreLoad creates the vbo and attempts to
	convert with an incorrect strided structure.

2008-02-05  Tony Wasserka <tony.wasserka@freenet.de>

	* dlls/d3dx9_36/d3dx9_36.spec, dlls/d3dx9_36/d3dx9_36_main.c:
	d3dx9: Implement D3DXGetDriverLevel.

2008-02-04  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx9core.h:
	d3dx9: Complete d3dx9core.h.

2008-02-05  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx9.h:
	d3dx9.h: Include d3dx9math.h before d3dx9core.h.

2008-02-02  Tony Wasserka <tony.wasserka@freenet.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_32/Makefile.in, dlls/d3dx9_32/d3dx9_32.spec,
	  dlls/d3dx9_32/d3dx9_32_main.c, dlls/d3dx9_33/Makefile.in,
	  dlls/d3dx9_33/d3dx9_33.spec, dlls/d3dx9_33/d3dx9_33_main.c,
	  dlls/d3dx9_34/Makefile.in, dlls/d3dx9_34/d3dx9_34.spec,
	  dlls/d3dx9_34/d3dx9_34_main.c, dlls/d3dx9_35/Makefile.in,
	  dlls/d3dx9_35/d3dx9_35.spec, dlls/d3dx9_35/d3dx9_35_main.c:
	d3dx9: Start implementation of d3dx9_32, d3dx9_33, d3dx9_34 and d3dx9_35.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_31/Makefile.in, dlls/d3dx9_31/d3dx9_31.spec,
	  dlls/d3dx9_31/d3dx9_31_main.c:
	d3dx9: Start implementation of d3dx9_31.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_28/Makefile.in, dlls/d3dx9_28/d3dx9_28.spec,
	  dlls/d3dx9_28/d3dx9_28_main.c, dlls/d3dx9_29/Makefile.in,
	  dlls/d3dx9_29/d3dx9_29.spec, dlls/d3dx9_29/d3dx9_29_main.c,
	  dlls/d3dx9_30/Makefile.in, dlls/d3dx9_30/d3dx9_30.spec,
	  dlls/d3dx9_30/d3dx9_30_main.c:
	d3dx9: Start implementation of d3dx9_28, d3dx9_29 and d3dx9_30.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_26/Makefile.in, dlls/d3dx9_26/d3dx9_26.spec,
	  dlls/d3dx9_26/d3dx9_26_main.c, dlls/d3dx9_27/Makefile.in,
	  dlls/d3dx9_27/d3dx9_27.spec, dlls/d3dx9_27/d3dx9_27_main.c:
	d3dx9: Start implementation of d3dx9_26 and d3dx9_27.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_25/Makefile.in, dlls/d3dx9_25/d3dx9_25.spec,
	  dlls/d3dx9_25/d3dx9_25_main.c:
	d3dx9: Start implementation of d3dx9_25.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_24/Makefile.in, dlls/d3dx9_24/d3dx9_24.spec,
	  dlls/d3dx9_24/d3dx9_24_main.c:
	d3dx9: Start implementation of d3dx9_24.

2008-02-19  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c, dlls/msxml3/text.c:
	msxml3: Implement IXMLDOMText length property.

	* dlls/msxml3/domdoc.c:
	msxml3: Implemented IDispatch for IXMLDOMDocument2.

	* dlls/msxml3/xmldoc.c:
	msxml3: Implemented IDispatch for IXMLDocument.

	* dlls/msxml3/xmlelem.c:
	msxml3: Implemented IDispatch for IXMLElement.

	* dlls/msxml3/queryresult.c:
	msxml3: Implemented IDispatch for IXMLDOMNodeList.

	* dlls/msxml3/parseerror.c:
	msxml3: Implemented IDispatch for IXMLDOMParseError.

	* dlls/msxml3/nodemap.c:
	msxml3: Implemented IDispatch for IXMLDOMNamedNodeMap.

	* dlls/msxml3/entityref.c:
	msxml3: Implemented IDispatch for IXMLDOMEntityReference.

	* dlls/msxml3/element.c:
	msxml3: Implemented IDispatch for IXMLDOMElement.

	* dlls/msxml3/docfrag.c:
	msxml3: Implemented IDispatch for IXMLDOMDocumentFragment.

	* dlls/msxml3/comment.c:
	msxml3: Implemented IDispatch for IXMLDOMComment.

	* dlls/msxml3/cdata.c:
	msxml3: Implemented IDispatch for IXMLDOMCDATASection.

	* dlls/msxml3/pi.c:
	msxml3: Implemented IDispatch for IXMLDOMProcessingInstruction.

	* dlls/msxml3/schema.c:
	msxml3: Implemented IDispatch for IXMLDOMSchemaCollection.

	* dlls/msxml3/text.c:
	msxml3: Implemented IDispatch for IXMLDOMText.

2008-02-19  Jeff Latimer <lats@yless4u.com.au>

	* dlls/pdh/pdh_main.c:
	pdh: Pass parameters through to PdhLookupPerfIndexByNameW for checking.

2008-02-19  Rob Shearman <rob@codeweavers.com>

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: The WINAPI modifier on function pointers should become before the
	'*' for portability.

	* dlls/d3d9/device.c:
	d3d9: Fix copy and paste error in reset_enum_callback.
	vertex_desc.Pool should obviously be used in the
	WINED3DRTYPE_VERTEXBUFFER case instead of index_desc.Pool.

	* dlls/avifil32/api.c:
	avifil32: Simplify a comparison in AVIBuildFilterW.

	* libs/wpp/ppl.l, programs/winedbg/debug.l, programs/winhelp/macro.lex.l,
	  tools/widl/parser.l, tools/wrc/parser.l:
	Add the nounistd option to all lex source files.

2008-02-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Fix lack of indent in PreLoad.

	* dlls/wined3d/surface_base.c:
	wined3d: The base RealizePalette isn't needed anymore.

	* dlls/wined3d/surface.c:
	wined3d: Add a GL specific RealizePalette which also updates the drawable.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Add a GDI version of RealizePalette.
	The base version won't suffice anymore as it is not able to upload
	palette changes to the drawable in an efficient way for both GDI and
	GL. Further the LoadLocation code in RealizePalette isn't needed for
	the GDI version as in all cases it works on system memory.

2008-02-19  Alexandre Julliard <julliard@winehq.org>

	* programs/wineboot/wineboot.c:
	wineboot: Delete files from dllcache once they have been installed.

2008-02-19  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/source.c:
	msi: Remove invalid FIXMEs.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_INVALID_PARAMETER if the context is machine and szUserSid
	is non-NULL.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate the dwOptions parameter of MsiSourceListSetInfo.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Simplify the MEDIAPACKAGEPATH and DISKPROMPT cases.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return the results from OpenSourceKey.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_UNKNOWN_PATCH if dwOptions contains MSICODE_PATCH.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate the szProduct parameter of MsiSourceListSetInfo.

	* dlls/msi/msi.spec, dlls/msi/source.c, dlls/msi/tests/automation.c,
	  dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListSetInfo.

2008-02-19  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/tests/http.c:
	wininet/tests: Don't include the trailing '\0' in dwHeadersLength otherwise
	HttpSendRequestEx() sends it too which some servers object to.

	* dlls/wininet/http.c:
	wininet: Document HttpAddRequestHeadersW()'s handling of the trailing '\0'. Fix
	tracing of the corresponding header strings as they may not be '\0' terminated.

2008-02-19  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Check whether RegGetValue() '\0'-terminates the buffer when
	retrieving a zero-byte string value.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Remove an obsolete comment: Wine's on-disk registry format
	now supports string values with no trailing '\0'.

2008-02-19  Francois Gouget <fgouget@free.fr>

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Use 'HKCU\Software\Microsoft\MS Setup (ACME)' as a source for the default
	user and company names before falling back to the RegisteredXXX values. Fix
	the conformance test accordingly.

2008-02-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi32/font.c, dlls/gdi32/gdi16.c:
	gdi32: Move EnumFonts16 and EnumFontFamilies16 to gdi16.c.

2008-02-18  Rob Shearman <rob@codeweavers.com>

	* dlls/advpack/files.c:
	advpack: Fix buffer overrun in convert_file_list.

	* dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Remove some unused functions.

	* dlls/mciwave/mciwave.c:
	mciwave: Fix the character count passed to GetTempPathW in create_tmp_file.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix the AccessCheck tests so that the ACCESS_SYSTEM_SECURITY test
	now runs (when the user has the Security privilege).
	Duplicate the token at SecurityImpersonation impersonation level instead
	of SecurityIdentification, otherwise the call to RtlAdjustPrivilege
	fails on Windows.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Fix the character length passed into GetDlgItemTextW in
	PRINTDLG_PS_UpdateDlgStructW.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Fix potential buffer overrun of lpxx->lfFaceName in CFn_WMCommand.

	* dlls/browseui/progressdlg.c:
	browseui: Fix typo in declaration of empty_string in set_buffer.

	* dlls/wininet/http.c:
	wininet: Fix potential buffer overrun in HttpQueryInfoA.
	If HTTP_QUERY_CUSTOM is specified then the buffer contains a
	null-terminated string on input and data of length len on output. The
	code wasn't taking into account that the input len could be less than
	the length of the string and thus could result in the allocated buffer
	being overrun with the call to WideCharToMultiByte.

2008-02-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/devenum/devenum.rc:
	devenum: Add Polish translation.

	* dlls/devenum/devenum.rc:
	devenum: Convert resource file to UTF-8.

2008-02-17  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Take alpha from device palette entry for d3d 8 and later.
	Adds support for D3D >= 8 style palettes that contain alpha. This fixes
	rendering problems in games like Commandos 3 and Madden NFL 2004.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Add test for palette handling in IDirect3DTexture_Load.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Split d3d1 initialization and destruction into separate functions.
	Slight rewrite to make creating additional D3D1 tests easier.

	* dlls/ddraw/texture.c:
	ddraw: Fix palette handling in IDirect3DTexture_Load.
	This fixes a potential refcounting problem and makes the function fail with NULL
	destination texture's palette and non-NULL source palette like it does on native.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Add test for branch instruction with non-zero offset.

	* dlls/ddraw/executebuffer.c:
	ddraw: Fix executebuffer branching with non-zero offset.
	Fixes a crash in Moto Racer 2.

2008-02-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/tests/dsurface.c, dlls/wined3d/palette.c:
	wined3d: When DDCAPS_ALLOW256 is set, palette entry 0 and 255 are filled with
	black and white.

	* dlls/gdi32/palette.c, dlls/gdi32/tests/palette.c:
	gdi32: GetPaletteEntries should not filter peFlags (test included).

2008-02-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/mfdrv/objects.c:
	gdi32: Avoid calling GetObject16 from 32-bit code.

	* dlls/gdi32/gdi16.c, dlls/gdi32/gdiobj.c:
	gdi32: Move a few more gdiobj functions to gdi16.c.

	* dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/dc.c,
	  dlls/gdi32/font.c, dlls/gdi32/gdi_private.h, dlls/gdi32/palette.c,
	  dlls/gdi32/pen.c, dlls/gdi32/region.c:
	gdi32: Get rid of the 16-bit GetObject functions.

	* dlls/gdi32/gdi16.c, dlls/gdi32/gdiobj.c:
	gdi32: Reimplemented GetObject16 and moved it to gdi16.c.

	* dlls/gdi32/gdi16.c, dlls/gdi32/gdiobj.c:
	gdi32: Reimplemented IsGDIObject16 and moved it to gdi16.c.

	* dlls/user32/focus.c, dlls/winex11.drv/window.c:
	winex11: Move the raising of windows on SetFocus to the X11 driver where
	it belongs.

2008-02-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dssenh/Makefile.in, dlls/dssenh/dssenh.spec, dlls/dssenh/main.c:
	dssenh: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/softpub/Makefile.in, dlls/softpub/main.c,
	  dlls/softpub/softpub.spec:
	softpub: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/slbcsp/Makefile.in, dlls/slbcsp/main.c, dlls/slbcsp/slbcsp.spec:
	slbcsp: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sccbase/Makefile.in, dlls/sccbase/main.c,
	  dlls/sccbase/sccbase.spec:
	sccbase: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mssip32/Makefile.in, dlls/mssip32/main.c,
	  dlls/mssip32/mssip32.spec:
	mssip32: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/initpki/Makefile.in, dlls/initpki/initpki.spec,
	  dlls/initpki/main.c:
	initpki: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/gpkcsp/Makefile.in, dlls/gpkcsp/gpkcsp.spec, dlls/gpkcsp/main.c:
	gpkcsp: Add initial stub dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/cryptdlg/Makefile.in, dlls/cryptdlg/cryptdlg.spec,
	  dlls/cryptdlg/main.c:
	cryptdlg: Add initial stub dll.

2008-02-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winpos.c:
	user32: Rewrite SWP_DoOwnedPopups to take into account topmost windows.

2008-02-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/pdh/pdh_main.c:
	pdh: Remove unnecessary test done in PdhLookupPerfNameByIndexW.

	* dlls/pdh/pdh_main.c:
	pdh: Check for size > 0 but no buffer.

	* dlls/pdh/tests/pdh.c:
	pdh/tests: Add test for size > 0 but no buffer.

2008-02-18  Francois Gouget <fgouget@free.fr>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Fix compilation on systems that don't support nameless unions.

2008-02-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Add separate alpha blend support.

2008-02-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add SURFACE_BUSY support to *_BltFast.

	* dlls/wined3d/surface.c:
	wined3d: Add SURFACE_BUSY support to *_Blt.

2008-02-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Skip tests when our language isn't LANG_ENGLISH.

2008-02-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: Fix a message test that would only pass on wine.

2008-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/mscms/tests/profile.c:
	mscms/tests: The presence of an ICM file in the color directory has nothing
	to do with the presence of a registered RGB profile.

	* dlls/mscms/tests/profile.c:
	mscms/tests: EnumColorProfiles() should not fail even if there are no ICM
	files in the 'color directory'.

2008-02-13  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/control.c:
	shell32: Fix the logic in Control_LoadApplet determining when to use CPL_INQUIRE
	and when to use CPL_NEWINQUIRE.
	Previously, the code would fail to get the name of an applet that didn't
	return an icon for CPL_NEWINQUIRE and didn't return set either idName or
	idIcon to a non-zero value for CPL_INQUIRE.
	Fix this by sending CPL_INQUIRE first and loading any strings or icon
	specified and then only fall back to CPL_NEWINQUIRE if any of the
	required members were zero (i.e. CPL_DYNAMIC_RES) and then only fill in
	these fields.

2008-02-13  Divan Burger <divan.burger@gmail.com>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Fix memory leak in colour dialog.

2008-02-18  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/gdbproxy.c:
	winedbg: Avoid using size_t in an error message.

	* dlls/kernel32/cpu.c:
	kernel32: Fixed the active processor mask on Mac OS.

2008-02-17  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/shell32/pidl.c:
	shell32: Adjust a format specifier and remove a redundant range check in
	ILGetDisplayNameExW().

2008-02-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Detect and work around the MacOS Geforce 8 PBO brokeness.

	* dlls/wined3d/directx.c:
	wined3d: Fix a syntax error in the ARB vertex program offset shader.
	As some Mesa developers pointed out, the GL_ARB_vertex_program grammar
	does not allow an immediate value as source argument in ARL. Most
	compilers accept it, but since it is not the purpose of the test
	program to test for this replace it with a proper constant.

2008-02-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c:
	wined3d: Add a test for fixed function bump mapping.

2008-02-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Do not change the texture unit when binding surfaces.
	Changing the texture unit when binding a surface for loading can break
	the state manager in the way that it changes the currently active
	texture unit while it is setting up a texture that has to be loaded.
	Instead find out the current unit to dirtify the correct sampler.

2008-02-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Extend out anti-spam database a bit.

2008-02-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c:
	wininet: Rename a function to better match what it does.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Handle the "100 Continue" response by ignoring it.

	* dlls/wininet/http.c:
	wininet: Honour the version override in HttpOpenRequest.

2008-02-16  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add tests for the off-by-one fixing behaviour of RegSetValueExA
	and RegSetValueExW.

	* dlls/advapi32/registry.c:
	advapi32: Document that the cbData parameter of RegSetValueA/W is ignored.

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegSetValueA/W.
	Fix RegSetValueA/W to return ERROR_INVALID_PARAMETER if NULL data is
	passed in.

2008-02-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Don't mix nsresult with HRESULT.

	* dlls/urlmon/umon.c:
	urlmon: Use BindToStorage hack only for binding to IStream.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added audio/basic MIME filter.

	* dlls/urlmon/binding.c:
	urlmon: E_PENGING returned by Start is not an error.

	* dlls/urlmon/tests/url.c:
	urlmon: Added URLDownloadToFile tests.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added TYMED_FILE support to CopyStgMedium.

	* dlls/urlmon/download.c, dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	urlmon: URLDownloadToFileA code clean up.

	* dlls/urlmon/Makefile.in, dlls/urlmon/download.c, dlls/urlmon/umon.c:
	urlmon: Reimplement URLDownloadToFileW on top of URL moniker.

2008-02-18  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListEnumSources.

2008-02-17  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/tests/install.c, include/msi.h:
	msi: Add tests for enumerating the source list after publishing.

2008-02-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c, dlls/msi/tests/automation.c, dlls/msi/tests/db.c,
	  dlls/msi/where.c:
	msi: Implement the MSIMODIFY_REFRESH command of MsiViewModify.

	* dlls/msi/tests/db.c:
	msi: Add tests for the MSIMODIFY_REFRESH command.

2008-02-16  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Convert REG_DWORD properties to strings in MsiGetProductInfo.

2008-02-17  James Hawkins <jhawkins@codeweavers.com>

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the UserLanguageID property.

2008-02-17  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wintab32/context.c:
	wintab32: Mark some signed entities as LONG.

	* dlls/dinput/device.c:
	dinput: Some debug output for BuildActionMap.

	* dlls/user32/edit.c:
	user32: Handle error returns from ImmGetCompositionString.

2008-02-06  Marcus Meissner <marcus@jet.franken.de>

	* programs/taskmgr/perfdata.c:
	taskmgr: Make stuff static.

2008-02-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/main.c, dlls/msxml3/msxml_private.h:
	msxml3: Support functions for typelib.

2008-02-17  Frans Kool <Frans.Kool@gmail.com>

	* dlls/iccvid/iccvid_Nl.rc, dlls/iccvid/rsrc.rc:
	iccvid: Created Dutch translations.

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Nl.rc:
	localspl: Created Dutch translations.

	* dlls/msvidc32/msvidc32_Nl.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Created Dutch translations.

2008-02-16  Frans Kool <Frans.Kool@gmail.com>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Nl.rc:
	wineboot: Created Dutch translations.

	* programs/write/Nl.rc, programs/write/rsrc.rc:
	write: Created Dutch translations.

2008-02-16  Rob Shearman <rob@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool: Fix character count passed to RegQueryValueExW in get_local_monitors.

	* dlls/msi/tests/msi.c:
	msi: Fix the character count passed into RegSetValueExA in
	test_MsiQueryFeatureState.

	* dlls/shell32/shfldr_desktop.c:
	shell32: Fix incorrect character count passed into RegEnumKeyExW in
	CreateDesktopEnumList.

	* dlls/kernel32/console.c:
	kernel32: Fix handle leak in start_console_renderer_helper.

	* dlls/cabinet/fdi.c:
	cabinet: Replace strcasecmp call with lstrcmpiA as strcasecmp isn't portable
	and doesn't take into account the current codepage.

2008-02-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use GetDCHook to retrieve the dce pointer instead of storing it in
	the physdev structure.

2008-02-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/clipping.c, dlls/gdi32/dc.c, dlls/gdi32/gdi16.c,
	  dlls/gdi32/gdi32.spec, dlls/wineps.drv/init.c,
	  dlls/winex11.drv/dce.c, include/wine/wingdi16.h, include/wingdi.h:
	gdi32: Export the DC hook functions as 32-bit functions.

	* dlls/comctl32/listview.c:
	comctl32: Remove unnecessary \n in trace.

2008-02-15  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm: Ensure hCompStr handle is not NULL and check for empty composition
	strings properly.

2008-02-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/attribute.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMAttribute name property.

	* dlls/msxml3/pi.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMProcessingInstruction target.

2008-02-15  James Hawkins <jhawkins@codeweavers.com>

	* tools/wine.inf:
	tools/wine.inf: Create fake dlls for itircl.dll and itss.dll.

	* tools/wine.inf:
	tools/wine.inf: Create a fake file for hh.exe.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/itircl/Makefile.in, dlls/itircl/itircl.spec,
	  dlls/itircl/itircl_main.c:
	itircl: Add a stub implementation of itircl.dll.

2008-02-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/streams.c:
	msi: Fixed error reporting of add_streams_to_table.

	* dlls/dinput/effect_linuxinput.c:
	dinput: Removed superflous < 0 check.

2008-02-15  Marcus Meissner <meissner@suse.de>

	* dlls/dinput/dinput_main.c:
	dinput: Add debug output for IDirectInput8A::EnumDevicesBySemantics.

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c,
	  dlls/dinput/dinput_private.h:
	dinput: Add a dumper for LPDIACTIONFORMAT.
	Also make the DINPUT_instance static.

2008-02-15  Steven Edwards <winehacker@gmail.com>

	* dlls/quartz/tests/referenceclock.c:
	quartz: Bump the amount of time in the referenceclock test slightly.

2008-02-15  Rob Shearman <rob@codeweavers.com>

	* include/winnt.h:
	include: Fix the C_ASSERT macro to not generate an unused variable warning
	when compiling with gcc.
	Provide a fallback case for other compilers to avoid C_ASSERT being
	undefined and causing an error.

	* dlls/ntdll/loader.c, dlls/oleaut32/tmarshal.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_server.c,
	  include/wine/exception.h:
	Add a new convenience macro for an exception handler that handles all exceptions.
	When using native compiler exceptions, the previous method of doing
	this, __EXCEPT(NULL), would expand to __except(
	(NULL)(GetExceptionInformation())) which doesn't compile as NULL isn't a
	function.
	So add a new macro, __EXCEPT_ALL, which works correctly both when using
	native compiler exceptions and without and which makes the meaning of
	code in which it is used clearer.

	* dlls/user32/misc.c:
	user32: Fix MonitorFromRect to cope with the absence of the
	MONITOR_DEFAULTTONEAREST flag.
	Previously, the code would return any monitor found, regardless of
	whether it intersected the given rect or was the nearest monitor. This
	is fixed by adding a new flag that causes monitor_enum to only find the
	nearest monitor if MONITOR_DEFAULTTONEAREST is specified.
	Also add a trace for MonitorFromWindow, since it is called in many
	places within user32 and so can't be traced using a relay trace.

	* dlls/kernel32/console.c, dlls/ole32/moniker.c, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/rpc_server.c, dlls/winedos/dosvm.c, dlls/winedos/int31.c,
	  include/wine/exception.h, programs/explorer/hal.c,
	  programs/winedbg/dbg.y:
	Don't use GetExceptionCode and GetExceptionInformation in exception filter
	functions.
	When using native compiler exceptions, it isn't valid to use
	GetExceptionCode and GetExceptionInformation anywhere other than in the
	filter or handler blocks since it would be very hard for the compiler to
	work out where to retrieve the exception information from on the stack.
	Therefore, remove the WINE_EXCEPTION_FILTER and WINE_FINALLY_FUNC macros
	which enabled GetExceptionCode, GetExceptionInformation and
	AbnormalTermination to be used inside of the functions they declared and
	fix up all callers to access the information directly.

2008-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/browseui/aclmulti.c, dlls/browseui/browseui.h,
	  dlls/browseui/browseui_main.c, dlls/browseui/compcatcachedaemon.c,
	  dlls/browseui/progressdlg.c:
	browseui: Remove WINAPI from functions that don't need it.

2008-02-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/browseui/Makefile.in, dlls/browseui/browseui.h,
	  dlls/browseui/browseui_main.c, dlls/browseui/compcatcachedaemon.c,
	  dlls/browseui/regsvr.c:
	browseui: Add undocumented Component Category Cache Daemon stub.

	* include/shobjidl.idl:
	include: Add IRunnableTask interface.

2008-02-15  Austin English <austinenglish@gmail.com>

	* README:
	README: Update some outdated information.

2008-02-15  Frans Kool <Frans.Kool@gmail.com>

	* dlls/msvfw32/msvfw32_Nl.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Created Dutch translations.

	* programs/net/Nl.rc, programs/net/rsrc.rc:
	net: Created Dutch translations.

	* dlls/credui/credui.rc, dlls/credui/credui_Nl.rc:
	credui: Created Dutch translations.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Nl.rc:
	browseui: Created Dutch translations.

	* programs/xcopy/Nl.rc, programs/xcopy/rsrc.rc:
	xcopy: Created Dutch translations.

	* dlls/localui/localui.rc, dlls/localui/ui_Nl.rc:
	localui: Created Dutch translations.

	* programs/winhelp/Nl.rc:
	winhelp: Added missing Dutch translations.

	* programs/wineconsole/wineconsole_Nl.rc:
	wineconsole: Added missing Dutch translations.

	* programs/progman/Nl.rc:
	progman: Added missing LGPL-license in Dutch translations.

	* dlls/mshtml/Nl.rc:
	mshtml: Added missing Dutch translations.

2008-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/file.c:
	urlmon: Check the return value of ReadFile and return INET_E_DOWNLOAD_FAILURE
	is it fails.
	Initialise *pcbRead to zero, if the parameter is not NULL.

	* dlls/wininet/urlcache.c:
	wininet: Fix the return value check of SHGetSpecialFolderPathW in
	URLCacheContainers_CreateDefaults.
	It returns a BOOL, not an HRESULT.

	* dlls/wininet/http.c:
	wininet: Fix an off-by-one error in the boundary checks in HTTP_DecodeBase64.

	* dlls/urlmon/http.c:
	urlmon: Fix the character count passed into MultiByteToWideChar in
	HttpProtocol_Start.

	* dlls/shell32/pidl.c:
	shell32: Fix character count passed into lstrcpnA in SHGetDataFromIDListA.

	* dlls/shell32/shfldr_fs.c:
	shell32: Fix the character count passed into LoadStringW in
	ISFHelper_fnAddFolder.

	* dlls/comctl32/treeview.c:
	comctl32: Remove some more useless asserts.

	* dlls/comctl32/treeview.c:
	comctl32: Fix the character count passed to GetWindowTextW in TREEVIEW_Command.

	* dlls/comctl32/treeview.c:
	comctl32: Remove a useless assert from TREEVIEW_GetItemIndex.

	* dlls/comctl32/propsheet.c:
	comctl32: Fix the character count passed into LoadStringW from propsheet
	functions.

2008-02-14  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Vista doesn't actually add duplicate usage identifiers; fix tests
	and change Wine to match.

	* dlls/crypt32/tests/cert.c:
	crypt32: Allow some last errors set by Vista.

	* dlls/crypt32/store.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix a test failure on Vista, and make Wine match the newer (and saner)
	behavior.

	* dlls/crypt32/tests/cert.c:
	crypt32: Add to error message to track down NT4 failures.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix test failures on NT4.

	* dlls/advapi32/tests/crypt.c:
	advapi32: Fix CryptVerifySignatureW test failures on Win98SE and NT4.

2008-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/colordlg16.c,
	  dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/printdlg.c, dlls/crypt32/rootstore.c,
	  dlls/crypt32/tests/msg.c, dlls/crypt32/tests/store.c,
	  dlls/ctapi32/ctapi.h, dlls/d3d8/tests/device.c,
	  dlls/d3d9/tests/device.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/visual.c, dlls/localspl/localspl_main.c,
	  dlls/msxml3/docfrag.c, dlls/msxml3/entityref.c,
	  dlls/ole32/stg_bigblockfile.c, dlls/urlmon/tests/stream.c,
	  dlls/urlmon/tests/url.c, include/wine/mscvpdb.h,
	  programs/cmd/builtins.c:
	Assorted spelling fixes.

2008-02-13  Rico Schüller <kgbricola@web.de>

	* dlls/wined3d/device.c:
	wined3d: Fix memcpy with wrong size parameter to simple assignment in
	GetScissorRect.

2008-02-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c, dlls/ntdll/rtlstr.c:
	kernel32: On Mac OS, recompose the Unicode strings we get from the OS.

	* libs/wine/utf8.c, libs/wine/wctomb.c:
	libwine: Add option for Unicode composition in utf-8 -> wchar conversion.

	* libs/wine/utf8.c:
	libwine: Abstract part of the utf8 char decoding to a separate function.

2008-02-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/chain.c, dlls/crypt32/msg.c, dlls/crypt32/sip.c:
	crypt32: Assign to structs instead of using memcpy.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Rename some identifiers to reflect their width.

2008-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/cred.c:
	advapi32/tests: Check that a credential type is supported before testing it. Test
	CRED_TYPE_DOMAIN_VISIBLE_PASSWORD credentials. Factorize the CredentialBlob
	checks.

	* dlls/advapi32/tests/cred.c:
	advapi32/tests: Factorize the password constants.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/cred.c, include/wincred.h:
	advapi32: Add a rudimentary implementation of CredGetSessionTypes().

	* include/wincred.h:
	advapi32: Add some missing CRED_TYPE_XXX constants.

2008-02-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/browseui/progressdlg.c:
	browseui: Implement PROGDLG_NOMINIMIZE.

	* dlls/browseui/aclmulti.c:
	browseui: aclmulti: Follow the Windows Vista behavious in Expand.

	* dlls/browseui/tests/autocomplete.c:
	browseui/tests: make the ACLMulti test pass under Windows Vista.

2008-02-13  Christian Authmann <christian@authmann.de>

	* programs/explorer/desktop.c:
	explorer: Add meaningful titles to virtual desktop windows.

2008-02-10  Marcus Meissner <marcus@jet.franken.de>

	* include/dinput.h:
	include: Added some defines for EnumDevicesBySemantics.

2008-02-10  Royal Chan <chanroyal@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: draw_polyline never sets status from GenericError to Ok on successful
	calls.

2008-02-07  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/explorer/systray.c:
	systray: Better validate icon owner.

	* programs/explorer/systray.c:
	systray: Correctly handle icon addition/deletion.

	* programs/explorer/systray.c:
	systray: Avoid modifying non-existent tooltip windows of non-existent icon
	windows when application updates tip of hidden icon.

2008-02-10  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/tests/combo.c:
	user32: Improve the combo tests to check when the CBN_SELCHANGE notification
	is sent.

2008-02-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Assign to struct instead of using memcpy.

	* dlls/dbghelp/minidump.c:
	dbghelp: Assign to struct instead of using memcpy.

2008-02-14  Frans Kool <Frans.Kool@gmail.com>

	* dlls/shdoclc/Nl.rc:
	shdoclc: Added missing Dutch translations.

	* dlls/oledlg/oledlg_Nl.rc:
	oledlg: Added missing Dutch translations.

	* programs/notepad/Nl.rc:
	notepad: Added missing LGPL License in Dutch translations.

	* dlls/mpr/mpr_Nl.rc:
	mpr: Added Dutch translations.

	* programs/cmdlgtst/Nl.rc:
	cmdlgtst: Added missing Dutch translations.

	* programs/winecfg/Nl.rc:
	winecfg: Added missing Dutch translations.

	* programs/cmd/Nl.rc:
	cmd: Added & corrected Dutch translations.

	* programs/taskmgr/Nl.rc:
	taskmgr: Corrected Dutch translations.

2008-02-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Services are not available on win9x.

2008-02-14  Rob Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/typelib.c:
	widl: Guard the inclusion of unistd.h.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typelib.c:
	widl: Remove unused headers.

	* dlls/crypt32/msg.c:
	crypt32: Fix function declaration - WINAPI should come after the return type.

	* dlls/shell32/shell32_main.c:
	shell32: Memory allocated by CommandLineToArgvW should be that got from
	LocalAlloc/LocalReAlloc, not from GlobalAlloc.
	Use LMEM_FIXED instead of 0 in calls to LocalAlloc to emphasise that
	we're getting a direct pointer, not a handle to memory.
	Remove hargv as it is confusing and unnecessary.

	* dlls/user32/icontitle.c:
	user32: Fix incorrect character count passed to GetWindowTextW in
	ICONTITLE_Paint.

	* dlls/shlwapi/ordinal.c:
	shlwapi: IID_IInternetSecurityMgrSite is now defined so remove the local
	definition from IUnknown_GetWindow.

	* dlls/ole32/storage32.c:
	ole32: Fix the character count passed to GetClipboardFormatNameW in
	WriteFmtUserTypeStg.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix the character count passed to GetFullPathNameW in OpenCHM
	and NavigateToChm.

	* dlls/msrle32/msrle32.c:
	msrle32: Fix the character count passed into LoadStringW in About.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Fix the character count passed to snprintfW in
	DXDiag_AddFileDescContainer and DXDiag_InitDXDiagDisplayContainer.

	* dlls/dbghelp/module.c:
	dbghelp: Fix a typo in SymLoadModuleExW that caused the wrong number of
	characters to be passed to lstrcpynW.

	* dlls/advapi32/registry.c:
	advapi32: The lpcbSecurityDescriptor parameter to RegGetKeySecurity isn't
	optional, so don't complicate the code by treating as though it is.

2008-02-14  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Add IStream_CopyTo to the sub-stream implementation.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Improve some TRACEs.

2008-02-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Adding a user with a too long name succeeds on NT4.

2008-02-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Add support for the NoDrives registry key.

2008-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c:
	user32: Use custom window procs instead of DefWindowProcA/W in the
	IsWindowUnicode test.

2008-02-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Don't use event times, report current tick count instead.

	* dlls/dinput/mouse.c:
	Revert "dinput: Skip old mouse movement events.".
	This reverts commit 31876695120f2fe6b4ecf60d73c36472607e5bf2.

2008-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/urlcache.c:
	wininet: Code clean up.

	* dlls/wininet/tests/http.c:
	wininet: Added cache test.

	* dlls/wininet/internet.c:
	wininet: Added correct InternetQueryOption(INTERNET_OPTION_DATAFILE_NAME)
	implementation.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Added beginning support for HTTP cache files.

2008-02-13  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	msi: Add stub implementation of MsiIsProductElevatedA/W.

	* dlls/ntdll/loader.c:
	ntdll: Add an exception handler around calls to module entry points.
	Change the return value from BOOL to NTSTATUS so that we can return the
	exception code to the caller.

2008-02-13  Francois Gouget <fgouget@free.fr>

	* include/icm.h:
	mscms: [GS]etColorSpace() are not supposed to be defined in icm.h.

	* dlls/kernel32/tests/time.c:
	kernel32/tests: Fix the time tests when 'Automatically adjust clock for daylight
	saving changes' has been unset.

	* include/winbase.h:
	kernel32: Add prototypes for [GS]etDynamicTimeZoneInformation().

2008-02-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/credui/credui_Es.rc, dlls/credui/credui_Fr.rc,
	  dlls/crypt32/crypt32_Sv.rc, dlls/gphoto2.ds/gphoto2_Es.rc,
	  dlls/localui/ui_Fr.rc, dlls/sane.ds/sane_Es.rc, programs/net/Fr.rc,
	  programs/wineboot/wineboot_Es.rc, programs/wineboot/wineboot_Fr.rc,
	  programs/write/Fr.rc, programs/xcopy/Fr.rc:
	UTF-8 resource files must explicitly say so with a pragma.

2008-02-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Ru.rc, programs/wordpad/Tr.rc:
	wordpad: File > New now opens a dialog so there should be an ellipsis at the end.

	* programs/wordpad/Pl.rc:
	wordpad: Update Polish translation.

	* programs/write/Pl.rc, programs/write/rsrc.rc:
	write.exe: Add Polish translation.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Pl.rc:
	wineboot: Add Polish translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Pl.rc:
	browseui: Add Polish translation.

	* dlls/credui/credui_Pl.rc:
	credui: Update Polish translation.

	* programs/winhelp/Pl.rc:
	winhelp: Update Polish translation.

2008-02-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: CryptVerifySignatureW is not implemented on win98.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: GetLongPathNameA is not implemented on win95.

2008-02-13  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Fix a typo in nsiface.idl.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add some traces to async_notifier_proc.
	Make the test of the return value of wait_for_incoming_data less strict.

	* dlls/avifil32/avifile.c, dlls/avifil32/wavfile.c:
	avifil32: Pass the number of characters to LoadStringW, not the number of bytes.

	* dlls/mshtml/nsiface.idl:
	mshtml: Add a dummy member to nsMargin as empty structs aren't valid in C89.

	* dlls/mshtml/nsiface.idl:
	mshtml: All interfaces in nsiface.idl are local.
	Since there is no in or out, or other information necessary for
	remoting, all of the interfaces can only used locally, so declare them
	all as local.

	* dlls/mshtml/nsiface.idl:
	mshtml: Remove extra semi-colons after cpp_quote in nsiface.idl.

2008-02-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	wined3d: Switch the visual tests back to D3DDEVTYPE_HAL.

2008-02-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a test for the vFace register.

2008-02-13  Aric Stewart <aric@codeweavers.com>

	* dlls/version/info.c:
	version: Check for 16-bit file format before returning
	ERROR_RESOURCE_DATA_NOT_FOUND.

2008-02-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Fix potential NULL dereference of qiresults in
	ClientIdentity_QueryMultipleInterfaces.
	This could happen if proxy_manager_get_remunknown returns S_FALSE, so
	fix the check of the return code to match that below.

	* dlls/ole32/compobj.c:
	ole32: Fix a potentially confusing combination of conditional and bitwise or
	operators by adding extra brackets.

	* dlls/ole32/compobj.c:
	ole32: Remove an assert that is useless and triggers warnings elsewhere in
	static analysis tools.

	* dlls/ole32/compobj.c:
	ole32: Fix local-variable shadowing in apartment_hostobject_thread.

	* dlls/ole32/bindctx.c:
	ole32: Fix reference count leak in BindMoniker.

	* include/dpaddr.h:
	include: Fix some typos in dpaddr.h.

	* libs/port/futimes.c:
	libport: Use configure guards for include files that may not be present.

2008-02-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: ReplaceFile[AW] doesn't exist on win9x.

2008-02-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Assign to structs instead of using memcpy.

2008-02-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for source folder resolution.

2008-02-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi32/font.c, dlls/gdi32/gdi16.c:
	gdi32: Move two 16bit function stubs to gdi16.c.

2008-02-12  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Implement IMimeMessage_GetMessageSource.

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/mimeole.c,
	  dlls/inetcomm/tests/mimeole.c:
	inetcomm: Stub for MimeOleGetCharsetInfo.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Stub IMime{Message, Body}_GetCharset to return a NULL charset.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody_GetProp for the primary context type.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeMessage_GetAttachments.

	* dlls/inetcomm/mimeole.c, include/mimeole.idl:
	inetcomm: Implement IMimeMessage_GetTextBody.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Forward a few IMimeMessage functions to the appropriate IMimeBody
	functions.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeMessage_Find{First,Next}.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeMessage_CountBodies.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeMessage_GetBody.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Create a body tree for multipart messages.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Add a sub-stream implementation.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Added missing initialization.

2008-02-12  Frans Kool <Frans.Kool@gmail.com>

	* programs/regedit/Nl.rc:
	regedit: Added Dutch translations.

	* programs/winefile/Nl.rc:
	winefile: Added Dutch translations.

2008-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c:
	user32: Add a couple of tests for WS_EX_TOPMOST.

2008-02-12  Erich Hoover <ehoover@mines.edu>

	* dlls/kernel32/tests/file.c:
	kernel32: Add tests for ReplaceFileA and ReplaceFileW.

2008-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/file.c:
	kernel32: Implement ReplaceFileW.
	Based on a patch by Erich Hoover.

2008-02-12  Erich Hoover <ehoover@mines.edu>

	* dlls/kernel32/file.c:
	kernel32: Implement ReplaceFileA.

2008-02-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/comboex.c, dlls/comctl32/rebar.c, dlls/comctl32/toolbar.c:
	comctl32: Assign to structs instead of using memcpy.

2008-02-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/automation.c, dlls/msi/tests/db.c:
	msi: Handle carriage returns in MsiDatabaseImport.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Use MsiViewModify instead of building a SQL query when adding rows to
	the table.

	* dlls/msi/msi.c:
	msi: Read the language info from the file.

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/automation.c, dlls/msi/tests/msi.c:
	msi: Reimplement MsiGetProductInfo.

2008-02-12  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fix erroneous access to dwarf symbol cache.
	(Spotted by Dan Kegel with valgrind).

2008-02-13  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/xmldoc.c:
	msxml3: Corrected tests for msxml service packs versions.

2008-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: Only use functions if they are implemented.

2008-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/fiber.c, include/wine/exception.h:
	kernel32: Don't save the signal mask in sigsetjmp.
	This shouldn't be needed anymore now that exceptions are not handled
	on the signal stack, and signal mask handling is broken on Mac OS.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c:
	ntdll: Store the unhandled exception filter at startup to avoid race conditions.

2008-02-12  Frans Kool <Frans.Kool@gmail.com>

	* programs/oleview/Nl.rc, programs/oleview/rsrc.rc:
	oleview: Added Dutch translations.

	* dlls/shell32/shell32_Nl.rc:
	shell32: Added Dutch translations.

2008-02-11  Frans Kool <Frans.Kool@gmail.com>

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Added Dutch translations.

2008-02-11  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeMessage_BindToObject.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Create the root body in IMimeMessage_Load.

2008-02-08  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Partial implementation of IMimeBody_GetData.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add the beginnings of IMimeMessage_Load.

2008-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/dinput/mouse.c:
	dinput: Make _dump_mouse_state static.

2008-02-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/cabinet/fci.c:
	cabinet: Assign to structs instead of using memcpy.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/factory.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/wavfile.c:
	avifil32: Assign to structs instead of using memcpy.

2008-02-10  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/font.c:
	gdi32: For unsigned types, directly use INTERNAL_YDS

2008-02-09  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix EOF behavior on read from pipe or console.
	The canonical way to detect EOF on read is when you request more than
	zero bytes, but zero bytes come back.  Switching to this method seems
	to handle a few problem cases better.  Also handle ERROR_BROKEN_PIPE
	properly just in case.

2008-02-10  Reece H. Dunn <msclrhd@gmail.com>

	* programs/winecfg/theme.c:
	winecfg: Allow theme colour names to be case insensitive when reading them
	from a file.

	* programs/winecfg/theme.c:
	winecfg: Fixed reading in colour data from a theme file.

2008-02-08  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm: Implement ImmGenerateMessage.

	* dlls/imm32/imm.c:
	imm: More correctly handle the presence of the default IME input window on
	IME open and close.

2008-02-08  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Skip old mouse movement events.

2008-02-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/msi.c:
	msi: Test the remaining installer properties returned by MsiGetProductInfo.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_INVALID_PARAMETER if szProduct is invalid.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetProductInfo.

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Successfully return an empty string when requesting a record index beyond
	the record's size.

	* dlls/msi/custom.c, dlls/msi/tests/install.c:
	msi: Don't check for the existence of the msi package when running a concurrent
	install.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Handle the special table _ForceCodepage in MsiDatabaseExport.

	* dlls/msi/tests/db.c:
	msi: Add tests for not using quotes in SQL queries.

2008-02-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/install.c:
	msi/tests: Fix test that depends on the order of the files in a directory.

	* dlls/comctl32/animate.c:
	comctl32: Process messages while waiting for the animation thread to finish.

2008-02-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Only use functions if they are implemented.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Don't crash on WinXP SP3.

	* dlls/wintrust/crypt.c, dlls/wintrust/tests/crypt.c:
	wintrust/crypt: Fix some test failures for a NULL parameter.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Vista uses the same status values as Windows 2003.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Change test_RegPolicyFlags to use the same logic as the rest
	of the tests.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Use GetModuleHandleA instead of LoadLibraryA.

2008-02-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add read_from_framebuffer_texture which combines code from
	read_from_framebuffer (drawpixels) and LoadLocation.
	This makes the code easier to read and the pieces borrowed from
	read_from_framebuffer are more correct than the code in LoadLocation.

2008-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c:
	mshtml: Mode range tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed bound_pos handling in move_prev_chars.

	* dlls/mshtml/txtrange.c:
	mshtml: hr element is not a space element for moving functions.

2008-02-10  Francois Gouget <fgouget@free.fr>

	* include/wine/test.h:
	tests: Avoid InterlockedExchangeAdd() as it is not supported on Windows 95.

	* dlls/user32/tests/listbox.c:
	user32/tests: Add the trailing '\n' to ok() calls.

2008-02-09  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/atl/atl_ax.c:
	atl: Assign to structs instead of using memcpy.

2008-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Skip test if we don't have enough rights.

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Show errors in hex.

2008-02-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/midi.c:
	wineoss.drv: Remove unneeded casts.

	* dlls/winejoystick.drv/joystick.c:
	winejoystick.drv: Remove unneeded casts.

2008-02-08  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Fix inserting a hyperlink when text is already selected.
	There is no need to use cmd_insertLinkNoUI when we have the code to do
	most of the action anyway. Make use of the handy
	InsertLinkAroundSelection to insert the "a" element when not inserting
	at the caret and don't create a text node in this case because it is
	redundant.

2008-02-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.55.

----------------------------------------------------------------
2008-02-08  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/xmldoc.c:
	msxml3: Corrected test text.

2008-02-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Separate modifier from charset before detecting the charset codepage.

2008-02-08  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/user32/tests/listbox.c:
	user32: Make the listbox tests pass in directories other than dlls/user32/tests.

2008-02-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Use the backend for AddPrinterDriverEx.

	* dlls/localspl/localspl_main.c:
	localspl: Implement fpAddPrinterDriverEx.

2008-02-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Skip rest of the tests if we fail.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Change test for Windows 2003.

2008-02-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Upload p8 palette using GL_ALPHA instead of GL_RED.

2008-02-02  Lei Zhang <thestig@google.com>

	* dlls/quartz/main.c, dlls/quartz/quartz_private.h, dlls/quartz/regsvr.c,
	  dlls/quartz/videorenderer.c, include/uuids.h:
	quartz: Add VideoRendererDefault.

2008-02-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ws2_32/async.c, dlls/ws2_32/socket.c:
	ws2_32: Remove unneeded casts.

	* dlls/wnaspi32/winaspi16.c:
	wnaspi32: Remove unneeded cast.

2008-02-07  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Merge the encrypting and decrypting states, as encrypting and decrypting
	are allowed with the same key.

2008-02-07  Johan Gardell <gardin@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Added support for SPI_SETMOUSESPEED in SystemParametersInfoW.

2008-02-07  Colin Finck <mail@colinfinck.de>

	* tools/widl/write_msft.c:
	widl: Write the TLB file in binary mode, so the line endings won't be changed.

	* tools/widl/utils.c, tools/widl/widl.c:
	widl: Support Windows paths in dup_basename and make_token.

2008-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/localspl/localspl_main.c:
	localspl: Avoid sizeof in a trace.

2008-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Move the getting of the DC outside of ANIMATE_DrawFrame.
	This allows the handle to the DC to be passed in the WM_CTLCOLORSTATIC
	message sent to the parent.

2008-02-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Restore the Window size on reset.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/tests/device.c:
	d3d9: Implement the device lost state.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Reject unsupported modes when restting the device.

	* dlls/wined3d/directx.c:
	wined3d: Add some ATI cards to the version database.

	* dlls/wined3d/directx.c:
	wined3d: Add infrastructure for faking driver versions.
	Often the Linux / MacOS graphics driver version is of no use for
	finding a proper driver version to report to the D3D app. So this
	patch adds some infrastructure for easy hardcoding of card specific
	driver versions to report to the application. This helps applications
	which make assumptions based on the driver version, like bug
	workarounds.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Vista sends an unidentified message when destroying datetime and
	monthcal windows.

2008-02-07  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/uxtheme/tests/system.c:
	uxtheme: Fix the system tests so they pass on Vista.

2008-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/tests/security.c, dlls/kernel32/tests/actctx.c,
	  dlls/kernel32/tests/toolhelp.c, dlls/ntdll/tests/exception.c,
	  dlls/ole32/tests/marshal.c, dlls/rpcrt4/tests/server.c,
	  dlls/shell32/tests/shellpath.c, dlls/user32/tests/cursoricon.c,
	  include/wine/test.h:
	tests: Add a helper routine to wait for a child process and propagate its
	result correctly.

2008-02-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Test using carriage returns in SQL queries and imported tables.

2008-02-05  Andrey Esin <andrey@esin.name>

	* programs/cmd/Ru.rc:
	cmd: Additions to Russian translation.

2008-02-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/url/url.spec, dlls/url/url_main.c:
	url: Add a stub for AddMIMEFileTypesPS.

2008-02-05  Christopher Harvey <arbuckle911@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Added WGL_BIND_TO_TEXTURE_DEPTH_NV to ConvertAttribWGLtoGLX.

2008-02-03  Bang Jun-young <junyoung@mogua.com>

	* dlls/comctl32/listview.c:
	comctl32: Fix invalid syntax.

2008-01-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_main.c:
	shell32: Use LocalFree in CommandLineToArgvW.

2008-02-02  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msvfw32/drawdib.c:
	msvfw32: Avoid possible dereference of NULL pointer (Coverity).

2008-02-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/gdi32/gdi32.spec, dlls/gdi32/printdrv.c:
	gdi32: Add stub for GdiInitSpool and GdiGetSpoolMessage.

2008-01-30  Lars-Ake Fredlund <fred@babel.ls.fi.upm.es>

	* dlls/winex11.drv/palette.c:
	winex11: Don't create a mapping if X11DRV_PALETTE_VIRTUAL is set.

2008-01-24  Lei Zhang <thestig@google.com>

	* dlls/user32/combo.c, dlls/user32/defwnd.c, dlls/user32/listbox.c,
	  dlls/user32/nonclient.c, dlls/user32/painting.c, dlls/user32/spy.c,
	  dlls/user32/uitools.c, dlls/user32/winpos.c:
	user32: Use wine_dbgstr_rect() in traces.

	* dlls/comctl32/comboex.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c:
	comctl32: Use wine_dbgstr_rect() in traces.

2008-02-06  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/msc.c:
	dbghelp: Disable the S_PUB_FUNC_XXX msc symbols until we know what they do
	(the first guess is wrong anyway).

	* dlls/dbghelp/symbol.c:
	dbghelp: When sending back information about a global symbol, only demangle
	the class & field/method name.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Attempt to cache some basic symbol types for easier and faster code.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: Extended the internal enumeration information so that we know the
	underlying integral type.

	* dlls/dbghelp/type.c:
	dbghelp: Added basic support for base class information.
	As we don't support C++ for now, we just return FALSE for all cases.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added support for labels outside functions (and used it in msc parsing).

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h, tools/winedump/msc.c:
	dbghelp: Added preliminary support for a strange stack variable object.

	* dlls/dbghelp/msc.c:
	dbghelp: Added support for register v3 in msc.

	* dlls/dbghelp/msc.c:
	dbghelp: Added support for some V3 fields in structure parsing.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h:
	dbghelp: Added HRESULT as new basic type (and some doc about basic types ids).

	* include/wine/mscvpdb.h:
	dbghelp: Fix mixed up return and this type in MFunction V2.

	* dlls/dbghelp/msc.c:
	dbghelp: Pass the 'details' flags to _fetch_type so that we can simplify some
	code around.

	* dlls/dbghelp/msc.c:
	dbghelp: Added missing basic types for booleans and integers.

2008-02-07  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/cursoricon.c:
	user32: winex11.drv has support for color cursors now.

2008-02-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wintab32/wintab32.c:
	wintab32: Remove unneeded cast.

2008-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Don't get the background colour in ANIMATE_PaintFrame as this can
	be called inside a critical section.
	This could therefore create a deadlock if the processing for
	WM_CTLCOLORSTATIC ends up sending certain messages to the animate control.
	So move the retrieval of the background colour into the callers of
	ANIMATE_PaintFrame but outside of any critical section.

2008-02-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fixed ref count leak.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/url.c:
	urlmon: Added gecko_installer_workaround to url.c tests.

2008-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xinerama.c:
	winex11: Only update the virtual screen rect once in xinerama_init to minimize
	race conditions.

	* dlls/winex11.drv/keyboard.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Use the gdi display when initializing the keyboard to avoid creating
	a second display connection.

	* dlls/winex11.drv/winpos.c:
	winex11: Don't erase the desktop window synchronously on resizes to prevent
	deadlocks.

2008-02-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/crypt.c:
	wintrust/tests: Use GetModuleHandleA instead of LoadLibraryA.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Improve the failure reporting in the bitmap tests.

2008-01-27  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Spelling fixes in the d3d test output.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/cabinet/tests/fdi.c:
	cabinet: Make the fdi tests pass on Vista.

2008-01-29  Jens Nestler <nessi@nessi-online.de>

	* dlls/kernel32/path.c:
	kernel32: Don't fail unconditionally in MoveFile for directories with flag
	MOVEFILE_REPLACE_EXISTING.

2008-02-05  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/explorer/systray.c:
	systray: Add support for NIS_HIDDEN flag.

	* dlls/shell32/systray.c, dlls/shell32/tests/systray.c,
	  programs/explorer/systray.c:
	systray: Properly track errors.

2008-01-24  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Test destroying the cursor of a parent process.

2008-02-05  Paul Chitescu <paulc@voip.null.ro>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implement MmPageEntireDriver and MmResetDriverPaging.

2008-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  include/richedit.h:
	riched20: Fix the name of the lpUsedDefChar field of GETTEXTEX.

2008-01-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Some drivers return a refresh rate of 0.

2008-02-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Create VBOs.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Separate OpenGL and driver version.

	* dlls/wined3d/directx.c:
	wined3d: Move the highpart of the driver version to the gl structure.
	While 6.14 is a sane default, we might want to override it on a
	per-driver basis, if we have really old Windows drivers on some cards.

	* dlls/wined3d/device.c:
	wined3d: Tear down the dummy textures before resetting.
	In theory the opengl library should release the gl resources when we
	destroy the context, and the stateblock reset will recreate the dummy
	textures, but I think it is cleaner to do this explicitly.

	* dlls/wined3d/device.c:
	wined3d: Restore the stateblock after Reset.

2008-02-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winmm/message16.c, dlls/winmm/winmm.c:
	winmm: Remove unneeded casts.

2008-02-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface_base.c:
	wined3d: Redownload the surface data in case of a palette change. This fixes
	a lot of redrawing problems in Red Alert.

	* dlls/wined3d/surface.c:
	wined3d: Allow read back of P8 surfaces. This fixes some of the redrawing
	issues in Red Alert.

2008-01-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Reload the palette on a color key change. This fixes the ddex4/ddex5
	samples from the dx7 sdk.

	* dlls/wined3d/surface.c:
	wined3d: Make sure to set the color key when it is needed including for
	index_in_alpha.

2008-02-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msi/format.c:
	msi: Fix "type of 'x' defaults to 'int'" warnings.

2008-02-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/wspool.c,
	  dlls/winspool.drv/wspool.h:
	winspool: Use the backend for GetPrinterDriverDirectory.

	* dlls/localspl/localspl_main.c:
	localspl: Implement fpGetPrinterDriverDirectory.

	* dlls/localspl/localspl_main.c:
	localspl: Initialize pointers in struct PRINTPROVIDOR.

2008-02-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dc.c, dlls/gdi32/gdi_private.h:
	gdi32: DC_GetDCPtr and DC_ReleaseDCPtr are not longer used.

	* dlls/gdi32/palette.c:
	gdi32: Get rid of DC_GetDCPtr in the palette functions.

	* dlls/winex11.drv/palette.c:
	winex11: Add a critical section for the palette global variables instead of
	relying on the GDI lock.

	* dlls/gdi32/brush.c, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c:
	gdi32: Get rid of DC_GetDCPtr in the GDI object functions.

	* dlls/gdi32/font.c:
	gdi32: Get rid of DC_GetDCPtr in font functions.

	* dlls/gdi32/freetype.c:
	gdi32: Use a separate critical section for freetype locking instead of relying
	on the GDI lock.

	* dlls/gdi32/bitmap.c:
	gdi32: Avoid locking in BITMAP_CopyBitmap.

	* dlls/gdi32/bitmap.c:
	gdi32: Don't hold the GDI lock when calling DC_InitDC.

	* dlls/gdi32/brush.c, dlls/gdi32/dib.c, dlls/gdi32/font.c:
	gdi32: Get rid of a few more uses of DC_GetDCPtr.

	* dlls/gdi32/bitmap.c:
	gdi32: Avoid locking in CreateCompatibleBitmap.

2008-02-05  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/datetime.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: Call InitCommonControlsEx() if available, fall back to
	InitCommonControls() for the older controls, and skip the tests altogether
	for the newer ones.

2008-02-04  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix the domdoc test failures.

2008-02-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Recreate the contexts on _Reset.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move vertex buffer vbo creation to PreLoad.

2008-02-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Move the float format check to the big switch statement.

	* dlls/wined3d/directx.c:
	wined3d: Fix dxtn format check.
	We can't return WINED3D_OK straight away because we have yet to check
	the other flags, like sRGB correction.

	* dlls/wined3d/directx.c:
	wined3d: Correct the srgb reading check.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Accept the rejection of non-standard fixed function attrib types.

2008-02-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Be less picky about X8L8V8U8 precision.

	* dlls/d3d9/tests/visual.c:
	wined3d: Some texture transform test corrections.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/basetexture.c:
	wined3d: D3DTADDRESS_WRAP on conditional NP2 textures clamps to edge.
	Conditional NP2 textures in Direct3D do not support D3DTADDRESS_WRAP
	texture addressing. Similarly, GL_ARB_texture_rectangle textures do
	not support GL_REPEAT. This patch adds a test which shows that _WRAP
	clamps to the texture edge and implements that.

2008-01-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Update the gl rectangle when adjusting surface sizes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make Clear aware of the depth stencil sharing.

	* dlls/d3d9/tests/device.c:
	d3d9: Some drivers allow non-aligned offsets.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: De-Statify depth blit opengl resources.

2008-01-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/basetexture.c:
	wined3d: Mark textures dirty on UnLoad.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/texture.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move some UnLoad code to the base texture class.

	* dlls/wined3d/device.c:
	wined3d: Destroy FBOs and reset pointers on Reset.

	* dlls/wined3d/surface.c:
	wined3d: Unload implicit depth stencil buffers correctly.
	We have to destroy potential fbo renderbuffers, and make sure the
	texture is gone

	* dlls/wined3d/device.c:
	wined3d: Update the auto depth stencil buffer size on reset.

	* dlls/wined3d/device.c:
	wined3d: Beware of texture_rectangle NP2 support in Reset.

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Fix handling of the NULL separator when writing registry values.

2008-01-30  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Child fonts need to be scaled like their parent. With input from Dmitry
	Timoshkov.

2008-02-05  Francois Gouget <fgouget@free.fr>

	* dlls/d3dx8/d3dx8_main.c, include/d3dx8core.h:
	d3dx8: Fix the D3DXAssembleShaderFromFileA/W() prototypes.

	* include/Makefile.in, include/d3dx8.h, include/d3dx8core.h,
	  include/d3dx8mesh.h:
	d3dx8: Add the d3dx8mesh.h header and move the relevant function declarations
	there.
	Include d3dx8mesh.h in d3dx8.h and add some commented out ones as reminders.

	* include/d3dx8core.h:
	d3dx8: Make d3dx8core.h C++ compatible.

	* dlls/d3dx8/math.c, include/d3dx8math.h:
	d3dx8: Fix the D3DXMatrixAffineTransformation() prototype.

	* include/d3dx8core.h:
	d3dx8core.h: Remove some extraneous #include directives.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api for d3dx8.dll.

	* tools/winapi/win32.api:
	winapi_check: Assorted win32.api updates.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api for acledit.dll, ctapi32.dll and inetcomm.dll.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: __CxxDetectRethrow() and __CxxQueryExceptionSize() are implemented
	now so export them.

2008-02-04  Francois Gouget <fgouget@free.fr>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Add some API documentation stubs to make winapi_check happy.

	* dlls/ntdsapi/ntdsapi.c:
	ntdsapi: Add an API documentation stub to make winapi_check happy.

	* dlls/mapi32/util.c:
	mapi32: Add an API documentation stub to make winapi_check happy.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Reimplement MsiFormatRecord.

	* dlls/msi/tests/format.c:
	msi: Add more tests for MsiFormatRecord.

2008-02-04  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix potential memory leaks on error paths in RPCRT4_io_thread.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix potential memory leaks in RPCRT4_Receive.

2008-02-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c:
	wininet: Remove unneeded casts.

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Remove unneeded casts.

2008-02-04  Rob Shearman <rob@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add a FIXME for WS_SIO_GET_EXTENSION_FUNCTION_POINTER in WSAIoctl.

	* server/named_pipe.c:
	server: Always try return a named pipe server that is listening from
	find_available_server.
	We still fallback to an idle server, but this prevents a client from
	connecting to a named pipe server that isn't listening.

	* dlls/ntdll/file.c:
	ntdll: The FileMailslotSetInformation and FileCompletionInformation cases of
	NtSetInformationFile don't need the fd.
	So don't do an extra server call to get the fd to avoid a performance
	penalty and to make these cases work when an fd isn't available.

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_MORE_DATA if the size is too small.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return the string length even if the string is NULL.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Leave room for the NULL terminator.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_FILE_INVALID if the file has no version information.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_INVALID_PARAMETER if a string pointer is non-NULL and the
	size pointer is NULL.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Translate ERROR_BAD_PATHNAME into ERROR_FILE_NOT_FOUND.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Only convert output strings if the call succeeded.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetFileVersion.

	* dlls/msi/streams.c:
	msi: Implement the MSIMODIFY_ASSIGN action of MsiViewModify for the streams
	table.

	* dlls/msi/tests/db.c:
	msi: Add tests for using single quotes in an INSERT query.

	* dlls/version/info.c, dlls/version/tests/info.c:
	version: Return ERROR_RESOURCE_DATA_NOT_FOUND if the file does not have
	version information.

	* dlls/kernel32/tests/version.c:
	kernel32: Factor out the VerifyVersionInfo tests into their own function.

2008-02-03  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix the bezier arc path test on all Windows platforms.

	* dlls/comctl32/trackbar.c:
	comctl32: Proper fix redrawing the trackbar background with themes enabled.

2008-02-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/olecli32/olecli.h, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli_main.c:
	olecli: Remove duplicated typedefs/enums.
	Use a local header file for them.

2008-02-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/service.c:
	advapi32: Fix the failing QueryServiceConfig2 test on platforms win2k3 and vista.

2008-01-30  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/stringformat.c:
	gdiplus: Add GdipSetStringFormatFlags stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusenums.h:
	gdiplus: Add GdipSetPenMode stub.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/process.c:
	kernel32: Add RegisterApplicationRestart stub.

2008-01-28  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Use GCC's -Wtype-limits if possible.

2008-01-27  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/msc.c:
	dbghelp: Fixed the types we want to load at first.

	* dlls/riched20/editor.h, dlls/riched20/richole.c, dlls/riched20/run.c:
	riched20: Make use of the size info in REOBJECT if present.

	* dlls/riched20/editor.c:
	riched20: Start implementing object reading out RTF stream.

	* dlls/riched20/editor.c, dlls/riched20/rtf.h:
	riched20: Added support for image reading from RTF stream.

	* dlls/riched20/editor.c:
	riched20: Support a couple of paragraphs attributes out of RTF stream reading.

	* dlls/riched20/richole.c:
	riched20: Invert graphics when they are under the selection.

	* dlls/riched20/wrap.c:
	riched20: Correctly handle the wrapping when graphics are used.
	Get rid of infinite loops when run's width was larger than the global
	available width.

	* dlls/riched20/richole.c:
	riched20: Handle the zoom in OLE objects.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/paint.c, dlls/riched20/richole.c,
	  dlls/riched20/run.c, dlls/riched20/undo.c:
	riched20: Start handling OLE objects inside richedit.

2008-02-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Fix permissions of newly-created directories.

	* dlls/winex11.drv/bitmap.c:
	winex11: Remove unneeded check on bitmap depth, screen bpp cannot be 15.

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Abstract the depth->bpp conversion and use it in
	X11DRV_DIB_CreateDIBFromPixmap.

2008-02-02  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/wintab.c:
	winex11.drv: Remove unneeded casts.

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/type1afm.c:
	wineps.drv: Remove unneeded casts.

	* dlls/winemp3.acm/interface.c, dlls/winemp3.acm/layer2.c:
	winemp3.acm: Remove unneeded casts.

2008-02-01  Eric Pouech <eric.pouech@orange.fr>

	* programs/winedbg/gdbproxy.c:
	winedbg: Implemented the pXX request in gdb proxy.

2008-02-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Add zero value content length header to POST requests only.

2008-02-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c:
	wininet: Send HTTP/1.1 requests by default.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Make sure not to overwrite any caller supplied authorization header.

2008-01-31  Andre Wisplinghoff <andre@myhost.localdomain>

	* programs/winecfg/libraries.c:
	winecfg: Enable add button when choosing lib from combobox (Libraries tabsheet).

2008-02-01  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/xmldoc.c, dlls/msxml3/xmldoc.c:
	msxml3: Correct createElement return value for an invalid type.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected Entity Reference Test.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Validated attribute name.

2008-02-01  Bang Jun-young <junyoung@mogua.com>

	* dlls/riched20/writer.c:
	riched20: Include wine/port.h for vsnprintf().

	* dlls/user32/menu.c, include/winuser.h:
	user32: Fix EndMenu() to match the PSDK.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Include wine/port.h for snprintf().

2008-02-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsio.c:
	mshtml: Update wine_url in nsIURI::SetPath.

2008-01-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Added more tests.

	* dlls/itss/tests/protocol.c:
	itss: Added BINDF_NEEDFILE test.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more protocol tests.

	* dlls/urlmon/http.c:
	urlmon: Correctly handle BINDF_NEEDFILE flag in http protocol.

	* dlls/urlmon/binding.c:
	urlmon: Added support for binding to IID_IUnknown storage (cache file).

	* dlls/urlmon/binding.c:
	urlmon: Added BINDSTATUS_CACHEFILENAMEAVAILABLE support.

	* dlls/urlmon/binding.c:
	urlmon: Don't create stgmed_obj for binding to object.

	* dlls/urlmon/binding.c:
	urlmon: Abstract ProtocolStream object.

	* dlls/urlmon/binding.c:
	urlmon: Separate buffer from stream object.

	* dlls/mshtml/tests/protocol.c:
	mshtml: Added more about protocol tests.

	* dlls/urlmon/binding.c:
	urlmon: Return better error results.

	* dlls/urlmon/tests/url.c:
	urlmon: Fixed tests.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.c, include/urlmon.idl:
	urlmon: Added CopyStgMedium implementation.

2008-01-31  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Get the background colour in ANIMATE_PaintFrame, instead of just
	in WM_PAINT.
	This fixes the rendering of transparent animations when using a
	background thread.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Fix memory leaks in the rpc tests.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: HTTP_Connect should fail if a NULL or empty hostname is passed in.
	Add tests for these circumstances.

	* dlls/ole32/Makefile.in, dlls/ole32/moniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c, dlls/ole32/pointermoniker.c,
	  dlls/ole32/regsvr.c, dlls/ole32/tests/moniker.c:
	ole32: Add pointer moniker implementation.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for CreatePointerMoniker.

	* dlls/oleaut32/tests/safearray.c:
	oleaut32: Fix some memory leaks in the safearray tests.

	* tools/wine.inf:
	wine.inf: Make UI effects default to on.
	This makes SPI_GETUIEFFECTS return TRUE by default.

	* dlls/advapi32/service.c:
	advapi32: Fix the size calculation in StartServiceW.
	Calculating an open-ended structure using sizeof doesn't yield an
	accurate size because of alignment.

	* dlls/comctl32/animate.c:
	comctl32: In certain circumstances, native comctl32's animation control accepts
	negative start positions for the ACM_PLAY message.
	These circumstances seems to be after a seek is performed, but we play
	it safe and allow negative start positions to be treated as zero always.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix a leak of bmi in OLEPictureImpl_LoadGif.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix some reference count leaks in the tmarshal test.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix some incorrect checks in RPCRT4_Receive.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix a memory leak in the olefont tests.

	* dlls/oleaut32/olefont.c:
	oleaut32: Fix a leak of a typelib object in OLEFontImpl_GetTypeInfo.

	* dlls/ole32/moniker.c, dlls/ole32/ole32.spec:
	ole32: Add a stub implementation of CreatePointerMoniker.

	* dlls/mapi32/mapi32.spec, dlls/mapi32/util.c:
	mapi32: Add a stub implementation of HrQueryAllRows@24.

2008-01-27  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/Makefile.in, dlls/dbghelp/minidump.c:
	dbghelp: Store the PE version information in module block.

	* dlls/dbghelp/minidump.c:
	dbghelp: Removed double assignment of checksum.

	* dlls/dbghelp/minidump.c:
	dbghelp: Fixed the suspend count when creating a minidump in the middle of
	an exception.

	* dlls/dbghelp/minidump.c:
	dbghelp: Return the size of each directory instead of passing a pointer to it.

2008-01-31  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user32/hook.c, dlls/user32/message.c, dlls/user32/user_private.h:
	user32: Remove duplicated get_hook_proc() function.

2008-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/ne_module.c:
	kernel32: LOADPARAMS16->showCmd can be NULL, do not crash in that case.

2008-01-30  Rob Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Output code for initialising and freeing full pointer translation tables.

	* tools/widl/parser.l:
	widl: Don't search for a import file name with a path in the include directories
	for compatibility with MIDL.

2008-01-29  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Ignore ATTR_LOCAL in create_msft_typeinfo.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Added comments about missing MIME filters.

	* dlls/hlink/hlink_main.c:
	hlink: Don't prefer native version.
	It's no longer a stub DLL.

	* dlls/hlink/extserv.c, dlls/hlink/hlink_main.c:
	hlink: Added standard comments.

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkResolveMonikerForData tests.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkResolveMonikerForData implementation.

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkParseDisplayName tests.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkParseDisplayName implementation.

	* include/hlink.idl:
	hlink.idl: Added more function declarations.

	* dlls/hlink/extserv.c:
	hlink: Call AddRef of correct interface in ExtServUnk_QueryInterface.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added MkParseDisplayNameEx tests.

	* dlls/urlmon/session.c, dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added HlinkParseDisplayNameEx implementation.

2008-01-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* include/wintrust.h:
	include/wintrust.h: Add missing members to CRYPT_PROVIDER_DATA struct (fixes
	some wintrust tests on Windows).

2008-01-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/pdh/pdh_main.c:
	pdh: Fixed wrong condition.

	* dlls/atl/atl_ax.c:
	atl: Check for NULL.

	* programs/wordpad/registry.c:
	wordpad: Remove condition that never triggers.

2008-01-26  Francois Gouget <fgouget@codeweavers.com>

	* tools/winedump/lnk.c:
	winedump: Add support for dumping SZ_LINK and SPECIAL_FOLDER data blocks.

	* tools/winedump/lnk.c:
	winedump: Switch the block dumping code to be block-oriented, rather then flag
	oriented, so it is resilient to order changes.

	* tools/winedump/lnk.c:
	winedump: Dump the raw data when finding an unknown block in an lnk file.

	* tools/winedump/lnk.c:
	winedump: Track unknown lnk flags and dump them.

	* tools/winedump/lnk.c:
	winedump: Use the standard SLDF_XXX flag names instead of inventing new
	ones. Add the missing flags.

2008-01-26  Francois Gouget <fgouget@free.fr>

	* dlls/user32/display.drv.spec:
	user32: Fix a typo in the StretchDIBits stub name.

2008-01-26  Francois Gouget <fgouget@codeweavers.com>

	* include/shlobj.h:
	shell32: Add some SLDF_XXX values, EXP_PROPERTYSTORAGE, and
	EXP_PROPERTYSTORAGE_SIG.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Fix a couple of copy/paste errors.

2008-01-25  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Fix the type of three loop variables.

2008-01-25  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix big memory leak in xCall.
	Call IRpcChannelBuffer_FreeBuffer to free the buffer and other resources
	allocated by IRpcChannelBuffer_GetBuffer and IRpcChannelBuffer_SendReceive.

	* dlls/secur32/dispatcher.c:
	secur32: Initialise more pointers in helper to NULL.
	This is to avoid calling HeapFree on random pointers when
	DeleteSecurityContext is called on a context that hasn't had a second
	InitializeSecurityContext called on it, which would otherwise intialise
	those pointers.

	* dlls/secur32/ntlm.c:
	secur32: Try to retrive credentials by using the credential manager to retrieve
	credentials saved for the target server in InitializeContextHandleW, if possible.

	* dlls/secur32/ntlm.c:
	secur32: If using cached credentials failed in InitializeSecurityContext then
	fail with SEC_E_NO_CREDENTIALS instead of carrying on with a blank password.

	* dlls/secur32/ntlm.c:
	secur32: Move the detection of NULL credentials from AcquireCredentialsHandle
	to InitializeSecurityContext.
	Only use cached credentials if the credentials were NULL. Don't pass a
	domain into ntlm_auth when using cached credentials as
	ntlm_auth/winbindd should be able to figure that out.

2008-01-25  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.54.

----------------------------------------------------------------
2008-01-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Remove an incorrect FIXME.

2008-01-25  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Accomodate XGetWindowProperty returning an actual format of
	something other than 32 for the TARGETS property.
	We shouldn't care what format the property was set with, as long as we
	trust that the property is an atom type.

2008-01-25  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/advapi32/tests/cred.c:
	advapi32: Fix some cred test failures on Vista and prevent it crashing.

2008-01-24  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Vista returns UNICODE_NOCHAR if a character does not exist.

	* dlls/user32/tests/edit.c:
	user32: Make the edit tests pass on Vista.

2008-01-24  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Pass the server name into InitializeSecurityContextW.

	* dlls/ntdsapi/Makefile.in, dlls/ntdsapi/ntdsapi.c,
	  dlls/ntdsapi/tests/ntdsapi.c:
	ntdsapi: Implement DsMakeSpnW.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntdsapi/tests/Makefile.in, dlls/ntdsapi/tests/ntdsapi.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	ntdsapi: Add tests for DsMakeSpnW.

2008-01-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shell32.spec:
	shell32: Add a LogoffWindowsDialog stub.

2008-01-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winedos/devices.c, dlls/winedos/dosmem.c, dlls/winedos/int21.c,
	  dlls/winedos/int2f.c, dlls/winedos/ioports.c, dlls/winedos/vga.c,
	  dlls/winedos/vxd.c:
	winedos: Remove unneeded casts.

2008-01-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Open .icm files only when enumerating color profiles.

	* dlls/mscms/profile.c:
	mscms: Use NT directory for storing color profiles.

2008-01-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resource.

2008-01-24  Andrey Esin <andrey@esin.name>

	* dlls/credui/credui.rc, dlls/credui/credui_Ru.rc:
	credui: Added Russian translation.

2008-01-23  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/tests/class.c:
	user32: Make the class tests pass on Vista.

	* dlls/user32/tests/clipboard.c:
	user32: Make the clipboard tests pass on Vista.

2008-01-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Check for managed mode in create_whole_window again now that it is
	called lazily.

2008-01-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Win9x returns a different last error.

2008-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/tests/service.c, dlls/kernel32/tests/environ.c,
	  dlls/wined3d/device.c:
	Avoid sizeof in traces.

2008-01-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* .gitignore, dlls/msxml3/Makefile.in, dlls/msxml3/msxml3_v1.idl,
	  dlls/msxml3/version.rc, include/msxml2.idl:
	gmsxml3: Added typelib support.

2008-01-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/source.c:
	msi/tests: Only use functions if they are implemented.

	* dlls/msi/tests/msi.c:
	msi/tests: Only use functions if they are implemented.

2008-01-23  Austin English <austinenglish@gmail.com>

	* dlls/comctl32/animate.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/imagelist.h,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/propsheet.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c, dlls/comctl32/updown.c:
	comctl32: Spelling fixes.

2008-01-23  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/typelib2.c:
	oleaut32: Use the symbolic name for TYPEFLAG_FDISPATCHABLE.

2008-01-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/uninstaller/No.rc:
	uninstaller: Fix Norwegian Bokmål resource.

	* programs/uninstaller/main.c:
	uninstaller: Disable Uninstall button when no items selected.

2008-01-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/state.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/device.c:
	wined3d: Remove unneeded casts.

2008-01-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/tests/http.c:
	wininet: Check if buffer has overflowed potentially.

2008-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/driver.c, dlls/user32/user_private.h, dlls/user32/win.c,
	  dlls/user32/winpos.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, include/win.h:
	user32: Moved the bulk of CreateWindow and SetWindowPos from the driver back
	into user32.

	* dlls/winex11.drv/dib.c:
	winex11: Catch DIB memory accesses that touch the last page beyond the DIB
	bits end.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	winex11: Check for need to make window managed when WS_VISIBLE is set outside
	of SetWindowPos.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Create the window data structure lazily, once the window is made
	visible.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Don't create a win_data structure for the root window in non-desktop
	mode.

2008-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/menu.c:
	user32: Menus should be top-most windows.

	* dlls/comctl32/tooltips.c:
	comctl32: Tooltips should be top-most windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  include/winuser.h, programs/explorer/systray.c:
	winex11: Export a function to dock a window into the system tray, and get rid
	of the WS_EX_TRAYWINDOW style.

	* dlls/winex11.drv/window.c:
	winex11: Remove obsolete code to set Z-order for child windows.

2008-01-23  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/crypt32/tests/encode.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/viewport.c, dlls/gdi32/printdrv.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/resource.c,
	  dlls/msxml3/domimpl.c, dlls/twain_32/README,
	  dlls/winealsa.drv/midi.c, dlls/winecoreaudio.drv/midi.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/resource.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wineoss.drv/midi.c,
	  tools/widl/typelib_struct.h, tools/wrc/parser.y:
	Assorted spelling fixes.

2008-01-23  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Return the state of the dialog's save checkbox to
	CredUIPromptForCredentials.

	* dlls/credui/credui_main.c:
	credui: The list should be the first parameter to the list_add_tail function.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Check the return value of RPCRT4_ClientAuthorize in RPCRT4_Send.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Pass the SPN input to RpcBindingSetAuthInfoA/W into
	InitializeSecurityContextW instead of AcquireCredentialsHandleA/W.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix the error handling in RpcBindingSetAuthInfoA/W when
	RpcAuthInfo_Create fails.
	Don't release the old auth info until we successfully have a new auth
	info and return failure to the caller if RpcAuthInfo_Create fails.

2008-01-23  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Expand environment variable references in the shortcut's
	WorkDir, Description and IconPath fields.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Test the expansion of indirect environment variable references.

2008-01-23  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add the trailing '\n' to an ok() call.

2008-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/input.c, dlls/winex11.drv/keyboard.c:
	user32: Make MapVirtualKeyEx(MAPVK_VK_TO_CHAR) behave more like in Windows.

2008-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Get the icon from the window in case it was changed before the whole
	window was created.

	* dlls/winex11.drv/window.c:
	winex11: Set icon hints on non-managed windows too, since they may become
	managed later on.

	* dlls/winex11.drv/window.c:
	winex11: Set hints for the existing window text when creating the whole window.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Apply the existing window region (if any) when creating the whole
	window.
	Move X11DRV_SetWindowRgn to window.c.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add a mapped flag to the window data instead of relying on WS_VISIBLE.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Move code around in X11DRV_SetWindowPos to reduce indentation levels.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Update the win data rectangles before doing anything else in
	SetWindowPos.

2008-01-22  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/Makefile.in, dlls/qmgr/factory.c, dlls/qmgr/qmgr.h:
	qmgr: Implement IClassFactory methods.

2008-01-23  Kai Blin <kai.blin@gmail.com>

	* dlls/gdi32/gdi32.spec:
	gdi32: Fix spec file to export the right symbols for GetGlyphOutline.

2008-01-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/msg.c:
	user32/tests: Run full test again on win95 and NT4.

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Make tests run on win9x/NT4 again.

2008-01-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Initialize decl.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Initialize CurrentHeader.

2008-01-22  Eric Pouech <eric.pouech@orange.fr>

	* programs/regedit/regproc.c:
	regedit: Warn about newest unicode export from native regedit.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Corrected the .spec definition for the printf functions family.

2008-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winebuild/spec16.c:
	winebuild: Add a couple of missing indentations in the generated asm files.

2008-01-22  Lei Zhang <thestig@google.com>

	* dlls/ddraw/regsvr.c:
	ddraw: Register the DirectDraw 7 Object.

2008-01-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Don't use texture_rectangle for paletted textures.

2008-01-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: Remove unneeded casts.

	* dlls/uxtheme/msstyles.c:
	uxtheme: Remove unneeded casts.

2008-01-22  Andrey Esin <andrey@esin.name>

	* dlls/wininet/wininet_Ru.rc:
	wininet: One addition to Russian translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Ru.rc:
	browseui: Russian translation.

2008-01-22  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement LookupAccountNameW for well-known groups.

	* dlls/advapi32/tests/security.c:
	advapi32: Add a test for LookupAccountNameA on a well-known group.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement SetEntriesInAclW.

	* dlls/ntdll/sec.c:
	ntdll: Fix the index check in RtlGetAce.
	The index is zero based so we should obviously be returning
	STATUS_INVALID_PARAMETER if the index is equal to the ACE count.

	* dlls/advapi32/tests/security.c:
	advapi32: Add more tests for SetEntriesInAcl.

2008-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c, programs/explorer/desktop.c:
	winex11: Leave it up to explorer to specify the correct size and position for
	the desktop.

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xinerama.c:
	winex11: Move resetting of the cursor clip rectangle into xinerama_init().

2008-01-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Move the window bits according to the valid rects instead of
	invalidating.

	* dlls/winex11.drv/winpos.c:
	winex11: Properly invalidate moved child windows instead of forcing
	SWP_NOCOPYBITS.
	Add a move_window_bits() function where the missing functionality of
	moving the window contents should go.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Make the client rect relative to the parent window for consistency
	with the server side.

	* dlls/winex11.drv/winpos.c:
	winex11: Abstract the server part of SetWindowPos into a separate function.

	* server/window.c:
	server: Invalidate the correct region when custom valid rects are specified.

	* dlls/winex11.drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/request.h, server/trace.c,
	  server/window.c:
	server: Add a separate request to set the window visible rect.

2008-01-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Initialize swapchain.

2008-01-21  Eric Pouech <eric.pouech@orange.fr>

	* dlls/ntdll/serial.c:
	ntdll: Fixed getting the RTS status from line, and now using sane default
	values for all (compilation/system) cases.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Really check that we get a template string before
	making use of it.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for RTTI types.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for thunks.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Corrected handling of non static member function
	modifiers.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for a couple of more calling
	conventions.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for cointerface.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Handling of void in template parameters' list.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Now correctly parsing the template forms.

2008-01-21  Paul Chitescu <paulc@voip.null.ro>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Semi-stub for LoadStringRCEx and LoadStringRC.

2008-01-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/icm.c:
	gdi32: Add tests for GetICMProfile and SetICMMode.

	* dlls/gdi32/icm.c, dlls/gdi32/palette.c:
	gdi32: Make GetICMProfile behave more like native. Rewrite ansi version as a
	wrapper and move color management functions to their own file.

	* dlls/gdi32/gdi32.spec:
	gdi32: Last parameter of GetICMProfile is an output parameter.

2008-01-21  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Don't get the HRESULT from the buffer if we get an RPC_S_CALL_FAILED
	status back from the runtime.
	The buffer might not contain any data and nowhere in our ole32 code
	passes HRESULTs in the buffer.

2008-01-21  Marcus Meissner <marcus@jet.franken.de>

	* programs/cmd/wcmdmain.c:
	cmd: Include <time.h> for time().

2008-01-22  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/attribute.c, dlls/msxml3/cdata.c, dlls/msxml3/comment.c,
	  dlls/msxml3/docfrag.c, dlls/msxml3/domdoc.c, dlls/msxml3/element.c,
	  dlls/msxml3/entityref.c, dlls/msxml3/pi.c, dlls/msxml3/text.c:
	msxml3: Return correct IDispatch Interface.

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/entityref.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMEntityReference interface.

2008-01-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dialog16.c, dlls/user32/edit.c, dlls/user32/exticon.c,
	  dlls/user32/msgbox.c, dlls/user32/sysparams.c, dlls/user32/win.c,
	  dlls/user32/wnd16.c:
	user32: Remove unneeded casts.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/combo.c,
	  dlls/user32/cursoricon.c, dlls/user32/dde_client.c,
	  dlls/user32/dde_server.c, dlls/user32/ddeml16.c:
	user32: Remove unneeded casts.

	* dlls/urlmon/umstream.c:
	urlmon: Remove unneeded cast.

2008-01-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/builtin.c:
	wineps.drv: Properly handle NULL LPLOGFONT in PSDRV_EnumDeviceFonts.

2008-01-21  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9 tests: Correct some typos.

2008-01-20  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Fix not released swapchain in some codepaths.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add test for D3DTBLEND_MODULATE.

	* dlls/ddraw/device.c, dlls/ddraw/executebuffer.c:
	ddraw: Fix handling of alpha with D3DTBLEND_MODULATE.

	* dlls/wined3d/state.c:
	wined3d: Change colorkey fixup for stage 0 alphaop / alphaarg.

2008-01-21  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Don't set BufferStart and BufferEnd in NdrStubCall2.
	The operations peformed by the stubless code should roughly match what
	operations MIDL outputs in code, and it doesn't do this.

2008-01-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/service.c:
	advapi32: Added some tests for QueryServiceConfig2A/W.

2008-01-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't fetch extended FPU context if there's no FPU context at all.

	* dlls/winex11.drv/window.c:
	winex11.drv: Only allocate wm hints if we have an X11 window.

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	winex11.drv: Fix handling of strange window sizes in CreateWindow, with tests.

	* dlls/user32/win.c, dlls/winex11.drv/window.c, server/window.c:
	user32,server: Set the initial window rectangles to 0,0-0,0.

2008-01-21  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Remove some unimplemented win9x-only spec entries.
	We're never going to implement the undocumented ones and we're moving
	more and more towards the architecture of the more recent versions of
	native rpcrt4.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Move the receiving of an individual fragment to a separate function.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement asynchronous RPC support.

2008-01-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/surface.c:
	wined3d: Removed deadcode.

2008-01-21  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/utf8.c:
	libwine: Properly increment source pointer for surrogates in wine_utf8_wcstombs.
	Spotted by Ken Thomases.

2008-01-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml3: Entity Reference nodes do not support attributes property.

2008-01-19  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/docfrag.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMDocumentFragment Interface.

2008-01-18  Andrey Esin <andrey@esin.name>

	* programs/write/Ru.rc, programs/write/rsrc.rc:
	write: Russian translation.

2008-01-18  Rob Shearman <rob@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Always treat the nCount variable in the EM_GETTEXTEX handler as a
	character count.
	Convert ex->cb into a character count before assigning it to nCount.
	Remove some dubious minus ones that would result in different character
	counts for the Unicode and ANSI paths.

	* dlls/riched20/editor.c:
	riched20: The wParam parameter to WM_GETTEXT contains the number of characters,
	not the number of bytes.
	Fix up some places in the WM_GETTEXT handler where it was assumed that
	it was a byte count.

2008-01-20  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/kernel32/process.c, include/config.h.in:
	kernel32: Use setproctitle where applicable to set the process name.
	Based on a patch by Kris Moore.

2008-01-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/format.c:
	msi: Add more MsiFormatRecord tests.

2008-01-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/riched20/style.c:
	riched20: Don't clear CFM_UNDERLINE flag when applying styles where it is set.

2008-01-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/registry.c:
	msi: Replaced msi_free() by LocalAlloc() since ConvertSidToStringSidW uses
	LocalAlloc().
	Spotted by Christoph von Wittich <Christoph@ApiViewer.de>.

	* dlls/gdi32/font.c:
	gdi32: Fix possible NULL ptr in TRACE.

2008-01-20  Hans Leidekker <hans@it.vu.nl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msvcr71/Makefile.in, dlls/msvcr71/msvcr71.c,
	  dlls/msvcr71/msvcr71.spec:
	msvcr71: Add an implementation that forwards to msvcrt.

	* dlls/msvcrt20/msvcrt20.spec, dlls/msvcrt40/msvcrt40.spec:
	msvcrt: _ftol returns a 64-bit value.

	* dlls/msvcrt20/msvcrt20.spec, dlls/msvcrt40/msvcrt40.spec,
	  dlls/msvcrtd/msvcrtd.spec:
	msvcrt: Fix _execv spec entries for the forwarding variants too.

2008-01-20  Christoph von Wittich <Christoph@ApiViewer.de>

	* dlls/msi/registry.c:
	msi: Fix process token leak.

2008-01-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Actually perform the fractional scaling test, make it pass under Wine.

2008-01-20  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Write out code for initialising out-only client context handles.

2008-01-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shlfolder.c, dlls/shell32/shv_item_cmenu.c:
	shell32: Remove unneeded casts.

	* dlls/shell32/recyclebin.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c:
	shell32: Remove unneeded casts.

	* dlls/shell32/autocomplete.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/changenotify.c, dlls/shell32/cpanelfolder.c,
	  dlls/shell32/dde.c, dlls/shell32/dialogs.c:
	shell32: Remove unneeded casts.

	* dlls/setupapi/devinst.c, dlls/setupapi/infparse.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/queue.c:
	setupapi: Remove unneeded casts.

2008-01-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Remove unneeded casts.

	* dlls/sane.ds/capability.c:
	sane.ds: Remove unneeded casts.

2008-01-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Store headers as BSTR.

	* dlls/shdocvw/navigate.c:
	shdocvw: Do navigation in message handler.

	* dlls/shdocvw/navigate.c:
	shdocvw: Delay creating URL moniker to bind_to_object call.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Use more flexible mechanism instead of WB_WM_NAVIGATE2.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Store URL in BindStatusCallback.

2008-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11.drv: Set the initial icon hints in set_initial_wm_hints().

2008-01-09  Austin English <austinenglish@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Spelling fixes.

2008-01-15  Austin English <austinenglish@gmail.com>

	* tools/widl/typegen.c, tools/widl/typelib_struct.h,
	  tools/winebuild/relay.c, tools/winedump/debug.c,
	  tools/winedump/msmangle.c, tools/winedump/symbol.c,
	  tools/winegcc/winegcc.c, tools/wmc/mcl.c, tools/wrc/genres.c,
	  tools/wrc/newstruc.c, tools/wrc/parser.h, tools/wrc/wrc.c,
	  tools/wrc/writeres.c:
	tools: Spelling fixes.

2008-01-16  Austin English <austinenglish@gmail.com>

	* dlls/advapi32/tests/registry.c, dlls/advpack/files.c,
	  dlls/advpack/reg.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/wavfile.c, dlls/browseui/progressdlg.c,
	  dlls/cabinet/fci.c, dlls/cabinet/tests/extract.c:
	Misc spelling fixes.

2008-01-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/handle.c, dlls/rsaenh/mpi.c, dlls/rsaenh/rsaenh.c:
	rsaenh: Remove unneeded casts.

2008-01-17  Eric van Beurden <ericvb@transgaming.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Prevent huge minidumps by ensuring the memory range is clamped.

	* dlls/dbghelp/path.c:
	dbghelp: Fix file searching to search only listed directories instead of the
	whole HD.

	* dlls/dbghelp/minidump.c:
	dbghelp: Some minidump corrections so that windbg can read our minidump files.

	* dlls/dbghelp/pe_module.c:
	dbghelp: Wrap TRACE strings using the debugstr functions and update some
	type casting.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Return TRUE in SymInitializeW if process is already initialized and
	add an ERR to SymCleanup.

	* include/wine/mscvpdb.h:
	dbghelp: Update some mscvpdb.h definitions and descriptions.

2008-01-18  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c:
	widl: Use the real argument names in the C method macros.

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't try to restore extended fpu context if not supported.
	Remove an extra fpu context save left over from testing.

2008-01-18  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/domimpl.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMImplementation Interface.

	* dlls/msxml3/node.c:
	msxml3: Attribute nodes are not typed.

2008-01-17  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/kernel_main.c:
	kernel32: Initialise the top 16-bit stack frame to zero.

2008-01-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Actually test strings that expand to something bigger than
	their original size.

2008-01-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xinerama.c:
	winex11.drv: Moved initialization of screen_width/height to xinerama_init to
	do it inside the x11 lock.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Don't create a win_data structure for the desktop window, except
	in the process that owns it.
	Handle desktop size changes by sending a message to the desktop owner.

2008-01-17  Rob Shearman <rob@codeweavers.com>

	* dlls/iphlpapi/iphlpapi.spec, dlls/iphlpapi/iphlpapi_main.c,
	  include/iphlpapi.h:
	iphlpapi: Implement GetBestInterfaceEx.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Only initialise the context handle to NULL in NdrContextHandleUnmarshall
	if it is an out-only or return one.
	Fix the indentation and add tracing of the context handle flags.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add an exception handler for stubless object proxies.

2008-01-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Don't fetch the atom for a null device type.

2008-01-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/virtual.c:
	ntdll: Do not perform base relocation if an image is not a DLL.

2008-01-16  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/richole.c, dlls/riched20/style.c:
	riched20: Remove unneeded casts.

	* dlls/quartz/systemclock.c:
	quartz: Remove unneeded casts.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Remove unneeded casts.

2008-01-16  Marcus Meissner <marcus@jet.franken.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wmi/Makefile.in, dlls/wmi/wmi.spec:
	wmi: Initial version of wmi.dll.

	* dlls/urlmon/tests/url.c:
	urlmon: Skip pstgmed related tests if NULL.

2008-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/process.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/thread.c, server/thread.h,
	  server/trace.c:
	server: Don't force the process affinity to 1, leave it up to the client.

	* dlls/kernel32/process.c:
	kernel32: Fix the system affinity returned by GetProcessAffinityMask.

	* tools/winebuild/spec32.c:
	winebuild: Don't try to use the .init section on Mac OS.

2008-01-11  Sin-ta Hsiea <ibmibmibm.tw@gmail.com>

	* programs/winecfg/Zh.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Traditional Chinese translation.

	* dlls/gdi32/freetype.c:
	gdi32: Fix Traditional Chinese font mapping to "PMingLiU", "MingLiU".

2008-01-16  Alexandre Julliard <julliard@winehq.org>

	* programs/wineboot/Makefile.in:
	wineboot: Delay import the dlls that are not needed for the default
	initialisation.

	* dlls/kernel32/process.c, programs/wineboot/wineboot.c:
	wineboot: Add a --init option used when launched automatically at startup.
	Don't execute Run entries in that case.

	* dlls/winmm/lolvldrv.c:
	winmm: Load only one sound driver at a time.

2008-01-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Check for overflows.

2008-01-14  Christopher Berner <raccoonone@procyongames.com>

	* dlls/user32/scroll.c:
	user32: Fixed off by one scroll bar pixels.

2008-01-16  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec32.c:
	winebuild: Reserve the space for the PE header in the .init section.

2008-01-16  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/animate.c:
	comctl32: Support seeking to a particular frame.
	In this case just draw the frame without starting the timer thread of
	setting a timer and without sending any notifications.

	* dlls/comctl32/animate.c:
	comctl32: Keep on displaying the last frame of the animation after the animation
	has stopped.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for RPC_FC_P_DEREF|RPC_FC_P_ONSTACK pointers.

2008-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Fix values returned for IOCTL_STORAGE_GET_DEVICE_NUMBER on
	emulated disks.

	* dlls/ntdll/cdrom.c, dlls/ntdll/file.c:
	ntdll: Fall back to a server device ioctl for files with no associated fd.

2008-01-16  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/comctl32/listview.c,
	  dlls/comctl32/tests/datetime.c, dlls/comctl32/treeview.c,
	  dlls/d3d9/tests/visual.c, dlls/dbghelp/stabs.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/dmstyle/style.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplayx_queue.h,
	  dlls/gdi32/bidi.c, dlls/gdi32/dib.c, dlls/gdi32/metafile.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/locale.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/nsservice.c, dlls/msi/tests/db.c,
	  dlls/msxml3/attribute.c, dlls/msxml3/cdata.c, dlls/msxml3/comment.c,
	  dlls/msxml3/pi.c, dlls/ntdll/serial.c, dlls/odbc32/proxyodbc.c,
	  dlls/oleaut32/tests/vartype.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/variant.c, dlls/qcap/dllsetup.c, dlls/qcap/dllsetup.h,
	  dlls/setupapi/stringtable.c, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/iconcache.c, dlls/shell32/pidl.c, dlls/shell32/pidl.h,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_netplaces.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfolder.c, dlls/shell32/shlview.c,
	  dlls/shell32/trash.c, dlls/shlwapi/url.c, dlls/user32/comm16.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/defdlg.c, dlls/user32/mdi.c, dlls/user32/tests/dialog.c,
	  dlls/uxtheme/msstyles.c, dlls/uxtheme/tests/system.c,
	  dlls/winealsa.drv/alsa.c, dlls/wineesd.drv/audio.c,
	  dlls/wineoss.drv/audio.h, dlls/wineoss.drv/midi.c,
	  dlls/winex11.drv/wintab.c, dlls/wininet/tests/url.c,
	  dlls/ws2_32/socket.c, include/mmsystem.h,
	  include/wine/rpcss_shared.h, include/wine/wingdi16.h,
	  include/winternl.h, libs/wpp/wpp.c, libs/wpp/wpp_private.h,
	  programs/cmd/batch.c, programs/cmd/wcmdmain.c,
	  programs/taskmgr/graphctl.c, programs/winhelp/hlpfile.c:
	Assorted spelling fixes.

	* dlls/kernel32/tests/sync.c:
	kernel32/tests: Small spelling fix in a parameter name.

	* include/setupapi.h, include/windns.h:
	include: Document some Microsoft spelling mistakes so we know they are not to
	be fixed.

	* dlls/gdi32/tests/generated.c, dlls/kernel32/tests/generated.c,
	  dlls/ntdll/tests/generated.c, dlls/rpcrt4/tests/generated.c,
	  dlls/shell32/tests/generated.c, dlls/shlwapi/tests/generated.c,
	  dlls/urlmon/tests/generated.c, dlls/user32/tests/generated.c,
	  tools/winapi/winapi_test:
	Fix spelling error in the generated conformance test files.

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/gdi32/painting.c:
	gdi32: Small wording tweaks in comments.

2008-01-13  Tony Wasserka <tony.wasserka@freenet.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/d3dx9_36.spec,
	  dlls/d3dx9_36/d3dx9_36_main.c:
	d3dx9: Start implementation of d3dx9_36.

2008-01-16  James Hawkins <truiken@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/propsys/Makefile.in, dlls/propsys/propsys.spec,
	  dlls/propsys/propsys_main.c:
	propsys: Add a stub implementation of propsys.dll.

2008-01-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mshtml/olecmd.c:
	mshtml: Check for This->frame.

2008-01-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Allocate cache for face enumeration data only when necessary.

2008-01-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: dest_path refers to the directory prefix, not the entire file path.

2008-01-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement get_nodeTypeString.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement put_text.

2008-01-15  Andrey Esin <andrey@esin.name>

	* programs/regedit/Ru.rc:
	regedit: Update Russian translation.

	* programs/wordpad/Ru.rc:
	wordpad: Corrections in Russian translation.

2008-01-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/psapi/psapi_main.c:
	psapi: Remove unneeded cast.

	* dlls/qcap/capturegraph.c, dlls/qcap/v4l.c:
	qcap: Remove unneeded casts.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/safearray.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib16.c:
	oleaut32: Remove unneeded casts.

2008-01-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/mscoree_main.c:
	mscoree: Fix memory leak.

2008-01-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the setting of retval_ptr outside of any particular stub phase
	in stub_do_args and stub_do_old_args.
	After the change in order of phases it was no longer being set in the
	last phase and so caused all stubless functions to appear to have no
	return value.

2008-01-15  Juan Lang <juan.lang@gmail.com>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Don't return uninitialized stream.

2008-01-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Restore typecast that is really needed.

	* dlls/ntdll/signal_i386.c:
	ntdll: Mac OS support for saving and restoring the extended FPU context on
	exceptions.

	* dlls/ntdll/signal_i386.c:
	ntdll: Linux support for saving and restoring the extended FPU context on
	exceptions.

	* dlls/ntdll/thread.c:
	ntdll: Copy extended registers too in copy_context().

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Avoid size_t in traces.

2008-01-15  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Partially implement ServerRpcChannelBuffer_GetDestCtx.

2008-01-14  Andrej Sinicyn <Andrej4000@gmx.de>

	* programs/wordpad/De.rc:
	wordpad: Update German strings and correct shortcuts to match XP wordpad.

2008-01-14  Andrey Esin <andrey@esin.name>

	* programs/wordpad/Ru.rc:
	wordpad: Adding to Russian translation.

2008-01-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Allow NULL networkaddr and endpoint in rpcrt4_np_get_top_of_tower.
	Add tests for this.

2008-01-14  Allan Tong <actong88@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set swapchain container before flagging front buffer with
	SFLAG_INDRAWABLE.

2008-01-11  Dan Kegel <dank@kegel.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix AddFontResource behavior with relative paths.

2008-01-11  Jonathan Ernst <jonathan@ernstfamily.ch>

	* loader/wine.fr.man.in:
	loader: Updated French man page.

2008-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Do not allow to create too large device dependent bitmaps like Windows
	does.

2008-01-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: FindFirstVolumeA is not available on win98.

2008-01-15  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c, server/trace.c:
	server: Take into account the extended registers part of the i386 context.

2008-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c,
	  dlls/winex11.drv/xfont.c:
	gdi32: Add a test for undocumented EnumFontFamiliesEx(NULL), make it pass
	under Wine.

2008-01-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ole32/clipboard.c, dlls/ole32/git.c, dlls/ole32/ole16.c,
	  dlls/ole32/ole2.c, dlls/ole32/stg_prop.c, dlls/ole32/storage32.c:
	ole32: Remove unneeded casts.

2008-01-14  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/main.c:
	crypt32: Fix race condition in loading default provider.

	* dlls/crypt32/main.c:
	crypt32: Don't release default crypto provider on process shutdown.

2008-01-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/crypt.c:
	wintrust: Don't expect ImageGetCertificateData to succeed when Certificate
	is NULL.

2008-01-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Call StatusTextChange in set_status_text.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Call WindowSetResizable in put_Resizable.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Call OnFullScreen in put_FullScreen.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added DWebBrowserEvents2 test.

2008-01-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/riched20/editor.c:
	riched20: Include selection bar size in POSFROMCHAR.

2008-01-14  Andrey Esin <andrey@esin.name>

	* dlls/shell32/shell32_Ru.rc:
	shell32: Update Russian translation.

2008-01-13  Andrey Esin <andrey@esin.name>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ru.rc:
	wineboot: Russian translation.

2008-01-12  Pablo Spallanzani <pspallanz@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix texture coordinate calculation in surface_blt_to_drawable.

2008-01-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/toolhelp.c, server/process.c:
	server: Enumerate process in reverse.

2008-01-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected getAttribute to return current value and assign output var.

	* dlls/msxml3/domdoc.c:
	msxml3: Implement GetClassID for XMLDocument IPersistStream interface.

	* dlls/msxml3/Makefile.in, dlls/msxml3/cdata.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implemented IXMLDOMCDATASection COM Object.

	* dlls/msxml3/node.c:
	msxml3: Correct get_attributes for CDATA Section.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement get_dataType.

2008-01-13  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/output.c:
	winedump: Use a switch in the generated DllMain().

	* tools/winedump/output.c:
	winedump: Use the DEFINE_THISCALL_WRAPPER macro instead of the GET_THIS macro
	for functions with __thiscall calling convention.
	Wine doesn't use GET_THIS but DEFINE_THISCALL_WRAPPER.

	* tools/winedump/output.c:
	winedump: Do not create a header file when not generating skeleton code.
	The header file generated with "winedump spec" without the "-c" option
	just includes other headers.

2008-01-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c:
	user32: Don't inherit stdin/stdout handles in explorer.

	* dlls/kernel32/process.c:
	kernel32: Don't inherit stdin/stdout handles in wineboot.

	* dlls/kernel32/process.c:
	kernel32: Close the stdio handles when creating a detached process.

2008-01-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/print.c,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Add basic ruler.

2008-01-13  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/print.c:
	wordpad: Fix width when text break = margins.

2008-01-14  Rob Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c, dlls/mlang/mlang.spec:
	mlang: Implement Rfc1766ToLcidW.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: The initialisation of [out] variables in the stubless code must be
	after the unmarshaling of [in] and [in, out] variables has been completed.
	This is because the size of an [out] variable could depend on a
	conformance value stored in an unmarshalled [in] or [in,out] variable.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle complex arrays in calc_arg_size.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the calculation of element sizes for complex arrays by using a new
	function ComplexStructSize that doesn't touch the buffer to calculate the size.
	Otherwise, this would fail on arrays with a conformance or variance of zero.

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec:
	winhttp: Add a stub for WinHttpOpen.

2008-01-12  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/kernel32/snoop16.c:
	kernel32: Fix type of a loop variable in SNOOP16_Entry().

	* dlls/wininet/http.c:
	wininet: Fix type of a loop variable in HTTP_BuildHeaderRequestStr().

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Clear the constant list before finding constants.
	shader_get_registers_used is delayed until compile time for some 1.x
	shaders, mostly to wait for the right vertex declaration to be
	set. This means that on a recompile it will be run again, adding
	another instance of each local constant, which in turn causes compile
	errors because of constant redeclaration. Just purging the lists
	before finding the constants is a simple and reliable solution.

	* dlls/wined3d/device.c:
	wined3d: Destroy opengl shaders on reset.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Destroy arb shaders on shader destroy.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Reset the shader state on shader_*_destroy.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of shaders.

	* dlls/wined3d/device.c:
	wined3d: Unload all resources on Reset.

2008-01-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d9: Reject IDirect3DDevice9::Reset with active default pool resources.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/volumetexture.c:
	wined3d: Implement VolumeTexture::UnLoad.

	* dlls/wined3d/cubetexture.c:
	wined3d: Implement IWineD3DCubeTexture::UnLoad.

	* dlls/wined3d/texture.c:
	wined3d: Implement IWineD3DTexture::UnLoad.

	* dlls/wined3d/volume.c:
	wined3d: Implement IWineD3DVolume::UnLoad.

2008-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/indexbuffer.c:
	wined3d: Implement IWineD3DIndexBuffer::UnLoad.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Implement IWineD3DVertexBuffer::UnLoad.

2008-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::UnLoad.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Add a new IWineD3DResource::UnLoad method.

2008-01-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_epmap.c:
	rpcrt4: Add traces to the start of TowerConstruct and TowerExplode.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't print fixmes for NDR types without a freeing function.
	Not all types have a freeing function.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add support for calculating the memory size of complex types with
	embedded non-conformant strings.

	* dlls/rpcrt4/ndr_contexthandle.c:
	rpcrt4: Allocate a context handle if a NULL GUID is being unmarshalled.

2008-01-13  Eric Pouech <eric.pouech@orange.fr>

	* dlls/ole32/datacache.c:
	ole32: Fixed datacache object so that we can retrieve meaningful information.

	* programs/winedbg/be_i386.c, programs/winedbg/debugger.h,
	  programs/winedbg/info.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/tgt_module.c:
	winedbg: Added a way to support differently selector information depending on
	current target.

	* programs/winedbg/tgt_minidump.c:
	winedbg: Workaround broken minidumps with invalid 32->64 address conversion.

	* programs/winedbg/stack.c:
	winedbg: Fixed bt all so that current process/thread isn't lost.

	* dlls/dbghelp/minidump.c:
	dbghelp: In Minidump, change a couple of internal names for consistency.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Silence superfluous message (spotted by Robert Reif).

2008-01-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Initialize more fields in GetEnumStructs.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Use public FS_xxxxxx defines.

2008-01-13  Dan Kegel <dank@kegel.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa.drv: Don't return garbage if can't find active channel.

	* dlls/urlmon/http.c:
	urlmon: Fix unlikely free of uninitialized pointer.

	* dlls/hlink/tests/hlink.c:
	hlink/tests: Skip tests if hlink couldn't be created.

	* dlls/gdiplus/tests/image.c:
	gdiplus/tests: Don't free if alloc failed.

2008-01-13  Hans Leidekker <hans@it.vu.nl>

	* LICENSE, include/wine/wine_common_ver.rc:
	license: Update copyright info for the new year.

2008-01-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Fix glBlendColorEXT for use on RivaTNT.

2008-01-12  Gregor Münch <greg87@online.de>

	* dlls/msxml3/text.c:
	msxml3: Fix typo.

2008-01-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/setupapi/devinst.c:
	setupapi: Fix dead code (Coverity).

	* dlls/msvfw32/drawdib.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Remove unneeded casts.

	* dlls/msxml3/nodemap.c:
	msxml3: Remove unneeded cast.

	* dlls/ntdll/critsection.c, dlls/ntdll/serial.c, dlls/ntdll/threadpool.c:
	ntdll: Remove unneeded casts.

	* dlls/msvcrt/dir.c, dlls/msvcrt/thread.c:
	msvcrt: Remove unneeded casts.

	* dlls/netapi32/access.c:
	netapi32: Remove unneeded cast.

2008-01-11  Rob Shearman <rob@codeweavers.com>

	* include/winhttp.h:
	include: Flesh out winhttp.h with more function declarations, typedefs and
	defines.

2008-01-11  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.53.

----------------------------------------------------------------
2008-01-11  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/pe_module.c:
	dbghelp: Implement ImageDirectoryEntryToDataEx.

2008-01-10  Austin English <austinenglish@gmail.com>

	* loader/wine.man.in:
	loader: Add disabling dlls to wine man page.

2008-01-11  Alexandre Julliard <julliard@winehq.org>

	* loader/wine.fr.man.in, server/wineserver.fr.man.in:
	Spelling fixes in French man pages.

2008-01-10  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, loader/Makefile.in, loader/wine.fr.man.in:
	loader: New French man page for wine.

	* server/wineserver.fr.man.in:
	server: Updated French man page.

2008-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Disable some default Gecko warnings.

	* dlls/mshtml/persist.c:
	mshtml: Use QueryService to get IHttpNegotiate in get_post_data_stream.

2008-01-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c:
	mshtml: Added more range tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed hr element handling in range object.

	* dlls/mshtml/nsembed.c:
	mshtml: Update focus information in WM_RESETFOCUS_HACK.

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Move nsChannel's content type initialization to async_open_doc_uri.

2008-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Split RPCRT4_process_packet out into separate functions.

2008-01-11  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: EnumResourceNamesW() returns false when we find the icon. So
	fix the corresponding misfiring trace.

	* dlls/shell32/shelllink.c:
	shell32: A lot of lnk files have extra data blocks at the end, although they
	don't seem to matter much. So drop the corresponding ERR() to a WARN().

2008-01-11  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tests/install.c:
	msi/tests: Tweaked so it does not look like things are misspelled.

2008-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Despite the MSDN claims, GetComputerName() does not return
	the required buffer size... except on Vista. So update the tests accordingly.

	* dlls/kernel32/environ.c, dlls/kernel32/tests/environ.c:
	kernel32/tests: Add more ExpandEnvironmentStringsA() tests.
	Document the observed ExpandEnvironmentStrings() behavior.

	* dlls/advapi32/registry.c:
	advapi32: RegGetValueW() must return the required buffer size in bytes,
	not WCHARs.

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: RegGetValue() should not return an error when expanding a string
	and given a NULL buffer and a zero size.
	Adjust the tests to cover this case for REG_EXPAND_SZ registry
	values. Improve the documentation a bit.

2008-01-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Move potential NULL ptr derefs into their if () case.

2008-01-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in test.

2008-01-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mscms/icc.c:
	mscms: Remove unneeded casts.

	* dlls/mapi32/prop.c:
	mapi32: Remove unneeded cast.

2008-01-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/user32/sysparams.c, dlls/user32/user32.spec:
	user32: Add SetProcessDPIAware stub.

2008-01-10  Aric Stewart <aric@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/small_fonts_jp.sfd:
	fonts: Add Japanese small font.

2008-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shdocvw/persist.c:
	shdocvw: Change return value for PersistMemory_Load.

2008-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Simplify GetEnumStructs.

2008-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix a GdiFont leak.

2008-01-10  Andrey Turkin <andrey.turkin@gmail.com>

	* programs/wineboot/wineboot.c:
	wineboot: Fix installation of SFP protected files.

2008-01-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Handle fClearDirty flag in IPersistStreamInit::Save.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in before_async_open if there is no client site.

2008-01-10  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/table.c:
	msi: Complete initializers.

2008-01-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add stubs for DllCanUnloadNow and DllGetClassObject.

2008-01-09  Austin English <austinenglish@gmail.com>

	* dlls/winedos/dma.c, dlls/winedos/dosmem.c, dlls/winedos/int10.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/vxd.c,
	  dlls/wineesd.drv/audio.c, dlls/winejoystick.drv/joystick.c:
	Spelling fixes.

2008-01-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/time.c:
	kernel32/tests: Skip not implemented functions.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Skip not implemented functions.

	* dlls/kernel32/tests/format_msg.c:
	kernel32/tests: Skip not implemented functions.

2008-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec, dlls/user32/win.c:
	user32: Add stub for GetLayeredWindowAttributes.

2008-01-09  Marcus Meissner <marcus@jet.franken.de>

	* server/registry.c:
	server: Remove superflous check (value->data is dereferenced before check).

2008-01-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/process.c:
	msvcrt: Remove strange condition which might lead to crash.

2008-01-09  Paul Chitescu <paulc@voip.null.ro>

	* dlls/advapi32/service.c:
	advapi32: Accept a NULL lpServiceStatus in ControlService.

2008-01-10  Paul Romanyszyn <pgr@arcelectronicsinc.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Filter change should not update filename.

2008-01-09  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/cmd/wcmdmain.c:
	cmd: Seed the random number generator.

2008-01-09  Lei Zhang <thestig@google.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Fix UrlEscapeA usage in MAPISendMail.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Fix a return value in UrlEscapeA.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Check more arguments to UrlEscapeA.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Check an argument to UrlEscapeA.

	* dlls/shlwapi/tests/url.c:
	shlwapi: Additional UrlEscapeA tests.

	* dlls/mapi32/sendmail.c:
	mapi32: Initialize several string buffers.

2008-01-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix the regression caused by the scaling font metrics patch.

2008-01-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Implemented IOCTL_DISK_GET_DRIVE_GEOMETRY and
	IOCTL_STORAGE_GET_DEVICE_NUMBER.

2008-01-09  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user32/tests/sysparams.c, dlls/winex11.drv/settings.c:
	winex11: Set last error on enumerating display settings.

2008-01-06  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/enhmetafile.c:
	gdi32: Tighten range checking in PlayEnhMetaFileRecord() and remove four
	useless checks.

2008-01-07  Divan Burger <divan.burger@gmail.com>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the colour boxes in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the selected colour box in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the colour graph's cross in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the luminance bar in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Clamp hue and saturation when clicking in colour graph in colour
	dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Fix bug where the colour graph's cross is not painted.

2008-01-08  Tony Wasserka <tony.wasserka@freenet.de>

	* include/Makefile.in, include/d3dx9.h, include/d3dx9core.h:
	include: Add d3dx9core.h.

2008-01-09  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Suppress IID_IRunnableObject FIXME since its not supported.

2008-01-08  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: get_attributes not supported for Attribute, CData, Comment, Doc,
	Doc Frag, Entity and Text Nodes.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: previousSibling not supported for Attribute, Document and Document
	Fragment Nodes.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: createProcessingInstruction: Check arguments are valid.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: lastChild not supported for CDATASection, Comment, PI and Text Nodes.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: nextSibling not supported for Attribute, Document and Document
	Fragment Nodes.

2008-01-09  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Fix a memory leak in the cstub tests.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix memory leaks in the ndr_marshall tests.

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: Fix memory leak in NdrFullPointerXlatFree.
	First of all, the code was freeing the wrong pointer (i.e. the pointer
	supplied by the caller of one of the NdrFullPointer* functions, not the
	PFULL_PTR_TO_REFID_ELEMENT. Second, the code wasn't following the Next
	link to the next entry in the list.

2008-01-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/delete.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/where.c:
	msi: Actually delete the row data instead of blanking it out.

2008-01-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Test committing a table with a removed row.

	* dlls/msi/tests/db.c, dlls/msi/update.c:
	msi: Handle markers in the WHERE section of an UPDATE query, with tests.

2008-01-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/heap.c, dlls/kernel32/toolhelp.c:
	kernel32: Remove unneeded casts.

2008-01-08  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/oleproxy.c, dlls/ole32/rpc.c:
	ole32: Fix some uses of SEEK_SET when STREAM_SEEK_SET should have been used
	instead.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix a leak of msg in RPCRT4_io_thread on the error paths.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement NdrMapCommAndFaultStatus.
	Add tests for this function.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use send on a socket instead of write as it's more portable.

2008-01-08  Lei Zhang <thestig@google.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Additional stub implementations.

2008-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Add support for scaling font metrics.

2008-01-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix a pixelshader recompilation check.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Detect geforce 7300 cards.

2008-01-08  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Improve error handling in RPCRT4_io_thread and remove commented-out code.

	* dlls/rpcrt4/rpc_assoc.c, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_server.c:
	rpcrt4: Bind to the server interface in I_RpcGetBuffer, not I_RpcSendReceive.
	The actual sending of the request is still done in I_RpcSendReceive though.
	Disallow the server from calling I_RpcSend and I_RpcReceive to allow
	simplification of the code. The releasing of the connection is now done
	in I_RpcFreeBuffer.
	Implement I_RpcNegotiateTransferSyntax.

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Remove some unused includes.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Set the fBufferValid flag in NdrProxyGetBuffer.
	Only call IRpcChannelBuffer_FreeBuffer in NdrProxyFreeBuffer if
	fBufferValid is set.

	* include/rpcdcep.h:
	include: Add prototype for I_RpcNegotiateTransferSyntax.

2008-01-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/crypt32/crypt32_Fr.rc:
	crypt32: Updated French translation.

2008-01-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/crypt32/crypt32_En.rc, dlls/crypt32/crypt32_No.rc,
	  dlls/crypt32/cryptres.h, dlls/crypt32/oid.c:
	crypt32: Implement CryptFindLocalizedName.

2008-01-07  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/edit.c:
	user32: Factor in EDIT_WM_EraseBkGnd().

2008-01-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c:
	msvcrt: Correct search strategy for the exec/spawn functions.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wexecv{, e, p, pe}.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wspawnl{, e, p, pe}.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wexecl{, e, p, pe}.

	* dlls/msvcrt/process.c:
	msvcrt: Rewrite _spawnve as a wrapper.

	* dlls/msvcrt/process.c:
	msvcrt: Implement _execl{e, pe}.

	* dlls/msvcrt/process.c:
	msvcrt: Rewrite _execl/_spawnl functions as wrappers around wide character
	implementations.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c:
	msvcrt: Implement _wpopen and forward _popen to it.

	* dlls/msvcrt/data.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Implement _wsystem and forward system to it. Respect COMSPEC environment
	variable.

2008-01-07  Andrey Esin <andrey@esin.name>

	* dlls/shell32/shell32_Ru.rc:
	shell32: Fixed typo.

2008-01-08  Andrey Esin <andrey@esin.name>

	* programs/wordpad/Ru.rc:
	wordpad: Russian translation.

2008-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Don't crash on win98.

2008-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: If lpstrFile points to a valid string use it as a default value for
	edit control.

	* dlls/gdi32/tests/font.c:
	gdi32: Add more tests for bitmap font metrics scaling.

	* dlls/msvcrt/data.c, dlls/msvcrt/environ.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec:
	msvcrt: Rename _environ to avoid a conflict on Solaris.

2008-01-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/print.c:
	wordpad: Draw margin lines in print preview.

2008-01-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Set IE's IVer and Build registries.

	* dlls/shdocvw/navigate.c:
	shdocvw: Fixed ref count leak.

2008-01-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/itss/chm_lib.c:
	itss: Remove unneeded casts.

2008-01-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/graphicspath.c:
	gdiplus: Remove unneeded casts.

2008-01-07  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Set paper size in printer dialog.

2008-01-06  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add test for rendering vertices with zero rhw.

2008-01-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/volume.c:
	kernel32: Fail more gracefully in GetVolumeInformation for fake drive devices.

2008-01-04  Eric Pouech <eric.pouech@orange.fr>

	* dlls/gdi32/metafile.c:
	gdi32: Break loop in MF_PlayMetaFile when META_EOF is found.

2008-01-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/volume.c:
	kernel32: Add missing HeapFree(). Found by Smatch.

2008-01-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Unify color conversion code.

2008-01-07  Lei Zhang <thestig@google.com>

	* dlls/msxml3/msxml_private.h:
	msxml: Fix compilation on machines without libxml2.

2008-01-07  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Set ReservedForRuntime to NULL in NdrClientInitializeNew.

	* dlls/rpcrt4/rpc_async.c, dlls/rpcrt4/tests/rpc_async.c:
	rpcrt4: Implement RpcAsyncInitializeHandle.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/rpc_async.c:
	rpcrt4: Add tests for some async RPC functions.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_async.c,
	  dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for asynchronous functions.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for I_RpcAsyncSetHandle and I_RpcAsyncAbortCall.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Call NdrCorrelationInitialize and NdrCorrelationFree from NdrClientCall2
	if new correlation descriptors have been specified.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for NdrCorrelationInitialize, NdrCorrelationPass and
	NdrCorrelationFree.

	* dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/ndr_stubless.h:
	rpcrt4: ndr_stubless.h should include ndrtypes.h as it depends on types
	it defines.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, include/rpcdcep.h:
	rpcrt4: Set the ProcNum of RPC_MESSAGE in NdrClientInitializeNew to include
	RPC_VALID_FLAGS_BIT.
	Mask out RPC_VALID_FLAGS_BIT from ProcNum when it is used to build a
	packet to send to the server.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for the RPC_MESSAGE members set by NdrClientInitializeNew.

	* dlls/ole32/rpc.c:
	ole32: Fix memory leaks caused by not calling the channel hook function when
	extension_size is zero.
	Instead free the allocated memory outside of the channel hook function.

	* dlls/ole32/oleproxy.c:
	ole32: Fix a memory leak.

	* dlls/ole32/rpc.c:
	ole32: Shortcut the RPC runtime for allocation of the message when processing
	the COM call by just sending a message to a window in the process.

	* dlls/ole32/rpc.c:
	ole32: Clear the RPC_FLAGS_VALID_BIT flag from the RPC_MESSAGE ProcNum when
	shortcutting the RPC runtime.

	* tools/widl/typegen.c:
	widl: Use symbolic names for some of the context handle attributes.

	* tools/widl/typegen.c:
	widl: Fix context handle "cannot be null" detection.
	The "cannot be null" attibute is applied to a parameter if and only if
	it is in-only.

2008-01-06  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix NtQueryValueKey for KeyValueBasicInformation.
	Add some tests for this.

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix the Data and Name returned by NtQueryValueKey for
	KeyValueFullInformation.

	* dlls/ntdll/tests/reg.c:
	ntdll: Add tests for the data and name returned by NtQueryValueKey.

2008-01-07  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	server: Output incorrectly-terminated strings in hex format.

	* server/registry.c:
	server: Make the registry parser more tolerant about malformed hex values.

	* server/registry.c, server/unicode.c, server/unicode.h:
	server: Accept utf-8 data as input in registry files.

	* programs/regedit/regproc.c:
	regedit: Fixed parsing of hex sequences.

2008-01-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Use software palette conversion for non-texturing operations.

2008-01-06  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Hide and show the frame window instead of the inner one.

2008-01-06  Dan Kegel <dank@kegel.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Expand short paths, else menu items aren't created for CSLU
	Toolkit.

2008-01-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c, include/dwmapi.h,
	  tools/winapi/win32.api:
	dwmapi: Add stub implementation for DwmSetWindowAttribute and
	DwmUnregisterThumbnail.

2008-01-04  Andre Wisplinghoff <andre.wisplinghoff@gmail.com>

	* programs/regedit/framewnd.c:
	regedit: Refresh tree view on import.

2008-01-07  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/request.c:
	server: Wait for the expiration of all the process SIGKILL timers before
	exiting the server.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Avoid using size_t in traces.

	* dlls/gdi32/tests/dc.c:
	gdi32/tests: Avoid using size_t in traces.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Print the correct size in an error message.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use unsigned int instead of size_t for the glsl mask size.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/vertexdeclaration.c, dlls/wined3d/device.c,
	  dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_interface.h:
	wined3d: Use unsigned int instead of size_t for element counts.

	* configure, configure.ac, dlls/odbc32/proxyodbc.c,
	  dlls/odbc32/proxyodbc.h, include/config.h.in:
	configure: Added a check for the soname of libodbc.

	* aclocal.m4, configure, configure.ac:
	configure: Add --without options for all optional dependencies.

2008-01-05  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/devenum/mediacatenum.c:
	devenum: Fix the implementation of IEnumMoniker::Skip(), to match the MSDN specs.

2008-01-04  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/dinput/dinput_main.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Silence incorrect warning and move it to a valid place.

2008-01-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Set orientation in printer dialog.

2007-12-31  Rico Schüller <kgbricola@web.de>

	* dlls/msi/dialog.c, dlls/msi/source.c:
	msi: Fix memory leaks (found by Smatch).

	* dlls/mshtml/install.c:
	mshtml: Fix memory leak (found by Smatch).

	* dlls/cabinet/cabinet_main.c:
	cabinet: Fix memory leak (found by Smatch).

2008-01-04  Austin English <austinenglish@gmail.com>

	* dlls/winemp3.acm/dct64_i386.c, dlls/winemp3.acm/decode_i386.c,
	  dlls/winemp3.acm/huffman.h, dlls/winemp3.acm/layer3.c,
	  dlls/winenas.drv/audio.c, dlls/wineoss.drv/audio.c,
	  dlls/wineoss.drv/midi.c, dlls/wineoss.drv/midipatch.c,
	  dlls/winex11.drv/bitblt.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/wintab.c, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xrender.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/tests/generated.c,
	  dlls/wininet/tests/url.c, dlls/wininet/urlcache.c:
	Spelling fixes.

2008-01-07  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Implement I_RpcMapWin32Status.
	Add a test for this function.

	* include/rpcdcep.h:
	include: I_RpcBindingInqTransportType and I_RpcMapWin32Status should be
	always defined.

	* tools/widl/typegen.c:
	widl: Fix the conditions under which array freeing code is output.
	It doesn't matter whether or not the array is declared as a pointer or
	is declared using array subscripts - the array is still allocated by the
	unmarshalling function and so needs to be freed.
	Fix a typo that caused varying arrays never to be freed.
	Fix another typo with the check for conformant arrays being performed
	twice, redundantly.

2008-01-07  Francois Gouget <fgouget@free.fr>

	* dlls/wintab32/context.c:
	wintab32: Add a trailing '\n' to a Wine trace.

	* dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Add the trailing '\n' to an ok() call.

2008-01-04  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/tests/imm32.c:
	imm32: ImmNotifyIMM with CPS_CANCEL fully clears the composition string. Also
	enable respective tests.

2008-01-06  Rob Shearman <rob@codeweavers.com>

	* include/wine/irot.idl:
	include: Add the strict_context_handle flag to the Irot interface.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Print fixme's if the serialize or no-serialize flags are set on a
	context handle being marshalled or unmarshalled.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Add support for strict context handles.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass the interface identifier to the lower-level context handle routines
	for context handles with the strict flag set.

	* tools/widl/typegen.c:
	widl: Output calls for the new versions of the marshalling and unmarshalling
	routines for server context handles.
	This needs to be done to match the call to NdrContextHandleInitialize
	and because we default to using strict context handles.

	* include/wine/rpcfc.h:
	include: Add defines for context handle flags to rpcfc.h.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix a typo in the class moniker tests.

	* dlls/ole32/moniker.c:
	ole32: get_moniker_for_progid_display_name should fallback to using IClassFactory
	to get IParseDisplayName if getting it directly fails.

2008-01-07  Alexandre Julliard <julliard@winehq.org>

	* programs/wineboot/wineboot.c:
	wineboot: Don't print errors for non-fatal problems.

2008-01-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Fix index to handle offset value = 0 correclty.

2008-01-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/nonclient.c:
	user32: Remove unused lpGrayMask array.

2008-01-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dxdiagn/container.c, dlls/dxdiagn/provider.c:
	dxdiagn: Remove unneeded casts.

	* dlls/gdi32/brush.c, dlls/gdi32/dib.c, dlls/gdi32/enhmetafile.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/metafile16.c, dlls/gdi32/printdrv.c:
	gdi32: Remove unneeded casts.

	* dlls/gphoto2.ds/capability.c:
	gphoto2.ds: Remove unneeded casts.

	* dlls/iccvid/iccvid.c:
	iccvid: Remove unneeded casts.

	* dlls/imm32/imm.c:
	imm32: Remove unneeded cast.

	* dlls/comdlg32/finddlg32.c:
	comdlg32: Remove unneeded cast.

2008-01-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Fix the length written to the pipe for the start message.

	* dlls/ntdll/file.c:
	ntdll: Return a proper Information field also when opening a server file object.

2008-01-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add stubs for SpoolerHasInitialized and SpoolerInit.

2008-01-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Create parent directories when duplicating files if they don't exist,
	with tests.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Pad the month and day to two digits.

	* dlls/msi/tests/install.c:
	msi: Remove an erroneous table.

2008-01-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Copy the temporary package when storing the installer.

	* dlls/msi/action.c:
	msi: Check the local package for existence when resolving the package source.

	* dlls/msi/files.c:
	msi: Directly download mi->source now that SourceDir points to the URL.

	* dlls/msi/action.c:
	msi: OriginalDatabase can be a URL so check for a forward slash too.

	* dlls/msi/action.c:
	msi: SourceDir is formed from the path of OriginalDatabase.

	* dlls/msi/package.c:
	msi: OriginalDatabase is the fully-expanded path to the original package if
	the package is local and installed from the command line.

	* dlls/msi/action.c:
	msi: Factor out msi_set_sourcedir_props.

	* dlls/msi/package.c:
	msi: If the package is a URL, the OriginalDatabase property should be the URL
	and the DATABASE property should be the path to the local temporary package.

	* dlls/msi/action.c:
	msi: WriteEnvironmentStrings should also write to REG_EXPAND_SZ strings.

	* dlls/msi/files.c:
	msi: Only read an internal package if the file to install is compressed.

2008-01-04  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c, dlls/riched20/run.c, dlls/riched20/style.c:
	richedit: Uniformly handle the bPitchAndFamily field out of CHARFORMAT.

	* dlls/riched20/paint.c:
	richedit: Check return of GetScrollInfo before accessing the returned structure.

	* dlls/riched20/editor.c:
	richedit: Initialize all the cursors at editor creation.

	* dlls/riched20/style.c:
	richedit: Only copy the charset when it's defined.

2008-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't set Buffer to NULL in I_RpcFreeBuffer.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add some tests for NdrGetBuffer and NdrFreeBuffer.

	* dlls/ole32/oleproxy.c:
	ole32: Clear the RPC_MESSAGE structure before using it.
	The RPC runtime could use some of the parameters, expecting them to be
	initialised.

	* dlls/kernel32/sync.c:
	kernel32: Implement RegisterWaitForSingleObjectEx.

	* programs/svchost/svchost.c:
	svchost: Add a FIXME for an undocumented function (SvchostPushServiceGlobals)
	that some native services expect to be called by native svchost.

	* dlls/ole32/rpc.c:
	ole32: Determine the destination for the COM call and initialise the
	necessary parameters in ClientRpcChannelBuffer_GetBuffer instead of
	ClientRpcChannelBuffer_SendReceive.
	The parameters are then freed in the matching
	ClientRpcChannelBuffer_FreeBuffer function.

	* tools/widl/typegen.c:
	widl: Make the offset of conformant string types point to the start of the
	conformant string format chars, not the pointer type.
	Otherwise, writing a type at top-level could cause the pointer format
	string to be used in non-top-level places which may cause memory
	corruption during freeing.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Update todos.

2008-01-04  Hans Leidekker <hans@it.vu.nl>

	* tools/wine.desktop:
	tools/wine.desktop: Add Dutch translation.

	* dlls/kernel32/nls/nlb.nls, dlls/kernel32/nls/nls.nls:
	kernel32: Add Surinam Dutch and Belgian Dutch translations of language group
	names.

	* dlls/kernel32/tests/change.c:
	kernel32: Fix two test failures on Win98 due to missing GetTempPathW.

	* dlls/wininet/http.c:
	wininet: Fix handling of host and referrer headers in HttpOpenRequest.

2008-01-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: Added tests for FindFirstVolume/FindNextVolume.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Implemented FindFirstVolume/FindNextVolume using the mount point
	manager.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Implemented the IOCTL_MOUNTMGR_QUERY_POINTS request.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Add devices to the MountedDevices registry key.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Create disk devices for all configured drives.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Create a hard disk device for PhysicalDrive0.

2008-01-01  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Add missing pitch in callback from EnumDisplayModes().

2007-12-29  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Convert newborn wineserver handle to kernel32 console handle.

2008-01-04  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mountmgr.sys/Makefile.in, dlls/mountmgr.sys/mountmgr.c,
	  dlls/mountmgr.sys/mountmgr.sys.spec:
	mountmgr.sys: Added initial stub for the mount point manager device.

2008-01-03  Austin English <austinenglish@gmail.com>

	* dlls/winmm/mci.c, dlls/winmm/winmm.c, dlls/wldap32/ber.c,
	  dlls/wldap32/control.c, dlls/ws2_32/async.c, dlls/ws2_32/socket.c,
	  dlls/ws2_32/socket16.c, dlls/ws2_32/tests/sock.c:
	More spelling fixes.

2008-01-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, server/Makefile.in, server/wineserver.fr.man.in:
	server: New French man page for wineserver.

2008-01-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/process.c, programs/wineboot/Makefile.in,
	  programs/wineboot/wineboot.c:
	kernel32: Launch wineboot on first startup of a wine process.

	* dlls/advapi32/service.c:
	advapi32: Don't wait for 20 seconds if a service fails to start.

2008-01-03  Lance Jackson <lancej@lancej.net>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd: Fix some unclosed file and registry handles.

2008-01-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/table.c:
	msi: Adjust the types of loop variables.

	* dlls/d3d9/device.c:
	d3d9: Fix type of loop variable.

	* dlls/d3d8/device.c:
	d3d8: Fix type of loop variable.

2008-01-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Remove redundant indentation levels in CreateFontIndirectA and
	CreateFontIndirectW.

2008-01-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/txtrange.c:
	mshtml: Don't assume that end_pos.node is text node in range_to_string.

	* dlls/mshtml/protocol.c:
	mshtml: Fixed Read implementations.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Invoke(DISPID_READYSTATE) implementation.

2008-01-04  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Tests for get_xml, createAttribute, CreateComment, setNamedItem.

	* dlls/msxml3/node.c:
	msxml3: Implement get_xml.

	* dlls/msxml3/node.c:
	msxml3: Cannot add an attribute with appendChild.

	* dlls/msxml3/node.c:
	msxml3: Add missing values for get_nodeName.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement createAttribute.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement createComment.

	* dlls/msxml3/msxml_private.h, dlls/msxml3/node.c, dlls/msxml3/nodemap.c:
	msxml3: Implement setNamedItem.

2008-01-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Call try_application_url after BindToObject failure.

	* dlls/shdocvw/navigate.c:
	shdocvw: Use BindToObject to load document (except for http, https and ftp
	protocols).

	* dlls/shdocvw/navigate.c:
	shdocvw.5: Move on_before_navigate2 call to navigate_mon.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnStopBinding implementation and use it in http_load_hack.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnProgress implementation.

	* dlls/shdocvw/navigate.c:
	shdocvw: Use OnObjectAvailable in http_load_hack.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnObjectAvailable implementation.

	* dlls/shdocvw/navigate.c:
	shdocvw: Always create BindStatusCallback object.

	* dlls/shdocvw/navigate.c:
	shdocvw: Return correct variables in GetBindInfo.

	* dlls/shdocvw/navigate.c:
	shdocvw: Return S_OK in OnStartBinding.

	* dlls/shdocvw/navigate.c:
	shdocvw: Store DocHost in BindStatusCallback.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added missing OnObjectAvailable function.

2008-01-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/driveui.c, programs/winecfg/theme.c,
	  programs/winecfg/winecfg.h:
	winecfg: Don't mix the strings in unix and windows locales.

2008-01-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Return E_INVALIDARG when value is NULL.

2008-01-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/http.c:
	wininet: Check return value of InternetCrackUrl when checking referrer host.

2008-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Print an error for unsupported shared writable mappings.

2008-01-02  Zach Goldberg <zgold@BlueSata.com>

	* include/cvconst.h, include/d3d8types.h, include/ddraw.h,
	  include/digitalv.h, include/dplobby.h, include/exdisp.idl,
	  include/mmsystem.h, include/winternl.h, include/wintrust.h:
	Fix some typos.

2008-01-02  Austin English <austinenglish@gmail.com>

	* dlls/avifil32/acmstream.c, dlls/gdi32/bidi.c, dlls/gdi32/painting.c,
	  dlls/localspl/localmon.c, dlls/oledlg/pastespl.c,
	  dlls/riched20/rtf.h, dlls/wineoss.drv/audio.h,
	  dlls/wineps.drv/type1afm.c, dlls/wldap32/parse.c:
	Spelling fixes.

2008-01-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/imm32/tests/Makefile.in, dlls/imm32/tests/imm32.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	imm32: Added some unit test cases.

2008-01-02  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: When updating a NULL HIMCC with NULL just return NULL. Handle the NULL
	HIMCC for the compstr when doing a ImmNotifyIME for a reset.

2008-01-02  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/helpers.c:
	msi: Remove an extraneous safety check and simplify generate_error_string().

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Remove two noop checks.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	wined3d: Removed dead FIXME checks.

2008-01-02  Rob Shearman <rob@codeweavers.com>

	* include/ws2tcpip.h:
	include: ws2tcpip.h should include winsock2.h.

2008-01-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Properly handle the surface location in stretch_rect_fbo().

	* dlls/wined3d/surface.c:
	wined3d: SFLAG_INTEXTURE is the same as SFLAG_INDRAWABLE for offscreen render
	targets when ORM_FBO is used.

	* dlls/wined3d/surface.c:
	wined3d: Bind the surface texture in LoadLocation().

	* dlls/wined3d/surface.c:
	wined3d: Move binding the texture and dirtifying the sampler to its own function
	from surface_download_data().

	* dlls/wined3d/cubetexture.c, dlls/wined3d/texture.c:
	wined3d: Call SetGlTextureDesc() from BindTexture() rather than from PreLoad().

	* dlls/wined3d/device.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/surface.c:
	wined3d: Call ActivateContext regardless of WINED3DCREATE_MULTITHREADED.

2008-01-02  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/request.c, server/request.h,
	  server/signal.c, server/trace.c:
	server: Redesign the server shutdown processing.
	System processes are now killed only after the server persistence
	delay has expired. New processes are not allowed to start during
	shutdown.

	* server/request.c:
	server: Use exponential backoff when waiting for wineserver -k to complete.

2008-01-01  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/thread.c:
	kernel32: Add tests for RegisterWaitForSingleObject and UnregisterWait.

	* dlls/kernel32/sync.c:
	kernel32: Implement RegisterWaitForSingleObject and UnregisterWait.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/threadpool.c, include/winternl.h:
	ntdll: Implement RtlRegisterWait, RtlDeregisterWait and RtlDeregisterWaitEx.

2008-01-01  Eric Pouech <eric.pouech@orange.fr>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/para.c:
	richedit: Simplify first para style handling by creating a context.

	* dlls/riched20/editor.c, dlls/riched20/paint.c:
	richedit: Don't force repaint while the redraw flag is off.

	* dlls/riched20/context.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/run.c,
	  dlls/riched20/style.c, dlls/riched20/wrap.c:
	richedit: Optimizations for the style selection.
	Use a ME_Context for style selection/unselection.
	Store the (x,y) dpi information for a given DC in the corresponding ME_Context
	structure.

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/wrap.c:
	richedit: Don't recreate the DC all the time, but use uniformely a ME_Context
	structure where needed.

	* dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/wrap.c:
	richedit: Move init code after some sanity checks to avoid unneeded computations.

	* dlls/riched20/caret.c:
	richedit: Small optimisation in ME_GetSelectionInsertStyle.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/wrap.c:
	richedit: Rewrote FindPixelPos so that it always return something.
	Made the function static as well.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Added support for intra-paragraph line space.

	* dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Added support for spaces above & below paragraphs.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Now drawing the paragraph borders (if any) from paraformat2.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Fix the para computation when zoom is used.

	* dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/wrap.c:
	richedit: Enforce usage of paraformat2 fields instead of homegrown ones for
	paragraphs.

	* dlls/riched20/para.c:
	richedit: Properly copying the paraformat2 structure for paragraphs.

	* dlls/riched20/para.c:
	richedit: Now dumping all fields from the paraformat2 structure.

	* dlls/riched20/para.c:
	richedit: Correctly initialize the paraformat structure.

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/paint.c:
	richedit: Simplified handling of background brush while painting.

	* dlls/riched20/paint.c:
	richedit: Now painting the newly supported underline types.

	* dlls/riched20/editor.c, dlls/riched20/para.c, dlls/riched20/run.c,
	  dlls/riched20/style.c:
	richedit: Extend the usage of underlinetype from charformat2 in richedit.

	* dlls/riched20/wrap.c:
	richedit: Don't allow recursive EN_REQUESTRESIZE notifications.

	* dlls/riched20/style.c:
	richedit: Correctly copy the pitch and family field.

	* dlls/riched20/para.c:
	richedit: Fully initialize the first style.

	* dlls/riched20/style.c:
	richedit: Correctly set the CFM_WEIGHT in charformat2.

	* dlls/riched20/style.c:
	richedit: Fixed a couple of charformatXXm structure conversions because of
	alignment issues.

	* dlls/riched20/editor.c:
	richedit: Added support for some message (key, mouse) filtering events.

2008-01-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Fix spec file entries for the execv functions.

	* dlls/gdi32/font.c, dlls/gdi32/gdi32.spec:
	gdi32: Add a stub implementation for RemoveFontMemResourceEx.

2008-01-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/helpers.c:
	msi: Remove an extraneous safety check and simplify deformat_string().

2008-01-02  Alexander Dorofeyev <alexd4@inbox.lv>

	* include/d3d.h:
	include/d3d.h: Fix method calling macros for IDirect3DTexture.

2008-01-01  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/user32.spec, dlls/user32/user_main.c:
	user32: Add a stub implementation of RegisterServicesProcess.

2007-12-31  Austin English <austinenglish@gmail.com>

	* dlls/msi/classes.c:
	msi: Fix several typos.

	* dlls/dplayx/dplayx_queue.h:
	dplayx: Fix a typo.

2007-12-30  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/dinput/joystick_linux.c:
	dinput: Improve TRACEs and WARNs.

	* dlls/msi/action.c, dlls/msi/database.c:
	msi: Correctly handle return value of msi_realloc.

2007-12-30  Reece H. Dunn <msclrhd@gmail.com>

	* include/gdiplustypes.h:
	gdiplus: Added the ProfileNotFound status code.

2008-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/context.c, dlls/crypt32/crl.c,
	  dlls/crypt32/crypt32_private.h:
	crypt32: Avoid casting away const from the context pointer.

2008-01-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/netapi32/access.c:
	netapi32: Remove two unused global variables.

2008-01-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/qcap/qcap_main.c:
	qcap: Complete initializers for g_cTemplates[].

	* dlls/wined3d/device.c:
	wined3d: Simplify three checks based on the unsignedness of variables.

	* dlls/ole32/compobj.c:
	ole32: Remove one noop check in CoWaitForMultipleHandles().

	* dlls/winspool.drv/tests/info.c:
	winspool: Adjust the typo of a loop variable in test_EnumForms().
	Simplify a test in test_GetPrinterDriver().

	* dlls/wined3d/cubetexture.c:
	wined3d: Remove four noop checks.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Simplify condition in test_vshader_input().

	* dlls/msi/table.c:
	msi: Simplify condition in TABLE_fetch_stream().

2007-12-31  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/d3d8/device.c:
	d3d8: Remove unneeded casts.

	* dlls/comctl32/propsheet.c, dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Remove unneeded casts.

	* dlls/dsound/capture.c, dlls/dsound/dsound.c, dlls/dsound/mixer.c:
	dsound: Remove unneeded casts.

	* dlls/dplayx/dplayx_global.c, dlls/dplayx/dplobby.c:
	dplayx: Remove unneeded casts.

	* dlls/ddraw/device.c, dlls/ddraw/viewport.c:
	ddraw: Remove unneeded casts.

	* dlls/dbghelp/minidump.c:
	dbghelp: Remove unneeded casts.

2007-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Added PutProperty implementation.

2007-12-31  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/datetime.c, dlls/gdiplus/graphics.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c,
	  dlls/oleaut32/tests/varformat.c, dlls/quartz/tests/misc.c:
	janitorial: Remove superfluous backslashes at end of lines.

2007-12-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Simplify condition in create_xcursor_cursor() based on the
	unsignedness of types.

	* dlls/kernel32/tests/alloc.c:
	kernel32/tests: Remove extraneous check.

	* programs/taskmgr/graph.c:
	taskmgr: Remove redundant out-of-domain checking which is already handled by
	PerfDataGetProcessorUsage() and PerfDataGetProcessorSystemUsage().

	* programs/winhelp/winhelp.c:
	winhelp: Remove a dead condition.

2007-12-30  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Fix regression of colorfill and texture to swapchain codepaths in
	BltOverride.

	* dlls/ddraw/texture.c:
	ddraw: Remove redundant iface<->impl casts in IDirect3DTextureImpl_Load.
	The implementation pointer retrieved from interface ptr wasn't being used for
	anything except retrieving same interface ptr back.

	* dlls/ddraw/texture.c:
	ddraw: Release palette interfaces.

	* dlls/wined3d/palette.c:
	wined3d: Free palette handle when destroying IWineD3DPaletteImpl.

2007-12-31  Jeremy White <jwhite@codeweavers.com>

	* dlls/winex11.drv/wintab.c:
	wintab32: If we could not find a stylus sort of device, we haven't found
	a tablet.

	* dlls/winex11.drv/wintab.c:
	wintab32: Add logic to detect specific tablet cursor types, use it to discard
	non tablet X devices.

2007-12-30  Jeremy White <jwhite@codeweavers.com>

	* dlls/wintab32/context.c, dlls/wintab32/wintab_internal.h:
	wintab32: Remove the unused and clearly broken FindOpenContext function.
	It's clear that someone left it in by accident; the TABLET_FindOpenContext
	is its clear successor.

	* dlls/winex11.drv/wintab.c, dlls/wintab32/context.c:
	wintab32: Add modest trace information for tablets.

2007-12-30  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/cert.c, dlls/crypt32/protectdata.c, dlls/crypt32/store.c,
	  dlls/crypt32/str.c:
	crypt32: Remove unneeded casts.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Remove unneeded cast.

2007-12-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_server.c:
	user32: Fix a spelling typo.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/factory.c:
	avifil32: Remove unneeded casts.

	* dlls/cabinet/fdi.c:
	cabinet: Remove unneeded cast.

	* dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/header.c, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/updown.c:
	comctl32: Remove unneeded casts.

	* dlls/advapi32/crypt_md4.c, dlls/advapi32/crypt_md5.c:
	advapi32: Remove unneeded casts.

2007-12-29  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add missing types to serialize/deserialize.

2007-12-29  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Set the DataLength field of the information field in NtQueryValueKey
	to how much data should be returned, not what was actually returned.

	* dlls/ntdll/tests/reg.c:
	ntdll: Add some tests for NtQueryValueKey.

2007-12-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/sysparams.c:
	user32: Fix type of loop variable.

	* dlls/wined3d/basetexture.c:
	wined3d: Remove noop check in IWineD3DBaseTextureImpl_Appl().

	* dlls/msi/delete.c:
	msi: Add missing initializer for delete_ops.

2007-12-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_netplaces.c:
	shell32: Fix messed up indentation.

	* dlls/winedos/interrupts.c:
	winedos: Don't emulate in 32-bit mode interrupts that don't have a specific
	handler.

2007-12-30  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Fix NdrGetBuffer to set the correct fields in the MIDL_STUB_MESSAGE
	structure.
	Fix NdrFreeBuffer to use the fBufferValid flag to determine whether or
	not I_RpcFreeBuffer needs to be called.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Make some variables in the tests static.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for NdrServerInitializeNew.

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Fix the MIDL_STUB_MESSAGE fields set by NdrServerInitializeNew.

	* dlls/rpcrt4/ndr_contexthandle.c:
	rpcrt4: Fix a case of destroying a context handle without first releasing
	the lock.
	Reverse the order of the release statements in NDRSContextMarshall2 for
	the case where the context handle doesn't have valid data so that the
	release that releases the lock comes first and then the optional second
	release doesn't need to release the lock.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Keep a track of server context handles allocated during processing of
	a request.
	Release them after processing of a request has finished to avoid a slow
	memory leak if the association isn't released for ages.

	* include/rpcdcep.h:
	include: Add defines for more message flags in rpcdcep.h.

	* tools/widl/typegen.c:
	widl: Check that the buffer has enough space before unmarshalling base types
	in generated code.

2007-12-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/ole32/bindctx.c:
	ole32: Fixed parameter checking and improved debug traces in
	IBindCtx::QueryInterface.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more tests.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added BindToObject implementation.

	* dlls/urlmon/format.c:
	urlmon: Call AddRef in EnumFORMATETC::QueryInterface.

	* dlls/urlmon/binding.c:
	urlmon: Added "CBinding Context" bind option support.

	* dlls/urlmon/binding.c:
	urlmon: Binding_Create clean up.

	* dlls/urlmon/binding.c:
	urlmon: Better error handling.

	* dlls/urlmon/binding.c:
	urlmon: Better implementation of bind stopping.

	* dlls/urlmon/binding.c, dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	urlmon: Make start_binding more generic.

	* dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c:
	urlmon: Added ibind argument handling in CreateAsyncBindCtx.

	* include/urlmon.idl:
	urlmon.idl: Added missing MONIKERPROPERTY variables.

	* dlls/urlmon/binding.c, dlls/urlmon/bindprot.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Use BindProtocol in Binding object.

2007-12-29  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantStringMemorySize.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add some tests for non-conformant strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement non-conformant string functions.

	* programs/rpcss/irotp.c:
	rpcss: Initialise some out-only parameters that aren't initialised by the
	generated RPC code.

2007-12-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user32/dde_misc.c:
	user32: Remove unneeded casts.

	* dlls/wininet/ftp.c:
	wininet: Fix typo in comparison with NULL. Found by Smatch.

2007-12-28  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Add GdipCreatePen2 and test cases.

	* dlls/gdiplus/tests/pen.c:
	gdiplus: Initialize a variable in a test.

2007-12-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ntdll/critsection.c, dlls/ntdll/heap.c, dlls/ntdll/reg.c,
	  dlls/ntdll/relay.c, dlls/ntdll/sec.c, dlls/ntdll/threadpool.c:
	ntdll: Remove unneeded casts.

	* dlls/msvfw32/msvideo16.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Remove unneeded casts.

2007-12-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more binding tests.

	* dlls/urlmon/bindprot.c:
	urlmon: Release protocol sink in Terminate.

	* dlls/urlmon/bindprot.c:
	urlmon: More ReportProgress implementation.

	* dlls/urlmon/bindprot.c, dlls/urlmon/urlmon_main.h:
	urlmon: Move setting protocol_sink to separated function.

2007-12-28  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.52.

----------------------------------------------------------------
2007-12-28  Vincent Hardy <vincent.hardy.be@gmail.com>

	* programs/regedit/Fr.rc:
	regedit: Window caption correction.

2007-12-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Only store the palette index in the alpha component when the primary
	render target uses P8.
	This was already done in other places but I missed this spot.

	* dlls/wined3d/surface.c:
	wined3d: In case of GL_EXT_paletted_textures we use GL_COLOR_INDEX and don't
	need a GL_RED fixup.

2007-12-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/request.h,
	  server/trace.c:
	user32: Reimplement IsHungAppWindow.

2007-12-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/bindprot.c:
	urlmon: Rename BindProtocol's IInternetProtocolSink methods.
	Binding's implementation uses the same names, what makes reading logs
	harder.

	* dlls/urlmon/bindprot.c:
	urlmon: Use heap_alloc_zero to allocate BindProtocol.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added mime filters tests.

	* dlls/urlmon/session.c:
	urlmon: Added [Un]RegisterMimeFilter implementation.

	* dlls/urlmon/session.c:
	urlmon: RegisterNameSpace clean up.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added CoInternetQueryInfo tests.

	* dlls/urlmon/internet.c, dlls/urlmon/umon.c:
	urlmon: Added CoInternetQueryInfo implementation.

	* dlls/mshtml/tests/protocol.c:
	mshtml: Added QueryInfo tests.

	* dlls/mshtml/protocol.c:
	mshtml: Added ResProtocolInfo::QueryInfo implementation.

	* dlls/mshtml/protocol.c:
	mshtml: Added AboutProtocolInfo::QueryInfo implementation.

2007-12-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Multiply the half pixel correction with .w.

2007-12-27  Rob Shearman <rob@codeweavers.com>

	* server/async.c:
	server: Initialise the apc_call_t union in async_set_result to all zero to
	avoid a Valgrind warning.

2007-12-26  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/Makefile.in, dlls/shell32/pidl.c, dlls/shell32/pidl.h,
	  dlls/shell32/shell32_main.h, dlls/shell32/shellole.c,
	  dlls/shell32/shfldr_netplaces.c, dlls/shell32/shres.rc:
	shell32: Implement "My Network Places" shell folder.

2007-12-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/d3d9/tests/device.c:
	d3d9: Initialize pVertexBuffer.

2007-12-26  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/tests/font.c, tools/sfnt2fnt.c:
	fonts: Correct External leading for japanese small font and enable fontmetric
	test for the font.

2007-12-27  Rob Shearman <rob@codeweavers.com>

	* programs/explorer/hal.c:
	explorer: Fix memory leak when one or more properties are not present on a
	hal device.

	* programs/rpcss/np_server.c:
	rpcss: Zero the memory of several variables before writing them to the pipe
	to silence Valgrind warnings.

2007-12-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Combine two glScalef calls into one.

2007-12-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Get rid of the invymat.
	glScalef(1.0, -1.0, 1.0) does the same as the glMultMatrix with the
	invymat matrix, and it is more optimal.

	* dlls/wined3d/surface.c:
	wined3d: Fix a problem in BltOverride.

2007-12-26  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/table.c:
	msi: Fix error handling in encode_streamname().

2007-12-27  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/state.c:
	wined3d: Also update alpha test when stage texture is NULL.

2007-12-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Load paper orientation in ChangePrinterW.

2007-12-25  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/directx.c:
	wined3d: Add zero/near zero vertex rhw special case.

2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix timeout check.

2007-12-24  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Re-use existing memory for embedded pointers in
	NdrVaryingArrayUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Re-use existing memory for embedded pointers in
	NdrConformantVaryingArrayUnmarshall.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for varying and conformant varying arrays.

2007-12-26  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Treat const addresses as const unsigned.
	This will prevent winedbg from spamming about __wine_dbch__default.

2007-12-26  Rob Shearman <rob@codeweavers.com>

	* dlls/quartz/filtergraph.c:
	quartz: Fix memory leak in FilterGraphInner_Release.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fix copy and paste error in VARIANT_UserUnmarshall with VT_UNKNOWN
	test.
	The variant type is VT_UNKNOWN so we should be using V_UNKNOWN, not
	V_VARIANTREF(V_R8) to check the type unmarshalled properly.

	* dlls/msi/streams.c, dlls/msi/table.c:
	msi: Fix several memory leaks after using IEnumSTATSTG_Next.
	The pwcsName field of STATSTG must be freed, otherwise the memory will
	be leaked.

	* dlls/hlink/extserv.c:
	hlink: Fix memory leak by freeing extension services This->headers in the
	release function.

2007-12-25  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/spy.c:
	user32: Added the new Vista messages to spy.

	* include/winuser.h:
	include: Added the new Vista messages.

2007-12-25  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/moniker.c, include/wine/irot.idl, programs/rpcss/irotp.c:
	rpcss: Use context handles to automatically free running object table entries
	if the client process quits without calling IrotRevoke.

	* tools/widl/typegen.c:
	widl: Add support for generating code for out-only context handles by calling
	NdrContextHandleInitialize.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for low-level context handle functions.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_assoc.c,
	  dlls/rpcrt4/rpc_assoc.h:
	rpcrt4: Implement low-level context handle support.
	Server context handles are tracked from associations as their lifetime
	is determined by the lifetime of the association.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement higher-level NDR server context handle functions.
	Implement NdrServerContextMarshall and NdrServerContextNewMarshall on
	top of NDRSContextMarshall2. Implement NdrContextHandleInitialize,
	NdrServerContextUnmarshall and NdrServerContextNewUnmarshall on top of
	NDSContextUnmarshall2.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_contexthandle.c,
	  dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move low-level NDR context handle functions to a separate file.

	* include/d3d10.idl, include/msinkaut.idl, include/oleacc.idl,
	  include/wine/irot.idl:
	include: Remove semi-colons from the end of cpp_quote statements as MIDL
	likes them.

	* tools/widl/typegen.c:
	widl: Fix pointer detection in structures and arrays.
	write_embedded_types doesn't descend into all types contained by the
	array or structure, so create a new function, type_has_pointers, for the
	purpose of descending into all types and returning whether or not
	pointers are present.

2007-12-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/wintab32/context.c:
	wintab32: Fix debug traces to use wine_dbg_sprintf.

2007-12-24  Jeremy White <jwhite@codeweavers.com>

	* dlls/wintab32/context.c:
	wintab32: Fix the W->A translation for CSR_NAME and CSR_BTNNAMES.
	Has the lovely side effect of making Photoshop pressure + tilt work.

	* dlls/winex11.drv/wintab.c:
	wintab32: Capture the number of buttons earlier, allowing our button maps to
	be filled in.

	* dlls/winex11.drv/wintab.c:
	wintab32: Implement the ability to return the number of devices and cursors.

	* dlls/winex11.drv/wintab.c:
	wintab32: Don't return information for non existent cursors.

2007-12-23  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Correctly handle devices with a device id of 0.
	The XInput macros such as DeviceMotionNotify will correctly return an eventclass
	of 0
	if the device id is 0.	Given that, we cannot use eventclass != 0 as a meaningful
	test, and must instead use the returned type.

	* dlls/winex11.drv/wintab.c:
	wintab32: Compute our physical device characteristics based on the first tablet
	device that looks like a stylus.
	Otherwise, we may be computing based on a mouse or cursor, and then
	come to incorrect values for our tilt and pressure settings.

	* dlls/winex11.drv/wintab.c:
	wintab32: Add additional device tracing.

	* dlls/winex11.drv/wintab.c:
	wintab32: Order the cursor array by the standard Wacom promulgates.

2007-12-24  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Add constants for cursor types and use them.

2007-12-24  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add special case for microphone source in mixer.
	Some microphones don't have a capture control, but a playback control
	instead. So use the playback volume, but still register it as capture
	volume.

2007-12-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Use IBindCtx passed to Load in BindToStorage call.

	* dlls/urlmon/tests/url.c:
	urlmon: Fixed BindToObject tests.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more binding tests.

	* dlls/urlmon/bindprot.c:
	urlmon: Added more BindProtocol::ReportProgress implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::[Un]LockRequest.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::Continue implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::Switch implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IServiceProvider implementation to BindProtocol object.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::GetBindString implementation.

	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fixed protocol tests.

2007-12-23  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Do not offset the physical device id by the cursor number.

	* dlls/winex11.drv/wintab.c:
	wintab32: Store and use the physical device id to match device to cursor.

2007-12-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leaks in tests.

2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ole32/compobj.c:
	ole32: Fix wrong timeout check.

2007-12-23  Eric Pouech <eric.pouech@orange.fr>

	* dlls/ntdll/heap.c, dlls/ntdll/signal_i386.c, loader/kthread.c:
	valgrind: Made Wine compliant will latest Valgrind macros (the one removed
	from 3.3.0 and deprecated since 3.2.0).

2007-12-22  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix the generation of temporary variables for declared arrays.
	These need to include their array part so use var->type instead of
	var->ref->type.

2007-12-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msi/format.c:
	msi: Remove unneeded cast.

	* dlls/msvcrt/file.c:
	msvcrt: Remove unneeded cast.

	* dlls/msacm32/driver.c, dlls/msacm32/pcmconverter.c:
	msacm32: Remove unneeded casts.

2007-12-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/kernel32/cpu.c:
	kernel32: Silence a fixme in GetNativeSystemInfo.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Partly implement GdipCreateFromHDC2

2007-12-22  Johannes Stezenbach <js@sig21.net>

	* dlls/ws2_32/socket.c:
	ws2_32: Set *res = NULL for error return from WS_getaddrinfo().

	* dlls/wininet/urlcache.c:
	wininet: Fix error return code in FindFirstUrlCacheEntryW() stub.

	* dlls/wininet/internet.c:
	wininet: Implement support for INTERNET_OPTION_VERSION in InternetQueryOptionW.

2007-12-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/gdi32/palette.c:
	gdi32: Fix a comment typo.

	* dlls/winex11.drv/text.c:
	winex11: Remove unused SWAP_INT macro.

2007-12-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Allow whitespace after the property name when setting a property in
	the dialog.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Allow the not-equal operator in WHERE query string comparisons.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix deleting temporary rows, with tests.

2007-12-22  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set pStubMsg->BufferMark in NdrConformantVaryingArrayUnmarshall and
	NdrVaryingArrayUnmarshall.
	pStubMsg->BufferMark should always be set before
	EmbeddedPointerUnmarshall is called and these functions didn't
	previously do so.

2007-12-22  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Adjust minidump streams ordering and sizing.
	To more closely match native format; this is required for windbg.

2007-12-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/instr.c, dlls/kernel32/kernel_private.h,
	  dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
	winedos: Add the possibility of refusing to emulate some interrupts.

	* dlls/kernel32/process.c:
	kernel32: Initialize MaximumLength of the user params directory too.

2007-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/heap.c:
	kernel32: Yet another workaround for broken apps in GlobalMemoryStatus.

2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Invalidate local copy of console input event handle while reallocating
	console.

2007-12-20  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/misc.c:
	quartz: Make filtergraph aggregatable.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/misc.c,
	  dlls/quartz/tests/videorenderer.c:
	quartz: Move aggregation tests into separate file.

2007-12-19  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/device.c:
	wined3d: Use IWineD3DDeviceImpl_ClearSurface in IWineD3DDeviceImpl_Clear.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rewrite IWineD3DSurfaceImpl_BltOverride colorfill codepath.

2007-12-20  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c, dlls/ntdll/ntdll.spec,
	  dlls/ntdll/threadpool.c, include/winternl.h:
	ntdll: Implement BindIoCompletionCallback.

2007-12-20  Zhangrong Huang <hzhrong@gmail.com>

	* dlls/secur32/secur32.c:
	secur32: Fix possible crash while loading SSP providers from registry.

	* dlls/gdi32/gdiobj.c, dlls/winex11.drv/xfont.c:
	gdi32, winex11.drv: Correct default Chinese font name.

2007-12-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Accept D3DDEVTYPE_REF devices in the vertex declaration test.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c:
	wined3d: Implement and test vertex fixups with per stream offsets.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Per stream offsets are 4 byte aligned.

	* dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
	  dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/vertexdeclaration.c:
	wined3d: Vertex attributes are 4 byte aligned.

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a test for POSITIONT vertex fixups.

2007-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Improve some traces.

	* dlls/d3d9/tests/visual.c:
	d3d9: Extend the fixed function vertex declaration test.

2007-12-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Change the vertex buffer declaration's data format.
	This hopefully makes the vertex attribute detection simpler, more solid,
	readable and flexible.

2007-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement half float vertex buffer conversion.

2007-12-21  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/moniker.c:
	ole32: Avoid leaving a critical section twice.

2007-12-21  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Tweak the rules for when to call pfnFree for arrays.
	Varying arrays that aren't unmarshalled shouldn't be freed, but
	conformant arrays that aren't unmarshalled should.

2007-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/process.c:
	kernel32: Store the initial directory as a full path in the process parameters.

2007-12-20  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for calling VirtualAlloc on a view of a SEC_RESERVE
	file mapping.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix a memory leak from the get_filename call in the server tests.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Print an error if stub buffer pointer is passed into
	safe_copy_from_buffer.
	Also print an error message if there was an overflow.

2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: When we reuse window structure, old brush should not be reused.

2007-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Fix another regression in 3.1-style file dialog from LB_DIR fix.

2007-12-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mciseq/mcimidi.c:
	mciseq: Remove unneeded casts.

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/mmoutput.c:
	mciavi32: Remove unneeded casts.

	* dlls/kernel32/local16.c:
	kernel32: Revert the removal of a cast from a macro.

	* dlls/mapi32/imalloc.c, dlls/mapi32/prop.c:
	mapi32: Remove unneeded casts.

	* dlls/kernel32/thunk.c, dlls/kernel32/toolhelp.c:
	kernel32: Remove unneeded casts.

2007-12-20  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody_GetOffsets.

2007-12-20  Ivan Sinitsin <ivan@etersoft.ru>

	* programs/winefile/winefile.c:
	winefile: Save font settings in registry.

2007-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/relay.c:
	ntdll: Increase the buffer size dynamically for relay debug lists.

	* dlls/advapi32/service.c:
	advapi32: Start non-interactive services in a separate window station.

	* programs/explorer/desktop.c:
	explorer: It no longer needs to be made a system process.

	* server/process.c:
	server: Don't give out full access to the system process event.

	* server/process.c:
	server: Don't count system processes as users of a desktop.

	* include/Makefile.in, include/ddk/mountmgr.h:
	include: Added the mountmgr.h header.

	* tools/wine.inf:
	wine.inf: Mark the spool service as disabled, it's just a stub.

	* programs/wineboot/wineboot.c:
	wineboot: Convert the rest of the code to Unicode.
	Fix Windows File Protection handling to use the correct system directory.

	* programs/wineboot/wineboot.c:
	wineboot: Rewrite wininit.ini processing to use
	GetPrivateProfileSectionW. Convert to Unicode.

	* programs/wineboot/wineboot.c:
	wineboot: Add support for starting NT-style services.

	* programs/wineboot/wineboot.c:
	wineboot: Simplify the unnecessarily complex code structure.

	* dlls/advapi32/security.c, dlls/advapi32/service.c:
	advapi32: Move the EnumDependentServicesA/W stubs in service.c where they belong.
	Make the stubs return success.

2007-12-19  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/Makefile.in, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
	qmgr: AddRef, QueryInterface, and stub functions for queue manager interface.

2007-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_powerpc.c,
	  dlls/ntdll/signal_sparc.c, dlls/ntdll/signal_x86_64.c,
	  server/thread.c:
	server: Use SIGQUIT instead of SIGTERM to terminate a thread.
	This allows keeping the default SIGTERM behavior of killing the whole
	process.

	* dlls/kernel32/instr.c, dlls/winedos/interrupts.c:
	kernel32: Forward interrupts in 32-bit code to winedos too.

2007-12-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/reader.c:
	riched20: Remove a redundant parameter from trace.

2007-12-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: The BS_GROUPBOX style should only be used if the HasBorder attribute is set.

2007-12-20  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Fix RPC_GetLocalClassObject to wait for 30 seconds, even if messages
	arrive while we are waiting.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStringUnmarshall to always increment the buffer
	during unmarshalling.
	safe_copy_from_buffer has the side-effect of incrementing the buffer and
	this still needs to be done when we point the memory into the buffer.
	(Thanks to Maarten Lankhorst for finding the mistake and suggesting a fix.)

2007-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/drawprim.c:
	wined3d: Add a test for 16 bit floats.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Move the GL info structure into the adapter.

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix vertex buffers based on type, not semantic.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fixed function vertex attribute types are flexible.

2007-12-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store if half float conversion is needed in the decl.

2007-12-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Always dump the fbo state on errors.

2007-12-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/sysparams.c, dlls/user32/tests/monitor.c,
	  dlls/winex11.drv/settings.c:
	user32: Add a test for an invalid DEVMODE passed to ChangeDisplaySettings,
	make it pass under Wine.

	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
	gdi32: Add a test for minimal acceptable DEVMODEA size, make it pass under Wine.

2007-12-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Initialize a default COM apartment for custom actions.

	* dlls/msi/package.c:
	msi: Allow NULL parameters to be passed to the local MsiSetProperty.

2007-12-19  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Add GdipCreateHBITMAPFromBitmap() stub.

2007-12-19  Rico Schüller <kgbricola@web.de>

	* dlls/wined3d/state.c:
	wined3d: Fix some typos.

2007-12-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/resource.c:
	kernel32: Remove unneeded casts.

2007-12-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c, dlls/user32/tests/listbox.c:
	user32: Fix regression in DlgDirList caused by modified LB_DIR return behavior,
	with tests.

2007-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Don't use BufferEnd in RpcStream_Write.
	It is usually used during marshalling, where pStubMsg->BufferStart and
	pStubMsg->BufferEnd won't be valid. Replace it with a check using
	RpcMsg->Buffer and pStubMsg->BufferLength.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Initialise memory passed into RPCs in the server test.
	aligns contains padding, but the memory is marshalled in one block so
	call memset to avoid Valgrind warnings. padded and padded2 are
	marshalled as complex types so this is not required here.
	Initialise the dummy member of test_list_t to zero for the TL_NULL case.
	Change the type to the smallest available to not waste buffer space.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Memory should only be cleared in ComplexUnmarshall, not in
	ComplexMarshall.
	Also clear memory when FC_STRUCTPAD* is encountered.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the ALIGN_POINTER_CLEAR macro.

	* tools/widl/typegen.c:
	widl: Fix the length used when clearing alignment space in generated files.
	Only do the clearing when marshalling a base type.

	* tools/widl/typegen.c:
	widl: The detection of types is highly dependent on the ordering of the various
	type detection functions.
	Therefore, needs_freeing would have to duplicate a lot of
	write_remoting_arg in order to get the detection right. Because of
	this, it is easier and will cause less problems in the future to
	simply move the logic of needs_freeing into write_remoting_arg in the
	appropriate handling code for the detected type.

2007-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Return from StartServiceCtrlDispatcher when all services are stopped.

	* dlls/advapi32/service.c:
	advapi32: Replace the list of services with an array.

	* dlls/advapi32/service.c:
	advapi32: Use exponential backoff when waiting for a service to start.

	* dlls/advapi32/advapi32.spec:
	advapi32: Fix RegisterServiceCtrlHandler spec entry.

	* dlls/advapi32/service.c:
	advapi32: Reimplement RegisterServiceCtrlHandler on top of
	RegisterServiceCtrlHandlerEx.

2007-12-17  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, dlls/qmgr/Makefile.in, dlls/qmgr/qmgr_local.idl:
	qmgr: Generate C file with local GUID definitions from bits.idl.

2007-12-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winnt.h:
	include: Add CONTEXT86_EXTENDED_REGISTERS and CONTEXT86_ALL definitions.

	* dlls/user32/combo.c:
	user32: Set the edit text in a combobox only if combobox has strings.

	* dlls/user32/button.c:
	user32: Make sure to setup clipping before any painting is done.

	* dlls/gdi32/driver.c:
	gdi32: In the calculations use a fixed dmSize, not a passed in (possibly too
	large) one.

	* dlls/gdi32/tests/dc.c:
	gdi32: When compiling with PSDK headers request latest DEVMODE definition.

2007-12-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement texture -> swapchain blits with stretch_rect_fbo.

2007-12-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Some improvements for SFLAG_CONVERTED checking.
	We can check this flag before setting up the gl lock, and add the
	surface format to the FIXME.

2007-12-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: Emulate half float vertices if GL_NV_half_float is not there.

2007-12-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement blits from the active render target to swapchains.

2007-12-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi32/region.c:
	gdi32: There is no need to cast NULL to a function pointer.

2007-12-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/secur32/tests/schannel.c:
	secur32/tests: InitFunctionPtrs() needs to use the global crypt32dll variable.

2007-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c:
	msi: Free the ordering information.

2007-12-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/local16.c, dlls/kernel32/module.c:
	kernel32: Remove unneeded casts.

2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: ReadConsoleW should wait for at least one character before returning.

2007-12-18  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Unquote parameter values.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody_GetParameters.

2007-12-18  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcGetCurrentCallHandle.

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub for GetVersionFromProcess.

2007-12-18  Rico Schüller <kgbricola@web.de>

	* dlls/kernel32/sync.c:
	kernel32: Fix typo.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Fix typo.

2007-12-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/user_main.c:
	user32: Set the WSF_VISIBLE flag on the main window station.

	* dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl.exe: Allow returning data in ioctls along with a positive non-zero
	status.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Added implementation for IoCreateDriver and IoDeleteDriver.

	* server/async.c:
	server: Fix possible NULL dereference.

2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/tests/file.c, server/async.c, server/fd.c, server/file.h:
	server: Store I/O completion information in async structure.
	This is to allow completions to be sent on handle close. Also this can
	be helpful for AcceptEx/TransmitFile implementation.

2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix flags conversion in getnameinfo() function.

2007-12-18  Francois Gouget <fgouget@codeweavers.com>

	* configure, configure.ac:
	configure: Work around an Xcode 3.0 bug when detecting the libGL library.

2007-12-18  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/commctrl.c, dlls/d3d9/tests/device.c, dlls/gdi32/font.c,
	  dlls/shell32/shfldr_unixfs.c:
	Assorted spelling fixes.

2007-12-17  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c:
	d3dx8: Implement D3DXCreateMatrixStack.

2007-12-18  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8_private.h, dlls/d3dx8/math.c:
	d3dx8: Add basic functions and stubs for MatrixStack.

2007-12-17  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8_main.c, dlls/d3dx8/d3dx8_private.h,
	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Rename d3dx_core_private.h to d3dx8_private.h.

	* dlls/dxguid/dx8guid.c, include/d3dx8math.h:
	d3dx8: Add definition for MatrixStack.

2007-12-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Split up the render target -> render target blit.

2007-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement D3DFMT_G16R16.

2007-12-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/kernel32/tests/sync.c:
	kernel32: Add a test for BindIoCompletionCallback.

2007-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Filter out some shader compilation spam.

2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* server/console.c:
	server: Properly notify renderer while activating another screen buffer.

2007-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
	gdi32: Add a GdiConvertToDevmodeW test, make it pass under Wine.

2007-12-18  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Fix spelling typo.

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/inetcomm_main.c,
	  dlls/inetcomm/inetcomm_private.h, dlls/inetcomm/mimeole.c,
	  dlls/inetcomm/regsvr.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add IMimeAllocator implementation.

2007-12-14  Huw Davies <huw@codeweavers.com>

	* include/mimeole.idl:
	include: Add IMimeAllocator.

2007-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Ignore tesselated and unused streams when comparing attribs.

2007-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Correct a pixel shader version comparison.

2007-12-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Disable the SWAPEFFECT_DISCARD clear.

2007-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a note about a breakage in the refrast.

	* dlls/d3d9/tests/visual.c:
	d3d9: Remove a few more incorrect D3DLOCK_DISCARDs.

2007-12-18  Peter Beutner <p.beutner@gmx.net>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Add stub for Direct3DShaderValidatorCreate9().

2007-12-18  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c:
	dinput: Make _dump_cooperativelevel_DI() and _dump_EnumDevices_dwFlags()
	more self-contained.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Avoid SHDeleteKeyW() because shlwapi.dll is missing on
	Windows 95.

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Use GetProcAddress() on SHFileOperationW() because it is missing
	on Windows 95.

	* dlls/shell32/tests/systray.c:
	shell32/tests: Use GetProcAddress() on Shell_NotifyIconW() because it is
	missing on Windows 95.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Use GetProcAddress() on SHGetPathFromIDListW() because it is
	missing on Windows 95.

	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shellpath.c,
	  dlls/shell32/tests/shlfolder.c:
	shell32/tests: Copy the PathRemoveBackslashA() and PathAddBackslashW()
	implementations because shlwapi.dll is missing on Windows 95.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Avoid SHDeleteKeyA() because shlwapi.dll is missing on Windows 95.

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32/tests: Dynamically load various APIs and don't link with crypt32.dll
	to make the test run on Windows 95.

	* dlls/msi/package.c:
	msi: Add a trailing '\n' to Wine traces.

	* dlls/user32/tests/sysparams.c:
	user32/tests: Use GetProcAddress() on ChangeDisplaySettingsExA() because it
	is missing on Windows 95.

2007-12-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/create.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/query.h,
	  dlls/msi/select.c, dlls/msi/sql.y, dlls/msi/streams.c,
	  dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Sort each table of the join separately.

	* dlls/msi/tests/db.c:
	msi: Test sorting a table using a column that is not selected.

2007-12-17  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/rpc_assoc.c:
	rpcrt4: Add missing LeaveCriticalSection. Found by Smatch.

2007-12-17  Rob Shearman <rob@codeweavers.com>

	* include/rpcdcep.h:
	include: Add some context handle defines to rpcdcep.h.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for I_RpcGetCurrentCallHandle.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't copy memory from the buffer in NdrConformantStringUnmarshall if
	we just pointed the memory pointer into the buffer.
	(Reported by Dan Kegel.)

2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Avoid any keywords comparision during lookup, store pointer to listbox
	ITEMDATA instead.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Remember last added page.

2007-12-17  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Fix bugs in EM_SETOPTIONS.
	Add SELECTIONBAR to mask, and use settings rather then lParam. 2 subtle
	bugs that prevent selectionbar from working.

2007-12-17  Rob Shearman <rob@codeweavers.com>

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/event.c,
	  include/rpcasync.h:
	include: Add more types and function declarations to the rpcasync.h header file.
	Fix up a couple of conflicts with the Status field in the
	RPC_EXTENDED_ERROR_INFO and the X Status define.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/rpcrt4/rpcrt4_main.c, include/Makefile.in, include/rpc.h,
	  include/rpcasync.h:
	rpcrt4: Add an rpcasync.h header stub and fix the RpcErrorStartEnumeration()
	prototype.

2007-12-17  Rob Shearman <rob@codeweavers.com>

	* include/rpcndr.h:
	include: Add more NDR types and function declarations to rpcndr.h.

2007-12-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/button.c:
	user32: Always clip the button painting to the client rectangle.

2007-12-16  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/surface.c:
	ddraw: Fix incorrect WARN text.

2007-12-14  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/winspool.drv/info.c:
	winspool: Fix memory leak (found by Smatch).

	* programs/winedevice/device.c:
	winedevice: Fix memory leak (found by Smatch).

2007-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Do not set NONE MIN and MAG filters.

	* dlls/d3d9/tests/visual.c:
	d3d9: D3DLOCK_DISCARD is not valid on managed textures.

	* dlls/d3d9/tests/visual.c:
	d3d9: The refrast returns an error on invalid clear rects.

2007-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c, dlls/user32/tests/sysparams.c,
	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/settings.c, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xvidmode.c:
	winex11: Activate the depth-bpp difference.

2007-12-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11: Distinguish between bpp and depth.

2007-12-14  Rob Shearman <rob@codeweavers.com>

	* dlls/hlink/tests/hlink.c:
	hlink: Fix some memory leaks in the tests.

2007-12-16  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_assoc.c,
	  dlls/rpcrt4/rpc_assoc.h, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move association code into a separate file.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_message.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make a server association when a bind packet is received in the server.
	Support handing out association group IDs.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Return an error from rpcrt4_conn_tcp_read if recv returns 0.

2007-12-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStringUnmarshall to use buffer memory if possible.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add a FIXME for RPC_FC_P_ALLOCALLNODES in PointerUnmarshall.

2007-12-14  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear padding inserted into the buffer during marshalling because
	of alignment.

2007-12-15  Rob Shearman <rob@codeweavers.com>

	* include/wine/rpcfc.h:
	include: Add definitions for RPC_FC_SSTRING and RPC_FC_C_SSTRING.

	* tools/widl/typegen.c:
	widl: Only base types or reference pointers to base types don't need to be freed.
	There are other cases where calls to Free functions can be omitted (such
	as types always unmarshalled using buffer memory with no embedded
	pointers), but these are easier dealt with inside the relevent case in
	write_remoting_arg.

	* tools/widl/server.c:
	widl: Return types shouldn't be freed.

2007-12-14  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Clear padding in the buffer due to alignment.

2007-12-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Avoid relying on system-dependent rounding.

	* dlls/user32/clipboard.c, dlls/user32/user16.c:
	Revert "user32: Moved some 16-bit functions."
	This partially reverts commit 6e9fea22f82fe60624e1081d74ad990a5c428eed.
	16-bit and 32-bit clipboard handles aren't interchangeable.

2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/tests/file.c, server/fd.c:
	server: I/O completion ports can only be used with overlapped I/O.

2007-12-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use flag to store protocol lock state.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Ignore Exec(CGID_Explorer, 66) calls in tests.

	* dlls/mshtml/editor.c, dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc5.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlelem2.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmlstyle.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsservice.c, dlls/mshtml/persist.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Remove not used argument in nsAString_GetData.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Remove not used argument of nsACString_GetData.

2007-12-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Set the text color after calling the window proc.

	* dlls/msi/dialog.c:
	msi: The line control has a height of exactly 2 device units.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_INVALID_PARAMETER if the product list is empty and index is
	not zero.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_UNKNOWN_COMPONENT if no products exist.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Also check the local system component key for the clients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Check the user component key for the clients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Validate the parameters of MsiEnumClients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Add tests for MsiEnumClients.

	* dlls/msi/appsearch.c:
	msi: Simplify ExpandAnyPath.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Verify that the PID_PAGECOUNT and PID_REVNUMBER summary info properties
	exist.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: If the package doesn't exist, return ERROR_FILE_NOT_FOUND.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Validate the parameters of MsiOpenPackage.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Add more tests for MsiOpenPackage.

2007-12-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Release the record when loading the hash data.

2007-12-14  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/ocr_reverse.cur, dlls/riched20/res.h,
	  dlls/riched20/version.rc, dlls/riched20/wrap.c:
	riched20: Implement ECO/EM SELECTIONBAR.

2007-12-14  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/dialog.c:
	msi: Fixed buffer overflow in number parsing.

2007-12-14  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.51.

----------------------------------------------------------------
2007-12-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched32/tests/editor.c:
	riched32/tests: Avoid using size_t in traces.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Avoid using size_t in traces.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix a compiler warning.

2007-12-14  Sam Dennis <samuel.howard.dennis@gmail.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Fix undocumented behaviour in ReqQueryValueEx when 'count' and 'type'
	point to the same address.

2007-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/user32/tests/sysparams.c:
	user32: Add a test for EnumDisplaySettings vs GetDeviceCaps.

	* dlls/user32/tests/sysparams.c:
	user32: Add a test for WM_DISPLAYCHANGE.

2007-12-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Test the "alpha" channel on compatible bitmaps.

	* dlls/winex11.drv/mouse.c:
	winex11: Ignore the alpha if all pixels are 0.

2007-12-13  Lei Zhang <thestig@google.com>

	* dlls/quartz/tests/videorenderer.c:
	quartz: Do aggregation test for more video renderer interfaces.

	* dlls/quartz/tests/videorenderer.c:
	quartz: Make aggregation test generic.

2007-12-13  Maarten Lankhorst <maarten@codeweavers.com>

	* include/oleacc.idl:
	include: Update oleacc with new constants and IAccessible interface.

2007-12-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	include: Make RpcRaiseException DECLSPEC_NORETURN, like it is in the PSDK.

2007-12-14  Aric Stewart <aric@codeweavers.com>

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: InternetCrackUrlW requires component buffers when used with ICU_DECODE.

2007-12-14  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_conn_tcp_read.

2007-12-14  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/editor.h, dlls/riched20/wrap.c:
	riched20: Make some functions static.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add 'Front Mic' as alias for microphone.

2007-12-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in tests.

2007-12-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Close the file handle returned by FindFirstFile.

2007-12-14  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winebuild/spec16.c:
	winebuild: Remove duplicate declaration of variable 'j'.

	* dlls/kernel32/utthunk.c:
	kernel32: Do not reuse the name of a function argument for a local variable.

	* dlls/wineoss.drv/mixer.c:
	wineoss.drv: Move a function wide variable down to the block it is used in.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Remove an unused global variable.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Remove duplicate abPlainPrivateKey variable.

2007-12-13  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c:
	quartz: Fix typo in GraphConfig_AddRef.

	* dlls/quartz/videorenderer.c:
	quartz: Give video renderer's Inner_QueryInterface a less generic name.

	* dlls/ole32/compobj.c:
	ole32: Print a fixme when an aggregation attempt fails.

2007-12-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c:
	kernel32: Remove unneeded casts.

2007-12-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Register IE settings by iexplore.exe.
	These registries are present in a fresh Windows installation, but they
	cause problems with native IE, so let's handle them as we do with IE
	version key.

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/internet.c, dlls/urlmon/mk.c,
	  dlls/urlmon/regsvr.c, dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h:
	urlmon: Includes clean up.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Fixed handling MIME type in Binding object.

2007-12-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Update TODO list.
	Out-of-memory check is performed by NdrAllocate and so isn't required to
	be done in the unmarshalling functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Document NdrAllocate.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Partially revert commit 18faf3184b2ea263d77c2a7ad92eef27bc4ba08f.
	Tests show that NdrPointerFree (and hence NdrFree) don't check whether
	the memory was allocated with NdrAllocate before freeing it. This makes
	sense as servers don't need to use NdrAllocate to allocate memory being
	returned and so this commit caused that memory to be leaked.
	NdrAllocate hasn't been changed as the tests show it is correct and it
	appears that the memory list is used to implement the RpcSs memory model.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Free the base pointer in PointerFree when freeing a pointer with
	RPC_FC_P_DEREF.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the check in NdrPointerFree.
	Add comments to justify why this is the only check that is needed.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: NdrStubGetBuffer shouldn't set BufferStart and BufferEnd.
	These are supposed to point to the original buffer when the types were
	unmarshalled.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	Revert "rpcrt4: Try to free every non-stack pointer in PointerFree now that
	NdrFree does the sanity checking for us.".
	This reverts commit 6db648302ce43f625a073426a35a6f40b7869d8b.
	Tests show the assumptions in a commit that this commit depends on are
	not valid.

	* tools/widl/typegen.c:
	widl: Don't write redundant FC_RP type format out for conformant strings,
	unless it is a top level variable.

2007-12-13  Lei Zhang <thestig@google.com>

	* dlls/quartz/tests/videorenderer.c, dlls/quartz/videorenderer.c:
	quartz: Make video renderer aggregatable.

	* dlls/quartz/enummoniker.c, dlls/quartz/main.c,
	  dlls/quartz/systemclock.c, dlls/quartz/tests/referenceclock.c:
	quartz: Set *ppvObject to NULL if QueryInterface fails.

	* dlls/quartz/tests/referenceclock.c:
	quartz: Add referenceclock QueryInterface test.

	* dlls/quartz/tests/videorenderer.c:
	quartz: Add videorenderer aggregation test.

2007-12-12  Lei Zhang <thestig@google.com>

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/videorenderer.c:
	quartz: Add videorenderer QueryInterface test.

2007-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/input.c:
	user32: Print the RegisterHotKey fixme only once.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Store a copy of the string pointers to enable freeing them without
	casting away const.

2007-12-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for freeing non-NdrAllocate allocated memory blocks.

	* tools/widl/utils.h:
	widl: Swap the version packing order back to what typelibs expect.

2007-12-11  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Cache font enum info.
	Cache the enum info so that repeated calls to EnumFontFamiles and such
	does not have to repeatedly load the font file.

2007-12-11  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/start/Makefile.in, programs/start/start.c:
	start: Convert to Unicode.

2007-12-09  Vitaly Lipatov <lav@etersoft.ru>

	* programs/winecfg/Ru.rc:
	winecfg: Updated Russian translation.

2007-12-09  Lionel Debroux <lionel_debroux@yahoo.fr>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix memory leaks (found by Smatch).

	* dlls/msi/database.c:
	msi: Fix memory leaks (found by Smatch).

	* dlls/msi/dialog.c:
	msi: Fix missing alloc check.

2007-12-12  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Don't require a cswitch control for capture.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add control 'Digital' as alias for microphone.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Remove fixed fixme.

2007-12-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Test the bit depth of compatible bitmaps explicitly.

	* dlls/winex11.drv/settings.c:
	winex11: Remove an unused variable.

2007-12-13  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/En.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/macro.c, programs/winhelp/rsrc.rc,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Display keywords index dialog box.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Read keywords.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Export enum and search B+ tree functions.

2007-12-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Do glyph translation for truetype fonts only.

2007-12-12  Alexandre Julliard <julliard@winehq.org>

	* programs/wordpad/registry.c:
	wordpad: Fix invalid pointer usage.

2007-12-12  Rob Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/utils.h:
	widl: Remove some confusion in how version numbers are packed into an attribute
	by defining some macros for this purpose.
	Remove unneeded includes.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Try to free every non-stack pointer in PointerFree now that NdrFree
	does the sanity checking for us.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Store allocated memory in a singly-linked list to keep track of what
	we should and shouldn't free in NdrFree.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Make the NdrAllocate tests pass on XP SP2 and greater.

2007-12-12  Aric Stewart <aric@codeweavers.com>

	* dlls/netapi32/local_group.c:
	netapi32: Improve stub for NetLocalGroupGetMembers a bit to return current user.

	* dlls/imagehlp/integrity.c:
	imagehlp: Improve last error handling in ImageGetCertificateData.

2007-12-09  Marcel Partap <mpartap@gmx.net>

	* aclocal.m4, configure:
	configure: Add i586-mingw32 prefix for crosscompiling.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Add dumping of FORM_INFO_1/2 in test_EnumForms.

	* include/winspool.h:
	include/winspool.h: Add FORM_INFO_2.

2007-12-12  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in:
	Make.rules: Process man pages in the C locale.

	* dlls/winecrt0/drv_entry.c:
	winecrt0: DriverEntry is a WINAPI function.

2007-12-11  Marco Schuster <marco@harddisk.is-a-geek.org>

	* .gitignore, loader/Makefile.in, loader/wine.de.man.in:
	loader: Added de_DE.UTF-8 translated Wine man page.

	* loader/wine.man.in:
	wine.man: Added small clarification for AppDB.

2007-12-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add some tests for ScriptShape/Place and make them pass.

2007-12-12  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/Makefile.in, programs/wordpad/registry.c,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Move registry functions to a separate file.

2007-12-11  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: DPRINTF -> TRACE.

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c,
	  dlls/dinput/effect_linuxinput.c:
	dinput: DPRINTF -> TRACE.

	* dlls/ole32/storage.c:
	ole32: DPRINTF -> TRACE.

2007-12-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Free the cabinet string on error.

	* dlls/msi/package.c:
	msi: Properly release the record.

	* dlls/msi/registry.c:
	msi: Free the user sid string.

	* dlls/msi/custom.c:
	msi: Free the deformatted string.

2007-12-12  Alexandru Balut <alexandru.balut@gmail.com>

	* tools/wine.inf:
	wine.inf: Fix the type of some values in HKLM,
	System\CurrentControlSet\Control\Session Manager\Environment.

2007-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Return S_OK in IOleObject::SetHostNames.

2007-12-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched32/tests/editor.c:
	riched32: Fix regression in WM_GETTEXTLENGTH on richedit 1.0 emulation.

2007-12-11  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/winhelp.c:
	winhelp: Change font charset from ANSI to DEFAULT.

2007-12-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c,
	  dlls/winex11.drv/bitmap.c:
	gdi32: Test bitmap depths.

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/bitmap.c:
	gdi32, winex11drv: Add a test for compatible bitmap depths.

	* dlls/winex11.drv/xvidmode.c:
	winex11: Remove an unused variable.

2007-12-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use SetDisplayMode to set the display mode.

	* dlls/wined3d/device.c:
	wined3d: Remove 24/32 bit hacks.

2007-12-11  Marco Schuster <marco@harddisk.is-a-geek.org>

	* dlls/wined3d/directx.c:
	wined3d: Fixed a bug that the 8600M GT could not be detected.

2007-12-10  Rob Shearman <rob@codeweavers.com>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix some memory leaks in the tests.
	Remove an incorrect CryptProviderRelease call.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Add support for non-basetype return types.

2007-12-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlstyle.c:
	mshtml: Fix CSS px unit handling differences between Gecko and IE.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added more IHTMLStyle implementation.

2007-12-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Initialize the APC call union to suppress valgrind warnings. Take 2.

2007-12-11  Aric Stewart <aric@codeweavers.com>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c:
	wintrust: Implementations for WTHelperGetFileName and WTHelperGetFileHandle.

2007-12-10  Gregor Brunmar <gregor.brunmar@home.se>

	* dlls/comctl32/monthcal.c:
	comctl32: Monthcal lost focus fix.

2007-12-10  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/comctl32/listview.c:
	comctl32: Fix painting bug in listview control.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix a "ordered comparison of pointer with integer zero".

2007-12-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/main.c:
	winebuild: Don't set the IMAGE_FILE_DLL flag on native modules.

	* dlls/Makedll.rules.in, dlls/kernel32/Makefile.in,
	  dlls/ntdll/Makefile.in:
	Makedll.rules: Add a generic EXTRADLLFLAGS variable instead of defining a
	specific variable for every possible parameter.

2007-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the adapter to read the display mode.

2007-12-10  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Add IFilterGraph2 interface and stubs.

2007-12-10  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Test the initial state of the cursor.

2007-12-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in test.

	* dlls/shlwapi/tests/string.c:
	shlwapi: Fix memory leak in test.

2007-12-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added client site's IOleCommandTarget tests.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/usp10/usp10.c:
	usp10: Rename the wrappers around HeapAlloc() &Co to use the standard names.

2007-12-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/factory.c, dlls/msxml3/regsvr.c:
	msxml: Register missing components.

2007-12-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c:
	dplayx: Remove unneeded casts.

	* dlls/dnsapi/ns_parse.c, dlls/dnsapi/query.c:
	dnsapi: Remove unneeded casts.

2007-12-10  Alexandre Julliard <julliard@winehq.org>

	* programs/wordpad/wordpad.c:
	wordpad: Fix a compiler warning.

2007-12-10  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typegen.c:
	widl: iid_is should take expressions, not just identifiers.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Support the address-of operator in expressions.

	* tools/widl/typegen.c:
	widl: Make sure to generate freeing calls for all non-simple structures with
	pointers and pointers to user marshalled types.

	* tools/widl/typegen.c:
	widl: Arrays should have freeing code generated on the server side, even if
	they are [in] parameters.

	* tools/widl/typegen.c:
	widl: Always write a freeing function for arrays in generated code.
	Fix the conditions under which pfnFree is called to only include arrays
	that will have been allocated, instead of being pointed to the buffer.

2007-12-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/xmldoc.c:
	msxml3: Implement IPersistStream.

2007-12-09  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qmgrprxy/Makefile.in, dlls/qmgrprxy/qmgrprxy.idl,
	  dlls/qmgrprxy/qmgrprxy.spec:
	qmgrprxy: Queue manager proxy generated using an IDL compiler and bits.idl.

2007-12-09  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Swap margins when changing orientation.

2007-12-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA: Swap margins when changing orientation.

2007-12-07  Rob Shearman <rob@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Register actxprxy.dll and create a fake DLL for it.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/actxprxy/Makefile.in, dlls/actxprxy/actxprxy.spec,
	  dlls/actxprxy/actxprxy_servprov.idl, dlls/actxprxy/usrmarshal.c:
	actxprxy: Add the start of actxprxy.dll.
	The native version of this DLL contains proxy code for various
	interfaces, but for the moment only servprov.idl is implemented.

2007-12-10  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c:
	makedep: Added support for dlldata.c dependencies.

	* .gitignore, Make.rules.in, tools/make_makefiles, tools/widl/widl.c:
	Make.rules: Added rules for building the dlldata.c file.

2007-12-10  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Improve thread safety in IWineD3DSurfaceImpl_BltOverride.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/crypt32/chain.c:
	crypt32: Do not use an empty body in an else-statement as documentation.

2007-12-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/tests/url.c:
	urlmon: Fix memory leaks.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Fix memory leak.

	* dlls/msxml3/tests/xmlelem.c:
	msxml3: Fix memory leak.

2007-12-09  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leaks.

2007-12-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: GetCharABCWidthsI does not require a scalable font.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Make FtpGetCurrentDirectoryA pass all todo_wine tests.

	* dlls/kernel32/console.c:
	kernel32: GetConsoleInputExeNameW returns TRUE even when it fails.

2007-12-09  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Improve test_DestroyCursor().

	* dlls/user32/tests/cursoricon.c:
	user32: Uncomment and explain a test in test_DestroyCursor().

2007-12-08  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/shell32/shell32_Es.rc:
	shell32: Update Spanish resource.

2007-12-07  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Es.rc:
	sane: Add Spanish Resource.

	* dlls/msvfw32/msvfw32_Es.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Spanish resource.

	* dlls/credui/credui.rc, dlls/credui/credui_Es.rc:
	credui: Add Spanish resource.

	* dlls/gphoto2.ds/gphoto2_Es.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2: Add Spanish resource.

2007-12-10  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Font tests with Japanese font data.  Thanks to Dmitry Timoshkov for
	the data and tests.

	* fonts/.gitignore, fonts/Makefile.in:
	fonts: Build the jvgasys.fon from the 18 pixel strike.

	* tools/sfnt2fnt.c:
	sfnt2fnt: Use code from gdi32/freetype to do a better job finding the TTAG_EBLC
	to deal with older version of freetype without having to fall back on unreliable
	hacks.

	* fonts/system.sfd:
	system.sfd: Modify a few 18 pixel glyphs to generate metrics correctly.

2007-12-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/mru.c:
	comctl32/tests: Avoid SHDeleteKeyA() because it does not exist on Windows 95.

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/datetime.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: InitCommonControlsEx() is missing on Windows 95 so call
	InitCommonControls() instead.

	* dlls/comctl32/tests/imagelist.c:
	comtcl32/tests: Dynamically load ImageList_SetImageCount() because it is
	missing on Windows 95.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/hlink/hlink.spec:
	hlink: Fix the HlinkUpdateStackItem() prototype.

	* dlls/kernel32/tests/actctx.c, dlls/kernel32/tests/file.c:
	kernel32/tests: Get the test to run on Windows 95.

	* dlls/kernel32/tests/file.c:
	kernel32/tests: dll_capable() makes no sense since it's only used on APIs we
	link with. So remove it.

	* dlls/winealsa.drv/wavein.c:
	winealsa.drv: Remove trailing spaces in Wine traces.

2007-12-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c:
	user32: Keep waiting for posted messages in peek_message after we get an
	ignored message.

2007-12-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Don't trace char to glyph mappings.

	* dlls/usp10/usp10.c:
	usp10: Store original font in the script cache and reselect it on successive
	calls.

	* dlls/usp10/usp10.c:
	usp10: Use GetCharABCWidthsI to implement ScriptGetGlyphABCWidth.

2007-12-09  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass the USER_MARSHAL_CB structure into user marshal routines.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: NdrRangeUnmarshall is implemented so add it to the spec file.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantArrayMemorySize.

2007-12-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/hlink/browse_ctx.c, dlls/hlink/extserv.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/pdh/pdh_main.c:
	pdh: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/iccvid/iccvid.c:
	iccvid: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/content.c,
	  dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h, dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Rename the wrappers around HeapAlloc() &Co to use the standard names.

2007-12-08  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a missing break in DllMain.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Save the buffer in EmbeddedPointerMemorySize, like
	EmbeddedPointerUnmarshall does.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the return value from NdrSimpleStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add a trace to NdrBaseTypeMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement PointerMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStructUnmarshall to use buffer memory if applicable
	and to reuse memory for embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrFixedArrayUnmarshall to use buffer memory if applicable and to
	reuse memory for embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrConformantArrayUnmarshall to use buffer memory if applicable
	and to reuse memory for embedded pointers.

	* tools/widl/parser.y:
	widl: Don't override the pointer type in top-level arrays.

2007-12-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comctl32/propsheet.c, dlls/dbghelp/msc.c, dlls/gdi32/bidi.c,
	  dlls/gdi32/font.c, dlls/kernel32/tests/drive.c,
	  dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/wined3d/device.c:
	Assorted spelling fixes.

2007-12-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Remove the RTFAlloc() wrapper around heap_alloc().

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/reader.c,
	  dlls/riched20/richole.c:
	riched20: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-12-08  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/device.c:
	ddraw: Fix wrong initialization order in IDirect3DDevice vtable.

2007-12-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA: Read margins from correct edit boxes.

2007-12-08  Marcus Meissner <marcus@jet.franken.de>

	* server/async.c:
	server: Removed superflous async->queue NULL tests.

2007-12-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/paint.c:
	riched20: Invalidate all the text on bogus last selection.

2007-12-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c:
	dmusic: Remove unneeded casts.

	* dlls/dmloader/loaderstream.c:
	dmloader: Remove unneeded casts.

2007-12-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmime/audiopath.c, dlls/dmime/performance.c:
	dmime: Remove unneeded casts.

2007-12-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c, dlls/msi/tests/package.c:
	msi: Handle the CompLocator table in the AppSearch action.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Reimplement MsiGetProductCode.

	* dlls/msi/tests/msi.c:
	msi: Remove two tests that depend on the sort order of RegEnumValue.

2007-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/volume.c:
	kernel32: Read label and serial from the filesystem when the device is accessible
	but unknown.

	* dlls/kernel32/volume.c:
	kernel32: Revert change that slipped in commit
	db24d3af9a6e56c3036ba0a3e5d62dae4f2676d3 by mistake.

	* dlls/opengl32/Makefile.in:
	opengl32: ntdll import is still needed when building without optimizations.

2007-12-07  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: Clear dwBytesRecorded in waveheader when adding buffer.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Simplify the feeding of capture buffers.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Fix return value checking in wavein.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Fix period size in capture.

2007-12-02  Gregor Brunmar <gregor.brunmar@home.se>

	* dlls/comctl32/treeview.c:
	comctl32: Added context menu to treeview.

	* dlls/comctl32/propsheet.c:
	comctl32: Disable propsheet apply button at start up.

2007-12-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Process messages while waiting for a local server to create a pipe.

2007-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/tests/security.c, dlls/comctl32/tests/mru.c,
	  dlls/dsound/dsound.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c, dlls/rpcrt4/tests/ndr_marshall.c:
	Avoid size_t types in traces.

	* dlls/comctl32/listview.c:
	comctl32: Fix a compiler warning.

	* server/directory.c:
	server: Fix incorrect use of size_t instead of data_size_t.

	* dlls/msvfw32/Makefile.in, dlls/msvfw32/msvideo16.c:
	msvfw32: Fix invalid check that caused the rest of VideoCapDriverDescAndVer16
	to be optimized out.

2007-12-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement cloneNode.

2007-12-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: WM_GETTEXTLENGTH should include CRLF conversions in returned count.

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETTEXTLENGTHEX must not count last paragraph break if GTL_USECRLF.

2007-12-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/devenum/createdevenum.c:
	devenum: Remove unneeded cast.

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c:
	dinput: Remove unneeded casts.

	* dlls/cabinet/cabinet.h:
	cabinet: Remove unneeded casts.

2007-12-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetProductCode.

2007-12-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/user32/sysparams.c:
	user32: A few more colour changes to match modern Windows.
	Thanks to Bamm Gabriana for the info.

2007-12-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: WM_GETTEXT should return 0 on overflow but fill buffer anyway.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETTEXTEX with GT_USECRLF should not leave a single CR when
	running out of space.

2007-12-06  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use an alertable wait in rpcrt4_protseq_np_wait_for_new_connection to
	fix a small memory leak flagged by Valgrind.
	This is called only by the RPCRT4_server_thread so we don't have to
	worry about application user APCs being run at improper times.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix a leak of the typelib in the tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix two memory leaks in the test for DispCallFunc.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a reference count leak of the TMarshalDispatchChannel.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix some leaks of the provider handle in the rsaenh tests.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantStructFree.

2007-12-06  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Pt.rc, programs/winecfg/Ro.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Si.rc,
	  programs/winecfg/Tr.rc:
	winecfg: Add missing audio tab controls to other languages.

	* programs/winecfg/Fr.rc:
	winecfg: Updated French translation.

2007-12-05  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Validate input for IFilterGraph_FindFilterByName.

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Fix return value in IFilterGraph_FindFilterByName.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Add some IGraphBuilder related tests.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Add a test for IFilterGraph2.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Move current tests into their own test case.

2007-12-07  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/visual.c, dlls/kernel32/thread.c,
	  dlls/user32/tests/msg.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/winex11.drv/opengl.c, include/rpcdcep.h,
	  programs/regedit/regproc.c:
	Assorted spelling fixes.

2007-12-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/shell32/shell32_Fr.rc:
	Updated French translation.

2007-12-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Register the window used in the marshal tests only once.
	Destroy the windows that have been created when they are no longer needed.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix a memory leak in the htmldoc tests.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Set the number of locks held on the safe arrays in the safe array
	tests to zero before destroying them, otherwise the operation will fail and
	leak memory.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Try to re-use existing memory when unmarshalling variants with
	byref types.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Don't call SafeArrayAllocData in LPSAFEARRAY_UserUnmarshal if we
	called SafeArrayCreateEx instead of SafeArrayAllocDescriptor.
	Otherwise, we'll leak memory.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Improve PointerFree to not free buffer memory.

2007-12-06  Aric Stewart <aric@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add 18 pixel strike with japanese fonts to system.sdf.

2007-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/context.c,
	  dlls/wined3d/state.c, dlls/wined3d/utils.c:
	wined3d: Add an alpha blending test.

	* dlls/ddraw/ddraw.c:
	ddraw: Set X8R8G8B8 for 32 bpp.

2007-12-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/query.c, dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: A more detailed occlusion query test and fixes.

2007-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Initialize output texcoord .w to 1.0 if needed.
	The GL_ARB_vertex_program extension does not define a standard value for
	output texture coordinates. This makes problems when using vertex
	shaders with fixed function fragment processing because fffp divides the
	texture coords by its .w component. This means that gl shaders have to
	write to the .w component of texture coords. Direct3D shaders however
	do not.

2007-12-07  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Remove trailing spaces in ok() calls.

	* dlls/inetcomm/tests/mimeole.c:
	inetcomm/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/ddraw.c, dlls/ddraw/utils.c:
	ddraw: Modify DDRAW_dump_(DWORD|PTR|DDCOLORKEY|DDSCAPS2|pixelformat)() to
	print a trailing '\n'.

	* dlls/ddraw/utils.c:
	ddraw: Rename DDRAW_dump_flags_() to DDRAW_dump_flags_nolf() to clarify its
	difference from DDRAW_dump_flags().

2007-12-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user32/tests/listbox.c:
	user32/tests: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the
	memory with a separate memset() call.

	* programs/winecfg/audio.c:
	winecfg: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory
	with a separate memset() call.

2007-12-06  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Also optimize out imports that are only used for forwards.

	* dlls/ntdll/loader.c:
	ntdll: Support delayed loading of modules referenced by forwarded entry points.

	* tools/winebuild/import.c:
	winebuild: Improved checks for missing forward entry point targets.

	* tools/winebuild/import.c:
	winebuild: Print a warning when failing to import a data export.

	* dlls/advpack/Makefile.in, dlls/advpack/tests/Makefile.in,
	  dlls/browseui/tests/Makefile.in, dlls/cabinet/tests/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d9/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmsynth/Makefile.in,
	  dlls/dmusic/Makefile.in, dlls/dmusic32/Makefile.in,
	  dlls/dswave/Makefile.in, dlls/dwmapi/Makefile.in,
	  dlls/gdiplus/Makefile.in, dlls/gdiplus/tests/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/gphoto2.ds/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hid/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/infosoft/tests/Makefile.in,
	  dlls/inkobj/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/iphlpapi/tests/Makefile.in, dlls/itss/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mscat32/Makefile.in, dlls/mscms/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msvcrtd/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/mswsock/Makefile.in,
	  dlls/msxml3/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/netapi32/tests/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbccp32/Makefile.in, dlls/odbccp32/tests/Makefile.in,
	  dlls/opengl32/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/tests/Makefile.in,
	  dlls/query/Makefile.in, dlls/riched20/tests/Makefile.in,
	  dlls/riched32/tests/Makefile.in, dlls/sane.ds/Makefile.in,
	  dlls/schannel/tests/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/shell32/tests/Makefile.in, dlls/twain_32/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/vmm.vxd/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/wintrust/tests/Makefile.in:
	Removed some unneeded imports.

2007-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/extserv.c, dlls/hlink/tests/hlink.c:
	hlink: Added IHttpNegotiate interface to ExtensionService.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) test.

	* dlls/mshtml/txtrange.c:
	mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) implementation.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Fixed ref counting.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetRulesCollection::get_length implementation.

	* dlls/mshtml/htmlstylesheet.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLStyleSheet::get_rules implementation.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added more DOM tests.

2007-12-05  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, include/Makefile.in, include/bits.idl:
	include: Added IDL file for BITS.

	* include/Makefile.in, include/bitsmsg.h:
	include: Added bitsmsg.h header.

	* dlls/qmgr/Makefile.in, dlls/qmgr/bits_main.c, dlls/qmgr/qmgr_main.c:
	qmgr: Renamed bits_main.c to qmgr_main.c and updated comments.

2007-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Ignore unused attributes when generating the swizzle array.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c:
	wined3d: Test clearing regarding the scissor test and colorwrite.

2007-12-05  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/comctl32/comctl32undoc.c, dlls/comctl32/tests/mru.c:
	comctl32: EnumMRUListA/W fix getting list size by negative item pos.

	* dlls/comctl32/tests/mru.c:
	comctl32: Add EnumMRUList tests.

2007-12-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_Uk.rc:
	shell32: Fix some wrc warnings.

2007-12-05  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Es.rc:
	wineboot: Added Spanish resource.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Es.rc:
	browseui: Add Spanish resource.

	* dlls/shell32/shell32_Es.rc:
	shell32: Update Spanish resource.

	* dlls/mshtml/Es.rc:
	mshtml: Update Spanish resource.

2007-12-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shlview.c:
	shell32: Handle backspace key in shellview.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Si.rc, dlls/shell32/shell32_Sk.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_Zh.rc, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shresdef.h:
	shell32: Localize 'new folder' string.

2007-12-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: Fix a memory leak caused by NdrFullPointerXlatFree not freeing the
	entries in the full pointer translation table.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a memory leak when freeing an association by deleting the critical
	section.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a memory leak in RpcAssoc_BindConnection.

2007-12-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/device.c:
	ddraw: Remove unneeded casts.

	* dlls/cabinet/fci.c, dlls/cabinet/fdi.c:
	cabinet: Remove unneeded casts.

2007-12-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/conpoint.c, dlls/mshtml/editor.c, dlls/mshtml/htmlanchor.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/htmltable.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/install.c, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c, dlls/mshtml/protocol.c,
	  dlls/mshtml/selection.c, dlls/mshtml/service.c, dlls/mshtml/task.c,
	  dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

	* dlls/kernel32/lzexpand.c:
	kernel32: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory
	with a separate memset() call.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/thunks.c,
	  dlls/secur32/wrapper.c:
	secur32: Remove the SECUR32_ALLOC() macro around HeapAlloc().

2007-12-05  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Use the correct deallocator in the htmldoc tests for the memory returned
	by IMoniker_GetDisplayName and fix a use-after-free error.

	* dlls/ole32/moniker.c:
	ole32: Initialise object variable in RunningObjectTableImpl_GetObject.
	As per the rules for memory in RPC, the memory pointer to by object will
	be used during unmarshalling and previously it was uninitialised.
	(Thanks to Dan Kegel and his Valgrind runs for reporting this.)

2007-12-06  Alexandre Julliard <julliard@winehq.org>

	* programs/winhelp/winhelp.c:
	winhelp: Use system colors instead of hardcoded colors.

	* programs/clock/main.c, programs/clock/winclock.c:
	clock: Use system colors instead of hardcoded RGB values.

2007-12-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/credui/credui_No.rc:
	credui: Update Norwegian resources.

	* dlls/mshtml/No.rc:
	mshtml: Update Norwegian resources.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_No.rc:
	browseui: Add Norwegian resources.

	* programs/write/No.rc, programs/write/rsrc.rc:
	write: Add Norwegian resources.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_No.rc:
	wineboot: Add Norwegian resources.

2007-12-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Test for functions should be or-ed.

2007-12-05  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/icmp/icmp_main.c:
	icmp: Correctly handle underflow in IcmpSendEcho().

2007-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/completion.c, server/console.c, server/debugger.c,
	  server/device.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Return correct object types in the get_directory_entry request.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/directory.c,
	  server/object.c, server/object.h, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Partial implementation of NtQueryDirectoryObject.

	* dlls/user32/winstation.c, include/wine/server_protocol.h,
	  server/handle.c, server/handle.h, server/protocol.def,
	  server/request.h, server/trace.c, server/winstation.c:
	server: Implemented EnumWindowStations and EnumDesktops.

2007-12-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Set the memory pointer in NdrBaseTypeUnmarshall to the buffer if we're
	unmarshalling on a server without memory being passed in.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set fMustAlloc to TRUE when unmarshalling an object pointer.

2007-12-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/console.c:
	kernel32: Make tests run on Win98 again.

2007-12-05  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/d3dx8/d3dx8_main.c, include/d3dx8core.h:
	d3dx8: Implementation of D3DXAssembleShaderFromFileA.

2007-12-04  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/svchost/Makefile.in, programs/svchost/svchost.c:
	svchost: Implementation of svchost.

2007-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/tests/mixer.c:
	winmm/tests: Don't mess with the mixer controls in non-interactive mode.

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix error handling in fixed_get_input().

2007-12-03  Tim Schwartz <tim@sanityinternet.com>

	* dlls/advapi32/service.c:
	advapi32: service_control_dispatcher(): Fixed invalid pipe test to display
	GetLastError() before it gets overwritten.

2007-12-03  Aric Stewart <aric@codeweavers.com>

	* dlls/comdlg32/filedlg.c:
	commdlg: File name and extension offsets are not guaranteed to be the same in
	W->A conversions.

2007-12-02  Alexandru Balut <alexandru.balut@gmail.com>

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/varformat.c:
	oleaut32: Implement VarWeekdayName + tests.

2007-12-01  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix buffer sizes.

	* dlls/shell32/shlexec.c:
	shell32: Use sizeof instead of constant for buffer size.

	* dlls/midimap/midimap.c:
	midimap: Fix buffer sizes.

	* dlls/avifil32/api.c:
	avifil32: Fix buffer sizes.

	* dlls/oledlg/oledlg_Ru.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Russian translation.

	* dlls/oledlg/Makefile.in, dlls/oledlg/insobjdlg.c:
	oledlg: Use wide strings, fix buffers size.

2007-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/except.c:
	kernel32: Remove the no-exec fault workaround, it shouldn't be needed anymore.

2007-12-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* .gitignore, include/Makefile.in, include/oleacc.idl:
	include: Add an initial version of oleacc.idl.

2007-12-04  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/ddraw/executebuffer.c, dlls/ddraw/light.c, dlls/ddraw/material.c,
	  dlls/ddraw/utils.c:
	ddraw: DPRINTF -> TRACE.

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: DPRINTF -> TRACE.

2007-12-05  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/mshtml/Fr.rc:
	mshtml: Updated French translation.

	* programs/wordpad/Fr.rc:
	wordpad: Updated French translation.

2007-12-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/write/Fr.rc, programs/write/rsrc.rc:
	write: New French translation.

2007-12-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Use registry settings as a default display mode.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Don't forget to initialize dmFields.

	* programs/explorer/desktop.c:
	explorer: Make initialize_display_settings work with a Win9x version of rpcrt4.

2007-12-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/msi.c, dlls/msi/tests/package.c:
	msi: Reimplement MsiGetComponentPath.

2007-12-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetComponentPath.

2007-12-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Uncomment IUnknown_EnableModeless code.

	* dlls/mshtml/conpoint.c:
	mshtml: Improve debug traces.

	* dlls/mshtml/htmlbody.c:
	mshtml: Return NULL instead of empty string in IHTMLBodyElement::get_background.

2007-12-04  Roy Shea <roy@cs.hmc.edu>

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Added check of dwStructSize required by Windows in calls to
	InternetCrackUrlA.

	* dlls/wininet/tests/url.c:
	wininet: Removed inline from copy_compsA and zero_compsA to allow Windows
	testing.

2007-12-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt40/Makefile.in, dlls/msvcrt40/msvcrt40.c:
	msvcrt40: Add DllMain.

2007-12-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stack.c:
	dbghelp: Remove unneeded casts.

	* dlls/d3d9/device.c, dlls/d3d9/volume.c:
	d3d9: Remove unneeded casts.

	* dlls/d3d8/device.c, dlls/d3d8/volume.c:
	d3d8: Remove unneeded casts.

2007-12-05  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: winhelp >3.0 files always use 0x4000 as a divisor in TOPICPOS regardless
	of DecompressSize.

	* programs/winhelp/winhelp.c:
	winhelp: Do not confuse caller application with bogus error when we really
	succeeded.

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/rebar.c:
	comctl32: Simplify condition based on WPARAM always being >= 0.

2007-12-04  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/state.c:
	wined3d: Fix error handling in transform_texture().

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msvcrt/heap.c:
	msvcrt: Fix error handling in _aligned_offset_realloc().

2007-12-03  Guido Barzini <gnb10@gnb10.uklinux.net>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Restore lost initialisation of ptr->AddressLength in GetAdaptersInfo.

2007-12-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/explorer/desktop.c:
	explorer: Store current display mode in the registry on startup.

	* dlls/user32/sysparams.c:
	user32: Make sure the desktop window is created before mode enumeration.

	* server/fd.c, server/file.h:
	server: Make fd_poll_event static.

2007-12-04  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: There are files without Phrases or Phrases40 compression, add support
	for them.

2007-12-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian resource.

2007-12-04  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for a pointer to a conformant strings.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Set the destination pointer in PointerUnmarshall before calling the
	referenced type's unmarshalling routine.
	When a pointer that is dereferenced is encountered then this can result
	in a stale pointer (i.e. the one that is marshalled into the buffer for
	the embedded pointer unmarshalling case) being used instead of the one
	that was intended.

2007-12-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltable.c:
	mshtml: Added DIID_HTMLTableEvents connection point.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Move HTMLTextContainerEvents connection point to HTMLTextContainer
	object.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IConnectionPointContainer iface to all HTMLElement objects.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltable.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/htmltextcont.c, dlls/mshtml/mshtml_private.h:
	mshtml: Initialize HTMLElement in the beginning of constructors.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make IConnectionPointContainer more flexible.

2007-12-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test the CompLocator subset of the AppSearch action.

2007-12-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the proper drawable size when clearing.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c:
	wined3d: Clear honors the viewport.

	* dlls/wined3d/device.c:
	wined3d: Fixes for drawable handling in Clear.

	* dlls/wined3d/context.c:
	wined3d: Disable the scissor test when blitting.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Retrieve the height properly when setting the viewport.

	* dlls/wined3d/state.c:
	wined3d: Use the proper drawable size when setting the scissor rect.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a method for querying the gl drawable size of rendertarget.

2007-12-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/decode.c, dlls/crypt32/serialize.c:
	crypt32: Remove unnecessary casts.

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/printdlg.c:
	comdlg32: Remove unnecessary casts.

2007-12-03  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Use HEAP_ZERO_MEMORY instead of setting individual fields to zero.

2007-12-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Fr.rc:
	wineboot: New French translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Fr.rc:
	browseui: Updated French translation.

	* dlls/shell32/shell32_Fr.rc:
	shell32: Updated French translation.

2007-11-30  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Handle all non-continuable exceptions in CStdStubBuffer_Invoke.

2007-12-03  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix the test of the size returned from WdtpInterfacePointer_UserSize.
	It varies on different versions of Windows, so we shouldn't test it for
	an exact value.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Put the delegating stub thunks in an executable memory page,  rather
	than on the heap.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Call IRpcChannelBuffer_GetDestCtx in NdrStubInitialize, just like we
	do in NdrProxyInitialize.

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Flesh out more of the IRpcChannelBuffer vtable to make the
	test_delegating_Invoke test succeed on Windows.

2007-12-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/console.c, dlls/kernel32/tests/console.c:
	kernel32: Implement and test {G, S}etConsoleInputExeName{A, W}.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi32.spec,
	  dlls/gdi32/gdi_private.h:
	gdi32: Implement GetTextExtentExPointI.

2007-12-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlview.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Get rid of the internal _InsertMenuItem function.

2007-12-01  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Ca.rc,
	  dlls/shell32/shell32_Cn.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_Da.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_Hu.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ja.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Si.rc, dlls/shell32/shell32_Sk.rc,
	  dlls/shell32/shell32_Sv.rc, dlls/shell32/shell32_Tr.rc,
	  dlls/shell32/shell32_Uk.rc, dlls/shell32/shell32_Wa.rc,
	  dlls/shell32/shell32_Zh.rc, dlls/shell32/shresdef.h,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Localize file context menu.

2007-12-01  Zac Brown <zac@zacbrown.org>

	* dlls/wininet/tests/ftp.c:
	wininet: Add test for FtpGetCurrentDirectoryA in wininet/tests/ftp.c.

	* dlls/wininet/ftp.c:
	wininet: Fix FtpGetCurrentDirectoryW to handle bad input.

2007-12-03  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/schannel/Makefile.in, dlls/schannel/version.rc:
	schannel: Add version resource.

	* .gitignore, dlls/rsabase/Makefile.in, dlls/rsabase/version.rc:
	rsabase: Add version resource.

	* tools/wine.inf:
	wine.inf: Add more fake dlls.

2007-12-03  Aric Stewart <aric@codeweavers.com>

	* programs/uninstaller/main.c:
	uninstaller: Iterate keys in HKEY_CURRENT_USER also as some programs install
	their uninstall information there.

2007-12-01  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Enlarge font size by 3 as native winhelp does.

	* programs/winhelp/hlpfile.c:
	winhelp: Rewrite internal files lookup using B+ tree search. Add some sanity
	checks.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Rewrite Context support using B+ tree search.

	* programs/winhelp/hlpfile.c:
	winhelp: Implement generic B+ tree search function.

	* programs/winhelp/hlpfile.c:
	winhelp: winhelp 3.0 uses page numbers instead of hash values.

	* programs/winhelp/hlpfile.c:
	winhelp: Add support for winhelp 3.0 topics.

	* programs/winhelp/hlpfile.c:
	winhelp: Add support for winhelp 3.0 phrases.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Correctly deal with various TopicBlockSize/Compression
	combinations. Simplify HLPFILE_Uncompress_Topic function.

2007-12-02  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Add a stub implementation of MsiEnumComponentCostsW.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: Implement the Version property of the Installer object.

2007-11-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test the CCPSearch action.

2007-12-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c:
	ntdll: Added a sleep in NtGet/SetContextThread, a yield is not enough on
	some kernels.

2007-12-02  James Hawkins <truiken@gmail.com>

	* dlls/msi/where.c:
	msi: Use a hash table for reordering rows in a WHERE query to conserve space.

2007-12-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Add parentheses to a flag check.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Detect the Intel GPU in macbooks.

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Unify bpp to format conversion.

2007-11-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Enabling too many lights is silently ignored.
	I'm resending this patch because my reply to Henri's concern came too late.
	Henri noted that I am enabling lights that do not exist. Existing tests show
	that if no light is assigned to the index, LightEnable creates a light with a
	set of default parameters, so the tests should be fine.
	From 9ee4c61805b50886f79e87d744b52f27b7b00b4e Mon Sep 17 00:00:00 2001
	From: Stefan Doesinger <stefan@codeweavers.com>
	Date: Thu, 29 Nov 2007 13:22:47 +0100
	Subject: [PATCH] WineD3D: Enabling too many lights is silently ignored
	This patch adds tests for all d3d versions that show that Windows
	pretends that enabling more lights than supported succeeds. D3D_OK is
	returned, and the light is reported as enabled.
	What is not tested in this patch is the rendering output of this
	situation, thus the FIXME is still written.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: mov to a0.x does a floor(), not a round to nearest.

2007-12-01  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/cursoricon.c:
	user32: Add a FIXME for animated cursors.

	* dlls/winealsa.drv/waveinit.c:
	winealsa.drv: Fix a comment.

2007-12-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix handling of a special case in IWineD3DImpl_FillGLCaps() and adjust
	type of loop variable.

	* dlls/comctl32/header.c:
	comctl32: Remove extraneous check (unsigned < 0).

2007-12-02  Ted Percival <ted@midg3t.net>

	* programs/regedit/listview.c:
	regedit: Display REG_DWORD as unsigned with lowercase hex digits.

2007-12-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/commctrl.c, dlls/comctl32/dpa.c, dlls/comctl32/dsa.c,
	  dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/tooltips.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c:
	comctl32: Remove unneeded casts.

	* dlls/advapi32/cred.c, dlls/advapi32/crypt.c, dlls/advapi32/security.c:
	advapi32: Remove unneeded casts.

	* dlls/cabinet/fdi.c:
	cabinet: Remove unneeded casts.

2007-11-30  Rob Shearman <rob@codeweavers.com>

	* dlls/d3dx8/math.c:
	d3dx8: Initialise temp in D3DXQuaternionInverse to avoid a uninitialised
	variable warning with some versions of gcc.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Test that the string retrieved from get_name was actually unmarshalled
	correctly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Reverse the conditions for which *pPointer is assigned base_ptr_val
	in PointerUnmarshall.
	In one condition (fMustAlloc == TRUE), base_ptr_val may be uninitialised
	and so cause a valgrind warning. Reversing the check is harmless and
	doesn't result in a performance decrease.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Initialise the memory in test_simple_struct_marshal before passing it
	to NdrSimpleStructUnmarshall.
	Otherwise, the unmarshalling code will read from unintialised memory
	when trying to reuse the embedded pointers in the memory block.
	Also fix a couple of memory leaks.

	* include/winerror.h:
	include: Fix the HRESULT_FROM_WIN32 macro to not change the HRESULT if the
	error is already an HRESULT.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c:
	ole32: Ignore the threading model of the PSFactoryBuffer object created during
	standard marshaling.
	This is so that we don't try to host it.

	* dlls/ole32/compobj.c:
	ole32: Always create a window for the main apartment.

	* dlls/winecrt0/stub.c, include/wine/exception.h, include/winnt.h:
	include: Move Wine-specific EH_* defines from winnt.h to
	include/wine/exception.h.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement OLEPictureImpl_GetIDsOfNames.

2007-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/version.c, dlls/kernel32/version.c:
	kernel32: Add some simple tests for GetVersionExA.

2007-11-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem2.c:
	mshtml: Added IHTMLElement2::get_dir implementation.

2007-11-30  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.50.

----------------------------------------------------------------
2007-11-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltable.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLTable interface stub implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLTable declaration.

2007-11-30  Francois Gouget <fgouget@free.fr>

	* dlls/d3dx8/tests/math.c:
	d3dx8/tests: Fix compilation on systems that don't support nameless unions.

2007-11-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
	user32: Destroying the current cursor results in an error.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Remove the X channel fixup in render target unlocking.

2007-11-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Added stub for FindVolumeClose.

2007-11-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/mk.c, dlls/urlmon/regsvr.c,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c, dlls/urlmon/umon.c,
	  dlls/urlmon/umstream.c, dlls/urlmon/urlmon_main.h:
	urlmon: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-11-29  Sven Paschukat <Sven.Paschukat@T-Online.de>

	* dlls/ctapi32/ctapi32.c:
	ctapi32: Added null terminator to library name.

2007-11-29  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix NdrSimpleStructUnmarshall to cope with [in, out] embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve PointerUnmarshall to cope with keeping the non-NULL source
	pointer of a client unmarshall.
	This will enable various types with embedded pointers to handle [in,out]
	parameters correctly by keeping the existing memory.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move forcing of fMustAlloc to NULL to the callers of
	EmbeddedPointerUnmarshall.
	This will enable them to be individually fixed up to use memory if it
	was provided by the caller.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: EmbeddedPointerUnmarshall doesn't need to change the address of the
	allocated memory, so reduce the level of indirection of the memory parameter
	by one.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Errors in sending or receiving packets should result in RPC_S_CALL_FAILED
	being returned, not RPC_S_PROTOCOL_ERROR.

2007-11-27  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c:
	advapi32: Add stub for CreateProcessWithLogonW.

2007-11-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/font.c:
	gdi32: Fix the type of two loop variables.

2007-11-28  Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>

	* dlls/user32/exticon.c:
	user32: Reduce scope of variable in ICO_ExtractIconExW() and initialize it.

2007-11-29  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winedbg/info.c:
	winedbg: Warning fixes.

2007-11-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/kernel32/local16.c:
	kernel32: Handle default case in Local32_FromHandle().

2007-11-29  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/loader.c:
	libwine: Work around the Mac OS dynamic loader support for PE files.

2007-11-29  Aric Stewart <aric@codeweavers.com>

	* dlls/winecoreaudio.drv/mixer.c:
	coreaudio: Verify valid lineId in MIXER_GETLINECONTROLSF_ONEBYTYPE.

	* dlls/winmm/winmm.c:
	winmm: Correct check for MIXER_GETLINECONTROLSF_ONEBYTYPE in
	mixerGetLineControlsA.

2007-11-28  Marco Schuster <marco@harddisk.is-a-geek.org>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Added a card ID for a 8600 Mobile GT.

2007-11-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/advapi32/registry.c:
	advapi32: Fix a typo.

2007-11-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Don't check for the media or cabinet if the cabinet is internal.

	* dlls/msi/appsearch.c:
	msi: Make sure attr is valid before checking for the directory bit.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/texture.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Activate GL_ARB_texture_rectangle.

	* dlls/wined3d/device.c:
	wined3d: Refuse to create a mipmapped conditional np2 texture.

2007-11-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Make the code aware of GL_ARB_texture_rectangle.

2007-11-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_ARB_texture_rectangles to our opengl extensions.

	* dlls/wined3d/surface.c:
	wined3d: Avoid hardcoding GL_TEXTURE_2D.

	* dlls/wined3d/context.c, dlls/wined3d/surface.c:
	wined3d: Disable GL_TEXTURE_2D in the standard blit setup.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix a test in the WdtpInterfacePointer tests.

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix description of what is being test in ok calls in the
	WdtpInterfacePointer tests.

2007-11-28  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	crypt32: Support setting the salt value through KP_SALT_EX.

	* dlls/rsaenh/rsaenh.c:
	crypt32: Support getting and setting the KP_PADDING key param.

	* include/wincrypt.h:
	wincrypt.h: Add values for KP_PADDING key param.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix an integer overflow in NdrConformantStructMarshall and
	NdrConformantStructUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix some more potential buffer overflows.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check there is enough space in the buffer and that the size doesn't
	cause an overflow when copying data to it.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check for integer overflows when increasing the buffer length.
	Rename safe_buffer_copy to safe_copy_from_buffer.

2007-11-25  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Test more offsets for _aligned_offset_realloc (especially offset >
	alignment).

2007-11-28  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/heap.c:
	msvcrt: Fix _Aligned_offset_realloc (move correct block of memory); add a
	comment to explain why.

2007-11-22  Divan Burger <divan.burger@gmail.com>

	* dlls/user32/sysparams.c, tools/wine.inf:
	user32, wine.inf: Enable title bar gradients and match colours with win2k.

2007-11-28  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/urlmon/umstream.c:
	urlmon: The callback parameter can be null, check pointer before using.

2007-11-28  Aric Stewart <aric@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Implement WIDM_GETPOS.

2007-11-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add printf format checking to the shader_addline function and fix
	resulting warnings.

2007-11-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix a sign mistake in the code creating the sorted attrib.

2007-11-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Allow using a different internal format for fbos.
	OpenGL drivers do not support some low precision internal formats
	like GL_RGB5 for fbo color targets. Direct3D application depend on them,
	so provide a fallback format for render targets if the requested format
	itself is not supported.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Report some more geforce 7 cards as geforce 7.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Do not try to disable unsupported texture units.

2007-11-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Add some missing checkGLcall calls.

2007-11-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Work around nvidia beta driver bug.

2007-11-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Inform the texture about filtering changes.
	The surface_blt_to_drawable function changes the filtering settings of
	the texture object, but without informing the container about this
	change. This patch makes sure that the basetexture knows about this and
	reapplies the changed states to the settings chosen by the app.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/cred.c:
	advapi32: Make the credential registry key stay around if a persist value
	longer than session is specified.

	* dlls/advapi32/cred.c:
	advapi32: Use the open_for_write parameter to open_cred_mgr_key and fix
	get_cred_mgr_encryption_key to not need KEY_WRITE access to the key passed in.

2007-11-27  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Empty container names are allowed for CRYPT_VERIFYCONTEXT contexts.

2007-11-26  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c:
	crypt32: Add CERT_STORE_ADD_NEWER support to CertAddCertificateContextToStore.

	* dlls/crypt32/cert.c:
	crypt32: Implement finding an existing certificate in a store.

2007-11-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/name.c, dlls/dnsapi/query.c,
	  dlls/dnsapi/record.c:
	dnsapi: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

	* dlls/shdocvw/events.c, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shlinstobj.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/tests/vartype.c:
	oleaut32: Handle integer overflow of len in SysReAllocStringLen and
	SysAllocStringByteLen.

2007-11-25  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/ntdll/heap.c:
	ntdll: Trace arena magics (may help debugging some heap corruptions).

2007-11-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/d3dx8/math.c, include/d3dx8math.h, include/d3dx9math.h:
	d3dx8: Add WINAPI to the prototypes of D3DXMatrixTransformation.

2007-11-27  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/msi/dialog.c:
	msi: Fix invalid SQL query.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Introduce a new helper function, TLB_FreeCustData, for freeing
	custom data.
	Fix memory leaks caused by the variable and interface custom data not
	being freed properly.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free the correct custom data inside ITypeInfo_fnRelease.
	Since the code is inside the loop for function data, it should be
	freeing the function's custom data, not the interface's.

2007-11-27  Alexandre Julliard <julliard@winehq.org>

	* server/queue.c:
	server: When merging mouse messages ignore the window if it isn't set.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't clear the auth data for Basic authentication in
	HTTP_InsertAuthorizationForHeader.
	It isn't tracked per connection, unlike NTLM authentication, and so the
	server will return a 401 error and try to get us to authenticate again.
	However, this doesn't work as the authentication information is assumed
	by the code to be valid for the whole connection.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix the tests for up_enum16.
	It is different to the other base types as it has a different size on
	the wire to in memory, so it can't just be set to the buffer when
	unmarshalling.

	* dlls/credui/tests/credui.c:
	credui: Fix a test failure on Windows XP.

2007-11-27  David Adam <David.Adam@math.cnrs.fr>

	* include/Makefile.in, include/d3dx9.h, include/d3dx9math.h,
	  include/d3dx9math.inl:
	include: Header files for d3dx9_xx.

2007-11-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Correctly handle the y offset with offscreen rendering.
	This fixes a regression introduced with the MAD patch.

2007-11-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Downgrade an ERR to a WARN.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/pixelshader.c:
	wined3d: Fog is applied after sRGB correction.

	* dlls/wined3d/pixelshader.c:
	wined3d: Make SRGB write correction working with 1.x shaders in arb.

2007-11-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a test for vertex shader input matching.

2007-11-25  Lauris Kaplinski <lauris@kaplinski.com>

	* dlls/wined3d/device.c:
	wined3d: Fixed potential reference of freed backBuffer array in
	IWineD3DDeviceImpl_SetFrontBackBuffers.

2007-11-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdi32/dc.c:
	gdi32: Fix a typo.

	* dlls/dinput/effect_linuxinput.c:
	dinput: Use bitwise NOT not logical NOT.

2007-11-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: socket() returns -1 on error so check the return value against that.

	* dlls/wininet/tests/http.c:
	wininet/tests: Do not compare the return value of socket() with 0. Use
	INVALID_SOCKET instead.

2007-11-26  Rob Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/advapi32/Makefile.in,
	  dlls/advapi32/cred.c:
	advapi32: Add support for using the Mac Keychain services as a backend for
	the credential functions instead of the registry.

	* dlls/ole32/ole32.spec, dlls/ole32/tests/usrmarshal.c,
	  dlls/ole32/usrmarshal.c:
	ole32: Add tests for WdtpInterfacePointer_* functions.
	Add stubs for these so that the tests link.

	* dlls/ole32/rpc.c:
	ole32: Clean up properly in ClientRpcChannelBuffer_SendReceive in the case
	where PostMessageW fails.

	* dlls/ole32/rpc.c:
	ole32: Store the dispatch parameters in the message state structure to allow
	them to be initialised earlier in the sequence of IRpcChannelBuffer calls.

	* dlls/advapi32/cred.c:
	advapi32: Fix a typo in CredEnumerateW.

	* dlls/advapi32/cred.c:
	advapi32: Move credential registry reading code to separate functions.

2007-11-26  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/regsvr.c,
	  dlls/inetcomm/tests/Makefile.in, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:SetData.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:[G|S]etCurrentEncoding.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:IsContentType.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Store a header's parameters as a list.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Unfold headers.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Parse headers into a list.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Copy RFC822 headers into a memory block for later parsing.

2007-11-21  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/wincrypt.h:
	include: Add missing definitions for DSS in wincrypt.h.

2007-11-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shell32_main.c:
	shell32: GetModuleFileNameW gets number of WCHARs not bytes.

2007-11-22  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/reg.c:
	ntdll: Fix computation in enumerate_key().

2007-11-23  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/inetcomm/internettransport.c:
	inetcomm: Fix error check in InternetTransport_Connect().

2007-11-22  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Rewrite condition in vshader_program_add_param() to actually distinguish
	between two cases.

	* dlls/itss/chm_lib.c:
	itss: Avoid checking an unsigned value for < 0.

	* dlls/winedos/int21.c:
	winedos: Use DWORD instead of long for return values of SetFilePointer.
	Adjust type of loop variable in INT21_Ioctl_Char().

	* dlls/netapi32/tests/apibuf.c:
	netapi32: Remove one tests and simplify another based on the limited range
	of unsigned.

	* dlls/ntdll/sec.c:
	ntdll: Simplify condition in RtlGetAce() based on variable (un)signedness.

	* dlls/oleaut32/typelib.c:
	oleaut32: Simplify two conditions based on the fact that unsigned variables
	cannot be negative.

	* dlls/oleaut32/typelib2.c:
	oleaut32: Simplify two conditions based on the fact that unsigned variables
	cannot be negative.

2007-11-21  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/scroll.c:
	user32: Fix variable type in SCROLL_HandleScrollEvent().  Remove useless check
	in SCROLL_SetScrollInfo().

2007-11-25  Patrick Moran <patrick.a.moran@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Fix atou() return value mistake.

2007-11-21  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Fix memory leak (found by Smatch).

2007-11-21  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTransformation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionExp.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionLn.

2007-11-20  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationYawPitchRoll.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationMatrix.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationAxis.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionToAxisAngle.

2007-11-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence common invalid QueryInterface FIXMEs.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Terminate child process in virtual tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IOleCommandTarget implementation to HTMLTxtRange.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetsCollection::item implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlstylesheet.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Store nsIDOMCSSStyleSheet in HTMLStyleSheet object if available.

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/mk.c, dlls/urlmon/regsvr.c,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c, dlls/urlmon/umon.c,
	  dlls/urlmon/umstream.c, dlls/urlmon/urlmon_main.h:
	urlmon: Wrap heap functions.

2007-11-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/where.c:
	msi: Downgrade an ERR to a WARN.

	* dlls/msi/source.c:
	msi: Fix the condition of a FIXME.

	* dlls/msi/format.c:
	msi: Downgrade an ERR to a WARN.

	* dlls/msi/custom.c:
	msi: Downgrade a FIXME to a WARN.

	* dlls/msi/files.c:
	msi: Only check the volume label if it's different than the first media's
	volume label.

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/install.c:
	msi: Check the destination file's hash and skip that file if the hash matches.

	* dlls/msi/tests/install.c:
	msi: Set the file contents of the file hash test file explicitly.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Verify the szFilePath parameter of MsiGetFileHash.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetFileHash and clean up the existing tests.

2007-11-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix dead zone handling.

2007-11-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Use logical OR not bitwise OR.

	* dlls/user32/combo.c:
	user32: Fix a typo.

	* dlls/comctl32/theme_combo.c:
	comctl32: Fix a typo.

2007-11-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/menu.c:
	user32: Constify some variables.

2007-11-22  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32: Change the shared manifest test to depend on a build number that
	isn't currently published on at least XP, showing that assemblies with higher
	build numbers can be used.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Shared manifests should have a less-strict version check performed when
	loading them as dependencies.

2007-11-22  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Update the version in the created version to the highest current
	version present on XP.
	We don't need to create more than one because application dependencies
	can be resolved using shared assemblies with higher build and revision
	numbers.

	* dlls/ole32/marshal.c:
	ole32: Fix a race in find_proxy_manager.

2007-11-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/listbox.c:
	user32: Constify some variables.

2007-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/wsock32/Makefile.in, dlls/wsock32/wsock32.spec:
	wsock32: Forward AcceptEx and GetAcceptExSockaddrs to mswsock.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Make sure to erase the dragging frame before moving the window.

2007-11-21  Divan Burger <divan.burger@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Change the desktop colour and pattern to match win2k.

	* dlls/user32/sysparams.c:
	user32: Fix colours to match exactly with Windows 2000.

2007-11-20  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/rsaenh/Makefile.in, dlls/rsaenh/aes.c, dlls/rsaenh/implglue.c,
	  dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c,
	  dlls/rsaenh/tests/rsaenh.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Add implementation of Enhanced RSA AES Provider.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add tests for RSA_AES provider.

2007-11-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml: Tests for createTextNode.

	* dlls/msxml3/domdoc.c:
	msxml: Implement createTextNode.

2007-11-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml: Always return a string in get_text.

	* dlls/msxml3/tests/domdoc.c:
	msxml: Added test for get_text.

2007-11-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkCreateExtensionServices tests.

	* dlls/hlink/Makefile.in, dlls/hlink/extserv.c, dlls/hlink/hlink_main.c:
	hlink: Added HlinkCreateExtensionServices implementation.

	* dlls/hlink/browse_ctx.c, dlls/hlink/hlink_main.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Wrap heap functions.

	* dlls/hlink/browse_ctx.c, dlls/hlink/hlink_main.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Move common includes and function declarations to header file.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkUpdateStackItem stub.

2007-11-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Bool constants aren't vectors.

2007-11-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Track vertex declaration changes on vertex shaders.
	If an attribute has type D3DDECLTYPE_D3DCOLOR, the red and blue channels
	are swizzled in the shader. Since the attribute is stored in the vertex
	declaration and not the vertex shader, it can change by setting a new
	vertex declaration. If this happens, we have to recompile the shader
	with the swizzling of that specific attribute turned on or off.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move glsl shader destruction to the glsl shader backend.

	* dlls/wined3d/vertexshader.c:
	wined3d: Move destroying the glsl vshader into a separate function.

2007-11-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Do not cap fragment samplers to 8.

2007-11-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Some fixes for Norwegian translation.

2007-11-20  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winefile/Es.rc:
	winefile: Spanish resource file updated.

2007-11-20  Lei Zhang <thestig@google.com>

	* dlls/shell32/changenotify.c:
	shell32: Only notify immediate parent.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Perform copy in UnixFolder_ISFHelper_CopyItems.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception if a NULL ref-pointer is passed in to PointerMarshall
	or PointerBufferSize.

	* server/file.c:
	server: Fix incorrect translation of the World SID to and from Unix file
	permissions.
	The World SID now maps to user|group|other instead of just other.

2007-11-20  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/credui/credui_Fr.rc:
	credui: Updated French translation.

	* programs/cmd/Fr.rc:
	cmd: Updated French translation.

2007-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Don't crash the test if GetThreadContext fails.

2007-11-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/user32/resources/display.rc, dlls/user32/sysparams.c:
	user32: Change to modern Windows colours.

2007-11-20  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/chain.c,
	  dlls/crypt32/tests/crl.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c,
	  dlls/crypt32/tests/store.c:
	crypt32/tests: Get the tests running on Windows 98.

	* dlls/ntdll/tests/file.c:
	ntdll/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/user32/tests/listbox.c:
	user32/tests: Add the trailing '\n' to an ok() call.

2007-11-19  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionBaryCentric.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionSquad.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionSlerp.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionInverse.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionMultiply.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXColorAdjustContrast.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXColorAdjustSaturation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneTransform.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneFromPoints.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneFromPointNormal.

2007-11-18  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Fix ITypeInfo leak.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add missing VariantClear.

	* dlls/msi/tests/automation.c, dlls/msi/tests/install.c:
	msi/tests: Close opened service handles.

	* dlls/msi/automation.c, dlls/msi/script.c:
	msi: automation: Fix automation object reference counts when objects are created.

2007-11-11  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/Makefile.in, programs/wordpad/print.c,
	  programs/wordpad/resource.h, programs/wordpad/rsrc.rc,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Move printing functions to a separate file.

2007-11-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix print preview bar.

2007-11-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Refer to main menu using IDM_MAINMENU.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* server/file.c:
	server: Fix a typo in the enumeration of the ACE's in sd_to_mode.
	This caused only the first ACE to be examined, causing permissions to
	always be set to ----???---.

	* dlls/ntdll/process.c, dlls/ntdll/tests/info.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Change the get_dll_info server request to allow retrieving the image
	file name of a process.
	Implement NtQueryInformationProcess(ProcessImageFileName).

2007-11-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Change FIXME that is usually invalid to TRACE.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more loading tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Reload page in exec_editmode if available.

	* dlls/mshtml/editor.c:
	mshtml: Always initialize output in exec_fontname.

	* dlls/mshtml/olecmd.c:
	mshtml: Use call_set_active_object in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Move IOleInPlaceFrame::SetActiveObject call to separated function.

2007-11-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Free the converted declaration data after creating the declaration.

	* dlls/d3d8/tests/visual.c:
	d3d8: Destroy the window after the visual test.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/palette.c,
	  dlls/wined3d/resource.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use standard wine lists for the resource list.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Free the shader function when freeing the shader.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move IUnknown functions to IWineD3DBaseShader.

	* dlls/d3d8/device.c:
	d3d8: Release the vertex declarations array when destroying the device.

2007-11-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Return correct error from WebBrowser::Quit.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::get_Application implementation.

2007-11-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Check the cabinet's full path for existence, not just the cabinet name.

2007-11-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/edit.c:
	user32: Constify some variables.

2007-11-19  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_En.rc, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Display a warning balloon if the user has Caps Lock on.

	* dlls/credui/credui_En.rc, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Show a balloon tip in the credential dialog if
	CREDUI_FLAGS_INCORRECT_PASSWORD was specified.

	* dlls/urlmon/bindctx.c:
	urlmon: Fix a reference count leak in RegisterBindStatusCallback.

	* programs/explorer/systray.c:
	explorer: Add a fixme to show when applications are trying to show a balloon
	tip in the taskbar notification area.

	* dlls/comctl32/comboex.c:
	comctl32: Forward the WM_GETTEXTLENGTH message from ComboEx controls to its
	edit control.

	* dlls/comctl32/tooltips.c:
	comctl32: Fix the tooltips behaviour when TTF_ABSOLUTE isn't specified.
	This does not mean to use the current cursor position. Instead, it means
	that the left hand edge of balloon tips doesn't have to be exactly the
	co-ordinate passed in (i.e. the stem can be as vertical as possible) and
	it means non-balloon tips can use smart placement.

	* dlls/comctl32/tooltips.c:
	comctl32: Unify the implementation of TOOLTIPS_Show and TOOLTIPS_TrackShow to
	give tracked tooltips balloon support.

2007-11-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Fixed handling channels without container and necko channel.

2007-11-19  Bang Jun-young <junyoung@mogua.com>

	* dlls/olecli32/olecli_main.c:
	olecli32: Fix invalid syntax.

2007-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/settings.c, programs/explorer/Makefile.in,
	  programs/explorer/desktop.c:
	winex11.drv: Use display device guid managed by explorer.

2007-11-19  Alexandre Julliard <julliard@winehq.org>

	* libs/port/spawn.c:
	libport: Work around Mac OS execve() breakage.

	* dlls/ntdll/loader.c, dlls/ntdll/server.c:
	ntdll: Unblock signals in process init only after the dlls have been imported.

	* dlls/ntdll/loader.c:
	ntdll: Send the exit code to the server on failed initialization.

	* dlls/ntdll/loader.c:
	ntdll: Initialize the PEB LoaderLock pointer.

2007-11-19  Michael Stefaniuc <mstefani@redhat.de>

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/utils.c,
	  tools/wrc/utils.c:
	tools: Remove duplicate includes.

	* dlls/atl/atl_ax.c, dlls/dinput/joystick_linux.c, dlls/dnsapi/ns_name.c,
	  dlls/quartz/avidec.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/user32/winpos.c, dlls/uuid/uuid.c, dlls/winmm/mci.c:
	dlls: Remove duplicate includes.

	* dlls/setupapi/setupcab.c, dlls/setupapi/setupx_main.c:
	setupapi: Remove duplicate includes.

	* dlls/kernel32/kernel_main.c, dlls/kernel32/tests/toolhelp.c:
	kernel32: Remove duplicate includes.

	* dlls/ntdll/heap.c, dlls/ntdll/serial.c, dlls/ntdll/signal_powerpc.c:
	ntdll: Remove duplicate includes.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/tests/printdlg.c:
	comdlg32: Remove duplicate includes.

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/parser.c, dlls/quartz/pin.c, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Fix memory leaks on error paths. Found by Smatch.

	* dlls/qcap/vfwcapture.c:
	qcap: Fix a mem leak on an error path. Found by Smatch.

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Fix a mem leak on an error path. Found by Smatch.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Use ANSI function declarations.

2007-11-18  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Override the default banner if the caller specifies one to
	CredUIPromptForCredentialsW.

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Hold the thread-data's critical section while cancelling a call.
	Check that there is a connection before trying to cancel it.

2007-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Add stub implementations for FindFirstVolume{A, W}.

	* dlls/wininet/cookie.c:
	wininet: Initialize path buffer in InternetSetCookie.

2007-11-18  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/advapi32/service.c:
	advapi32: Remove untriggerable check.

2007-11-17  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Fix typos in warning messages.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Fix const-ness of parameters to printBytes().

2007-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/tests/hlink.c, dlls/shdocvw/shdocvw.inf:
	shdocvw: Set default home and search page.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.inf:
	shdocvw: Register CLSID_InternetShortcut.

	* dlls/uuid/uuid.c, include/Makefile.in, include/isguids.h:
	include: Added isguids.h.

2007-11-17  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/netapi32/access.c:
	netapi32: Remove redundant NULL check before HeapFree(). Found by Smatch.

	* dlls/msvcrt/tests/heap.c:
	msvcrt/tests: Remove redundant NULL check before free(). Found by Smatch.

2007-11-17  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for LinkWindow_UnregisterClass.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for LinkWindow_RegisterClass.

	* dlls/credui/credui_main.c:
	credui: Make sure not to leave the password in memory when no longer in use.

	* dlls/credui/credui_main.c:
	credui: Ensure that the foreground window doesn't get changed while the user
	is typing in their password.
	This doesn't currently work on Wine as LockSetForegroundWindow isn't
	implemented, but when it does it should work nicely.

	* dlls/credui/credui_main.c:
	credui: Check for and don't add duplicates when filling the username combo box.

	* dlls/credui/credui_main.c:
	credui: Enumerate saved credentials and use these to populate the combo box.

	* dlls/credui/credui_De.rc, dlls/credui/credui_En.rc,
	  dlls/credui/credui_Ko.rc, dlls/credui/credui_No.rc,
	  dlls/credui/credui_Pl.rc, dlls/credui/credui_Sv.rc:
	credui: Increase the dropped-down size of the username combo box.

	* dlls/credui/credui_main.c:
	credui: Split CredDialogProc out into separate functions.

	* dlls/credui/Makefile.in, dlls/credui/credui_main.c:
	credui: Add support for saving the credentials input using
	CredUIPromptForCredentials by calling CredWriteW.

	* include/winuser.h:
	include: Add definitions used for AllowSetForegroundWindow and
	LockSetForegroundWindow.

2007-11-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Don't check for a cabinet's existence if it's embedded in the package.

2007-11-16  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/comctl32/comboex.c:
	comctl32: Fix handling of CB_RESETCONTENT in ComboBoxEx.

2007-11-16  Juan Lang <juan.lang@gmail.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove a bad comment.

	* dlls/shell32/classes.c:
	shell32: Use more restricted registry rights when quering values.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate memory for executing an URL.

	* dlls/shell32/shlexec.c:
	shell32: Use helper function to execute a URL.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for command.

	* dlls/shell32/shlexec.c:
	shell32: Constify some parameters.

	* dlls/shell32/shlexec.c:
	shell32: Don't overwrite the caller's buffer when doing a dde connection.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for quoted command.

	* dlls/shell32/shlexec.c:
	shell32: Use a helper function for executing a found executable.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate directory buffer.

	* dlls/shell32/shlexec.c:
	shell32: Use helper function to translate ID list.

	* dlls/shell32/shlexec.c:
	shell32: Use a helper function for executing a class.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for command parameters.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct confusing indentation in GetTcpTable.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct copy/paste error in GetTcpTable.

2007-11-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Implement _mbsnbcpy_s.

2007-11-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Implement strcat_s.

2007-11-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Implement strcpy_s.

2007-11-15  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winedbg/types.c:
	winedbg: Fix type of loop variable in types_udt_find_element().

2007-11-15  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add a few more tests which check the decryption strings.

2007-11-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Destroy GL contexts before changing the screen resolution.

	* dlls/wined3d/vertexshader.c:
	wined3d: Remove a hack that slipped in.

2007-11-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Do not call PreLoad in surface_download_data.

2007-11-15  Rob Shearman <rob@codeweavers.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: Add a stub for DllGetClassObject.

2007-11-15  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix the trailing '\n' in an ok() call.

	* dlls/winex11.drv/opengl.c:
	winex11: Add the trailing '\n' to a Wine trace.

2007-11-15  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Avoid HEAP_ZERO_MEMORY where it isn't needed.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Don't allocate gobs of memory if there are no non-loopback interfaces.

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't allocate gobs of memory if the IP address table is empty.

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't allocate gobs of memory if interface table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory if the UDP table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the ARP table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the route table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the TCP entry table is empty.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't override return value from getTcpTable.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Default to a default gateway when choosing the best route.

2007-11-15  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixReflect.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixShadow.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneIntersectLine.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneNormalize.

2007-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/file.c:
	kernel32: Mask out FILE_ATTRIBUTE_NOT_CONTENT_INDEXED to prevent a test failure
	under Windows.

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Set last error to ERROR_ALREADY_EXISTS if CreateFile succeeds and
	file existed before for CREATE_ALWAYS and OPEN_ALWAYS.

2007-11-15  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/factory.c:
	msxml3: Don't leak an interface on failure.

2007-11-15  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/taskmgr/perfdata.c, programs/taskmgr/perfpage.c:
	taskmgr: Move out-of-domain checking into PerfDataGetProcessorUsage() and
	PerfDataGetProcessorSystemUsage().

2007-11-10  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/file.h,
	  server/protocol.def, server/thread.c:
	server: Pass Information field from async I/O APCs.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/sync.c, dlls/ntdll/tests/file.c:
	ntdll: Make async i/o functions generate completion messages.

	* dlls/ws2_32/socket.c, include/wine/server_protocol.h, server/fd.c,
	  server/protocol.def, server/request.h, server/trace.c:
	ws2_32: Make certain winsock functions generate i/o completion messages.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/completion.c,
	  server/fd.c, server/file.h, server/protocol.def:
	server: Allow async i/o operations to send completion messages.

	* dlls/ntdll/tests/file.c:
	ntdll: Add some I/O completion tests.

2007-11-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove check which never triggers.

2007-11-13  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wordpad/Fr.rc:
	wordpad: Updated French translation.

2007-11-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Don't ignore the error returned by ready_media.

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Only check the presence of the cabinet if the file is compressed.

	* dlls/msi/tests/install.c:
	msi: Add tests for situations involving missing cabinets.

	* dlls/msi/files.c:
	msi: Simplify ready_media.

2007-11-15  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Register inetcomm.dll.

	* tools/wine.inf:
	wine.inf: Some dlls need to be registered before the others.

2007-11-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml: Test for insertBefore with a NULL output parameter.

	* dlls/msxml3/node.c:
	msxml: Allow insertBefore to have a NULL output parameter.

2007-11-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_misc.c, dlls/user32/dde_private.h:
	user32: Constify a variable.

2007-11-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Conformance tests for DlgDirList and DlgDirSelectEx.

2007-11-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c:
	user32: DlgDirList converts path specification to uppercase.

2007-11-14  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Intialise some out parameters in ProxyCliSec_QueryBlanket.

2007-11-14  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add a test for MimeBody.

	* dlls/inetcomm/inetcomm_main.c:
	inetcomm: Add a class factory for MimeBody.

	* dlls/inetcomm/inetcomm_private.h, dlls/inetcomm/mimeole.c:
	inetcomm: Add a stub MimeBody implementation.

	* dlls/inetcomm/regsvr.c:
	inetcomm: Register a couple more classes.

2007-11-14  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Do not show "Apply" button - it is not used anyway.

2007-11-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix a number of problems with InternetGetCookie.
	This version incorporates Lei Zhang's changes to the test, with his consent.

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix a number of problems with InternetSetCookie.

2007-11-14  Rob Shearman <rob@codeweavers.com>

	* dlls/msxml3/xmldoc.c:
	msxml3: Don't leak node in xmldoc_createElement in the wrong type was specified.

	* dlls/msxml3/tests/xmldoc.c:
	msxml3: Fix some memory leaks of name in test_xmldoc.

2007-11-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Conformance tests for LB_DIR on listboxes.

	* dlls/user32/dialog.c:
	user32: DlgDirSelect tacks on a period on filenames without ext.

	* dlls/user32/dialog.c:
	user32: LB_DIR with standalone DDL_DRIVES implies DDL_EXCLUSIVE.

	* dlls/user32/listbox.c:
	user32: Fix returned value of LB_DIR.

2007-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/imagelist.c:
	comctl32: Fixed handling of monochrome icons in image lists.

2007-11-13  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Fix error checking.

2007-11-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix ATI video memory detection typo.

2007-11-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/texture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Non power of two texture fixes.

2007-11-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Apply matrices when switching from transformed vertices to shaders.

2007-11-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Read the framebuffer size from the surface, not the window.

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Depth stencil fixes.

2007-11-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: Partially revert "Get rid of the conditionals in shader_glsl".

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of a few Nvidiaisms in glsl shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Hardcode local constants into the shader if possible.

2007-11-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_client.c:
	user32: Constify a variable.

2007-11-13  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comctl32/listview.c:
	comctl32: Fix a typo in a debug message.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Fix a signed/unsigned warning.

	* dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h, include/rpcdcep.h:
	rpcrt4: Add some missing prototypes and better match the PSDK types.

	* dlls/advpack/tests/install.c:
	advpack: Skip some tests if not in interactive mode because they pop up dialogs.

	* dlls/user32/tests/msg.c:
	user32/tests/msg: Don't mess up lParam as it is passed on to DefWindowProcA().

2007-11-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Fix a copy and paste mistake in declaring threaddata_cs_debug.
	Reported by Hans Leidekker.

	* dlls/ole32/tests/moniker.c:
	ole32: Release the correct pointer in test_MkParseDisplayName.
	Reported by Dan Kegel.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Validate the parameters to DataCache_Cache.

2007-11-13  Jonathan Ernst <jonathan@ernstfamily.ch>

	* tools/wine.desktop:
	wine.desktop: Updated French translation.

	* dlls/avifil32/avifile_Fr.rc:
	avifil32: Updated French translation.

	* programs/xcopy/Fr.rc, programs/xcopy/rsrc.rc:
	xcopy: Updated French translation.

	* programs/net/Fr.rc, programs/net/rsrc.rc:
	net: Updated French translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Fr.rc:
	localui: Updated French translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Fr.rc:
	credui: Updated French translation.

	* programs/regedit/Fr.rc:
	regedit: Updated French translation.

	* programs/cmd/Fr.rc:
	cmd: Updated French translation.

	* dlls/shell32/shell32_Fr.rc:
	shell32: Updated French translation.

2007-11-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* server/queue.c:
	server: Make timer id allocation algorithm conform to the Windows one.

2007-11-13  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/tgt_active.c:
	winedbg: Print a backtrace in --auto mode.

	* dlls/shell32/shelllink.c:
	shell32: Don't wait for the command to terminate in ShellLink_InvokeCommand.

	* dlls/shell32/shelllink.c, dlls/shell32/shlexec.c:
	shell32: Pass some of the ShellExecute flags through InvokeCommand.

	* include/shellapi.h:
	include: Added definition for SEE_MASK_NOASYNC.

2007-11-11  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub for GetConsoleKeyboardLayoutNameW.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleKeyboardLayoutNameA.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleInputExeNameW.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleInputExeNameA.

2007-11-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Enable test for bad argument / fix memory leak.

	* dlls/msxml3/domdoc.c:
	msxml3: Return E_INVALIDARG on bad parameter.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/ctapi32/ctapi32.c:
	ctapi32: Use quotes to include our headers. Fixes winapi_check warnings.

	* dlls/setupapi/stubs.c, include/cfgmgr32.h:
	cfgmgr32: Flesh out cfgmgr32.h a bit more and fix the corresponding functions.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add an API documentation stub to make winapi_check happy.

	* include/d3dx8math.h:
	d3dx8: Make d3dx8math.h C++ compatible.

	* dlls/acledit/main.c, include/Makefile.in, include/wfext.h:
	acledit: Add wfext.h.

	* dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl: Remove trailing spaces in Wine traces.

	* dlls/wined3d/vertexshader.c:
	wined3d: Add trailing '\n's to two shader_addline() calls.

2007-11-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: Fix the condition for checking a drive.

	* dlls/msi/appsearch.c:
	msi: Set the file to NULL when running the directory search.

	* dlls/msi/dialog.c:
	msi: Implement the VolumeSelectCombo control.

	* dlls/msi/tests/install.c:
	msi: Test the Uninstall registry entries.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Delete the uninstall key when the product is removed.

2007-11-12  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixAffine Transformation.

2007-11-12  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement RpcCancelThread for the ncacn_ip_tcp protocol sequence.

2007-11-12  Lei Zhang <thestig@google.com>

	* dlls/shell32/shellpath.c:
	shell32: Don't crash if $HOME is not set.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shellpath.c:
	shell32: rename My Video to My Videos.

2007-11-12  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Wait forever on the ready_event in the local server tests.

	* dlls/ole32/rpc.c:
	ole32: Use asynchronous I/O for the named pipe server for local servers.

	* dlls/ole32/usrmarshal.c:
	ole32: Fix the condition in HMETAFILEPICT_UserFree to match that in
	METAFILEPICT_UserMarshal.
	Actually free the memory.

	* dlls/ole32/tests/hglobalstream.c:
	ole32: Fix a memory leak in the HGLOBAL stream tests by telling
	CreateStreamOnHGlobal to free the memory it allocates, as we don't free it
	ourselves in this test.

	* dlls/ole32/compobj.c:
	ole32: Release the stream in COM_RevokeRegisteredClassObject.

	* dlls/ole32/hglobalstream.c:
	ole32: Fail before constructing an object in CreateStreamOnHGlobal to avoid
	a memory leak.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/thread.c, include/winbase.h:
	kernel32: Implement GetThreadId.

2007-11-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/hlink_main.c, dlls/hlink/tests/hlink.c:
	hlink: Added HlinkGetSpecialReference implementation.

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fixed SHPackDispParamsV spec declaration.

2007-11-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/dsound/tests/propset.c:
	dsound/tests: Better check to see if class is not available.

	* dlls/dsound/tests/ds3d8.c:
	dsound/tests: Fix test failures on WinXP.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Load GL_EXT_texture3D from gl 1.2 if the extension is not there.

	* dlls/wined3d/directx.c:
	wined3d: Mark extensions supported which are included in the gl core.

2007-11-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Load GL functions from core if needed.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Extend the gl extension function loading table with ext info.

	* dlls/wined3d/directx.c:
	wined3d: Load extension functions after finding the supported extensions.

	* include/wine/wined3d_gl.h:
	wined3d: Align the gl function table.

2007-11-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/opengl32/make_opengl, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Add wglCopyContext support.

2007-11-09  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Better trap exception handling.

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't try to handle kill(SIGTRAP).

2007-11-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Prevent unneeded context switches.

2007-11-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Flush GL calls after drawing to the drawable. This fixes apps that
	use multiple GL contexts.

2007-11-09  Dan Kegel <dank@kegel.com>

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Implement return value for DdeClientTransaction for XTYP_EXECUTE.

2007-11-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/class.c, dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/hook.c, dlls/user32/input.c, dlls/user32/menu.c,
	  dlls/user32/message.c, dlls/user32/scroll.c:
	user32: Remove a few traces that only duplicate the relay information.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fixed asm proxys to support more than 128 methods.
	Reported by Martin Kochanski.

2007-11-12  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Cope with buggy apps passing setsockopt optval as a value instead of
	a pointer.

2007-11-12  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/clusapi/clusapi.c:
	clusapi: Corrected value in GetNodeClusterState.

2007-11-11  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXVec3Unproject.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixVec3Project.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixMultiplyTranspose.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixInverse.

2007-11-11  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Check pad bytes for consistency when decrypting.

2007-11-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/undocshell.h, include/shlobj.h:
	shell32: Some undocumented defines and functions are now in the PSDK.

2007-11-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/tests/volume.c:
	kernel32: Loosen requirements on what QueryDosDevice returns.

2007-11-10  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/mixer.c:
	dsound: Return primary_done when no mixing needs to be done instead of 0.

2007-11-11  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c:
	dsound: Reassign pointers back to null when destroying structure.

2007-11-11  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix buffer overrun in tests/registry.c:wine_debugstr_wn().

2007-11-11  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/tests/file.c:
	ntdll: Initialise the part of the buffer to be written to a file in the
	file test.

	* server/winstation.c:
	server: In set_user_object_info len is in bytes, not WCHARs.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Handle non-byref safe arrays in VARIANT_UserFree.

	* dlls/ole32/oleproxy.c:
	ole32: Disconnect the IRemUnknown stub buffer before destroying it to release
	the reference on the IRemUnknown object.

	* dlls/shell32/shelllink.c:
	shell32: Fix a memory leak in Stream_WriteLocationInfo.

	* dlls/shell32/pidl.c:
	shell32: Fix the length calculation of the pidl in ILSaveToStream by using
	the helper function ILGetSize.

2007-11-11  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Fix PROTOCOLDATA message passing in IInternetProtocolSink interface
	of Binding.

	* dlls/urlmon/http.c:
	urlmon: Release IInternetProtocolSink and BindInfo on request handle closure,
	not on first handle closure.

2007-11-10  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXCOLOR structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXPLANE structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXQUATERNION structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXMATRIX structure.

2007-11-09  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR4 structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR3 structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR2 structure.

2007-11-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Get rid of unused variables.

2007-11-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Reimplement IUnknown_CPContainerInvokeParam on top of SHPackDispParams.

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi: Added SHPackDispParams test.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Added SHPackDispParams implementation.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Added SHPackDispParamsV implementation.

	* include/hlink.idl:
	hlink.idl: Added Hlink[Get|Set]SpecialReference declaration.

	* dlls/mshtml/olewnd.c:
	mshtml: Remove nsIWebBrowserFocus_Activate useless call.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c:
	mshtml: Reset focus after loading the page in edit mode.

2007-11-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/msiserver.idl, dlls/msi/package.c, dlls/msi/preview.c,
	  dlls/msi/suminfo.c:
	msi: Return a remote interface to the database in a custom action.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Create the _Tables table when creating a database.

	* dlls/msi/tests/db.c:
	msi: Test the default tables added by MsiOpenDatabase.

2007-11-10  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Free the memory associated with the open DLL list on unloading of ole32.

	* dlls/ole32/datacache.c:
	ole32: Initialise data_cf in DataCacheEntry's to zero to indicate no data
	present on creation.

	* dlls/ole32/tests/ole2.c:
	ole32: Fix a leak of a moniker object in test_default_handler.

	* dlls/ole32/datacache.c:
	ole32: Fix a memory leak in DataCacheEntry_Save.

	* dlls/ole32/moniker.c:
	ole32: Fix a memory leak of moniker in RunningObjectTableImpl_Register.

	* dlls/ole32/filemoniker.c:
	ole32: Fix a leak of the IBindCtx object in FileMonikerImpl_IsEqual.

	* dlls/ole32/moniker.c:
	ole32: Fix a memory leak in get_moniker_comparison_data.

	* dlls/ole32/moniker.c:
	ole32: Store the InterfaceList object in the IEnumMoniker object.
	This is because the IEnumMoniker object is supposed to free the memory
	passed to it, but the array of InterfaceData pointers is inside the
	InterfaceList memory block.

	* dlls/ole32/tests/moniker.c:
	ole32: Add a missing IMoniker_Release to test_MkParseDisplayName.

	* dlls/ole32/itemmoniker.c:
	ole32: Fix memory leak in ItemMonikerImpl_Save.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a missing IStream_Release to test_same_apartment_unmarshal_failure.

	* dlls/ole32/tests/compobj.c:
	ole32: Add a missing IStream_Release to
	test_CoMarshalInterThreadInterfaceInStream.

2007-11-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/comm16.c:
	user32: Constify some variables.

2007-11-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/http.c:
	wininet: Fix two handle leaks in the test.

	* dlls/snmpapi/tests/util.c:
	snmpapi: Make a test pass on Vista.

	* dlls/pdh/tests/pdh.c:
	pdh: Make two tests pass on Vista.

2007-11-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/dsound/tests/capture.c:
	dsound/tests: Fix tests after addition of 24/32 bits buffer tests.

2007-11-09  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/sound3d.c:
	dsound: Make AngleBetweenVectorsRad when vectors have no magnitude.

	* dlls/dsound/sound3d.c:
	dsound: Implement AngleBetweenVectorsDeg as a call to AngleBetweenVectorsRad.

2007-11-09  Paul Millar <paul@astro.gla.ac.uk>

	* libs/wine/config.c:
	libwine: Fix naked getuid() to allow compilation under MinGW.

2007-11-09  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.49.

----------------------------------------------------------------
2007-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/dde.c:
	user32/tests: Fix access to an uninitialized variable.

2007-11-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Simplify some code.

2007-11-09  Francois Gouget <fgouget@free.fr>

	* dlls/winex11.drv/dib.c:
	winex11: Add C alternatives to the assembly bits in X11DRV_DIB_SetImageBits_8().

	* dlls/advapi32/security.c, dlls/kernel32/tests/loader.c,
	  dlls/shell32/dialogs.c, dlls/wined3d/glsl_shader.c,
	  tools/widl/widl.man.in:
	Assorted spelling fixes.

	* dlls/user32/tests/dde.c:
	user32/tests: Skip some tests when DdeClientTransaction() returns NULL. This
	avoids some crashes on Win9x.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Dynamically load GdiAlphaBlend() so the test runs on Win9x.

	* dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c:
	d3dx8: Fix compilation on systems that don't support nameless unions.

2007-11-09  Lei Zhang <thestig@google.com>

	* dlls/sane.ds/ui.c:
	sane.ds: Fix a memory leak.

	* dlls/sane.ds/ui.c:
	sane.ds: Check return value from sane_get_option_descriptor().

	* dlls/sane.ds/ui.c:
	sane.ds: Check return value from sane_control_option().

	* dlls/sane.ds/ui.c:
	sane.ds: Get number of options only once.

2007-11-08  EA Durbin <ead1234@hotmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Add stub Implementation of IoAllocateMdl.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Add stub Implementation of IoAllocateWorkItem.

2007-11-09  Lei Zhang <thestig@google.com>

	* dlls/wininet/tests/internet.c:
	wininet: Skip strcmp() in a test if the returned value/len is wrong.

2007-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Added IDM_SETDIRTY implementation.

2007-11-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Actually store the PS's vertex processing flag.

2007-11-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Make sure the p8 shader is set to 0 after destroying the main render
	target.
	This fixes a render target recreation problem in Age of Empires II.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Make sure SFLAG_LOCKED is set at the start of LockRect as various
	functions called from LockRect depend on it (e.g. LoadTexture if called from
	LoadLocation).

2007-11-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/browseui/progressdlg.c:
	browseui: Print 64bit integers with wine_dbgstr_longlong.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Release the window after the visual tests.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Reinstall the projected texture disabling for generated coords.

	* dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c:
	wined3d: Load GLSL sampler uniforms at shader link time.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store integer uniform locations.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the special uniforms' locations in the linked program.

	* dlls/wined3d/directx.c:
	wined3d: Hide NP2 textures support on R500 and earlier cards.

2007-11-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix for MacOS'es incomplete glsl uniform truth.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Implement a detection for the MacOS OpenGL implementation.

2007-11-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/dsound/tests/ds3d.c:
	dsound/tests: Fix test failures on WinXP and 2003.

2007-11-08  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/wincrypt.h:
	include: Add missing defines for RC5, SHA and AES in wincrypt.h.

2007-11-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/button.c, dlls/user32/combo.c:
	user32: Constify some variables.

2007-11-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix some more memory leaks.

	* dlls/usp10/tests/usp10.c:
	usp10: Fix a test to not rely on uninitialized memory.

	* dlls/usp10/tests/usp10.c:
	usp10: Fully initialize LOGFONT structure.

	* dlls/usp10/tests/usp10.c:
	usp10: Fix a memory leak.

2007-11-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/cookie.c:
	wininet: Initialize length of values that aren't being requested.

	* dlls/crypt32/decode.c:
	crypt32: If a decoding function failed, free the memory allocated for it.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix another leak in tests.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix a couple leaks in test.

2007-11-07  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Use a 2 stage mixing/normalization for sound.

	* dlls/dsound/dsound_convert.c, dlls/dsound/dsound_private.h:
	dsound: Add mixing and normalization functions.

	* dlls/dsound/Makefile.in, dlls/dsound/dsound_convert.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Add support for 24/32 bits input sound buffers.

2007-11-07  EA Durbin <ead1234@hotmail.com>

	* dlls/d3dxof/d3dxof.c:
	d3dxof: Fix some return values.

2007-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Increase the signal stack size to avoid crashes on nested signals.

	* server/queue.c:
	server: Don't drop mouse messages that should go to a different thread input.
	Instead requeue them into the proper destination queue. Reported by
	Ulrich Czekalla.

2007-11-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c:
	mlang: Fix buffer size calculation.

	* dlls/mlang/mlang.c:
	mlang: Free SCRIPTINFO structure embedded in EnumScript object.

	* dlls/mlang/tests/mlang.c:
	mlang: Release EnumRfc1766 object.

2007-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c,
	  dlls/wldap32/control.c, dlls/wldap32/delete.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c, dlls/wldap32/extended.c, dlls/wldap32/init.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/page.c, dlls/wldap32/parse.c,
	  dlls/wldap32/rename.c, dlls/wldap32/search.c, dlls/wldap32/value.c,
	  dlls/wldap32/winldap_private.h:
	wldap32: Always return WLDAP32 error values instead of redefining the ldap.h
	ones.

2007-11-08  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/parse.c,
	  dlls/wldap32/winldap_private.h, include/config.h.in:
	wldap32: Fix build against latest OpenLDAP release.

2007-11-03  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix test failure in test_WM_PASTE.
	Native riched20 won't obey simple WM_CHAR or WM_KEYDOWN/WM_KEYUP
	messages when processing Ctrl-Key keystrokes. Use keybd_event()
	instead.

2007-11-08  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c:
	libwine: Refuse to use a WINEPREFIX dir owned by a different user.

2007-11-07  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Don't use HEAP_ZERO_MEMORY on memory that's fully initialized.

	* dlls/wininet/http.c:
	wininet: Fix another typo.

	* dlls/wininet/http.c:
	wininet: Fix typo.

2007-11-07  Lei Zhang <thestig@google.com>

	* dlls/wininet/ftp.c:
	wininet: Initialize ftp sockets.

2007-11-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/urlmon/format.c, dlls/urlmon/http.c, dlls/urlmon/umon.c:
	urlmon: Constify some variables.

	* dlls/twain_32/twain32_main.c:
	twain_32: Constify a variable.

2007-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Pass surface dirtification to the container.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Be less picky in the D3DFMT_X8L8V8U8 test.

2007-11-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of the conditionals in shader_glsl_compare.

2007-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Take care for client storage and pbos.

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Honor the driver's min point size.

2007-11-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Avoid NOP additions.

	* dlls/wined3d/directx.c, dlls/wined3d/vertexshader.c:
	wined3d: Replace the position fixup mul-add-add with a MAD.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: mov to a0.x does a floor(), not a round to nearest.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of the conditionals in the glsl lit implementation.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Relative addressing offsets are limited to [-64; 63] in arb.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Remove the conditional from texdepth.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix the varying number comparison.

2007-11-07  Juan Lang <juan.lang@gmail.com>

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/cfgmgr32.spec,
	  dlls/cfgmgr32/main.c:
	cfgmgr32: Forward cfgmgr32 functions to setupapi.

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add stubs for CM_Get_Device_IDA and CM_Get_Device_ID_Size.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Fail decoding a CRL entry if the serial number is empty.

	* dlls/crypt32/tests/protectdata.c:
	crypt32: Fix a leak.

	* dlls/crypt32/protectdata.c:
	crypt32: Use 3DES to encrypt data.

	* dlls/crypt32/protectdata.c:
	crypt32: Set correct bit lengths for algorithms.

	* dlls/crypt32/protectdata.c:
	crypt32: Pass key length to CryptDeriveKey.

	* dlls/crypt32/protectdata.c:
	crypt32: Use the enhanced provider rather than the default (base) provider.

	* dlls/crypt32/protectdata.c:
	crypt32: Use SHA1 rather than MD5 to protect data.

	* dlls/crypt32/protectdata.c:
	crypt32: Save alg IDs in CryptProtectData output.

	* dlls/crypt32/protectdata.c:
	crypt32: Describe CryptProtectData data format more accurately.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix a comment.

2007-11-07  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Fix for failing tests of LB_GETTEXT on listbox on Win98.

	* dlls/user32/tests/listbox.c:
	user32: Fix LB_ITEMFROMPOINT tests for listbox control.

2007-11-07  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Add a few nops to stub entry points to make Safedisc happy.

	* dlls/user32/nonclient.c:
	user32: Removed unused NC_DrawGrayButton function.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/dde_private.h,
	  dlls/user32/user_private.h, include/win.h:
	user32: Make all internal user32 functions and variables hidden.

	* dlls/gdi32/enhmfdrv/enhmetafiledrv.h, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/metafiledrv.h:
	gdi32: Make all internal gdi functions hidden.

2007-11-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Use unsigned type to avoid a compiler warning.

2007-11-07  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Add APPDATA and LOCALAPPDATA environment variables.

2007-11-06  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Fix two buglets in heap test.

2007-11-07  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/xmlelem.c:
	msxml3: Fix memory leak.

2007-11-06  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use LocalFree to free memory return by Crypt(Un)ProtectData.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to read key pairs from registry.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to delete a key container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to open a key container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to create a container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to persist keys.

2007-11-07  Alexandre Julliard <julliard@winehq.org>

	* include/winnt.h:
	include: Mark imported functions with hidden visibility.

	* include/wine/unicode.h:
	include: Only use DECLSPEC_IMPORT for Windows compilers in unicode.h.

	* include/winnt.h, include/winternl.h:
	include: Add NTSYSAPI to the exported ntdll functions.

	* include/winbase.h, include/wincon.h, include/winnls.h:
	include: Add WINBASEAPI to the exported kernel32 functions.

	* include/aclapi.h, include/wincred.h, include/wincrypt.h,
	  include/winreg.h, include/winsvc.h:
	include: Add WINADVAPI to the exported advapi32 functions.

	* include/wingdi.h:
	include: Add WINGDIAPI to the exported gdi32 functions.

	* include/dde.h, include/ddeml.h, include/winuser.h:
	include: Add WINUSERAPI to the exported user32 functions.

2007-11-06  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correct a test where the tested function was not called.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Free the backbuffer array.

	* dlls/d3d9/tests/visual.c:
	d3d9: Initialize the test rectangle correctly.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement the varying map.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Install a varying map.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/texture.c:
	d3d9: Remove some spamy debug traces from the texture test.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Fix a test for Vista.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Be less picky about float precision.

2007-10-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Use HAL devices in some tests.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/volume.c:
	wined3d: Refuse to create volumes and volume textures if not supported.

	* dlls/wined3d/device.c:
	wined3d: Set the display mode before creating the context.

	* dlls/wined3d/device.c:
	wined3d: Set the main hwnd before setting up the screen.

2007-11-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/snmpapi/main.c:
	snmpapi: Constify a variable.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	wined3d: Shader Model 3.0 varying tests.

2007-11-06  EA Durbin <ead1234@hotmail.com>

	* dlls/wininet/internet.c:
	wininet: Return true for case INTERNET_OPTION_SECURITY_FLAGS.

2007-11-06  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add stubs for RpcMgmtSetCancelTimeout and RpcCancelThread.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a stub for RpcErrorStartEnumeration.

2007-11-05  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/mimeole.c,
	  dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add a stub implementation of the MimeSecurity object.

2007-11-05  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/dsound_test.h:
	dsound: Add conformance tests for 24/32 bits buffers and waveformatextensible.

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c, dlls/dsound/dsound_main.c:
	dsound: Add support for WAVEFORMATEXTENSIBLE format.

	* include/ksmedia.h:
	include: Add a few speaker defines to ksmedia.h.

2007-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/kernel32.spec:
	kernel32: Add spec entries for LocaleNameToLCID and LCIDToLocaleName.

	* include/winbase.h, include/winuser.h:
	include: Moved AttachThreadInput prototype to winuser.h where it belongs.

2007-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/sync.c, server/event.c, server/handle.c,
	  server/handle.h, server/mapping.c, server/mutex.c,
	  server/semaphore.c:
	server: Don't do access checks on the security descriptors of newly created
	objects.

2007-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tests/progress.c:
	comctl32/tests: Flush pending events before progress repaint tests.

	* dlls/cryptnet/cryptnet_main.c, dlls/hnetcfg/hnetcfg.c,
	  dlls/winhttp/main.c, dlls/wintrust/register.c:
	Include objbase.h where need to get the DllRegisterServer prototype.

	* dlls/advapi32/security.c, dlls/credui/credui_main.c,
	  dlls/msi/msi_main.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h:
	Make some variables static.

2007-11-05  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/En.rc, programs/net/Makefile.in, programs/net/net.c,
	  programs/net/resources.h:
	net.exe: Lists existing NetUse connections.

2007-11-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test that the install state is dependent on the feature and component
	registration.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Process the ADDSOURCE property when setting feature states.

	* dlls/msi/tests/package.c:
	msi: Test the install states of removed features.

	* dlls/msi/create.c:
	msi: Add a missing struct initialization.

2007-11-05  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Add a test for CloseFigure.

2007-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winproc.c:
	user32: Fixed A<->W translations of CREATESTRUCTs that contain atoms.

2007-11-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Make sure the format of the render target is P8 too.

2007-11-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/wined3d_private.h:
	wined3d: Rewrite the draw buffer selection code.
	Before it was done in findContext, before selecting the new context
	which is bad (it doesn't always work). The new code works and this
	change also fixes some draw buffer regressions that happened during
	the surface rewrite from the last couple of days.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Handle ps 3.0 varyings in a different way.

2007-10-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add a max varyings member to the gl info structure.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pixel Shader varying indexing.

2007-10-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Make pixel shader input an array.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Only glBindAttribLocation used attributes.

2007-11-05  Juan Lang <juan.lang@gmail.com>

	* dlls/wsock32/socket.c:
	wsock32: Check return value rather than returned size for error.

	* dlls/setupapi/query.c:
	setupapi: Don't convert strings past NULL-terminator.

	* dlls/setupapi/query.c:
	setupapi: Downgrade an ERR to a WARN.

	* dlls/setupapi/query.c:
	setupapi: Correct a return value.

	* dlls/setupapi/devinst.c:
	setupapi: Fix a leak.

2007-11-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Don't rely on type_memsize to return 0 for all conformant arrays.

2007-11-06  Kovács András <andras@csevego.net>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c:
	dwmapi: Add DwmEnableComposition stub.

2007-11-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Error check in add_printer_driver() was to strict.
	Reported by Dan Sawyer.

2007-11-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/trash.c, dlls/shell32/xdg.c:
	shell32: Constify some variables.

2007-11-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added AcceptLanguage handling.

2007-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Call Exec(CGID_ShellDocView, 84) in start_binding.

2007-11-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: More range tests and fixes.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Store HTMLDocument pointer in BSCallback object.

2007-11-05  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixOrthoOffCenterLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixOrthoOffCenterRH.

	* dlls/d3dx8/tests/math.c:
	d3dx8: Uniformize the matrix format in the tests.

2007-11-05  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETMODIFY should not report modification after WM_SETTEXT (fixes
	todo_wine).

2007-11-02  Huw Davies <huw@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inetcomm/tests/Makefile.in, dlls/inetcomm/tests/mimeole.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	inetcomm: Add a test for MimeOleCreateVirtualStream.

2007-11-05  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/loader.c:
	kernel32: Fix the image size in a test to avoid a BSOD on Windows XP SP1.

	* dlls/winex11.drv/settings.c:
	winex11: Fix compilation on systems that don't support either nameless unions
	or nameless structs.

	* dlls/user32/sysparams.c:
	user32: Fix compilation on systems that don't support either nameless unions
	or nameless structs.

2007-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle FC_IGNORE in the base type functions.

	* include/midles.h:
	include: Fix a typo in midles.h.

2007-11-03  Nigel Liang <ncliang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Release object in HttpSendRequestExW before return on error.

2007-11-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/xmlelem.c:
	msxml: Fix a memory leak.

2007-11-03  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Fix the number and the type of variables in d3dx8.spec.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOrthoLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOrthoRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOffCenterLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOffCenterRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveFovLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveFovRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixLookAtLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixLookAtRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationYawPitchRoll.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationQuaternion.

2007-11-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlview.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Constify some variables.

2007-11-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/msipriv.h:
	msi: Implement the CCPSearch standard action.

	* dlls/msi/string.c:
	msi: Explicitly check the returned value against -1 as the variable is unsigned.

	* dlls/msi/table.c:
	msi: Don't update a table entry when applying a transform if the string value
	is the same.

	* dlls/msi/action.c:
	msi: Fix the location used to write the user's environment variables.

	* dlls/msi/tests/automation.c:
	msi: Remove an unused parameter.

	* dlls/msi/tests/msi.c:
	msi: Use a magic constant to silence signedness comparison warnings.

	* dlls/msi/tests/msi.c:
	msi: MsiQueryProductState returns INSTALLSTATE, not UINT.

	* dlls/msi/tests/msi.c:
	msi: MsiQueryFeatureState and MsiUseFeatureEx return INSTALLSTATE, not UINT.

	* dlls/msi/tests/db.c:
	msi: MsiViewGetError returns MSIDBERROR, not UINT.

	* dlls/msi/alter.c:
	msi: Remove an unused parameter.

	* dlls/msi/action.c:
	msi: Remove an unused parameter.

	* dlls/msi/action.c:
	msi: Fix the sign of an index variable.

	* dlls/msi/action.c:
	msi: Remove a legacy error check.

	* dlls/msi/msiquery.c, dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Test and implement the MSIMODIFY_DELETE command.

	* dlls/msi/tests/install.c:
	msi: Initialize a handle in case MsiGetSummaryInformation fails.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Fix the location used to read machine context source list info.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: szUserSid must be NULL if context is MSIINSTALLCONTEXT_MACHINE.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Handle the MSIINSTALLCONTEXT_USERMANAGED context.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Reimplement MsiSourceListAddSourceEx to handle reordering the source list.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: The options must include a source type.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: An empty source is an invalid parameter.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Append a slash to network and url sources.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate the product code.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return the error from OpenSourceKey.

	* dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListAddSourceEx.

	* dlls/msi/source.c:
	msi: Don't create the product source key when adding a source.

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListAddSourceExA.

	* dlls/msi/tests/package.c:
	msi: do_query is supposed to fail, so don't release a handle that is never
	initialized.

2007-11-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix detection of CFE_LINK on WinXP-SP2.

2007-11-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Add stub for DIPROP_AUTOCENTER property.

2007-11-04  Juan Lang <juan.lang@gmail.com>

	* dlls/wsock32/socket.c:
	wsock32: Don't use HEAP_ZERO_MEMORY for memory that's fully initialized anyway.

	* dlls/wsock32/socket.c:
	wsock32: Correctly handle the case where a table size is 0 in
	IP_MIB_TABLE_ENTRY_ID.
	Spotted by Gerald Pfeifer.

2007-11-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c:
	shdocvw: Fixed typos.
	Found by Detlef Riekenberg.

	* dlls/urlmon/http.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added https protocol class factory stub implementation.

2007-11-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Update Norwegian Bokmål translation.

2007-11-04  Dan Kegel <dank@kegel.com>

	* dlls/cabinet/fci.c:
	cabinet: FCICreate: Initialize oldCCAB.

2007-11-03  Dan Kegel <dank@kegel.com>

	* dlls/cabinet/fci.c, dlls/cabinet/tests/fdi.c:
	cabinet: FCIAddFile: Set defaults in case callback doesn't set some fields.

2007-11-02  Juan Lang <juan.lang@gmail.com>

	* dlls/comdlg32/cdlg_En.rc:
	comdlg32: Grammar fixes.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Implement OFN_CREATEPROMPT checking.

	* dlls/crypt32/store.c:
	crypt32: Don't define function pointers that are NULL (and unused).

	* dlls/crypt32/store.c:
	crypt32: Don't store a redundant copy of data in the message store.

	* dlls/crypt32/sip.c:
	crypt32: Initialize a variable.

2007-11-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: UnlockRect regression fix.

2007-11-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Only use p8 conversion on render targets.

	* dlls/wined3d/surface.c:
	wined3d: Fix LockedRect regression.

	* dlls/wined3d/directx.c:
	wined3d: Fix glsl detection bug.

2007-11-03  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Map SO_REUSEADDR.
	BSD socket SO_REUSEADDR is not a complete match, but features like
	"allow binding to a port immediately after closing it" seem to be compatible.

	* dlls/netapi32/access.c:
	netapi32: Fix valgrind warnings.
	For now, those pointers are always null, anyway.

2007-11-02  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Don't output a void conformance for NdrClearOutParameters.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/header.h, tools/widl/typegen.c:
	widl: Handle pointers to conformant arrays (e.g., "[size_is(, n)] int **p; ").

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialize allocated pointers to NULL in PointerUnmarshall.
	This patch initializes allocated pointers in PointerUnmarshall since later
	code checks the value for NULL (specifically, NdrConformantArrayUnmarshall).

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Initialize memory in the get_name test.
	This initializes the memory for an [in] parameter.

2007-11-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/dsurface.c:
	wined3d: Don't test D3DDEVICE surfaces in dsurface tests.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/vertexdeclaration.c:
	d3d8: Initialize the vertex decl when allocating it.

2007-11-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Move texture->sysmem specific code into its special function.

	* dlls/wined3d/surface.c:
	wined3d: Move drawable->sysmem specific code to its special function.

	* dlls/wined3d/surface.c:
	wined3d: Move sysmem->drawable specific blit code out of LoadLocation.

	* dlls/wined3d/surface.c:
	wined3d: Remove a wrong return.

	* dlls/wined3d/surface.c:
	wined3d: Remove an unneeded check.

2007-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/shdocvw/factory.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw.inf, tools/wine.inf:
	iexplore: Added self-registration code.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* include/Makefile.in, include/midles.h:
	include: Add a new header file: midles.h.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Factorise out the argument processing from NdrStubCall2 into two
	functions.

	* dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/ndr_stubless.h:
	rpcrt4: Move some type definitions from ndr_stubless.c to ndr_stubless.h.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add a small bit of documentation as to what NdrStubCall2 does.

	* include/sspi.h, include/wincred.h:
	include: Take care to not declare CtxtHandle and PCtxtHandle more than once
	when including both sspi.h and wincred.h.

2007-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: AsyncOpen code clean up.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: More test fixes.

2007-11-02  Juan Lang <juan.lang@gmail.com>

	* dlls/url/url.spec, dlls/url/url_main.c:
	url: Fix prototype of FileProtocolHandlerA.

2007-11-02  Huw Davies <huw@codeweavers.com>

	* include/mimeole.idl:
	include: Add a couple more interfaces.

	* dlls/inetcomm/mimeole.c, include/mimeole.idl:
	inetcomm: Add two missing member functions.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/regsvr.c:
	inetcomm: Add a stub implementation of the IMimeMessage object returned from
	MimeOleCreateMessage.

2007-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/mimeole.c:
	inetcomm: Add a stub for MimeOleCreateVirtualStream.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Include mimeole.h and fix the type of MimeOleCreateMessage.

2007-11-02  Huw Davies <huw@codeweavers.com>

	* include/mimeole.idl:
	include: Add a few defines and fill out IMimeMessageCallback.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* .gitignore, include/Makefile.in, include/mimeole.idl:
	include: Add mimeole.idl.

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm.spec,
	  dlls/inetcomm/mimeole.c:
	inetcomm: Add stubs for MimeOleSetCompatMode and MimeOleCreateMessage.

	* dlls/inetcomm/inetcomm_main.c:
	inetcomm: Call InternetTransport_RegisterClass and UnregisterClass on process
	attach and detach respectively, to register a window class and initialize
	Winsock.

	* dlls/inetcomm/internettransport.c:
	inetcomm: Use InternetTransport_ChangeStatus in InternetTransport_DropConnection
	so that the callback gets called.

2007-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm_main.c,
	  dlls/inetcomm/regsvr.c:
	inetcomm: Add self-registration code.
	Based on a patch by Rob Shearman.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm_private.h,
	  dlls/inetcomm/internettransport.c:
	inetcomm: Add a framework for connecting to a server and sending/receiving
	data asynchronously with callbacks being called in the context of the original
	thread, using window messages.

	* .gitignore, include/Makefile.in, include/imnact.idl,
	  include/imnxport.idl:
	include: Add imnact.idl and imnxport.idl.

2007-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c, server/window.c:
	server: Allow to specify the class name instead of the atom to find a window.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/win.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/window.c:
	server: Allow to specify the class name instead of the atom to create a window.

2007-11-02  Rob Shearman <rob@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm.spec,
	  dlls/inetcomm/inetcomm_main.c:
	inetcomm: Add stub implementation of inetcomm.dll.

2007-11-02  Christian Eggers <christian@p2400.wgnetz.xx>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ctapi32/Makefile.in, dlls/ctapi32/ctapi.h,
	  dlls/ctapi32/ctapi32.c, dlls/ctapi32/ctapi32.spec:
	ctapi32: Added wrapper dll for ctapi (CardTerminal API).

2007-11-01  Rok Mandeljc <manrok@email.si>

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Fix controller number validation.

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Fix Controller -> H/C mapping.

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Do the command dumping only after device has been verified.

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Call ASPI_GetNumControllers() only once.

2007-11-01  Rok Mandeljc <rok.mandeljc@email.si>

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Degrade ERR of not finding registry entry for a device to TRACE.

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Print error when device cannot be opened.

2007-11-01  Lei Zhang <thestig@google.com>

	* dlls/comctl32/rebar.c:
	comctl32: Fix typo in rebar.

2007-11-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/tape.c:
	ntdll: Fix calculation of tape position offsets.
	Reported by Gerald Pfeifer.

2007-11-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make tests run on win98 again.

2007-11-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/str.c:
	crypt32: Use consistent error checking.

	* dlls/crypt32/str.c:
	crypt32: Free memory on all paths.

	* dlls/crypt32/str.c:
	crypt32: Set last error on alloc failure.

2007-11-01  Lei Zhang <thestig@google.com>

	* dlls/comctl32/status.c:
	comctl32: Fix uninitialized, unused variables.

	* dlls/comctl32/datetime.c:
	comctl32: Datetime should close its monthcal when the monthcal loses focus.

2007-11-01  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add a test for the pointers in [in,out] pointer structs not changing
	when the pointers aren't NULL.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Make the setupapi tests load on systems < Vista by providing a
	private implementation of RegDeleteTreeW.

2007-11-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/dinput/mouse.c:
	dinput: Fix type of loop variable in alloc_device().

	* dlls/shell32/recyclebin.c:
	shell32: Avoid checking for <0 for unsigned variables.

	* dlls/user32/tests/dde.c:
	user32: Don't check unsigned types for >= 0.

	* dlls/wined3d/cubetexture.c:
	wined3d: Fix type of loop variable in IWineD3DCubeTextureImpl_Destroy().

2007-11-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/setupapi/install.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupInstallServicesFromInfSectionW.

2007-11-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/settings.c:
	winex11.drv: Initialize buffer size.

2007-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/dde.c:
	user32/tests: Don't test the contents of uninitialized buffers.

2007-11-01  Marcel Partap <mpartap@gmx.net>

	* include/Makefile.in, include/ddk/winddiui.h:
	include: Add winddiui.h header.

2007-11-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shlfileop.c:
	shell32: Constify some variables.

2007-11-01  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/shell32/recyclebin.c:
	shell32: Use SHStrDupW in IShellFolder2::GetDetailsOf to allocate returned
	string.

2007-11-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/mshtml/install.c:
	mshtml: Fix hkey leak.

2007-11-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c, dlls/shdocvw/regsvr.c,
	  dlls/shdocvw/shdocvw.inf, dlls/shdocvw/shdocvw.rc:
	shdocvw: Move registration code to .inf file.

	* dlls/msimtf/msimtf.inf:
	msimtf: Fixed typos.

2007-11-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix a leaked key.

	* dlls/crypt32/encode.c:
	crypt32: Don't leak buffer when a unicode string contains an invalid character.

	* dlls/crypt32/tests/encode.c:
	crypt32: Initialize a variable.

	* dlls/crypt32/cert.c:
	crypt32: Use memmove rather than memcpy when addresses might overlap.

	* dlls/crypt32/chain.c:
	crypt32: Fix a leak building an alternate chain.

	* dlls/crypt32/rootstore.c:
	crypt32: Fix leaked chains creating the root store.

	* dlls/crypt32/chain.c:
	crypt32: Fix a leak during chain creation.

	* dlls/crypt32/cert.c:
	crypt32: Set size when calling CryptDecodeObjectEx without
	CRYPT_DECODE_ALLOC_FLAG set.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of an unneeded variable.

	* dlls/crypt32/tests/chain.c:
	crypt32: Fix another leak in the tests.

	* dlls/crypt32/tests/cert.c:
	crypt32: Fix a leak in the tests.

2007-11-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32: Make parameters of expect_band_content() match the corresponding
	types of REBARBANDINFO and fix one format string.

	* dlls/shell32/tests/shelllink.c:
	shell32: Remove useless comparison >= 0 for unsigned variables.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32: Use -0.0 directly in test_VarBstrFromR4().

2007-11-01  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h:
	ole32: Remove an incorrect comment.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoGetObjectContext.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for CoGetObjectContext.

	* dlls/ole32/tests/marshal.c:
	ole32: Improve the error reporting in the marshal test when CreateProcess fails.

2007-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/class.c:
	user32: Cache the window class name on the client side.

	* dlls/user32/class.c:
	user32: Properly handle integer atoms specified as strings in class names.

2007-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/class.c, include/wine/server_protocol.h, server/class.c,
	  server/protocol.def, server/trace.c:
	server: Support using a name to destroy a window class too.

	* dlls/user32/class.c, include/wine/server_protocol.h, server/class.c,
	  server/protocol.def, server/trace.c:
	server: Allow to send a name instead of an atom when creating a window class.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/combo.c,
	  dlls/user32/controls.h, dlls/user32/desktop.c, dlls/user32/dialog.c,
	  dlls/user32/edit.c, dlls/user32/icontitle.c, dlls/user32/listbox.c,
	  dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/scroll.c,
	  dlls/user32/static.c:
	user32: Store the builtin class names in Unicode.

2007-10-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/mshtml/install.c:
	mshtml: Set IE version when installing wine gecko.

2007-10-31  Rob Shearman <rob@codeweavers.com>

	* server/handle.c:
	server: Make sure to always initialise req_sd.owner_len and req_sd.group_len
	in the handler for the get_security_object call.

2007-11-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/tests/install.c:
	msi: A feature's requested action does not depend on its installed state.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Only unpublish the features if the entire product is being uninstalled.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Properly register features.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Properly register and unregister components.

	* dlls/msi/action.c:
	msi: Remove a duplicated function.

	* dlls/msi/action.c, dlls/msi/tests/install.c, include/msidefs.h:
	msi: Implement the MoveFiles standard action.

	* dlls/msi/tests/install.c:
	msi: Test the MoveFiles standard action.

2007-11-01  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/process.c:
	kernel32: Implement GetProcessHandleCount.

2007-11-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/version/info.c:
	version: Use GetModuleHandleEx to increment the module ref count.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Add support for saving/reading display settings.

	* dlls/user32/sysparams.c, dlls/winex11.drv/settings.c:
	user32: Initialize more fields in the DEVMODE structure.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/init.c,
	  dlls/wineps.drv/ps.c, dlls/winspool.drv/info.c, include/wingdi.h,
	  programs/cmdlgtst/cmdlgtst.c:
	include: Synchronize DEVMODE layout with PSDK.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/vertexbuffer.c:
	d3d9: Silence a FIXME.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make resource memory 32 byte aligned.

	* dlls/wined3d/device.c, dlls/wined3d/resource.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_base.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Disconnect allocatedMemory and Heap allocation.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Allocate memory for default pool resources too.

2007-10-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move a part of LockRect to the base class.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Reenable render target unlocking via textures.

	* dlls/wined3d/surface.c:
	wined3d: Move memory allocation into a separate function.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move texture -> drawable blits to LoadLocation.

2007-10-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Implement and test FtpCommand{A, W}.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Correct several ftp server response to error code mappings.

2007-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Set the WM_STATE_ABOVE hint on topmost windows.

	* dlls/user32/winpos.c, server/window.c:
	server: Added support for HWND_TOPMOST and HWND_NOTOPMOST.

	* server/window.c:
	server: Fix get_next/prev_window behavior for unlinked windows.

	* dlls/user32/win.c:
	user32: SetParent should not make the window topmost.

	* dlls/user32/tests/win.c, dlls/user32/win.c:
	user32: Don't allow changing the WS_EX_TOPMOST style with SetWindowLong.

	* dlls/winex11.drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	server: Also return the new extended style in the set_window_pos request.

2007-10-30  Dan Kegel <dank@kegel.com>

	* dlls/ntdll/sec.c:
	ntdll: NtAccessCheck: Only send used bytes to server.

2007-10-30  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winemine/Ko.rc:
	winemine: Update Korean resource.

	* dlls/user32/resources/user32_Ko.rc:
	user32: Updated Korean resource.

	* programs/progman/Ko.rc:
	progman: Updated Korean resource.

2007-10-29  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Allow for Win98 behavior for return value of EM_REPLACESEL.

2007-10-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/tests/pdh.c:
	pdh: Remove or fix tests that fail on Windows.

2007-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cpp.c:
	msvcrt: Silence FIXME about an unknown parameter that isn't used.

2007-10-30  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/hal/Makefile.in, dlls/hal/hal.c, dlls/hal/hal.spec:
	hal: Added stubs for KfAquireSpinLock, KfReleaseSpinLock, KfLowerIrql,
	KfRaiseIrql.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Added a stub for FindVolumeMountPointClose.

2007-10-31  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/persist.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Add IPersistMemory interface stub.

2007-10-30  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Implement OLEIVERB_HIDE.

2007-10-30  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widl.man.in:
	widl: Add a --local-stubs option.

2007-10-30  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shell.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	shell32: Constify some variables.

2007-10-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Fix number of parameter of functions D3DXVec4Cross and D3DXVec?CatmullRom.

2007-10-30  Tim Schwartz <tim@sanityinternet.com>

	* dlls/netapi32/netapi32.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetUseEnum().

2007-10-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/pdh/pdh_main.c:
	pdh: Fix two missing LeaveCriticalSection() on error paths.

2007-10-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winealsa.drv/dsoutput.c:
	winalsa.drv: Explicitly include assert.h.

2007-10-30  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationAxis.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationZ.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationY.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationX.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTranslation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixScaling.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTranspose.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixMultiply.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixfDeterminant.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Fix the condition in D3DXMatrixIsIdentity.

2007-10-30  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/cred.c:
	advapi32: Implement filter matching for CredEnumerate.

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/cred.c:
	advapi32: Add tests for credential management functions.

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/cred.c:
	advapi32: Implement ANSI credential management functions.

	* dlls/advapi32/advapi.c, dlls/advapi32/cred.c:
	advapi32: Implement CredEnumerateW.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/cred.c:
	advapi32: Implement CredDeleteW.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/cred.c:
	advapi32: Implement CredReadW and CredFree.

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/cred.c, dlls/advapi32/crypt.h:
	advapi32: Implement CredWriteW.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server_protocol.h, server/trace.c:
	server: Add the generated files missing from the last commit.

2007-10-30  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/credui/credui_Ko.rc:
	credui: Updated Korean resource.

2007-10-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Don't release the parent object in FTP_Connect, the caller will do that.

2007-10-26  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/file.c, server/file.c, server/protocol.def:
	server: Pass the security descriptor into create_file, if one is specified,
	and set the initial mode for the file appropriately.

	* dlls/ntdll/sync.c, dlls/ntdll/virtual.c, server/event.c,
	  server/mapping.c, server/mutex.c, server/protocol.def,
	  server/security.h, server/semaphore.c, server/token.c,
	  server/trace.c:
	server: Add the name length to the object_attributes structure so that other
	variable length data can be present after object_attributes.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c:
	user32: Fix a slightly incorrect assert.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/tests/class.c,
	  dlls/user32/win.c, dlls/user32/winproc.c:
	user32: Better fix how to handle GetWindowLongPtr[AW](..., GWLP_WNDPROC)
	for builtin winprocs.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/pdh/pdh_main.c:
	pdh: Fix a couple of race conditions in the thread handling.

2007-10-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Fixed tests on old IE.

2007-10-29  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Fix undefined memory references in registry.c.

2007-10-29  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: Set tab focus correctly.

	* dlls/comctl32/tests/tab.c:
	comctl32: Add tab delete item / get focus test.

	* dlls/comctl32/tests/tab.c:
	comctl32: Add tab insert item / get focus test.

	* dlls/comctl32/tests/tab.c:
	comctl32: Move tab test's createParentWindow() into START_TEST().

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* server/device.c:
	server: Remove failed ioctls from the queue as soon as the result is set.

2007-10-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/ftp.c:
	wininet: Use a single connection for all ftp tests.

2007-10-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Constify some variables.

2007-10-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/thread.c:
	ntdll: Report FIXME only once.

2007-10-28  Klaus Layer <klaus.layer@gmx.de>

	* dlls/ntdll/nt.c:
	ntdll: Add missing FIXMEs for incomplete info classes in
	NtQuerySystemInformation.

2007-10-28  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix broken detection of non-empty string.

	* dlls/comctl32/toolbar.c:
	comctl32: Pass command id of button in wParam.

2007-10-27  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Vec4Cross.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXTransformNormal.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*TransformCoord.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Transform.

2007-10-26  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c:
	d3dx8: Test the function D3DXVec3Cross really.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*CatmullRom.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Hermite.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*BaryCentric.

	* dlls/d3dx8/Makefile.in, dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c,
	  dlls/d3dx8/tests/Makefile.in, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Normalize.

2007-10-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Print the unexpected result in function check_ini_contents.

2007-10-26  Vincent Hardy <vincent.hardy.be@gmail.com>

	* dlls/oleaut32/typelib16.c:
	oleaut32: Add TypeLib version for W2K, WXP, and Vista.

2007-10-28  Tom Brus <tombrus@gmail.com>

	* dlls/ntdll/serial.c:
	ntdll: Serial/COM code misinterpreted XON/XOFF direction.

2007-10-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dbghelp/module.c:
	dbghelp: Fix detection of ELF libs by their name.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/mscat32/mscat32.spec:
	mscat32: Forward calls to wintrust where possible.

2007-10-28  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mscat32/Makefile.in, dlls/mscat32/main.c,
	  dlls/mscat32/mscat32.spec:
	mscat32: Add stub dll.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/variant.c:
	oleaut32: Properly initialize the result variant in VarImp.

2007-10-27  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/credui/credui_main.c:
	credui: Fix memory leak (found by Smatch).

	* dlls/mshtml/protocol.c:
	mshtml: Fix memory leak (found by Smatch).

2007-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shdocvw/navigate.c:
	shdocvw: Print the unsupported args in a FIXME.

	* dlls/acledit/acledit.spec, dlls/acledit/main.c:
	acledit: Add a stub for FMExtensionProcW.

2007-10-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Always send a content length header, even if there is no content.

2007-10-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Remove overly aggressive const declaration for TEST_URL_UNESCAPE.

2007-10-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c:
	wined3d: Default to GLSL. This is safe because we now have proper ps2.0/vs2.0
	detection.

2007-10-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Detect vertex shader 2.0 support using a pixel shader 2.0 limit.
	Without this vertex shader 3.0 is reported on non-Nvidia cards that
	only support vertex shader 2.0. Reporting 3.0 would result in slow
	software rendering as it is much more advanced than 2.0.

	* dlls/wined3d/directx.c:
	wined3d: Fix the amount of texture memory in the debug traces.

	* dlls/wined3d/directx.c:
	wined3d: Print the correct pixel/vertex shader version in a debug trace.

	* dlls/wined3d/directx.c:
	wined3d: Add proper PS2.0 detection for older cards with GLSL support.

	* dlls/wined3d/directx.c:
	wined3d: Use native shader limits instead of the maximum the driver can handle
	in software.
	This should prevent software fallbacks and and second it will allow for
	ps2.0/ps3.0 detection.

2007-10-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix test crash on WinXP-SP2.

2007-10-28  Paul Millar <paul@astro.gla.ac.uk>

	* tools/widl/write_msft.c:
	widl: Add support for overriding recorded time, allowing binary-identical
	compilation.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winealsa.drv/alsa.c, dlls/winealsa.drv/midi.c,
	  dlls/winealsa.drv/mixer.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c, dlls/winealsa.drv/waveout.c:
	winealsa.drv: Avoid the alsa alloca macros that cause compiler warnings.

2007-10-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_fs.c:
	shell32: Constify some variables.

2007-10-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix a typo in the previous patch. Spotted by Francois Gouget.

2007-10-28  Francois Gouget <fgouget@free.fr>

	* include/d3dx8math.inl:
	d3dx8: Make sure d3dx8math.inl compiles fine, whether nameless unions are
	supported or not.

	* dlls/d3dx8/tests/math.c:
	d3dx8: Fix compilation on systems that don't support nameless unions.

	* include/tapi.h:
	tapi32: Add prototypes for lineInitializeExA/W().

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix the DeleteMenuWrap() forward.

	* dlls/crypt32/cert.c, include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Fix compilation on systems that don't support nameless structs.

	* programs/winetest/Makefile.in, programs/winetest/main.c:
	winetest: Add an option that shuts Windows down once the tests have completed.

	* programs/wineboot/shutdown.c:
	wineboot: Add a reminder that EWX_FORCEIFHUNG is not implemented.

2007-10-28  Francois Gouget <fgouget@codeweavers.com>

	* programs/wineboot/wineboot_En.rc, programs/wineboot/wineboot_Ko.rc,
	  programs/wineboot/wineboot_Sv.rc:
	wineboot: Make sure 'Cancel' has the focus and is the default button in the
	'Do you want to kill all your applications' dialog.

2007-10-28  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/dialogs.c:
	shell32: Pass the shutdown reason to ExitWindowsEx().

2007-09-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Honor pbos when downloading a compressed texture.

2007-10-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move texture loading to LoadLocation.

2007-09-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Move sysmem->drawable copying to LoadLocation.

2007-09-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Add a comment explaining what LoadLocation does.

	* dlls/wined3d/surface.c:
	wined3d: Move drawable->sysmem reading to UpdateLocation.

2007-10-26  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Fix ExprEvalRoutines output.

2007-10-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Always close the data connection before receiving a server response.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Always return an error when a transfer is in progress.

	* dlls/snmpapi/main.c:
	snmpapi: Fix memory allocation in SnmpUtilVarBindListCpy.

2007-10-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/tests/string.c:
	msvcrt/tests: Loosen the mbctype test to pass under Windows 9x and NT 4.0.

2007-10-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/comm.c:
	kernel32: Fix description for SetDefaultCommConfig.

2007-10-26  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Add tests for BindToObject for URL monikers based on the existing
	tests for BindToStorage.

2007-10-26  Aric Stewart <aric@codeweavers.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Fix to DMOEnum to properly enumerate the keys and properly respect
	the flag.

2007-10-26  Detlef Riekenberg <wine.dev@web.de>

	* include/winbase.h:
	include/winbase: Fix a typo.

2007-10-26  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.48.

----------------------------------------------------------------
2007-10-26  Marcus Meissner <meissner@suse.de>

	* AUTHORS:
	Updated AUTHORS file.

2007-10-26  Francois Gouget <fgouget@free.fr>

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Fix compilation on systems that don't support nameless unions.

2007-09-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Move regular surface / texture downloading to LoadLocation.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  include/wine/wined3d_interface.h:
	wined3d: Add a method for surface location updates.

2007-10-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Begin centralizing surface location management.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: A point size fix.

2007-10-26  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/advapi32.spec:
	advapi32: Export RegOverridePredefKey.

2007-10-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Initial tests for PrintDlgExW.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Improve stub for PrintDlgEx.

2007-10-25  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/loader.c:
	ntdll: Dump the base address when a module is loaded.

2007-10-25  Jeremy Newman <jnewman@codeweavers.com>

	* dlls/credui/banner.bmp:
	credui: Add a Wine-themed banner for the credentials dialog.

2007-10-25  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/Makefile.in, dlls/credui/banner.bmp, dlls/credui/credui.rc,
	  dlls/credui/credui_De.rc, dlls/credui/credui_En.rc,
	  dlls/credui/credui_Ko.rc, dlls/credui/credui_No.rc,
	  dlls/credui/credui_Pl.rc, dlls/credui/credui_Sv.rc,
	  dlls/credui/credui_main.c, dlls/credui/credui_resources.h:
	credui: Add a banner and message box to the dialog presented by
	CredUIPromptForCredentials.

2007-10-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Fixed test crash on IE7.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: More IE7 test fixes.

	* dlls/urlmon/binding.c:
	urlmon: Use QueryInterface in get_callback.

2007-10-25  Dan Kegel <dank@kegel.com>

	* dlls/winmm/tests/mixer.c:
	winmm: Avoid testing linecontrols if can't get line info.

2007-10-26  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/string.c:
	msvcrt/tests: Fix memory leak (found by Smatch).

2007-10-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/istream.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/shlwapi.spec, dlls/shlwapi/thread.c:
	shlwapi: Update exported API entries according to the info published by Geoff
	Chappell.

2007-10-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix a memory leak.

2007-10-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Use package_from_db instead of opening the package with MsiOpenPackage.

	* dlls/msi/tests/suminfo.c:
	msi: Output expected values on failing tests.

	* dlls/msi/tests/msi.c:
	msi: Define _WIN32_MSI to pull in new definitions.

	* dlls/user32/tests/msg.c:
	user32: Define WM_LBTRACKPOINT if it's not previously defined.

	* dlls/user32/tests/dde.c:
	user32: Fix a test that now passes in Windows.

	* dlls/advpack/tests/advpack.c:
	advpack: Restore the LProgramF string using the acquired Program Files string.

	* dlls/msi/tests/install.c:
	msi: Set the ROOTDRIVE property so the admin sequence won't choose its own.

	* dlls/msi/tests/install.c:
	msi: Add missing newline to the adm_custom_action table.

	* dlls/cabinet/tests/extract.c:
	cabinet: Fix two tests that return E_FAIL on win98.

2007-10-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fixed tests on IE7.

	* dlls/urlmon/tests/url.c:
	urlmon: Added emulated http tests.

2007-10-25  Aric Stewart <aric@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Set last error to ERROR_INSUFFICIENT_BUFFER in LCMapString when the
	sort key buffer is too small.

2007-10-25  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, include/winnt.h:
	advapi32: Add a well known sid.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix CreateWellKnownSid test on Windows XP.

2007-10-26  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/parser.c,
	  tools/winebuild/spec32.c, tools/winebuild/winebuild.man.in:
	winebuild: Add a -ordinal flag for entry points that must be imported by
	ordinal but exported by name.

2007-10-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove iTunes chain from certificate policy tests, there's no guarantee
	the root cert is trusted.

	* dlls/crypt32/tests/cert.c:
	crypt32: Remove a test because of a Windows 2003 SP1 bug.

	* dlls/setupapi/devinst.c:
	setupapi: Include enumerator string as part of device instance ID.

2007-10-25  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Ignore ACEs with the INHERIT_ONLY_ACE flag set during access checks.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix the ACCESS_SYSTEM_SECURITY test by impersonating the token during
	the call to RtlAdjustPrivileges.

	* dlls/advapi32/tests/security.c:
	advapi32: Add a test for access checks with the INHERIT_ONLY_ACE flag.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	server: Make create_mapping use struct object_attributes and set the security
	descriptor of file mapping objects.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/mutex.c,
	  server/protocol.def, server/trace.c:
	server: Make create_mutex use struct object_attributes and set the security
	descriptor of mutex objects.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/semaphore.c, server/trace.c:
	server: Make create_semaphore use struct object_attributes and set the security
	descriptor of semaphore objects.

2007-10-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/xcopy/xcopy.c:
	xcopy: Fix some memory leaks.

2007-10-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Ko.rc:
	browseui: New Korean resource.

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Updated Korean resource.

	* programs/taskmgr/Ko.rc:
	taskmgr: Updated Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

	* programs/winefile/Ko.rc:
	winefile: Updated Korean resource.

	* dlls/msacm32/msacm_Ko.rc:
	msacm32: Updated Korean resource.

	* dlls/wininet/wininet_Ko.rc:
	wininet: Updated Korean resource.

	* dlls/mpr/mpr_Ko.rc:
	mpr: Updated Korean resource.

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* dlls/comctl32/comctl_Ko.rc:
	comctl32: Updated Korean resource.

2007-10-25  Lei Zhang <thestig@google.com>

	* dlls/user32/dialog.c, dlls/user32/tests/dialog.c:
	user32: Do not send button click to dialog with disabled default button.

2007-10-24  Detlef Riekenberg <wine.dev@web.de>

	* include/commdlg.h:
	include/commdlg: Add more defines for PrintDlg/PrintDlgEx.

2007-10-24  Dan Hipschman <dsh@linux.ucla.edu>

	* .gitignore, dlls/oleaut32/Makefile.in, dlls/oleaut32/oaidl_p.c,
	  dlls/oleaut32/oleaut32_oaidl.idl, dlls/oleaut32/usrmarshal.c:
	oleaut32: Use widl to generate oaidl_p.c.

	* tools/widl/typegen.c:
	widl: Fix a crash in compare_expr.

	* tools/widl/typegen.c:
	widl: Allow void pointers with iid_is attributes.

2007-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct GetBestRoute when there is no route.

2007-10-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/protectdata.c:
	crypt32: Avoid misleading fixme when no data are passed to CryptUnprotectData.

	* dlls/setupapi/devinst.c:
	setupapi: Return FALSE if a NULL buffer is passed in.

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec:
	advapi32: Add stubs for CredEnumerateA/W.

	* dlls/credui/credui_main.c:
	credui: Add proper parameter names to SSO stubs, and use symbolic return values.

2007-10-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Forward GetStringType3ExW to GetStringTypeW.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Forward SetDlgItemTextWrapW to user32.SetDlgItemTextW.

2007-10-24  Dan Kegel <dank@kegel.com>

	* tools/wine.inf:
	wine.inf: Add fake DLL for mshtml.dll.

2007-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: For platforms that do not implement /proc, return Unimplemented for
	the functions trying to read from there.

2007-10-24  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Initialize variable to avoid compiler warning.

2007-10-24  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/sync.c:
	kernel32: Add tests for creating events with different initial security
	descriptors.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/console.c,
	  server/event.c, server/named_pipe.c, server/object.h,
	  server/process.c, server/protocol.def, server/security.h,
	  server/token.c, server/trace.c:
	server: Use the security descriptor passed in when creating events.

	* dlls/advapi32/tests/security.c:
	advapi32: Print out the unknown value for sid use in the LookupAccountName test,
	instead of the known value.

	* dlls/comctl32/comboex.c:
	comctl32: Don't set the focus to the text box when the ComboBoxEx receives a
	CBN_SELENDCANCEL notification.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/credui/tests/Makefile.in, dlls/credui/tests/credui.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	credui: Add tests for CredUIPromptForCredentialsW and CredUIConfirmCredentialsW.

	* dlls/credui/Makefile.in:
	credui: Build the import library.

	* dlls/credui/credui_main.c:
	credui: Verify some of the parameters to CredUIPromptForCredentials, like
	native does.

	* dlls/credui/credui_main.c:
	credui: The pUIInfo parameter is optional to CredUIPromptForCredentials,
	so check before dereferencing it to get the parent window.

	* dlls/credui/credui_main.c:
	credui: Implement CredUIConfirmCredentialsW.

2007-10-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/winedbg/source.c:
	winedbg: Fix a memory leak.

	* programs/winhelp/hlpfile.c:
	winhelp: Fix a memory leak.

2007-10-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmdlgtst/Ko.rc:
	cmdlgtst: Updated Korean resource.

2007-10-24  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix unchecked NULL ptr in BIDI_Reorder.

2007-10-23  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneMatrixIsIdentity.

	* include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneMatrixIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorSubtract.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorAdd.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorScale.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorModulate.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorLerp.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorNegative.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDotNormalize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDotCoord.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDot.

2007-10-24  Bang Jun-young <junyoung@mogua.com>

	* include/shlwapi.h:
	shlwapi: SHRegDuplicateHKey() is now defined in the Windows SDK.

2007-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Forward more entries to user32 exports.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Use existing shlwapi/Win32 APIs to compare strings in Windows encoding.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Use symbolic names when possible.

2007-10-23  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Add stubs for IPropertyBag_Read.

	* tools/widl/parser.y:
	widl: Use error_loc instead of yyerror.

	* tools/widl/parser.l, tools/widl/proxy.c, tools/widl/utils.c,
	  tools/widl/utils.h:
	widl: parser_error must append a newline, so write a new function, error_loc.

2007-10-23  Juan Lang <juan.lang@gmail.com>

	* dlls/credui/credui.spec, dlls/credui/credui_main.c:
	credui: Add stubs.

2007-10-23  Roy Shea <roy@cs.hmc.edu>

	* include/rpc.h:
	include/rpc.h: Add missing headers.

2007-10-03  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, dlls/browseui/Makefile.in, dlls/browseui/browseui.h,
	  dlls/browseui/browseui_main.c, dlls/browseui/progressdlg.c,
	  dlls/browseui/regsvr.c, dlls/browseui/resids.h,
	  dlls/browseui/rsrc.rc, dlls/browseui/rsrc_En.rc:
	browseui: Implement the progress dialog.

	* include/shlguid.h, include/shlobj.h:
	include: Add IProgressDialog definitions.

2007-10-23  Dan Kegel <dank06@kegel.com>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Fix false pass in warn+heap case.

2007-10-23  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Implement cert chain revocation checking.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement CertVerifyRevocation.

	* dlls/crypt32/tests/cert.c:
	crypt32: Add basic test for CertVerifyRevocation.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Add CertVerifyRevocation stub.

	* tools/wine.inf:
	wine.inf: Register cryptnet.dll.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Don't prefer native version.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement CertDllVerifyRevocation.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Get cache entry expire time from HTTP expires header.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Set timeout on http connections when a timeout is specified.

2007-10-23  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix runaway loop because of unsigned comparison in BIDI_Reorder.

2007-10-22  Alex Villacís Lasso <a_villacis@palosanto.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/riched32/tests/Makefile.in, dlls/riched32/tests/editor.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	riched32: Skeleton of richedit 1.0 test plus WM_SETTEXT test.

2007-10-23  Rob Shearman <rob@codeweavers.com>

	* include/winnt.h:
	include: Remove duplicate ACL_REVISION1 and ACL_REVISION2 defines in winnt.h.
	Move the remaining ACL_REVISION define nearer to the other ACL revision defines.

	* dlls/advapi32/security.c, dlls/ntdll/ntdll.spec, dlls/ntdll/sec.c,
	  include/winternl.h:
	ntdll: Add a stub for RtlSetControlSecurityDescriptor.
	Implement SetSecurityDescriptorControl on top of RtlSetControlSecurityDescriptor.

2007-10-23  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/comctl32/theming.c,
	  dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c,
	  dlls/crypt32/crypt32_private.h, dlls/dplayx/dplay.c,
	  dlls/dsound/mixer.c, dlls/gdi32/region.c, dlls/msi/appsearch.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/ole2.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/opengl32/make_opengl, dlls/riched20/rtf.h,
	  dlls/usp10/tests/usp10.c, dlls/wined3d/device.c,
	  dlls/winedos/dosaspi.c, dlls/winejack.drv/audio.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_convert.c,
	  dlls/winex11.drv/dib_dst_swap.c, dlls/winex11.drv/dib_src_swap.c,
	  dlls/winex11.drv/mouse.c, dlls/wininet/urlcache.c,
	  programs/explorer/systray.c, programs/taskmgr/applpage.c,
	  programs/taskmgr/graphctl.c, programs/winedbg/stack.c,
	  tools/winedump/README:
	Assorted spelling fixes.

	* dlls/advapi32/security.c, dlls/cryptnet/cryptnet_main.c,
	  include/winbase.h, tools/winapi/win32.api:
	Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* dlls/winex11.drv/dib.c:
	winex11: Remove some unneeded casts.

2007-10-23  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: Fix RtlValidAcl to accept newer ACL revisions.

	* dlls/advapi32/tests/security.c:
	advapi32: Add some tests for ACL functions.

	* dlls/advapi32/tests/security.c:
	advapi32: Runtime link to CreateWellKnownSid in the tests for the function,
	since it isn't available on all platforms.

	* dlls/ntdll/sec.c:
	ntdll: Allow the newer ACL revisions in RtlCreateAce.

2007-10-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/postscript MIME filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added audio/wav MIME filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added text/richtext MIME filter.

2007-10-23  Luke Bratch <l_bratch@yahoo.co.uk>

	* dlls/mshtml/view.c:
	mshtml: Fix text input fields.

2007-10-23  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Set media info strings to NULL after freeing them.

	* dlls/msi/tests/install.c:
	msi: Include the null terminator when writing data to the stream.

	* dlls/msi/alter.c:
	msi: Don't delete the table if the table deleted itself because of a release.

	* dlls/msi/action.c:
	msi: Release the record only after using the record's data.

2007-10-22  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winealsa.drv/mixer.c:
	winealsa.drv: Leave the CriticalSection before destroying it. Found by Smatch.

	* dlls/winealsa.drv/dscapture.c:
	winealsa.drv: Leave the CriticalSection before destroying it. Found by Smatch.

2007-10-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Do not crash with PageSetupDlg(NULL).

2007-10-22  Juan Lang <juan.lang@gmail.com>

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement CryptRetrieveObjectByUrlW for the http protocol.

	* dlls/cryptnet/cryptnet_main.c, dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Return FALSE if the requested URL exists and the url array size
	is NULL.

	* dlls/cryptnet/Makefile.in, dlls/cryptnet/cryptnet_main.c,
	  dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Implement CryptRetrieveObjectByUrlW for the file: protocol.

	* dlls/cryptnet/cryptnet_main.c, dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Implement CryptRetrieveObjectByUrlA on top of
	CryptRetrieveObjectByUrlW.

	* dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Add tests for CryptRetrieveObjectByUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add stubs for CryptRetrieveObjectByUrlA/W.

	* dlls/wininet/http.c:
	wininet: Don't assume lpBuffersIn is not NULL.

	* dlls/wininet/urlcache.c:
	wininet: Pass hash entry directly to URLCache_DeleteEntryFromHash.

	* dlls/wininet/urlcache.c:
	wininet: Implement RetrieveUrlCacheEntryFileW.

	* dlls/wininet/urlcache.c:
	wininet: Implement UnlockUrlCacheEntryFileW.

	* dlls/wininet/urlcache.c:
	wininet: Pass hash entry directly to URLCache_HashEntrySetUse rather than
	searching for it again.

	* dlls/wininet/urlcache.c:
	wininet: Introduce a URLCache_FindHashW, and use it rather than
	URLCache_FindEntryInHashW.

	* dlls/wininet/urlcache.c:
	wininet: Use URLCache_FindHash rather than URLCache_FindEntryInHash.

2007-10-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/tests/font.c:
	gdi32: Remove a test that expects the break character to equal ascii space.

	* dlls/advapi32/tests/crypt_sha.c:
	advapi32: Remove tests for the sha context structure.

2007-10-21  Alex Busenius <the_unknown@gmx.net>

	* dlls/user32/edit.c:
	user32: Fix segfault when combobox contains a longer text than buffer_limit.

2007-10-18  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionIsIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionConjugate.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec3Cross.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Scale.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Minimize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Maximize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Lerp.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Subtract.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Add with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Dot with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*LengthSq.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Length with a test.

2007-10-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Care for the inverted y coords in dsy.

2007-10-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Ignore texture transforms when a shader is used, not set.

	* dlls/wined3d/device.c:
	wined3d: Create query private data when faking the query.

2007-10-21  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix off by one error in BIDI_Reorder.

2007-10-20  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Fix memory leaks (found by Smatch) and fix a message.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix memory leak (found by Smatch).

	* dlls/kernel32/tests/actctx.c, dlls/kernel32/tests/pipe.c:
	kernel32/tests: Fix memory leaks (found by Smatch).

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Fix memory leak (found by Smatch).

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix memory leak (found by Smatch).

2007-10-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Make CreateWellKnownSid create domain sids (with test).

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Add a test for CreateWellKnownSid and implement two more SIDs.

2007-10-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Define OBJECT_BASIC_INFORMATION in source file as it is not
	defined in Windows SDK winternl.h.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make the SDDL test pass under Vista.

2007-10-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/hhctrl.ocx/version.rc:
	hhctrl.ocx: Update version info.

	* dlls/tapi32/line.c, dlls/tapi32/tapi32.spec, include/tapi.h:
	tapi32: Add stub for lineInitializeExA.

2007-10-21  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/urlmon.spec, dlls/urlmon/urlmon_main.c, include/urlmon.idl:
	urlmon: Add a stub for GetClassFileOrMime.

	* dlls/urlmon/http.c:
	urlmon: Fix the MIME type reported by the HTTP protocol when the Content-Type
	headers contains charset data too.

2007-10-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/str.c:
	crypt32: Always set *ppszError.

	* dlls/crypt32/str.c:
	crypt32: Don't allocate a 0-length string.

	* dlls/crypt32/encode.c:
	crypt32: Don't assume string pointer has been set if length is 0.

	* dlls/crypt32/str.c:
	crypt32: Fail if MultiByteToWideChar converts 0 characters.

2007-10-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/ftp.c:
	wininet: Use passive mode for the ftp tests.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Fix some failing ftp tests on Windows and Wine.

	* dlls/wininet/ftp.c:
	wininet: Properly clean up ftp sessions.

	* dlls/wininet/ftp.c:
	wininet: Separate ftp session destruction from closing connections.

2007-10-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/wineboot/wineboot.c:
	wineboot: Fix some memory leaks.

	* programs/taskmgr/perfdata.c:
	taskmgr: Fix a memory leak.

2007-10-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c:
	riched20: 2.0 and higher inserts CRCRLF as space (with tests).

2007-10-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* loader/wine.man.in:
	wine.man: Document OSS environment variables.

2007-10-20  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.man.in:
	widl: Update the manpage.

2007-10-19  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix problems with variable-size user types.

2007-10-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Rebind the 2D texture corresponding to the p8 surface. In some programs
	this caused nothing to show up.

2007-10-20  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/ntdll_misc.h:
	ntdll: #include <sys/types.h> to get dev_t.

2007-10-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Fixed spaces handling in range object.

2007-10-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::expand("TextEdit") implementation.

2007-10-21  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/tests/dom.c:
	mshtml/tests: Move the 'const' after REFIID as REFIID is a macro that already
	starts with 'const'.

	* dlls/winex11.drv/window.c:
	winex11.drv: Fix two missing unlocks on error paths. Found by Smatch.

	* tools/wrc/parser.y:
	wrc: Remove redundant NULL check before free(). Found by Smatch.

	* libs/wpp/ppy.y:
	wpp: Remove redundant NULL check before free(). Found by Smatch.

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/urlcache.c:
	wininet: Implement DeleteUrlCacheEntryW.

	* dlls/wininet/urlcache.c:
	wininet: Implement IsUrlCacheEntryExpiredW.

	* dlls/wininet/urlcache.c:
	wininet: Add a URLCache_FindEntryInHashW helper, and use it to simplify finding
	an entry in a hash with a wide-character URL string.

	* dlls/wininet/urlcache.c:
	wininet: Implement IsUrlCacheEntryExpiredA.

	* dlls/wininet/urlcache.c:
	wininet: Update comments to match function parameters.

2007-10-20  Rob Shearman <rob@codeweavers.com>

	* server/file.c:
	server: Fix file_set_sd to handle NULL DACLs.
	These mean that the file should have full permissions for everyone.

2007-10-20  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/setupapi/install.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupInstallServicesFromInfSectionA.

2007-10-20  Lionel Debroux <lionel_debroux@yahoo.fr>

	* server/registry.c:
	server: Remove redundant NULL checks before free (found by Smatch).

	* server/console.c:
	server: Remove redundant NULL checks before free (found by Smatch).

	* dlls/itss/chm_lib.c:
	itss: Remove redundant NULL check before free (found by Smatch).

	* dlls/comctl32/toolbar.c:
	comctl32: Remove redundant NULL check before free (found by Smatch).

	* dlls/comctl32/tab.c:
	comctl32: Remove redundant NULL check before free (found by Smatch).

2007-10-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msi/dialog.c:
	msi: Use BS_GROUPBOX for group boxes.

2007-10-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Reset the parent storage on overwritten streams so that operations on
	them now fail.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test to show that operations on overwritten should no longer
	succeed.

2007-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/wps_xx.rc:
	wineps: Remove unused resource file.

	* dlls/shell32/shell32_xx.rc, dlls/shell32/shres.rc:
	shell32: Remove unused resource file.

	* dlls/spoolss/tests/spoolss.c:
	spoolss/test: Add a test for BuildOtherNamesFromMachineName.

2007-10-19  Ken Thomases <ken@codeweavers.com>

	* configure, configure.ac:
	configure: Use 0 instead of NULL because NULL isn't defined.

	* configure, configure.ac:
	configure: netinet/in_pcb.h and netinet/ip_var.h require netinet/in.h on Mac
	OS X.

	* configure, configure.ac:
	configure: Fixed a typo: code snippet outside AC_CHECK_HEADERS macro.

2007-10-19  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/bidi.c:
	gdi32: Add a set of braces to silence a GCC 3.4 warning.

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Fix a leak.

	* dlls/crypt32/cert.c:
	crypt32: Initialize mask when allocating it.

	* dlls/crypt32/store.c:
	crypt32: Simplify I_CertUpdateStore.

	* dlls/crypt32/encode.c:
	crypt32: Replace a private type with a public one.

	* include/wincrypt.h:
	crypt32: Add more missing definitions.

	* dlls/crypt32/tests/cert.c:
	crypt32: Remove tests that cause memory corruption.

2007-10-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/protocol.c:
	itss: Fixed memory freeing.

2007-10-18  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winex11.drv/dib.c:
	winex11.drv: Remove the coloruse == -1 special case. Add
	X11DRV_DIB_GetColorCount() for computing a bitmap's number of colors.

2007-10-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/path.c:
	ntdll: Fixed off-by-one error in RtlGetFullPathName_U (spotted by Michael
	Builov).

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Keep signer handle count separate from signer info.

2007-10-18  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/oid.c:
	crypt32: Free memory on an error path.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c,
	  dlls/crypt32/rootstore.c:
	crypt32: Free root store when quitting.

	* dlls/crypt32/tests/msg.c:
	crypt32: Fix a couple leaked messages.

	* dlls/crypt32/msg.c:
	crypt32: Get rid of an unused key.

	* dlls/crypt32/msg.c:
	crypt32: Make sure a signed encode message's signer info is always initialized.

	* dlls/crypt32/chain.c:
	crypt32: Set lower quality chain count and pointer to 0 when freeing them.

	* dlls/crypt32/chain.c:
	crypt32: Don't keep a pointer to the lower quality chains when choosing a
	higher quality one, otherwise they'll get double-freed.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Use GetSystemTimeAsFileTime rather than
	GetSystemTime/SystemTimeToFileTime.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/regstore.c,
	  dlls/crypt32/store.c:
	crypt32: Use I_CertUpdateStore in registry stores.

	* dlls/crypt32/regstore.c:
	crypt32: Pass reg store's key and memory store to CRYPT_RegReadFromReg, rather
	than passing a private type.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/filestore.c:
	crypt32: Use I_CertUpdateStore in file stores.

	* dlls/crypt32/main.c, dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement I_CertUpdateStore.

	* dlls/crypt32/tests/store.c:
	crypt32: Add tests for I_CertUpdateStore.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add I_CertUpdateStore stub.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stubs for I_CryptFindLruEntry and I_CryptCreateLruEntry.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Partially implement CryptGetObjectUrl.

	* include/wincrypt.h:
	cryptnet: Add URL_OID_GET_OBJECT_URL_FUNC definition.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/cryptnet/Makefile.in, dlls/cryptnet/tests/Makefile.in,
	  dlls/cryptnet/tests/cryptnet.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	cryptnet: Add tests for CryptGetObjectUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add stub for CryptGetObjectUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add CertDllVerifyRevocation stub.

	* dlls/cryptnet/Makefile.in, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement DllRegisterServer/DllUnregisterServer.

2007-10-18  Allan Tong <actong88@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix comment typos in SetMultithreaded.

	* dlls/wined3d/device.c:
	wined3d: Fix resource cleanup if CreateCubeTexture fails.

2007-10-18  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: FindExSearchLimitToDirectories has no effect on FindFirstFileEx.

2007-10-16  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Don't use default:XX to open up a hardware control.

2007-10-18  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Single-line control must refuse to insert carriage returns (with
	tests).

2007-10-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/msi/tests/install.c:
	msi/tests: Do not leak a HKEY when RegQueryValueEx failed.

2007-10-18  Francois Gouget <fgouget@free.fr>

	* include/dimm.idl:
	dimm.idl: Don't import unknwn.idl if DO_NO_IMPORTS is defined.

	* include/mshtml.idl:
	mshtml: Add a missing import directive to mshtml.idl.

	* include/imm.h:
	imm32: #ifdef-out some functions in imm.h if wingdi.h was not included first.

	* include/ndrtypes.h:
	ndrtypes.h: Include limits.h.

	* tools/fnt2fon.c:
	tools/fnt2fon: Remove error() as it is almost unused. Transform errno into a
	meaningful string for the error message.

2007-10-18  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/mpr/wnet.c:
	mpr: Delete a stub trace.

2007-10-18  Aric Stewart <aric@codeweavers.com>

	* dlls/ws2_32/protocol.c:
	ws2_32: Return proper WSAENOBUFS error when enuming protocols.

2007-10-18  Jacek Caban <jacek@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Self-register msimtf.dll.

	* dlls/mshtml/install.c:
	mshtml: Added support for installing Gecko from build dir.

	* dlls/mshtml/selection.c, dlls/mshtml/tests/dom.c:
	mshtml: Set selection to default on IHTMLSelectionObject::createRange if there
	is no range selected.

2007-10-18  Francois Gouget <fgouget@free.fr>

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/readres.c, tools/wrc/utils.c,
	  tools/wrc/wrc.c, tools/wrc/writeres.c:
	wrc: Modify the error, warning and tracing functions to behave like all the
	other Wine tracing methods, that is to not append a '\n' to the message.

	* tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/write.c:
	wmc: Modify the error and warning functions to behave like all the other Wine
	tracing methods, that is to not append a '\n' to the message.

	* tools/winegcc/utils.c, tools/winegcc/winegcc.c:
	winegcc: Modify error() to behave like all the other Wine tracing methods,
	that is to not append a '\n' to the message.

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/proxy.c,
	  tools/widl/utils.c:
	widl: Modify generic_msg() to behave like all the other Wine tracing methods,
	that is to not append a '\n' to the message.

	* tools/widl/typegen.c:
	widl: Add the trailing '\n' to an error message.

	* tools/widl/utils.c, tools/widl/utils.h:
	widl: Remove internal_error() as it is unused.

2007-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/path.c:
	ntdll: Cache the DOS drives stat info for up to one second.

	* dlls/shell32/shellole.c:
	shell32: Check for internal shell classes before querying the registry in
	SHCoCreateInstance.

2007-10-16  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/locale.c:
	kernel32: Partially implement GetUserGeoID().

2007-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/ole2.c, dlls/shell32/tests/systray.c:
	Fix redundant uses of MAKEINTRESOURCE.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Use wine_get_dos_file_name instead of duplicating knowledge about
	the drive symlinks.

2007-10-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/edit.c:
	user32: Tests for fix EM_SETLIMITTEXT with zeroed args.

2007-10-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/edit.c:
	user32: Fix EM_SETLIMITTEXT with zeroed args.

2007-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/listbox.c, dlls/user32/tests/msg.c:
	user32: Add more listbox message tests, make them pass under Wine.

2007-10-18  Evan Teran <evan.teran@gmail.com>

	* dlls/shell32/shell32_main.c:
	shell32: Fix typo in GlobalAlloc parameters.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msi/action.c:
	msi: Make the WriteEnvironmentStrings handling of [~] a bit better.

2007-10-17  Nigel Liang <ncliang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Release object in HttpEndRequestW after use.

2007-10-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss_main.c:
	spoolss: Return a magic number as HANDLE in RevertToPrinterSelf.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for BuildOtherNamesFromMachineName.

2007-10-16  Apostolos Alexiadis <djapal@gmail.com>

	* dlls/comctl32/comctl_El.rc, dlls/comctl32/rsrc.rc:
	comctl32: Add Greek resources.

2007-10-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/oid.c:
	crypt32: Always return an empty list on failure from CryptGetDefaultOIDDllList.

	* dlls/crypt32/oid.c:
	crypt32: Don't abort early if encoding type is 0 for
	CryptRegisterOIDFunction/CryptUnregisterOIDFunction.

	* dlls/crypt32/oid.c:
	crypt32: Don't crash logging numeric function names.

	* dlls/crypt32/oid.c:
	crypt32: Implement CryptGetDefaultOIDFunctionAddress.

	* dlls/crypt32/tests/oid.c:
	crypt32: Add basic tests for CryptGetDefaultOIDFunctionAddress.

	* dlls/crypt32/oid.c:
	crypt32: Use a structure to hold function address handle.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c:
	ntdll: Support for UTF-16 manifests with reverse endianness.

	* dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c:
	ntdll: Manifests should be parsed as UTF-16 only if there is a BOM (with
	testcase).

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Make the actctx test pass when the application is run from a
	different directory.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Support for spaces in actctx test executable path.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Don't close an invalid handle if the process is being debugged
	as this will raise an exception.

2007-10-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/streams.c:
	msi: Add handling for MSIMODIFY_INSERT for the streams table.

	* dlls/msi/string.c, dlls/msi/tests/db.c:
	msi: Save nonpersistent strings as holes in the string pool.

	* dlls/msi/tests/db.c:
	msi: Test adding nonpersistent strings to the string table.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return ERROR_FUNCTION_FAILED if a matching row is not found.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return ERROR_FUNCTION_FAILED when inserting duplicate keys.

2007-10-17  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Detect conformant arrays of user types correctly.

	* tools/widl/typegen.c, tools/widl/widl.c:
	widl: Remove printf format strings that aren't really format strings.

	* tools/widl/parser.y, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate dlldata files.

	* tools/widl/widl.c:
	widl: Improve file cleanup when errors occur.

2007-10-17  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Enlarge buffer in test_enum_container. Fixes two test failures on Vista.

2007-10-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/oleview/pane.c:
	oleview: Fix a memory leak.

2007-10-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c, include/mshtml.idl:
	mshtml: Import dimm.idl and fix compilation.

	* include/hlink.idl:
	hlink.idl: Undef unicode GetObject macro.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Don't expose the parent window in areas that are now part of the child
	visible region.

	* dlls/winex11.drv/winpos.c, server/window.c:
	server: Avoid refreshing areas of a window that have already been copied by
	the X server.

	* configure, configure.ac, dlls/gdi32/Makefile.in:
	configure: Check for fontconfig in the X directory if not found in the standard
	places.

2007-10-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for SplIsUpgrade.

2007-10-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/msimtf/main.c:
	msimtf: Added class factory implementation.

	* .gitignore, dlls/msimtf/Makefile.in, dlls/msimtf/main.c,
	  dlls/msimtf/msimtf.inf, dlls/msimtf/rsrc.rc:
	msimtf: Added Dll[Un]RegisterServer implementation.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winproc.c:
	user32: Replace a pointer cast by FIELD_OFFSET.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Replace a couple of macros by a function to avoid compiler
	warnings.

	* dlls/comctl32/listview.c:
	comctl32: Fix a discard const warning.

	* dlls/crypt32/decode.c:
	crypt32: Fix pointer casts in decode.c too.

	* dlls/msi/table.c:
	msi: Avoid casting const pointers to non-const.

	* dlls/msi/table.c:
	msi: Properly clear the new table data when a column is added.

2007-10-17  Bang Jun-young <junyoung@mogua.com>

	* dlls/ole32/ole32_main.c:
	ole32: Include wine/port.h for snprintf().

	* dlls/advapi32/security.c, include/winbase.h:
	advapi32: Fix AdjustTokenPrivileges() to match the PSDK.

2007-10-16  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: Avoid setting IS_TEXT_UNICODE_NUL_BYTES for the last byte of an ANSI
	string.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Add some tests for RtlIsTextUnicode.

2007-10-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Insert the decimal seperator, if it is just 1 char.

	* dlls/msi/tests/install.c:
	msi: Common Files is translated to current language.

	* dlls/msi/tests/install.c:
	msi: Marked two variables static.

2007-10-16  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/imm32/imm32.spec:
	imm32: ImmDisableIme is an alias to ImmDisableIME.

2007-10-16  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Always set pPolicyStatus->dwError.

2007-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Refuse to load OLE compound storage files like Windows does.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Process all types of messages while moving/resizing a window.

	* dlls/ntdll/reg.c:
	ntdll: Fixed typo in RTL_GetKeyHandle (spotted by Sean Chu).

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: The inline functions should be static instead of extern.

2007-10-14  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Lerp with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVecScale with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Maximize with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Minimize with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Subtract with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Add with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2CCW with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Dot with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DX8Vec2LengthSq with a test.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx8/tests/Makefile.in, dlls/d3dx8/tests/math.c,
	  include/Makefile.in, include/d3dx8math.h, include/d3dx8math.inl,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	d3dx8: Implement D3DX8Vec2Length with a test.

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Make local variables static and const.

2007-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shlwapi/tests/url.c:
	shlwapi/test: Test dwSize for UrlCanonicalizeA/W.

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/path.c,
	  dlls/shlwapi/tests/url.c:
	shlwapi/tests: Move URL testing functions from path.c to url.c.

	* dlls/wininet/tests/internet.c:
	wininet/tests: Test NULL pointer for InternetCanonicalizeUrlA.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Fix flags and SetLastError for InternetCanonicalizeUrlA/W.

	* dlls/shlwapi/url.c:
	shlwapi: Fix returned result code and size in UrlCanonicalizeA.

2007-10-13  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/mixer.c:
	dsound: Only warn for unsupported channels (or bits) when volume adjustment
	is done.

2007-10-16  Rob Shearman <rob@codeweavers.com>

	* server/trace.c:
	server: Owner and group SIDs in security descriptors are optional in many
	server calls.
	So print "<not present>" when they aren't provided instead of "<invalid sid>".

	* dlls/advapi32/tests/security.c:
	advapi32: Don't link to CreateWellKnownSid at compile time in the security tests.
	It isn't available on some Windows platforms.

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Fix token_access_check to allow full access to security descriptors
	with present but NULL DACLs.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: Fix the return code from RtlSetDaclSecurityDescriptor when daclpresent
	is FALSE.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for AccessCheck with NULL DACLs and blank DACLs.

	* dlls/ntdll/sec.c:
	ntdll: Fix NtAccessCheck for NULL, but present SACLs and DACLs.

2007-10-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Output the correct value for TableSize in ProxyFileInfo.

2007-10-15  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: NULL name in PRINTDLG_SetUpPrinterListComboA is correct so don't
	print a FIXME.

2007-10-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Only double the returned size when szValueBuf is NULL.

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* programs/progman/Xx.rc:
	progman: Remove the obsolete Xx.rc file.

2007-10-15  Daniel Nylander <po@danielnylander.se>

	* tools/wine.desktop:
	tools: Add Swedish name to .desktop file.

	* dlls/shdoclc/Sv.rc:
	shdoclc: Update Swedish translation.

	* dlls/oleaut32/oleaut32_Sv.rc:
	oleaut32: Update Swedish translation.

	* dlls/mshtml/Sv.rc:
	mshtml: Update Swedish translation.

	* dlls/comdlg32/cdlg_Sv.rc:
	comdlg32: Update Swedish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Sv.rc:
	wldap32: Add Swedish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Sv.rc:
	wininet: Add Swedish translation.

	* dlls/msrle32/msrle_Sv.rc, dlls/msrle32/rsrc.rc:
	msrle32: Add Swedish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Sv.rc:
	mpr: Add Swedish translation.

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Sv.rc:
	localspl: Add Swedish translation.

	* dlls/serialui/Sv.rc, dlls/serialui/serialui_rc.rc:
	serialui: Add Swedish translation.

	* dlls/hhctrl.ocx/Sv.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Add Swedish translation.

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Sv.rc:
	crypt32: Add Swedish translation.

	* dlls/msvidc32/msvidc32_Sv.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Add Swedish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Sv.rc:
	shlwapi: Add Swedish translation.

	* dlls/winspool.drv/Sv.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Swedish translation.

	* dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/wps_Sv.rc:
	wineps.drv: Add Swedish translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Sv.rc:
	sane.ds: Add Swedish translation.

	* dlls/oledlg/oledlg_Sv.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Swedish translation.

	* dlls/msvfw32/msvfw32_Sv.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Swedish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Sv.rc:
	msi: Add Swedish translation.

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Sv.rc:
	msacm32: Add Swedish translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Sv.rc:
	localui: Add Swedish translation.

	* dlls/iccvid/iccvid_Sv.rc, dlls/iccvid/rsrc.rc:
	iccvid: Add Swedish translation.

	* dlls/gphoto2.ds/gphoto2_Sv.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Swedish translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Sv.rc:
	credui: Add Swedish translation.

	* dlls/avifil32/avifile_Sv.rc, dlls/avifil32/rsrc.rc:
	avifil32: Add Swedish translation.

	* programs/clock/Sv.rc, programs/clock/Sw.rc, programs/clock/rsrc.rc:
	clock: Update Swedish translation.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Sv.rc:
	wineboot: Add Swedish translation.

	* programs/winhelp/Sv.rc, programs/winhelp/Sw.rc,
	  programs/winhelp/rsrc.rc:
	winhelp: Update Swedish translation.

	* programs/wineconsole/wineconsole_Sv.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Add Swedish translation.

	* programs/winecfg/Sv.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Swedish translation.

	* programs/uninstaller/Sv.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Swedish translation.

	* programs/notepad/Sv.rc, programs/notepad/Sw.rc,
	  programs/notepad/rsrc.rc:
	notepad: Update Swedish translation.

2007-10-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/header.h, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Use new functions need_proxy and need_stub to clean up code and avoid
	generating unnecessary files.

2007-10-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/msiexec/msiexec.c:
	msiexec: Fix a memory leak.

2007-10-14  Lei Zhang <thestig@google.com>

	* dlls/comctl32/monthcal.c:
	comctl32: Monthcal should send notifications when today link gets clicked.

	* dlls/comctl32/monthcal.c:
	comctl32: Correct monthcal WM_LBUTTONDOWN return values.

	* dlls/comctl32/monthcal.c:
	comctl32: Select today's date when the today link is clicked.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Monthcal today link test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Simplify monthcal test.

2007-10-15  Bang Jun-young <junyoung@mogua.com>

	* dlls/version/resource.c:
	version: Use the official NT macro rather than obsolete one.

	* dlls/avifil32/api.c, include/vfw.h:
	avifil32: Fix prototype for AVIStreamFindSample() to match the PSDK.

	* dlls/crypt32/oid.c, include/wincrypt.h:
	crypt32: Fix typo in CryptGetDefaultOIDFunctionAddress().

	* configure, configure.ac, include/config.h.in, include/wine/port.h:
	configure: Add check for presence of _strdup() and strdup().

2007-10-15  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/crypt32/encode.c:
	crypt32: Fix incorrect casts in X509_CERT and friends.

2007-10-15  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Implement CertVerifyCertificateChain for the Microsoft root policy.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Avoid spamming console.

	* dlls/setupapi/misc.c:
	setupapi: Avoid spamming console.

	* include/wininet.h:
	wininet.h: Add some more defines.

	* include/wincrypt.h:
	wincrypt.h: Add a few more definitions.

2007-10-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/heap.c:
	kernel32: Fix GlobalMemoryStatus to take into account the
	IMAGE_FILE_LARGE_ADDRESS_AWARE flag.
	Also the page file size must not be truncated to 2Gb no matter what
	the flag is set to.

2007-10-12  James Hawkins <truiken@gmail.com>

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Convert an HDDEDATA handle to a DDEPOKE structure for WM_DDE_POKE.

	* dlls/user32/tests/dde.c:
	user32: Add tests for DdeCreateDataHandle.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_INVALIDPARAMETER if hszItem is NULL.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_MEMORY_ERROR instead of posting an ACK when fAckReq is
	returned by the server for WM_DDE_DATA.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_INVALIDPARAMETER if hszItem is NULL.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: The server should release data sent with WM_DDE_POKE.

2007-10-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/dde.c:
	user32: Fix message processing in dde test and go back to more reasonable
	timeouts.

2007-10-12  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Increase the message timeout.

2007-10-14  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Don't report filtering for WINED3DFMT_R32F.

2007-10-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Spelling fix.

2007-10-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/progress.c, dlls/comctl32/tests/rebar.c,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: Avoid remove redundant invocation of MAKEINRESOURCEA for
	IDC_ARROW and IDC_IBEAM.

	* dlls/gdi32/freetype.c:
	gdi32: Avoid compiler warning in WineEngGetGlyphOutline().

	* dlls/kernel32/system.c, dlls/kernel32/thunk.c:
	kernel32: Use FIELD_OFFSET instead of pointer cast.

	* libs/wine/mmap.c:
	libwine: Conditionally provide reserve_area().

2007-10-14  Jacek Caban <jacek@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msimtf/Makefile.in, dlls/msimtf/main.c, dlls/msimtf/msimtf.spec:
	msimtf: Added msimtf.dll.

	* .gitignore, dlls/uuid/uuid.c, include/Makefile.in, include/dimm.idl:
	include: Added dimm.idl.

	* include/imm.h:
	imm.h: Added REGISTERWORD[AW] declaration.

2007-10-14  Vincent Pelletier <plr.vincent@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Implement SPI_GETMOUSESPEED in SystemParametersInfoW.

2007-10-14  Allan Tong <actong88@gmail.com>

	* dlls/shell32/systray.c:
	shell32: Fix a memory leak.

2007-10-13  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Implement GetAdapterIndex.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: UINT and DWORD are now equivalent, even in 64-bit compiles, so remove
	unnecessary complication.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Use route table to find an adapter's default gateway in
	GetAdaptersInfo.

2007-10-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winmm/mmsystem.c:
	winmm: Fix some memory leaks.

2007-10-13  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/service.c:
	advapi32: Improve stub for EnumServicesStatusExA a bit.

2007-10-13  Dmitry Potapov <dpotapov@gmail.com>

	* programs/cmd/builtins.c:
	cmd: copy: Fix "Path not found" error.

2007-10-12  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Free memory from one of the tests.

2007-10-12  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/dscapture.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa: Use S24_3LE instead of S24_LE.
	S24_LE is aligned with 4 bytes instead of the expected 3.

2007-10-11  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c:
	dsound: Remove a few null initializations in DirectSoundDevice_Create.
	The memory is allocated with HEAP_ZERO_MEMORY.

2007-10-13  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/primary.c:
	dsound: Make sure device buflen is initially set to ds_hel_buflen.

2007-10-14  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/shell32/shellord.c,
	  tools/winapi/win32.api:
	Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* include/wtsapi32.h:
	wtsapi32: Add a couple of related prototypes.

	* dlls/user32/input.c, include/winuser.h, tools/winapi/win32.api:
	user32: Fix the HRAWINPUT definition and the GetRawInputData() prototype. Update
	win32.api to fix the winapi_check warnings.

	* dlls/msdmo/dmoreg.c, include/dmoreg.h, tools/winapi/win32.api:
	msdmo: Fix the DMOGetName() prototype.

	* dlls/msdmo/dmoreg.c:
	msdmo: Fix a winapi_check documentation warning and improve the documentation
	a bit.

	* dlls/ole32/compobj.c:
	ole32: Fix the CoCreateGuid() ordinal in the documentation.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Fix the calling convention of _wsearchenv() and _wspawnv*().

	* dlls/mshtml/install.c:
	mshtml: Check for HAVE_UNISTD_H before including unistd.h.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/wined3d/surface.c:
	wined3d: Fix the d3dfmt_p8_init_palette() prototype.

2007-10-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added ref counting to node object.

	* dlls/mshtml/install.c, dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Try installing Gecko from local file in DllRegisterServer.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::moveStart("character") implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added more range tests and fixes.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added more DOM tests.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added IHTMLSelectElement::selectedIndex property implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElementFactory::create implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::get_text implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::put_text implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::put_value implementation.

2007-10-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmloption.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLOptionElement::get_value implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added IHTMLStyle display and visibility properties implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument4 stub implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Use wine scheme mechanism in do_load_from_moniker_hack.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLWindow2::get_option implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed ref count leak.

2007-10-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Fix range pos after put_text call.

2007-10-12  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Improve GetPerAdapterInfo stub.

	* dlls/ws2_32/socket.c:
	ws2_32: Fix broadcast address calculation.

	* dlls/setupapi/devinst.c:
	setupapi: Correct device enumeration.

	* dlls/setupapi/devinst.c:
	setupapi: Don't abort key enumeration early.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Implement SetupDiDeleteDevRegKey.

	* dlls/setupapi/devinst.c:
	setupapi: Make error checking in SetupDiCreateDevRegKeyW more like that in
	SetupDiOpenDevRegKey.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiOpenDevRegKey.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Test SetupDiOpenDevRegKey.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Improve parameter checking in SetupDiInstallClass.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Remove bogus part of test.

2007-10-12  Gerald Pfeifer <gerald@pfeifer.com>

	* tools/widl/parser.y:
	widl: Fix build failure in parser.y.

2007-10-12  Francois Gouget <fgouget@free.fr>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/xrender.c:
	winex11.drv: The 'lossy' parameter is always false so remove it.

2007-10-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Try to load Wine's TrueType fonts from the build directory.

	* dlls/gdi32/freetype.c:
	gdi32: Don't load Wine's bitmap-only TrueType fonts.

	* fonts/courier.sfd, fonts/marlett.sfd, fonts/ms_sans_serif.sfd,
	  fonts/small_fonts.sfd, fonts/system.sfd:
	fonts: Change to OS2 Vendor ID to be 'Wine'.

	* dlls/gdi32/freetype.c:
	gdi32: Factor out the code to call FT_Load_Sfnt_Table.

2007-10-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Optimize P8 fragment shader.

2007-10-12  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.47.

----------------------------------------------------------------
2007-10-06  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wine.desktop:
	tools/wine.desktop: Add Name field in Russian.

2007-10-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wininet/cookie.c:
	wininet: Fix a memory leak.

2007-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Get rid of the NLS_RegOpenSubKey function, its behavior is broken.

2007-10-12  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/inkobj/Makefile.in, dlls/inkobj/inkcollector.c,
	  dlls/inkobj/inkobj_internal.h, include/msinkaut.idl:
	inkobj: Stub implementation of IInkCollector.

2007-10-11  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/inkobj/inkobj.c, dlls/inkobj/inkobj_internal.h:
	nkobj: Use an internal header.

2007-10-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/imm32/imm.c:
	imm32: Avoid spamming the debug output.

2007-10-11  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Increment/decrement reference count when internet handles are
	created/destroyed.

2007-10-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use a fragment shader to do P8 palette conversion in hardware.

	* dlls/wined3d/surface.c:
	wined3d: Fix inverse palette lookup for P8 surfaces.
	The previous method didn't take into account duplicate entries for the same
	color.

2007-10-11  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDevRegKeyW.

	* dlls/setupapi/devinst.c:
	setupapi: Add a device ID member to DeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Don't require caller to pass a SP_DEVINFO_DATA pointer to
	SETUPDI_AddDeviceToSet.

	* dlls/setupapi/devinst.c:
	setupapi: Add helper function to open a device's hardware key.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDevRegKeyA on top of SetupDiCreateDevRegKeyW.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Add stubs for SetupDiCreateDevRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Install more items when installing a class.

	* dlls/setupapi/devinst.c:
	setupapi: Correct creating the class key.

	* dlls/setupapi/devinst.c:
	setupapi: SetupOpenAppendInfFile is implemented, so remove #if 0 around it.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Test SetupDiInstallClass.

2007-10-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a (nested) loop test.

2007-10-11  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement name constraint checking.

2007-10-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement name constraints decoding.

	* dlls/crypt32/decode.c:
	crypt32: Don't check tag in AsnDecodeIntInternal, caller already checks it.

	* dlls/crypt32/tests/encode.c:
	crypt32: Allow either NULL or empty strings where one or the other is expected.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement name constraint encoding.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding/decoding name constraints.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add another test to show that time validity nesting isn't checked.

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove superficially different certificates.

	* dlls/crypt32/tests/encode.c:
	crypt32: Allow imprecision of one millisecond in time decoding to fix test
	failures on Windows.

2007-10-11  David Adam <jeremielapuree@yahoo.fr>

	* include/d3dx8math.h:
	d3dx8: Fix the definition of D3DXVECTOR.

2007-10-11  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/security.c, dlls/wined3d/pixelshader.c,
	  dlls/winex11.drv/dib.c, programs/wineboot/wineboot.c:
	Assorted spelling fixes.

	* dlls/pdh/tests/pdh.c:
	pdh/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/comctl32/tests/header.c:
	comctl32/tests: Fix the control's size reporting in an error message.

	* dlls/user32/tests/msg.c:
	user32/tests: Don't use nameless unions where they are not needed.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Add the trailing '\n' to a Wine trace.

	* dlls/winex11.drv/dib.c:
	winex11.drv: Remove an obsolete FIXME comment.

2007-10-07  Andrey Turkin <andrey.turkin@gmail.com>

	* tools/wine.inf:
	wine.inf: Add Protected Storage System Provider key.

2007-10-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c:
	mshtml: Added support for installing Gecko from the local file.

2007-10-10  Aric Stewart <aric@codeweavers.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Improve registration and reading of codecs.

2007-10-10  John Klehm <xixsimplicityxix@gmail.com>

	* include/msinkaut.idl:
	msinkaut.idl: Declare the IInkCollector interface and its dependencies.

2007-10-08  Roy Shea <roy@cs.hmc.edu>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qmgr/Makefile.in, dlls/qmgr/bits_main.c, dlls/qmgr/qmgr.spec:
	qmgr: Skeleton implementation of Background Intelligent Transfer Service (BITS).

2007-10-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Don't use a window manager border for a simple WS_BORDER-style border.

	* dlls/winex11.drv/window.c:
	winex11: Reuse the mwm hints when computing the window X11 rectangle.
	This allows more flexibility in deciding which elements of the decor
	are done by the window manager.

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Set the SKIP_PAGER and SKIP_TASKBAR styles on tool windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add generic mechanism for managing WM_STATE properties.

2007-10-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/wininet/tests/internet.c:
	wininet/tests: Initial tests for InternetCanonicalizeUrlA.

2007-10-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Set D3DCAPS2_CANAUTOGENMIPMAP flag when supported.

2007-10-10  Nigel Liang <ncliang@gmail.com>

	* include/winsock.h:
	include/winsock.h: Fix parenthesis mismatch.

2007-10-10  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c,
	  dlls/rpcrt4/tests/server.idl, tools/widl/typegen.c:
	rpcrt4, widl: Make pointer layouts compatible with windows; fix conformant
	array tests.

2007-10-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/init.c, dlls/wineps.drv/type42.c:
	wineps.drv: Fix some memory leaks.

2007-10-05  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/test_tlb.idl, dlls/oleaut32/tests/typelib.c,
	  dlls/oleaut32/typelib.c:
	oleaut32: Function kind for dispatch interfaces should be FUNC_DISPATCH.

2007-10-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Release pixel shaders after we're done with them in the visual test.

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Fix demangling of function pointers by maintaining the left/right
	distinction for type references.

2007-10-10  Robert Shearman <rob@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Set the SETUP_IS_CHROME_WRAPPER to FALSE as the embedded Gecko is
	always used to display content and not chrome.

2007-10-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add 2 keys for *.chm files.

2007-10-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't choose double buffered modes with gdi support.

	* dlls/winex11.drv/opengl.c:
	winex11: Use the specified format for GL Bitmaps.

	* dlls/winex11.drv/opengl.c:
	winex11: Create GLXPixmap for bitmaps in SetPixelFormat.

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't store a physdev pointer in the GL context.

	* dlls/winex11.drv/init.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use ExtEscape to flush the GL drawable to the physdev.
	Based on a patch by Chris Robinson.

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/file.c, server/file.h,
	  server/mapping.c, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Use the file_pos_t type for file sizes and offsets in the protocol
	structures.

2007-10-05  Ken Thomases <ken@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Work around a bug in Mac OS X's getdirentries().

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/ne_segment.c:
	kernel32: Use FIELD_OFFSET instead of pointer cast.

2007-10-04  Karl Relton <karllinuxtest.relton@ntlworld.com>

	* dlls/user32/tests/msg.c, server/queue.c:
	wineserver: Allow already peeked messages to merge.

2007-10-09  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/regedit/regproc.c:
	regedit: Replace call to delete_branch with RegDeleteTreeA.

2007-10-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2007-10-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Use ClipCursor() to keep mouse from leaving the window.

2007-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fixed test crash on Windows.

2007-10-05  David Adam <David.Adam@math.cnrs.fr>

	* include/Makefile.in, include/d3dx8.h, include/d3dx8math.h:
	include: Skeleton header for D3DX8.

2007-10-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Merge p8 palette initialization code.

2007-10-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Downgrade the SetCooperativeLevel FIXME to a TRACE.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Do not fail on surface creation errors, skip instead.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Silently ignore setting the 0 texture on gdi surfaces.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c:
	ddraw: Cope with Init3D failures.

	* dlls/wined3d/device.c:
	wined3d: Clear up in Init3D if something fails.

2007-10-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ko.rc:
	wineboot: New Korean resource.

2007-10-09  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Fix some memory leaks.

2007-10-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wined3d/resource.c:
	wined3d: Fix a memory leak.

2007-10-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Fix a memory leak.

2007-10-05  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fix some memory leaks.

2007-10-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Add support for 'regedit /E -', to export the registry to stdout.

	* programs/regedit/regedit.c:
	regedit: Add support for 'regedit -' for feeding regedit from stdin.

2007-10-08  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/ole2.c:
	ole32: OleIsRunning should return TRUE if the class doesn't implement
	IRunnableObject.

2007-10-08  Andrey Turkin <andrey.turkin@gmail.com>

	* libs/wine/loader.c:
	libwine: Emulate MS linker stub for builtin dlls.

	* dlls/dbghelp/pe_module.c:
	dbghelp: Avoid crashing on files with bogus export table.

2007-10-06  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/locale.c:
	kernel32: Implement SetUserGeoID.

2007-10-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Add generic chain action to known actions.

	* dlls/wintrust/softpub.c:
	wintrust: Add traces.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement GenericChainFinalProv.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement GenericChainCertificateTrust.

	* dlls/wintrust/softpub.c:
	wintrust: Add a helper function to create a chain for a signer.

	* dlls/wintrust/softpub.c:
	wintrust: Add a helper function to initialize chain creation parameters.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Trace input to WinVerifyTrust.

2007-10-08  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Test the ddeml server interface.

	* dlls/user32/tests/dde.c:
	user32: Move the test_ddeml_client function closer to the other ddeml client
	test functions.

	* dlls/user32/tests/dde.c:
	user32: Set client_pid to zero before initializing dde.

2007-10-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Move init_nsevents call from start_binding to read_stream_data to
	avoid race.

2007-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/misc.c:
	mshtml: Fixed tests on IE7.

2007-10-08  Juan Lang <juan.lang@gmail.com>

	* include/softpub.h:
	softpub.h: Add missing definitions.

	* dlls/crypt32/msg.c:
	crypt32: Add an extra pointer alignment to avoid possible memory corruption.

2007-10-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c:
	wineoss: Remove useless fixme shown on initialisation.

	* dlls/dsound/primary.c:
	dsound: Release buffer before reopening when buffer is too small.

2007-10-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/winemm.h, programs/winecfg/audio.c:
	winmm: Set default sound driver to alsa,oss,coreaudio.

2007-10-07  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/comctl32/trackbar.c:
	comctl32: Fixed drawing the trackbar background when themes are installed.

2007-10-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winecfg/winecfg.c:
	winecfg: Replace call to remove_path with RegDeleteTreeW.

2007-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fixed test on IE7.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Fixed tests on IE7.

2007-10-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: RegisterDragDrop should return E_OUTOFMEMORY in the case that COM isn't
	intialised, instead of CO_E_NOTINITIALIZED.

2007-10-07  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Fix monthcal hit tests.

2007-10-07  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fixed buffer overflow in encode test.

2007-10-08  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typelib.c,
	  tools/widl/widltypes.h:
	widl: Keep track of every allocated type_t to simplify set_all_tfswrite.

	* tools/widl/parser.h, tools/widl/parser.y, tools/widl/typelib.c,
	  tools/widl/widltypes.h:
	widl: Implement pointer_default functionality.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/utils.h:
	widl: Allow quoted UUIDs.

2007-10-07  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32/tests: Don't assume that the default font height is 16 pixels.

2007-10-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Add a check for a test that depends on the decimal separator being
	a dot.

2007-10-07  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Prevent some console spamming.

2007-10-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Use EXT-versions of glBlend*.

2007-10-07  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Skip some font dependent tests if we don't have System or
	Tahoma installed.

2007-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/actctx.c:
	actctx: Rename version to assembly_version.

	* dlls/mshtml/tests/dom.c:
	mshtml: Skip tests if we can't get body object - it means that there is no
	Gecko available.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move most code from handle_editor_load to exec_editmode.

2007-10-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: ntlm_auth returns BH if the connection to winbindd fails.

2007-10-06  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Print values of failing time tests.

	* dlls/crypt32/tests/encode.c:
	crypt32: Remove some tests that fail inconsistently on Windows.
	Reported by Steven Edwards.

2007-10-05  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Remove a misleading fixme.

2007-10-06  Dan Kegel <dank@kegel.com>

	* dlls/quartz/tests/referenceclock.c:
	quartz: Make clock test less flaky.

2007-10-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/advpack/tests/advpack.c:
	advpack: Handle localized C:\Program Files.

2007-10-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Do not rely on CreateVertexShader failing.

2007-10-06  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/d3d9/tests/texture.c:
	d3d9: Fix crash in texture test.

2007-10-06  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/dde.c:
	user32/tests: Remove an unneeded cast.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Tell PageSetupDlg() not to bring up a dialog if there is no
	default printer.

2007-10-06  Rob Shearman <rob@codeweavers.com>

	* server/file.c:
	server: Only call fchmod in file_set_fd if the mode actually changed.

	* server/file.c:
	server: Remove an unnecessary check from file_set_fd.

2007-10-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wsock32/wsock32.spec:
	wsock32: Export 3 more functions.

2007-10-04  Mikolaj Zalewski <mikolajz@google.com>

	* programs/oleview/typelib.c:
	oleview: Don't crash if the parent type couldn't be retrieved.

2007-10-05  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix ^Z handling in text mode.

2007-10-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Remove an unused ChoosePixelFormat line.

	* dlls/wined3d/context.c:
	wined3d: Make sure we receive a hw accelerated pixel format with OpenGL support.

2007-10-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, tools/widl/parser.y:
	widl: Make structs containing user types bogus; fix square_test_us test failure.

	* dlls/rpcrt4/tests/server.idl:
	rpcrt4/tests: Make server.idl compatible with MIDL.

2007-10-03  Aric Stewart <aric@codeweavers.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Implement DMOGetTypes.

2007-10-04  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Improve CR CR LF handling.

2007-10-04  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Don't assume a maximum of 32 valid usages.

	* dlls/crypt32/tests/cert.c:
	crypt32: Add tests for CertGetValidUsages.

	* dlls/crypt32/cert.c:
	crypt32: Reduce valid usages count when removing a valid usage.

	* dlls/crypt32/cert.c:
	crypt32: Don't set ret to FALSE when it isn't checked.

	* dlls/crypt32/cert.c:
	crypt32: Always set cNumOIDs.

	* dlls/crypt32/cert.c:
	crypt32: Don't fail if a cert is invalid, Windows doesn't either (tests
	to follow).

	* dlls/crypt32/cert.c:
	crypt32: Don't fail if buffer is NULL, just return required size.

	* dlls/crypt32/cert.c:
	crypt32: Improve trace.

	* dlls/crypt32/cert.c:
	crypt32: Fix a silly variable name.

2007-10-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shelllink.c:
	shell32: Fix some memory leaks.

2007-10-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix some memory leaks.

2007-10-04  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/tahomabd.sfd:
	fonts: Add a very incomplete Tahoma Bold.

2007-10-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11drv: Ignore mouse move events when position did not change only when
	other events are present.

2007-10-04  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fixed a misplaced break.

2007-10-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Update spec file.

	* dlls/d3dx8/d3dx8_main.c:
	d3dx8: Add DllMain.

2007-10-03  Rob Shearman <rob@codeweavers.com>

	* server/file.c, server/security.h, server/token.c:
	server: Add primitive support for setting and getting the security descriptor
	of files based on their Unix permissions.

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/completion.c, server/console.c, server/debugger.c,
	  server/device.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Add get_sd and set_sd object operations to allow the security descriptor
	to be stored somewhere other than server memory, such as on disk.

	* server/security.h, server/token.c:
	server: Add a simple mapping from Unix uids to NT SIDs.

2007-09-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Nested loop support.

2007-10-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Implement the vFace register.

2007-10-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Silently ignore WS_IP_DONTFRAGMENT.

2007-10-04  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c, include/ddeml.h:
	user32: Test the ddeml client interface.

2007-09-28  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c:
	advapi32: security: Remove unneeded FIXME.

2007-10-03  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: olepicture: When drawing metafiles set the coordinates system so
	that it is drawn in the correct place.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: olepicture: Support loading Aldus Placable Metafiles.

2007-10-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlinput.c:
	mshtml: Added IHTMLInputTextElement interface implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLInputTextElement interface.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added IHTMLSelectElement::get_length implementation.

	* dlls/mshtml/htmlelem.c:
	mshtml: IHTMLElementContainer::item rewrite.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLOptionElement interface stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Include document element in collection returned by
	IHTMLDocument2::get_all.

	* dlls/mshtml/htmlelem.c:
	mshtml: Return IHTMLElementCollection instead of IDispatch from
	HTMLElementCollection_Create.

	* dlls/mshtml/htmlelem.c:
	mshtml: Move common code to separated function.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Move nodes' QueryInterface implementation to vtbl.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Use vtbl for node destructors.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Pass HTMLDOMNode pointer to HTMLElement's destructor.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Pass HTMLDOMNode pointer to its destructor.

2007-10-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Render to the correct hwnd/hdc.

2007-10-03  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/softpub.c:
	wintrust: Use verify time rather than current time to check certificate chain.

	* dlls/wintrust/softpub.c:
	wintrust: Remove bad check that prevents root certificates from appearing
	time valid.

	* dlls/wintrust/softpub.c:
	wintrust: Use file's creation time as time to verify.

	* dlls/wintrust/softpub.c:
	wintrust: Copy time to verify from cert info.

2007-10-03  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/tahoma.sfd:
	fonts: Add a Tahoma replacement. Almost entirely based on a patch by Larry
	Snyder.

2007-10-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl.spec, dlls/localspl/localspl_main.c:
	localspl: Implement InitializePrintProvidor.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/spoolss/tests/Makefile.in, dlls/spoolss/tests/spoolss.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	spoolss/tests: Add tests for SplInitializeWinSpoolDrv.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Implement SplInitializeWinSpoolDrv.

	* dlls/winspool.drv/winspool.drv.spec:
	winspool: Add a missing export.

	* dlls/msi/database.c:
	msi: Dump the database name in a FIXME.

2007-10-02  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a typo.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix memory leaks (found by Smatch).

2007-09-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Load and use GLX_MESA_copy_sub_buffer for swapping buffers on a
	GLXPixmap.

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use a GLXPixmap for offscreen OpenGL rendering when XComposite isn't
	available.

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/x11drv.h:
	winex11: Track async GL drawable changes.

	* dlls/winex11.drv/bitmap.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Pass a display parameter when destroying glxpixmaps.

2007-09-25  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use an offscreen redirected window for child OpenGL rendering.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_norm.c,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	wgl: Remove GL scissors/viewport override.

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Store a GL-specific drawable with the window.

2007-10-02  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Allow GetFileSecurityA/W to work on files that have been opened
	already with restricted sharing flags.
	Only use the minimum required access rights for the information being retrieved.

	* dlls/advapi32/security.c:
	advapi32: Implement SetFileSecurityW on top of NtSetSecurityObject.

	* server/token.c:
	server: Use ACL_REVISION in create_default_dacl instead of MAX_ACL_REVISION
	since we don't use any features from later ACL revisions.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add a new get_security_object call for getting the security descriptor
	of an object.
	Use it to implement NtQuerySecurityObject.

	* server/handle.c, server/object.c, server/object.h, server/security.h,
	  server/token.c:
	server: Move set_security_object to handle.c and set_object_sd to object.c.
	These both don't operate on tokens so token.c is not the right place for
	them to be implemented.

2007-09-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: d3d ignores the sign of the input value in the log instruction.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Take care against overwriting a source register in cmp.

2007-09-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Reverse the position fixup if the pshader is reading vpos.

2007-10-02  Rémi Assailly <remi.assailly@free.fr>

	* dlls/user32/desktop.c, dlls/user32/user.exe.spec, dlls/user32/user16.c:
	user32: Renamed and moved SetDeskPattern.

	* dlls/user32/clipboard.c, dlls/user32/desktop.c, dlls/user32/user16.c:
	user32: Moved some 16-bit functions.

2007-10-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/setupapi/devinst.c:
	setupapi: Use correct parameter in pointer init.

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Initialize shader to NULL.

2007-10-02  Roy Shea <roy@cs.hmc.edu>

	* programs/net/net.c:
	net.exe: Added missing service name.

2007-10-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Let the WINE_GGO_GRAY16_BITMAP case load a bitmap.

	* dlls/gdi32/freetype.c:
	gdi32: Only cache the glyph metrics when rendering to a monochrome bitmap or
	when just retrieving the metrics.

	* dlls/gdi32/freetype.c:
	gdi32: TrueType fonts from the data directory should be added to the registry.

2007-10-02  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* programs/net/Ru.rc, programs/net/rsrc.rc:
	net.exe: Add Russian resources.

2007-10-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Pass the IDispatch interface of the element right-clicked on to
	IDocHostUIHandler_ShowContextMenu if applicable instead of always the
	document's one.
	Found by Rob Shearman.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/tests/dom.c:
	mshtml: Added get_tagName implementation.

2007-10-02  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Correct default pointers.

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Write types in the format string comments.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Add a declonly argument to write_type_left.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Add newlines to error messages that are missing them.

2007-10-02  Juan Lang <juan.lang@gmail.com>

	* dlls/ntdll/heap.c:
	ntdll: Fix a typo.

2007-10-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Fix the HEAP_CreateSubHeap return value (spotted by Allan Tong).

2007-10-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/winenas.drv/audio.c:
	winenas.drv: Add workaround for INT64 type too.

	* dlls/user32/tests/class.c:
	user32/tests: Replace GWL_WNDPROC by GWLP_WNDPROC.

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed UpdateDebugInfoFile definition.

	* server/change.c, server/device.c, server/directory.c, server/fd.c,
	  server/file.c, server/file.h, server/named_pipe.c, server/serial.c,
	  server/sock.c:
	server: Add a default access mapping function for files, and use it for
	devices too.

	* dlls/kernel32/heap.c:
	kernel32: Improve tracing in GlobalAlloc.

2007-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/listbox.c, dlls/user32/tests/msg.c:
	user32: Add a message test for ownerdrawn listbox, make it pass under Wine.

2007-10-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/pdh/pdh_main.c:
	pdh: Removed superflous NULL ptr check.

	* dlls/mpr/wnet.c:
	mpr: Initialize lpwSystem.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Test IsBadReadPtr/ IsBadCodePtr / IsBadWritePtr.

2007-10-01  Luke Bratch <l_bratch@yahoo.co.uk>

	* programs/winecfg/En.rc:
	winecfg: Add more keyboard shortcuts.

2007-10-01  Chris Spencer <spencercw@googlemail.com>

	* tools/wine.inf:
	wine.inf: Create psapi.dll as a fake dll.

2007-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Prefer a Microsoft cmap table over other platform ones.

2007-10-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Don't check decoded length against encoded length for indefinite-form
	sequences.

2007-10-01  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/faultrep/faultrep.c, dlls/faultrep/faultrep.spec:
	faultrep: Add stub for ReportFault.

2007-09-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/mshtml/editor.c:
	mshtml: Removed unused function get_child_text_node().

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Move X11DRV_XRender_Installed under #ifdef SONAME_LIBXRENDER.

	* dlls/kernel32/heap.c:
	kernel32: Fix types for the FreeBSD implementation of GlobalMemoryStatusEx().

	* dlls/kernel32/cpu.c:
	kernel32: Fix signedess for FreeBSD-specific implementation of GetSystemInfo().

2007-10-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix some memory leaks.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix some memory leaks.

2007-09-29  Stéphane LOEUILLET <leroutier@gmail.com>

	* tools/wine.desktop:
	Fix substandard wine.desktop file.

2007-10-01  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/capture.c:
	dsound: Fix IDirectSoundBuffer_GetPosition.

2007-10-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Get rid of no longer needed IHttpNegotiate wrapper.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more RegiterBindStatusCallback tests.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more strict QueryInterface tests.

	* dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Wrap callback in RegisterBindStatusCallback.

	* dlls/uuid/uuid.c:
	urlmon: Added IID_IBindStatusCallbackHolder to uuid.

2007-10-01  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Remove hardcoded assumption that the SECBUFFER_DATA is always at
	index 1 for en/decrypting.

2007-10-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Make the heap structure more compatible with the NT layout.

	* dlls/ntdll/heap.c:
	ntdll: Convert the subheap list to a standard list.

	* dlls/ntdll/heap.c:
	ntdll: Remove assumptions that the subheap is at the beginning of the memory
	block.

	* dlls/ntdll/heap.c:
	ntdll: Clear heap blocks also for WARN_ON(heap).

	* dlls/shlwapi/ordinal.c:
	shlwapi: Fix GetAcceptLanguagesA to not read past the end of the buffer.

	* dlls/user32/tests/dde.c:
	user32/tests: Compare against ASCII string first since it may not be a valid
	Unicode string in that case.

	* dlls/msi/alter.c:
	msi: Avoid accessing a freed object.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c:
	mshtml: The HTMLDocument URL is a standard WCHAR string, not a BSTR.

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Avoid destroying a DPA twice.

2007-09-26  Rob Shearman <rob@codeweavers.com>

	* .gitignore, programs/wineboot/Makefile.in, programs/wineboot/resource.h,
	  programs/wineboot/shutdown.c, programs/wineboot/wineboot.rc,
	  programs/wineboot/wineboot_En.rc:
	wineboot: Add a timeout dialog when any WM_QUERYENDSESSION or WM_ENDSESSION
	messages take too long.

2007-10-01  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/mpr/wnet.c, include/npapi.h:
	mpr: Implement WNetGetResourceInformation functions.

2007-09-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/user32/resources/version16.rc:
	user32: Define WINE_FILEVERSION in version resource of user.exe.

	* dlls/kernel32/version16.rc:
	kernel32: Define WINE_FILEVERSION in version resource of krnl386.exe.

	* dlls/gdi32/version16.rc:
	gdi32: Define WINE_FILEVERSION in version resource of gdi.exe.

	* dlls/ole32/version16.rc:
	ole32: Define WINE_FILEVERSION in version resource of ole2nls.dll too.

2007-09-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/regsvr.c:
	ddraw: Fix RegDeleteTreeA/W compile issues when building ddraw for Windows.

2007-09-28  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj.spec:
	ole32: Implement win16 COCREATEGUID.

2007-09-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Bem is an instruction and uses registers.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Enable the mNxN implementation for pixel shaders.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement texbeml in arb shaders.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Add proper input register handling to texreg2ar/gb.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add texreg2rgb support to arb shaders.

2007-09-30  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add tests for DefWindowProc processing the undocumented 0x3B message.

2007-09-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* include/wine/wined3d_interface.h:
	wined3d: WINAPI compile fixes.

2007-10-01  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/audio.h,
	  dlls/wineoss.drv/dscapture.c, dlls/wineoss.drv/dsrender.c:
	wineoss: Seperate wave-in and wave-outs shared use of a single OSS_DEVICE struct.

	* dlls/dsound/capture.c:
	dsound: Call waveInUnPrepareHeader and waveInPrepareHeader when submitting
	new buffer.

2007-09-29  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Use smaller buffers for wavein capture.

2007-09-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/tests/pdh.c:
	pdh: Skip tests when running on non-english locale.

	* dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Fix parameter handling in PdhAddEnglishCounter{A, W} and
	PdhCollectQueryDataWithTime.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhCalculateCounterFromRawValue.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h:
	pdh: Implement and test PdhCollectQueryDataEx.

	* dlls/pdh/pdh_main.c:
	pdh: Serialize access to performance counters and queries.

	* dlls/pdh/tests/pdh.c:
	pdh: Add tests for PdhValidatePath{, Ex}{A, W}.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, include/pdh.h, include/pdhmsg.h:
	pdh: Implement PdhValidatePath{, Ex}{A, W}.

2007-09-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Only call ENTER_GL for the parts in ActivateContext that actually
	need it.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c:
	wined3d: CreateContext should not be called between ENTER_GL/LEAVE_GL.

	* dlls/wined3d/directx.c:
	wined3d: CreateFakeGLContxt/ReleaseFakeGLContext doesn't need ENTER_GL/LEAVE_GL
	and they are making GDI calls.
	The removal of ENTER_GL from the fake context code, requires the
	addition of ENTER_GL/LEAVE_GL to FillGLCaps which was protected by the
	fake context code before.

2007-09-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msvfw32/mciwnd.c:
	msvfw32: Fix a memory leak.

2007-09-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Fix typo.

2007-09-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use GetWineURL in before_async_open.

	* dlls/mshtml/olecmd.c:
	mshtml: Remove no longer used defines.

2007-09-28  Juan Lang <juan.lang@gmail.com>

	* include/wincrypt.h:
	wincrypt.h: Add a few more definitions.

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Add stub for WVTAsn1SpcSpOpusInfoDecode.

	* dlls/crypt32/msg.c:
	crypt32: Correct copying a signer info's attributes.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Don't warn for generic cert verify action.

	* dlls/wintrust/softpub.c:
	wintrust: In SoftpubLoadSignature, don't assume a message is present.

	* dlls/wintrust/softpub.c:
	wintrust: Improve SoftpubLoadMessage for WTD_CHOICE_CERT.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubDefCertInit.

	* dlls/crypt32/serialize.c:
	crypt32: Be more strict about format of serialized store files.

	* dlls/crypt32/filestore.c, dlls/crypt32/tests/store.c:
	crypt32: Implement opening file name stores from files that contain PKCS7
	messages.

	* dlls/crypt32/filestore.c:
	crypt32: Allow file stores to support more than one type of file.

	* dlls/crypt32/filestore.c:
	crypt32: Create file store directly in CRYPT_FileNameOpenStoreW.

	* dlls/crypt32/filestore.c:
	crypt32: Add a helper function to create a file store from an already-initialized
	memory store.

2007-09-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: WM_IME_SETCONTEXT messages are optional.

2007-09-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix 3 tiny bugs in bidi.

2007-09-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/gdi32/bidi.c, dlls/gdi32/gdi_private.h:
	gdi32: Fix meaning and use of bidirectionality flags.

2007-09-28  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msvcirt/Makefile.in, dlls/msvcirt/msvcirt.c,
	  dlls/msvcirt/msvcirt.spec:
	msvcirt: Added stub implementation of msvcirt.dll.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.46.

----------------------------------------------------------------
2007-09-28  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/change.c, dlls/kernel32/file.c, dlls/kernel32/sync.c,
	  dlls/kernel32/vxd.c:
	kernel32: Pass completion value to ntdll layer.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/completion.c,
	  server/fd.c, server/file.h, server/protocol.def, server/request.h,
	  server/trace.c:
	server: Allow completion object to be attached to an fd object.

2007-09-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Move CertSaveStore to serialize.c.

	* dlls/crypt32/filestore.c:
	crypt32: Use CertSaveStore to save file stores.

	* dlls/crypt32/store.c:
	crypt32: Implement CertSaveStore.

	* include/wincrypt.h:
	crypt32: Add definitions used by CertSaveStore.

	* dlls/crypt32/serialize.c:
	crypt32: Implement CRYPT_WriteSerializedStoreToFile using
	CRYPT_WriteSerializedStoreToStream.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c:
	crypt32: Add a function to serialize a store to an arbitrary stream.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/filestore.c,
	  dlls/crypt32/object.c, dlls/crypt32/serialize.c:
	crypt32: Rename a couple of functions.

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/msg.c:
	crypt32: Add/improve some traces.

2007-09-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: Fix GetServiceDisplayNameA for cchBuffer == 0.

2007-09-27  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement GetPrivateObjectSecurity (with test).

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: In ConvertStringSecurityDescriptorToSecurityDescriptor "AU" should
	be checked before "A" (with testcase).

	* dlls/advapi32/security.c:
	advapi32: Make ConvertStringSecurityDescriptorToSecurityDescriptor write the ACL.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	advapi32/ntdll: GetSecurityDescriptorOwner/Group should fill isDefaulted also
	for NULL sids.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	advapi32/ntdll: MakeRelativeSD should preserve NULL pointers (with testcase).

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add some already implemented function to the spec file.

2007-09-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Minimal fix for WM_SETTEXT without ES_MULTILINE style.

2007-09-27  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.h, tools/widl/server.c, tools/widl/typegen.c:
	widl: Generate client and server code for using context handles.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Write prototypes for context handle rundown rountines into generated
	header files.

2007-09-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/version16.rc:
	ole32: Added version resource for ole2nls.dll.

2007-09-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/object.c:
	crypt32: Support PKCS messages wrapped in a PKCS content info in
	CryptQueryObject.

	* dlls/crypt32/object.c:
	crypt32: Fix CryptQueryObject for embedded PKCS7 signatures.

2007-09-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/font.c:
	gdi32: Don't hold the GDI lock while calling the driver SelectFont function.

	* dlls/gdi32/gdiobj.c:
	gdi32: Don't hold the GDI lock while calling the SelectObject backends.

	* dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/font.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c:
	gdi32: Move the object refcount handling to the SelectObject backend functions.

	* dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/font.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c,
	  dlls/gdi32/region.c:
	gdi32: Don't pass an object pointer to the SelectObject backend functions.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Always drag the full window for top-level windows to avoid having
	to grab the server.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Remove static keywords that hide test failures.

2007-09-27  Francois Gouget <fgouget@free.fr>

	* dlls/gdi32/bidi.c, dlls/gdi32/font.c, dlls/ntdll/signal_i386.c,
	  dlls/oleaut32/ungif.c, dlls/twain_32/TWAIN, dlls/user32/tests/win.c,
	  dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, dlls/winex11.drv/keyboard.c,
	  dlls/winspool.drv/info.c, programs/cmd/wcmdmain.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	winapi: Assorted win32.api updates.

	* dlls/ntoskrnl.exe/ntoskrnl.c, include/ddk/wdm.h:
	ntoskrnl.exe: Fix the PsCreateSystemThread() prototype and declare it in wdm.h.
	Add a prototype for PsTerminateSystemThread().

	* include/appmgmt.h, include/cfgmgr32.h, include/evntrace.h,
	  include/icmpapi.h, include/msiquery.h, include/powrprof.h,
	  include/rpcdcep.h, include/rpcproxy.h, include/setupapi.h,
	  include/winnetwk.h:
	includes: Make headers C++ compatible.

	* include/msidefs.h, include/wshisotp.h:
	includes: Remove unneeded extern "C" statements.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Add '\n's to ok() calls.

2007-09-27  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wineoss.drv/midi.c:
	wineoss.drv: Add support for $MIDIDEV to match $AUDIODEV and $MIXERDEV.

2007-09-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/profile.c:
	kernel32: Fix a memory leak.

2007-09-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix some memory leaks.

2007-09-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Fix typo in FIXME (spotted by Rob Shearman).

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Don't call GDI functions while holding the X11 lock.

2007-09-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: The lpServiceStartName should default to LocalSystem for Win32
	services.

2007-09-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/midi.c:
	wineoss: Only initialise midi once.

2007-09-26  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec, include/winhttp.h:
	winhttp: Add WinHttpGetIEProxyConfigForCurrentUser stub.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/virtual.c, include/winternl.h:
	ntdll: NtAreMappedFilesTheSame semi stub.

2007-09-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/format_msg.c, dlls/kernel32/tests/format_msg.c:
	kernel32: Check for NULL output buffer in FormatMessage{A, W}.

2007-09-26  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* include/npapi.h:
	include/npapi.h: Add some constants.

	* dlls/mpr/wnet.c, include/npapi.h:
	mpr: Correct usage of dwScope and dwEnumScopes.

2007-09-26  Lionel_Debroux <Lionel_Debroux@pc-debroux>

	* dlls/mlang/mlang.c:
	mlang: Fix memory leaks in error paths (found by Smatch).

	* dlls/mlang/mlang.c:
	mlang: Fix memory leaks in error path (found by Smatch).

2007-09-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must fail and return 0 with	TM_PLAINTEXT and
	SF_SELECTION.

2007-09-26  Michael Stefaniuc <mstefani@redhat.de>

	* server/completion.c:
	server: Include stdarg.h in completion.c. Needed for older gcc versions.

2007-09-26  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/amstream/regsvr.c:
	amstream: Remove 'recursive registry key delete' function.

	* dlls/browseui/regsvr.c:
	browseui: Remove 'recursive registry key delete' function.

2007-09-26  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/gdi32/printdrv.c:
	gdi32: printdrv: Use umask for creating a spool file.

2007-09-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xcomposite.h:
	winex11: Be compatible with older XComposite headers.

2007-09-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add sincos support to arb shaders.

2007-09-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement the nrm instruction in arb.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add dp2add support to arb shaders.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Add crs and pow instruction support.

2007-09-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Handle modifiers in cmp.

2007-09-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Use get_nsinterface in set_ns_editmode and get_editor_controller.

	* dlls/mshtml/olecmd.c:
	mshtml: Use get_nsinterface in exec_print and do_ns_command.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Added generic get_nsinterface function and use it in
	get_ns_command_state.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added IDM_COPY in browse mode implementation.

	* dlls/mshtml/persist.c:
	mshtml: Ignore app's User-Agent header and Content-Type if there is no data
	to post.

	* dlls/mshtml/htmltextcont.c:
	mshtml: Forward IHTMLTextContainer::put_scrollTop and put_scrollLeft calls to
	IHTMLElement2 interface.

	* dlls/mshtml/htmlelem2.c:
	mshtml: Added IHTMLElement2::put_scrollTop and put_scrollLeft implementation.

	* dlls/mshtml/htmldoc5.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added get_compatMode implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc5.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument5 interface stub implementation.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkGetSpecialReference stub.

2007-09-26  Michael Stefaniuc <mstefani@redhat.com>

	* dlls/crypt32/object.c:
	crypt32: Add missing parameter to a TRACE.

	* dlls/advapi32/security.c:
	advapi32: Move the storage specifier to the beginning of the declaration.

2007-09-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Check if hardware buffer is big enough before accepting it.

2007-09-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/dsrender.c:
	wineoss: Silence some harmless warnings.

2007-09-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/style.c,
	  dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must return 0, not assert, on invalid struct size.

2007-09-26  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix array alignment bug.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix string codes in pointer descriptions.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix top-level conformant arrays with pointer attributes.

2007-09-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h:
	gdi32: Move the generic part of FontIsLinked() to font.c.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h:
	gdi32: Don't pass a DC handle to WineEngGetFontUnicodeRanges.

	* dlls/gdi32/dc.c:
	gdi32: Don't hold the gdi lock while calling DC driver functions.

	* dlls/gdi32/dc.c, dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/init.c:
	gdi32: Don't hold the gdi lock while creating a DC.

2007-09-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must return 1 on success, not 0.

2007-09-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/main.c, dlls/crypt32/object.c:
	crypt32: Partially implement CryptQueryObject.

2007-09-26  Alexandre Julliard <julliard@winehq.org>

	* programs/wineconsole/curses.c, programs/wineconsole/user.c,
	  programs/wineconsole/wineconsole.c:
	wineconsole: Default to the user backend, falling back to curses if we can't
	create a window.

2007-09-18  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/Makefile.in,
	  server/completion.c, server/protocol.def, server/request.h,
	  server/trace.c:
	server: Implement server-side completion queues and operations on them.

2007-09-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/itss/protocol.c:
	itss: Fix a typo.

2007-09-25  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c, include/shlobj.h:
	shell32: Implement SHCreatePropSheetExtArrayEx.

2007-09-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlview.c:
	shell32: shlview: Change some more ANSI calls to Unicode.

	* dlls/shell32/shlview.c, include/shlobj.h:
	shell32: Make the shell view control Unicode.

2007-09-25  EA Durbin <ead1234@hotmail.com>

	* programs/winecfg/audio.c, programs/winecfg/idw_testsound.wav,
	  programs/winecfg/resource.h, programs/winecfg/winecfg.rc:
	winecfg: Implement audio test.

2007-09-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/init.c:
	wineps.drv: Fix end of list check in PSDRV_UpdateDevCaps().

2007-09-25  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c:
	advapi32: Make ConvertSidToStringSid use helper functions of
	ConvertSecurityDescriptorToStringSecurityDescriptor.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  dlls/advapi32/tests/security.c:
	advapi32: Implement ConvertSecurityDescriptorToStringSecurityDescriptor[AW].

	* include/winnt.h:
	include: Fix the definition of VALID_INHERIT_FLAGS.

	* tools/wine.inf:
	wine.inf: add four keys found on Windows XP to Active Setup\Installed Components.

2007-09-25  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/loader.c:
	ntdll: Avoid segfault with snoop for exefiles with a broken export table.

2007-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/comcat/regsvr.c:
	comcat: Remove 'recursive registry key delete' function.

	* dlls/d3dxof/regsvr.c:
	d3dxof: Remove 'recursive registry key delete' function.

2007-09-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Make message test pass cleanly under XP SP2.

2007-09-24  L. Rahyen <mail@science.su>

	* dlls/user32/input.c, dlls/user32/user32.spec, include/winuser.h:
	user32: Implement initial stubs for all raw input functions.

2007-09-21  Christian Gmeiner <christian.gmeiner@gmail.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/security.c, dlls/advapi32/service.c:
	advapi32: fix some compiler warnings when using -Wsign-compare.

2007-09-22  Philip Nilsson <wine-devel@nullref.se>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Add a testcase for binding with IPv6 and IPv4 on the same port.

	* dlls/ws2_32/socket.c:
	ws2_32: Set IPV6_V6ONLY when required to be compatible with Windows.

2007-09-21  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: When sending INTERNET_STATUS_HANDLE_CLOSING make sure the freed handle
	is not yet available.

2007-09-22  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_norm.c,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	wgl: Override glFinish and glFlush.

	* configure, configure.ac, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xcomposite.h, include/config.h.in:
	winex11.drv: Load the XComposite extension when available.

2007-09-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Remove debug code and the tabs.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Add tests for PRINTDLG->hDevNames.

2007-09-24  Karl Relton <karllinuxtest.relton@ntlworld.com>

	* dlls/msvcrt/math.c, dlls/msvcrt/tests/printf.c:
	msvcrt: New implementation of fcvt.

2007-09-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add stub for WTSUnRegisterSessionNotification.

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add stub for WTSRegisterSessionNotification.

2007-09-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for read-only mapping of a write-only section, test actual
	page access rights of the mapping.

2007-09-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Implement GetDeviceInfo for evdev joystick.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Make default dead zone configurable.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c:
	dinput: Add a helper function to open configuration registry keys.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c:
	dinput: Move get_config_key to a common place.

2007-09-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Clean up write_conf_or_var_desc with string_of_type.

2007-09-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/storage32.c:
	ole32/tests: Remove test that tries to create a huge file on Windows.

2007-09-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Add modifier handling to cnd in arb.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Implement WINED3DSI_TEXLD_BIAS in arb.

2007-09-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add support for some unimplemented instructions to arb shaders.

2007-09-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Improve projected texture handling in arb.

2007-09-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/utils.c:
	wined3d: Put V8U8 back into the UNKNOWN format group.

2007-09-24  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupDiGetClassDevsExA.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsA on top of SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsW on top of SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c:
	setupapi: Partially implement SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupDiGetDeviceInfoListDetailA/W.

2007-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ddraw/regsvr.c:
	ddraw: Remove 'recursive registry key delete' function.

	* dlls/ddrawex/regsvr.c:
	ddrawex: Remove 'recursive registry key delete' function.

2007-09-24  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Make ConvertStringSidToSid not to ignore the first subauthority.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add AddAuditAccessAceEx.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sec.c, include/winternl.h:
	ntdll: Add RtlAddAuditAccessAceEx.

	* dlls/advapi32/tests/service.c:
	advapi32: Fix a test.

2007-09-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ole32/oleproxy.c:
	ole32: Free memory on error path (found by Smatch).

2007-09-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdi32/painting.c:
	gdi32: Fix a memory leak.

2007-09-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/driver.c, dlls/gdi32/printdrv.c:
	gdi32: Don't hold the GDI lock while calling the driver printer functions.

	* dlls/gdi32/clipping.c:
	gdi32: Don't hold the GDI lock while calling the driver clipping functions.

	* dlls/gdi32/opengl.c:
	gdi32: Don't hold the GDI lock while calling the driver OpenGL functions.

	* dlls/gdi32/painting.c:
	gdi32: Don't hold the GDI lock while calling the driver painting functions.

	* dlls/gdi32/path.c:
	gdi32: Don't hold the GDI lock while calling the driver path functions.

	* dlls/gdi32/mapping.c:
	gdi32: Don't hold the GDI lock while calling the driver mapping functions.

2007-09-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Implement _wspawnv{, e, p, pe}.

	* dlls/msvcrt/dir.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implement _wsearchenv.

2007-09-21  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: When freeing an interface, delete it from the registry if its device
	is a phantom.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiDeleteDeviceInterfaceRegKey.

	* dlls/setupapi/devinst.c:
	setupapi: Save interface to registry when creating it.

	* dlls/setupapi/devinst.c:
	setupapi: Store pointer to set in device, and use it to make sure that a device
	is a member of a set.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Return the interface's device from SetupDiGetDeviceInterfaceDetailA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Store pointer to an interface's device in the interface instance.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Convert device's interfaces to a standard list.

	* include/setupapi.h:
	setupapi: Fix prototype of SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Create symbolic link value when interface is created.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add test showing value of path.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiGetDeviceInterfaceDetailA/W.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiGetDeviceInterfaceDetail.

	* dlls/setupapi/devinst.c:
	setupapi: When enumerating an interface, add the interface to its device.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiEnumDeviceInterfaces.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceW.

	* dlls/setupapi/devinst.c:
	setupapi: Set last error on invalid input.

	* dlls/setupapi/devinst.c:
	setupapi: Remove a redundant parameter check.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Add error checking to SetupDiCreateDeviceInterfaceW stub.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceA on top of
	SetupDiCreateInterfaceW.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiCreateDeviceInterface.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiCreateDeviceInterfaceA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Set last error on failure in SetupDiOpenClassRegKeyExW.

	* dlls/setupapi/devinst.c:
	setupapi: Respect samDesired in SetupDiOpenClassRegKeyExW.

2007-09-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Move video memory tracking to the adapter.

2007-09-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/name_server.c:
	dplayx: Fix some memory leaks.

2007-09-21  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Fix test for switch maximized MDI children.

2007-09-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dinput/regsvr.c:
	dinput: Remove 'recursive registry key delete' function.

	* dlls/dinput8/regsvr.c:
	dinput8: Remove 'recursive registry key delete' function.

2007-09-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/view.c:
	mshtml: Don't crash in UIActivate if Gecko is not available.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::Resizable property implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::FullScreen property implementation.

2007-09-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix WM_GETTEXT to change \r to \r\n.

	* dlls/riched20/tests/editor.c:
	riched20: Tests show WM_GETTEXT change \r to \r\n.

2007-09-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c,
	  include/iads.idl:
	advapi32: Add some more rights constants for
	ConvertStringSecurityDescriptorToSecurityDescriptor.

2007-09-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: A0 needs the .x swizzle.

2007-09-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: SRGB write correction emulation.

2007-09-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Unify pixel format correction.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Recompile glsl pixelshaders if the sampler format changes.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c:
	wined3d: Add signed format conversion for glsl.

2007-09-21  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/mshtml/htmlbody.c:
	mshtml: Fix another typo and add trace.

	* dlls/mshtml/htmlelem.c:
	mshtml: Fix typo.

2007-09-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/wined3d_main.c:
	wined3d: The amount of video memory is set in FillGLCaps unless overridden
	using a registry option.

2007-09-21  Jeff Latimer <lats@yless4u.com.au>

	* dlls/mpr/pwcache.c:
	mpr: Check for out of memory condition.

2007-09-20  Carroll Vance <ovencleaner@gmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Added PsCreateSystemThread.

2007-09-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/wintab32/wintab32.c:
	wintab32: Add DisableThreadLibraryCalls.

2007-09-20  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/wintab32/context.c, dlls/wintab32/wintab_internal.h:
	wintab32: Store the context internally as Unicode, implement WTOpenW and WTGetW.

	* dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/wintab.c,
	  dlls/wintab32/context.c, dlls/wintab32/wintab32.c,
	  dlls/wintab32/wintab_internal.h:
	winex11.drv/wintab32: Make wintab strings in winex11.drv Unicode, implement
	WTInfoW.

2007-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/devinst.c:
	setupapi: Simplify the SetupDiGetClassDescriptionExA/W implementation.

2007-09-20  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsW.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiRegisterDeviceInfo.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiRegisterDeviceInfo.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupDiRegisterDeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDescriptionExA.

	* dlls/setupapi/devinst.c:
	setupapi: Devices created by SetupDiCreateDeviceInfo are "phantoms", and are
	deleted from the registry when the set that contains them is closed.

	* dlls/setupapi/devinst.c:
	setupapi: Save class GUID to registry when creating a device.

	* dlls/setupapi/devinst.c:
	setupapi: Save device description to registry when creating a device.

	* dlls/setupapi/devinst.c:
	setupapi: Make a helper to convert a GUID to a string.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiSetDeviceRegistryPropertyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiGetDeviceRegistryPropertyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiGetDeviceInstanceIdW.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInfoW.

2007-09-20  Rob Shearman <rob@codeweavers.com>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c,
	  include/userenv.h:
	userenv: Add a stub for UnloadUserProfile.

2007-09-20  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c:
	riched20: Only WM_CHAR respects text limit.

2007-09-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/resource.c:
	kernel32: Fix a memory leak. Found by cross referencing Andrew Talbot's list
	of potential memory leaks with Smatch's view of the same problem.

2007-09-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/tests/http.c:
	wininet/tests: Add test to show that InternetCloseHandle closes open child
	handles too.

	* dlls/wininet/cookie.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/urlcache.c:
	wininet: Track child handles, free all child handles on WININET_FreeHandle
	as native.

2007-09-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dpnet/address.c:
	dpnet: Indirection level fix.

	* dlls/dmusic/dmusic_main.c:
	dmusic: Indirection level fix.

	* dlls/dmsynth/dmsynth_main.c:
	dmsynth: Indirection level fix.

	* dlls/dmscript/dmscript_main.c:
	dmscript: Indirection level fix.

	* dlls/dswave/dswave_main.c:
	dswave: Indirection level fix.

2007-09-20  Francois Gouget <fgouget@free.fr>

	* dlls/gdi32/bidi.c:
	gdi32: Add a '\n' to a Wine trace.

	* include/indexsrv.idl:
	infosoft: indexsrv.idl must import objidl.idl and not unknwn.idl.
	Add a commented out import directive as a reminder.

	* include/fci.h:
	fci.h: Include basetsd.h.

	* include/iprtrmib.h, include/mprapi.h:
	mpr: Move MAX_INTERFACE_NAME_LEN to mprapi.h and add related constants.
	Fix iprtrmib.h so it includes mprapi.h.

	* include/gdiplustypes.h:
	gdiplus: Make gdiplustypes.h C++ compatible.
	Add GetThumbnailImageAbort.

	* include/regstr.h:
	regstr.h only defines constants and structures and thus does not need an extern
	"C" statement.

2007-09-20  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/tests/dialog.c:
	user32/tests: Fix dialog proc prototypes.

	* include/winnt.h:
	include: Add new processor feature constants.

2007-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Don't call GDI functions while holding the xrender lock.

	* loader/glibc.c:
	loader: Set the address space limit before starting the preloader.

2007-09-20  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Clip the visible region of a window to the desktop window.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Skip the debugger test if the child process is not loaded at the
	right address.

2007-09-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: Don't set a pixel format on windows that already have one.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/paint.c, dlls/riched20/tests/editor.c:
	riched20: Adjust event mask when sending EN_CHANGE notification.

2007-09-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Add missing CTX_PKTDATA support.

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Add a missing break.

2007-09-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* configure, configure.ac, dlls/gdi32/freetype.c, include/config.h.in:
	gdi32: Use symbolic names for font tags.

2007-09-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c,
	  include/wine/wined3d_gl.h:
	wined3d: Better video memory reporting.

2007-09-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix a typo in the surface code.

	* dlls/d3d9/tests/device.c, dlls/wined3d/drawprim.c:
	wined3d: Check for NULL streams.

2007-09-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix a typo in shader_glsl_cross.

2007-09-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Keep the selected stencil setup face set to GL_FRONT.

2007-09-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Print last error in failure messages of the MapViewOfFile test.

2007-09-19  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle top-level conformance for complex arrays.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y:
	widl: Respect pointer attributes better.

	* tools/widl/typegen.c:
	widl: Set the pointer description offset to zero if there are no pointers.

2007-09-19  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Add error checking to SetupDiCreateDeviceInfoW stub.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetDeviceInstanceIdA on top of
	SetupDiGetDeviceInstanceIdW.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiEnumDeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Add a placeholder for devices.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiGetDeviceInstanceId.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiGetDeviceInstanceIdA/W.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiCreateDeviceInfo.

2007-09-19  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Add a test that shows ddeml string handles use local atoms.

2007-09-20  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c:
	kernel32: Don't crash accessing an invalid handle in GlobalSize.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/tests/editor.c:
	riched20: Add tests for text limit behavior.

2007-09-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmcompos/dmcompos_main.c:
	dmcompos: Indirection level fix.

2007-09-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update the wm hints when the window frame is changed.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: If a window is not resizable through the window manager fall back
	to non-managed resizing.

	* dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added implementation of a few more __crt functions.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c:
	msvcrt: Added implementation for __STRINGTOLD.

2007-09-18  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/msvcrt/dir.c, dlls/msvcrt/errno.c, dlls/msvcrt/file.c,
	  dlls/msvcrt/misc.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Resolve symbols clashes with FreeBSD libc.

2007-09-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmband/band.c:
	dmband: Fix a memory leak.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/tests/editor.c:
	riched20: Add test for event masks and notifications.

2007-09-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for rw mapping of a read-only section.

2007-09-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/gdi32/bidi.c:
	gdi: Implement line-by-line phase of the BiDi algorithm.

	* dlls/gdi32/bidi.c:
	gdi: Implement implicit resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement neutrals resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement weak resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement explicit resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement BiDi classification of characters and copying according to them.

2007-09-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* configure, configure.ac, dlls/gdi32/Makefile.in, dlls/gdi32/bidi.c,
	  dlls/gdi32/font.c, dlls/gdi32/gdi_private.h, include/config.h.in:
	gdi: Remove support for libicu and all dependencies.

2007-09-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Added Exec(IDM_FONT) stub implementation.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added more tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed IHTMLTxtRange::get_text implementation with no nsrange associated.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetsCollection::get_length implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlstylesheet.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added get_styleSheets implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added HTMLStyle::get_textDecoration* implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added more IHTMLStyle getters implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Return NULL for empty results in get_style_attr.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c:
	mshtml: Forward node ref calls to IHTMLDOMNode interface.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Get rid of node_type variable in HTMLNode object.

	* dlls/mshtml/htmlelem.c:
	mshtml: Don't use node_type from HTMLNode object.

2007-09-18  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add missing prototypes and definitions, and change function prototypes
	to match.

	* dlls/setupapi/devinst.c:
	setupapi: Fix typo.

	* dlls/setupapi/devinst.c:
	setupapi: Fix return type.

	* include/setupapi.h:
	setupapi: Correct type to match PSDK.

2007-09-18  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Don't wait for FD_CONNECT event when non-blocking connect()
	was successful.

2007-09-18  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Fix alignment for 64-bit systems.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement streamed encoding of an indefinite-length data message.

	* dlls/crypt32/msg.c:
	crypt32: Pass length rather than entire message to CRYPT_EncodeContentLength.

2007-09-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Disable two sided stencil if it is supported, but not enabled.

	* dlls/wined3d/state.c:
	wined3d: Enable the stencil test if two sided stencil is used.

	* dlls/wined3d/state.c:
	wined3d: Fix a copypaste error.

	* dlls/wined3d/state.c:
	wined3d: Set the stencil mask for both faces.

2007-09-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Untie culling and offscreen rendering.

2007-09-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Implement complex arrays.

	* tools/widl/typegen.c:
	widl: Handle all buffer sizes.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Implement pointer descriptions for complex structures.

	* tools/widl/typegen.c:
	widl: Fix alignment comments.

2007-09-18  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Implement RpcSmDestroyClientContext and RpcSsDestroyClientContext.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a copy-and-paste error in RpcAuthInfo_Release that caused a double
	free of memory.

2007-09-18  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in, tools/Makefile.in, tools/bin2res.c:
	tools: Remove the no longer needed bin2res tool.

	* .gitignore, programs/wordpad/Makefile.in,
	  programs/wordpad/formatbar.bmp, programs/wordpad/rsrc.rc,
	  programs/wordpad/rtf.ico, programs/wordpad/toolbar.bmp,
	  programs/wordpad/txt.ico, programs/wordpad/wordpad.ico,
	  programs/wordpad/wri.ico:
	wordpad.exe: We can now store binary files in the repository.

	* .gitignore, programs/winetest/Makefile.in, programs/winetest/dist.rc,
	  programs/winetest/wine.ico, programs/winetest/winetest.rc:
	winetest.exe: We can now store binary files in the repository.

	* .gitignore, programs/winemine/Makefile.in, programs/winemine/faces.bmp,
	  programs/winemine/leds.bmp, programs/winemine/mines.bmp,
	  programs/winemine/rsrc.rc, programs/winemine/winemine.ico:
	winemine.exe: We can now store binary files in the repository.

	* .gitignore, programs/winefile/Makefile.in,
	  programs/winefile/drivebar.bmp, programs/winefile/images.bmp,
	  programs/winefile/resource.rc, programs/winefile/rsrc.rc,
	  programs/winefile/toolbar.bmp, programs/winefile/winefile.ico:
	winefile.exe: We can now store binary files in the repository.

	* .gitignore, programs/winecfg/Makefile.in,
	  programs/winecfg/idb_checkbox.bmp, programs/winecfg/idb_wine.bmp,
	  programs/winecfg/winecfg.rc:
	winecfg.exe: We can now store binary files in the repository.

	* .gitignore, programs/uninstaller/Makefile.in,
	  programs/uninstaller/rsrc.rc, programs/uninstaller/uninstaller.ico:
	uninstaller.exe: We can now store binary files in the repository.

	* .gitignore, programs/taskmgr/Makefile.in, programs/taskmgr/font.bmp,
	  programs/taskmgr/taskmgr.ico, programs/taskmgr/taskmgr.rc,
	  programs/taskmgr/trayicon.bmp, programs/taskmgr/traymask.bmp,
	  programs/taskmgr/window.ico, programs/taskmgr/windowsm.ico:
	taskmgr.exe: We can now store binary files in the repository.

	* .gitignore, programs/regedit/Makefile.in, programs/regedit/bin.ico,
	  programs/regedit/computer.ico, programs/regedit/folder.ico,
	  programs/regedit/folderopen.ico, programs/regedit/regedit.ico,
	  programs/regedit/resource.rc, programs/regedit/rsrc.rc,
	  programs/regedit/string.ico:
	regedit.exe: We can now store binary files in the repository.

	* .gitignore, programs/oleview/Makefile.in, programs/oleview/rsrc.rc,
	  programs/oleview/toolbar.bmp:
	oleview.exe: We can now store binary files in the repository.

	* .gitignore, programs/msiexec/Makefile.in, programs/msiexec/msiexec.ico,
	  programs/msiexec/rsrc.rc:
	msiexec.exe: We can now store binary files in the repository.

	* .gitignore, programs/cmdlgtst/Makefile.in, programs/cmdlgtst/about.ico,
	  programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst.exe: We can now store binary files in the repository.

	* .gitignore, programs/cmd/Makefile.in, programs/cmd/wcmd.ico,
	  programs/cmd/wcmdrc.rc:
	cmd.exe: We can now store binary files in the repository.

2007-09-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Use decode function's returned decoded length to advance pointer when
	decoding an array.

	* dlls/crypt32/decode.c:
	crypt32: ret is already true, don't retest it.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Explicitly count bytes to copy in DecodeCopyBytes.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Test and correct decoding indefinite-length-encoded PKCS content.

	* dlls/crypt32/decode.c:
	crypt32: Use correct encoded length when decoding a sequence.

	* dlls/crypt32/decode.c:
	crypt32: Simplify AsnDecodeSequenceItems a tiny bit.

	* dlls/crypt32/decode.c:
	crypt32: Allow indefinite-length encoding of sequence items.

	* dlls/crypt32/decode.c:
	crypt32: Simplify DecodePathLenConstraint.

	* dlls/crypt32/decode.c:
	crypt32: Allow a sequence to have an indefinite-length encoding.

	* dlls/crypt32/decode.c:
	crypt32: Set *pcbDecoded in every function.

	* dlls/crypt32/decode.c:
	crypt32: Use internal form for all internal decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of encoding type argument to AsnDecodeSequence, it isn't used.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of encoding type from AsnDecodeSequenceItems, it's never
	checked.

	* dlls/crypt32/decode.c:
	crypt32: Don't use exception handler when decoding time zone, caller already
	does.

	* dlls/crypt32/decode.c:
	crypt32: Implement DecodeAltName with DecodeAltNameInternal.

	* dlls/crypt32/decode.c:
	crypt32: Use AsnDecodeIntInternal where an internal function is called for.

	* dlls/crypt32/decode.c:
	crypt32: Temporarily change prototype of AsnDecodeIntInternal to the
	CryptDecodeObjectEx form.

	* dlls/crypt32/decode.c:
	crypt32: Use internal decode int function a couple more places.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a space checking helper for functions that don't allocate
	memory and use it where appropriate.

	* dlls/crypt32/decode.c:
	crypt32: Move a comment that belonged elsewhere.

	* dlls/crypt32/decode.c:
	crypt32: Separate DecodeInt into an internal and external version.

	* dlls/crypt32/decode.c:
	crypt32: Use simpler form for internal time decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Allow items in an array to be indefinite-length encoded.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Support indefinite-length encoded arrays.

	* dlls/crypt32/decode.c:
	crypt32: Set bytes decoded in all success paths.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a helper function to get encoded length that allows
	indefinite-length encoding.

	* dlls/crypt32/decode.c:
	crypt32: Remove an unneeded WINAPI.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded from AsnDecodeArray.

	* dlls/crypt32/decode.c:
	crypt32: Pass bytes decoded pointer to AsnDecodeArray.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when decoding an alt name entry.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when copying DER-encoded bytes.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when decoding a sequence.

	* dlls/crypt32/decode.c:
	crypt32: Make a decode OID function that returns the number of bytes decoded.

	* dlls/crypt32/decode.c:
	crypt32: Add a decoded parameter to AsnDecodeSequence.

	* dlls/crypt32/decode.c:
	crypt32: Use a simpler prototype for array decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Fix alignment on 64-bit systems.

	* dlls/crypt32/decode.c:
	crypt32: Correct an optimization.

	* dlls/crypt32/decode.c:
	crypt32: Correct GET_LEN_BYTES for the indefinite-length form.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add a test of an indefinite-length sequence.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Update comments.

2007-09-18  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/dbghelp.c, include/dbghelp.h:
	dbghelp: Fix the PENUMLOADED_MODULES_CALLBACK() prototype.

	* dlls/dnsapi/query.c, include/windns.h, tools/winapi/win32.api:
	dnsapi: Fix the DnsQueryConfig() prototype.

	* programs/wordpad/wordpad.c:
	wordpad: Fix compilation on systems that don't support nameless unions.

	* include/imagehlp.h:
	imagehlp: Add SYMBOL_INFO_PACKAGE and SymSetSearchPathW().

	* dlls/advapi32/registry.c, include/winreg.h, tools/winapi/win32.api:
	advapi32: Add and use LSTATUS.

	* dlls/shell32/tests/shellpath.c, include/shlobj.h:
	shell32: CSIDL_MYDOCUMENTS is now a synonym for CSIDL_PERSONAL.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Fix compilation on systems that don't support nameless unions.

	* include/dbghelp.h, include/imagehlp.h, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c:
	dbghelp & imagehlp: Fix the PSYM_ENUMSYMBOLS_CALLBACK() and
	PSYM_ENUMERATESYMBOLS_CALLBACK() prototypes.
	Tweak the actual callbacks to better match the prototypes.

	* dlls/ntdll/nt.c:
	ntdll: Fix compilation on systems that don't support nameless unions.

	* include/dbghelp.h:
	dbghelp: Add some missing prototypes and types.

	* include/imagehlp.h:
	imagehlp: Fix the PTRANSLATE_ADDRESS_ROUTINE() and PREAD_PROCESS_MEMORY_ROUTINE()
	prototypes.

2007-09-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c, include/winuser.h:
	winex11.drv: Use symbolic names for MapVirtualKey translation types.

2007-09-17  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: None of the non-fixed arrays have fixed sizes, so don't set the alignment
	to anything and return a size of 0 from get_required_buffer_size_type.

	* tools/widl/typegen.c:
	widl: Missing size_is or length_is attributes should generate 0xffffffff for
	the correlation description.

2007-09-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c:
	advapi32: QueryObjectSecurity should return a self-relative security descriptor
	and not overflow the buffer.

2007-09-16  Gerald Pfeifer <gerald@pfeifer.com>

	* README:
	README: Update minimal system requirements for FreeBSD.

2007-09-17  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Create a TCP connection if FLAG_ICC_FORCE_CONNECTION is specified.

	* dlls/msi/format.c:
	msi: Initialize nested.

	* dlls/msi/format.c:
	msi: Make sure nested is initialized.

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Don't crash if record has no fields.

2007-09-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move the software blitting to the base surface class.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give GDI surfaces their own release implementation.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Move lastActiveRenderTarget cleanup to the device.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give GDI surfaces their own GetDC copy.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move DIB section creation to the base surface implementation.

	* dlls/wined3d/surface.c:
	wined3d: Remove a pbo check.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up IWineD3DSurface::ReleaseDC.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetMem.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/texture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up AddDirtyRect.

2007-09-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetFormatDesc.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetGLTextureDesc and GetGLDesc.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Reorder surface impl predeclarations.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Base surface move, part 2.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move non-rendering surface specific code to the base class.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move resource methods to the base surface class.

	* dlls/wined3d/Makefile.in, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_base.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Start of some surface cleanup.
	This patch and the following intend to make the surface code more
	manageable and are a preparation to add gl3 support. The code adds a
	new IWineD3DBaseSurface surface type, which will contain the
	non-rendering management code. IWineD3DSurface and IWineGDISurface
	will be derived from IWineD3DBaseSurface, and IWineGL3Surface can be
	added later.

2007-09-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11.drv: Invalidate the DCE when the window format is changed.

	* dlls/gdi32/opengl.c, dlls/gdi32/painting.c:
	gdi32: Update the DC in most OpenGL functions.

	* dlls/gdi32/dc.c, dlls/gdi32/font.c, dlls/gdi32/opengl.c:
	gdi32: Replace remaining instance of DC_GetDCUpdate by get_dc_ptr+update_dc.

	* dlls/gdi32/bitblt.c, dlls/gdi32/dib.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the bitmap functions.

	* dlls/gdi32/painting.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the painting functions.

	* dlls/gdi32/clipping.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the clipping functions.

2007-09-15  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	wgl: Store the fbconfig id with the window when a pixel format is set.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Don't hold the GDI lock when setting the pixel format.

2007-09-17  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/itss/tests/Makefile.in, dlls/itss/tests/data.chm,
	  dlls/itss/tests/rsrc.rc:
	itss/tests: We can now store binary files in the repository.

	* .gitignore, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/resource.rc, dlls/user32/tests/test_mono.bmp:
	user32/tests: We can now store binary files in the repository.

	* .gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/bmp128x15.bmp, dlls/comctl32/tests/bmp80x15.bmp,
	  dlls/comctl32/tests/rsrc.rc:
	comctl32/tests: We can now store binary files in the repository.

	* .gitignore, dlls/cards/Makefile.in, dlls/cards/b1fv.bmp,
	  dlls/cards/b2fv.bmp, dlls/cards/c1.bmp, dlls/cards/c10.bmp,
	  dlls/cards/c2.bmp, dlls/cards/c3.bmp, dlls/cards/c4.bmp,
	  dlls/cards/c5.bmp, dlls/cards/c6.bmp, dlls/cards/c7.bmp,
	  dlls/cards/c8.bmp, dlls/cards/c9.bmp, dlls/cards/cards.rc,
	  dlls/cards/cj.bmp, dlls/cards/ck.bmp, dlls/cards/cq.bmp,
	  dlls/cards/d1.bmp, dlls/cards/d10.bmp, dlls/cards/d2.bmp,
	  dlls/cards/d3.bmp, dlls/cards/d4.bmp, dlls/cards/d5.bmp,
	  dlls/cards/d6.bmp, dlls/cards/d7.bmp, dlls/cards/d8.bmp,
	  dlls/cards/d9.bmp, dlls/cards/dj.bmp, dlls/cards/dk.bmp,
	  dlls/cards/dq.bmp, dlls/cards/free.bmp, dlls/cards/h1.bmp,
	  dlls/cards/h10.bmp, dlls/cards/h2.bmp, dlls/cards/h3.bmp,
	  dlls/cards/h4.bmp, dlls/cards/h5.bmp, dlls/cards/h6.bmp,
	  dlls/cards/h7.bmp, dlls/cards/h8.bmp, dlls/cards/h9.bmp,
	  dlls/cards/hj.bmp, dlls/cards/hk.bmp, dlls/cards/hq.bmp,
	  dlls/cards/s1.bmp, dlls/cards/s10.bmp, dlls/cards/s2.bmp,
	  dlls/cards/s3.bmp, dlls/cards/s4.bmp, dlls/cards/s5.bmp,
	  dlls/cards/s6.bmp, dlls/cards/s7.bmp, dlls/cards/s8.bmp,
	  dlls/cards/s9.bmp, dlls/cards/sj.bmp, dlls/cards/sk.bmp,
	  dlls/cards/sq.bmp, dlls/cards/theo.bmp, dlls/cards/thex.bmp:
	cards: We can now store binary files in the repository.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/instabsent.bmp,
	  dlls/msi/instadvert.bmp, dlls/msi/instlocal.bmp, dlls/msi/msi.rc:
	msi: We can now store binary files in the repository.

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/drag_copy.cur,
	  dlls/ole32/drag_link.cur, dlls/ole32/drag_move.cur,
	  dlls/ole32/nodrop.cur, dlls/ole32/ole32res.rc:
	ole32: We can now store binary files in the repository.

	* .gitignore, dlls/shell32/Makefile.in, dlls/shell32/cdrom.ico,
	  dlls/shell32/delete.ico, dlls/shell32/desktop.ico,
	  dlls/shell32/document.ico, dlls/shell32/drive.ico,
	  dlls/shell32/floppy.ico, dlls/shell32/folder.ico,
	  dlls/shell32/folder_open.ico, dlls/shell32/mycomputer.ico,
	  dlls/shell32/mydocs.ico, dlls/shell32/netdrive.ico,
	  dlls/shell32/netdrive2.ico, dlls/shell32/printer.ico,
	  dlls/shell32/ramdisk.ico, dlls/shell32/searching.avi,
	  dlls/shell32/shortcut.ico, dlls/shell32/shres.rc,
	  dlls/shell32/trash_file.ico:
	shell32: We can now store binary files in the repository.

	* .gitignore, dlls/user32/Makefile.in, dlls/user32/resources/display.rc,
	  dlls/user32/resources/obm_btncorners.bmp,
	  dlls/user32/resources/obm_btsize.bmp,
	  dlls/user32/resources/obm_check.bmp,
	  dlls/user32/resources/obm_checkboxes.bmp,
	  dlls/user32/resources/obm_close.bmp,
	  dlls/user32/resources/obm_combo.bmp,
	  dlls/user32/resources/obm_dnarrow.bmp,
	  dlls/user32/resources/obm_dnarrowd.bmp,
	  dlls/user32/resources/obm_dnarrowi.bmp,
	  dlls/user32/resources/obm_lfarrow.bmp,
	  dlls/user32/resources/obm_lfarrowd.bmp,
	  dlls/user32/resources/obm_lfarrowi.bmp,
	  dlls/user32/resources/obm_mnarrow.bmp,
	  dlls/user32/resources/obm_old_close.bmp,
	  dlls/user32/resources/obm_old_dnarrow.bmp,
	  dlls/user32/resources/obm_old_lfarrow.bmp,
	  dlls/user32/resources/obm_old_reduce.bmp,
	  dlls/user32/resources/obm_old_restore.bmp,
	  dlls/user32/resources/obm_old_rgarrow.bmp,
	  dlls/user32/resources/obm_old_uparrow.bmp,
	  dlls/user32/resources/obm_old_zoom.bmp,
	  dlls/user32/resources/obm_reduce.bmp,
	  dlls/user32/resources/obm_reduced.bmp,
	  dlls/user32/resources/obm_restore.bmp,
	  dlls/user32/resources/obm_restored.bmp,
	  dlls/user32/resources/obm_rgarrow.bmp,
	  dlls/user32/resources/obm_rgarrowd.bmp,
	  dlls/user32/resources/obm_rgarrowi.bmp,
	  dlls/user32/resources/obm_size.bmp,
	  dlls/user32/resources/obm_trtype.bmp,
	  dlls/user32/resources/obm_uparrow.bmp,
	  dlls/user32/resources/obm_uparrowd.bmp,
	  dlls/user32/resources/obm_uparrowi.bmp,
	  dlls/user32/resources/obm_zoom.bmp,
	  dlls/user32/resources/obm_zoomd.bmp,
	  dlls/user32/resources/ocr_appstarting.cur,
	  dlls/user32/resources/ocr_cross.cur,
	  dlls/user32/resources/ocr_dragobject.cur,
	  dlls/user32/resources/ocr_hand.cur,
	  dlls/user32/resources/ocr_help.cur,
	  dlls/user32/resources/ocr_ibeam.cur,
	  dlls/user32/resources/ocr_icon.cur, dlls/user32/resources/ocr_no.cur,
	  dlls/user32/resources/ocr_normal.cur,
	  dlls/user32/resources/ocr_size.cur,
	  dlls/user32/resources/ocr_sizeall.cur,
	  dlls/user32/resources/ocr_sizenesw.cur,
	  dlls/user32/resources/ocr_sizens.cur,
	  dlls/user32/resources/ocr_sizenwse.cur,
	  dlls/user32/resources/ocr_sizewe.cur,
	  dlls/user32/resources/ocr_up.cur, dlls/user32/resources/ocr_wait.cur,
	  dlls/user32/resources/oic_bang.ico,
	  dlls/user32/resources/oic_hand.ico,
	  dlls/user32/resources/oic_note.ico,
	  dlls/user32/resources/oic_ques.ico,
	  dlls/user32/resources/oic_sample.ico,
	  dlls/user32/resources/oic_winlogo.ico,
	  dlls/user32/resources/user32_bin.rc:
	user32: We can now store binary files in the repository.

	* .gitignore, dlls/comdlg32/800.bmp, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/cdlg_xx.rc, dlls/comdlg32/cdrom.ico,
	  dlls/comdlg32/floppy.ico, dlls/comdlg32/folder.ico,
	  dlls/comdlg32/folder2.ico, dlls/comdlg32/fontpics.bmp,
	  dlls/comdlg32/hdisk.ico, dlls/comdlg32/network.ico,
	  dlls/comdlg32/pd32_collate.ico, dlls/comdlg32/pd32_landscape.ico,
	  dlls/comdlg32/pd32_nocollate.ico, dlls/comdlg32/pd32_portrait.ico:
	comdlg32: We can now store binary files in the repository.

	* .gitignore, dlls/comctl32/Makefile.in, dlls/comctl32/idb_hist_large.bmp,
	  dlls/comctl32/idb_hist_small.bmp, dlls/comctl32/idb_std_large.bmp,
	  dlls/comctl32/idb_std_small.bmp, dlls/comctl32/idb_view_large.bmp,
	  dlls/comctl32/idb_view_small.bmp, dlls/comctl32/idc_copy.cur,
	  dlls/comctl32/idc_divider.cur, dlls/comctl32/idc_divideropen.cur,
	  dlls/comctl32/idc_movebutton.cur, dlls/comctl32/idi_dragarrow.ico,
	  dlls/comctl32/idi_tt_error_sm.ico, dlls/comctl32/idi_tt_info_sm.ico,
	  dlls/comctl32/idi_tt_warn_sm.ico, dlls/comctl32/idt_check.bmp,
	  dlls/comctl32/rsrc.rc:
	comctl32: We can now store binary files in the repository.

2007-09-07  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/freetype.c:
	gdi32: Return the correct font type, ntmFlags and PitchAndFamily for Type1 fonts.

	* dlls/gdi32/font.c:
	gdi32: If freetype fails try to load manually fonts wrapped as PE resources.

2007-09-13  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h,
	  include/wingdi.h:
	gdi32: Implement AddFontMemResourceEx (based on a patch of Byeong-Sik Jeon).

2007-09-06  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/freetype.c:
	gdi32: Store child font links as pointers to struct Face instead of
	filename/index.

2007-09-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/win.c:
	user32/tests: Properly flush events in the update rect tests.

2007-09-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/msg.c, dlls/crypt32/rootstore.c:
	crypt32: Fix some memory leaks.

2007-09-14  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/shlfileop.c, dlls/wined3d/surface.c:
	janitorial: Remove two fresh redundant NULL checks before HeapFree(). Found
	by Smatch.

2007-09-16  Peter Oberndorfer <kumbayo84@arcor.de>

	* aclocal.m4, configure:
	configure: Recognize i686-mingw32 prefix for crosscompiling.

2007-09-15  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/writer.c:
	riched20: Prevent overflow on richedit debug channel.

	* dlls/iccvid/iccvid.c:
	iccvid: Guard against null pointer reference.

2007-09-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Fix an error message.

2007-09-16  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c,
	  dlls/user32/tests/dde.c:
	kernel32: Return TRUE for all pointer params in GlobalUnlock.

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c,
	  dlls/user32/tests/dde.c:
	kernel32: Fix the case where memory is freed twice in GlobalFree.

	* dlls/user32/dde_misc.c, dlls/user32/tests/dde.c:
	user32: Set uiLo and uiHi to zero on error.

	* dlls/user32/tests/dde.c:
	user32: Add tests for the DDE pack functions.

2007-09-17  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix write_string_tfs for strings declared as arrays.
	The immediate type will be FC_*ARRAY, so rtype needs to use the referred
	type to get the base type.
	Also update the typeformat-string offset of the type.

	* tools/widl/typegen.c:
	widl: Add support for strings embedded in structures.

2007-09-16  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Fix detection of complex arrays.

	* tools/widl/parser.y:
	widl: Initialise cval in make_expr.

	* dlls/credui/credui_main.c:
	credui: The pszUserName parameter in CredUIPromptForCredentialsW is in/out so
	dump the string on entry to the function.

2007-09-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/ftp.c:
	wininet/ftp: There's no need to query the file size before retrieving a file.

2007-09-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add pbo support for compressed textures.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Update list of pci ids.

2007-09-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Don't create a pbo for system memory surfaces.

2007-09-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make HTMLBodyElement child object of HTMLTextContainer.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLTextAreaElement.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLSelectElement.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLInputElement.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added get_body test.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLBodyElement.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLAnchorElement.

2007-09-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2007-09-14  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/txtrange.c:
	mshtml: Move 'inline' to the beginning of the declaration directly after the
	storage specifier.

2007-09-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Do not invalidate the sysmem copy if a pbo exists.

	* dlls/wined3d/surface.c:
	wined3d: Do not allocate memory if there's a pbo.

2007-09-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Use GL_NV_depth_clamp to implement clipping disable.

	* dlls/wined3d/state.c:
	wined3d: Add a fixme for D3DCMP_NOTEQUAL and D3DCMP_EQUAL.

	* include/d3d9types.h:
	wined3d: Add D3DSI_TEXLD_PROJECT and BIAS to d3d9types.h.

2007-09-14  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.45.

----------------------------------------------------------------
2007-09-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Anonymous FTP can succeed without a password.

2007-09-06  Vincent Povirk <madewokherd@gmail.com>

	* dlls/shell32/shell32_main.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/tests/shlfileop.c:
	shell32: Implement SHPathPrepareForWrite.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHPathPrepareForWrite.

2007-09-06  Vincent Povirk <madewokherd+d41d@gmail.com>

	* include/shlobj.h:
	shell32: Add SHPathPrepareForWrite and related constants.

2007-09-13  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/nt.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Add get_token_statistics server call and use it to implement the
	TokenStatistics and TokenType levels for NtQueryInformationToken.

2007-09-13  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Add padding to the end of complex structures.

2007-09-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Fix some memory leaks.

	* dlls/comctl32/treeview.c:
	comctl32: Fix a memory leak.

2007-09-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: The D3DSI_COISSUE flag changes the behavior of cnd.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix texdp3tex in glsl.

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a test for the cnd instruction.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add support for showing a logo.

2007-09-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Pixel shader 1.x constants are clamped to [-1;1].

2007-09-13  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c:
	ntdll: Add a stub implementation of FSCTL_PIPE_IMPERSONATE that just impersonates
	the token of the current process.

	* dlls/advapi32/security.c:
	advapi32: Fix ImpersonateNamedPipeClient to pass in a pointer to an
	IO_STATUS_BLOCK to NtFsControl.
	Otherwise, NtFsControl file won't do anything except return
	STATUS_INVALID_PARAMETER.

2007-09-13  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	propsheet: Do not change idea of size when new pages are added.

2007-09-12  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2007-09-11  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Edit control should respond to ctrl + z.

2007-09-12  Americo Jose Melo <mmodem00@gmail.com>

	* dlls/comctl32/comctl_Fr.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/oleaut32/oleaut32_Pt.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/winmm/winmm_Pt.rc, programs/winecfg/Pt.rc,
	  programs/wineconsole/wineconsole_Pt.rc, programs/winefile/Pt.rc,
	  programs/winhelp/Pt.rc:
	Update the Portuguese translation.

2007-09-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLDOMNode struct instead of pointer in HTMLElement object.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlanchor.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLAnchorElement stub implementation.

2007-09-13  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLAnchorElement.

2007-09-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c:
	shell32: Constify some variables.

2007-09-13  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a major ATI regression.
	ATI's latest drivers (8.41.7) don't advertise visualids anymore for GLXFBConfigs.

2007-09-12  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix an unused parameter warning on write_conf_or_var_desc.

	* tools/widl/typegen.c:
	widl: Add calls to NdrFooFree for more types in server stubs.

	* tools/widl/typegen.c:
	widl: Use the correct functions for interface pointers in stubs.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Implement UpdateTexture for volumes.

2007-09-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: texm3x3(v)spec normalizes the normal vector.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Disable some volume texture formats.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Convert the colors to the surface format for colorfill.

2007-09-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLTxtRange::put_text tests.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::move("word") implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::moveEnd implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::move("character") implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed ref count in parentElement.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::expand implementation.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLTxtRange tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Reimplement IHTMLTxtRange::get_text.

2007-08-31  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/setupapi/query.c:
	setupapi: Fix memory leak (found by Smatch).

2007-09-12  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/rootstore.c:
	crypt32: We don't consider sys/types.h to be a conditional include.

	* tools/winapi/win32.api:
	faultrep: Update win32.api to fix the winapi_check warnings.

2007-09-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add PBO support for dynamically locked surfaces.

2007-09-11  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Prevent white flickering on window resize.

2007-09-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Clean up font effects toggling code.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Resize rebar control on window resize.

	* programs/wordpad/wordpad.c:
	wordpad: Remove RB_SIZETORECT call.

2007-09-07  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: More error handling for printing/print preview.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Allow changing font effects in the choose font dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add replace dialog.

2007-08-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Set icon according to format.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add font dialog.

2007-08-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add font size list.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add font list.

2007-09-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c:
	avifil32: Fix some memory leaks.

2007-09-12  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Don't prefer native version.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WinVerifyTrust.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Partially implement SoftpubAuthenticode.

	* dlls/wintrust/softpub.c:
	wintrust: Save signer cert so chain can be created.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubCleanup.

2007-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/mfdrv/init.c,
	  dlls/gdi32/mfdrv/metafiledrv.h:
	gdi32: Don't store a DC pointer in the metafile devices.

	* dlls/kernel32/path.c:
	kernel32: GetTempPath should try the USERPROFILE and the Windows directory too.

2007-09-06  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/advapi32/service.c:
	advapi32: Replace SERV_free by HeapFree.

	* dlls/setupapi/stringtable.c:
	setupapi: Fix HeapFree of wrong pointer (found by Smatch).

2007-09-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/En.rc, dlls/mshtml/editor.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/resource.h:
	mshtml: Implement IDM_HYPERLINK.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Implement PersistStreamInit_IsDirty when in edit mode.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Store the nsIEditor interface in the NSContainer object for use in
	implementing editor commands.

	* dlls/ole32/compobj.c:
	ole32: Fix the default unload delay to depend on the threading model of the
	component loaded.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec, include/objbase.h:
	ole32: Implement CoFreeUnusedLibrariesEx.
	Fix CoFreeUnusedLibraries to use a delay of 10 minutes when used with
	multi-threaded apartments.

2007-08-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add initial print preview support.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add view options dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add about window.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add context menu.

	* programs/wordpad/wordpad.c:
	wordpad: Add support for printing a page range.

	* programs/wordpad/wordpad.c:
	wordpad: Re-order format clearing when selecting new file.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add quick print support.

	* programs/wordpad/wordpad.c:
	wordpad: Store page margins in the registry.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add page setup dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add initial printing support.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add tab stops dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add paragraph format dialog.

2007-08-22  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Set default font according to format.

	* programs/wordpad/wordpad.c:
	wordpad: Support drag-and-drop.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Store bar states in the registry.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Remove improper comment and dead code from SetPixelFormat.

	* dlls/winex11.drv/opengl.c:
	winex11: Remove useless checks from wglCreateContext.

	* dlls/winex11.drv/opengl.c:
	winex11: Free visual info stored with the context.

2007-09-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Constify some variables.

	* dlls/shell32/shell.c:
	shell32: Constify a variable.

2007-09-11  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Fix redirect ordering on a command line.

	* programs/cmd/builtins.c:
	cmd.exe: Add basic support for FOR /F parsing launched programs output.

	* programs/cmd/builtins.c:
	cmd.exe: Add basic for /F string support.

	* programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add suport for if 1==1 echo yes.

	* programs/cmd/batch.c:
	cmd.exe: Allow = and , to be delimiters.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Expand for variables at last with tilda modifications.

	* programs/cmd/builtins.c:
	cmd.exe: Enhance FOR support.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't assume just one on-screen pixel format.

	* dlls/winex11.drv/opengl.c:
	winex11: Simplify ConvertPixelFormatWGLtoGLX.

	* dlls/winex11.drv/opengl.c:
	winex11: Don't choose pixel formats with incorrect doublebuffer/stereo settings.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/texture.c, dlls/d3d9/tests/visual.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Implement mipmap auto generation.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Implement texbeml.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Emulate D3DFMT_L6V5U5.

	* dlls/wined3d/directx.c:
	wined3d: Disable W11V11U10 and A2W10V10U10.

2007-09-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/comm.c:
	kernel32: Skip the comm test if the found com port doesn't respond.

	* dlls/gdi32/freetype.c:
	gdi32: Use lower case font dir name to match unix directory layout.

	* dlls/shell32/shlfolder.c:
	shell32: Remove class cache introduced in commit
	f686cfab2feb9010efe82a932dc9f5904566c8ab.

2007-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmband/regsvr.c:
	dmband: Remove 'recursive registry key delete' function.

	* dlls/dmcompos/regsvr.c:
	dmcompos: Remove 'recursive registry key delete' function.

2007-09-11  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Make chain tests more strict.

	* dlls/crypt32/chain.c:
	crypt32: Set subject's info status from method used to find issuer.

	* dlls/crypt32/chain.c:
	crypt32: Pass subject's info status when adding an issuer to a chain.

	* dlls/crypt32/chain.c:
	crypt32: Only decode authority key ID in subject cert once when looking
	for issuer.

	* dlls/crypt32/chain.c:
	crypt32: (Re)introduce helper function to get issuer certificate.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Validate pad byte when decrypting a block cipher.

2007-09-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add a timer check to capture to see if play notifications have
	been triggered.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for capture notification positions.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add stubs for IDsCaptureDriverNotify.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Use nBLockAlign instead of snd_pcm_bytes_to_frames to get buffer size.

2007-09-11  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix a trace in RPCRT4_SecurePacket.

	* dlls/crypt32/rootstore.c:
	crypt32: Fix a compile failure on *BSD systems.
	Include limits.h for the definition of PATH_MAX.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Correctly handle the failure of RPCRT4_SecurePacket in RPCRT4_Receive.

2007-09-11  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  include/Makefile.in, include/i_cryptasn1tls.h:
	crypt32: Fix the I_Crypt*Asn1*() prototypes. Add the i_cryptasn1tls.h header
	and use it.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/asn.c,
	  dlls/wintrust/tests/softpub.c:
	wintrust: Fix compilation on systems that don't support nameless unions.

	* tools/winapi/win32.api:
	url: Update win32.api to fix the winapi_check warnings.

	* dlls/wldap32/wldap32_Fr.rc:
	wldap32: Fix a typo in the French resources.

	* tools/winapi/win32.api:
	winapi_check: 'char*' is a string, not a pointer.

2007-09-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Move the memory code of LockRect to the end of the function.
	This is needed for PBOs because for those memory allocation works differently.

2007-09-10  Rob Shearman <rob@codeweavers.com>

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/irot.idl,
	  dlls/ole32/moniker.c, include/wine/irot.idl,
	  programs/rpcss/Makefile.in, programs/rpcss/irot.idl,
	  programs/rpcss/irotp.c, programs/rpcss/rpcss_main.c,
	  tools/make_makefiles:
	ole32: Add cross-process running-object table support.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT_X8L8V8U8.

2007-08-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: texkill ignores the .w only in ps 1.x.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private_types.h:
	wined3d: Implement texldb.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix texdepth instruction.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix the z range.

2007-09-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c, dlls/dsound/primary.c:
	dsound: Support arbitrarily sized buffers for waveout.

2007-09-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Fix overshot calculations.

2007-09-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/shell32_main.h:
	shell32: Constify some variables.

2007-09-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the basic constraints
	policy.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the authenticode policy.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the base policy.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add initial tests for CertVerifyCertificateChainPolicy.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Add a stub for CertVerifyCertificateChainPolicy.

	* include/wincrypt.h:
	crypt32: Add policy flags definitions.

	* dlls/crypt32/decode.c:
	crypt32: Support CRYPT_DECODE_TO_BE_SIGNED_FLAG.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c,
	  dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Support setting the effective key length of RC2 keys.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Call setup_key whenever the IV is reset.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Reorder padding code to avoid unnecessary comparison.

2007-09-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Tests for OpenPort and ClosePort.

	* dlls/localspl/localmon.c:
	localspl: Implement OpenPort and ClosePort.

2007-09-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: When setting hooks ignore devices without even handler.

	* dlls/dinput/mouse.c:
	dinput: Add helper function to dump mouse state.

2007-08-31  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/faultrep/Makefile.in, dlls/faultrep/faultrep.c,
	  dlls/faultrep/faultrep.spec:
	faultrep: Implement AddERExcludedApplication[AW].

	* include/Makefile.in, include/errorrep.h:
	include: Add errorrep.h header.

2007-08-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, programs/winecfg/audio.c:
	dsound: Change default bpp and sample frequency to be better for the ears.

2007-09-11  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/debug.c, libs/wine/loader.c:
	libwine: Initialize debug channels options on first use.

2007-09-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/rootstore.c, dlls/crypt32/store.c:
	crypt32: Add a root store implementation that reads trusted certificates from
	well-known locations on the local system.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32_private.h:
	crypt32: Add a function to create a certificate chain engine potentially before
	the root store is created.

2007-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmime/regsvr.c:
	dmime: Remove 'recursive registry key delete' function.

	* dlls/dmloader/regsvr.c:
	dmloader: Remove 'recursive registry key delete' function.

2007-09-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* server/file.c:
	server: Map ETXTBSY to STATUS_SHARING_VIOLATION.

2007-09-10  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.c:
	widl: Output UUID files compatible with older Visual C++ and MinGW.

2007-09-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/kernel32/time.c:
	kernel32: Use sysconf instead of the obsolete CLK_TCK.

2007-09-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/defwnd.c:
	user32: Don't exit when double-clicking with right button held.

2007-09-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/olethk32/Makefile.in, dlls/olethk32/main.c,
	  dlls/olethk32/olethk32.spec, dlls/olethk32/version.rc:
	olethk32: Added stub implementation.

2007-09-06  Lei Zhang <thestig@google.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Do not pass NULL lParam to ME_ToUnicode for EM_REPLACESEL.

2007-09-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11drv: Don't ignore mouse move events even when position did not change.

2007-09-04  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/treeview.c:
	comctl32: treeview: Ensure our textWidth is correct when returning the size
	of the text box.

	* dlls/comctl32/treeview.c:
	comctl32: Ensure item metric are calculated when an item becomes visible.

2007-09-03  Lionel Debroux <lionel_debroux@yahoo.fr>

	* programs/regedit/listview.c:
	regedit: Fixed a memory leak in listview.c (found by Smatch).

	* dlls/dplayx/dplay.c:
	dplayx: Fixed memory leak in dplay.c (found by Smatch).

2007-09-01  Lionel Debroux <lionel_debroux@yahoo.fr>

	* tools/winedump/msmangle.c:
	winedump: Fix memory leak in msmangle.c (found by Smatch).

	* dlls/ole32/compositemoniker.c:
	ole32: Fix memory leak in compositemoniker.c (found by Smatch).

2007-09-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/regsvr.c:
	dsound: Runtime link to advapi32.RegDeleteTree.

2007-09-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Fix ddraw-opengl surface free bug.

2007-09-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dplayx/regsvr.c:
	dplayx: Remove 'recursive registry key delete' function.

2007-09-07  David Hedberg <david.hedberg@gmail.com>

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/d3d.c:
	ddraw: Enumerate additional devices in IDirect3D7_EnumDevices.

2007-09-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add X4R4G4B4 and A4R4G4B4 to formats allowed in getColorBits.

2007-09-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: Better iexplore.exe command line handling.

	* dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added better GoHome stub implementation.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Don't use BSTR in navigate_url prototype.

	* dlls/urlmon/umon.c:
	urlmon: Added FIXME about unsupported pmkToLeft to BindToStorage.

	* dlls/winex11.drv/winex11.drv.spec:
	winex11: Fixed GetClipboardFormatName spec entry.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::isEqual implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::inRange implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::parentElement implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/service.c:
	mshtml: Added IOleUndoManager stub implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Call Exec in show_context_menu only if user selected menu item.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added UpdateUI implementation.

2007-09-07  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Ko.rc,
	  dlls/mshtml/Nl.rc, dlls/mshtml/No.rc, dlls/mshtml/Sv.rc,
	  dlls/mshtml/Tr.rc:
	mshtml: Make the Install button the default on the Gecko installation dialog.

	* dlls/mshtml/install.c:
	mshtml: Hide the progress bar while asking the user if Gecko should be installed.

2007-09-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/directx.c:
	wined3d: Add WINED3DPRESENT_INTERVAL_ONE flag.

2007-09-07  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/time.c:
	kernel32: Remove an unused #define in time.c.

	* dlls/ntdll/time.c:
	ntdll: Remove the overly-cautious check which prevented NtSetSystemTime from
	changing the time by more than two minutes.
	Simplify the returning of different status codes by not playing around
	with the return value from settimeofday.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Fix IUnknown_OnFocusOCS to call OnFocus instead of GetExtendedControl.

2007-09-07  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Ignore an empty output string.

2007-09-06  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Consider alternate issuers when building chains.

	* dlls/crypt32/chain.c:
	crypt32: Flags weren't set, so don't bother passing them.

	* dlls/crypt32/chain.c:
	crypt32: Defer checking signatures until chain is complete.

	* dlls/crypt32/chain.c:
	crypt32: Don't ask CertGetIssuerCertificateFromStore to verify revocation
	status, it almost certainly doesn't do what we want.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't abort chain creation if the root signature isn't valid.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Add special case for certificates with no signature algorithm.

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove a misplaced todo_wine.

	* dlls/crypt32/chain.c:
	crypt32: Set *ppChainContext even on error.

	* dlls/crypt32/tests/chain.c:
	crypt32: Test whether chain creation should fail when a root signature is
	invalid.

	* dlls/crypt32/chain.c:
	crypt32: Separate allocating a simple chain and checking it from building it.

	* dlls/crypt32/chain.c:
	crypt32: Store world store in chain.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Not finding an issuer shouldn't cause chain creation to fail.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't add end cert's store to world.

	* dlls/crypt32/chain.c:
	crypt32: Open world store when creating chain, not when building a simple chain.

	* dlls/crypt32/chain.c:
	crypt32: Make a helper function to create initial candidate chain.

	* dlls/crypt32/tests/chain.c:
	crypt32: Test that the end cert in a chain's store isn't implicitly searched
	for issuers.

	* dlls/crypt32/context.c, dlls/crypt32/tests/cert.c:
	crypt32: Add more tests for getting issuer cert from store.
	Show that certificates are added to memory stores at the head rather
	than the tail.

2007-09-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/cabinet/fdi.c:
	cabinet: Remove unnecessary function.

2007-09-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Fix detection of different sample rates in setformat.

2007-09-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Fix null pointer dereference for waveout in creating buffer.

2007-09-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Remove forceformat and 2 orphan LeaveCriticalSection.

2007-09-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Use correct capture position in getposition.

2007-09-05  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/comctl32.h, dlls/comctl32/rsrc.rc:
	comctl32: Flesh out version info.

	* dlls/imm32/imm.c:
	imm32: Further tweeks to CFS_POINT and CFS_RECT placement of the default
	ime window.

2007-09-04  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: TCM_SETCURSEL also updates the focus item.

2007-09-03  David Hedberg <david.hedberg@gmail.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix and test case for situation where DDSD_MIPMAPCOUNT is set and
	dwMipMapCount is 0.

	* tools/wine.inf:
	wine.inf: Add oledlg.dll to the list of fake dlls.

2007-09-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Allow size_is on strings.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Implement NDR for struct field alignment.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix top-level and callback conformances.

2007-09-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* server/file.c, server/sock.c:
	server: Print a more informative message when file_set_error or sock_get_error
	can't map errno to a status code.

	* dlls/kernel32/resource.c:
	kernel32: Fix some compiler warnings.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c,
	  dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Duplicate shell32.ShellMessageBoxW implementation in
	shlwapi.ShellMessageBoxWrapW.

	* tools/winebuild/utils.c:
	winebuild: Add IMAGE_FILE_32BIT_MACHINE flag for a 32-bit build.

	* dlls/user32/tests/win.c:
	user32: Add more tests for GetUpdateRect.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/fontdlg.c:
	comdlg32: ChooseFont: Set font effects on init.

2007-09-01  Francois Gouget <fgouget@free.fr>

	* dlls/quartz/main.c, tools/winapi/win32.api:
	quartz: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	query: Update win32.api to fix the winapi_check warnings.

	* include/ntquery.h:
	query: Make ntquery.h C++ compatible.
	Add missing prototypes.
	Add a commented-out #include directive as a reminder.

	* dlls/url/url.spec, dlls/url/url_main.c, include/Makefile.in,
	  include/intshcut.h:
	url: Fix the InetIsOffline() prototype.
	Add a skeleton intshcut.h header declaring InetIsOffline(), and use it.

	* include/ntsecapi.h:
	secur32: Add some missing prototypes to ntsecapi.h.

	* include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winex11.drv: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win16.api, tools/winapi/win32.api:
	winapi_check: Assorted win16.api and win32.api updates.

	* dlls/kernel32/locale.c, dlls/version/info.c, dlls/version/install.c,
	  include/winver.h, tools/winapi/win32.api:
	version: Fix some Ver*() prototypes (especially wrt constness).
	Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	secur32: Update win32.api to fix the winapi_check warnings.

	* include/errors.h:
	quartz: Make errors.h more complete and better match the PSDK types.

	* include/shobjidl.idl:
	shobjidl.h: Add missing #include directives, and some commented-out ones
	as reminders.

	* tools/winapi/win32.api:
	vdmdbg: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	schannel: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	rpcrt4: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	spoolss: Update win32.api to fix the winapi_check warnings.

2007-08-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Supply texture coords even if no texture is bound and pshaders are used.

2007-08-31  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Don't use the working directory passed into ShellExecute* functions
	if it isn't valid.

2007-08-30  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check path length constraint on a chain.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Set error status on issued certificate, not on issuer.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check whether each signing certificate can be a CA.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check time of each element in chain against requested time.

	* dlls/crypt32/chain.c:
	crypt32: Time validity nesting doesn't appear to be checked, so don't check it.

	* dlls/crypt32/chain.c:
	crypt32: Correct combining trust status of a chain's elements into the chain's
	trust status.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't fail chain creation if signature doesn't match.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't fail chain creation if root isn't self-signed.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Halt chain creation when a cycle is detected.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertDuplicateCertificateChain.

	* dlls/crypt32/chain.c:
	crypt32: Remove unneeded WINAPI from internal function.

	* dlls/crypt32/chain.c:
	crypt32: Free lower quality chain contexts.

	* dlls/crypt32/chain.c:
	crypt32: Check chain root's trusted status regardless of whether its signature
	is valid.

	* dlls/crypt32/chain.c:
	crypt32: Properly reference count certificate contexts referenced by a chain.

	* dlls/crypt32/chain.c:
	crypt32: Add a default cycle detection modulus.

	* dlls/crypt32/chain.c:
	crypt32: The preferred issuer flag appears to be a bug in XP, so don't set it.

2007-08-31  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Greatly expand certificate chain tests.

2007-08-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/bitmap.c, dlls/gdi32/clipping.c, dlls/gdi32/dc.c,
	  dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/init.c:
	gdi32: New DC locking mechanism that doesn't require holding the global GDI lock.

2007-08-30  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Copy also the button #0 state.

	* dlls/user32/combo.c, dlls/user32/tests/combo.c:
	user32: combo: CB_SETITEMHEIGHT should make the edit area 2px higher than the
	item (with testcase).

2007-08-31  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Fix memory leak in create_cursor (found by Smatch).

2007-08-31  Alexandre Julliard <julliard@winehq.org>

	* programs/clock/ChangeLog, programs/progman/ChangeLog,
	  programs/winhelp/ChangeLog:
	programs: Remove other obsolete ChangeLog files.

2007-08-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/notepad/ChangeLog:
	notepad: Get rid of ChangeLog file.

	* programs/notepad/dialog.c:
	notepad: We pass OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST to GetOpenFileName,
	so there is no point in testing file existence.

2007-08-30  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Support GdiAlphaBlend with blendfn.AlphaFormat == 0.

2007-08-31  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Add tests for DebugActiveProcessStop() and
	DebugSetProcessKillOnExit().

	* dlls/kernel32/tests/debugger.c, server/debugger.c:
	server: Fix the crashed process exit code when the debugger exits without
	detaching. Add a conformance test.

	* dlls/kernel32/tests/debugger.c, programs/winedbg/tgt_active.c:
	winedbg: 'winedbg --auto' and 'winedbg --minidump' should detach when done so
	as to not mess up the crashed process exit code.

	* include/Makefile.in, include/bcrypt.h, include/wincrypt.h:
	bcrypt: Add a skeleton bcrypt.h header and use it.

	* programs/winedbg/winedbg.c:
	winedbg: Detach from the debuggee before exiting.

2007-08-31  Francois Gouget <fgouget@free.fr>

	* include/wininet.h:
	wininet: Remove the occasional parameter name in the prototypes.

2007-08-31  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmscript/regsvr.c:
	dmscript: Remove 'recursive registry key delete' function.

	* dlls/dmstyle/regsvr.c:
	dmstyle: Remove 'recursive registry key delete' function.

2007-08-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Raise the 1x pixelshader max value to the d3d minimum.

2007-08-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/glsl_shader.c:
	wined3d: The temp vars are tmp0 and tmp1.

2007-08-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Take the format into account when finding the clear value.

2007-08-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/surface.c, dlls/d3d9/tests/surface.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	d3d: Add a test for double surface locking.

2007-08-30  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec, include/ntsecapi.h:
	secur32: Implement LsaRegisterLogonProcess stub.

2007-08-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmsynth/regsvr.c:
	dmsynth: Remove 'recursive registry key delete' function.

	* dlls/dmusic/regsvr.c:
	dmusic: Remove 'recursive registry key delete' function.

2007-08-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Powerpoint XP expect a valid pointer on Win9x.

2007-08-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/tests/dsound.c:
	dsound: Increase dll refcount and disable thread calls.

2007-08-30  Alexandre Julliard <julliard@winehq.org>

	* server/debugger.c:
	server: Detaching from a process needs to continue all the pending events.

2007-08-30  Trent Waddington <trent.waddington@gmail.com>

	* dlls/user32/tests/msg.c, server/queue.c:
	server: Handle existing timer replacement when no window handle specified.

2007-08-30  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/gopher.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/tests/http.c, dlls/wininet/utility.c, include/wininet.h:
	wininet: Fix many wininet prototypes: the context is a DWORD_PTR now.

	* dlls/shlwapi/clist.c, tools/winapi/win32.api:
	shlwapi: Update win32.api to fix the winapi_check warnings.

	* dlls/shlwapi/clist.c:
	shlwapi: Move SHAddDataBlock() to the front and remove the forward declaration.

	* tools/winapi/win32.api:
	winscard: Update win32.api to fix the winapi_check warnings.

	* dlls/winmm/mmsystem.c, tools/winapi/win16.api:
	mmsystem: Better stick the the PSDK types.

	* dlls/winscard/winscard.c:
	winscard: Use quotes to include winscard.h. Fixes a winapi_check warning.

	* dlls/winhttp/main.c, include/Makefile.in, include/winhttp.h:
	winhttp: Add a skeleton winhttp.h and use it.

	* tools/winapi/win32.api:
	winhttp: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winapi_check: Assorted win32.api updates.

	* include/wintrust.h:
	wintrust: Add a prototype for WTHelperGetProvCertFromChain().

	* dlls/winmm/winmm.c, include/mmddk.h:
	winmm: Fix the mmTask*() prototypes.

	* include/mmddk.h:
	winmm: Make mmddk.h C++ compatible.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/string.c, include/msvcrt/stdlib.h:
	msvcrt: Add a prototype for _atoldbl() & co and declare _LDOUBLE & co in
	stdlib.h.

	* include/gdiplusflat.h:
	gdiplus: Add some extra prototypes.

	* tools/winapi/win32.api:
	gdiplus: Update win32.api to fix the winapi_check warnings.

2007-08-30  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Allocate our glyph metrics in a 128 index chunk sparse array.

2007-08-30  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/kernel32/path.c:
	kernel32: Fix memory leak in CopyFileW.

2007-08-29  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Add WS_EX_TOOLWINDOW style to popup windows.

2007-08-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Pin down all dlls imported by the main exe.

2007-08-29  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/user32/static.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/static.c:
	user32: Static controls should have a clipping region set while sending the
	WM_CTLCOLORSTATIC.

2007-08-30  Steven Edwards <winehacker@gmail.com>

	* dlls/gdi32/clipping.c, dlls/gdi32/dc.c, dlls/setupapi/setupx_main.c,
	  dlls/shell32/shell.c, dlls/version/resource.c, dlls/winedos/vxd.c,
	  dlls/wineps.drv/escape.c:
	Remove more unneeded wine 16bit header usage.

2007-08-29  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/visual.c, dlls/dsound/primary.c, dlls/msvcrt/mbcs.c,
	  dlls/setupapi/tests/parser.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/winspool.drv/info.c:
	Assorted spelling fixes.

2007-08-29  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Don't call ok() in child processes.

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: If the registry happens to be set up right, check that winedbg
	does not mess up the crashed process exit code (unfortunately it does).

2007-08-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Set initial wm hints on the desktop window too.

2007-08-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Constify some variables.

2007-08-29  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaLogonUser stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec, include/ntsecapi.h:
	secur32: Implement LsaGetLogonSessionData stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaFreeReturnBuffer stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaEnumerateLogonSessions stub.

	* dlls/secur32/Makefile.in, dlls/secur32/lsa.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32.spec:
	secur32: Implement LsaLookupAuthenticationPackage stub.

	* dlls/secur32/ntlm.c:
	secur32: Give a hint where to find ntlm_auth.

2007-08-29  Francois Gouget <fgouget@free.fr>

	* dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add prototypes for the Setup*Log*() functions. Better stick to the
	PSDK types.

	* dlls/cards/cards.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/toolbar.c, dlls/dpnhpast/main.c,
	  dlls/gdiplus/tests/graphics.c, dlls/gdiplus/tests/image.c,
	  dlls/gphoto2.ds/ui.c, dlls/kernel32/relay16.c,
	  dlls/msxml3/tests/domdoc.c, dlls/oleaut32/oleaut.c,
	  dlls/olepro32/olepro32stubs.c, dlls/quartz/main.c,
	  dlls/setupapi/stubs.c, dlls/shell32/tests/systray.c,
	  dlls/shlwapi/thread.c, dlls/user32/tests/class.c,
	  dlls/uxtheme/system.c, dlls/winedos/vga.c, dlls/wineps.drv/mkagl.c,
	  programs/taskmgr/graphctl.c, tools/winapi/msvcmaker:
	Assorted non-ANSI function declaration fixes (missing void).

	* programs/taskmgr/De.rc, programs/taskmgr/En.rc, programs/taskmgr/Ja.rc,
	  programs/taskmgr/Ko.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/No.rc, programs/taskmgr/Pl.rc,
	  programs/taskmgr/Tr.rc, programs/winefile/Ru.rc:
	taskmgr & winefile: Refer users to the GNU Lesser General Public License,
	not to the GPL.

	* dlls/gdiplus/graphics.c, dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplusimaging.h,
	  include/gdiplustypes.h:
	gdiplus: Add some missing or related prototypes and types.
	Fix the GdipDrawRectangles() prototype.

2007-08-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Tidy up the vbo removal from the strided data.

2007-08-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Accept rendering to sublevels with backbuffer orm.

2007-08-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Reject opengl accelerated blits with system memory surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Clear unused channels on R32F and R16F textures on readback.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Use 0/0/0 as normal if no normal is supplied.

2007-08-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dpnet/regsvr.c:
	dpnet: Remove 'recursive registry key delete' function.

2007-08-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Fix a compiler warning.

	* tools/wmc/wmc.c, tools/wmc/write.c:
	wmc: Constify some data.

	* tools/wrc/wrc.c:
	wrc: Constify some data.

	* tools/widl/typelib.c, tools/widl/widl.c:
	widl: Constify some data.

2007-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c:
	widl: Handle the size_is attribute on pointers.

2007-08-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Set the queue mask directly in get_message to avoid an extra server call.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: Message results should be stored as longs, not ints.

	* dlls/ntdll/cdrom.c:
	ntdll: On Mac OS, close the CDROM device before opening the parent.
	This is needed to allow ejecting DVD disks.

2007-08-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/time.c, dlls/ntdll/time.c:
	ntdll: Do not leave not initialized cached timezone information if a timezone
	doesn't have daylight saving rules.

2007-08-28  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Only fail printer dc creation if the printer has no builtin fonts
	and there are no TrueType fonts to download.

2007-08-29  Steven Edwards <winehacker@gmail.com>

	* dlls/user32/class.c, dlls/user32/clipboard.c, dlls/user32/listbox.c,
	  dlls/user32/msgbox.c, dlls/user32/nonclient.c, dlls/user32/text.c,
	  dlls/user32/winpos.c, dlls/user32/wsprintf.c:
	user32: Remove some no longer needed wine 16bit headers.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/x11drv_main.c:
	x11drv: Remove some no longer needed wine 16bit headers.

2007-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Fix a hdc check in InitAdapters.

2007-08-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/setupapi/virtcopy.c:
	setupapi: Constify some variables.

2007-08-28  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Test for out-of-bound src coordinates in GdiAlphaBlend.

2007-08-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Tool windows should not have WM decorations.

	* dlls/ntdll/file.c, server/fd.c:
	ntdll: Fixed file system name comparison on *BSD.

2007-08-29  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm: Report GCS_DELTASTART to help behavior with advanced IME aware applications.

2007-08-28  Juan Lang <juan.lang@gmail.com>

	* include/winerror.h:
	winerror.h: Add more error definitions.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Implement pfnCertificateTrust.

	* dlls/wintrust/softpub.c:
	wintrust: Save signers of a message in SoftpubLoadSignature.

	* dlls/wintrust/softpub.c:
	wintrust: Use a helper function to get a signer's cert info from a message.

	* dlls/wintrust/softpub.c:
	wintrust: Use pfnAddStore2Chain internally.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddCert2Chain.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddSgnr2Chain.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddStore2Chain.

	* include/wintrust.h:
	wintrust: Add missing definitions.

	* dlls/crypt32/chain.c:
	crypt32: Set trust status on root element in chain.

2007-08-28  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/tests/Makefile.in, dlls/cabinet/tests/fdi.c:
	cabinet: Add initial tests for FDI.

2007-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/opengl.c:
	gdi32: Print the function name in wglGetProcAddress.

	* dlls/winex11.drv/opengl.c:
	wgl: Degrade an ERR to a WARN.

2007-08-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Ask for enough RGB bits for pbuffers.

	* dlls/wined3d/device.c:
	wined3d: CreateAdditionalSwapChain bugfix.

2007-08-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dsound/regsvr.c:
	dsound: Remove 'recursive registry key delete' function.

	* dlls/dswave/regsvr.c:
	dswave: Remove 'recursive registry key delete' function.

2007-08-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/notepad.ico, programs/notepad/notepad_res.h,
	  programs/notepad/rsrc.rc:
	notepad: Add program icon.

2007-08-27  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Implemented SetRows.

2007-08-28  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Properly update the SmallBlockDepotCount when adding more blocks.

2007-08-27  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/register.c:
	wintrust: Use common memory functions.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust_main.c,
	  dlls/wintrust/wintrust_priv.h:
	wintrust: Move mem alloc functions to wintrust_main.c.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubLoadSignature.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Test and implement SoftpubLoadMessage.

	* dlls/imagehlp/integrity.c, include/imagehlp.h, include/wintrust.h:
	imagehlp: Move WIN_CERTIFICATE types to wintrust.h, and rename a type, to
	match PSDK.

2007-08-27  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Handle LPSTR in typelibs.

2007-08-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dxdiagn/regsvr.c:
	dxdiagn: Remove 'recursive registry key delete' function.

	* dlls/hhctrl.ocx/regsvr.c:
	hhctrl.ocx: Remove 'recursive registry key delete' function.

2007-08-27  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Don't assume the fake DC is the current DC.

2007-08-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Fix the spot light falloff == 0.0 case.

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/vertexshader.c:
	wined3d: Hold an internal reference on pixel and vertex shaders.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Read the old streamsource from the correct stateblock.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove the D3DTTFF_PROJECTED handling from drawStridedSlow.

	* dlls/wined3d/state.c:
	wined3d: Fix the half pixel correction.

2007-08-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/heap.c:
	ntdll: Make RtlCompactHeap more silent.

2007-08-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Store a few more locale values in the registry.

2007-08-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Make SetFormat work better with new behavior of dsound.

2007-08-24  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/Makefile.in, dlls/wintrust/softpub.c,
	  dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Test and implement SoftpubInitialize.

	* include/wintrust.h:
	wintrust: Add trust step error definitions.

	* include/wintrust.h:
	wintrust: Make crypt provider functions calling convention explicit.

2007-08-27  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Update position of default IME window.

2007-08-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/inseng/regsvr.c:
	inseng: Remove 'recursive registry key delete' function.

	* dlls/mlang/regsvr.c:
	mlang: Remove 'recursive registry key delete' function.

2007-08-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c,
	  dlls/dsound/primary.c:
	dsound: Update DSOUND_PrimarySetFormat to follow flags and return values
	more precisely.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Add a function to (re)open sound device to avoid code duplication.

2007-08-27  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/setupapi/parser.c, dlls/setupapi/setupapi_private.h:
	setupapi: Constify some variables.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	wined3d: Texture transform flag test.

2007-08-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Some texture transform fixes.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Texture transforms are disabled when drawing rhw vertices.

2007-08-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add some missing vertex state render states.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Non-primary stateblocks hold an internal reference on indexbuffers.

2007-08-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/secur32/dispatcher.c:
	secur32: Set the close on exec flag on the ntlm_auth pipes.

	* dlls/user32/painting.c, include/wine/server_protocol.h,
	  server/protocol.def, server/window.c:
	server: Store a separate flag for windows that need to be erased in WM_PAINT.
	This avoids the need to invalidate the window after WM_ERASEBKGND.

	* dlls/user32/tests/win.c, server/window.c:
	server: Moving a window should only expose the immediate parent.

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: SetWindowPos should erase the parent also for child moves.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Child windows don't get activated even when requested, so don't make
	them managed either.

2007-08-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Handle secondary hardware buffers more correctly.
	Only try hardware if asked for it, then return an error instead of
	falling back to software.

	* dlls/dsound/primary.c:
	dsound: Make sure waveOutClose is only called when using mmsystem.

2007-08-27  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: If composition string is reduced to 0 characters hide composition window.

2007-08-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/cabinet/cabinet.h,
	  dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Don't extract a file if DoExtract is FALSE.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/cdlg_No.rc:
	comdlg32: FindText: Fix text length in Norwegian template.

2007-08-25  Tijl Coosemans <tijl@ulyssis.org>

	* libs/wine/ldt.c:
	libwine: Use GDT entry for %fs segment on FreeBSD.

2007-08-24  Tijl Coosemans <tijl@ulyssis.org>

	* .gitignore, configure, configure.ac, loader/Makefile.in,
	  loader/freebsd.c:
	loader: Introduce FreeBSD loader.

2007-08-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec:
	winhttp: Add stub for WinHttpCheckPlatform.

2007-08-25  Dan Kegel <dank@kegel.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: iexplore needs to handle the -nohome option.

2007-08-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/hmac_md5.c, dlls/secur32/hmac_md5.h,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/thunks.c,
	  dlls/secur32/util.c:
	secur32: Constify some variables.

2007-08-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Count should not be 0-based.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/cdlg_No.rc:
	comdlg32: Fix text length in Norwegian ChooseFont.

2007-08-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Fix forgotten IPersistStorage vtable.

2007-08-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA/W: Avoid crash when not passed a DEVMODE structure.

2007-08-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c:
	wineoss: Update sound caps.

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Update sound caps.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Non-primary stateblocks also hold an internal reference to buffers.

2007-08-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Add the copied light to the right stateblock.

2007-08-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: BaseVertexIndex can be negative.

2007-08-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Return the correct return value in GetDepthStencilSurface.

	* dlls/wined3d/context.c:
	wined3d: Disable specular color when blitting.

2007-08-24  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c:
	wintrust: Test and correct alloc and free functions in
	WintrustLoadFunctionPointers.

	* dlls/crypt32/msg.c:
	crypt32: Partially implement CMSG_CTRL_VERIFY_SIGNATURE_EX.

2007-08-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Improve pixelformat selection code.

2007-08-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Override backbufferformat in window mode.

	* include/wine/wined3d_gl.h:
	wined3d: Add Geforce8 device ids.

2007-08-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/regsvr.c:
	msi: Remove 'recursive registry key delete' function.

	* dlls/msxml3/regsvr.c:
	msxml3: Remove 'recursive registry key delete' function.

2007-08-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/gphoto2.ds/gphoto2_Ko.rc:
	gphoto2.ds: Updated Korean resource.

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

2007-08-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Only use one fake context when building adapter info.

2007-08-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Don't use locale dependent string for testing.

2007-08-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use skip instead of trace.

2007-08-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.44.

----------------------------------------------------------------
2007-08-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/mbcs.c:
	msvcrt: Don't include mbstring.h to avoid conflicts with system headers.

2007-08-23  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	wineconsole: Implement GetConsoleWindow.

	* programs/wineconsole/curses.c, programs/wineconsole/dialog.c,
	  programs/wineconsole/user.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/winecon_user.h:
	wineconsole: Move window handle to inner_data structure.

2007-08-23  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/fdi.c,
	  dlls/cabinet/tests/extract.c:
	cabinet: Return the value of GetLastError if FDICopy fails.

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Append new file nodes to the front of the file list.

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Pass the session Error to FDICopy.

2007-08-23  Bryan DeGrendel <sirnuke@gmail.com>

	* dlls/mscoree/mscoree_main.c:
	mscoree: Return S_OK if mono runtime is found.

2007-08-23  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Implement and test _mbsbtype.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _ismbslead and _ismbstrail.

2007-08-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Forward AddPrinterDriver to AddPrinterDriverEx.

2007-08-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Constify some variables.

2007-08-23  Lei Zhang <thestig@google.com>

	* dlls/gphoto2.ds/ui.c:
	gphoto2: Add missing brackets.

	* dlls/gphoto2.ds/ds_ctrl.c:
	gphoto2: Import photos in the right order.

2007-08-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, dlls/user32/tests/msg.c, dlls/user32/tests/win.c,
	  dlls/user32/win.c, dlls/winex11.drv/dce.c:
	user32: IsChild must not consider the desktop window.

2007-08-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/painting.c, server/window.c:
	server: Validate the parents every time we paint a window instead of only
	on RDW_UPDATENOW.

2007-08-23  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, server/ptrace.c:
	server: Use thr_kill2 syscall to signal threads on FreeBSD.

2007-08-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/Makefile.in, programs/winetest/main.c:
	winetest: Put dll version information in the report.

2007-08-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/objsel/regsvr.c:
	objsel: Remove 'recursive registry key delete' function.

	* dlls/ole32/regsvr.c:
	ole32: Remove 'recursive registry key delete' function.

2007-08-23  Rob Shearman <rob@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCombineW for absolute URLs without slashes.

	* dlls/winex11.drv/window.c:
	winex11.drv: Don't activate the systray window when repositioning it.

	* include/mshtml.idl:
	include: Add some defines for mshtml service IDs.

	* include/ocidl.idl:
	include: Add a define for SID_SOleUndoManager.

	* include/hlink.idl:
	include: Add a define for SID_SHlinkFrame.

	* include/shlguid.h:
	include: Define some shell service IDs.

2007-08-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Strings can be NULL in AddPrinterDriverExA.

	* tools/wineprefixcreate.in:
	wineprefixcreate: Create spool/drivers directory for printer drivers.

2007-08-22  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/theme.c:
	winecfg: Suport color schemes from .theme format themes.

2007-08-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Change the way we report missing dlls.

2007-08-22  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c:
	advapi32: Obtain the process id locally.

	* dlls/advapi32/service.c:
	advapi32: Return an error if we try to start an already running service.

2007-08-21  Mikolaj Zalewski <mikolajz@google.com>

	* include/winioctl.h:
	include: Add some definitions to winioctl.h.

2007-08-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fake occlusion queries if the wrong context is active.

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Deal with multithreading in event queries.

	* dlls/wined3d/surface.c:
	wined3d: Refuse to ReleaseDC the wrong DC.

	* dlls/wined3d/surface.c:
	wined3d: Refuse to lock locked surfaces.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fall back to drawStridedSlow if fog coords are used.

2007-08-23  Lei Zhang <thestig@google.com>

	* dlls/gphoto2.ds/Makefile.in, dlls/gphoto2.ds/gphoto2_De.rc,
	  dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/gphoto2.ds/gphoto2_No.rc, dlls/gphoto2.ds/gphoto2_Pl.rc,
	  dlls/gphoto2.ds/resource.h, dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Add preview button and ability to disable import GUI.

2007-08-23  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: Send INTERNET_STATUS_HANDLE_CLOSING when object is being destroyed
	as native does.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Separate connection closing from object destruction.

	* dlls/wininet/internet.h:
	wininet: Rename WININET_object_destructor to a more general
	WININET_object_function.

2007-08-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11: Get rid of get_context_from_GLXContext.

	* dlls/winex11.drv/opengl.c:
	winex11: Properly update the hdc in the GL context.

2007-08-22  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbsinc/_mbsninc.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Don't test codepage 20932.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbccpy, _mbsncpy and _mbsnbcpy.

2007-08-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c:
	advpack: Formalize the SESSION struct.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c:
	cabinet: Formalize the SESSION struct.

2007-08-22  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Don't display full path in save changes dialog.

	* programs/wordpad/wordpad.c:
	wordpad: Don't show full path in caption.

2007-08-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/des.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Constify some variables.

2007-08-22  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/regsvr.c:
	oleaut32: Remove 'recursive registry key delete' function.

	* dlls/quartz/regsvr.c:
	quartz: Remove 'recursive registry key delete' function.

2007-08-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add always the Win9x and the NT printerdriver.

2007-08-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: Fix wglGetCurrentReadDCARB bugs.

2007-08-22  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/main.c, dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement CryptVerifyMessageSignature.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and correct verifying the signature of a valid signed message.

	* dlls/advapi32/crypt.c, dlls/advapi32/tests/crypt.c:
	advapi32: Add more tests for CryptVerifySignatureW, and correct its parameter
	checking.

2007-08-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Transparantly fall back to software mode if hardware mode is unavailable.

2007-08-22  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/printdrv.c:
	gdi32: Quote the printer name prior to passing it to the shell.

2007-08-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/atl/Makefile.in, dlls/atl/registrar.c:
	atl: Replace SHDeleteKeyW with RegDeleteTreeW and get rid of the import
	of shlwapi.

2007-08-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dc.c, dlls/gdi32/gdiobj.c:
	gdi32: Fix a few more places that use the wrong get/release function for DCs.

2007-08-21  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: Test encoding a signed message with a valid public key.

	* dlls/crypt32/msg.c:
	crypt32: Explicitly terminate loop when a matching signer cert is found.

	* dlls/crypt32/msg.c:
	crypt32: Only free allocated handles.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement CryptGetMessageSignerCount.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c:
	crypt32: Implement CryptGetMessageCertificates.

	* dlls/crypt32/encode.c:
	crypt32: Trace encoding and decoding public keys on crypt channel.

2007-08-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Flesh out the stub for IOCTL_STORAGE_GET_DEVICE_NUMBER.

	* dlls/user32/hook.c, server/hook.c:
	user32: Thread-local hooks need a module if they don't belong to the current
	process.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Use the correct create disposition in fdi_open.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c, dlls/cabinet/fdi.c:
	cabinet: Use the proper fcntl defines in the FDI_OPEN calls.

2007-08-21  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/tests/extract.c:
	cabinet: Formalize the SESSION struct and add more tests of its members.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Store window rect in the registry.

	* programs/wordpad/wordpad.c:
	wordpad: Clear formatting before opening a file.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Prompt for format when selecting new file.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Handle different formats on open/save.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add recent file list.

2007-08-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Attach the correct surface the the fbo.

	* dlls/wined3d/device.c:
	wined3d: Restore a line that got lost.

2007-08-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/time.c:
	ntdll: Reimplement TIME_GetBias using new time zone code.

	* include/wine/test.h:
	include/wine/test.h: Use appropriate type.

2007-08-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c, dlls/dsound/primary.c:
	dsound: Move assignment of DSBCAPS_LOC to primary buffer creation time.

2007-08-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/om.c:
	ntdll/tests: Fix typos.

	* dlls/gdi32/gdiobj.c:
	gdi32: Fix possible NULL pointer dereference (Coverity).

	* dlls/gdi32/dc.c:
	gdi32: Fix possible NULL pointer dereference (Coverity).

2007-08-22  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix reference count on internet handle for asynchronous
	InternetReadFileEx call.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Don't send INTERNET_STATUS_HANDLE_CLOSING when closing handle opened
	with InternetOpen for HTTP connection.

2007-08-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Constify some variables.

2007-08-21  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement verifying a decoded signed message's signature.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement getting the computed hash from a decoded signed
	message.

	* dlls/crypt32/msg.c:
	crypt32: Update a hash message's hash handles when decoding it.

2007-08-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Move signed message data functions together.

	* dlls/crypt32/msg.c:
	crypt32: Make constructing handles a member of signed msg data.

	* dlls/crypt32/msg.c:
	crypt32: Use a helper function to allocate signer handles.

	* dlls/crypt32/msg.c:
	crypt32: Don't keep an unneeded copy of the crypto provider for each signer.

	* dlls/crypt32/msg.c:
	crypt32: Separate construction of signer handles from signer info.

	* dlls/crypt32/msg.c:
	crypt32: Add a helper function to construct a signer handles structure.

	* dlls/crypt32/msg.c:
	crypt32: Add helper function to update signed message data.

	* dlls/crypt32/msg.c:
	crypt32: Make more functions members of signed message data, rather than message.

	* dlls/crypt32/msg.c:
	crypt32: Make updating a hash a member of signed message data, not signed
	message.

	* dlls/crypt32/msg.c:
	crypt32: Make a helper function to a free a signed message's handles.

	* dlls/crypt32/msg.c:
	crypt32: Use signed message data type for decoded signed messages.

	* dlls/crypt32/msg.c:
	crypt32: Make a signed message data type.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement verifying the hash of a decoded hash message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a couple tests that show you can't get the hash from an encoded
	hash message, and fix encoded hash messages to match.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a mostly stub control function for decode messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a default message control function pointer.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for CryptMsgControl.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test an encoded signed message with a cert with a public key.

2007-08-21  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix compile with old input.h that missing input_absinfo.

2007-08-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/time.c:
	kernel32: Restore check for StandardDate.wMonth being 0.

	* dlls/msvcrt/time.c:
	msvcrt: Restore error handling code in localtime.

2007-08-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Fix a null pointer dereference.

2007-08-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d/vertexdeclaration: Return when out of memory (Coverity).

	* dlls/dnsapi/tests/Makefile.in, dlls/dnsapi/tests/name.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi/tests: No need to dynamically load dnsapi anymore.

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Skip some not implemented functions and add a few skip's.

	* dlls/msi/tests/install.c:
	msi/tests: Be verbose when GetProcAddress fails.

2007-08-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/setupapi/install.c:
	setupapi: Use NtDeleteKey instead of an invalid RegDeleteKeyW.

2007-08-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Update the wm hints also when mapping a previously zero-size window.

	* dlls/gdi32/bitblt.c, dlls/gdi32/bitmap.c, dlls/gdi32/brush.c,
	  dlls/gdi32/clipping.c, dlls/gdi32/dc.c, dlls/gdi32/dib.c,
	  dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/mapping.c, dlls/gdi32/mfdrv/init.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/painting.c, dlls/gdi32/palette.c, dlls/gdi32/path.c,
	  dlls/gdi32/pen.c, dlls/gdi32/printdrv.c:
	gdi32: Add separate functions for releasing/freeing DCs to replace the standard
	GDI ones.
	This should make it possible to use a different locking mechanism for DCs.

2007-08-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: Implement range based fog and advertize it correctly.

2007-08-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c:
	wined3d: fogstart == fogend means full fog.

2007-08-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/wined3d/directx.c, include/d3d9caps.h:
	d3d9: Some caps fixes.

2007-08-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Use skip instead of trace.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Do GetModuleHandle only once and add a few skip's.

2007-08-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test that some functions depends on locale codepage, not the one set
	by _setmbcp.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbclen/_mbslen.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbsnextc.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Implement _ismbblead/_ismbbtrail using _mbctype (with tests).

	* dlls/msvcrt/locale.c, dlls/msvcrt/main.c, dlls/msvcrt/mbcs.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Fill _mbctype table in _setmbcp.

2007-08-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/dsound/primary.c:
	dsound: Fix a compiler warning.

2007-08-20  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/setupapi/fakedll.c:
	setupapi: If needed create directories for fake dlls.

2007-08-20  Lei Zhang <thestig@google.com>

	* tools/wine.inf:
	wine.inf: Add twain_32.dll to the list of fake dlls.

2007-08-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Don't try to create non existing device (/dev/js*).

2007-08-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Wait for spawned processes to finish.

2007-08-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/tests/time.c, dlls/msvcrt/time.c:
	msvcrt: Route mktime and localtime to glibc.

2007-08-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/time.c:
	kernel32: Fix test case failures for time zones with absolute transition dates.

2007-08-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/time.c, dlls/ntdll/time.c, include/winternl.h:
	ntdll: Detect current time zone settings.

2007-08-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Check acquired flag instead of fd.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use correct data structure for EVIOCGABS instead of an array.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Remove redundant declaration.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't try to create non existing device.

2007-08-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Reinstall the internal reference on vertex buffers.

2007-08-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Fix some alpha channels in formats.

2007-08-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: FIX D3DBLEND_BOTHSRCALPHA and BLEND_BOTHINVSRCALPHA.

2007-08-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Remove a debug hack.

2007-07-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: printdlg: Fix number display in PrintDlgW().

2007-08-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarCat and VarAnd tests a bit better if there is no I8
	and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarImp tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarIdiv tests if there is no I8 and/or UI8 support.

2007-08-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Don't use 64bit gl types.

	* dlls/winex11.drv/opengl.c:
	wgl: Cleanup pixelformat initialization code.

2007-08-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the trace code.

2007-08-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: UBYTE4 data shouldn't be normalized.

2007-08-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c:
	user32: Fix change-drive in Win3.1-style file open dialog.

	* dlls/user32/dialog.c:
	user32: Fix crash while dir-navigating in Win3.1-style file open dialog.

2007-08-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Remove 'recursive registry key delete' function.

2007-08-19  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/regsvr.c:
	shell32: Remove 'recursive registry key delete' function.

2007-08-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c, dlls/wineoss.drv/dsrender.c:
	dsound: Handle failing of IDsDriver_CreateSoundBuffer better.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Report card name in volume control fixme.

2007-08-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	winex11: Force a window to managed mode when it is activated.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Switch windows to managed mode in SetWindowPos instead of at creation
	time.

	* dlls/user32/tests/msg.c:
	user32/tests: Allow WM_MOUSEACTIVATE in the mouse hover test for compatibility
	with X11 focus policy.

	* dlls/user32/tests/msg.c, dlls/user32/tests/win.c:
	user32/tests: Use flush_events more consistently in the message tests.

	* dlls/ntdll/server.c:
	ntdll: Return an error instead of dying in wine_server_call if the input buffer
	is invalid.

	* dlls/winex11.drv/window.c:
	winex11: Don't select for StructureNotify events on unmanaged windows.

	* dlls/winex11.drv/mouse.c:
	winex11: Don't set the cursor on the desktop window since it's managed by
	another process.

	* dlls/winex11.drv/window.c:
	winex11: Move setting of the initial wm hints to a separate function.

2007-08-18  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mshtml/htmltextcont.c:
	mshtml/htmltextcont: Initialize value (Coverity).

2007-08-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/commctrl.c:
	comctl32: Create the manifest directory if needed (spotted by Dan Kegel).

2007-08-19  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Handle case where no printer is configured.

2007-07-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix save changes prompt for the open file dialogue.

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add bullet points button.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add bullet points option.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix error handling when saving empty files.

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Fix formatbar for native comctl32/XP.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Display error box when richedit loading fails.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add search functionality.

2007-07-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PrintDlg: Set PD_SELECTION on return.

2007-08-19  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shlwapi/url.c:
	shlwapi: Take sizeof(WCHAR) into account when allocating Unicode string.

2007-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Remove	'recursive registry key delete' function.

2007-08-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Constify some variables.

2007-08-17  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, programs/iexplore/Makefile.in, programs/iexplore/version.rc:
	iexplore: Add VERSIONINFO resource.

2007-08-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/collectionstore.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/filestore.c, dlls/crypt32/provstore.c,
	  dlls/crypt32/regstore.c, dlls/crypt32/store.c:
	crypt32: Don't store the crypto provider when it isn't needed.

	* dlls/crypt32/filestore.c:
	crypt32: Don't store redundant copy of crypto provider in file store.

	* dlls/crypt32/regstore.c:
	crypt32: Don't store redundant copy of crypto provider in reg store.

	* dlls/crypt32/store.c:
	crypt32: Pass crypto provider and appropriate flags when opening PKCS messages,
	and don't store a redundant copy of the crypto provider in message stores.

2007-08-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Fix some gl type bugs.

2007-08-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Be a bit more verbose when doing wglGetProcAddress.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarDiv tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarAnd tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarCat tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix a few typos.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Add a few skip's to the vartype tests.

	* dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/olepicture.c,
	  dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Use GetModuleHandle and add a few skip's.

2007-08-16  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: __mb_cur_max is not updated in _setmbcp (with testcase) and should
	not be used in _ismbblead.

2007-08-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a render_texture regression. Only enable GLX_ATI_render_texture when
	the ati extension is around.

2007-08-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Use GetModuleHandle and check only once for availability of
	some functions.

2007-08-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/process.c:
	kernel32: Set USERNAME environment variable.

2007-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::compareEndPoints implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::select implementation.

	* dlls/mshtml/htmltextcont.c:
	mshtml: Added get_scrollWidth and get_scrollHeight implementation.

	* dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h:
	mshtml: Don't create element object for document node.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::put_text implementation.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/selection.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Store HTMLDocument reference in HTMLTxtRange object.

2007-08-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Dynamically load WGL functions.

2007-08-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: GL_SRC_ALPHA_SATURATE is supported as src blend param only.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Catch transformed position data that appears at offset 0.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix R32F and R16F.

	* dlls/wined3d/basetexture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Simplify IWineD3DBaseTextureImpl_ApplyStateChanges.

	* dlls/wined3d/basetexture.c:
	wined3d: Enable WINED3DSAMP_BORDERCOLOR.

2007-08-16  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/filestore.c, dlls/crypt32/store.c:
	crypt32: Move file store to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/regstore.c, dlls/crypt32/store.c:
	crypt32: Move registry stores to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/provstore.c, dlls/crypt32/store.c:
	crypt32: Move provider stores to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/collectionstore.c,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Move collection stores to a separate file.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Move cert store definitions to header.

	* dlls/crypt32/store.c:
	crypt32: Where possible, pass a pointer rather than an offset, it's less
	confusing.

	* dlls/crypt32/store.c:
	crypt32: Use externed vars for context variables.

	* dlls/crypt32/store.c:
	crypt32: Use public APIs to empty a store.

	* dlls/crypt32/store.c:
	crypt32: Use public type and APIs for memory stores wherever possible.

	* dlls/crypt32/store.c:
	crypt32: Remove some unnecessary casts.

	* dlls/crypt32/store.c:
	crypt32: Rename a confusing type.

2007-08-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Properly increment sequence number for X only movement.

2007-08-16  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Listview fails to add a column if mask=0.

2007-08-16  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/style.c, dlls/riched20/undo.c,
	  dlls/riched20/wrap.c, dlls/riched20/writer.c:
	riched20: Constify some variables.

2007-08-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Allocate the profile buffer dynamically to make sure it's large
	enough.

2007-08-16  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dxguid/dxguid.c,
	  dlls/wineoss.drv/audio.c:
	dxguid: Remove dsdriver.h from imports.

2007-08-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc:
	programs/cmd: Do not use hardcoded constants when corresponding macro is
	already defined.

2007-08-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/avifil32/regsvr.c:
	avifil32/regsvr: Replace recursive delete functions by RegDeleteTree.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Skip a test when not properly logged in on win9x.

	* dlls/wininet/tests/url.c:
	wininet/tests: Fix test failures for wininet.dll that comes with IE7.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Use GetModuleHandle instead of LoadLibrary.

2007-08-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/event.c:
	winex11: Don't try to activate the desktop window on take focus.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Store wm hints in the window data instead of fetching them when needed.

2007-08-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPrinterDriverExA.

2007-08-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPrinterDriverExW.

2007-08-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/selection.c:
	mshtml: Store HTMLDocument reference in HTMLSelectionObject.

2007-08-15  Marcus Meissner <meissner@suse.de>

	* dlls/kernel32/tests/pipe.c:
	kernel32: Initialize variable to a known bad value.

2007-08-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: printdlg: Set/Load paper orientation in PageSetupDlgW.

2007-08-16  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Call IInternetProtocolSink_Release and ReleaseStgMedium in HttpProtocol
	where native does.

	* dlls/urlmon/http.c:
	urlmon: Call IInternetProtocolSink_AddRef in HttpProtocol where native does
	(but just once).

2007-08-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/wininet/tests/http.c:
	wininet: A small test for HttpQueryInfoA.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Make HttpQueryInfo[AW] work for lpBuffer == NULL and len > 0.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Support HTTP_QUERY_RAW_HEADER_CRLF|HTTP_QUERY_FLAG_REQUEST_HEADERS.

2007-08-15  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/crypt.c:
	wintrust: Remove redundant check of pbSignedDataMsg (Coverity).

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c:
	crypt32: Free default chain engine.

2007-08-15  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/stringformat.c, dlls/gdiplus/tests/stringformat.c:
	gdiplus: Fix default value of StringTrimmingCharacter.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/stringformat.c:
	gdiplus/tests: Added GpStringFormat tests.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus/tests: Added GdipAddPathLineI test.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use DrawText instead of TabbedTextOut.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle empty layout rectangle in GdipDrawString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle empty layout rectangle in GdipMeasureString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle StringFormatFlagsNoWrap in GdipMeasureString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle StringFormatFlagsNoWrap in GdipDrawString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed 2 GdipDrawString bugs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipMeasureString.

2007-08-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/string.c:
	riched20: Constify some variables.

2007-08-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix WINED3DFMT_A4L4.

2007-08-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Reinstall the internal reference on the current index buffer.

	* dlls/wined3d/device.c:
	wined3d: Release the stateblock before destroying the swapchain.

2007-08-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Do not advertize A8R3R3B2 support.

	* dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT_R3G3B2.

2007-08-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shell32/tests/shellpath.c, dlls/shell32/tests/string.c:
	shell32/tests: Use GetModuleHandle instead of LoadLibrary.

2007-08-15  Lei Zhang <thestig@google.com>

	* dlls/riched20/caret.c:
	riched20: Add missing scroll bar update.

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c,
	  dlls/riched20/wrap.c:
	riched20: Properly calculate control display height.

2007-08-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for playing dsound capture buffer.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for opening/closing dsound capture buffer.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add IDsCaptureDriverBuffer stub.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Implement IDsCaptureDriverImpl_Open.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.h,
	  dlls/winealsa.drv/dscapture.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c:
	winealsa: Add initial dscapturedriver stub.

	* dlls/dsound/capture.c:
	dsound: Handle failing of obtaining IDsDriverNotify.

2007-08-15  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Add some test for EM_GETTEXTLENGTHEX and fix the single line edit
	cases.

2007-08-15  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	printui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	ntprint: Update win32.api to fix the winapi_check warnings.

	* dlls/ntoskrnl.exe/ntoskrnl.c, include/ddk/wdm.h, tools/winapi/win32.api:
	ntoskrnel.exe: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/ntdll/actctx.c, tools/winapi/win32.api:
	ntdll: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	nddeapi: Update win32.api to fix the winapi_check warnings.

2007-08-15  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Remove a redundant RegSetValueExA() call.

2007-08-15  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	mshtml: Update win32.api to fix the winapi_check warnings.

2007-08-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/input.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/monitor.c, dlls/user32/tests/msg.c:
	user32/tests: Run tests on win95 again.

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Run tests on win95 again.

2007-08-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsevents.c:
	mshtml: Call setup_nswindow on load event.

2007-08-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/wowthunk.c:
	kernel32: Return error code if WOWCallback16Ex of a real-mode function failed.

2007-08-14  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/stringformat.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDeleteStringFormat.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetStringFormatLineAlign/GdipGetStringFormatLineAlign.

	* dlls/gdiplus/graphics.c:
	gdiplus: Allow null-terminated strings in GdipDrawString.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineBlend stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetStringFormatHotkeyPrefix/GdipGetStringFormatHotkeyPrefix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetStringFormatTrimming/GdipSetStringFormatTrimming.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetStringFormatAlign/GdipSetStringFormatAlign.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathLineI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetTextRenderingHint/GdipGetTextRenderingHint.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/graphicspath.c, include/gdiplusflat.h:
	gdiplus: Added GdipAddPathBezierI.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/stringformat.c,
	  include/gdiplusflat.h:
	gdiplus: Added string format constructor.

	* dlls/gdiplus/font.c, dlls/gdiplus/tests/font.c:
	gdiplus: Save elements of font's style.

	* dlls/gdiplus/tests/font.c:
	gdiplus: Added more font tests.

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipDeleteFont.

	* dlls/gdiplus/font.c, dlls/gdiplus/tests/font.c:
	gdiplus: Fixed conformance of font constructor.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/font.c:
	gdiplus: Added font tests.

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipGetLogFontW.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added GdipDrawString.

2007-08-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/tests/string.c:
	msvcrt/tests: Remove wrong FreeLibrary and fix typo's.

	* dlls/crypt32/tests/main.c, dlls/crypt32/tests/sip.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Use GetModuleHandle and skip.

2007-08-14  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Set return value on exception.
	Spotted by Paul Vriens.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Initial implementation of CertGetCertificateChain and
	CertFreeCertificateChain.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add a chain test with real certificates.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add initial tests for certificate chains.

	* dlls/crypt32/chain.c:
	crypt32: Set output chain to NULL.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Add stub for CertFreeCertificateChain.

	* dlls/crypt32/cert.c, dlls/crypt32/chain.c:
	crypt32: Move CertGetCertificateChain to chain.c.

	* dlls/crypt32/store.c:
	crypt32: Fix typo.

	* dlls/crypt32/store.c:
	crypt32: Fix typo.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Forward WinVerifyTrustEx to WinVerifyTrust.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperProvDataFromStateData.

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperGetProvCertFromChain.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperGetProvSignerFromChain.

2007-08-14  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tooltips.c:
	comctl32: Fix tooltips uninitialized variables plus wrong positioning.

2007-08-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Constify some variables.

2007-08-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Make window.external visible for JavaScript code.

	* dlls/mshtml/nsio.c:
	mshtml: Return wine: URI for protocols handled by MSHTML.

	* dlls/mshtml/nsio.c:
	mshtml: Check use_wine_url in nsIURI::GetAsciiSpec.

	* dlls/mshtml/nsio.c:
	mshtml: Reduce debug traces.

2007-08-14  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: In SHNameTranslate use the right part of the string for sizing.

2007-08-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Reorganize stateblock::capture a bit.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Restructure Stateblock::apply a bit.

2007-08-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c, dlls/d3d9/stateblock.c, dlls/ddraw/device.c,
	  include/wine/wined3d_types.h:
	wined3d: Add a wined3d private WINED3DSBT_RECORDED.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize float constants in stateblocks.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize sampler states in stateblocks.

2007-08-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix a field in the wined3d header.

2007-08-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/winedos/himem.c:
	winedos: Make UMB executable.

2007-08-14  Peter Verthez <peter.verthez@advalvas.be>

	* dlls/user32/listbox.c, dlls/user32/tests/listbox.c:
	user32: LB_SETITEMDATA should return 1 on success, not 0.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Load wglGetProcAddress from opengl32.dll instead of gdi32.dll when
	USE_WIN32_OPENGL is defined.

	* include/wine/wined3d_gl.h:
	wined3d: Use WINE_GLAPI for setting the calling convention needed for OpenGL.

2007-08-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: GDI support is not advertised with double buffering.

2007-08-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/cabinet/tests/extract.c:
	cabinet/tests: Use GetModuleHandleA instead of LoadLibraryA.

	* dlls/advapi32/tests/crypt_lmhash.c:
	advapi32/tests: Use GetModuleHandleA and skip.

2007-08-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix dead zone calculation.
	Based on patch by Artur Szymiec.

2007-08-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Use a valid parameter array when demangling a template name.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: wined3d doesn't depend on OpenGL libs anymore.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/Makefile.in, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Dynamically load OpenGL.

2007-08-13  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SPC indirect data decoding.

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SPC indirect data encoding.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement SPC PE image encoding.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement SPC PE image decoding.

2007-08-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/para.c:
	riched20: Constify some variables.

2007-08-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/global16.c:
	kernel: Allocate global memory with execute permission.

2007-08-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Proper stereo / double buffering support for ChoosePixelFormat.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/wined3d_main.c:
	wined3d: Don't use ENTER_GL/LEAVE_GL on systems without winex11.drv.

	* dlls/winex11.drv/opengl.c, include/wingdi.h:
	wgl: Recognize Vista's PFD_SUPPORT_COMPOSITION flag.

2007-08-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Make tests run again on win95.

	* dlls/ntdll/tests/om.c:
	ntdll/tests: Make tests run again on win95.

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/msg.c:
	crypt32/tests: Make tests run again on win95.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Make tests run again on win95.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make tests run again on win95.

2007-08-13  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCreateFontFromLogfontA.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/font.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added font constructor.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawRectangles.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipScaleWorldTransform.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipRotateWorldTransform.

	* dlls/gdiplus/graphics.c:
	gdiplus: Better handle UnitPixel pen width.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetCompositingMode/GdipGetCompositingMode.

2007-08-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/commctrl.c, tools/wine.inf:
	comctl32: Create a manifest file at dll registration time.

	* dlls/ntdll/actctx.c:
	ntdll: Fixed the prototype of the open_nt_file wrapper.

2007-08-13  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/cert.c:
	crypt32: Test finding the issuer of a certificate.

	* dlls/crypt32/cert.c:
	crypt32: Avoid a memory allocation when decoding the subject key identifier
	extension.

	* dlls/crypt32/cert.c:
	crypt32: Add missing break.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Test authority key identifier with a multi-byte id to show that its
	byte-order is swapped and fix encoding and decoding it.

2007-08-13  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tooltips.c:
	comctl32: Fix missing tooltips.

2007-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize texture stage state applying.

2007-08-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize bool and int pixel shader constants.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize bool and int vs constants.

2007-07-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Do not copy the saved states structure into the primary stateblock.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize transform state in stateblocks.

2007-08-13  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/wined3d/device.c:
	wined3d: Activate context before applying fbo state.

2007-08-13  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Pass the proper DeviceName to ChangeDisplaySettings.

2007-08-13  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Fix 2 failing tests for restricted users.

2007-08-13  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and
	InternetQueryDataAvailable in HttpProtocol_Continue.

2007-08-12  Misha Koshelev <mk144210@bcm.edu>

	* programs/winebrowser/main.c:
	winebrowser: Add support for XTYP_REQUEST in DDE callback.

2007-08-12  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Set proper pixel format flags.

2007-08-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Re-enable GLX_ATI_render_texture support.

2007-08-10  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/advpack/tests/advpack.c, dlls/setupapi/parser.c,
	  dlls/setupapi/tests/parser.c:
	setupapi: Remove duplicate backslashes on dirids.

2007-08-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Proper CheckDeviceType / CheckDepthStencilMatch support.

	* dlls/wined3d/context.c:
	wined3d: Check the results of SetPixelFormat.

	* dlls/wined3d/utils.c:
	wined3d: Add more pixelformats to getColorBits.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the proper depth stencil format.

	* dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT D16/L16 bugs in the pixelformat table.

2007-08-12  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/tests/http.c:
	wininet/tests: Test that for an open HTTP connection InternetQueryDataAvailable
	succeeds or returns ERROR_IO_PENDING.

	* dlls/wininet/internet.c, dlls/wininet/netconnection.c:
	wininet: InternetQueryDataAvailable does not return ERROR_NO_MORE_FILES when
	no more HTTP data is available.

	* dlls/wininet/internet.c:
	wininet: Don't peek data in InternetQueryDataAvailable if there is no more to
	be expected.

2007-08-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/tests/install.c:
	msi: Allocate 1 byte more buffer.

2007-08-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/caret.c, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Constify some variables.

2007-08-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/systemclock.c, dlls/quartz/tests/referenceclock.c:
	quartz: Fix IReferenceClock::GetTime() implementation for system clock.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/referenceclock.c:
	quartz: Add test for IReferenceClock.

2007-08-10  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/regedit/regproc.c:
	regedit: Fix importing of .reg hex.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Strip single quotes (with tests) on reg keys.

2007-08-12  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Redirection for external programs was broken by the conversion
	to unicode.

	* dlls/user32/menu.c:
	user32: Fix regression in alt, then right processing with eg wines notepad.

	* dlls/user32/menu.c:
	user32: Allow alt+space to highlight system menu.

2007-08-11  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Correctly handle overlapping source and destination regions on
	the same DIB when copying DIBs client-side.

2007-08-12  Marcus Meissner <marcus@jet.franken.de>

	* programs/cmd/builtins.c:
	cmd.exe: WCMD_for is only for files.

	* dlls/user32/msgbox.c:
	user32: Initialize MONITORINFO.cbSize.

2007-08-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/oleobj.c:
	mshtml: Added ICustomDoc stub implementation.

2007-08-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::collapse implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::duplicate implementation.

	* dlls/mshtml/main.c:
	mshtml: Make get_typeinfo thread safe.

	* dlls/mshtml/selection.c:
	mshtml: Use GetIsCollapsed in IHTMLSelectionObject::get_type.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_SELECTALL implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Don't mess with gecko specific protocols.

	* dlls/urlmon/Makefile.in, dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/umon.c:
	urlmon: Wrap IBindCtx in CreateAsyncBindCtxEx.

2007-08-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user32/winproc.c:
	user32: Call a 16-Bit winproc again.

2007-07-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize render states in the stateblock.

2007-08-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Remove primary stateblock fixme.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove stateblock::set.*.

	* dlls/wined3d/stateblock.c:
	wined3d: Remove ugly code from stateblock init.

	* dlls/wined3d/device.c:
	wined3d: Remove outdated TODO in D3DDevice::SetTextureStageState.

2007-08-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for the RemoveFiles standard action.

2007-08-10  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/image.c:
	gdiplus: Fix test to pass in Windows.

2007-08-10  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/tests/asn.c:
	wintrust: Add tests for encoding and decoding SPC PE image data.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement encoding SPC links.

	* dlls/wintrust/Makefile.in, dlls/wintrust/asn.c,
	  dlls/wintrust/tests/asn.c:
	wintrust: Implement decoding SPC links.

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/asn.c:
	wintrust: Add tests for encoding/decoding SPC links.

	* include/wintrust.h:
	wintrust: Add missing definitions.

	* dlls/wintrust/Makefile.in, dlls/wintrust/asn.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Add stubs for SPC_LINK and SPC_PE_IMAGE encoding/decoding.

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c:
	wintrust: Implement CryptSIPGetSignedDataMsg.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Improve tracing when builtin function isn't available.

	* dlls/crypt32/encode.c:
	crypt32: Use helper functions to simplify CryptEncodeObject and
	CryptEncodeObjectEx.

	* dlls/crypt32/decode.c:
	crypt32: Validate parameters better in CryptDecodeObject.

	* dlls/crypt32/decode.c:
	crypt32: Use helper functions to simplify CryptDecodeObject and
	CryptDecodeObjectEx.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Ex encode/decode functions should call non-Ex versions if no Ex
	version is available.

2007-08-10  Hernan Rajchert <hrajchert@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fixed error message when glDrawElement fails.

2007-08-10  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.43.

----------------------------------------------------------------
2007-08-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/snmpapi/tests/util.c:
	snmpapi/tests: Be more verbose on missing functions.

	* dlls/msi/tests/install.c, dlls/msi/tests/msi.c, dlls/msi/tests/source.c:
	msi/tests: Run tests again on win98 and NT4.

2007-08-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Make sure onscreen pixelformats are on top in wglChoosePixelFormatARB.

2007-08-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c, dlls/user32/winproc.c:
	user32: CallWindowProc[AW] for mismatched built-in winprocs should take into
	account if the window is Unicode.

2007-08-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for EnumPrinterDrivers.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: More tests for the member lStructSize.

2007-08-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipConvertToEmfPlus stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipTranslateWorldTransform.

	* dlls/gdiplus/image.c:
	gdiplus: Better error checking in GdipBitmapLockBits.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetTextureTransform stub.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated GdipCloneBrush, GdipDeleteBrush.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateTextureIA.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawImageRectRect.

	* dlls/gdiplus/image.c:
	gdiplus: Replace GetDC(0) with CreateCompatibleDC(0).

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetImageGraphicsContext.

2007-08-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Add simple tests for PrintDlgA.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Return defaults for hDevMode and hDevNames.

2007-08-09  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't add spaces to the beginning of the wglExtensions list.

2007-08-09  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/advpack/advpack.c:
	advpack: Show fixme when advpack fails to prompt user for directory.

	* dlls/setupapi/tests/parser.c:
	setupapi: Add test to show setupapi does not handle single quotes.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Wait when launching GUI pgms in batch.

2007-08-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Use a safer, more compliant method to parse extension strings.

2007-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Add better pixelformat selection code for pbuffers.

2007-08-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stub for I_CryptGetAsn1Decoder.

	* dlls/crypt32/cert.c, dlls/crypt32/sip.c:
	crypt32: Trace more return values.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Use real certificates to test finding subject certificates, and
	correct finding them.

	* dlls/crypt32/oid.c:
	crypt32: Correct loading OID functions from the registry.

2007-08-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Implement the UnpublishFeatures standard action.

2007-08-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Process caller supplied headers after inserting connection and
	authorization headers, not before.

	* dlls/wininet/internet.c:
	wininet: Implement INTERNET_OPTION_CALLBACK in InternetSetOption{A, W}.

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Also set last error on NULL first parameter in InternetCreateUrl{A, W}.

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Don't crash on NULL first or last parameter in InternetCrackUrlW.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/debugger.c:
	kernel32/tests: Test the debugger startup and crashed processes exit code.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	pdh: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wing32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mprapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mapi32: Update win32.api to fix the winapi_check warnings.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: '0x' is redundant with the '#' format modifier.

	* tools/winapi/win32.api:
	userenv: Update win32.api to fix the winapi_check warnings.

	* dlls/userenv/userenv_main.c, include/Makefile.in, include/userenv.h:
	userenv: Add a skeleton userenv.h header and use it.

	* dlls/wined3d/wined3d_main.c:
	wined3d: Add a '\n' to a Wine trace.

	* tools/winapi/win32.api:
	kernel32: Update win32.api to fix the winapi_check warnings.

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/visual.c:
	d3d8/tests: DXGetErrorString8() prints 'Unknown' for too many hresults which
	makes diagnosis impossible. So print the raw code instead.

2007-08-09  Alexandre Julliard <julliard@winehq.org>

	* server/timer.c:
	server: Fixed handling of a relative start time for a timer.

2007-08-06  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/user32/menu.c:
	user32: Skip system menu entries when using keyboard.

2007-08-08  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, loader/pthread.c,
	  server/ptrace.c:
	loader: Use thr_self syscall to get thread id on FreeBSD.

	* configure, configure.ac, include/config.h.in:
	configure: Remove check for libxpg4.

2007-08-08  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix crash when remove app button is pressed in applications tab.

2007-08-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/combo.c, dlls/user32/tests/combo.c:
	user32: CBN_SELCHANGE notification should be sent before an edit update.

2007-08-09  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/wineconsole/wineconsole_Ru.rc:
	wineconsole: Rearrange control elements in Russian resources.

2007-08-08  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Handle transparency data when loading PNG images.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromGraphics stub.

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Fixed conformance of GdipCreateBitmapFromScan0.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/image.c:
	gdiplus/tests: Added GdipCreateBitmapFromScan0 test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdipluspixelformats.h:
	gdiplus: Added GdipSetImagePalette stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillRectangle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenDashOffset/GdipSetPenDashOffset.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCreatePath2.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/mixer.c, dlls/gdi32/tests/path.c, dlls/ntdll/time.c,
	  dlls/oleaut32/tests/vartest.c, dlls/tapi32/line.c,
	  dlls/user32/button.c, dlls/user32/tests/sysparams.c,
	  dlls/winedos/module.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	gdi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mscoree: Update win32.api to fix the winapi_check warnings.

	* dlls/msi/format.c, dlls/msi/install.c, dlls/msi/msi.c,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/package.c,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/suminfo.c,
	  include/msi.h, include/msiquery.h, tools/winapi/win32.api:
	msi: Better match the PSDK types, remove some now unused types from win32.api,
	and update it to fix the winapi_check warnings.

	* include/imm.h, tools/winapi/win32.api:
	imm32: Add a couple of missing prototypes and update win32.api to fix the
	winapi_check warnings.

	* tools/winapi/win32.api:
	d3drm: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	netapi32: Update win32.api to fix the winapi_check warnings.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/except.c:
	kernel32: Don't get stuck if the debugger exits without signaling the event.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/ddrawex/main.c:
	ddrawex: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/wininet/internet.c, dlls/wininet/urlcache.c, include/Makefile.in,
	  include/wininet.h, include/winineti.h, tools/winapi/win32.api:
	wininet: Add a skeleton winineti.h header with fixed prototypes for
	[GS]etUrlCacheConfigInfo*(), DeleteIE3Cache() and IsUrlCacheEntryExpired*().
	Remove SetUrlCacheConfigInfo*() from wininet.h, it's supposed to be declared
	in winineti.h.
	Update win32.api to fix the winapi_check warnings.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: #undef some macros to avoid a conflict between openssl/ssl.h and
	wincrypt.h.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* include/winreg.h:
	advapi32: Add a prototype for RegDeleteKeyValue*().

2007-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Better pixelformat selection code.

	* dlls/winex11.drv/opengl.c:
	wgl: Rewrite ChoosePixelFormat.

2007-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Correctly check GLX capabilities. Use client GLX extensions on ATI hardware
	to work around driver bugs.

2007-08-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Simplify MsiQueryComponentState, with more tests.

2007-08-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Call CHECK_CALLED(OnProgress_SENDINGREQUEST) for FILE_TEST since
	we SET_EXPECT it.

	* dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Do not use BindToStorage_hack for INTERNET_SCHEME_HTTP.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Fix clipformat test.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/snmpapi/tests/util.c:
	snmpapi/tests: Run tests again on win98 and NT4.

2007-08-08  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: The default handler needs to have its own implementation of
	IPersistStorage.
	For now we forward the methods to the data cache as before.

	* dlls/ole32/defaulthandler.c:
	ole32: Factor out the running object test into a separate function.

2007-08-02  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Fix a few comments.

2007-08-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/defwnd.c:
	user32: WM_IME_CHAR should result in posted, not sent, WM_CHAR messages.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  dlls/user32/user_private.h:
	user32: Support for the magic WM_CHAR W->A conversion in Get/PeekMessage.

	* dlls/user32/tests/msg.c:
	user32/tests: Added test cases for WM_CHAR conversions.

	* dlls/user32/message.c, dlls/user32/user_main.c,
	  dlls/user32/user_private.h, dlls/user32/winproc.c:
	user32: Added support for the magic WM_CHAR A->W conversions in
	Send/Post/DispatchMessage.

	* dlls/user32/message.c, dlls/user32/user_private.h,
	  dlls/user32/winproc.c:
	user32: Factor out the calling of a window's winproc into a separate function.

	* dlls/user32/message.c:
	user32: Factor out the various SendMessage functions into a common routine.

2007-08-02  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dpnlobby/Makefile.in, dlls/dpnlobby/dpnlobby.spec,
	  dlls/dpnlobby/version.rc:
	dpnlobby: Add dpnlobby that forwards to dpnet.dll.

	* dlls/kernel32/kernel32.spec:
	kernel32: Export RestoreLastError.

2007-08-08  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Do not append empty lines to the console history.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix typo.

2007-07-29  Peter Dons Tychsen <donpedro@dhcppc2>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Allow the use of the standard Joystick GUID when calling CreateDevice.

2007-08-03  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/tests/stream.c, dlls/urlmon/umstream.c:
	urlmon: Check some of the input parameters to URLOpenStreamA/W &
	URLOpenBlockingStreamA/W for NULL.
	Add tests for these.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/stream.c:
	urlmon: Add tests for URLOpenStreamW and URLOpenBlockingStreamW.

	* dlls/urlmon/umstream.c:
	urlmon: Implement URLOpenBlockingStreamA/W and URLOpenStreamA/W.

	* dlls/urlmon/binding.c:
	urlmon: The pcbRead parameter for IInternetProtocol::Read is optional, so fix
	the protocol implementation to check for this.

	* dlls/urlmon/umstream.c, dlls/urlmon/urlmon.spec:
	urlmon: Implement stubs for URLOpenBlockingStreamA/W and URLOpenStreamA/W.

	* include/urlmon.idl:
	include: Add declarations for URLOpenStreamA/W, URLOpenBlockingStreamA/W and
	URLOpenPullStreamA/W.

2007-07-27  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/faultrep/Makefile.in, dlls/faultrep/faultrep.c,
	  dlls/faultrep/faultrep.spec:
	faultrep: Add a stub dll.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/heap.c:
	msvcrt: Use the correct size_t type.

2007-08-08  Francois Gouget <fgouget@free.fr>

	* include/hlink.idl, tools/winapi/win32.api:
	hlink: Add a missing prototype and update win32.api to fix the winapi_check
	warnings.

	* tools/winapi/win32.api:
	localui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wined3d: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	hhctrl.ocx: Update win32.api to fix the winapi_check warnings.

	* include/mapidefs.h, include/mapix.h:
	mapi32: Remove redundant protections against duplicate header inclusion.

	* dlls/wintrust/crypt.c, include/mscat.h, tools/winapi/win32.api:
	wintrust: Fix the CryptCATAdminReleaseCatalogContext() prototype and better
	match the PSDK types.
	Add some missing prototypes to mscat.h.
	Update win32.api to fix the winapi_check warnings.

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fix compilation on systems that don't support nameless unions.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/ntdll/ntdll.spec:
	ntdll: Fix the RtlQueryInformationActivationContext() .spec prototype to match
	its implementation.

	* tools/winapi/win32.api:
	winapi_check: Fix a couple of dll names.

	* dlls/dnsapi/main.c, dlls/dnsapi/name.c, dlls/dnsapi/query.c,
	  dlls/dnsapi/record.c, include/windns.h, tools/winapi/win32.api:
	dnsapi: Better match the PSDK types, especially with regards to constness.
	Add some missing A/W prototype macros.
	Update win32.api to fix the winapi_check warnings.

	* dlls/netapi32/netapi32.c, dlls/netapi32/share.c, dlls/netapi32/wksta.c,
	  include/lmaccess.h, include/lmserver.h, include/lmshare.h,
	  include/lmwksta.h:
	netapi32: Add some missing prototypes in the lmaccess.h, lmshare.h and
	lmwksta.h headers.
	Replace LPWC?STR with LMC?STR to better match the PSDK.

	* dlls/pdh/tests/pdh.c:
	pdh/tests: Add missing '\n' to ok() calls.

2007-08-08  Francois Gouget <fgouget@codeweavers.com>

	* include/winreg.h:
	winreg.h: Add RRF_RT_ANY.

2007-08-08  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, include/ddraw.h,
	  tools/winapi/win32.api:
	ddraw: Better match the PSDK types and fix the winapi_check warnings.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/d3d9/tests/visual.c:
	d3d9: Comment out some failing fog tests.

2007-08-07  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawRectangleI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillRectangleI.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCreateLineBrushFromRectI.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated brush cloner/deleter.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetCustomLineCapStrokeCaps stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/gdipluscolormatrix.h, include/gdiplusflat.h:
	gdiplus: Added GdipSetImageAttributesColorMatrix stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed bug drawing custom caps.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipGetLineGammaCorrection/GdipSetLineGammaCorrection.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineSigmaBlend stub.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineWrapMode.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateLineBrush.

	* dlls/gdiplus/image.c:
	gdiplus: Make GdipGetMetafileHeaderFromMetafile return Ok.

	* dlls/gdiplus/image.c:
	gdiplus: GdipLoadImageFromStream makes initializations.

	* dlls/gdiplus/graphics.c:
	gdiplus: Don't prematurely release stream.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawImageI.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, dlls/gdiplus/image.c:
	gdiplus: Return width and height of metafiles.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromFile.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateStreamOnFile.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplusimaging.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipBitmapLockBits.

2007-08-08  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Implement CDROM_Verify for FreeBSD.

	* dlls/wineoss.drv/audio.c:
	wineoss: Avoid SNDCTL_DSP_GETTRIGGER.

	* dlls/wineoss.drv/audio.c:
	wineoss: Add SNDCTL_MIXERINFO support.

2007-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Move over to WGL.

2007-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Prepare pbuffer code for WGL transition.

2007-08-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c:
	wined3d: Move fake context code over to WGL.

2007-08-07  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: According to MSDN, inner content is only decoded when the content
	type is data.

	* dlls/crypt32/context.c:
	crypt32: Add a couple traces.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Test and correct finding a subject certificate.

	* dlls/crypt32/cert.c:
	crypt32: Use the authority key identifier to search for a certificate's issuer.

	* dlls/crypt32/cert.c:
	crypt32: Fix typo.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Introduce cryptasn debug channel to quiet down crypt traces.

	* dlls/crypt32/str.c:
	crypt32: Implement CertRDNValueToStr for UTF-8 strings.

2007-08-07  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add test for binding to a URL from which a very short response
	is received.

2007-08-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Implement the remaining contexts for MsiQueryComponentState.

2007-08-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/quartz/control.c, dlls/quartz/dsoundrender.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/memallocator.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/transform.c:
	quartz: Constify some variables.

2007-08-07  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Fix crash in graphics tab.

	* programs/winecfg/x11drvdlg.c:
	winecfg: Fix apply button always available in graphics tab bug.

2007-08-07  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h:
	secur32: Remove valid_session_key from NegoHelper since it is only ever set
	and not read.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Split the NTLM credential and context handles into separate objects.
	This prevents races with two threads using the helper object at the same
	time on two different context handles, eliminates the need to free the
	credential handle after freeing the context handles and also prevents a
	crash caused by not clearing session_key in DeleteSecurityContext.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store the position_transformed flag in the vdecl.

2007-08-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Determine used streams at vdecl creation.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Remove link collection from vertexdeclaration.c.

2007-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c:
	d3d: Add a simple offscreen rendering test.

	* dlls/ddraw/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	ddraw: Implement IDirect3DDevice7::DrawIndexedPrimitiveStrided.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/winecfg.rc:
	winecfg: Show version again in About box.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Create paths after checking availability of functions.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Changed skip message.

	* dlls/shlwapi/tests/clist.c, dlls/shlwapi/tests/clsid.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/shlwapi/tests/path.c:
	shlwapi/tests: Use GetModuleHandleA instead of LoadLibraryA.

2007-08-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/class.c, dlls/user32/defdlg.c, dlls/user32/hook16.c,
	  dlls/user32/message.c, dlls/user32/msg16.c,
	  dlls/user32/user_private.h, dlls/user32/win.c, dlls/user32/winproc.c,
	  dlls/user32/winproc.h, dlls/user32/wnd16.c:
	user32: Get rid of winproc.h and move definitions in user_private.h.

	* dlls/user32/message.c, include/winuser.h:
	user32: Fixed the return value of DispatchMessageA/W.

2007-08-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/Makefile.in, include/winres.h, include/winresrc.h,
	  programs/clock/rsrc.rc, programs/cmd/wcmdrc.rc,
	  programs/cmdlgtst/cmdlgr.rc, programs/net/rsrc.rc,
	  programs/oleview/rsrc.rc, programs/progman/rsrc.rc,
	  programs/regedit/rsrc.rc, programs/start/rsrc.rc,
	  programs/taskmgr/taskmgr.rc, programs/uninstaller/rsrc.rc,
	  programs/view/viewrc.rc, programs/winecfg/winecfg.rc,
	  programs/winefile/rsrc.rc, programs/winemine/rsrc.rc,
	  programs/winetest/resource.h, programs/winetest/winetest.rc,
	  programs/winhelp/rsrc.rc, programs/wordpad/rsrc.rc,
	  programs/write/rsrc.rc, programs/xcopy/rsrc.rc:
	include: winres.h no longer exists in PSDK, fix winresrc.h includes.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix virtual desktop selection.

2007-07-30  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/dpnet/Makefile.in, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/dpnet_private.h, dlls/dpnet/lobbiedapp.c,
	  dlls/dpnet/regsvr.c:
	dpnet: Implement directplay lobbied application stubs.

2007-08-07  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Fix the case when Proxy or ProxyBypass is NULL.

2007-08-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c, dlls/dsound/dsound.c:
	dsound: Make hardware acceleration work again.

2007-08-06  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Keep track of download state in tests.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for synchronous vs asynchronous binding.

	* dlls/urlmon/binding.c:
	urlmon: Add support for synchronous binding.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Declare the bind flags as a global variable in url tests.

2007-08-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Implement the MSIINSTALLCONTEXT_MACHINE context for MsiQueryComponentState.

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Forward MsiQueryComponentStateA to MsiQueryComponentStateW.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryComponentState.

2007-08-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/qcap/capture.h, dlls/qcap/pin.c, dlls/qcap/pin.h, dlls/qcap/v4l.c:
	qcap: Constify some variables.

2007-08-06  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/write/Ko.rc, programs/write/rsrc.rc:
	write: New Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2007-08-06  Aric Stewart <aric@codeweavers.com>

	* include/ddk/imm.h:
	imm32: Additional constants needed for the IME implementation.

2007-08-06  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Correct midi input program change + channel aftertouch.

2007-08-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winecfg/winecfg.c:
	winecfg: Values list should be NULL-terminated.

2007-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use UINT instead of uint.

	* dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Don't call ActivateContext between ENTER_GL/LEAVE_GL.

2007-08-06  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/dir.c, dlls/msvcrt/tests/dir.c:
	msvcrt: Fix _makepath().

	* dlls/msvcrt/tests/dir.c:
	msvcrt: Add _makepath() tests.

2007-08-05  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Fix todo_wine's to show the IServiceProvider interface is not
	queried on wine from CreateAsyncBindCtx.

2007-08-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Reuse common code and definition.
	Unify object properties structure and he common axis mapping function
	for both joystick drivers.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Fix POV calculation.
	Combine and simplify the POV calculations. Linux provides X,Y for the POV.
	While DirectInput returns dial-degrees*1000 (12 o-click is 0 degrees).

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix handling of dead-zone in evdev joystick.
	USB joysticks can and do provide dead-zone area. Use it to initialize
	the initial dead-zone.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Fix mapping of axes ids to property ids.

2007-08-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Another devmode bug.

2007-08-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Use the macro when querying the current display settings.

	* dlls/wined3d/directx.c:
	wined3d: Initialize major and minor when filling GL caps.

	* dlls/wined3d/directx.c:
	wined3d: Properly setup DevModeW before using it.

2007-08-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Be consistent with GLX_SLOW_CONFIG meaning GENERIC_ACCELERATION.

	* dlls/winex11.drv/opengl.c:
	winex11: Properly handle WGL_PBUFFER_LOST_ARB.

2007-08-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Constify some variables.

2007-08-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define avi resource #164.

2007-08-04  Janusz Tomczak <januszt29@interia.pl>

	* dlls/oledlg/oledlg_Pl.rc:
	oledlg: Fix Polish translation.

	* dlls/mpr/mpr_Pl.rc:
	mpr: Fix Polish translation.

	* dlls/msvfw32/msvfw32_Pl.rc:
	msvfw32: Fix Polish translation.

	* dlls/hhctrl.ocx/Pl.rc:
	hhctrl.ocx: Fix Polish translation.

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Fix Polish translation.

	* dlls/avifil32/avifile_Pl.rc:
	avifil32: Fix Polish translation.

2007-08-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/mbcs.c:
	msvcrt: mbsnbicmp should be case insensitive.

2007-08-04  Francois Gouget <fgouget@free.fr>

	* dlls/msi/msi.c, dlls/msi/registry.c, include/msi.h:
	msi: Fix the MsiEnumProductsEx*(), MsiQueryComponentState*() and
	MsiProvideQualifiedComponentEx*() prototypes.

	* include/mapix.h:
	mapi32: Add a prototype for MAPIAdminProfiles.

	* dlls/netapi32/access.c, include/Makefile.in, include/lmuse.h,
	  include/lmuseflg.h:
	netapi32: Add lmuseflg.h and include it from lmuse.h.
	Also add some prototypes to lmuse.h, and use it in the implementation.

	* include/lm.h:
	netapi32: Add fixmes for the headers that are still missing and thus cannot
	be included in lm.h.
	Also note that lmbrowsr.h is no longer present in current PSDKs.

2007-08-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c:
	dsound: Acceleration fixes for wavein emulation.

	* dlls/dsound/dsound.c:
	dsound: Make timer more robust.

2007-08-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c, dlls/dsound/primary.c:
	dsound: Sound acceleration fixes.

2007-08-03  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix crash caused by calling set_reg_key with NULL value.

2007-08-04  Francois Gouget <fgouget@free.fr>

	* .gitignore, dlls/mscoree/mscoree_main.c, include/Makefile.in,
	  include/cor.h, include/mscoree.idl:
	mscoree: Add cor.h and mscoree.idl and fix some semi-stub prototypes.

	* dlls/imagehlp/access.c, dlls/imagehlp/modify.c, include/imagehlp.h,
	  tools/winapi/win32.api:
	imagehlp: Better match the PSDK types, especially with regards to constness.
	Add many missing prototypes which we already had in dbghelp.h, and their
	related structures.
	Update win32.api to fix the winapi_check warnings.

	* dlls/dwmapi/dwmapi_main.c, include/Makefile.in, include/dwmapi.h,
	  tools/winapi/win32.api:
	dwmapi: Add dwmapi.h and update win32.api to fix the winapi_check warnings.

	* include/mapidefs.h, include/mapival.h:
	mapi32: Add missing #include directives.

	* dlls/crypt32/cert.c, dlls/crypt32/main.c, include/wincrypt.h,
	  tools/winapi/win32.api:
	crypt32: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/dnsapi/main.c, dlls/dnsapi/query.c, include/windns.h,
	  tools/winapi/win32.api:
	dnsapi: The DNS APIs don't take PIP4_ARRAYs anymore (for IPv6 compatibility).

	* include/msi.h:
	msi: MsiProvideComponentFromDescriptorA/W() is not supposed to be defined
	in msi.h.

	* include/advpub.h:
	advapi32: We have cfgmgr32.h now.

	* include/dbghelp.h, include/imagehlp.h:
	imagehlp & dbghelp: Add the IMAGEAPI and DBHLPAPI macros.

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Re-balance the curly parentheses so winapi_check can parse
	the file.

	* dlls/mapi32/mapi32_main.c, include/Makefile.in, include/mapiform.h:
	mapi32: Add a skeleton mapiform.h header with a proper prototype for
	MAPIOpenLocalFormContainer().

2007-08-03  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipImageSelectActiveFrame stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdipluspixelformats.h:
	gdiplus: Added GdipGetImagePixelFormat.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipImageGetFrameDimensionsList stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromStream.

	* dlls/gdiplus/gdiplus.c:
	gdiplus: Allow non-default GdiplusStartupInput.

2007-08-06  Alexandre Julliard <julliard@winehq.org>

	* include/gdiplusinit.h:
	gdiplus: Fixed GdiplusStartupOutput definition.

2007-08-03  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Allow PNG_COLOR_TYPE_RGB_ALPHA.

2007-08-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Fix the size allocated for the deferred custom action string.

2007-08-04  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/main.c:
	mshtml: Remove const in front of REFIID as that is a macro that already starts
	with const.

	* dlls/dsound/primary.c:
	dsound: Remove redundant NULL check before HeapFree. Found by Smatch.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Move the TRACE before the return. Found by Smatch.

	* dlls/inkobj/inkobj.c:
	inkobj: Remove break after return. Found by Smatch.

2007-08-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Constify some variables.

2007-08-03  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/ntdll/ntdll.spec:
	ntdll: Update Nt stdcalls for stubs of Zw.

2007-08-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: WGL_COLOR_BITS_ARB does include alpha.

2007-07-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Present requires the swapchain's context.

2007-07-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/basetexture.c:
	wined3d: WINED3DSAMP_MAXMIPLEVEL fixes.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/query.c,
	  dlls/d3d9/tests/shader.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/texture.c, dlls/d3d9/tests/visual.c:
	d3d9: Do not fail if d3d9 is not available.

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/surface.c,
	  dlls/d3d8/tests/texture.c, dlls/d3d8/tests/visual.c,
	  dlls/d3d8/tests/volume.c:
	d3d8: Skip tests if d3d is not supported.

	* dlls/d3d9/tests/surface.c:
	d3d9: Deal with failing surface creation.

2007-08-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: wavein has LPWAVEINCAPSW not LPWAVEOUTCAPSW.

2007-08-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Skip tests for which the dll is missing.

2007-08-02  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Remove bad default setting for logpixels registery.

	* programs/winecfg/winecfg.c, programs/winecfg/winecfg.h:
	winecfg: Read/write registry in unicode.

2007-07-31  John Klehm <xixsimplicityxix@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inkobj/Makefile.in, dlls/inkobj/inkobj.c,
	  dlls/inkobj/inkobj.spec:
	inkobj: Add stub implementation of inkobj dll.

	* .gitignore, include/Makefile.in, include/msinkaut.idl:
	inkobj: Add stub header for inkobj dll.

2007-08-03  Alexandre Julliard <julliard@winehq.org>

	* tools/make_makefiles:
	make_makefiles: Added support for updating include/Makefile.in.

2007-08-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: wglChooosePixelFormatARB returns the total number of matching pixelformats
	and not the number of pixelformats stored in the buffer.
	This didn't work due to bugs in wglChoosePixelFormatARB but also due
	to strange behavior of glXChooseFBConfig. Some of its default values
	are not zero or GLX_DONT_CARE which cause some formats not to appear.

2007-08-02  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Send BINDSTATUS_DOWNLOADINGDATA if we do not send BEGINDOWNLOADDATA
	or ENDDOWNLOADDATA.

	* dlls/urlmon/binding.c:
	urlmon: Call IBindStatusCallback_OnStopBinding only if this actually is the
	last ReportData.

2007-08-03  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	Revert "urlmon: Use BSCF_ values passed to report_data to keep track of
	download state."
	This reverts commit 978f6b98c9a67055f5a0f878a44b3b66c16a6019.

	* dlls/urlmon/binding.c:
	Revert "urlmon: Report BINDSTATUS_DOWNLOADINGDATA on
	BSCF_INTERMEDIATEDATANOTIFICATION."
	This reverts commit b3a660a69cb345d0960d787faa0229f2f25cc11c.

2007-08-02  Evan Stade <estade@gmail.com>

	* include/gdiplusflat.h:
	gdiplus: Alphabetized header.

	* dlls/gdiplus/graphics.c:
	gdiplus: Removed old fixmes.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use custom cap base inset differently.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipG/SetPathGradientFocusScales.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipG/SetPathGradientCenterPoint.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated GpBrush functions.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipS/GetPathGradientGammaCorrection.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetPathGradientSigmaBlend stub.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipS/GetPathGradientSurroundColorsWithCount stubs.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCreatePathGradient.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipGetPathGradientPointCount.

	* dlls/gdi32/enhmetafile.c:
	gdi32: Don't print fixme more than once.

2007-08-03  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	d3d9: Update win32.api to fix the winapi_check warnings.

	* dlls/netapi32/access.c:
	netapi32: Fix the NetUseAdd() calling convention.

	* tools/winapi/win32.api:
	winapi_check: FLOAT is a float.

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Add missing '\n' to ok() call.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Fix a couple of prototypes in the spec file.

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/msg.c,
	  dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Add and use HCRYPTPROV_LEGACY and HCRYPTPROV_OR_NCRYPT_KEY_HANDLE.

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	comctl32: Update win32.api to fix the winapi_check warnings.

	* dlls/d3d8/d3d8_main.c, tools/winapi/win32.api:
	d3d8: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix a signed/unsigned mismatch.

	* include/lmerr.h, include/lmserver.h, include/lmshare.h:
	netapi32: Add missing #include directives to the netapi32 headers.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Use quotes to include ddraw.h. Fixes a winapi_check warning.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/image.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c, include/dbghelp.h, programs/winedbg/info.c,
	  programs/winedbg/types.c, programs/winedbg/winedbg.c,
	  tools/winapi/win32.api:
	dbghelp: Better match the PSDK types, especially with regards to constness.
	Also add a number of missing prototypes, especially 64bit or Unicode
	versions of existing prototypes, and the related structures.  Update
	win32.api to fix the winapi_check warnings.

	* dlls/imagehlp/access.c, include/dbghelp.h, include/imagehlp.h:
	imagehlp: Add two missing fields.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: Use the gdiplus type, REAL, rather than FLOAT.

	* include/windns.h:
	dnsapi: Add some constants.

	* dlls/dnsapi/tests/name.c, include/windns.h:
	dnsapi: Define DNS_STATUS as LONG instead of long to improve Win64 compatibility.

	* include/d3d9.h:
	d3d9: Declare the D3DPERF_Xxx() functions in d3d9.h.

2007-08-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/ungif.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Constify some variables.

2007-08-02  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Support finding certificates by cert id.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Test and fix getting a certificate context's key identifier property.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding a cert with a subject key identifier extension.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding a cert with a public key.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix typo in key context property test, and the problems it hid.

	* dlls/crypt32/cert.c:
	crypt32: Add and use a helper function for getting cert properties.

2007-08-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't use ConvertAttribWGLtoGLX for wglCreatePbufferARB.

	* dlls/winex11.drv/opengl.c:
	winex11: Report accumulation buffer bits for pixel formats.

2007-08-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/volume.c:
	d3d9: Check for volume texture support before running the volume test.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Some visual test fixes.

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/visual.c:
	ddraw: SetDisplayMode may fail.

2007-08-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Downgrade an ERR.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Some drivers return DDERR_INVALIDPARAMS if DXTn surfaces aren't supported.

2007-08-02  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement decoding OID and directory name alt name entries.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a OID decoding function that ignores the tag and use it
	where the caller already checks the tag.

	* dlls/crypt32/encode.c:
	crypt32: Implement encoding OID and directory name alt name entries.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding/decoding a couple more alt name entry types.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of bogus check and improve traces for unexpected alt name
	entry types.

	* include/wincrypt.h:
	crypt32: Add CERT_ID_XXX defines.

2007-08-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Don't commit data on Stop and Play.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Fix Lock in dsoutput.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Fix GetPosition in dsoutput.

2007-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winproc.c:
	user32: Store all builtin winprocs at the start of the array.
	This allows checking for them in CallWindowProc and avoid message
	translation in that case.

	* dlls/ntdll/actctx.c:
	ntdll: Relax the activation context size check.

2007-08-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Check for WGL drawing caps.

2007-08-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/write/En.rc, programs/write/Makefile.in,
	  programs/write/resources.h, programs/write/rsrc.rc,
	  programs/write/write.c:
	write.exe: Add a new program that calls wordpad.exe.

2007-08-02  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Do not fill stream buffer on every report_data, native doesn't.

	* dlls/urlmon/binding.c:
	urlmon: Report total data read in this bind operation to OnDataAvailable,
	not the size of the available buffer.

	* dlls/urlmon/binding.c:
	urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION.

	* dlls/urlmon/binding.c:
	urlmon: Use BSCF_ values passed to report_data to keep track of download state.

	* dlls/urlmon/binding.c:
	urlmon: Set the queue tail to the new task when pushing a task onto the tail
	of the queue.

2007-08-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Also print a readable table name in the failure notice.

2007-08-01  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPathGradientWrapMode.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetPathGradientCenterColor.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added solid-color path gradient brush implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawLine.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenWidth.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillPolygon.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClonePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipIsOutlineVisiblePathPointI stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Don't suggest image size when converting WMF to EMF.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Slight correction to EMF rendering.

2007-08-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c:
	msi: Reimplement joins to allow joining any number of tables, each of arbitrary
	size.

	* dlls/msi/tests/db.c:
	msi: Add tests for joining three tables.

2007-08-01  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Only report 16 bit float declaration types as supported if we
	support them.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Properly load FLOAT16_2 and FLOAT16_4 vertex data.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add definitions and detection for GL_NV_half_float.

	* dlls/wined3d/surface.c:
	wined3d: Set SFLAG_INSYSMEM when WINED3DLOCK_DISCARD is passed to
	IWineD3DSurfaceImpl_LockRect.

2007-08-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Constify some variables.

2007-08-01  Erik Inge Bolsø <knan-wine@anduin.net>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix joystick axis remapping.

2007-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c:
	mshtml: Release typelib in PROCESS_DETACH.

	* dlls/shdocvw/navigate.c:
	shdocvw: Wrong PostData VT is not an error.

2007-08-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Support WGL_FLOAT_COMPONENTS_NV in wglGetPixelFormatAttrib*.

	* dlls/winex11.drv/opengl.c:
	wgl: Print more debug info.

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: SetPixelFormat should fail on the root window.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/opengl32/tests/Makefile.in, dlls/opengl32/tests/opengl.c,
	  dlls/winex11.drv/opengl.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	wgl: GetPixelFormat fix for offscreen formats.

	* dlls/winex11.drv/opengl.c:
	wgl: Silence an error in ConvertPixelFormatWGLtoGLX.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Move resampling away from mixer thread.

2007-08-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Fixed size to MultiByteToWideChar.

2007-08-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, tools/winegcc/Makefile.in:
	configure: Add -m32 flag for C++ compiler too.

2007-07-31  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Extend GdipDrawImagePointsRect.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/image.c:
	gdiplus: Track width and height of GpBitmaps.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/Makefile.in, include/gdiplus.h, include/gdipluscolormatrix.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetImageAttributesColorKeys stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipBitmapGetPixel stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipRemovePropertyItem stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromStreamICM.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/Makefile.in,
	  include/gdiplus.h, include/gdiplusflat.h, include/gdiplusimaging.h:
	gdiplus: Added partial implementation of GdipSaveImageToStream.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPropertyItemSize stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdipluspixelformats.h:
	gdiplus: Added GdipCreateBitmapFromScan0.

	* dlls/gdiplus/brush.c, dlls/gdiplus/customlinecap.c,
	  dlls/gdiplus/gdiplus.c, dlls/gdiplus/graphicspath.c,
	  dlls/gdiplus/image.c, dlls/gdiplus/imageattributes.c,
	  dlls/gdiplus/matrix.c, dlls/gdiplus/pathiterator.c,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipLoadImageFromStreamICM.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateMatrix3.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetMatrixElements.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetMatrixElements.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Added GdipFindFirstImageItem stub.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/imageattributes.c, dlls/gdiplus/pathiterator.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusmetaheader.h:
	gdiplus: Added GdipGetMetafileHeaderFromMetafile stub.

	* dlls/gdiplus/tests/brush.c, dlls/gdiplus/tests/matrix.c,
	  dlls/gdiplus/tests/pen.c:
	gdiplus: Change include list on 3 tests.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix memory leak in GdipCreateMetafileFromWMF.

	* dlls/gdiplus/image.c:
	gdiplus: Changed GdipGetImageType.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Added more stubs to gdiplus.spec.

	* dlls/gdiplus/image.c:
	gdiplus: Implemented GdipDisposeImage.

	* dlls/gdiplus/imageattributes.c:
	gdiplus: Implemented GdipDisposeImageAttributes.

2007-07-31  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Remove bad special case, it isn't necessary since the outer content
	specifies the hash algorithm.

	* dlls/crypt32/cert.c:
	crypt32: Use the outer content's signature algorithm rather than the public
	key's embedded algorithm.

2007-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Added GetExternal implementation.

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IHTMLWindow::get_external implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fixed QueryInterface failures on IE7.

	* dlls/uuid/uuid.c:
	uuid: Added IID_IProxyManager.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cater better for domain in test.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Don't test the contents of an uninitialized buffer.

2007-07-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Constify some variables.

2007-07-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/mixer.c:
	dsound: Add SndQueueMin to have less lock contention in mixer.

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Get rid of DS_HEL_FRAGS.

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Add a registry setting for hel buffer length.

2007-07-31  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/security.c, dlls/advapi32/tests/service.c,
	  dlls/comdlg32/filedlg31.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/viewport.c, dlls/gdi32/tests/font.c,
	  dlls/kernel32/tests/path.c, dlls/netapi32/access.c,
	  dlls/shell32/shlfileop.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/winecoreaudio.drv/audio.c, dlls/wined3d/drawprim.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	atl: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/c_parser.pm:
	winapi: Remove some dead code.

	* include/wincrypt.h:
	crypt32: Add FIXMEs for a couple of missing includes.

	* include/wincrypt.h:
	crypt32: Add some missing CERT_XXX_ID constants.

	* dlls/advapi32/crypt.c, include/wincrypt.h:
	crypt32: Fix the CryptReleaseContext() prototype.

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: According to the PSDK, DrawShadowText() takes a non-const RECT pointer.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Fix compilation on systems that don't support nameless unions.

2007-07-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Compile against standard GL headers.

2007-07-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Make GetFontData traces more readable.

2007-07-27  Robert Reif <reif@earthlink.net>

	* dlls/msvcrt/tests/heap.c:
	msvcrt/tests: Add _aligned_malloc tests.

	* dlls/msvcrt/heap.c, dlls/msvcrt/msvcrt.spec, include/msvcrt/malloc.h:
	msvcrt: Add _aligned_malloc functions.

2007-07-27  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* server/token.c:
	server: Added the install driver privilege to the default user.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/painting.c, dlls/user32/tests/msg.c,
	  dlls/user32/user_private.h, dlls/user32/winpos.c:
	user32: Erase parent window when child is hidden. From a patch by Clinton
	Stimpson.

	* dlls/ntdll/loader.c:
	ntdll: Load dll from the directory containing the manifest for local assemblies.

	* tools/make_makefiles:
	make_makefiles: Add check for incorrect module name.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winhttp/Makefile.in:
	winhttp: Fix compile/install issue.

2007-07-30  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/Cs.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Ro.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/resource.h,
	  programs/winecfg/theme.c:
	winecfg: Add menu font settings to desktop integration tab.

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Si.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/winecfg.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Add trackbar to set screen resolution in graphics tab.

2007-07-31  Jacek Caban <jacek@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winhttp/Makefile.in, dlls/winhttp/main.c,
	  dlls/winhttp/winhttp.spec:
	winhttp: Added winhttp.dll.

2007-07-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/drive.c, programs/winecfg/libraries.c,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c:
	winecfg: Fix some compatibility problems.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shellpath.c, programs/winecfg/theme.c:
	Avoid non-portable Unix mode bits macros.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Implement a light form of locking for dsoutput.

2007-07-30  Evan Stade <estade@gmail.com>

	* dlls/gdi32/pen.c, dlls/gdi32/tests/pen.c:
	gdi32: Handle PS_USERSTYLE in ExtCreatePen.

	* dlls/gdi32/tests/pen.c:
	gdi32: Added more tests for ExtCreatePen on PS_USERSTLYE.

	* dlls/gdi32/pen.c:
	gdi32: Improve ExtCreatePen parameter checking.

2007-07-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Constify some data.

	* dlls/kernel32/tests/time.c:
	kernel32: Skip remainder of the time zone test if SystemTimeToTzSpecificLocalTime
	not present.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/devinst.c, dlls/setupapi/tests/parser.c,
	  dlls/setupapi/tests/query.c, dlls/setupapi/tests/stringtable.c:
	setupapi/tests: Use GetModuleHandleA instead of LoadLibraryA.

2007-07-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user32/misc.c, dlls/user32/user32.spec:
	user32: Add a stub for GetAppCompatFlags2.

2007-07-30  Tomas Carnecky <tom@dbservice.com>

	* configure, configure.ac:
	configure: Check whether linker supports --enable-new-dtags.

2007-07-30  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Partial implementation of GdipDrawImagePointsRect.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/image.c:
	gdiplus: Implemented GdipGetImageBounds for metafiles.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/imageattributes.c:
	gdiplus: Added a minimal implementation of GdipCreateImageAttributes.

	* dlls/gdiplus/image.c:
	gdiplus: Implemented GdipGetImageType.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplustypes.h:
	gdiplus: Added GdipDrawImagePointsRect stub.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/imageattributes.c, include/gdiplusenums.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added ImageAttributes stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetImageBounds stub.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c:
	gdiplus: Partial implementation of GdipCreateMetafileFromWMF.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Recognize EMF header when loading picture.

2007-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added HTMLWindow's IDispatch methods implementation.

	* dlls/mshtml/main.c:
	mshtml: Added mshtml.tlb registration.

	* dlls/mshtml.tlb/rsrc.rc:
	mshtml.tlb: Fixed a typo in copyright header.

2007-07-30  James Hawkins <truiken@gmail.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c,
	  programs/msiexec/service.c:
	msiexec: Implement a stub MSIServer service.

2007-07-30  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Support getting the inner content OID from a decoded signed message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c:
	crypt32: Get rid of attribute certs from signed info, they're not supported
	anyway.

	* dlls/crypt32/decode.c:
	crypt32: Add a few traces.

	* dlls/crypt32/decode.c:
	crypt32: Simplify alignment calculation.

	* include/wincrypt.h:
	crypt32: Add missing definitions.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c, include/wincrypt.h:
	crypt32: Add CryptMsgControl stub.

	* dlls/crypt32/msg.c:
	crypt32: Implement getting the signer cert info from a decoded signed message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting signer info from a decoded signed message.

	* dlls/crypt32/decode.c:
	crypt32: Separate decoding PKCS signer info into internal and external versions.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting inner content of a decoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting more parameters from a decoded signed message.

2007-07-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix compilation on systems without GLX_RGBA_FLOAT_ARB.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/registry.c:
	msi/registry: Use the return value of squash_guid.

	* include/pdhmsg.h:
	include/pdhmsg.h: Add some defines.

2007-07-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add a TRACE when wine_dlopen for SONAME_LIBCUPS failed.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/visual.c:
	ddraw: Table fog may be unsupported.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test pixel shaders if they are supported.

	* dlls/d3d8/tests/device.c:
	d3d8: Use a less demanding format for the depth stencil test.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test volume textures if they are supported.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test cube textures if they are supported.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cater for domain in the test.

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: Use skip when we don't have enough rights.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Constify DSOUND_CheckEvent.

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c:
	dsound: Remove some more unused variables.

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Silence the IDirectSoundBuffer_Initialize warnings.

	* dlls/dsound/mixer.c:
	dsound: Fix locking in mixer.

	* dlls/dsound/mixer.c:
	dsound: Small mixer optimizations.

	* dlls/dsound/primary.c:
	dsound: Reset state when stopping device.

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Replace buffer critical section with a rw-lock.

2007-07-27  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed a typo.

	* dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Check custom dash array for bad properties.

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: More GdipSetPenDashArray tests.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/pen.c:
	gdiplus: Draw custom dashes.

2007-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Avoid activation context leak for dlls with no imports.

	* dlls/ntdll/actctx.c:
	ntdll: Allow optional elements in the comClass element.

	* dlls/ntdll/actctx.c:
	ntdll: Use the exact size of the manifest file.

	* dlls/ntdll/rtlstr.c:
	ntdll: Fixed the null bytes check in RtlIsTextUnicode.

	* dlls/ntdll/actctx.c:
	ntdll: Convert the XML parser to Unicode to support UCS-16 manifests.

2007-07-27  Tim Schwartz <tim@sanityinternet.com>

	* include/Makefile.in, include/lm.h, include/lmuse.h:
	lmuse.h: Add structures needed by NetUseAdd().

2007-07-26  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/msg.c:
	user32: Also test parent messages when hiding child window.

2007-07-29  Lei Zhang <thestig@google.com>

	* dlls/ntdll/time.c:
	ntdll: Add Bolivian time zone info.

2007-07-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add a stub implementation of MsiSourceListEnumSourcesA.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Treat an empty string and a NULL string as the same value.

2007-07-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Replace glReadPixels in wglBindTexImage2D by the MUCH faster
	glCopyTexImage2D.

2007-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: wglBindTexImageARB should return TRUE on success.

	* dlls/winex11.drv/opengl.c:
	wgl: Add WGL_ATI_pixel_format_float/WGL_ARB_pixel_format_float support.

	* dlls/winex11.drv/opengl.c:
	wgl: Enable WGL_EXT_swap_control by default even when the GLX version isn't
	there.

	* dlls/winex11.drv/opengl.c:
	wgl: Use correct types and pixelformats for pbuffers.

2007-07-27  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd: Remove some debug code.

	* programs/cmd/builtins.c:
	cmd: Fix comment to accurately reflect the function.

	* programs/cmd/builtins.c:
	cmd: Add support for wildcards in copy.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Be a bit more consistent.

2007-07-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Fix GetServiceDisplayNameA for service with no displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test for too small buffer.

2007-07-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Set correct error when the service doesn't exist.

2007-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Fix a compiler warning.

	* libs/wine/loader.c:
	libwine: Fix lookup of 16-bit dll placeholders. Remove some old compatibility
	code.

	* dlls/wined3d/surface.c:
	wined3d: Fix compiler warning.

2007-07-29  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.h:
	winefile: Use SendMessageW instead of SNDMSG.

	* dlls/ntdll/sync.c:
	ntdll: Match the definition of NtQueryEvent() with its declaration.

2007-07-29  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mshtml.tlb/Makefile.in, dlls/mshtml.tlb/mshtml.tlb.spec,
	  dlls/mshtml.tlb/mshtml_tlb.idl, dlls/mshtml.tlb/rsrc.rc:
	mshtml: Added mshtml.tlb.

	* include/mshtml.idl:
	mshtml.idl: Added some missing attributes.

	* tools/widl/write_msft.c:
	widl: Reorder switch cases to keep alphabetical order.

	* tools/widl/write_msft.c:
	widl: Added displaybind attribute handling.

	* tools/widl/write_msft.c:
	widl: Added nonbrowsable attribute handling.

	* tools/widl/write_msft.c:
	widl: Use correct bytes in write_value.

2007-07-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/time.c:
	ntdll: Simplify TIME_GetBias.

	* dlls/ntdll/time.c:
	ntdll: Add some traces to make debugging time zone related problems easier.

	* dlls/kernel32/time.c:
	kernel32: Fix TIME_CompTimeZoneID return type.

	* dlls/kernel32/tests/time.c:
	kernel32: Add more tests for time zone info.

2007-07-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Constify some variables.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Always commit at least 3 periods in dsoutput.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/waveout.c:
	winealsa: Increase performance of waveout getposition.

2007-07-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: Increase performance of wavein getposition.

2007-07-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/script.c, dlls/msi/tests/automation.c:
	msi: Use SysAllocString/SysFreeString for BSTR members of EXCEPINFO structure.

2007-07-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix typo.

2007-07-28  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Save dialog works if fred\ entered as filename.

2007-07-28  Robert Millan <rmh@aybabtu.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Remove thread safety FIXMEs.

2007-07-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement message stores.

	* dlls/crypt32/msg.c:
	crypt32: Only destroy a decoded message's hash if it's been created.

	* dlls/crypt32/tests/store.c:
	crypt32: Add tests for message stores.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting some parameters from a decoded signed message.

	* dlls/crypt32/msg.c:
	crypt32: Change type to avoid unnecessary casting.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting parameters from decoded signed messages.

	* dlls/crypt32/msg.c:
	crypt32: Store decoded signed content in message.

	* dlls/crypt32/msg.c:
	crypt32: Correct type of a decoded signed message.

	* dlls/crypt32/msg.c:
	crypt32: A decoded message's parameters are dependent on its type.

2007-07-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Use skip if localspl can't be loaded.

2007-07-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Use a more unique property separator.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Keep track of the wildcard record index.

2007-07-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c, include/wine/wgl.h:
	wgl: Add WGL_NV_float_buffer and WGL_NV_texture_rectangle support.

	* dlls/winex11.drv/opengl.c:
	wgl: Fix another BadMatch error by giving a pbuffer its own GLXContext.

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a BadMatch error resulting from ignoring that iPixelFormat stars
	counting from 1.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Only test pixel shaders for refcounting if they are supported.

	* dlls/d3d8/tests/volume.c:
	d3d8: Skip volume test if volume textures are not supported.

	* dlls/wined3d/utils.c:
	wined3d: A more dynamic initialization of the gl pixel formats.

2007-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/utils.c, dlls/wined3d/volume.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Store the gl format table in the gl info structure.

2007-07-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Split up the format table.

2007-07-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.42.

----------------------------------------------------------------
2007-07-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Fix buffersize calculations for GetServiceDisplayNameW.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Forward GetServiceDisplayNameA to GetServiceDisplayNameW.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test GetServiceDisplayNameA for service with no displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: More tests for GetServiceDisplayName.

2007-07-26  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Strip Accept-Encoding from http/1.0 requests.

2007-07-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Return most fields for DRIVER_INFO_4 and 6.

	* dlls/winspool.drv/info.c:
	winspool: Return the full path in DRIVER_INFO_2 and 3.

	* dlls/winspool.drv/info.c:
	winspool: Enable all levels for EnumPrinterDrivers + GetPrinterDriver.

	* dlls/winspool.drv/info.c:
	winspool: Return the full path for the driver.

	* dlls/winspool.drv/info.c:
	winspool: Use correct path for 16bit drivers.

2007-07-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Make http protocol tests refractory to timing issues.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Rename received_data event to more general name event_complete.

2007-07-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsservice.c:
	mshtml: Fixed a typo.

2007-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/order.c,
	  dlls/msi/select.c, dlls/msi/streams.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement the MSIMODIFY_UPDATE command in the SELECT view.

	* dlls/msi/custom.c:
	msi: Initialize the size parameter.

	* dlls/msi/tests/db.c:
	msi: Add more tests for MSIMODIFY_UPDATE.

2007-07-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c:
	dsound: Allow mixing the same buffer multiple times if we are looping.

2007-07-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Don't operate on freed data in timer.

2007-07-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/dsrender.c:
	wineoss: Make sure writepos < buflen for dsrender.

2007-07-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Minor fixes to ds output.

2007-07-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c:
	dsound: Some cosmetic changes.

2007-07-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c:
	dsound: Fix CheckEvent in mixer.

	* dlls/dsound/mixer.c:
	dsound: Make sure secondary_remainder and buflen are aligned to primary buffer
	in mixer.

2007-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib2.c:
	oleaut32: Constify some variables.

2007-07-26  Steven Edwards <winehacker@gmail.com>

	* dlls/version/info.c:
	version: VerQueryValueA/W NULL pointer check.

2007-07-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the WGL_TEXTURE_TARGET_ARB emulation code.

2007-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Enable offscreen pixelformats for pbuffers.

	* dlls/winex11.drv/opengl.c:
	wgl: Replace the GLXFBConfigIDs in the pixelformat list with real GLXFBConfigs.

	* dlls/winex11.drv/opengl.c:
	wgl: Fill the format table with offscreen pixelformats which are needed for
	pbuffers.

2007-07-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/string.c, dlls/msvcrt/wcs.c:
	msvcrt: Get rid of the now unused strndup/wstrndup functions.

	* dlls/msvcrt/heap.c:
	msvcrt: Fixed errno setting in malloc, HeapAlloc doesn't set last error.

	* dlls/msvcrt/dir.c:
	msvcrt: Fixed buffer allocation in _getcwd/_wgetcwd.

	* dlls/ntdll/actctx.c:
	ntdll: Simply store the assembly type without interpreting it.

2007-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/actctx.c,
	  dlls/ntdll/actctx.c:
	kernel32: Added a number of activation context tests.

2007-07-25  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: Added pen dash array tests.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenDashArray/GdipGetPenDashArray.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix arc2polybezier.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus/tests: Added GdipAddPathEllipse test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathEllipse.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix memory leak.

2007-07-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed messages with authenticated
	attributes.

	* dlls/crypt32/decode.c:
	crypt32: Trace a few more items when decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Test and fix encoding and decoding of attributes in PKCS signers.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/msg.c:
	crypt32: Partially implement decoding of signed messages.

	* dlls/crypt32/decode.c:
	crypt32: Don't check tag in CRYPT_DecodeDERArray, caller already does.

	* dlls/crypt32/decode.c:
	crypt32: Actually skip content when skipping an item in a sequence.

	* dlls/crypt32/msg.c:
	crypt32: Remove redundant assignment.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add initial tests for decoding signed messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting the hash from a hash message with an invalid index.

2007-07-26  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Don't proceed with POST operation (that will fail) if we run
	out of memory.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http protocol tests with absence of BINDF_FROMURLMON to
	properly expect ReportData.

2007-07-25  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Don't free structures that are used by asynchronous HttpSendRequest
	until we are sure they won't be used.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/loader.c:
	libwine: Get rid of the lookup in the top dlls/ dir, all dlls are named
	correctly now.

	* dlls/crypt32/encode.c:
	crypt32: Don't use off_t for memory offsets.

2007-07-25  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Handle Ctrl-Home and Ctrl-End in edit mode.

2007-07-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Flip the scissor rect when rendering offscreen.

	* dlls/d3d9/texture.c:
	d3d9: Trace the Format parameter to IDirect3DDevice9Impl_CreateTexture as
	hexadecimal.

2007-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Make sure we have associated listener before calling OnStopRequest.

	* dlls/urlmon/http.c:
	urlmon: Change some gotos to return.

2007-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/serial.c:
	ntdll: Remove a break after a break. Found by Smatch.

	* programs/winefile/winefile.c:
	winefile: Change choose_font() and init_output() to the W form.

	* programs/winefile/winefile.c:
	winefile: Move the font choosing code to a separate function.

2007-07-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Set pbuffer dimensions in HDC.

	* dlls/winex11.drv/opengl.c:
	opengl: WGL_ARB_render_texture support.

	* dlls/opengl32/wgl.c:
	opengl32: Relax extension checking.

2007-07-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Constify some variables.

2007-07-25  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Fix missing toolbar button with HINST_COMMCTRL.

2007-07-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_main.c:
	wined3d: Do not fail if the adapter info can't be initialized.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Set the pow2 sizes in gl surface private setup.

	* dlls/wined3d/directx.c:
	wined3d: Find the shader constant limit at adapter init time.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Allocate render target management members in Init3D.

2007-07-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Attempt to clean up fbos only if a gl surface is destroyed.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Support single quotes around XML attribute values.

	* dlls/ntdll/loader.c:
	ntdll: Activate the module's activation context while resolving imports and
	attaching.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Use activation contexts information to load dlls (based on a patch by
	Jacek Caban).

2007-07-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Added FindActCtxSectionStringA implementation.

2007-07-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/actctx.c, dlls/ntdll/actctx.c, dlls/ntdll/ntdll.spec,
	  include/winternl.h:
	ntdll: Implemented RtlFindActivationContextSectionString.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented FileInformationInAssemblyOfAssemblyInActivationContext
	option in RtlQueryInformationActivationContext.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented AssemblyDetailedInformationInActivationContext option in
	RtlQueryInformationActivationContext.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented ActivationContextDetailedInformation option in
	RtlQueryInformationActivationContext.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c, dlls/ntdll/actctx.c, dlls/ntdll/ntdll.spec,
	  include/winternl.h:
	ntdll: Initial implementation of RtlQueryInformationActivationContext.
	Partially based on a patch by Eric Pouech.

	* dlls/ntdll/actctx.c:
	ntdll: Fix return status when failing to load the associated manifest for
	a module.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Improve some activation context traces.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Store the base directory for an assembly (based on a patch by Eric
	Pouech).

	* dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Create the per-module activation context at module load time.

	* dlls/ntdll/actctx.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h:
	ntdll: Create the process activation context at initialization time.

	* dlls/ntdll/actctx.c:
	ntdll: Don't add an empty assembly when creating an activation context.

	* dlls/ntdll/actctx.c:
	ntdll: Check existing dependencies in activation context before adding a new one.

2007-07-25  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* dlls/winex11.drv/window.c:
	x11drv: Fix the special case where windows have WS_CHILD and WS_POPUP.

2007-07-24  Matt Jones <mattj@google.com>

	* dlls/kernel32/tests/thread.c, server/thread.c:
	server: Only commit SetThreadPriority if new priority is correct.

	* dlls/kernel32/tests/thread.c:
	kernel32: Added test for bad arguments to SetThreadPriority, test for correct
	error value.

2007-07-24  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Added GdipLoadImageFromStreamICM stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipDisposeImage stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c, include/Makefile.in,
	  include/gdiplus.h, include/gdiplusflat.h,
	  include/gdiplusmetaheader.h:
	gdiplus: Added GdipCreateMetafileFromWmf stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetImageType stub.

	* dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c:
	gdiplus: Limit fixme output.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Image getter stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateMetafileFromEmf stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Make pen width depend on world transform.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/pen.c:
	gdiplus: Create gdi pen every time gdi+ pen is used.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use world transform when drawing points.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetWorldTransform/GdipGetWorldTransform.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCloneMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPageScale/GdipGetPageScale.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added support for more page units.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/win.c:
	user32/tests: Flush events more aggressively in mouse input test.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Don't test default char, it doesn't have to be always the same.

2007-07-24  Nigel Liang <ncliang@gmail.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Take into account position of preedit area in PreEditCaretCallback.

2007-07-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Use a different separator as a semi-colon may separate values in the
	CustomActionData.

2007-07-24  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/batch.c:
	cmd: Fix trap when batch pgm runs another batch pgm.

2007-07-24  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Events are reset when a new document URI is loaded, so re-initialise
	them in start_binding.

	* dlls/mshtml/olewnd.c:
	mshtml: Set focus to the Gecko window in
	OleInPlaceActiveObject_OnFrameWindowActivate.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsevents.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call IDocHostUIHandler_HideUI and IDocHostUIHandler_ShowUI when changing
	an UI active window to be in edit mode.
	Add tests for the behaviour of changing edit mode when a UI window is active.

	* dlls/mshtml/view.c:
	mshtml: Pass the correct DOCHOSTUITYPE value to IDocHostUIHandler_ShowUI.
	Don't reset window_active in OleDocumentView_UIActivate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/view.c:
	mshtml: OleDocumentView_UIActivate should call
	IOleInPlaceUIWindow_SetActiveObject and IOleInPlaceFrame_SetBorderSpace.
	Add a test to show this behaviour.
	Don't call nsIWebBrowserFocus_Activate when just activating the window.
	Instead call it when UI-activating the window.

2007-07-24  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix the stretch_rect_fbo() declaration to match the implementation.

	* dlls/wined3d/drawprim.c:
	wined3d: Pass the correct target to glMultiTexCoord.

2007-07-24  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/surface.c:
	wined3d: Remove a return after a return. Found by Smatch.

	* dlls/mscms/profile.c:
	mscms: Don't produce unreachable code during conditional compilation.

	* programs/winefile/winefile.c:
	winefile: Change the settings functions to use the W registry functions.

2007-07-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement getting the encoded signers from an encoded
	signed message.

2007-07-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msxml3/xmlelem.c:
	msxml3: Cast-qual warning fix.

2007-07-24  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Add Samara time zone.

2007-07-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/encode.c:
	crypt32: Fixed wrong allocation size.

2007-07-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add tests for GetServiceKeyName.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Close a handle on failure.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add another test for GetServiceDisplayName.

2007-07-24  Aric Stewart <aric@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Initialize the address to 0 in ws_sockaddr_ws2u.

2007-07-22  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Create the stateblock in Init3D.

2007-07-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, dlls/ddraw/surface.c:
	ddraw: Some d3d-only code fixes.
	Vertex declarations are a d3d feature, thus they should be destroyed
	before d3d is shut down in wined3d. The surface type should be reset
	afterwards to prevent avoid gl surface afterwards and before a new
	render target is created.

2007-07-24  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Release two objects that should be released but are not.

	* dlls/urlmon/internet.c:
	urlmon: Release IInternetProtocolInfo returned from get_protocol_info when
	finished with it.

	* dlls/urlmon/bindprot.c:
	urlmon: LockModule in create_binding_protocol as we ReleaseModule when the
	object is released.

	* dlls/urlmon/session.c:
	urlmon: If we are using an internal protocol ClassFactory, call its AddRef as
	the caller must Release the object.

2007-07-23  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Use page unit when drawing.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPageUnit.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipFillPolygonI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c,
	  dlls/gdiplus/tests/pen.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipSetPenColor.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/tests/pen.c:
	gdiplus: Implemented GdipSetSolidFillColor/GdipGetSolidFillColor.

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: Added pen brush fill test.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetSolidFillColor and GdipGetSolidFillColor stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenBrushFill.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenColor stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenBrushFill.

2007-07-23  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Wrap IHttpNegotiate2 interface exposed by IBindStatusCallback as done
	by native.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for calls to IHttpNegotiate interfaces as exposed
	by IBindStatusCallback.
	Add more tests for specific arguments passed to IHttpNegotiate and
	IHttpNegotiate2. Note that
	for OnResponse pszAdditionalHeaders is NULL when called directly from
	IInternetProtocol (for
	example as seen in our protocol tests) but non-NULL when these interfaces are
	exposed by
	IBindStatusCallback as seen here. Tests conform on Win98 and Winxp.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for calls to IBindStatusCallback_QueryInterface.

	* dlls/urlmon/binding.c:
	urlmon: Add a reference to the IUnknown for Release of STGMEDIUM to account
	for extra call to ReleaseBindInfo.

	* dlls/urlmon/file.c:
	urlmon: ReleaseBindInfo in FileProtocol.

	* dlls/urlmon/binding.c:
	urlmon: Don't ignore bytes read from IInternetProtocol_Read if hres is not S_OK
	(e.g., E_PENDING).
	Bytes can still be read with E_PENDING returned if the whole request could
	not be satisfied, don't
	ignore those.

	* dlls/urlmon/http.c:
	urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and
	InternetQueryDataAvailable in HttpProtocol.

2007-07-24  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Sending 0 bytes shouldn't cause an infinite loop.

2007-07-23  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Add handling for the MSIMODIFY_UPDATE command.

	* dlls/msi/tests/db.c:
	msi: Add tests for the MSIMODIFY_UPDATE command.

	* dlls/msi/alter.c, dlls/msi/table.c:
	msi: Properly delete the columns view.

2007-07-23  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed data messages with CRLs.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed messages with certificates.

	* dlls/crypt32/encode.c:
	crypt32: Use set encoding function for encoding PKCS signed info.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting version from an encoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for getting an encoded signed message's parameters.

	* dlls/crypt32/msg.c:
	crypt32: Use consistent types for storing and encoding signed encode data.

	* dlls/crypt32/msg.c:
	crypt32: Separate signer handles from signer info to avoid unnecessary memory
	allocation.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting outer content of a signed message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement encoding signed messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting the hash for each signer of a signed encoded message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Hash and sign data when updating signed messages.

	* dlls/crypt32/msg.c:
	crypt32: More parameter checking for opening signed encoded messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for opening non-detached signed messages, and clarify
	detached open.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a partial stub for updating a signed encoded message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for signed message encoding.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for updating signed encoded messages.

	* dlls/crypt32/decode.c:
	crypt32: Check for and fail on indefinite-length encoding.

	* dlls/crypt32/encode.c:
	crypt32: Introduce function to encode an array of items as a set.

2007-07-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add stub encoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for opening signed message to encode.

2007-07-23  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/user32/mdi.c:
	user32: MDI tile and cascade should not resize non-resizable windows.

	* dlls/user32/mdi.c:
	user32: Correct trace to log calculated values rather than uninitialized ones.

2007-07-23  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.c:
	winefile: Move some self contained functions to use explicit W functions.

	* dlls/wldap32/init.c, dlls/wldap32/misc.c, dlls/wldap32/page.c,
	  dlls/wldap32/value.c:
	wldap32: Don't produce unreachable code during conditional compilation. Found
	bySmatch.

	* programs/winefile/winefile.c:
	winefile: Replace malloc with HeapAlloc.

2007-07-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Handle is checked before servicename.

2007-07-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Trace the declaration element type in
	primitiveDeclarationConvertToStridedData().

	* dlls/wined3d/state.c:
	wined3d: Don't modify the blending parameters in state_blend().

2007-07-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c:
	msi: Cast-qual warning fix.

2007-07-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Use more messages as a possible indication of the foreground window
	changes.

2007-07-20  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c:
	gdiplus: Change atan2 to gdiplus_arctan2.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added startcap rendering.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use base inset for custom line caps.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/graphics.c:
	gdiplus: Added rendering of fill-path type custom line caps.

2007-07-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h:
	pdh: Implement and test PdhAddEnglishCounter{A, W} and
	PdhCollectQueryDataWithTime.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h, include/pdhmsg.h:
	pdh: Implement and test PdhLookupPerfIndexByName{A, W} and
	PdhLookupPerfNameByIndex{A, W}.

	* dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Add more tests and make them pass.

	* dlls/pdh/pdh_main.c:
	pdh: Add a stub processor time counter.

2007-07-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Use printenv_t for GetDriverInfoFromReg.

2007-07-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix the shader version on some instruction tokens.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Correctly handle normalized vertex declaration data types.

2007-07-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/net/Ko.rc, programs/net/rsrc.rc:
	net: New Korean resource.

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* dlls/localui/localui.rc, dlls/localui/ui_Ko.rc:
	localui: New Korean resource.

2007-07-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* tools/wineshelllink:
	tools: Add basic support for the startup notifications standard.

	* tools/wine.desktop:
	tools: Associate wine with the application/x-executable MIME type.

2007-07-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Add support for non-GET requests (e.g., POST) in HttpProtocol.

	* dlls/urlmon/http.c:
	urlmon: Actually send the additional headers returned by
	IHttpNegotiate::BeginningTransaction.

	* dlls/urlmon/http.c:
	urlmon: Call HttpOpenRequest with INTERNET_FLAG_KEEP_CONNECTION,
	INTERNET_FLAG_NO_CACHE_WRITE if appropriate.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Add test for BINDVERB_POST in http_protocol.

2007-07-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/sql.y, dlls/msi/streams.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Ref count temporary columns and release them when necessary.

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/query.h,
	  dlls/msi/select.c, dlls/msi/sql.y, dlls/msi/streams.c,
	  dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/tests/package.c,
	  dlls/msi/tokenize.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement adding columns using the ALTER command.

2007-07-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Move decoding hash messages to a helper function.

2007-07-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comcat/information.c:
	comcat: Cast-qual warning fix.

	* dlls/kernel32/resource.c:
	kernel32: Cast-qual warning fix.

2007-07-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/event.c:
	winex11drv: Correctly react to focus loss away from Wine.

	* dlls/user32/tests/msg.c, dlls/user32/tests/win.c, server/window.c:
	server: Treat desktop as a top-level window.

	* dlls/user32/tests/win.c:
	user32: Add test for SetForegroundWindow(desktop).

2007-07-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add tests for GetDisplayName.

2007-07-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Run on NT4 again.

2007-07-20  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Convert bind ack and nack reject reasons into RPC status codes when
	binding.

2007-07-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Rename the test to better represent the tested functionality.

	* dlls/winex11.drv/pen.c:
	winex11.drv: Constify the pen dash data.

2007-07-19  Nigel Liang <ncliang@gmail.com>

	* dlls/user32/edit.c, dlls/winex11.drv/xim.c:
	winex11.drv: Implement XIMPreEditCaretCallback.

2007-07-19  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenStartCap.

	* dlls/gdiplus/pen.c:
	gdiplus: Updated GdipClonePen to clone pen's members by value, not reference.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCloneBrush.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: Associate a brush with a pen.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added rendering of custom line caps.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use atan2 instead of atan.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added custom line cap setters.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCloneCustomLineCap.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/customlinecap.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Initial custom line caps implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipRotateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipTranslateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipScaleMatrix.

2007-07-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Resize rebar control on window resize.

2007-07-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Cast-qual warning fix.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/dplayx/dplobby.c:
	dplayx: Cast-qual warning fix.

2007-07-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/vartype.c:
	oleaut32: Remove a return after return.

2007-07-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Some 'refcount' tests.

	* dlls/advapi32/service.c:
	advapi32/service: lpBinaryPathName is mandatory.

2007-07-19  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add test for GetShortPathNameW.

	* programs/cmd/wcmdmain.c:
	cmd: Use toupperW instead of toupper.

	* dlls/user32/painting.c:
	user32: Add comment to a function.

2007-07-19  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement querying computed hash of a decoded hash message.

	* dlls/crypt32/msg.c:
	crypt32: Store hash algorithm ID along with other parameters when decoding a
	hash message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Store (most) parameters of a decoded hash message.

2007-07-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c:
	user32/tests: Simplify a test.

	* dlls/comctl32/comctl32.h, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/tooltips.c:
	comctl32: tooltips: Remove broken support for non-NULL-terminated strings in
	TOOLTIPS_GetDispInfo[AW].

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and fix invalid indexes passed in TB_ISBUTTON*.

2007-07-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winuser.h:
	winuser.h: Add RealChildWindowFromPoint declaration.

2007-07-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add support for abbreviated empty elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Don't fail to load manifests that contain unknown elements or attributes.
	Print FIXMEs for errors that really cause the loading to fail.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add support for optional flag in dependencies.

	* dlls/ntdll/actctx.c:
	ntdll: Cope with missing assemblyIdentity elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Skip xml comments in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added manifest lookup in global winsxs directory (based on a patch by
	Jacek Caban).

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h:
	ntdll: Store the windows directory too.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the asmv2:hash element in manifests.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the binding redirect element in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the clrClass and clrSurrogate elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the external proxy element in manifests.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Abstract the entity array type as we need it for assemblies too.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the description element in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the language attribute in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the inheritance flags in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of hash attributes in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of public key token in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added support for the assembly leaves of activation contexts.

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of file elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of dependencies in manifests.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add infrastructure for loading manifest dependencies (based on a patch
	by Eric Pouech).

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of the version in manifests (based on a patch by Jacek Caban).

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of the processor architecture in manifests.

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Beginnings of manifest parsing.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add infrastructure for loading a manifest file or resource.
	Partially based on a patch by Eric Pouech.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added basic structures for storing activation context assembly
	information.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c, dlls/kernel32/thread.c, dlls/ntdll/actctx.c,
	  dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented handling of the per-thread activation context stack.

	* dlls/kernel32/actctx.c, dlls/ntdll/Makefile.in, dlls/ntdll/actctx.c,
	  dlls/ntdll/ntdll.spec, include/winternl.h:
	kernel32: Move activation context creation to ntdll (based on a patch by
	Eric Pouech).

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  include/thread.h, include/winternl.h, tools/winebuild/relay.c:
	ntdll: Move private data to make room in the TEB for the activation context data.

2007-07-18  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfileop.c:
	shell32: Implementation of SheGetDirA/W and SheChangeDirA/W.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add date/time toolbar button.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add date/time dialog.

2007-07-18  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Improved PolyDraw in path closed case.

2007-07-19  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/wininet.spec:
	wininet: Stub for InternetQueryFortezzaStatus().

2007-07-18  Juan Lang <juan.lang@gmail.com>

	* dlls/msi/install.c:
	msi: Return FALSE from MsiGetMode for MSIRUNMODE_OPERATIONS.

	* include/wincrypt.h:
	wincrypt: Add more missing definitions.

2007-07-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/tests/xmldoc.c:
	msxml3/tests: Avoid a crash that happens on some native systems.

2007-07-18  Evan Stade <estade@gmail.com>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/pen.c,
	  dlls/winex11.drv/x11drv.h:
	winex11.drv: Draw dashed lines for extended pens.

2007-07-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the buffer bounds check.

2007-07-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/streams.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement reference counting for tables, manipulated with the HOLD and
	FREE sql commands.

	* dlls/msi/tests/db.c:
	msi: Add more tests for the ALTER command.

2007-07-18  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Add tests for HttpProtocol behavior when it is called without
	the BINDF_FROMURLMON flag.

	* dlls/urlmon/http.c:
	urlmon: Implement HttpProtocol::Terminate.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol behavior when it is called without the BINDF_FROMURLMON
	flag.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http_protocol tests to succeed when called more than once.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http_protocol tests to succeed on Win98.

	* dlls/urlmon/http.c:
	urlmon: Use InternetCloseHandle instead of CloseHandle.

	* dlls/urlmon/http.c:
	urlmon: Remove FLAG_CALLED_SWITCH, which is now redundant.

2007-07-19  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/msc.c, tools/winedump/msmangle.c:
	tools: Remove unreachable break after return/break. Found by Smatch.

	* programs/notepad/dialog.c, programs/regedit/framewnd.c,
	  programs/regedit/listview.c, programs/taskmgr/taskmgr.c,
	  programs/winedbg/be_i386.c, programs/winedbg/gdbproxy.c,
	  programs/wordpad/wordpad.c:
	programs: Remove unreachable break after return/break. Found by Smatch.

	* dlls/comctl32/ipaddress.c, dlls/msi/cond.y, dlls/sane.ds/ui.c,
	  dlls/user32/tests/win.c, dlls/winex11.drv/init.c:
	dlls: Remove unreachable break after return/break. Found by Smatch.

2007-07-18  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winhelp/winhelp.c:
	winhelp: Add missing case label "default". Found by Smatch (unreached code).

	* dlls/ntdll/cdrom.c, dlls/ntdll/serial.c:
	ntdll: Don't produce unreachable code during conditional compilation. Found
	by Smatch.

2007-07-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/swapchain.c:
	wined3d: glXSwapBuffers needs a GLX context.

2007-07-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for ImpersonatePrinterClient.

2007-07-18  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Some tests for DeleteService.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Check for duplicate displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cleanup (long lines and a typo).

2007-07-18  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for ConvertStringSecurityDescriptorToSecurityDescriptor.

	* dlls/advapi32/security.c:
	advapi32: Set the right pointer so that StringAcl is updated correct in
	ParseAceStringRights.
	The number of allowed hex digits should be 8, not 6.

	* dlls/advapi32/security.c:
	advapi32: Don't crash in ConvertStringSecurityDescriptorToSecurityDescriptorW
	if LocalAlloc fails.

	* dlls/advapi32/security.c:
	advapi32: Add the size of the security descriptor structure to the size of
	memory required in ParseStringSecurityDescriptorToSecurityDescriptor.

	* dlls/advapi32/security.c:
	advapi32: Fix a typo in ParseStringAclToAcl which caused the ACE to be written
	inside of the ACL memory.

	* dlls/advapi32/security.c:
	advapi32: Fix ComputeStringSidSize to work with SIDs with one sub authority.
	Use GetSidLengthRequired instead of computing the length in a way that
	won't always be correct.

2007-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/urlcache.c, dlls/wininet/wininet.spec:
	wininet: Stubs for IsUrlCacheEntryExpired[AW].

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Certain options of InternetQueryOption can take a NULL handle, so
	don't do the NULL handle check at the beginning.

2007-07-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/msg.c:
	user32/test: Destroy no longer needed test dialog windows.

2007-07-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test for duplicate displayname.

2007-07-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-07-17  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipMultiplyMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenDashStyle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipClonePen.

2007-07-18  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool.h: Add missing struct.

2007-07-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Only double the size if the remote call is from MsiGetPropertyA.

	* dlls/msi/custom.c:
	Revert "msi: Only call a custom action remotely if the type is
	msidbCustomActionTypeInScript."
	This reverts f2ae31000b6d6c105838fad36c17ba1fb1f5524b commit.

2007-07-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/utils.c:
	wined3d: Remove unreachable code: break after return. Found by Smatch.

2007-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Cast-qual warning fix.

2007-07-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: Add a couple more parameter tests for hash messages.

	* include/wincrypt.h:
	crypt32: Fix typo.

	* dlls/crypt32/msg.c:
	crypt32: Use property list for decoded message parameters.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting content of a data message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add a few tests for decoded message parameters.

	* dlls/crypt32/decode.c:
	crypt32: Fix a bad comment.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement decoding hash messages.

	* dlls/crypt32/decode.c:
	crypt32: Remove a redundant line.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for decoding a hash message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c:
	crypt32: Move digested data encoding to encode.c.

2007-07-17  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add some more RPC to NCA status code mappings.
	Add RPC_S_SEC_PKG_ERROR to the list of "hard" errors.

2007-07-16  Evan Stade <estade@gmail.com>

	* dlls/gdi32/gdi_private.h, dlls/gdi32/painting.c, dlls/gdi32/path.c,
	  dlls/gdi32/tests/path.c:
	gdi32: Added PATH_PolyDraw.

	* dlls/gdi32/tests/path.c:
	gdi32: Added PolyDraw tests.

2007-07-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Make sure we can set volume before reporting WAVECAPS_VOLUME.

2007-07-16  James Hawkins <truiken@gmail.com>

	* dlls/vdmdbg/vdmdbg.c, dlls/vdmdbg/vdmdbg.spec, include/Makefile.in,
	  include/vdmdbg.h:
	vdmdbg: Add a stub implementation of VDMEnumTaskWOW.

2007-07-13  Kovács András <andras@csevego.net>

	* .gitignore, include/Makefile.in, include/d3d10.idl, include/dxgi.idl,
	  include/dxgitype.idl:
	include: Add some idl headers for d3d10.

2007-07-17  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Added support for floating-point constants.

2007-07-16  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathBeziers.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenDashStyle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterRewind.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterNextSubpath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterCopyData.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Initial path iterator implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenMiterLimit.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Export GdipSetPenLineJoin.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenLineCap197819.

2007-07-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Only call a custom action remotely if the type is
	msidbCustomActionTypeInScript.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/string.c, dlls/msi/table.c, dlls/msi/tests/install.c:
	msi: Load the AdminProperties stream if the package is an Admin package.

2007-07-15  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c, dlls/dinput/tests/mouse.c:
	dinput: Use CALLWINDPROC hook to monitor focus loses away from acquired windows.

	* dlls/dinput/dinput_main.c:
	dinput: Use PostMessage instead of SendMessage. Remove message window.

2007-07-16  Tim Schwartz <tim@sanityinternet.com>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add NetUseAdd() stub.

2007-07-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/start/start.c:
	programs/start: use SEE_MASK_NO_CONSOLE flag as default.
	Allows to start console applications in a new window (as Windows does).

	* dlls/shell32/shlexec.c:
	shell32: Add support for SEE_MASK_NO_CONSOLE flag.

2007-07-16  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/shlfolder.c:
	shell32: Fix missing unlock on an error path. Found by Smatch.

2007-07-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Check combination of service-type and start-type.

2007-07-16  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Never allocate memory for the discriminant in union_arm_unmarshall as
	the memory is part of the union and has already been allocated.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check to make sure there is enough data in the buffer during
	unmarshalling, so that the code doesn't try to read beyound the end of the
	buffer.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Even though FC_ENUM16 is an unsigned type, the highest allowable value
	that can be marshalled is SHRT_MAX, not USHRT_MAX.

	* dlls/ole32/compobj.c:
	ole32: Remove some dead code.
	CoFreeUnusedLibraries doesn't do anything and COM_FlushMessageQueue
	won't actually allow any RPCs to be processed as the apartment has
	already been destroyed.

2007-07-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/pdh/pdh.spec:
	pdh: Forward PdhOpenQuery to PdhOpenQueryW.

2007-07-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/sync.c, dlls/kernel32/vxd.c:
	kernel32: Always clear the I/O status block count before calling ntdll functions.

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/sync.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/thread.c, server/trace.c:
	server: Merge APC processing into the select request.
	This is needed to return the correct value when one of the handles
	being waited on is set to signaled state by the APC.

	* dlls/kernel32/file.c, dlls/kernel32/tests/pipe.c:
	kernel32: Wait in overlapped Read/WriteFile even when no overlapped structure
	is passed.

2007-07-13  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillPath.

	* dlls/gdiplus/graphics.c:
	gdiplus: Simplified GdipDrawPath by moving more of the code to the helpers.

	* dlls/gdiplus/tests/graphics.c:
	gdiplus: Added GpGraphics save/restore tests.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/graphics.c:
	gdiplus: Constructor tests for GpGraphics.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusenums.h, include/gdiplusflat.h:
	gdiplus: GdipSaveGraphics/GdipRestoreGraphics stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added pixel offset mode.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added interpolation mode.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added compositing quality.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added smoothing modes.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetPathFillMode.

2007-07-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shlfolder.c:
	shell32: Add a cache for queried shell folder interfaces.

2007-07-15  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: Fix behavior of InternetQueryDataAvailable if INTERNET_FLAG_ASYNC
	is set.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol behavior when InternetQueryDataAvailable returns
	ERROR_IO_PENDING.

	* dlls/wininet/tests/http.c:
	wininet/tests: Add testing framework and tests for internet status callbacks.

	* dlls/wininet/tests/http.c:
	wininet/tests: Properly handle ERROR_IO_PENDING from InternetQueryDataAvailable.

2007-07-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/msvcrt/except.c:
	msvcrt: Preserve registers when calling unwind function.

2007-07-16  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/tests/pipe.c:
	kernel32: Overlapped pipe tests.

2007-07-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix parameter types of SHGetIniStringW.

2007-07-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix STATE_IS_ACTIVELIGHT.

2007-07-14  Alec Berryman <alec@thened.net>

	* dlls/itss/chm_lib.c:
	itss: Replace malloc/free with HeapAlloc/HeapFree.

2007-07-13  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement decoding data messages (when opened in non-streaming mode).

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement updating decode messages.

	* dlls/crypt32/msg.c:
	crypt32: Store crypt provider in decode message.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/crl.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Fix decoding sequences with extra trailing data.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add test showing extra trailing bytes should be tolerated in encoded
	data.

2007-07-15  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Update WSASendTo's iovec properly.

2007-07-13  Jeremy White <jwhite@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Added a test for the case where lpvBits in GetDIBits is NULL and the
	bitcount is 0.

	* dlls/gdi32/dib.c:
	gdi32:	Do not fill in the color table if lpvBits is NULL.

2007-07-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/search.c:
	winedump: Cast-qual warnings fix.

2007-07-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Don't create a directory that's not needed.

2007-07-13  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/user32.spec:
	user32: Change SetDeskWallPaper spec.

2007-07-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.41.

----------------------------------------------------------------
2007-07-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Skip tests if we don't have enough rights.

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Skip test if we don't have enough rights.

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: Use skip instead of trace.

2007-07-13  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: MIDIIn_MessageHandler: Fix non-SysEx messages parsing.

2007-07-13  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Report format error on sample rate mismatch when opening
	wave-in device.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Protect against AudioUnitRender clobbering our buffer list.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Correct the AudioBufferList allocated for input.

2007-07-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add a test for running an ADMIN install.

	* dlls/msi/tests/install.c:
	msi: Add a test for installing from different current working directories.

	* dlls/msi/tests/source.c:
	msi: Fix compilation in MSVC.

	* dlls/msi/tests/install.c:
	msi: Fix three tests that were failing in Windows.

	* dlls/msi/tests/automation.c:
	msi: Fix automation.c compile for MSVC.

2007-07-12  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Update comments about hash message version numbers.

	* dlls/crypt32/msg.c:
	crypt32: Introduce an updated state, and use it to remove boolean "begun".

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Change finalized from a boolean to a state and use it to simplify
	message updating.

	* dlls/crypt32/tests/msg.c:
	crypt32: Relax a test, the specific error isn't so important.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement retrieving a hashed message's content.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Introduce an algorithm id encoding function that encodes missing
	parameters as NULL
	and use it to match native encoding (and simplify PKCS signer tests).

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for retrieving the content of a non-finalized (detached)
	message.

	* dlls/crypt32/msg.c:
	crypt32: Detached hash messages don't contain the content, so don't make a
	copy of it.

	* dlls/crypt32/msg.c:
	crypt32: Don't check if msg is NULL, tests show native doesn't either.

	* dlls/crypt32/msg.c:
	crypt32: Add a helper function to copy params.

	* dlls/crypt32/msg.c:
	crypt32: Copy data in hash message update.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for hash message encoding.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting hash message version.

	* include/wincrypt.h:
	crypt32: Add more missing defines.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement updating hash messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test updating hash messages with NULL stream output function.

	* dlls/crypt32/tests/msg.c:
	crypt32: Simplify hash value tests.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting a hash message's hash value.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for getting hash message params.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub hash message implementation.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test opening hash messages to encode with streaming.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for updating hash messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add open tests for hash messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement streamed encoding of definite-length data messages.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c:
	crypt32: Make some encoding functions available outside encode.c.

2007-07-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/printui/Makefile.in, dlls/printui/printui.c,
	  dlls/printui/printui_private.h:
	printui: Parse args for PrintUIEntryW.

2007-07-12  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ntdll/env.c:
	ntdll: Use the win16 current directory for win16 processes.

2007-07-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/provider.c:
	dxdiagn: Add reporting of some display related information.

2007-07-12  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipAddPathPath test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipResetPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathFillMode.

	* dlls/gdiplus/graphicspath.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Improved GdipGetPathWorldBounds handling of both matrix and pen's
	effect on bounding box.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added more GdipGetPathWorldBounds tests.

	* dlls/gdiplus/graphicspath.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Use passed pen in GdipAddPathWorldBound.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/pen.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenLineJoin.

2007-07-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix some spec entry definitions.

	* dlls/ntdll/om.c:
	ntdll: Remove an artificial limitation in NtQuerySecurityObject.

	* include/basetsd.h:
	include: Add HandleToUlong, UlongToHandle, UintToPtr, UlongToPtr compatibility
	macros.

2007-07-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check servicetype and starttype.

	* dlls/advapi32/service.c:
	advapi/service: Create specific access rights for service handles.

2007-07-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/tests/install.c:
	msi: Reload properties as they may have been changed by a transform.

	* dlls/msi/package.c:
	msi: Fix a copy and paste error.

2007-07-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/htmlelem.c, dlls/mshtml/nsiface.idl:
	mshtml: Implement HTMLElement_insertAdjacentHTML and
	HTMLElement_insertAdjacentText.

	* dlls/msxml3/node.c:
	msxml3: Implement IXMLDOMNode::get_text for CDATA, processing instruction and
	comment nodes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make binding to an interface a function of RpcAssoc instead of
	binding handles, since binding requires information from the
	association and not from the binding handle.

	* dlls/ntdll/nt.c:
	ntdll: The impersonation level in NtDuplicateToken should be taken from the
	SecurityQualityOfService member of ObjectAttributes if present.

2007-07-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wldap32/init.c, dlls/wldap32/value.c:
	wldap32: Fix some potential infinite loops because of an unsigned loop counter.

	* dlls/dnsapi/query.c, dlls/dnsapi/record.c:
	dnsapi: Fix some potential infinite loops because of an unsigned loop counter.

	* dlls/user32/class.c, dlls/user32/tests/class.c:
	user32: Allocate a dual A/W winproc for DefWindowProc.

	* dlls/user32/winproc.c:
	user32: Check both A and W proc for previously allocated winprocs.
	Some apps get a winproc as A and then set it again as W.

2007-07-11  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Changed the way the direction of the endcap is calculated to make
	LineCapArrowAnchor direction match Windows better.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipGetPathWorldBounds test.

	* dlls/gdiplus/tests/matrix.c:
	gdiplus: Added GdipTransformMatrixPoints test.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fixed memory leak in GdipDeletePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipGetPathWorldBounds.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipTransformPath.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/matrix.c:
	gdiplus: Added GdipCreateMatrix2 test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipTransformMatrixPoints.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/matrix.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added basic matrix implementation.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added draw_polyline error checking.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added draw_polybezier error checking.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipStartPathFigure.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawLines to use SaveDC()/RestoreDC()/end caps.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawArc to use SaveDC()/RestoreDC()/line caps.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipAddPathArc test.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathArc.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Moved two inline helpers to the header.

2007-07-11  Mark Adams <mark@transgaming.com>

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Fix byte ordering of Linux ports.

2007-07-10  Mark Adams <mark@transgaming.com>

	* configure, configure.ac, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/iphlpapi/ipstats.c, dlls/iphlpapi/ipstats.h,
	  include/config.h.in:
	iphlpapi: Add support for GetTcpTable on Mac OS X.

2007-07-11  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/sync.c:
	kernel32: SetNamedPipeHandleState() is a stub, so for now don't check its
	return value.

	* dlls/kernel32/sync.c:
	kernel32: Swap incorrect use of buffers.

2007-07-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/install.c:
	msi/tests: Comment out call to function that is still a stub in Wine.

2007-07-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/cmd/wcmdmain.c:
	programs/cmd: Do the assignment after the return to avoid a missing free()
	(Coverity).

2007-07-12  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Make HttpProtocol conform with native wininet on wine.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol_Start and strndupW to work properly with native wininet.

2007-07-11  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Convert IDirectInput into multi-interface object.

2007-07-11  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Improve safety of iterations when returning WAVEHDRs to client.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Enable DirectSound HEL mode for input.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Enable DirectSound HEL mode for output.

2007-07-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check for empty servicename and binaryname.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check if we have enough access rights to create a service.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: First tests (and fixes) for CreateService.

	* dlls/advapi32/service.c:
	advapi/service: Fix possible handle leak.

	* dlls/advapi32/service.c:
	advapi/service: Simplify DeleteService by using RegDeleteTree.

2007-07-11  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/shlwapi/clist.c:
	shlwapi: Use publicly defined structure DATABLOCK_HEADER instead of redefining
	it locally.

2007-07-11  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/xdnd.c:
	winex11.drv: Remove old dnd code.

2007-07-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh_main.c:
	pdh: Fix two typos.

	* dlls/pdh/pdh_main.c:
	pdh: Use GetTickCount64 instead of GetTickCount.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/msg.c:
	user32/tests: Flush messages more aggressively in a couple of tests.

2007-07-09  Kovács András <andras@csevego.net>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3d10/Makefile.in, dlls/d3d10/d3d10.spec,
	  dlls/d3d10/d3d10_main.c, dlls/d3d10/version.rc:
	d3d10: Add stub for d3d10.dll.

2007-07-09  Tim Schwartz <tim@sanityinternet.com>

	* .gitignore, programs/net/En.rc, programs/net/Makefile.in,
	  programs/net/net.c, programs/net/resources.h, programs/net/rsrc.rc:
	net.exe: Converted strings to resources.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/kernel_main.c,
	  include/winbase.h:
	kernel32: Implemented GetTickCount64.

2007-07-10  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Changed calls to floor to floorf.

2007-07-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c, include/msiquery.h:
	msi: Add tests for adding properties with a transform during an install.

	* dlls/msi/tests/db.c:
	msi: Add tests for adding properties in a transform.

	* dlls/msi/tests/package.c:
	msi: Fix current _Property table tests and add more tests.

2007-07-10  Lei Zhang <thestig@google.com>

	* programs/start/start.c:
	start.exe: Put double quotes around arguments with spaces.

2007-07-10  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Use the COMPOSITIONSTRING in hCompStr.
	Stop using our custom structure for the Composition string and instead
	use the COMPOSITIONSTRING whose handle is in the IMC structure.

2007-07-10  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Implement HttpProtocol.

2007-07-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/mpg123.h:
	winemp3: Remove function declarations with no definition and unused macros.

	* dlls/winemp3.acm/decode_i386.c, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpg123.h:
	winemp3: Remove global mpstr pointer.

2007-07-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Do not report an error if a requested to add font is already loaded.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix typo in liblcms notice check.

2007-07-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c:
	msi: Check for NULL transform, as there may be no transforms for the _Columns
	or _Tables tables.

2007-07-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Don't use struct member before NULL check (Coverity).

2007-07-10  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Get rid of the hash idle state, native doesn't behave as though it
	has one.

2007-07-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/relay.c:
	ntdll: Avoid crash with WINEDEBUG=+snoop.

2007-07-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/common.c:
	winemp3: Use head_check to check for valid headers.

	* dlls/winemp3.acm/mpg123.h:
	winemp3: Check the right macro when defining TRUE.

2007-07-09  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/builtins.c:
	cmd: Use toupperW instead of toupper.

2007-07-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32: Create specific access rights for service control manager handles.

2007-07-10  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: We should send TBN_GETDISPINFOW even for ANSI controls
	(with testcase).

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: The iImage in TBN_GETDISPINFO should be initialized to -1.

2007-07-10  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/pe.c:
	winedump: Add RT_MANIFEST resource type.

	* include/winuser.h:
	include: Add some definitions for manifest resources.

2007-07-10  Bernd Buschinski <b.buschinski@web.de>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix test typo/compile error.

2007-07-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Add a few more notices for missing packages.

	* configure, configure.ac:
	configure: Move notices about missing features next to the corresponding checks.

	* aclocal.m4:
	aclocal: Add macros for logging messages about missing features.

2007-07-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/sip.c:
	crypt32: Implement CryptSIPGetSignedDataMsg, CryptSIPPutSignedDataMsg,
	CryptSIPCreateIndirectData, CryptSIPVerifyIndirectData, and
	CryptSIPRemoveSignedDataMsg.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c, dlls/crypt32/sip.c,
	  dlls/crypt32/tests/sip.c:
	crypt32: Implement CryptSIPLoad.

2007-07-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added a test for GdipAddPathLine2.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fixed bug in GdipGetPathPoints().

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added constructor and destructor test for gdiplus paths.

2007-07-09  Evan Stade <estade@evanstade.smo.corp.google.com>

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Make LineCapArrowAnchor look more like it does in windows.

2007-07-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed a bug in helper function draw_polybezier.

	* dlls/gdiplus/graphics.c:
	gdiplus: GdipDrawCurve2 now uses SaveDC()/RestoreDC() and end caps.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawRectangleI.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated draw_pie to use SaveDC/RestoreDC.

2007-07-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: More decode message update tests.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add some tests for updating decode messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting the type of a decode message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub decode message implementation.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and fix CryptMsgGetParam for streamed messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for streamed encoding of data messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test that inner content OID is ignored for data messages.

	* dlls/crypt32/msg.c:
	crypt32: Make a copy of a passed-in stream info rather than assuming the
	pointer will live forever.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add more tests for opening a data message for encoding.

	* dlls/crypt32/msg.c:
	crypt32: Pass function pointers to CryptMsgBase_Init rather than rely on
	callers to initialize them.

2007-07-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Clear static variables after releasing hooks.

2007-07-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Add tests for ObtainUserAgentString.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Improve ObtainUserAgentString conformance to native.

2007-07-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle adding columns in transforms.

	* dlls/msi/tests/db.c:
	msi: Test adding columns with data in a transform.

	* dlls/msi/tests/db.c:
	msi: Delete msifile after the tests.

	* dlls/msi/tests/db.c:
	msi: Match the changes made by the hand-generated and API-generated transforms.

2007-07-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhGetCounterInfo{A, W} and PdhGetCounterTimeBase.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhGetRawCounterValue.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhSetCounterScaleFactor and PdhGetFormattedCounterValue.

	* dlls/pdh/tests/pdh.c:
	pdh: Add tests for Pdh{Add, Remove}Counter and PdhCollectQueryData.

	* dlls/pdh/pdh_main.c:
	pdh: Add an uptime counter source based on GetTickCount.

2007-07-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advpack/install.c, dlls/setupapi/tests/parser.c:
	advpack+setupapi: Remove unneeded checks before SetupCloseInfFile.

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Avoid crash in SetupCloseInfFile.

2007-07-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c:
	wined3d: Store the last active thread.

	* dlls/wined3d/context.c:
	wined3d: Make ActivateContext a bit smaller.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add CTXUSAGE_CLEAR context usage.

	* dlls/wined3d/drawprim.c:
	wined3d: Print the fixed and unfixed vertex warning only when needed.

2007-07-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Initialize surfaces at creation.

2007-07-09  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: We no longer need the shared library extension.

	* configure, configure.ac, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c:
	configure: Merge the libX11 and libXext existence check with the soname check.

	* configure, configure.ac, dlls/gdi32/freetype.c,
	  dlls/wineps.drv/truetype.c:
	configure: Merge the libfreetype existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/wintab.c:
	configure: Make the libXi soname check depend on the header check.

	* configure, configure.ac, dlls/winex11.drv/mouse.c:
	configure: Make the libXcursor soname check depend on the header check.

2007-07-06  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathTypes.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathPoints.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPointCount.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClosePathFigures.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClosePathFigure.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphicspath.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathLine2.

	* include/gdiplusflat.h:
	gdiplus: Public declaration of GdipSetPenEndCap.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added linecap rendering for GdipDrawBezier.

2007-07-07  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c:
	gdiplus: Rendering of linecaps.

2007-07-08  Hans Leidekker <hans@it.vu.nl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/pdh/Makefile.in, dlls/pdh/tests/Makefile.in,
	  dlls/pdh/tests/pdh.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	pdh: Add tests for opening and closing queries.

2007-07-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c,
	  dlls/dinput/dinput_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Rename set_dinput_hook and call it from the base class.
	Since keyboard's acquire and unacquire don't do anything special just call
	the base class.

	* dlls/dinput/device_private.h, dlls/dinput/dinput_main.c,
	  dlls/dinput/dinput_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Handle multiple keyboard and mouse devices.

	* dlls/dinput/device_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Export Mouse and Keyboard GUIDs.

	* dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Keep a list of all IDirectInput objects and check it instead of refcount
	to create/destroy hook thread.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Keep the list of all the dinput devices created for each IDIrectInput
	object.

2007-07-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: Handle to Service Control Manager is checked first.

2007-07-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Make http protocol mime type test pass on native.

2007-07-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Advertise VTF support.

	* dlls/wined3d/directx.c:
	wined3d: Advertise A32B32G32R32F render target support.

2007-07-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h:
	dsound: Simplify IDirectSoundBufferImpl_GetCurrentPosition.

	* dlls/dsound/sound3d.c:
	dsound: Fix division by zero in DSOUND_Calc3DBuffer.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Remove some more unused variables.

2007-07-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c:
	dwmapi: Add a stub implementation for DwmIsCompositionEnabled.

2007-07-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Prompt for saving file changes.

2007-07-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/profile.c:
	kernel32/tests: Add a forgotten if statement.

2007-07-07  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shlview.c:
	shell32: Set current directory when executing files in a shell view.

2007-07-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/pdb.c:
	winedump: Cast-qual warnings fix.

	* tools/winedump/lnk.c:
	winedump: Cast-qual warnings fix.

	* dlls/ole32/stubmanager.c:
	ole32: Cast-qual warning fix.

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Cast-qual warning fix.

2007-07-07  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-07-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement high order patches.

	* dlls/wined3d/device.c:
	wined3d: Do not set streamIsUP in DrawPrimitiveStrided.

2007-07-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/executebuffer.c:
	ddraw: Y coords are inversed.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c:
	ddraw: Update the wined3d matrix if a current matrix handle is modified.

2007-07-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c:
	wined3d: Offscreen rendering from foreign threads.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Clean up some unused variables.

	* dlls/dsound/propset.c:
	dsound: Revert "dsound: Disable property sets if hardware doesn't support it.".

2007-07-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Silence the buffer warning more often.

2007-07-05  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusgpstubs.h:
	gdiplus: Added SetPenEndCap.

2007-07-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Maketest.rules.in:
	Maketest.rules: Add dependency on IDL headers for crosstest objects.

2007-07-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Disable copy/cut in menu when appropriate.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: fontdlg: Respect the CF_NOSCRIPTSEL flag.

2007-07-05  Romain Iehl <romain.iehl.wine@gmail.com>

	* dlls/dsound/sound3d.c:
	dsound: Correct field access.

	* dlls/dsound/sound3d.c:
	dsound: Simplify the calculation of sound attenuation due to distance.

	* dlls/dsound/sound3d.c:
	dsound: Fix bug preventing correct calculation of the sound parameters
	of a 3Dbuffer, when an application calls CommitDeferredSettings after
	the 3DBuffer has been released.

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ddraw/tests/refcount.c:
	ddraw/tests: Use skip instead of trace.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Use skip instead of trace.

2007-07-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/tests/mouse.c:
	dinput: Correct test - use appropriate mouse state structure.

2007-07-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/shell32/shell.c, dlls/shell32/shellole.c:
	shell32: DragQueryFile doesn't count the null terminator.

2007-07-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c, dlls/msi/msiserver.idl:
	msi: Enable remote custom actions.

	* dlls/msi/cond.y, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiEvaluateCondition.

	* dlls/msi/format.c, dlls/msi/msipriv.h:
	msi: Forward MsiFormatRecordA to MsiFormatRecordW.

	* dlls/msi/format.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiFormatRecordW.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Fix use of BSTRs.

2007-07-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/storage32.c:
	ole32: Cast-qual warnings fix.

	* dlls/ole32/ifs.c:
	ole32: Constify a variable (and fix a typo concerning its level of indirection).

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for CloseServiceHandle.

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for OpenServiceA.

2007-07-05  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/lsa.c, dlls/crypt32/tests/msg.c,
	  dlls/ddraw/tests/dsurface.c, dlls/dsound/primary.c,
	  dlls/ntprint/ntprint.c, dlls/setupapi/tests/install.c,
	  dlls/winealsa.drv/dsoutput.c, include/basetsd.h,
	  programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	Assorted spelling fixes.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-07-05  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Using a bitmap font as the fallback sans serif is a very bad idea.

2007-07-04  Pedro Araujo Chaves Jr <inckie@gmail.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Fallback to the first found printer as default printer.

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/ntlm.c:
	secur32/tests: Use skip when functions are not available.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Use skip for not implemented function.

	* dlls/kernel32/tests/profile.c:
	kernel32/tests 2/2: Use skip for not implemented function.

	* dlls/kernel32/tests/profile.c:
	kernel32/tests: Don't crash on win98.

	* dlls/kernel32/tests/toolhelp.c:
	kernel32/tests: Use skip when functions are not available.

2007-07-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Return a fault packet if the proc num exceeds the index of the last
	function available for the interface.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_misc.h, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Call RPCRT4_Send directly from PKT_RECEIVE handler in server.
	Remove the WINE_RPCFLAG_EXCEPTION hack to pass exception information to
	I_RpcSend.

	* dlls/rpcrt4/ncastatus.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_message.h, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Translate between NCA and RPC status codes.

2007-07-04  Julio E. Gonzalez P <jegp@netvision.com.py>

	* dlls/ntdll/time.c:
	ntdll: Add PYT and PYST time zones.

2007-07-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c:
	gdi32: Slightly simplify result handling in PolyDraw.

2007-07-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/wine/unicode.h:
	winelib: Cast-qual warnings fix.

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/storage.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Constify some variables.

2007-07-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/viewport.c:
	ddraw: Implement IDirect3DViewport3::TransformVertices.

	* dlls/ddraw/executebuffer.c:
	ddraw: Read the world matrix correctly.

	* dlls/ddraw/executebuffer.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/d3d.c:
	ddraw: D3DOP_BRANCHFORWARD includes the current instruction size.
	Native D3DRM puts a branchforward with offset 0 at the beginning of each
	execute buffer. With the old code this used to get stuck in an endless
	loop. This patch adds a test that shows that such a branchforward
	terminates properly.

	* dlls/ddraw/executebuffer.c:
	ddraw: Materials in the execute buffer are handles.

	* dlls/ddraw/device.c:
	ddraw: Fix an incorrect iface->impl cast.

2007-07-03  Ben Hodgetts <ben@atomnet.co.uk>

	* programs/winecfg/En.rc:
	winecfg: Clean up Graphics tab and remove broken neutral translation.

2007-07-04  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/tests/ntlm.c:
	secur32: Add tests for multiple use of a credential handle.

2007-07-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Create the temporary inf-file in a directory where we are
	allowed to write.

2007-07-03  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm32: Implement Locking/Unlocking IMC and IMCC functions.

	* include/Makefile.in, include/ddk/imm.h:
	include: Add a ddk header for imm.

2007-07-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Get rid of the no longer used check for libtxc_dxtn.

	* configure, configure.ac, dlls/winex11.drv/xinerama.c,
	  include/config.h.in:
	configure: Merge the libXinerama existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c:
	configure: Merge the libXrender existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrandr.h,
	  include/config.h.in:
	configure: Merge the libXrandr existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11ddraw.c:
	configure: Merge the libGL existence check with the soname check.

	* dlls/ntdll/nt.c:
	ntdll: Add check for null pointer in
	NtQuerySystemInformation(SystemModuleInformation).

2007-06-26  Peter Dons Tychsen <donpedro@dhcppc2>

	* dlls/winex11.drv/dib.c:
	winex11: Fix X11DRV_DIB_GetImageBits() when target bitmaps are larger than
	fetched.

2007-07-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetInstallLevel.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetLanguage.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetComponentState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetComponentState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetFeatureState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetFeatureState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetMode.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetTargetPath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetSourcePath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetTargetPath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSequence.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiDoAction.

	* dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiProcessMessage.

2007-07-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/console.c, dlls/msvcrt/exit.c, dlls/msvcrt/file.c,
	  dlls/msvcrt/process.c, dlls/msvcrt/undname.c:
	msvcrt: Remove superfluous casts of void pointers to other pointer types.

2007-07-03  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Don't access DC in PolyDraw after releasing handle.

	* dlls/gdiplus/graphics.c:
	gdiplus: Call EndPath() in GdipDrawLineI in case there is an open path.

2007-07-02  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Use SaveDC, RestoreDC in GdipDrawLineI.

2007-07-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Use skip when we don't have enough rights.

	* dlls/user32/tests/wsprintf.c:
	user32/tests: Use skip.

	* dlls/user32/tests/winstation.c:
	user32/tests: Use skip.

2007-07-03  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Use global Pictures for the tiles.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Move the PictFormats into an array.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Pass root_window to XCreatePixmap to avoid BadDrawable errors.

2007-07-02  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Read the components state directly from the registry.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return INSTALLSTATE_BADCONFIG if we can't decode the first component.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return INSTALLSTATE_ADVERTISED if the component list is empty.

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Open the correct key and return INSTALLSTATE_ADVERTISED if it's missing.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryFeatureState.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Set the WindowsInstaller value in RegisterProduct instead of PublishProduct.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Only publish the product if at least one feature is to be installed.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Unpublish the product when it is entirely removed.

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/tests/install.c:
	msi: Delay publishing of the SourceList until the PublishProduct action.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: PackagePath must also include the package name.

	* dlls/msi/tests/install.c:
	msi: Add tests to show when the SourceList is published to the registry.

	* dlls/msi/msipriv.h, dlls/msi/registry.c, dlls/msi/source.c,
	  dlls/msi/tests/source.c:
	msi: Add support for the MSICODE_PATCH option.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: pcchValue represents the length of szValue in TCHARS, not bytes.

	* dlls/msi/package.c:
	msi: Handle remote calls to MsiSetProperty.

	* dlls/msi/package.c:
	msi: Handle remote calls to MsiGetProperty.

	* dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetActiveDatabase.

	* dlls/msi/custom.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h,
	  dlls/msi/msiserver.idl:
	msi: Add the IWineMsiRemoteCustomAction interface.

	* dlls/msi/msi_main.c, dlls/msi/msipriv.h, dlls/msi/msiserver.idl,
	  dlls/msi/package.c:
	msi: Add the IWineMsiRemotePackage interface.

2007-07-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c:
	wined3d: Implement dsx & dsy shader instructions.

2007-06-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface_thunks.c:
	ddraw: Z buffers can be attached to offscreen d3d devices.

2007-06-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Create multiple contexts for onscreen render targets.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Select onscreen contexts based on the thread id.

2007-07-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: rsq and rcp use the .w component if no swizzle is given.

2007-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/safearray.c:
	oleaut32: Constify some variables.

2007-07-02  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Don't free the password in InitializeSecurityContextW to enable the
	credentials handle to be re-used in further InitializeSecurityContextW calls.

2007-06-30  Ben Hodgetts <ben@atomnet.co.uk>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't tell users to run Wine as root when sockets not creatable.

2007-06-19  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Save load time format of pictures.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Added support for decoding some PNG files.

2007-07-02  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Added checks for libpng.

	* configure, configure.ac, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/oleaut32/olepicture.c:
	configure: Make the libjpeg soname check depend on the header check.

	* configure, configure.ac, dlls/wininet/netconnection.c:
	configure: Make the libssl soname check depend on the header check.

	* configure, configure.ac, dlls/gdi32/freetype.c:
	configure: Make the libfontconfig soname check depend on the header check.

	* configure, configure.ac, dlls/winejack.drv/audio.c,
	  dlls/winejack.drv/jack.c:
	configure: Make the libjack soname check depend on the header check.

	* configure, configure.ac, dlls/wineps.drv/init.c,
	  dlls/winspool.drv/info.c:
	configure: Make the libcups soname check depend on the header check.

	* configure, configure.ac, dlls/sane.ds/ds_ctrl.c,
	  dlls/sane.ds/ds_image.c, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c, include/config.h.in:
	configure: Merge the libsane existence check with the soname check.

	* configure, configure.ac, dlls/capi2032/cap20wxx.c, include/config.h.in:
	configure: Merge the libcapi20 existence check with the soname check.

	* configure, configure.ac, programs/wineconsole/curses.c:
	configure: Merge the libcurses existence check with the soname check.

	* configure, configure.ac, include/config.h.in, programs/explorer/hal.c:
	configure: Merge the libhal existence check with the soname check.

	* configure, configure.ac:
	configure: Move the dll checks earlier in the file to make them available for
	library checks.

	* aclocal.m4, configure, configure.ac:
	configure: Change WINE_GET_SONAME to allow it to be used as a replacement
	for AC_CHECK_LIB.

2007-06-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_SUCCESS if the PackageName property is not present.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_BAD_CONFIGURATION if the SourceList key does not exist.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate MsiSourceListGetInfo parameters.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/msi.c,
	  dlls/msi/tests/source.c, include/winerror.h:
	msi: Add tests for MsiSourceListGetInfo.

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListGetInfoA.

2007-07-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/enumx.c, dlls/ole32/enumx.h:
	ole32: Constify some variables.

2007-07-02  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Don't set LDPATH if not needed.

	* aclocal.m4, configure, configure.ac, dlls/gphoto2.ds/ds_image.c,
	  dlls/winex11.drv/xinerama.c, programs/explorer/hal.c,
	  programs/wineconsole/curses.c:
	configure: Don't use a default soname if a library is not found, leave it
	undefined.

	* configure, configure.ac, dlls/capi2032/cap20wxx.c,
	  dlls/gdi32/freetype.c, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/oleaut32/olepicture.c, dlls/opengl32/wgl.c,
	  dlls/sane.ds/sane_main.c, dlls/winejack.drv/jack.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/truetype.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/wintab.c, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c, dlls/wininet/netconnection.c,
	  dlls/winspool.drv/info.c, include/config.h.in:
	configure: Export the shared library extension instead of hardcoding .so.

	* configure, configure.ac:
	configure: Fix the strip command line for Mac OS.

2007-07-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for OpenSCManagerA.

2007-07-01  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_load_psamplers().

	* dlls/wined3d/state.c:
	wined3d: In tex_colorop() & tex_alphaop(), only check the mapped stage against
	GL_LIMITS(textures) if the texture is used.

	* dlls/wined3d/state.c:
	wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for supported units.

	* dlls/wined3d/state.c:
	wined3d: Only call activate_dimensions() if the texture is used.

	* dlls/wined3d/context.c, dlls/wined3d/device.c:
	wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap for cards without support for
	NV_REGISTER_COMBINERS as well.

2007-06-29  Kai Blin <kai.blin@gmail.com>

	* configure, configure.ac, dlls/ws2_32/socket.c, include/config.h.in:
	ws2_32: Handle IPv6 in WSAStringToAddress.

2007-06-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/loader.c:
	ntdll: Fix missing unlock on error path. Found by Smatch.

2007-06-29  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Accept ERROR_INVALID_PARAMETER in addition to ERROR_PATH_NOT_FOUND
	(and remove no-longer-useful checkFileStoreFailure).

	* dlls/crypt32/tests/store.c:
	crypt32: Accept ERROR_BADKEY in addition to ERROR_INVALID_HANDLE.

	* dlls/crypt32/tests/store.c:
	crypt32: Accept OSS errors as well.

	* dlls/crypt32/tests/crl.c:
	crypt32: Accept OSS errors.

	* dlls/crypt32/tests/cert.c:
	crypt32: Don't fail when CryptVerifyCertificateSignatureEx is missing, use skip
	(and get rid of unnecessary indenting).

	* dlls/crypt32/tests/encode.c:
	crypt32: Use skip to avoid failures where support is missing.

2007-06-22  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/user32/msgbox.c:
	user32: Center MessageBox dialogs to desktop, as Windows does.

2007-06-21  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/comctl32/datetime.c:
	comctl32/datetime: Added a missing InvalidateRect to update display after
	WM_ENABLE.

2007-06-29  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Implementation of GCS_CURSORPOS.

2007-06-29  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.40.

----------------------------------------------------------------
2007-06-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Fix calcplayposition to handle mixed amount > buffer length better.

2007-06-29  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* programs/winefile/Ru.rc:
	programs/winefile: Add Russian resources.

2007-06-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: Constify some variables.

2007-06-29  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Return WSAEINVAL for unhandled address families in WSAStringToAddress.
	Prepare for IPv6 support.

2007-06-28  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	shell32: Fix shelllink creation to non-executable files and remove unnecessary
	code.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Fix tests of IShellLinkA_SetPath to conform on both Windows 98
	and XP.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Allow CoCreateInstance to return E_NOINTERFACE to pass on Win98;
	add skips and display return values.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Add test for shell links to existing non-executable files.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Allow individual tests in check_lnk to be todo_wine'd.

2007-06-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Get rid of the oneToOneTexUnitMap field.

	* dlls/wined3d/device.c:
	wined3d: In device_map_psamplers(), only touch the sampler mapping for samplers
	that are used by the shader.

	* dlls/wined3d/device.c:
	wined3d: Cleanup device_map_fixed_function_samplers().

2007-06-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't print traces from async I/O callbacks.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c:
	ntdll: Don't print traces from async I/O callbacks.

2007-06-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c:
	mshtml: Add IID_IPropertyNotifySink and DIID_HTMLTextContainerEvents connection
	points to HTMLBodyElement.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IConnectionPointContainer implementation to HTMLBodyElement.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make connection points container independent.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Move IConnectionPointContainer to the separated struct.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store connection point as a list.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Don't use dynamic allocation for connection points.

2007-06-28  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting content for data messages opened to encode.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting bare content for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for data message encoding.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub get param function for data messages and remove stub
	message from open function.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement CryptMsgUpdate for data messages opened to encode.

	* dlls/crypt32/msg.c:
	crypt32: Add a finalized member to message.

	* dlls/crypt32/msg.c:
	crypt32: Store stream info in message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add an update function, use it to implement CryptMsgUpdate.

	* dlls/crypt32/msg.c:
	crypt32: Add a get param function, use it to implement CryptMsgGetParam.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Stub CryptMsgOpenToEncode for data messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgGetParam for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgUpdate for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgOpenToEncode for data messages.

	* dlls/crypt32/msg.c:
	crypt32: Add base message type and use it to implement CryptMsgDuplicate and
	CryptMsgClose.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add basic parameter checking to CryptMsgOpenTo*.

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/msg.c:
	crypt32: Add basic tests for CryptMsg functions.

	* dlls/crypt32/msg.c:
	crypt32: Don't return fake HCRYPTMSG from CryptMsgOpenTo*.

	* include/wincrypt.h:
	wincrypt: Add missing message flags and parameters.

2007-06-29  Rob Shearman <rob@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add the SystemDrive environment variable.

2007-06-28  Misha Koshelev <mk144210@bcm.edu>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Do not WINE_ERR in InvokeShellLinker if we are going to
	try again.

2007-06-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Ignore invalid conditional expressions when checking the launch conditions.

	* dlls/msi/tests/package.c:
	msi: Add tests that show '!=' is not a valid conditional expression operator.

2007-06-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/comboex.c:
	comctl32: Replace malloc() with HeapAlloc().

2007-06-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/winemp3.acm/mpegl3.c:
	winemp3: Announce capability to decode at 48 KHz.

2007-06-22  Pedro Maia <pedrom.maia@tvtel.pt>

	* dlls/shell32/shell32_Pt.rc:
	shell32: Update paths in Portuguese resource.

2007-06-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Silence buffer on allocation.

2007-06-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Move key state array into object.

2007-06-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhCollectQueryData.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhAddCounter{A, W} and PdhRemoveCounter.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhOpenQuery{A, W} and PdhCloseQuery.

	* include/Makefile.in, include/pdh.h, include/pdhmsg.h, include/winperf.h:
	pdh: Add public headers.

2007-06-28  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppl.l:
	wpp: Don't suppress output from C include files, that's up to the user.

	* tools/wrc/parser.l:
	wrc: Strip C code based on the name of the include file.
	Get rid of the old C code stripping support that wasn't used anymore.

2007-06-23  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c, dlls/winealsa.drv/dsoutput.c, include/dsdriver.h:
	dsound/winealsa: Remove writelead for alsa directsound.

2007-06-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Optimize GetPosition() more in dsalsa.

2007-06-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/shelllink.c, programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Wait for parent process to finish instead of creating RunOnce
	entry that may never run.

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Create/release semaphore only around call to wineshelllink.

2007-06-27  Aric Stewart <aric@codeweavers.com>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/editstr.h:
	riched20: Make richedit control IME aware.

2007-06-27  Jeff Latimer <lats@yless4u.com.au>

	* dlls/cabinet/fci.c:
	cabinet: Fix a potential NULL reference.

2007-06-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Combine all Release functionality into base class.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Move parent dinput reference into base class.

	* dlls/dinput/dinput_main.c:
	dinput: Remove duplicate code.

2007-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Check more thoroughly if a stage references a texture.

	* dlls/wined3d/device.c:
	wined3d: Map vertex samplers to a texturing unit.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement texldl.

2007-06-27  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.c:
	winefile: Do not use the TEXT() macro on character constants. The implicit
	cast from char to WCHAR works as well in UNICODE mode.

	* programs/winefile/splitpath.c:
	winefile: Do not use wide character constants.

2007-06-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Constify some variables.

2007-06-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Don't rely blindly on type.

2007-06-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Make sure we fill all struct members.

2007-06-27  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* programs/uninstaller/Ru.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Russian resources.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Reference count the custom action data to avoid freeing the data by
	another thread.
	Based on a patch by Rob Shearman.

2007-06-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/handle.c:
	msi: Avoid some redundant checks in MsiCloseHandle.

2007-06-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/handle.c:
	msi: Add support for remote handles.

2007-06-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Return (more) correct needed buffersize.

	* dlls/advapi32/service.c:
	advapi32/service: Fix wrong key.

	* dlls/advapi32/service.c:
	advapi32/service: Use the correct registry key for the service account.

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/service.c:
	advapi32/tests: Add some service related tests.

2007-06-27  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xdnd.c:
	winex11.drv: Added better support for the X file drag protocol.

2007-06-26  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Added missing call to GDI_ReleaseObj.

2007-06-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/amstream/amstream.c, dlls/msxml3/nodemap.c, dlls/riched20/reader.c,
	  dlls/shlwapi/tests/string.c, dlls/user32/tests/cursoricon.c:
	janitorial: Remove superfluous casts of void pointers to other pointer types.

	* dlls/winedos/int31.c:
	winedos: Remove superfluous casts of void pointers to other pointer types.

	* dlls/wininet/tests/url.c:
	wininet: Remove superfluous casts of void pointers to other pointer types.

	* dlls/dbghelp/msc.c:
	dbghelp: Remove superfluous casts of void pointers to other pointer types.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c:
	wined3d: Remove superfluous casts of void pointers to other pointer types.

	* dlls/gdi32/tests/bitmap.c, dlls/gdi32/tests/metafile.c:
	gdi32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/virtual.c:
	kernel32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/ole32/dictionary.c, dlls/ole32/tests/marshal.c:
	ole32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/iccvid/iccvid.c:
	iccvid: Remove superfluous casts of void pointers to other pointer types.

	* dlls/quartz/avidec.c, dlls/quartz/enumregfilters.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/regsvr.c:
	quartz: Remove superfluous casts of void pointers to other pointer types.

	* programs/cmd/builtins.c, programs/cmd/directory.c:
	cmd: Remove superfluous casts of void pointers to other pointer types.

2007-06-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/automation.c:
	msi: Set the WindowsInstaller value of the UserData product key when publishing
	the product.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: If the UserData product key exists, but the user product key doesn't,
	the product is absent.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Any value of WindowsInstaller besides 0 means the product is installed.

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/automation.c, dlls/msi/tests/msi.c:
	msi: Use the correct registry key when detecting a published product.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: If the user product key exists, the product's state is advertised.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Validate MsiQueryProductCode parameters.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryProductState.

2007-06-26  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Store the assoc_group_id in the connections.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h:
	rpcrt4: Make pointers to RPCRT4_BuildBindHeader and RPCRT4_BuildBindAckHeader
	const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Remove the unused AuthInfo field from the RpcAssoc structure and Used
	from RpcConnection.

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c:
	msi: Fix transforms to work when the number of bytes per string reference
	differs to that of the database it is being applied to.

	* dlls/msi/table.c:
	msi: Fix bytes_per_column for binary types when the database is using 3-byte
	string references.

	* dlls/msi/string.c:
	msi: Fix loading string tables for databases that use 3-byte string references
	and that have a non-zero codepage (i.e. != CP_ACP).

	* dlls/msi/action.c:
	msi: Free version after using lpVer in msi_get_disk_file_version as lpVer
	points inside of version.

	* dlls/msi/action.c:
	msi: Check the return value of VerQueryValueW in msi_get_disk_file_version.

2007-06-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Cleanup GL extension detection.

2007-06-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Added Exec(IDM_DELETE) implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_DELETE support in QueryStatus.

	* dlls/mshtml/editor.c:
	mshtml: Correctly handle delete key in editor mode.

2007-06-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/str.c:
	crypt32: Fix an uninitialized variable compiler warning.

	* dlls/ddraw/Makefile.in:
	ddraw: Don't link against X libraries.

	* dlls/wineps.drv/Makefile.in:
	wineps.drv: List source files explicitly in the makefile to make it easier
	to parse.

2007-06-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/serial.c, dlls/ntdll/tape.c:
	ntdll: Constify some variables.

2007-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/file.c, dlls/ntdll/relay.c:
	ntdll: Constify some variables.

2007-06-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/env.c, include/winternl.h:
	ntdll: Constify some variables.

	* dlls/ntdll/cdrom.c, dlls/ntdll/debugbuffer.c, dlls/ntdll/directory.c:
	ntdll: Constify some variables.

2007-06-26  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Determine if PSH_PROPSHEETPAGE is set once.

	* dlls/comctl32/propsheet.c:
	comctl32: Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.

2007-06-25  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Reduce duplicate code between PropertySheetA/W.

2007-06-26  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/mixer.c:
	dsound: Add missing '\n' to Wine trace.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for publishing and unpublishing products, features, and
	components.

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	msi: Add a stub implementation of MsiQueryComponentStateA.

2007-06-25  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Allow enums as union switch types.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Allow enums as union switch types.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Wrap a try/except block around tests.

	* tools/widl/typegen.c:
	widl: Fix crash dealing with anonymous unions.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Get simple enums working.

	* tools/widl/typegen.c:
	widl: Check for user types when calculating buffer size.

	* tools/widl/typegen.c:
	widl: Check for interface pointers in pointer handling.

2007-06-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm: Replace malloc with HeapAlloc.

	* dlls/msacm32/tests/msacm.c:
	msacm32: Replace malloc/free with HeapAlloc/HeapFree.

2007-06-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winejack.drv/audio.c:
	winejack.drv: Fix missing unlock. Found by Smatch.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Fix missing unlock on an error path. Found by Smatch.

	* dlls/gdi32/freetype.c:
	gdi32: Multi-character character constants aren't portable as their behaviour
	is compiler dependent according to the C standard. Found by sparse.

2007-06-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Map vertex sampler numbers to the correct internal array indices for
	GetTexture and SetTexture.

	* dlls/wined3d/device.c:
	wined3d: Map vertex sampler numbers to the correct internal array indices for
	GetSamplerState and SetSamplerState.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Increase the sizes of texturing related arrays, in order to support
	vertex textures.

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Add max_vertex_samplers and max_combined_samplers to WineD3D_GL_Info.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  include/wine/wined3d_gl.h:
	wined3d: Rename max_samplers to max_fragment_samplers.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Fetch the volume name when getting disk info.

2007-06-25  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/events.c,
	  dlls/msi/install.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c:
	msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and
	MSIRUNMODE_ROLLBACK.

2007-06-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/dsound/primary.c:
	dsound: Reset device playpos/mixpos on buflen change.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Make test recover from failure to preserve primary buffer length
	after SetFormat().

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Reduce writeahead to next multiple of psize greater than 512.

	* dlls/mciwave/mciwave.c:
	mciwave: Prevent division by zero when processing non-PCM codec.

2007-06-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/crypt32/str.c:
	crypt32: Fix possible dereference of NULL ptr.

2007-06-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the pointer passed to the marshaling/unmarshaling/sizing
	routines in complex types for interface pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshalling, unmarshalling and buffer sizing for the context
	handle type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshalling/unmarshalling for the range NDR type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set PointerBufferMark to the buffer location immediately after the
	non-pointer data in complex struct and array marshaling and unmarshaling to
	keep to the DCE/RPC specification.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Try a lot harder to resuse existing connections by comparing inside
	the RpcQualityOfService and RpcAuthInfo objects.
	Store a copy of the SEC_WINNT_AUTH_IDENTITY structure passed in to
	RpcBindingSetAuthInfo(Ex) to enable us to do this for RpcAuthInfo objects.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Store the assoc_group_id field returned from the bind_ack packet and
	use it when creating further connections in the association group.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: When an exception is raised, return the stored exception code instead
	of the generic RPC_S_CALL_FAILED.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Translate STATUS_ACCESS_VIOLATION exceptions caught whilst executing
	the stub function to ERROR_NOACCESS to prevent confusing exceptions occurring
	in the client.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Close the connection if a protocol error or certain other kinds of
	errors occur, instead of returning it to the connection pool.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Return a fault packet if the interface/object pair in a request packet
	aren't registered.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add a STUBLESS_FREE phase for freeing the allocated memory in the
	server function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add support for ServerAllocSize parameters.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Don't use add on the sizes of array elements to an open-ended structure;
	use FIELD_OFFSET with the array index instead.

	* dlls/mshtml/htmlelem.c:
	mshtml: Implement HTMLElement_get_children.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Always set the requested fields of the security descriptor according
	to the info flags in GetNamedSecurityInfoW.
	Also, set the control flags so that other security descriptor
	functions can retrieve the info from it.

2007-06-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c, dlls/wined3d/state.c:
	wined3d: Some point sprite fixes.

2007-06-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/vertexshader.c:
	wined3d: Skip the start offset to the source array in
	IWIneD3DVertexShaderImpl_SetLocalConstantsF.

2007-06-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/state.c:
	wined3d: Clamp material power to 128.0.

2007-06-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/str.c:
	crypt32: Fix incorrect usage of CharNextA.

	* dlls/mapi32/util.c:
	mapi32: Get rid of unneeded CharNextA call.

	* dlls/ntdll/signal_i386.c:
	ntdll: Use the standard exception handling for vm86 GP faults too.

	* server/signal.c:
	server: Make crash error message more explicit.

	* dlls/advpack/files.c:
	advpack: Get rid of CharPrevW.

	* dlls/shell32/shlfileop.c:
	shell32: Get rid of CharNextW.

	* dlls/shlwapi/path.c, dlls/shlwapi/string.c:
	shlwapi: Get rid of CharNextW/CharPrevW. Simplify some string functions.

	* dlls/comctl32/string.c:
	comctl32: Get rid of CharNextW/CharPrevW. Simplify some string functions.

2007-06-25  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-06-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more QueryInterface tests.

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/dom.c:
	mshtml: Added beginning DOM tests.

	* dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLDOMNode::get_nodeName implementation.

2007-06-24  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Notify the Gecko stream listener that we stopped binding, if an error
	occurs in start_binding.

	* dlls/mshtml/htmldoc3.c:
	mshtml: Fix HTMLDocument3_get_documentElement to get the right nsIDOMNode.

	* dlls/mshtml/htmlelem.c:
	mshtml: Implement HTMLElement_setAttribute.

	* dlls/mshtml/htmlelem.c:
	mshtml: The SRC value returned from HTMLElement_getAttribute should be an
	absolute, not relative URL.

2007-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c:
	msi: Fix use of uninitialized variable (Coverity).

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Fix use of uninitialized variable (Coverity).

2007-06-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/crypt.c:
	wintrust/tests: Add tests for CryptCATAdminCalcHashFromFileHandle.

2007-06-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Don't crash (on Vista).

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Don't crash on Vista.

2007-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleInPlaceUIWindow tests.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Better test of QueryInterface.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleControlSite tests.

	* dlls/mshtml/olewnd.c:
	mshtml: Set focus to FALSE in InPlaceDeactivate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsevents.c,
	  dlls/mshtml/view.c:
	mshtml: Notify IOleControlSite about focus changes.

	* dlls/mshtml/view.c:
	mshtml: Activate nsWebBrowser after creating document window.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIEmbeddingSiteWindow:[Get|Set]Visibility implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIEmbeddingSiteWindow::SetFocus implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c:
	mshtml: Get rid of no longer used nsIDOMEventListener interface in NSContainer.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsevents.c:
	mshtml: Move load event listener to separated object.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c:
	mshtml: Move keypress event listener to separated object.

2007-06-22  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Tidy up graphics constructor.

	* dlls/gdiplus/pen.c:
	gdiplus: Fix erroneous pen error checking.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fix broken graphics path constructor.

2007-06-22  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Fix path to rundll32.exe in inffile/shell/install/command subkey.

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Simplify code as native setupapi does not handle quoted paths.

2007-06-22  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/file.c, dlls/msvcrt/scanf.c:
	msvcrt: Do not use wide character constants.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa.drv: Fix missing unlock on the error path. Found by Smatch.

	* dlls/dsound/primary.c:
	dsound: Fix missing unlock on an error path. Found by Smatch.

2007-06-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Split of the mapping of pixel shader samplers from
	IWineD3DDeviceImpl_FindTexUnitMap().

	* dlls/wined3d/device.c:
	wined3d: Remove the sharing of mapping code for fixed function and pixel
	shader samplers.

	* dlls/wined3d/device.c:
	wined3d: Split of the mapping of fixed function samplers from
	IWineD3DDeviceImpl_FindTexUnitMap().

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of what fixed function texture stages are in use.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of what stage a texturing unit is mapped to.

2007-06-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Fix wrong test for failure.

	* dlls/mscms/tests/profile.c:
	mscms/tests: Don't crash on Vista.

2007-06-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move material applying to the state table.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/vertexshader.c:
	d3d9: Hold the lock in VertexShader methods.

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Hold the lock in VertexDeclaration methods.

	* dlls/d3d9/vertexbuffer.c:
	d3d9: Hold the lock in Vertexbuffer methods.

	* dlls/d3d9/texture.c:
	d3d9: Hold the lock in Texture methods.

2007-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Extend _invoke to cope with more args.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Handle marshaling of VARTYPE-less FADF_VARIANT safearrays.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement marshaling of VT_BYREF interfaces.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal_dispids.h, dlls/oleaut32/typelib.c:
	oleaut32: Interfaces that derive from IDispatch should be marshaled as
	VT_DISPATCH.

2007-06-21  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Fix test_widenpath to succeed on Win98.

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Emulate AngleArc using ArcTo.

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Expand framework for tests of drawing functions in paths, add
	test for AngleArc in paths.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/swapchain.c:
	d3d9: Hold the lock in swapchain methods.

	* dlls/d3d9/surface.c:
	d3d9: Hold the lock in suface methods.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/surface.c:
	wined3d: Depthfill blits are allowed between BeginScene and Endscene.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Check for incorrect rectangles to DDrawSurface::Blt.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for incorrect surface desc sizes for Lock().

2007-06-22  Emmanuel Maillard <mahanuu@free.fr>

	* configure, configure.ac:
	configure: Fix libxml2 detection on Mac OS X.

2007-06-21  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphicspath.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplustypes.h:
	gdiplus: Implemented GdipCreatePath and GdipDeletePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawLines.

2007-06-21  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Reset focus if application does not want to be activated.

2007-06-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h:
	dsound: Tune some parameters for alsa waveout.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Simplify mixing by removing remixing support, and fix its waveout
	breakage.
	Based on a patch by Peter Dons Tychsen.

2007-06-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Give rougher estimates for fraglen to satisfy alsa.

2007-06-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Finally get rid of the thread in alsa directsound acceleration.

2007-06-21  Nigel Liang <ncliang@gmail.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Remove call to XCreateFontSet.

2007-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Don't check out VT in exec_fontsize.

2007-06-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntprint/tests/ntprint.c:
	ntprint/tests: Add tests for PSetupEnumMonitor.

	* dlls/ntprint/ntprint.c, dlls/ntprint/ntprint.spec:
	ntprint: Implement PSetupEnumMonitor.

2007-06-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Do not mark texture stages > MAX_TEXTURES dirty, they don't exist.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Fix various incorrect uses of GL_LIMITS(texture_stages) and
	GL_LIMITS(sampler_stages).

2007-06-21  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmloader/loaderstream.c:
	dmloader: Do not use wide character constants.

	* dlls/comctl32/commctrl.c, dlls/comctl32/string.c,
	  dlls/comctl32/tooltips.c:
	comctl32: Do not use wide character constants.

	* dlls/ole32/ole2.c:
	ole32: Do not use wide character constants.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/typelib.c:
	oleaut32: Do not use wide character constants.

	* dlls/setupapi/devinst.c:
	setupapi: Do not use wide character constants.

	* dlls/riched20/string.c:
	riched20: Do not use wide character constants.

	* dlls/shlwapi/url.c:
	shlwapi: Remove more wide character constants.

	* dlls/winmm/lolvldrv.c:
	winmm: Do not dump the version info when loading drivers.

2007-06-21  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/files.c:
	msi: Only use the long name for the file source if the file has one.

2007-06-21  David Adam <David.Adam@math.cnrs.fr>

	* programs/wordpad/Fr.rc:
	wordpad: French translation for the view item.

2007-06-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c:
	shell32: Make SHGetDesktopFolder use a cached instance of IShellFolder.

2007-06-18  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Send WM_MOUSEACTIVATE before closing a window.

2007-06-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Fix popup window style.

2007-06-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c, dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Handle ArcTo in paths as native.

	* dlls/gdi32/path.c:
	gdi32: Allow arbitrary start entry types in PATH_DoArcPart, not just PT_MOVETOs.

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Set current position properly after ArcTo.

2007-06-19  Kovács András <andras@csevego.net>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dwmapi/Makefile.in, dlls/dwmapi/dwmapi.spec,
	  dlls/dwmapi/dwmapi_main.c, dlls/dwmapi/version.rc:
	Add dwmapi.dll stub.

2007-06-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/msg.c:
	user32/tests: Only do the GetProcAddress once.

2007-06-21  Francois Gouget <fgouget@free.fr>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Run the GetTextMetricsA() tests on Windows 9x too.

2007-06-21  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntprint/tests/Makefile.in, dlls/ntprint/tests/ntprint.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	ntprint/tests: Add initial test.

	* dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.c,
	  dlls/ntprint/ntprint.spec:
	ntprint: Implement PSetupCreateMonitorInfo.

2007-06-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Specify the arguments of the function in the function.

	* dlls/shlwapi/reg.c:
	shlwapi: Do not use wide character constants.

2007-06-21  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	winapi: Add support for GDIPCONST.

2007-06-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add more RegGetValue() conformance tests, and fix Wine accordingly.

2007-06-20  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix warnings about unused function parameters.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Add tests for arrays of pointers.

2007-06-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Make use of the texUnitMap in drawStridedSlow as well.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use texture2D to sample in pshader_glsl_texdp3tex().

2007-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Remove unnecessary toolbar resizing code.

	* programs/wordpad/wordpad.c:
	wordpad: Set default font effects to 0.

2007-06-20  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Emulate tracking of multiple material properties.

	* dlls/wined3d/state.c:
	wined3d: Unload texture coords for all supported texture stages.

2007-06-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the FVF codepath from drawprim.

2007-06-19  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Convert fvfs to vertex declarations.

2007-06-20  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/net.c:
	net.exe: Add missing CloseServiceHandle().

2007-06-20  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in, configure, configure.ac, loader/Makefile.in,
	  server/Makefile.in, tools/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	makefiles: Build programs that link against libwine twice with appropriate
	rpaths.
	One rpath is for installing and one is for running inside the build tree.

2007-06-20  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Make wodReset fail if called on a closed device.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Move notify of completed WAVEHDRs to end of wodReset.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Move a variable declaration to narrower scope, reduce whitespace.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Extract loop, wodNotifyClient for WAVEHDRs in list, to separate
	function.

2007-06-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Make MDI get_client_info checks more strict.

	* dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/tests/menu.c:
	user32: When inserting a menu item make sure that MDI system buttons stay on
	the right side.

2007-06-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/videorenderer.c:
	quartz: Fix video rendering sizing/positioning bugs.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c, dlls/ddraw/surface_thunks.c,
	  dlls/ddraw/tests/dsurface.c:
	ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc.

2007-06-20  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/trace.c:
	server: Don't crash when trying to set a file lock on a device.

2007-06-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Fixed pointer casting and additions.

2007-06-19  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Implemented GdipDrawCurve2.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawArc.

2007-06-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/access.c, dlls/netapi32/nbt.c, dlls/netapi32/netbios.c,
	  dlls/netapi32/netbios.h, dlls/netapi32/wksta.c:
	netapi32: Constify some variables.

2007-06-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/main.c:
	msvcrt: Move definition of 2 static inline functions up and remove the forward
	declaration of those. Found by sparse.

2007-06-19  Jason Green <jave27@gmail.com>

	* dlls/winscard/winscard.c, dlls/winscard/winscard.spec:
	winscard: Add extended stub for SCardEstablishContext.

2007-06-19  Rob Shearman <rob@codeweavers.com>

	* programs/rpcss/Makefile.in, programs/rpcss/np_server.c,
	  programs/rpcss/rpcss.h, programs/rpcss/rpcss_main.c:
	rpcss: Remove lazy timeout mechanism and use __wine_make_system_process instead.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use the offset to array data in embedded pointer format descriptions.

	* tools/widl/typegen.c:
	widl: Always write out pointers if the structure is a pointer structure. Pointer
	are optional for conformant varying structures.

	* tools/widl/typegen.c:
	widl: Write out embedded pointers for the element type when writing out arrays.

	* tools/widl/parser.y:
	widl: Fix detection of structures with non-conformant strings.

	* tools/widl/typegen.c:
	widl: Implement pointer descriptions for all embedded pointer types.

2007-06-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/nt.c, dlls/ntdll/tests/info.c:
	ntdll: Improved the stub behavior of
	NtQuerySystemInformation(SystemModuleInformation).

2007-06-18  James Hawkins <truiken@gmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Add a stub implementation of KeInitializeTimer.

2007-06-18  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/net.c:
	net.exe: Add NET STOP.

2007-06-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/stateblock.c:
	d3d9: Hold the lock in stateblock methods.

	* dlls/d3d9/query.c:
	d3d9: Release the wined3d query when the d3d9 query is destroyed.

	* dlls/d3d9/query.c:
	d3d9: Hold the lock in query methods.

2007-06-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Insert menu item only after contents of the passed in menu item info
	have been verified.

2007-06-19  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Fix ArcTo to use proper starting and ending points.

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Add framework for tests of drawing functions in paths, add test
	for ArcTo in paths.

2007-06-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix typo in union buffer size calculation.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix bug calculating union switch type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove inaccurate comments.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h:
	rpcrt4: Add encapsulated union tests.

2007-06-18  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawPie/GdipFillPie.

2007-06-19  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.rc:
	ntprint: Add version resource.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.c,
	  dlls/ntprint/ntprint.spec:
	ntprint: Add a stub for ntprint.dll.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/printui/Makefile.in, dlls/printui/printui.rc:
	printui: Add version resource.

2007-06-18  Lei Zhang <thestig@google.com>

	* dlls/riched20/tests/editor.c:
	riched20: Add tests for EM_FORMATRANGE.

2007-06-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvidc32/msvideo1.c:
	msvidc32: Constify some variables.

2007-06-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/streams.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Properly delete rows from the table, instead of zeroing out the row.

	* dlls/msi/custom.c:
	msi: Send the expected data to set_deferred_action_props.

2007-06-18  Jeff Latimer <lats@yless4u.com.au>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/hnetcfg/Makefile.in, dlls/hnetcfg/hnetcfg.c,
	  dlls/hnetcfg/hnetcfg.spec:
	hnetcfg: Stub implementation of the dll.

2007-06-18  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/be_i386.c:
	winedbg: Added support for indirect call with absolute address.

2007-06-15  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/builtins.c:
	cmd.exe: for loop by default only matches files.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Fix FOR so it works as 'well' as before.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support IF..ELSE processing tolerate multiline/part lines.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Correctly parse IF ELSE plus multipart/multiline.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Parse multipart FOR statements.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: EXIT /b skips any residual commands.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Lines starting with REM ignore any multiline/part characters.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: GOTO throws away any preloaded multi part/line command.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Pass the command list through so it is available to built in commands.

	* programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Pass command structure into WCMD_pipe, not command line itself.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/batch.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add basic support for && and (...) syntax.

2007-06-18  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement encapsulated union NDR functions.

2007-06-18  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/text.c:
	wineps.drv: Ignore ExtTextOut calls that occur before the job has started.

2007-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Use Unicode functions in more places.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/printui/Makefile.in, dlls/printui/printui.c,
	  dlls/printui/printui.spec:
	printui: Add stub for printui.dll.

2007-06-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for AddPortEx.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for AddPortEx.

2007-06-17  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fix compilation on systems that don't support nameless unions.

2007-06-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/sql.y:
	msi: Name all or none of the formal arguments in function prototypes.

2007-06-15  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawBezier.

2007-06-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/int21.c:
	winedos: Fix the device open code for the new NtCreateFile syntax for Unix files.

	* dlls/kernel32/vxd.c:
	kernel32: Fix VxD open code for the new NtCreateFile syntax for Unix files.

2007-06-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Mask texture stage state arguments with WINED3DTA_SELECTMASK when
	comparing them.

2007-06-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for mapped stages.

2007-06-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/pixelshader.c:
	d3d9: Hold the lock in Pixelshader functions.

	* dlls/d3d9/indexbuffer.c:
	d3d9: Hold the lock in indexbuffer methods.

	* dlls/d3d9/cubetexture.c:
	d3d9: Hold the lock in cubetexture methods.

2007-06-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Hold the lock in methods implemented in device.c.

2007-06-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c:
	d3d9: Hold the lock in IDirect3D9 methods.

2007-06-16  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Quote %1 for Msi.Package shell actions per native.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Conform to native in SHELL_ArgifyW for unquoted %1 in registry keys.

2007-06-17  Vitaly Budovski <vbudovski@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Fix incorrect callback private value.

2007-06-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Patches are applied based on ProductCode, not ProductID.

	* dlls/msi/msi.c, include/msi.h:
	msi: Implement MsiApplyPatchW.

	* dlls/msi/msi.c:
	msi: Forward MsiApplyPatchA to MsiApplyPatchW.

2007-06-15  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/ordinal.c, tools/winapi/win32.api:
	shlwapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winapi_check: ULONG_PTR is a 'long --pointer', not a 'long'.

2007-06-15  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Merge getRegClass() and getRegKeyName() to form parseKeyName().
	Keep track of the full registry path (including the root key) in
	currentKeyName. This makes the error messages more informative.
	Reduce the number of global variables used by openKey() & co.  Only
	use one variable, currentKeyHandle, to indicate whether a key is
	currently open or not.

	* programs/regedit/regproc.c:
	regedit: Don't allow square-bracketed registry paths on the command line
	(to match native).
	The only place they are allowed is in .reg files, so exclusively deal with
	them in processRegEntry().
	Fix detection of the trailing ']' in processRegEntry(): it can be followed by
	some garbage.

	* programs/regedit/regproc.c:
	regedit: Add missing '\n' to an error message.

2007-06-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Don't crash on Vista.

2007-06-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.39.

----------------------------------------------------------------
2007-06-14  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/brush.c:
	gdiplus: Brush tests.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/brush.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h:
	gdiplus: Brush implementation.

2007-06-14  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add support for cmd.exe /u (Unicode from internal pgms).

2007-06-15  Kolbjørn Fredheim <hightower@tregt.net>

	* dlls/winex11.drv/settings.c:
	winex11.drv: Echo the video mode requested in the error message when not
	finding a matching mode.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make modal property sheets modal.

2007-06-14  Misha Koshelev <mk144210@bcm.edu>

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Handle unquoted paths in InstallHinfSection as native.

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/install.c:
	setupapi/tests: Add basic tests for InstallHinfSectionA/W command line
	processing.

2007-06-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/edit.c:
	user32/tests: Avoid strlen in trace.

	* dlls/ntdll/cdrom.c:
	ntdll: Implemented reading of the CDROM TOC on Mac OS.

	* server/fd.c:
	server: Enable kqueue support on Mac OS >= 10.5 now that it's fixed.

2007-06-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msi/action.c:
	msi: Simplify the code.

2007-06-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Set the UserSID and ProductCode properties for deferred custom actions.

2007-06-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Constify some variables.

2007-06-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleInPlaceSiteEx tests.

	* dlls/mshtml/olewnd.c, dlls/mshtml/view.c:
	mshtml: Use IOleInPlaceSiteEx if available.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/edit.c:
	user32: Remove a unused variable from ES_PASSWORD test.

2007-06-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/opengl.c:
	opengl: Use get_glxdrawable to grab the drawable.

2007-06-14  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: getsockname should fail on unbound socket.

2007-06-14  John Klehm <xixsimplicityxix@gmail.com>

	* include/wine/port.h:
	include: Allow port.h to build on gcc4.

2007-06-14  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Fix a write_parameters_init bug.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Factor the output functions.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Handle encapsulated unions.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Handle embedded interface pointers.

2007-06-13  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Use Unicode functions in more places.

2007-06-14  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Modify getRegClass() to avoid dubious comparisons and casts between
	HKEYs and error codes.

	* programs/regedit/regproc.c:
	regedit: Having garbage after the dash in '"foo"=-' is not valid.
	Don't complain if the value already does not exist.

	* programs/regedit/regproc.c:
	regedit: The registry functions return standard error codes, not HRESULTs.

	* programs/regedit/regproc.c:
	regedit: Make the dword and binary data parsing both more flexible and stricter.
	Make sure it does not modify the value if the data is invalid.

	* programs/regedit/regproc.c:
	regedit: If the data for a given value is in an unknown format, then print an
	error and don't modify the value.
	Note that '"foo"=' is not valid.

	* programs/regedit/listview.c, programs/regedit/regedit.c,
	  programs/regedit/regproc.c, programs/regedit/regproc.h:
	regedit: Remove cruft and make functions static, reordering where necessary
	to avoid forward declarations.
	Remove the command parameter of processRegLines() as it can only be used with
	processRegEntry().

	* programs/regedit/regedit.c, programs/regedit/regproc.c,
	  programs/regedit/regproc.h:
	regedit: Remove setAppName() as the application name is hardcoded anyway.

2007-06-14  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/encode.c:
	crypt32: Add missing '\n' to ok() call.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Move file dialog resizing code into its own function.

2007-06-13  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Improve cut/copy/paste behavior of password edit boxes.

2007-06-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fixed the WriteEnvironmentStrings action.

2007-06-10  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/d3d9_main.c, dlls/d3d9/d3d9_private.h:
	d3d9: Add a dll global critical section.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: DDraw surfaces are QWORD aligned.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/wined3d/swapchain.c:
	wined3d: Present does not clear the depth stencil.

2007-06-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/ddraw.h, include/wine/wined3d_gl.h,
	  include/wine/wined3d_types.h:
	wined3d: Implement vertical refresh sync.

2007-05-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/swapchain.c:
	wined3d: Only swap system memory resources of front and back buffer if they
	have the same size.

2007-06-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/table.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Constify some variables.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: Use TIME_KILL_SYNCHRONOUS on sound timer.

2007-06-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/localspl/localmon.c:
	localspl: Make some functions static.

2007-06-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Implement AddPortEx.

2007-06-13  Michael Stefaniuc <mstefani@redhat.de>

	* tools/wrc/parser.y:
	wrc: Fix redundant checks for NULL before free(). Found by Smatch.

2007-06-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/custom.c:
	msi: Protect custom actions with a structured exception handler.

2007-06-13  Rob Shearman <rob@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	include: Add HTMLTextContainerEvents dispinterface and necessary dispids.

2007-06-13  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/device.c:
	wined3d: Remove a duplication in device.c.

2007-06-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Vista uses a different error code.

2007-06-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Skip tests if we don't have enough rights.

2007-06-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Add some tests for BITMAPINFOHEADER biSize checks.

2007-06-13  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regedit.c, programs/regedit/regproc.c,
	  programs/regedit/regproc.h:
	regedit: Move PerformRegAction() and get_file_name() around to eliminate
	forward references. Make them static.

2007-06-13  Francois Gouget <fgouget@free.fr>

	* dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Add missing '\n' to ok() calls, Wine traces.

2007-06-14  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/typegen.c:
	widl: Add typecasts for user marshalling routines to avoid compiler warnings.

2007-06-13  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle wire_marshal pointer attributes.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	widl: Test structure argument marshalling.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h, tools/widl/widltypes.h:
	widl: Handle wire_marshal types.

2007-06-06  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/tests/msg.c:
	user32: tests:msg Add test for switching MDI children.

2007-06-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Skip tests if we don't have enough rights.

2007-06-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/dib.c:
	gdi32: Make BITMAPINFOHEADER biSize check match what other parts of code do.

2007-06-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/hlink.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c:
	mshtml: Use the implementation of IHlink in hlink.dll instead of duplicating it.

2007-06-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/waveout.c:
	winealsa: Detach directsound implementation from waveout implementation.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Allow CRYPT_NEWKEYSET and CRYPT_VERIFYCONTEXT at same time when
	acquiring context.

2007-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Fix the WintrustGetRegPolicyFlags to work right the first time.

2007-06-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Fix checks to be more informative when they fail.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Simplify the code and improve consistency by removing unneeded
	function typedefs.

2007-06-12  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/gdiplus/gdiplus.c:
	Add API documentation stubs to make winapi_check happy.

2007-06-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS7_SIGNER_INFO encoding/decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_ATTRIBUTES encoding/decoding.

	* dlls/crypt32/encode.c:
	crypt32: Use CRYPT_EncodeEnsureSpace to allocate memory when necessary.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_ATTRIBUTE encoding/decoding.

	* dlls/crypt32/encode.c:
	crypt32: Separate set encoding into a separate function.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_CONTENT_INFO encoding/decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement CERT_AUTHORITY_KEY_ID2_INFO encoding/decoding.

2007-06-12  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_types.h:
	wined3d: Add wined3d vertex sampler definitions.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap() when activating the context.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Take the texUnitMap into account when loading
	shader_glsl_load_psamplers().

2007-06-12  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Add gamma linerization support for D3DFMT_A4R4G4B4.

2007-06-12  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawRectangleI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawLineI.

2007-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tab.c:
	comctl32: Remove useless pointer check.

2007-06-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Set the MsiNetAssemblySupport property.

2007-06-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/select.c, dlls/msi/sql.y,
	  dlls/msi/string.c, dlls/msi/suminfo.c:
	msi: Constify some variables.

2007-06-12  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	secur32: Update win32.api to fix the winapi_check warnings.

	* dlls/msdmo/dmoreg.c, include/dmoreg.h, tools/winapi/win32.api:
	msdmo: Improve the prototypes Win64 compatibility by replacing long with LONG.

	* include/dmoreg.h:
	msdmo: dmoreg.h should include mediaobj.h.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: winapi_check expects the module name to be all uppercase in the
	documentation.

	* tools/winapi/winapi_documentation.pm:
	winapi_check: .exe and .ocx files can also export APIs.

	* dlls/gdiplus/gdiplus.c:
	gdiplus: Add missing '\n' in Wine trace.

2007-06-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Pass the D3DCB_CreateAdditionalSwapChain() error code to the upper
	layers (needed for d3d9).

2007-05-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/texture.c:
	d3d8: Hold the lock in IDirect3Dtexture8 methods.

	* dlls/d3d8/volumetexture.c:
	d3d8: Hold the lock in IDirect3DVolumeTexture8 methods.

	* dlls/d3d8/volume.c:
	d3d8: Hold the lock in volume methods.

	* dlls/d3d8/vertexbuffer.c:
	d3d8: Hold the lock in IDirect3DVertexBuffer methods.

2007-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/swapchain.c:
	d3d8: Hold the lock in swapchain methods.

2007-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Glyph width is rounded to 32 bits, make sure to provide enough
	null data.

2007-06-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Add some error handling to hlink_frame_navigate.

	* dlls/hlink/hlink_main.c, dlls/uuid/uuid.c:
	uuid: Add hlink CLSIDs.

2007-06-11  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Added first GDI+ graphics implementation.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/pen.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	gdiplus: First pen test.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: First pen implementation.

2007-06-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/propset.c:
	dsound: Unset variable on failure in IKsBufferPropertySetImpl_Create.

2007-06-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/format.c:
	msi: Constify a variable.

2007-06-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/Fr.rc, programs/wordpad/Hu.rc,
	  programs/wordpad/Ko.rc, programs/wordpad/Makefile.in,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Split toolbar into tool- and formatbar.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Allow toggling of statusbar.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Allow toggling of toolbar.

2007-05-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/surface.c:
	d3d8: Hold the lock in IDirect3DSurface8 methods.

	* dlls/d3d8/indexbuffer.c:
	d3d8: Hold the lock in IDirect3DIndexBuffer8 methods.

	* dlls/d3d8/cubetexture.c:
	d3d8: Hold the lock in cubetexture methods.

	* dlls/wined3d/device.c:
	wined3d: Do not set the dynlock flag on all created surfaces.

2007-06-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Simplify correlation descriptor code.

2007-06-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added get_URL implementation.

	* dlls/mshtml/editor.c:
	mshtml: Don't crash in set_font_size if range_cnt is 0.

	* dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added GetCurMoniker implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Store current moniker in HTMLDocument.

	* dlls/mshtml/persist.c:
	mshtml: Move Exec(CGID_ShellDocView, 37) call to match native.

	* dlls/mshtml/nsio.c:
	mshtml: Move createing URL moniker to separated function.

	* dlls/mshtml/olecmd.c:
	mshtml: Call Exec(CGID_ShellDocView, 37) in exec_editmode.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix potential null pointer access (spotted by Yaroslav Skorokhodov).

	* dlls/shell32/shell32_En.rc:
	shell32: Remove a redundant include.

	* dlls/shell32/xdg.c:
	shell32: Fix contents of string returned in load_path.

2007-06-11  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* dlls/credui/credui.rc, dlls/credui/credui_Ko.rc:
	credui: New Korean resource.

2007-06-11  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/winapi.pm:
	winapi_check: Also warn about 'unsigned long's Win64 compatibility problems.

	* dlls/ntdll/misc.c, dlls/ntdll/string.c, dlls/ntdll/wcstring.c,
	  tools/winapi/win32.api:
	ntdll: Improve the prototypes Win64 compatibility by replacing long with LONG.

2007-06-09  Vedran Rodic <vrodic@gmail.com>

	* dlls/winmm/playsound.c:
	winmm: Fix PlaySound so it doesn't block when another sound is already playing.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/time.c:
	winmm: Initialize the timer critical section statically.

	* dlls/winmm/time.c:
	winmm: Maintain the timer list sorted by expiration time.

	* dlls/winmm/time.c, dlls/winmm/winemm.h:
	winmm: Convert the timer list to a standard Wine list.

2007-06-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_CUT implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_PASTE implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_COPY implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IsDirty tests.

	* dlls/mshtml/persist.c:
	mshtml: Added semi stub IsDirty implementation.

	* dlls/mshtml/editor.c:
	mshtml: Added IDM_COMPOSESETTINGS implementation.

2007-06-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added IHTMLStyle::get_fontFamily implementation.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added COMMENT_NODE implementation in nsnode_to_nsstring_rec.

	* dlls/mshtml/nsembed.c:
	mshtml: Silence invalid FIXME for ELEMENT_DOCUMENT_FRAGMENT_NODE in
	nsnode_to_nsstring_rec.

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_RESPECTVISIBILITY_INDESIGN command stub implementation.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Set default scrollbar preferences.

	* dlls/mshtml/editor.c:
	mshtml: Reimplement editor mode left key using command controller.

	* dlls/mshtml/editor.c:
	mshtml: Reimplement editor mode right key using command controller.

	* dlls/mshtml/editor.c:
	mshtml: Added editor mode down key implementation.

	* dlls/mshtml/editor.c:
	mshtml: Added editor mode up key implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Store editor controller in NSContainer.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call update_doc in init_editor.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call update_doc in editor commands.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more command tests.

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Exec(IDM_FONTNAME) tests.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/task.c:
	mshtml: Set default fontname to 'Times New Roman'.

	* dlls/mshtml/editor.c:
	mshtml: Don't check out variant type in exec_fontname.

	* dlls/mshtml/nsembed.c:
	mshtml: Set FALSE useCapture for editor's keypress event listener.

	* dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c:
	mshtml: Push TASK_PARSECOMPLETE in load event if Gecko is available.

	* dlls/mshtml/editor.c:
	mshtml: Improve IDM_JUSTIFYLEFT query status.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Pump messages of all windows in test_download.
	We have to pump Gecko windows' messages to correctly support loading documents.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of callbacks called from document timer.

	* dlls/mshtml/olecmd.c:
	mshtml: Call update_doc in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c, dlls/mshtml/task.c,
	  dlls/mshtml/view.c:
	mshtml: Move Exec(OLECMDID_SETTITLE) call to separated function and use it
	in on_timer.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Call UpdateUI and Exec(OLECMDID_UPDATECOMMANDS) from timer callback.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c, dlls/mshtml/olewnd.c:
	mshtml: Use IOleCommandTarget::Exec to implement context menu.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Don't do anything in exec_editmode if edit mode is already set.

	* dlls/mshtml/navigate.c:
	mshtml: Don't crash in load_stream if Gecko is not available.

	* dlls/mshtml/persist.c:
	mshtml: Forward all IsDirty implementations to one function.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Move setup_ns_editing to nsembed.c.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h:
	mshtml: Make [get|set]_font_size static.

	* dlls/mshtml/olecmd.c:
	mshtml: Move remaining status queries to command tables.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move edit command queries to the command table.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move justify queries to command table.

	* dlls/mshtml/olecmd.c:
	mshtml: Use command table for IDM_COPY, IDM_CUT and IDM_PASTE query.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move remaining commands to tables.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move more commands to editor command table.

	* dlls/mshtml/olecmd.c:
	mshtml: Move more commands to command table.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Move IDM_FONTSIZE, IDM_FONTNAME and IDM_FORECOLOR to edit state
	command table.
	This patch temporary adds code duplication.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c:
	mshtml: Added command table for CGID_MSHTML commands.

2007-06-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c:
	crypt32: Add CryptMsg* stubs.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msxml3/xmlelem.c:
	msxml: Don't use VariantClear on an uninitialized variant.

2007-06-08  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Added beginnings of memory and startup functions.

	* include/Makefile.in, include/gdiplus.h, include/gdiplusenums.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplusinit.h, include/gdiplusmem.h,
	  include/gdipluspixelformats.h, include/gdiplustypes.h:
	gdiplus: Added public headers.

2007-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Some render target->texture blit context handling.

	* dlls/d3d8/device.c:
	d3d8: Hold the lock in IDirect3DDevice8 methods.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Find possible fbconfis on dll load time, use them in
	CheckDepthStencilMatch.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the adapter driver and description in the adapter.

2007-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/context.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the gl information in a per adapter structure and initialize
	it only once.

2007-06-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/recyclebin.c, dlls/shell32/shell32.spec:
	shell32: Add stub for SHUpdateRecycleBinIcon.

2007-06-10  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Fix compilation with old alsa headers.

2007-06-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/sysparams.c:
	user32: Do not hardcode cp1252 for an icon/title font.

2007-06-10  Jeff Latimer <lats@yless4u.com.au>

	* dlls/msi/msi.c:
	msi: Use the langbuff len rather than the versionbuff len when allocating
	the langbuff.

	* dlls/shell32/shelllink.c:
	shell32: Fix possible dereference of NULL ptr.

2007-06-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add test for unquoted %1 in command and ddeexec keys.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Allow testing for arbitrary number of command line arguments
	in DDE tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Expand default DDE application name tests to conform to win98.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Use ShellExecuteEx with SEE_MASK_FLAG_DDEWAIT and
	SEE_MASK_FLAG_NO_UI for DDE tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Save threadid from CreateThread as required by winme/98/95.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Simplify DDE thread and message loop.

2007-06-08  Nigel Liang <ncliang@gmail.com>

	* dlls/shell32/tests/shlfileop.c, dlls/shell32/xdg.c:
	shell32: Conformance tests for unicode filenames and fix a bug for file deletion.

2007-06-08  Alexandre Julliard <julliard@winehq.org>

	* tools/config.guess, tools/config.sub:
	tools: Upgrade the config.guess/config.sub scripts.

	* aclocal.m4, configure, configure.ac:
	configure: Replace some obsolete macros to avoid warnings.

	* configure, configure.ac, libs/wine/Makefile.in:
	libwine: Set install name to an absolute path for the installed library on
	Mac OS.

	* include/activscp.idl, include/comcat.idl, include/dispex.idl,
	  include/mlang.idl, include/msxml.idl, include/oaidl.idl,
	  include/objidl.idl, include/objsafe.idl, include/ocidl.idl,
	  include/oleidl.idl, include/propidl.idl, include/unknwn.idl:
	include: Add DO_NO_IMPORTS ifdefs where needed.

2007-06-02  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/sync.c:
	kernel32: Implement IO completion functions on top of the NT IoCompletion API.

	* dlls/kernel32/sync.c:
	kernel32: Factor out all kernel32 timeout-conversion snippets to one helper
	functions.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sync.c, include/winternl.h:
	ntdll: Stub and document IoCompletion APIs.

2007-06-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Set the correct ebp value before calling the local unwind handler.

	* programs/cmd/builtins.c:
	cmd.exe: Silence a FIXME.

2007-06-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add missing table entry value.

2007-06-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/string.c,
	  dlls/msi/table.c:
	msi: Add support for large string tables.

	* dlls/msi/table.c:
	msi: Represent table data as bytes instead of shorts.

	* dlls/msi/table.c:
	msi: Reduce the amount of code that directly accesses table data.

	* dlls/msi/table.c:
	msi: Use fetch_int to reduce code duplication and access to table data.

2007-06-07  Lei Zhang <thestig@google.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shresdef.h:
	shell32: Start implementing BIF_USENEWUI.

2007-06-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: For ps_2_0 and higher, call shader_get_registers_used() in
	IWineD3DPixelShaderImpl_SetFunction.

	* dlls/wined3d/vertexshader.c:
	wined3d: Pass NULL for the stateBlock parameter to shader_get_registers_used()
	in IWineD3DVertexShaderImpl_SetFunction.

2007-06-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Fix debug trace.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Switch to Wine Gecko 0.1.0.

2007-06-07  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Fix incomplete struct/union typedef bug.

	* tools/widl/typegen.c:
	widl: Check for NULL in set_tfswrite.

2007-06-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Use correct tests for synthesizer/port enumeration order.

2007-06-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Check file dialog's FOIShellView before accessing it.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Initialize file dialog controls before creating dialog.

2007-06-07  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Implementation of state bits for IStorage.

2007-06-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ole32/filemoniker.c:
	ole32: Remove stack-based string buffer inFileMonikerImpl_DecomposePath.

2007-06-07  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_gl.h:
	wined3d: Fix GLSL definitions.

	* dlls/wined3d/device.c:
	wined3d: Turn off filtering for FBO attachments, update the texture's states
	array.

2007-06-07  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Use DDE for winebrowser as native.

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Add DDE support.

2007-06-07  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c,
	  dlls/dbghelp/type.c, dlls/localspl/tests/localmon.c,
	  dlls/mciavi32/info.c, dlls/odbccp32/tests/misc.c,
	  dlls/riched20/editor.c, dlls/shell32/tests/shlexec.c,
	  dlls/shlwapi/tests/shreg.c, dlls/version/info.c,
	  dlls/version/tests/info.c, dlls/wined3d/device.c,
	  dlls/wined3d/state.c, dlls/wined3d/surface.c, dlls/winedos/int10.c,
	  include/wine/wined3d_interface.h:
	Assorted spelling fixes.

	* dlls/wined3d/state.c:
	wined3d: Fix spelling of the state_separateblend() function.

2007-06-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c:
	wininet: More lenient parsing of the passive mode server response.

2007-06-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/atl/atl_ax.c:
	atl: Use CallWindowProc instead of calling old window proc directly.

2007-06-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comdlg32/tests/filedlg.c:
	comdlg32/tests: Skip some not implemented functions on win98.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/mci.c, dlls/winmm/mmio.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/playsound.c, dlls/winmm/time.c, dlls/winmm/winemm.h,
	  dlls/winmm/winmm.c:
	winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance
	anyway.

2007-06-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Use unix fd's instead of win32 events to sync internal events in timer.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/time.c:
	winmm: Fix computation of sleep time until next timeout.

2007-06-06  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Enable the loading and reloading of gamma corrected textures.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  include/wine/wined3d_interface.h:
	wined3d: Add support for loading gamma corrected textures.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Extend the D3DFMT table to include gamma corrected formats.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_EXT_texture_sRGB constants and corresponding CheckDeviceFormat
	query.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/widl.c:
	widl: Get rid of the SIGSEGV handler, this only makes things harder to debug.

2007-06-06  Misha Koshelev <mk144210@bcm.edu>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Add support for vararg functions in ITypeInfo::Invoke.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Add tests for IDispatch::Invoke of vararg function.

	* tools/widl/write_msft.c:
	widl: Add support for vararg attribute.

2007-05-21  Lei Zhang <thestig@google.com>

	* include/shlobj.h:
	include: Add missing definitions to shlobj.h.

2007-06-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c:
	wined3d: Void functions should not return a value.

2007-06-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c:
	mlang: Implement IMultiLanguage::GetLcidFromRfc1766.

2007-06-06  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/Ru.rc:
	cmd.exe: Update Russian translation.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* programs/winedevice/device.c:
	winedevice: Accept the shutdown service control.

2007-06-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added support for coexisting different Gecko versions installation.

2007-06-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Get rid of the pBaseVertexIndex parameter to
	IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DDevice_GetBaseVertexIndex to retrieve the base vertex index.

2007-06-06  Markus Goemmel <m.goemmel@compulab.de>

	* dlls/comctl32/listview.c:
	comctl32/listview.c: Ownerdraw font problem during focus change fixed.

2007-06-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Remove outdated comment.

2007-06-06  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: XRenderCompositeText has a problem with 0x0 glyphs, so we'll
	pretend they're 1x1.

2007-06-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Use A instead of W-calls.

2007-06-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/msvcrt/direct.h, include/msvcrt/io.h, include/msvcrt/malloc.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/stddef.h, include/msvcrt/stdio.h,
	  include/msvcrt/stdlib.h, include/msvcrt/string.h,
	  include/msvcrt/sys/stat.h, include/msvcrt/sys/types.h,
	  include/msvcrt/time.h, include/msvcrt/wchar.h:
	include/msvcrt: Make sure that __int64 is properly defined on a 64-bit platform.

2007-06-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Mark service processes as system processes, and exit when all user
	processes are done.

	* programs/explorer/desktop.c:
	explorer.exe: Mark explorer as a system process.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/process.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for system processes, that can be signaled to exit when
	all non-system processes are done.

2007-06-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/oleaut.c:
	oleaut32: Fix some typos.

	* dlls/msi/helpers.c, dlls/msi/insert.c, dlls/msi/msi.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/query.h,
	  dlls/msi/record.c:
	msi: Constify some variables.

2007-06-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umstream.c:
	urlmon: Don't pass query part of URL to CreateUrlCacheEntryW.

2007-06-05  Lei Zhang <thestig@fido.smo.corp.google.com>

	* dlls/wined3d/surface.c:
	wined3d: Various spelling fixes.

2007-06-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix potential buffer overflow.

2007-05-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/directx.c:
	d3d8: Hold the DLL lock in IDirect3D8 methods.

2007-05-22  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h:
	d3d8: Add a dll global critical section.

2007-06-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Implement conformant structure handling.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h, tools/widl/typelib.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Represent arrays with type_t.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c:
	widl: Replace get_name with a field reference.

	* include/wine/list.h:
	list.h: Add macros for reverse iteration.

2007-06-06  Francois Gouget <fgouget@free.fr>

	* programs/cmd/directory.c:
	programs/cmd: Add missing '\n' to Wine trace.

	* dlls/winspool.drv/winspool.drv.spec:
	winspool.drv: Fix the AddPortExA/W() export to match the implementation.

2007-06-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/psapi/psapi_main.c:
	psapi: GetWsChanges() calls down to the wrong ntdll function. Found by sparse.

	* dlls/psapi/psapi_main.c:
	psapi: GetPerformanceInfo() calls down to the wrong ntdll function. Found
	by sparse.

2007-06-05  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wineoss.drv/midi.c:
	wineoss.drv: Mark every buffer being added.

2007-06-05  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Implement NTLM support for proxy authentication.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Send the correct callbacks during InternetReadFileExA calls.

2007-06-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_interface.h:
	wined3d: Get rid of the BaseVertexIndex parameter to
	IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.

	* dlls/wined3d/drawprim.c:
	wined3d: Make sure the color buffer is not modified by depth_blt().

2007-06-05  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Replace WINSPOOL_SHDeleteKeyW with RegDeleteTreeW.

2007-06-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/int31.c:
	winedos: Fix printf format warnings introduced by the TEB change in thread.h.

2007-06-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/crypt.c:
	wintrust/tests: Start of some crypt tests for wintrust.

2007-06-05  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add mapping for STATUS_OBJECT_TYPE_MISMATCH to WSAENOTSOCK.

2007-06-05  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h:
	riched20: Don't mess with the caret if we don't have focus.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Fixes for the PICTYPE_UNINITIALIZED case.

2007-06-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc:
	wordpad: Add missing dots to Open menu item.

2007-06-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Convert the service list to a standard list.

2007-05-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/viewport.c:
	ddraw: Hold the Lock in IDirect3DViewport methods.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Hold the lock in IDirect3DVertexBuffer methods.

	* dlls/ddraw/texture.c:
	ddraw: Hold the lock in IDirect3DTexture methods.

	* dlls/ddraw/light.c:
	ddraw: Hold the lock in IDirect3DLight methods.

	* dlls/ddraw/palette.c:
	ddraw: Hold the lock in IDirectDrawPalette methods.

2007-06-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarRound.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarNeg.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarInt.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarFix.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarNot.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAbs.

2007-06-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c:
	quartz: Don't return S_FALSE for failed connections.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Add a few missing checkGLcall calls.

2007-06-05  Michael Stefaniuc <mstefani@redhat.de>

	* tools/wrc/translation.c:
	wrc: Fix non-ANSI function declaration. Found by sparse.

	* dlls/gphoto2.ds/gphoto2_main.c:
	gphoto2.ds: Fix non-ANSI function declaration. Found by sparse.

	* dlls/capi2032/cap20wxx.c:
	capi2032: Fix non-ANSI function declaration. Found by sparse.

2007-06-04  Michael Stefaniuc <mstefani@redhat.de>

	* include/wingdi.h:
	wingdi.h: Multi-character character constants are implementation specific
	according to the C standard. Use a hex number instead.

2007-06-04  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/qcap/dllsetup.c:
	qcap: Replace DeleteEntireSubKey with RegDeleteTreeW.

2007-06-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement SummaryInfo::PropertyCount.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::PropertyCount.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/tests/automation.c:
	msi: automation: Implement SummaryInfo::Property, put.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::Property, put.

	* dlls/msi/msiserver.idl:
	msi: automation: Add MsiOpenDatabaseMode enum.

	* dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::OpenDatabase.

	* dlls/msi/automation.c:
	msi: automation: SummaryInfo::Property, remove all specific instances to PIDs.

	* dlls/msi/suminfo.c, dlls/msi/tests/suminfo.c:
	msi: suminfo: Return ERROR_UNKNOWN_PROPERTY as native.

	* dlls/msi/tests/suminfo.c:
	msi/tests: suminfo: Add tests for MsiSummaryInfoGetProperty for unknown
	property values.

2007-06-04  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Rename IWineD3DDeviceImpl_SetBasevertexIndex to
	IWineD3DDeviceImpl_SetBaseVertexIndex.

	* dlls/wined3d/device.c:
	wined3d: TRACE the Color parameter in IWineD3DDeviceImpl_Clear.

2007-06-04  Huw Davies <huw@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Don't release the factory if we failed to get it.

2007-06-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, include/winspool.h:
	winspool: Implement AddPortEx.

2007-06-04  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Mark every sysex buffer being added.

2007-06-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Rewrite WSAGetOverlappedResult for the new async I/O behavior.

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Rewrite GetOverlappedResult for the new async I/O behavior.

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ws2_32/socket.c,
	  include/thread.h:
	ntdll: Get rid of the num_async_io counter in the TEB.

	* server/thread.c:
	server: Run async I/O APCs from the SIGUSR1 handler.

	* dlls/ws2_32/socket.c:
	ws2_32: Queue a proper user APC also on immediate success in
	WSARecvFrom/WSASendTo.

2007-06-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Remove the extra apc_arg parameter now that user APCs all require the
	same arg as the kernel APC.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c:
	ntdll: Queue an intermediate user APC routine to free the async info.

2007-06-02  Andrey Turkin <andrey.turkin@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/pdh/Makefile.in, dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Stub implementation of pdh.dll.

2007-06-03  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/xcopy/Makefile.in, programs/xcopy/xcopy.c:
	xcopy.exe: Convert from main to wmain.

	* programs/cmd/directory.c:
	cmd.exe: Fix dir /w.
	Use of %* fails when using wvsprintf, so just pad manually,
	but maintain only a single output call.

	* programs/cmd/Makefile.in, programs/cmd/wcmdmain.c:
	cmd.exe: Change from main to wmain.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix handling of malformed environment variable expansion.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Fix 'help garbage' command post-unicode support.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Makefile.in, programs/cmd/Nl.rc,
	  programs/cmd/No.rc, programs/cmd/Pl.rc, programs/cmd/Pt.rc,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/batch.c, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Convert cmd to Unicode.

	* programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Handle command line as Unicode.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Move writing to console into a single function.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/batch.c,
	  programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Move English constants into NLS files.

2007-06-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Make LVM_GETCOLUMNWIDTH query the header control instead
	of using cached data.

2007-06-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/mouse.c:
	dinput: Acquire device only if specified window has focus in foreground
	coop level.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Make sure to unacquire device before freeing it.

2007-06-01  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/tests/automation.c:
	msi: automation: Fix SummaryInfo::Property get to conform to native.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::Property, get.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl:
	msi: automation: Database::SummaryInformation is a propget, not a method.

	* dlls/msi/automation.c:
	msi: automation: Remove redundant VariantClear(pVarResult).

	* dlls/msi/msiserver.idl:
	msi: msiserver.idl: Maintain spacing as spaces, not tabs.

	* dlls/msi/automation.c:
	msi: automation: Add missing operand for evaluation.

	* dlls/msi/automation.c:
	msi: automation: Remove duplicate error messages on unknown dispid.
	DISP_E_MEMBERNOTFOUND FIXME is already handled in AutomationObject_Invoke.

2007-06-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer.

	* dlls/wined3d/device.c:
	wined3d: Return WINED3DERR_INVALIDCALL in DrawIndexedPrimitive if no index
	buffer is set.

2007-06-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/crypt32/store.c:
	crypt32: Replace CRYPT_RecurseDeleteKey with RegDeleteTreeW.

2007-06-01  Glenn Wurster <gwurster@scs.carleton.ca>

	* dlls/sfc/sfc.spec, dlls/sfc_os/sfc_os.c, dlls/sfc_os/sfc_os.spec:
	sfc_os: Add stub implementation for SfcIsKeyProtected.

2007-05-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/propset.c:
	dsound: Disable property sets if hardware doesn't support it.

	* dlls/dsound/buffer.c:
	dsound: Recalculate 3d buffer on SetVolume.

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Fix buffer caps.

2007-05-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/material.c:
	ddraw: Hold the lock in IDirect3DMaterial methods.

2007-05-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/gamma.c:
	ddraw: Hold the lock in IDirectDrawGammaControl methods.

2007-05-20  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/clipper.c:
	ddraw: Hold the lock in IDirectDrawClipper methods.

2007-06-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Hold the lock in IDirect3DDevice methods.

2007-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/stateblock.c:
	wined3d: Do not enable GL_APPLE_client_storage for the dummy textures.

2007-05-31  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add file saving dialog.

	* programs/wordpad/wordpad.c:
	wordpad: Convert open file dialog to Unicode.

2007-06-02  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Improve file reading code.

	* programs/wordpad/wordpad.c:
	wordpad: Add file saving support.

2007-05-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Store file name globally.

	* programs/wordpad/wordpad.c:
	wordpad: Split code into set_caption function.

2007-06-02  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool: Add more flags for printer drivers.

2007-06-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/quartz/filtermapper.c:
	quartz: Added some error checking on failure to CreateClassEnumerator.

2007-06-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/local16.c:
	kernel: Fix clearing of memory in LocalReAlloc16(..., LMEM_ZEROMEMORY).

2007-06-01  Francois Gouget <fgouget@free.fr>

	* dlls/ws2_32/socket.c, include/winsock.h, include/winsock2.h,
	  tools/winapi/win32.api:
	ws2_32: Improve the prototypes Win64 compatibility by replacing long with LONG.

2007-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Simplify the async shutdown handling, and remove a bunch of no longer
	used code.

	* dlls/ws2_32/socket.c:
	ws2_32: Call the I/O completion routine as a user APC.

	* dlls/ws2_32/socket.c:
	ws2_32: Reimplement WSASendTo along the lines of NtWriteFile.

2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.38.

----------------------------------------------------------------
2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/menu.c:
	user32: Fix a printf format warning.

2007-05-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/appsearch.c, dlls/msi/classes.c, dlls/msi/cond.y,
	  dlls/msi/custom.c, dlls/msi/msipriv.h:
	msi: Constify some variables.

2007-05-31  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/msg.c:
	user32/test: Add few tests for messages sent from SetForegroundWindow().

2007-06-01  Julien Muchembled <jm@jm10.no-ip.com>

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Fix enumeration of VFW video codecs that are registered in the registry.

2007-05-31  Misha Koshelev <mk144210@bcm.edu>

	* dlls/comctl32/imagelist.c:
	comctl32: imagelist: Fix simultaneous selection of one bitmap into two device
	contexts.

2007-05-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, include/msidefs.h:
	msi: Implement SummaryInfo::Property get.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: Implement Installer::OpenDatabase.

	* dlls/msi/custom.c:
	msi: Add handling for MsiBreak.

2007-05-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix a compilation warning in 64-bit mode.

2007-05-31  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/cmd/No.rc:
	cmd: Update Norwegian Bokmål resources.

	* dlls/shdoclc/No.rc:
	shdoclc: Update Norwegian Bokmål resources.

	* dlls/localui/localui.rc, dlls/localui/ui_No.rc:
	localui: Add Norwegian Bokmål resources.

	* dlls/credui/credui.rc, dlls/credui/credui_No.rc:
	credui: Add Norwegian Bokmål resources.

	* programs/regedit/No.rc:
	regedit: Update Norwegian Bokmål resources.

	* dlls/msi/msi_No.rc:
	msi: Update Norwegian Bokmål resources.

	* dlls/shell32/shell32_No.rc:
	shell32: Update Norwegian Bokmål resources.

2007-06-01  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: gethostbyname("") should work.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Improve vtstr() and variantstr().
	- Use a CASE() macro to simplify the vtstr() code and eliminate hard-coded
	variant type values.
	- Update the list of known variant types.
	- If a variant type is unknown, print its numerical value.
	- In variantstr(), hand off all the standard cases to vtstr(), instead of
	(partially) duplicating its code.

2007-05-31  Jeremy White <jwhite@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Mark Proxy Authorization header as a request header, so it actually
	gets sent.

2007-05-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/mmoutput.c, dlls/mciavi32/wnd.c:
	mciavi32: Fix compilation warnings in 64-bit mode.

	* dlls/midimap/midimap.c, dlls/winmm/driver.c, include/mmddk.h:
	midimap: Fix compilation warnings in 64-bit mode.

	* dlls/mciwave/mciwave.c:
	mciwave: Fix compilation warnings in 64-bit mode.

	* dlls/mciseq/mcimidi.c:
	mciseq: Fix compilation warnings in 64-bit mode.

	* dlls/mcicda/mcicda.c:
	mcicda: Fix compilation warnings in 64-bit mode.

	* dlls/atl/atl_ax.c:
	atl: Fix compilation warnings in 64-bit mode.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Remove unneeded cast.

2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Preserve errno across system calls done in the suspend handler.

	* dlls/ws2_32/socket.c:
	ws2_32: Don't modify last error in async I/O callback.

	* dlls/ws2_32/socket.c:
	ws2_32: Re-enable FD_READ also when returning EWOULDBLOCK from WSARecvFrom().

2007-05-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Pass an lpDx array to the driver if the escapement is non-zero, so that
	the driver has access to the unrotated advance widths.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/d3drm/tests/vector.c:
	d3drm/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/version/info.c, include/winver.h:
	version: Fix the VerQueryValueA/W() prototypes.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Convert some macros to functions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix the EQ_DOUBLE() and EQ_FLOAT() macros so they work no
	matter how large the values to compare are.
	Use them everywhere.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Remove unneeded parentheses.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Remove redundant semi-colons.

2007-05-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/task.c:
	mshtml: Constify some variables.

2007-05-30  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Add stub implementations for CryptCATAdminAddCatalog and
	CryptCATAdminReleaseCatalogContext.

	* dlls/msi/action.c:
	msi: Implement the WriteEnvironmentStrings standard action.

2007-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c:
	wined3d: Keep GL_TEXTURE_2D enabled when using dummy textures.

	* dlls/wined3d/state.c:
	wined3d: Don't mess with nv texture shaders if its not supported.

2007-05-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/direct3d.c:
	ddraw: Hold the lock in IDirect3DX methods.

2007-05-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Check the validy of IDirectDrawSurface::BltFast parameters.

2007-05-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c:
	ddraw: Hold the lock in IDirectDrawSurface methods.

2007-05-30  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/comctl32/comctl32.spec, dlls/comctl32/commctrl.c,
	  include/commctrl.h:
	comctl32: Add stub for DrawShadowText.

2007-05-30  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Fix build of test on Solaris by renaming a variable.

2007-05-30  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Set current_structure when writing out structure members to
	ensure the conformance/variance calculation function can find the
	necessary fields in the structures.

	* tools/widl/typegen.c:
	widl: RPC_FC_BIND_PRIMITIVE is a base type so reverse an if statement
	that caused string_of_type to fail and the RPC_FC_BIND_PRIMITIVE code
	not to be executed.

	* tools/widl/parser.y:
	widl: A structure with variance, but without conformance should be a complex
	struct instead of a conformant, varying struct.

2007-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Report end of file instead of broken pipe on char devices.

	* dlls/ws2_32/socket.c:
	ws2_32: Allocate iovec buffers statically using MSG_MAXIOVLEN.

	* include/winsock.h:
	include: Fix the definition of MSG_MAXIOVLEN.

	* dlls/ws2_32/socket.c:
	ws2_32: Store the local iosb in the ws2_async structure to avoid a memory
	allocation.

	* dlls/ws2_32/socket.c:
	ws2_32: Reimplement WSARecvFrom along the lines of NtReadFile.

2007-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Avoid memory allocations for sockaddr conversion.

2007-05-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Constify some variables.

	* dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Constify some variables.

	* dlls/msacm32/internal.c, dlls/msacm32/wineacm.h:
	msacm32: Constify some variables.

2007-05-25  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/clock/Es.rc, programs/cmd/Es.rc, programs/cmdlgtst/Es.rc,
	  programs/regedit/Es.rc:
	Some Spanish translations updated.

2007-05-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Added implementation of RegDeleteTreeA/W.

2007-05-28  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/Makefile.in, programs/net/net.c:
	net.exe: Add NET START command.

2007-05-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/local16.c:
	kernel32: Clear the extra memory in LocalReAlloc16(h, bigger_size,
	LMEM_ZEROINIT).

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/caret.c, dlls/user32/dde_misc.c, dlls/user32/dde_private.h,
	  dlls/user32/dde_server.c, dlls/user32/edit.c, dlls/user32/mdi.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/msg16.c,
	  dlls/user32/sysparams.c, dlls/user32/uitools.c,
	  dlls/user32/user_private.h, dlls/user32/win.c, dlls/user32/winproc.c:
	user32: Fix some compilation warnings in 64-bit mode.

	* dlls/kernel32/kernel16_private.h, dlls/kernel32/selector.c:
	kernel32: Fix some compilation warnings in 64-bit mode.

2007-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/global16.c, dlls/kernel32/toolhelp.h:
	kernel32: Store global arena base as a pointer.

	* dlls/winedos/Makefile.in, dlls/winedos/dosexe.h, dlls/winedos/int11.c,
	  dlls/winedos/int12.c, dlls/winedos/int17.c, dlls/winedos/int19.c,
	  dlls/winedos/int1a.c, dlls/winedos/int20.c, dlls/winedos/int29.c,
	  dlls/winedos/int2a.c, dlls/winedos/int41.c, dlls/winedos/int4b.c,
	  dlls/winedos/int5c.c, dlls/winedos/interrupts.c:
	winedos: Merge a number of tiny source files into interrupts.c.

	* dlls/dmband/band.c, dlls/dmband/bandtrack.c, dlls/dmband/dmband_main.c,
	  dlls/dmband/dmband_private.h, dlls/dmband/dmutils.c,
	  dlls/dmband/dmutils.h, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/signposttrack.c, dlls/dmime/audiopath.c,
	  dlls/dmime/dmime_main.c, dlls/dmime/dmime_private.h,
	  dlls/dmime/dmutils.c, dlls/dmime/dmutils.h, dlls/dmime/graph.c,
	  dlls/dmime/lyricstrack.c, dlls/dmime/markertrack.c,
	  dlls/dmime/paramcontroltrack.c, dlls/dmime/patterntrack.c,
	  dlls/dmime/performance.c, dlls/dmime/segment.c,
	  dlls/dmime/segmentstate.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/wavetrack.c,
	  dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/debug.c, dlls/dmloader/debug.h,
	  dlls/dmloader/dmloader_main.c, dlls/dmloader/dmloader_private.h,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c,
	  dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h,
	  dlls/dmscript/script.c, dlls/dmscript/scripttrack.c,
	  dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_main.c,
	  dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/dmutils.h, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/style.c,
	  dlls/dmstyle/styletrack.c, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/synth.c,
	  dlls/dmsynth/synthsink.c, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/thru.c,
	  dlls/dmusic32/dmusic32_main.c, dlls/dpnhpast/main.c,
	  dlls/dswave/dswave.c, dlls/dswave/dswave_main.c,
	  dlls/dswave/dswave_private.h, include/dls1.h, include/dls2.h,
	  include/dmdls.h, include/dmerror.h, include/dmplugin.h,
	  include/dmusbuff.h, include/dmusicc.h, include/dmusicf.h,
	  include/dmusici.h, include/dmusics.h:
	dmusic: Fix license headers that mistakenly use GPL instead of LGPL.
	Confirmed by the original author and the major contributors.

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Fix compilation warnings in 64-bit mode.

	* dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/font.c, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/mfdrv/text.c, dlls/gdi32/printdrv.c, dlls/gdi32/region.c:
	gdi32: Fix compilation warnings in 64-bit mode.

2007-05-30  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the references in function descriptions returned for dual
	IDispatch interfaces.
	Do this by changing references from other interfaces (and possibly other
	typelibs) to uniquely identify them.
	Add special handling to GetRefTypeInfo to cope with this.

	* include/wincred.h:
	include: Fix a typo in wincred.h.
	The Attribute field of the CREDENTIALA/W structs should instead be
	Attributes.

	* dlls/oleaut32/typelib.c:
	oleaut32: For automatic-value-getting in ITypeInfo::Invoke, it doesn't matter
	what flag(s) the function was executed with, just what type of function is
	being invoked.

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/dc.c, dlls/gdi32/gdi_private.h, dlls/winex11.drv/dce.c,
	  include/wine/wingdi16.h:
	gdi32: Make SetDCHook 64-bit safe.

2007-05-29  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt: Fix typo.

2007-05-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add program icon.

2007-05-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/msipriv.h:
	msi: Perform a forced reboot if a custom action returns ERROR_INSTALL_SUSPEND.

	* dlls/msi/package.c:
	msi: Set the MsiNTProductType property.

	* dlls/msi/files.c:
	msi: Fall back to checking if the cab exists if the volume name doesn't match.

	* dlls/msi/files.c:
	msi: Create the destination directory if it doesn't exist when duplicating files.

2007-05-28  Rob Shearman <rob@codeweavers.com>

	* server/process.c:
	server: When starting a new process, use the token from the calling process,
	if one exists.

	* server/security.h, server/token.c:
	server: Move most of the duplicate_token request to a new function,
	token_duplicate, to enable the code to be used inside wineserver.

2007-05-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Remove duplicate code.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Handle default DDE application names.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add tests for default DDE application name.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Fix execute_from_key to conform to native behavior.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add tests for ShellExecute DDE behavior.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Remove the fixme about MB_USEGLYPHCHARS.

	* include/wine/unicode.h, libs/wine/c_037.c, libs/wine/c_10000.c,
	  libs/wine/c_10006.c, libs/wine/c_10007.c, libs/wine/c_10029.c,
	  libs/wine/c_1006.c, libs/wine/c_10079.c, libs/wine/c_10081.c,
	  libs/wine/c_1026.c, libs/wine/c_1250.c, libs/wine/c_1251.c,
	  libs/wine/c_1252.c, libs/wine/c_1253.c, libs/wine/c_1254.c,
	  libs/wine/c_1255.c, libs/wine/c_1256.c, libs/wine/c_1257.c,
	  libs/wine/c_1258.c, libs/wine/c_20127.c, libs/wine/c_20866.c,
	  libs/wine/c_21866.c, libs/wine/c_28591.c, libs/wine/c_28592.c,
	  libs/wine/c_28593.c, libs/wine/c_28594.c, libs/wine/c_28595.c,
	  libs/wine/c_28596.c, libs/wine/c_28597.c, libs/wine/c_28598.c,
	  libs/wine/c_28599.c, libs/wine/c_28600.c, libs/wine/c_28603.c,
	  libs/wine/c_28604.c, libs/wine/c_28605.c, libs/wine/c_28606.c,
	  libs/wine/c_424.c, libs/wine/c_437.c, libs/wine/c_500.c,
	  libs/wine/c_737.c, libs/wine/c_775.c, libs/wine/c_850.c,
	  libs/wine/c_852.c, libs/wine/c_855.c, libs/wine/c_856.c,
	  libs/wine/c_857.c, libs/wine/c_860.c, libs/wine/c_861.c,
	  libs/wine/c_862.c, libs/wine/c_863.c, libs/wine/c_864.c,
	  libs/wine/c_865.c, libs/wine/c_866.c, libs/wine/c_869.c,
	  libs/wine/c_874.c, libs/wine/c_875.c, libs/wine/c_878.c,
	  libs/wine/cpmap.pl, libs/wine/mbtowc.c:
	libwine: Add support for glyph chars mapping in OEM codepage tables.

	* dlls/wininet/netconnection.c:
	wininet: Fixed compilation without SSL.

2007-05-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: There is no need to make slash conversion in BindToStorage as URL is
	already canonized in the constructor.

2007-05-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winebuild/utils.c:
	winebuild: Mark builtin DLLs as IMAGE_FILE_LARGE_ADDRESS_AWARE on a 64-bit
	platform.

2007-05-28  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Add a new NETCON_query_data_available function.
	Use it to implement the behaviour where InternetReadFileExA does a
	synchronous request if the data is available and asynchronous otherwise.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Don't close the connection if the caller passes in zero for the number
	of bytes to be read.
	Only close the connection when the bytes read equals the content length.
	Fixup HTTP_DrainContent, which relied on the previous incorrect
	behaviour to instead close connections with no content length manually.

2007-05-28  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/sip.c, dlls/ddraw/utils.c,
	  dlls/msi/tests/automation.c, dlls/msxml3/tests/xmlelem.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c,
	  dlls/riched20/tests/editor.c:
	Assorted spelling fixes.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/psapi/tests/psapi_main.c:
	psapi/tests: Fix a signed/unsigned int mismatch.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix a signed/unsigned int mismatch.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Remove an inappropriate const qualifier.

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: There is no strncasecmp() on Windows. So use CompareString()
	instead.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix a Visual C++ double to float conversion warning.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix signed/unsigned and 32/64bit issues with the wiredatalen
	parameter.

2007-05-25  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Cope with non-nul-terminated header strings being passed to
	HttpSendRequestW.

	* dlls/wininet/http.c:
	wininet: Fix basic authentication by putting Basic directing into the scheme
	field, as the pszAuthValue can have an optional realm string appended.

2007-05-27  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation with Visual C++ 2005.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/schannel/tests/main.c:
	schannel: Use FIELD_OFFSET instead of offsetof.

2007-05-27  Francois Gouget <fgouget@free.fr>

	* dlls/schannel/lsamode.c, dlls/schannel/tests/main.c, include/ntsecpkg.h:
	schannel: Fix the name of the SetContextAttributes field of
	SECPKG_FUNCTION_TABLE.

	* dlls/schannel/tests/main.c, include/ntsecpkg.h:
	schannel: The PSDK defines no SECPKG_FUNCTION_TABLE_SIZE_* macro.

	* dlls/mshtml/tests/htmldoc.c, include/shlguid.h:
	include: The PSDK does not define the DEFINE_SHLGUID() macro anymore.

	* dlls/shlwapi/tests/clsid.c:
	shlwapi/tests: The PSDK does not define IID_IDelayedRelease anymore.

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: With recent PSDKs, CSIDL_MYDOCUMENTS is a synonym for
	CSIDL_PERSONAL. So define our own constant.

	* dlls/urlmon/tests/misc.c, include/winerror.h, include/winnt.h:
	In the PSDK HRESULT_FROM_WIN32() is now an inline function, and it is
	__HRESULT_FROM_WIN32() which is a macro.

	* dlls/ddraw/tests/dsurface.c, include/ddraw.h:
	ddraw: Fix the name of DDSPD_IUNKNOWNPOINTER.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: The PSDK does not define ListView_InsertItemA() so don't use it.

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: src[i] is a char so there is no point trying to stuff 0xcafedead
	into it.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix compilation with Visual C++ 2005.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: We need NTDDI_VERSION >= NTDDI_WINXPSP1 to get
	SEE_MASK_NOZONECHECKS with the PSDK.

	* dlls/user32/tests/msg.c:
	user32/tests: SWP_STATECHANGED is an undocumented flag so define it
	ourselves. Fixes compilation with the PSDK.

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Fix a signed/unsigned int mismatch.

	* dlls/msi/tests/automation.c:
	msi/tests: Fix a signed/unsigned int mismatch.

	* dlls/kernel32/tests/toolhelp.c:
	kernel32/tests: Fix a signed/unsigned int mismatch.

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Fix a signed/unsigned int mismatch.

2007-05-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xrender.c:
	winex11.drv: Exclude unused headers.

	* dlls/wininet/dialogs.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c:
	wininet: Exclude unused headers.

	* dlls/wineps.drv/bitblt.c, dlls/wineps.drv/builtin.c,
	  dlls/wineps.drv/download.c, dlls/wineps.drv/driver.c,
	  dlls/wineps.drv/graphics.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/ps.c, dlls/wineps.drv/text.c,
	  dlls/wineps.drv/type1.c, dlls/wineps.drv/type42.c:
	wineps.drv: Exclude unused headers.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/msxml3/msxml_private.h:
	msxml3: Fixed compilation without libxml.

2007-05-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Constify some variables.

	* dlls/mscms/handle.c, dlls/mscms/icc.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c:
	mscms: Constify some variables.

	* dlls/msdmo/dmoreg.c:
	msdmo: Constify some variables.

2007-05-25  Evan Stade <estade@evanstade.smo.corp.google.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec:
	gdiplus: Added stub implementation of gdiplus.dll.

2007-05-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Add support for loading and drawing metafiles.

	* dlls/gdi32/enhmetafile.c, dlls/gdi32/tests/metafile.c:
	gdi32: Perform consistency checks when loading an EMF, add a test case.

2007-05-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ddraw/surface.c:
	ddraw: Do not crash when Clipper is NULL.

	* dlls/localui/tests/localui.c:
	localui/tests: Handle different results from XP.

2007-05-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Fix stupid mistake.

2007-05-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mpr/pwcache.c, dlls/mpr/wnet.c:
	mpr: Constify some variables.

	* dlls/mciwave/mciwave.c:
	mciwave: Constify a variable.

2007-05-26  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Pass context to InitializeSecurityContext in second parameter.
	Otherwise, the call will now fail with SEC_E_INVALID_HANDLE.

	* dlls/setupapi/misc.c:
	setupapi: Add a FIXME in SetupCopyOEMInfW for when we should be copying a
	catalog file.

2007-05-26  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Make WS2_send trace more readble.

	* dlls/secur32/ntlm.c:
	secur32: Downgrade WARN to TRACE, fix another TRACE.

2007-05-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/lolvldrv.c, dlls/winmm/message16.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/winmm.c:
	winmm: Exclude unused headers.

	* dlls/ws2_32/async.c, dlls/ws2_32/protocol.c:
	ws2_32: Exclude unused headers.

2007-05-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Remove wrong test and parameter check.

2007-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/cabinet/fdi.c, dlls/comctl32/animate.c, dlls/comctl32/comboex.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/flatsb.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/nativefont.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/listview.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/mru.c, dlls/comctl32/tests/msg.c,
	  dlls/comctl32/tests/subclass.c, dlls/comctl32/tests/tab.c,
	  dlls/comctl32/tests/updown.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/comdlg32/colordlg.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/printdlg.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/palette.c, dlls/imm32/imm.c,
	  dlls/kernel32/tests/environ.c, dlls/mciavi32/wnd.c,
	  dlls/msacm32/format.c, dlls/mshtml/olewnd.c, dlls/mshtml/task.c,
	  dlls/msi/dialog.c, dlls/msvfw32/mciwnd.c, dlls/mswsock/mswsock.c,
	  dlls/ole32/compobj.c, dlls/ole32/ole2.c, dlls/oleacc/main.c,
	  dlls/oledlg/pastespl.c, dlls/riched20/editor.c, dlls/rpcrt4/cproxy.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/schannel/tests/main.c,
	  dlls/setupapi/queue.c, dlls/setupapi/virtcopy.c,
	  dlls/shdocvw/shdocvw_main.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/shell.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shlview.c,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/user32/combo.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/dde_server.c, dlls/user32/dialog.c, dlls/user32/edit.c,
	  dlls/user32/hook.c, dlls/user32/input.c, dlls/user32/listbox.c,
	  dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/message.c,
	  dlls/user32/nonclient.c, dlls/user32/scroll.c, dlls/user32/spy.c,
	  dlls/user32/static.c, dlls/user32/tests/dde.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/listbox.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/win.c,
	  dlls/user32/winproc.c, dlls/winedos/dosvm.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winmm/joystick.c,
	  dlls/winmm/tests/mci.c, dlls/winmm/winmm.c,
	  dlls/winspool.drv/tests/info.c, dlls/wintab32/manager.c,
	  dlls/ws2_32/async.c, dlls/ws2_32/socket.c, include/basetsd.h,
	  programs/explorer/desktop.c, programs/regedit/framewnd.c,
	  programs/wineconsole/user.c:
	wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.

2007-05-24  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Use XRenderCompositeText instead of XRenderCompositeString.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Merge some common code.

2007-05-25  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Simplify some socket tests by adding a function that generates a pair
	of connected sockets.

2007-05-23  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Add missing offset of pitch bender in midi input.

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Add midi realtime and midi common messages on midi input.

2007-05-24  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix NTLM's InitializeSecurityContextA/W to be flexible with the index
	of the token buffer in both the input and output buffer descriptions.

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Don't set the output buffer type in NTLM's IntializeSecurityContextA/W.

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Make the NTLM SSP cope with a NULL phCredential parameter when
	InitializeSecurityContext is called more than once.

	* dlls/secur32/wrapper.c:
	secur32: Fix the wrapper InitializeSecurityContextA/W functions to handle
	phContext and phNewContext parameters being optional for some SSPs.

2007-05-24  James Hawkins <truiken@gmail.com>

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/xmldoc.c:
	msxml3: Add tests for IXMLDocument.

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/xmlelem.c:
	msxml3: Add tests for IXMLElement and IXMLElementCollection.

	* dlls/msxml3/Makefile.in, dlls/msxml3/factory.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/xmldoc.c:
	msxml3: Add initial implementation of IXMLDocument.

	* dlls/msxml3/Makefile.in, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/xmlelem.c:
	msxml3: Add initial implementation of IXMLElement and IXMLElementCollection.

2007-05-23  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: SLTG references are only unique at the typeinfo level, so convert
	them to be unique to the typelib.

2007-05-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Statically initialize static lists and critical sections.

2007-05-24  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Allow types that reference themselves.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Shrink type_t structure.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/typegen.c:
	widl: Handle pointers in unions.
	Unify write_pointers with write_embedded_types, and handle pointers in
	unions.  Includes tests.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix test typo.

2007-05-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/tests/dsound.c:
	dsound: Block align SetCurrentPosition and add test for it.

2007-05-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Add the ability to deformat the component's source.

	* dlls/msi/format.c:
	msi: Remove a misleading ERR, as this fails if a file doesn't exist, which
	is common.

2007-05-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/view.c:
	mshtml: Added missing WINAPI in window proc.

	* dlls/mshtml/nsio.c:
	mshtml: Fixed AsyncOpen implementation for channels without associated document.

2007-05-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/tests/localui.c:
	localui/tests: Add tests for AddPortUI.

2007-05-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Create fake dll for iexplore.exe.

2007-05-24  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/secur32.c, dlls/secur32/tests/secur32.c:
	secur32: Fix the dwVersion field in the security function tables returned by
	InitSecurityInterfaceA/W.

2007-05-21  Nigel Liang <ncliang@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec, include/shlwapi.h:
	shlwapi: Stub implementation for SHSetTimerQueueTimer.

2007-05-24  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/utils.c:
	winebuild: Set the IMAGE_FILE_EXECUTABLE_IMAGE flag for all modules.

2007-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winedbg/be_x86_64.c:
	winedbg: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/user32/tests/win.c:
	user32/tests: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/listview.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/trackbar.c,
	  dlls/comctl32/tests/treeview.c, dlls/comctl32/tests/updown.c:
	comctl32/tests: Fix some problems revealed by compilation in 64-bit mode.

2007-05-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shell32_Nl.rc:
	shell32: Update Dutch resource.

2007-05-24  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msi/msipriv.h:
	msi: A signed 1-bit bitfield doesn't make much sense; use unsigned.

2007-05-23  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/lib.c:
	winedump: '$' isn't a valid character in an identifier regardless that gcc
	accepts it without warning.

2007-05-23  Rob Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Implement ConvertINetString.

	* dlls/hlink/link.c:
	hlink: Improve the loading of hlinks.

	* dlls/hlink/link.c, dlls/hlink/tests/hlink.c:
	hlink: Improve the saving of hlinks by documenting the unknown header values
	and saving out more data.
	Add tests for saving hlinks with different properties.

	* dlls/shlwapi/url.c:
	shlwapi: Add a slash to the URL if there is no path component.

	* dlls/urlmon/umon.c:
	urlmon: The persisted version of URL monikers should be size of URL
	including nul-terminating character (4-bytes), followed by the URL
	string including nul-terminating character.

	* dlls/urlmon/umon.c:
	urlmon: Fix a typo in URLMonikerImpl_Save.
	The data in This->URLName should be written out, not the pointer
	followed by garbage.

	* dlls/hlink/hlink_main.c:
	hlink: Fix HlinkCreateFromString to create a URL moniker if the input target
	is a URL.

2007-05-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/xcopy/Ko.rc, programs/xcopy/rsrc.rc:
	xcopy: New Korean resource.

2007-05-23  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c:
	dsound: Add missing interface ID.

2007-05-22  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/mpr/wnet.c:
	mpr: Small fixes to WNetGetConnection.
	Convert unc\server\share to \\server\share and be more tolerant to null
	pointers if only length is requested.

2007-05-22  Francois Gouget <fgouget@free.fr>

	* include/wine/port.h:
	port.h: Issue an error if port.h is included after the regular Wine headers.

2007-05-22  Thomas Spear <Speeddymon@gmail.com>

	* tools/wine.inf:
	wine.inf: Add uninstall key.

2007-05-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/quartz/filtergraph.c:
	quartz: ppinsplitter might be used uninitialized (Coverity).

	* dlls/ntdll/sec.c:
	ntdll: Initialize pointers to NULL (Coverity).

2007-05-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/file.c, dlls/kernel32/locale.c, dlls/kernel32/lzexpand.c,
	  dlls/kernel32/process.c, dlls/kernel32/pthread.c,
	  dlls/kernel32/resource.c, dlls/kernel32/sync.c,
	  dlls/kernel32/syslevel.c, dlls/kernel32/thread.c:
	kernel32: Fix compilation warnings in 64-bit mode.

	* dlls/ntdll/critsection.c, dlls/ntdll/heap.c, dlls/ntdll/loader.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/reg.c,
	  dlls/ntdll/rtl.c, dlls/ntdll/sec.c, dlls/ntdll/server.c,
	  dlls/ntdll/sync.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Fix compilation warnings in 64-bit mode.

	* tools/widl/typegen.c:
	widl: Fix compilation warnings in 64-bit mode.

	* dlls/ntdll/process.c, include/winternl.h:
	winternl.h: Make the fields of the PROCESS_BASIC_INFORMATION structure use
	same type width as a PSDK one.

	* include/basetsd.h:
	basetsd.h: Fix a typo in the parameter name.

2007-05-23  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winscard/Makefile.in, dlls/winscard/rsrc.rc,
	  dlls/winscard/winscard.c, dlls/winscard/winscard.spec:
	winscard: Small initial stub implementation.

2007-05-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/vartype.c:
	oleau32: Fix one entry overflow (Coverity).

2007-05-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_active.c:
	winedbg: Only check for break/watch points on first chance exceptions.

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c:
	winedbg: Show some info for msvcrt C++ exceptions.

	* dlls/ntdll/exception.c, dlls/ntdll/tests/exception.c:
	ntdll: Fix up instruction pointer in context inside raise_exception.

2007-05-22  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Remove spurious AddRef of returned object on retrieval of an interface
	from the global interface table.

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Allow the getting of different interfaces from the global interface
	table than that with what the object was registered with.

	* dlls/ole32/tests/marshal.c:
	ole32: Add more tests for global interface table functions.

	* dlls/ole32/git.c:
	ole32: Fix some races in the global interface table implementation.
	Fix a race between RevokeInterfaceFromGlobal and GetInterfaceFromGlobal
	by only using the entry inside the critical section.
	Fix a race between two GetInterfaceFromGlobal by cloning the stream,
	instead of using it and setting the current position back to zero.

	* dlls/ole32/ole32.spec:
	ole32: Add spec entry for CoRegisterSurrogateEx.

2007-05-22  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/msiserver.idl:
	msi: automation: Append copyright notice.

2007-05-21  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winhelp/hlpfile.c, programs/winhelp/macro.c,
	  programs/winhelp/macro.lex.l:
	winhelp: Fix some comparisons between signed and unsigned.

2007-05-22  Kolbjoern Fredheim <hightower@tregt.net>

	* dlls/wined3d/surface.c:
	wined3d: Implemented converting X1R5G5B5 format to R5G5B5A1 to emulate
	color-keying.

2007-05-21  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Remove a useless trace.
	Remove an incorrect comment.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: The identity functions can be used from apartments other than the one
	the proxy was unmarshaled into.
	In this case, don't use the cached This->remunk and don't cache the
	unmarshaled object in This->remunk.

	* dlls/ole32/marshal.c:
	ole32: Make proxy_manager_get_remunknown AddRef the return IRemUnknown object.
	Fix up the callers to release the returned IRemUnknown object.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: Handle MSHLFLAGS_TABLEWEAK and MSHLFLAGS_TABLESTRONG when marshaling
	a proxy.
	Add tests for this behaviour.

2007-05-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/xcopy/Pl.rc, programs/xcopy/rsrc.rc:
	xcopy: Add Polish translation.

2007-05-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/mixer.c,
	  dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa.drv: Exclude unused headers.

2007-05-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/serialui/tests/confdlg.c:
	serialui/tests: Remove unused string.

	* dlls/localui/tests/Makefile.in, dlls/localui/tests/localui.c:
	localui/tests: Add tests for ConfigurePortUI.

2007-05-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: When operating on a closed pipe, read() should return 0, not -1.
	Add tests to make sure read() and fread() work right on closed pipes.

	* dlls/msvcrt/tests/file.c, include/msvcrt/sys/stat.h:
	msvcrt: Remove the S_ISXXX() macros as they are not present in the Visual C++
	headers.

	* dlls/msvcrt/tests/printf.c:
	msvcrt/tests: When compiling with Visual C++ 2005, one must define
	_CRT_NON_CONFORMING_SWPRINTFS otherwise swprintf() takes an extra parameter.

2007-05-22  Alexandre Julliard <julliard@winehq.org>

	* server/timer.c:
	server: Don't allow a waitable timer to be set to expire in the past.

	* dlls/ntdll/file.c, dlls/wininet/internet.c:
	Fix a couple of overflowing heap allocations revealed by the previous change.

	* dlls/kernel32/tests/heap.c, dlls/ntdll/heap.c:
	ntdll: Avoid overflows in heap allocations. Based on a patch by Rob Shearman.

2007-05-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Hold the dll lock in IDirectDraw methods.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Hold the lock in creation functions.

2007-05-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Make the ddraw list lock a global dll lock.

2007-05-20  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Return error on NULL service name to GetServiceDisplayNameA/W.

2007-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/thread.c, include/winbase.h, include/winternl.h:
	kernel32: Fix the size of ThreadAffinityMask to match PSDK.

	* include/basetsd.h:
	basetsd.h: Add a bunch of PSDK compatible macros/inline functions for 64-bit
	safe type conversions.

2007-05-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/reg.c,
	  dlls/ntoskrnl.exe/ntoskrnl.exe.spec, include/winternl.h:
	ntdll: Implement RtlWriteRegistryValue and forward ntoskrnl to it.

2007-05-21  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Implement basic non-proxy authentication.

	* dlls/wininet/Makefile.in, dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Add support for SSPI authentication for HTTP.

2007-05-20  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMCreateColorRGB.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMCreateColorRGBA.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetAlpha.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetBlue.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetGreen.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetRed.

2007-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Synchronize debug output between X11DRV_KeyEvent and
	X11DRV_ToUnicodeEx.

	* include/wine/debug.h:
	include/wine/debug.h: Fix compilation warning in 64-bit mode.

	* tools/winedump/pdb.c:
	winedump: Fix compilation warnings in 64-bit mode.

	* tools/winebuild/res16.c:
	winebuild: Fix compilation warnings in 64-bit mode.

	* tools/widl/proxy.c, tools/widl/typegen.c:
	widl: Fix compilation warnings in 64-bit mode.

2007-05-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/property.c:
	uxtheme: Exclude unused headers.

	* dlls/version/info.c, dlls/version/resource.c, dlls/version/ver16.c:
	version: Exclude unused headers.

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: Exclude unused headers.

2007-05-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/text.c, dlls/user32/uitools.c, dlls/user32/user_main.c,
	  dlls/user32/winproc.c:
	user32: Exclude unused headers.

	* dlls/user32/mdi.c, dlls/user32/msgbox.c, dlls/user32/nonclient.c,
	  dlls/user32/property.c, dlls/user32/spy.c:
	user32: Exclude unused headers.

	* dlls/user32/dde_server.c, dlls/user32/defwnd.c, dlls/user32/exticon.c,
	  dlls/user32/focus.c, dlls/user32/lstr.c:
	user32: Exclude unused headers.

	* dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/cursoricon.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c:
	user32: Exclude unused headers.

2007-05-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Lay framework for unions with simple unions working.

	* tools/widl/typegen.c:
	widl: Replace erroneously removed current_func assignment.
	This accidentally came out and should not have.  Thanks to Eric Kohl
	for pointing this out to me.

2007-05-21  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/store.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix CertAddCertificateContextToStore when called with
	CERT_STORE_ADD_USE_EXISTING.

2007-05-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/comm.c:
	kernel32: Skip modem status tests if GetModemStatus failed.

2007-05-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/registry.c, dlls/msi/tests/automation.c:
	msi: Make MsiEnumProducts enumerate products, not features.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test Installer::Products before and after InstallProduct,
	check product is not/is installed.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Installer::InstallProduct, remove a registry key set
	by Wine but not native.

2007-05-20  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/menu.c:
	user32/tests: Fix compilation with gcc 2.95.

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c, include/d3d8types.h,
	  include/d3d9types.h:
	direct3d: Remove misspelled constants as they exist correctly spelled.

	* dlls/ntdll/thread.c:
	ntdll: Fix compilation on systems that don't support nameless unions.

2007-05-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/install.c:
	advpack/tests: Don't hardcode the system directory.

2007-05-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Fix hosting in main apartments.
	The recently introduced code had a bug where it passed the wrong
	values into apartment_findfromtype to find the main apartment. Since
	this is now the only way the function is used, fix this bug by
	changing apartment_findfromtype to apartment_findmain, which only
	finds the main apartment.

2007-05-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellstring.c, dlls/shell32/shlfsbind.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shv_bg_cmenu.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Exclude unused headers.

	* dlls/shell32/iconcache.c, dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shellreg.c:
	shell32: Exclude unused headers.

	* dlls/shell32/autocomplete.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/changenotify.c, dlls/shell32/debughlp.c,
	  dlls/shell32/folders.c:
	shell32: Exclude unused headers.

	* dlls/setupapi/fakedll.c, dlls/setupapi/query.c,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/virtcopy.c:
	setupapi: Exclude unused headers.

	* dlls/secur32/thunks.c, dlls/secur32/util.c:
	secur32: Exclude unused headers.

2007-05-18  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Fix return value to indicate error when NULL string is passed in.

2007-05-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/query.c:
	setupapi: Don't require a valid version section for INF_STYLE_OLDNT files.

2007-05-18  Michael Karcher <karcher@physik.fu-berlin.de>

	* dlls/user32/msg16.c:
	user32: Reduce the PeekMessage timeout to zero for USER16_AlertableWait.

2007-05-18  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement StringList::_NewEnum.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: automation: Generalize list implementation.
	Same structures and functions can be used for both StringList and RecordList.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for StringList::_NewEnum.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Fix Installer_ProductInfo ok message to correctly
	state function.

2007-05-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/element.c:
	msxml3: Implement IXMLDOMElement::getElementsByTagName.

2007-05-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add tests for XPath queries with namespaces.

	* dlls/msxml3/queryresult.c, dlls/msxml3/tests/domdoc.c:
	msxml3: For queries the get_item should change the current position.

2007-05-18  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Recurse through the impltype list so that dispinterfaces get the
	correct parents.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix CreateDispTypeInfo to store the correct number of functions.

2007-05-17  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: non-dual dispinterfaces should be marshaled via IDispatch.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Move the proxy thunk creation code to a separate function.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32: Test for interface that derives from IUnknown.

	* dlls/oleaut32/tests/tmarshal.idl, dlls/oleaut32/tests/typelib.c:
	oleaut32: Tests for more 'syntax 2' dispinterfaces.

2007-05-14  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: GetRefTypeOfImplType(0) on TKIND_DISPATCH typeinfos should always
	return an href to IDispatch.

2007-05-11  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix return value in the element not found case.

	* dlls/oleaut32/tests/tmarshal.idl, dlls/oleaut32/tests/typelib.c:
	oleaut32: Typelib inheritance tests.

2007-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c,
	  dlls/ntdll/version.c:
	ntdll: Setup the shared user data structure at 0x7ffe0000.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Implemented a couple of time-related APIs.

	* dlls/kernel32/instr.c, dlls/kernel32/kernel32.spec,
	  dlls/kernel32/kernel_private.h, dlls/kernel32/wowthunk.c,
	  dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl.exe: Reuse the kernel32 instruction emulation support for kernel-mode
	drivers.

2007-05-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/queryresult.c,
	  dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/domdoc.c:
	msxml3: Improve the XPath queries handling.

2007-05-17  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Change SUCCEEDED(hr) to more specific hr == S_OK.

	* dlls/msi/script.c:
	msi: script: Change all tabs to spaces to conform to msi formatting.

	* dlls/msi/automation.c:
	msi: automation: Change all tabs to spaces to conform to msi formatting.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Check for NULL source string before calling lstrcpyW.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Change non-const LPCWSTR parameters to LPWSTR.

2007-05-17  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix reading from an HGLOBALStreamImpl with an invalid HGLOBAL.
	Add tests that show the strange behaviour of IStream_Read returning S_OK
	instead of an error code.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/tests/marshal.c:
	ole32: Create host apartments to enable isolation of objects of incompatible
	threading models.
	There should be one host apartment per apartment. Existing apartments
	should not be re-used, except in the case of the main apartment.

2007-05-17  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Trying to blend an image without a mask causes problem, especially
	if the background is white.

2007-05-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/queue.c, include/setupapi.h:
	setupapi: Add a partial implementation for SetupScanFileQueue{A, W}.

	* dlls/setupapi/query.c:
	setupapi: Correctly handle an empty filename in SetupGetSourceFileLocationA.

	* dlls/setupapi/queue.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement pSetup{Get, Set}QueueFlags.

2007-05-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/codepage.c:
	kernel32: Add an overflow test for MultiByteToWideChar.

	* dlls/kernel32/tests/codepage.c:
	kernel32: Print last error value as unsigned, printing error in hex is useless.

2007-05-18  Rob Shearman <rob@codeweavers.com>

	* server/token.c:
	server: Add the logon SID to the default admin token's groups.

2007-05-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/txtsrv.c:
	riched20: Exclude unused headers.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Exclude unused header.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Exclude unused headers.

2007-05-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/oleaut32/ungif.c:
	oleaut32: Don't mix allocation routines.

2007-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Launch winedevice.exe when asked to start a kernel driver service.

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/winedevice/Makefile.in, programs/winedevice/device.c:
	winedevice: Add a service process that loads and runs a kernel driver.

2007-05-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shlexec.c:
	shell32: Avoid potential 1 byte overflow.

2007-05-11  Jeff Latimer <lats@yless4u.com.au>

	* .gitignore, include/Makefile.in, include/netfw.idl:
	hnetcfg: Add netfw.idl - Network Firewall interface.

	* .gitignore, include/Makefile.in, include/icftypes.idl:
	hnetcfg: Define icftypes.idl.

2007-05-17  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::ProductInfo.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return appropriate values for empty MsiProductInfo parameters.

	* dlls/msi/tests/msi.c:
	msi/tests: Add test for empty MsiGetProductInfo parameters not referencing
	default registry values.

2007-05-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/capturegraph.c, dlls/qcap/vfwcapture.c, dlls/qcap/yuv.c:
	qcap: Exclude unused headers.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/avisplit.c,
	  dlls/quartz/dsoundrender.c, dlls/quartz/mpegsplit.c:
	quartz: Exclude unused headers.

	* dlls/quartz/parser.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c:
	quartz: Exclude unused headers.

2007-05-16  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Minor cleanup.

2007-05-10  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Type references are global to the typelib.

2007-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented PsGetVersion and added stubs for a couple of other
	Ps functions.

2007-05-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Export a Wine-internal function to run the device request
	handling loop.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Implemented a number of memory allocation functions.

	* dlls/kernel32/module.c, dlls/kernel32/tests/loader.c:
	kernel32: Check for already loaded module also for LOAD_LIBRARY_AS_DATAFILE.

	* dlls/kernel32/module.c:
	kernel32: Support incrementing the module refcount in GetModuleHandleEx.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented LdrAddRefDll.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Reimplement LdrGetDllHandle to use the same search algorithm as
	LdrLoadDll.

2007-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Remove duplicated code.

2007-05-14  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/mdi.c:
	user32: mdi: Fix switch with wParam in WM_SYSCOMMAND processing.

2007-05-15  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::ProductInfo.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Remove unnecessary if (SUCCEEDED(hr)) statements.

	* dlls/msi/automation.c:
	msi: automation: Condense a few loops.

2007-05-14  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Add access flags to service handle data.

2007-05-14  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add hardware cursor support.

2007-05-15  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Write some structures to the type format string on the fly.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Improve handling of offsets in the type format string.

2007-05-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/opengl32/wgl.c:
	opengl32: Exclude unused header.

	* dlls/oleaut32/dispatch.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib16.c, dlls/oleaut32/typelib2.c:
	oleaut32: Exclude unused headers.

	* dlls/oledlg/insobjdlg.c:
	oledlg: Exclude unused header.

	* dlls/ole32/classmoniker.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ole16.c, dlls/ole32/ole2.c, dlls/ole32/ole2_16.c,
	  dlls/ole32/ole2impl.c, dlls/ole32/ole2nls.c, dlls/ole32/ole32_main.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/stg_stream.c, dlls/ole32/storage.c:
	ole32: Exclude unused headers.

2007-05-15  Erez Volk <erez.volk@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Added IDT Timezone (Israel daylight savings time).

2007-05-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: TB_SETIMAGELIST should try to preserve button width.

2007-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add a test for LoadLibraryEx(LOAD_LIBRARY_AS_DATAFILE).

2007-05-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Added IofCompleteRequest.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Export KeServiceDescriptorTable and KeTickCount.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented IoCreateSymbolicLink.

	* dlls/ntoskrnl.exe/Makefile.in, dlls/ntoskrnl.exe/ntoskrnl.c,
	  dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented IoCreateDevice and IoDeleteDevice.

	* include/ddk/wdm.h:
	include: Add a few definitions in wdm.h.

2007-05-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Late init hash_table.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/storage.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Speed up vector iteration by directly using for().

	* dlls/dbghelp/storage.c:
	dbghelp: Speed up pool_alloc. Patch by Eric Pouech.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Speed up vector_add by avoiding pool_realloc calls. Remove no longer
	needed pool_realloc.

2007-05-15  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/ddraw/ddraw.c,
	  dlls/ddraw/tests/dsurface.c, dlls/msi/tests/automation.c,
	  dlls/wined3d/device.c, programs/regedit/regedit.c:
	Assorted spelling fixes.

	* dlls/mshtml/nsio.c:
	mshtml: Fix '\n' typo.

2007-05-15  Francois Gouget <fgouget@codeweavers.com>

	* include/Makefile.in, include/winscard.h, include/winsmcrd.h:
	winscard: Add headers for the upcoming implementation of the winscard dll.

	* include/Makefile.in, include/scarderr.h, include/winerror.h:
	winscard: Adding the missing SCARD_E_XXX and SCARD_W_XXX error codes.
	Adding scarderr.h with the same definitions.

2007-05-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Prevent race between destroying the hook window and unloading the dll.

2007-05-14  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/tests/register.c, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Implement WintrustGetRegPolicyFlags and WintrustSetRegPolicyFlags.

	* dlls/crypt32/tests/sip.c:
	crypt32: Remove last error checks on success.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Use public functions to get store access state.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Implement CertGetStoreProperty and CertSetStoreProperty.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Don't set ret to TRUE when it already is.
	Set it to FALSE when it needs to be.

2007-05-14  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Simplify counting products/related products.

	* dlls/msi/automation.c:
	msi: automation: Installer::Products, verify HeapAlloc return value.

	* dlls/msi/registry.c, dlls/msi/tests/automation.c:
	msi: Make MsiEnumRelatedProducts enumerate registry value names, not subkeys.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::RelatedProducts.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::RelatedProducts.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::InstallProduct.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::InstallProduct.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Record::IntegerData.

2007-05-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Improve some exec command stubs.

2007-05-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c, dlls/user32/tests/menu.c:
	user32: Add a test for the menu resource loader, make it pass under Wine.

2007-05-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/resource.rc:
	user32: Add a test for CheckMenuRadioItem and make it pass under Wine.

2007-05-15  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix crash in RSAENH_CPVerifySignature if pbSignature is set to NULL
	or if dwSigLen is lesser than the expected value.

2007-05-14  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: IDirectSound_Compact should return DS_OK on priolevel >= DSSCL_PRIORITY.

2007-05-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/access.c, dlls/netapi32/wksta.c:
	netapi32: Exclude unused headers.

	* dlls/ntdll/debugtools.c, dlls/ntdll/loader.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/sec.c, dlls/ntdll/virtual.c:
	ntdll: Exclude unused headers.

	* dlls/msxml3/main.c, dlls/msxml3/schema.c:
	msxml3: Exclude unused headers.

2007-05-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/except.c, dlls/msvcrt/file.c, dlls/msvcrt/scanf.c:
	msvcrt: Exclude unused headers.

	* dlls/msvfw32/mciwnd.c:
	msvfw32: Exclude unused header.

	* dlls/msvcrt20/msvcrt20.c:
	msvcrt20: Exclude unused header.

2007-05-14  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/hal/Makefile.in, dlls/hal/hal.spec:
	hal: Added an initial stub.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntoskrnl.exe/Makefile.in, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Initial stub version with forwards to existing functions.

2007-05-13  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_SetControlDetails.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetControlDetails.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetLineControls.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetLineInfo.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Implement MIX_GetDevCaps.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Implement MIX_Open and MIX_GetNumDevs.

	* dlls/winecoreaudio.drv/Makefile.in, dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h, dlls/winecoreaudio.drv/mixer.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial mixer support on Mac OS X.
	Find all lines and initialize controls.

2007-05-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Check for correct return value.

2007-05-11  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement View::Modify.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for View::Modify.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Record::IntegerData.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Correct expected Record::StringData PROPERTYPUT return
	variant type.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Record::FieldCount.

	* dlls/msi/automation.c, dlls/msi/tests/automation.c:
	msi: automation: Return DISP_E_MEMBERNOTFOUND if flags are incorrect.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test invoking methods as properties & vice versa.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::CreateRecord.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test for Installer::CreateRecord error.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Session::EvaluateCondition.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Session::EvaluateCondition.

2007-05-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/status.c:
	comctl32: status: Send a NMMOUSE in mouse notifications, not a NMHDR.

2007-05-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Check for failing to create surfaces.

2007-05-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c:
	mshtml: Don't call start_binding if we use necko to load the page.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Wrap nsIExternalProtocolHandler.

2007-05-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c,
	  dlls/dsound/tests/dsound8.c:
	dsound: Primary buffer isn't an IDirectSoundBuffer8.

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/waveout.c:
	winealsa: Remove dead code.

2007-05-14  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Stub implementation of CertGetCertificateChain.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/oid.c:
	crypt32: Stub implementation of CryptFindLocalizedName.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix crash in CertGetCertificateContextProperty when querying length
	of a hash property.

2007-05-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Don't lookup the address for the DllGetClassObject function for ole32.dll
	in the apartment loaded dll list.
	Call the function directly for a small performance boost.

	* dlls/ole32/compobj.c:
	ole32: Fix CoUninitialize to only free libraries that return S_OK from
	DllCanUnloadNow.

2007-05-13  Frank Richter <frank.richter@gmail.com>

	* programs/wordpad/De.rc:
	wordpad: Update German translation.

	* programs/cmd/De.rc:
	cmd: Updated German translation.

	* dlls/shell32/shell32_De.rc:
	shell32: Update German resources.

	* dlls/credui/credui.rc, dlls/credui/credui_De.rc:
	credui: Add German translation.

	* dlls/shdoclc/De.rc:
	shdoclc: Update German translation.

2007-05-13  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* include/winsvc.h:
	advapi32: Add service state request definitions.

2007-05-12  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winecfg/Es.rc:
	winecfg: Updated Spanish translation.

2007-05-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/advapi.c:
	advapi32: Fix a typo.

2007-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-05-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Fixed swapchain context NULL ptr checks.

2007-05-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle pointers fields that point to structures.

	* tools/widl/typegen.c:
	widl: Remove an unnecessary assignment in write_pointers.

2007-05-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMDocument2::setProperty("SelectionLanguage", ...).

2007-05-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/localui/localui.rc, dlls/localui/ui_Pl.rc:
	localui: Add Polish translation.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.37.

----------------------------------------------------------------
2007-05-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/d3drm/tests/Makefile.in, dlls/d3drm/tests/vector.c:
	d3drm/tests: d3drm is removed from Windows Vista.

2007-05-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IPersistStreamInit::Load test.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c:
	mshtml: Added IPersistStreamInit::Load implementation.

	* dlls/mshtml/persist.c:
	mshtml: Split IPersistMoniker::Load.

	* dlls/mshtml/navigate.c:
	mshtml: Move AddRequest call to the separated function.

	* dlls/mshtml/navigate.c:
	mshtml: Don't crash in OnStopBinding if This->binding is null.

	* dlls/mshtml/navigate.c:
	mshtml: Split code from OnDataAvailable.

2007-05-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: WINED3DSIO_POW should use the absolute value of the first source
	register.

2007-05-10  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::RegistryValue.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* server/console.c, server/console.h, server/debugger.c, server/process.c,
	  server/process.h:
	server: Stop exporting the console_input structure. Get rid of console.h.

2007-05-10  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Add tests for console codepages.

	* dlls/kernel32/console.c, include/wine/server_protocol.h,
	  server/console.c, server/console.h, server/protocol.def,
	  server/trace.c:
	server: Move console codepages to the server.

2007-05-09  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Remove var_t's ptr_level field and start write_pointers.

2007-05-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/systray.c, dlls/shell32/tests/Makefile.in,
	  dlls/shell32/tests/systray.c, programs/explorer/systray.c:
	shell32: Handle invalid cbSize in Shell_NotifyIcon[AW].

2007-03-28  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/tests/install.c:
	msi/tests: Increase buffer size a bit.
	Spotted by Coverity.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Prevent wrong bumpenvmap warnings.

	* dlls/wined3d/surface.c:
	wined3d: Only addref clippers if one exists.

2007-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Avoid fallout of failing tests.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement DDBLT_DEPTHFILL on the active depth stencil target.

2007-05-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/surface.c, dlls/d3d9/tests/surface.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c,
	  dlls/wined3d/resource.c, include/d3d8.h:
	wined3d: Destroying the resource frees all private data.
	Also adds a test for ddraw, d3d8 and d3d9.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: GetSurfaceDesc returns the surface memory while the surface is locked.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	ddraw: Use point filter for blit operations.
	D3DTEXF_NONE is a special value for mipmapping which disabled
	mipmapping, but it is not a valid mag / min filter parameter.
	D3DTEXF_POINT is what we want

2007-05-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Remove all non-d3d7 capability flags.

2007-05-10  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/rpcss/np_server.c:
	rpcss: Use correct prototype for thread function.

	* dlls/ntdll/tests/atom.c:
	ntdll: Use correct prototype for thread function.

2007-05-10  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/surface.c:
	wined3d: Add a missing '\n' to a trace.

	* dlls/crypt32/store.c:
	crypt32: Add missing '\n' in FIXME() call.

	* dlls/msi/tests/automation.c:
	msi/tests: Add missing '\n' to ok() calls.

2007-05-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Only check the volume label for every media after the first disk.

2007-05-10  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add support for mandatory parameters to RSAENH_CPGetProvParam.

2007-05-10  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c:
	setupapi: SetupOpenInfFile returns INVALID_HANDLE_VALUE on failure, not NULL.
	Fix SetupQueryInfOriginalFileInformation to check for the former rather than
	the latter.

2007-05-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCanonicalizeW's handling of filesystem paths.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c:
	kernel32: Fix typo in CreateActCtxA.

2007-05-09  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Add tests for console screen buffer.

	* server/console.c:
	server: Fix access check in screen buffer handling.

2007-05-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: Deformat the key path before opening the key.

2007-05-09  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/write_msft.c:
	widl: Remove dead code in write_msft.c.

	* tools/widl/parser.y:
	widl: Simplify make_safearray.

	* tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/write_msft.c:
	widl: Remove redundant get_var_vt function.

	* tools/widl/typegen.c:
	widl: Add string_of_type function, prettify code.

2007-05-10  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Correct the implementation of CertCreateSelfSignCertificate.

2007-05-09  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Trace the VBO and stream number as well in
	drawPrimitiveTraceDataLocations.

	* dlls/wined3d/state.c:
	wined3d: Load texture coordinates even if no texture is bound to that stage
	at this time.

	* dlls/wined3d/state.c:
	wined3d: Split texture coordinate loading from loadVertexData().

	* dlls/wined3d/state.c:
	wined3d: Calling glDisableClientState() from loadVertexData() is redundant.
	unloadVertexData() will already have done this if necessary.

	* dlls/wined3d/state.c:
	wined3d: Unload vertex weight data in case of EXT_VERTEX_WEIGHTING as well.

2007-05-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mlang/mlang.c:
	mlang: Exclude unused headers.

	* dlls/msacm32/driver.c, dlls/msacm32/msacm32_main.c:
	msacm32: Exclude unused headers.

	* dlls/mscms/icc.c:
	mscms: Exclude unused headers.

2007-05-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Exclude unused header.

	* dlls/mciwave/mciwave.c:
	mciwave: Exclude unused header.

	* dlls/localspl/localmon.c, dlls/localspl/localspl_main.c:
	localspl: Exclude unused headers.

	* dlls/mcicda/mcicda.c:
	mcicda: Exclude unused headers.

2007-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/psapi/psapi.spec:
	psapi: Don't print output parameters as strings.

2007-05-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Move the logic in StgCreateDocfile for "if no share mode given then
	DENY_NONE is the default" to before the validateSTGM check.
	Add a test that shows this behaviour is correct.
	Remove a test on the access mode that is redundant because it is already
	done in validateSTGM.

2007-05-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLBodyElement::CreateTextRange implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: CGID_Undocumented is CGID_DocHostCmdPriv.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::get_htmlText implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/selection.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Reimplement IHTMTxtRange on top of nsIDOMRange.

2007-05-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Properly cleanup after each test.

2007-05-09  Thomas Spear <Speeddymon@gmail.com>

	* programs/regedit/regedit.c:
	regedit: Spelling and grammar fixes.

2007-05-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add more tests for Installer::RegistryValue.
	Add test for a new error condition and tests for returning data from values
	of different registry value types.

2007-05-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Manage private data in a wine linked list.

	* dlls/ddraw/surface.c:
	ddraw: Fix stupid bug when setting surface client memory.

	* dlls/ddraw/ddraw.c:
	ddraw: Always set fullscreen mode in wined3d.
	DDSCL_NORMAL is not set at initialization. Instead of making this a
	& DDSCL_NORMAL || == 0 check just set fullscreen mode always. WineD3D
	will catch NOP changes anyway.

	* dlls/wined3d/context.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Support bump environment mapping using GL_NV_texture_shader.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Unload vertex weight data in unloadVertexData.

2007-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/d3d.c:
	ddraw: Some caps fixes.
	Cards at DirectX7 times did not support non power of 2 textures, and
	some games check the capatiblity flags incorrectly. Rollcage expects the
	D3DPTEXTURECAPS_POW2 (limitation) flag set and fails with the reference
	rasterizer which support NP2 textures and doesn't have the cap set.

2007-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/actctx.c:
	kernel32: Set the new definition for an activation context, and implement
	adding/releasing references to it.

	* dlls/kernel32/actctx.c:
	kernel32: Implemented CreateActCtxA on top of CreateActCtxW.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Some more ProcessVertices fixes.
	Remove vbos from the input strided data from the fixed function
	attributes explicitly and avoid writing beyond the end of a temporary
	buffer when cloning a windows bug.

2007-05-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/surface.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/tests/dsurface.c:
	ddraw: More tests and fixes on surface attachments.

	* dlls/ddraw/device.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap.

2007-05-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Report only D16, D24S8 and D24X8 depth stencil formats as supported.

2007-05-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Check the volume name when changing media.

	* programs/msiexec/msiexec.c:
	msiexec: /quiet is the same options as /qn.

2007-05-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Implement CertEnumSystemStore.

2007-05-08  Thomas Spear <Speeddymon@gmail.com>

	* programs/uninstaller/main.c:
	uninstaller: Fix trace message.

2007-05-08  Marcus Meissner <marcus@jet.franken.de>

	* server/named_pipe.c:
	server: set_server_state needs to be called with non-NULL server.
	Spotted by Coverity.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Fix set process request, a pipe instance can only handle one request.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/device.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for retrieving results of queued ioctls once they are done.

	* include/wine/server_protocol.h, server/device.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Add request to retrieve the next pending ioctl call for a device manager.

	* server/async.c, server/device.c, server/file.h:
	server: Add support for queuing ioctl calls to a device.

	* include/wine/server_protocol.h, server/Makefile.in, server/device.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for generic device objects managed from the client side.

2007-05-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: SetupQueryInfOriginalFileInformationA is not available on win98.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Support setting the CPU context on the current thread without segment
	registers.

2007-04-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Unset the StreamIsUP flag in ProcessVertices.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix front buffer coords for gdi surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Handle DDPCAPS_ALPHA.

	* dlls/ddraw/device.c:
	ddraw: Forward the mag filter correctly to wined3d.
	Fixes the erros when using anisotropic mag filtering in the d3d7
	filter demo.

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c:
	wined3d: Make the blit -> flip work for windowed rendering.

2007-04-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/main.c, dlls/wined3d/Makefile.in, dlls/wined3d/clipper.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d.spec, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d: Move clippers from DDraw to wined3d.

2007-05-08  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c:
	setupapi: Improve the stub for SetupQueryInfOriginalFileInformation
	to return information for OriginalCatalogName based on information in
	the installed inf file.

	* dlls/setupapi/misc.c:
	setupapi: Don't copy an OEM inf file if the exact same OEM inf file already
	exists.

	* dlls/ole32/ole2.c:
	ole32: Don't release the drop target on process uninitialisation if not revoked,
	just release the memory.

2007-05-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Display an error on create_session failure.

	* dlls/msi/automation.c:
	msi: automation: Move VariantClears out of specific case statements when
	possible.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed typo in libicu check.

2007-05-07  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Implement GetServiceDisplayNameW.

	* dlls/advapi32/service.c:
	advapi32: Implement GetServiceDisplayNameA.

	* include/winsvc.h:
	advapi32: Add prototypes for EnumServicesStatusExA/W.

	* dlls/advapi32/service.c:
	advapi32: Store process ID into status structure on startup.

2007-05-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/dialog.c, dlls/user32/tests/msg.c,
	  dlls/user32/tests/resource.rc:
	user32: Windows doesn't send the initialization messages to a dialog if a
	passed in dlgProc is NULL.

2007-05-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix typos in messages.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makedll.rules.in, dlls/kernel32/Makefile.in:
	kernel32: Set the dll file name with the correct case to make EXECryptor happy.

2007-05-08  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/compobj.c:
	ole32: Add a test for the retrieved local class object in another thread being
	a proxy.

	* dlls/ole32/errorinfo.c:
	ole32: Add documentation for error info functions.

	* dlls/ole32/compobj.c:
	ole32: Add documentation about registered class objects only being visible in
	the apartment in which they were registered.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Fix CoRevokeClassObject to return RPC_E_WRONG_THREAD if it was called
	from a different apartment than the one that called CoRegisterClassObject.

2007-05-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Split CoRevokeClassObject into a separate function,
	COM_RevokeRegisteredClassObject, which acts on a RegisteredClass object.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: COM_GetRegisteredClassObject should only retrieve objects that were
	registered in the current apartment.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for in-process registered class objects not being visible
	from different apartments.

	* dlls/ole32/compobj.c:
	ole32: Revoke registered class objects when the apartment they were registered
	in is destroyed, not when the last CoUninitialize is called.

	* dlls/ole32/tests/compobj.c:
	ole32: Add test for registered class becoming invalid when apartment is
	destroyed.

	* dlls/ole32/compobj.c:
	ole32: CoGetClassObject shouldn't return REGDB_E_KEYMISSING, so convert it
	to REGDB_E_CLASSNOTREG.

2007-05-07  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Display errors on create_automation_object failure.

	* dlls/msi/automation.c:
	msi: automation: Clear all VT_BSTR variants returned by DispGetParam.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Simplify ok_exception.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::RegistryValue.

	* dlls/msi/automation.c:
	msi: automation: Output FIXMEs for unknown member names.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::Products and Installer::ProductState.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::Products and
	Installer::ProductState.

	* dlls/msi/automation.c:
	msi: automation: Generalize interface-specific data storage in AutomationObject.
	This makes a more general framework for interface/object-specific data storage.

	* dlls/msi/msiserver.idl, dlls/msi/tests/automation.c:
	msi: automation: Use proper parameter names.
	This fixes the parameter names to match native as they are required by
	some scripting languages and by the exceptions that are thrown.

2007-05-07  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Use the correct registry key in RSAENH_CPAcquireContext.

2007-05-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.rc, dlls/localui/ui_De.rc:
	localui: Add German resources.

2007-05-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi32/dib.c:
	gdi32: Add check for null pointer in SetDIBitsToDevice.

2007-04-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Primary surfaces always have screen size.

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c:
	ddraw: Adjust the d3d viewport when changing the back buffer.
	WineD3D sets up the viewport according to the front buffer, so this
	needs to be changed to the values of the render target passed when the
	d3d7 device is created and this device turns out not to be the known
	front or back buffer.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Full surface DXTn copy.
	Height * Pitch is not a valid way to calculate the surface size for
	DXTn surfaces. Instead of messing with format specific formulas just
	use the size stored in the destination surface.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix reported caps on compressed surfaces.
	Compressed surfaces in ddraw do not have a pitch, instead the full
	surface size is reported. Also adds tests for the extact behavior and
	surface flags set.

2007-05-07  Damjan Jovanovic <damjan.jov@gmail.com>

	* tools/wine.inf:
	wine.inf: Move explorer to the windows directory.

2007-05-07  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Added rpath support for Solaris.

2007-05-07  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/browseui/browseui.h, dlls/browseui/browseui_main.c:
	browseui: Fixed ClassFactory_LockServer implementation.

2007-05-07  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix read_key_container bug that prevents CryptAcquireContext from
	correctly loading the keys.

	* include/wincrypt.h:
	wincrypt.h: Add missing definitions.

2007-05-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/system.c, dlls/kernel32/thread.c,
	  dlls/kernel32/toolhelp16.c, dlls/kernel32/virtual.c,
	  dlls/kernel32/volume.c, dlls/kernel32/windebug.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/oldconfig.c, dlls/kernel32/process.c,
	  dlls/kernel32/resource.c, dlls/kernel32/selector.c,
	  dlls/kernel32/stress.c, dlls/kernel32/string.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/except.c, dlls/kernel32/file.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c,
	  dlls/kernel32/ne_module.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/actctx.c, dlls/kernel32/atom.c, dlls/kernel32/atom16.c,
	  dlls/kernel32/computername.c, dlls/kernel32/cpu.c,
	  dlls/kernel32/error16.c:
	kernel32: Exclude unused headers.

	* dlls/itss/itss.c, dlls/itss/moniker.c, dlls/itss/storage.c:
	itss: Exclude unused headers.

	* dlls/infosoft/wordbreaker.c:
	infosoft: Exclude unused header.

	* dlls/imagehlp/access.c, dlls/imagehlp/imagehlp_main.c,
	  dlls/imagehlp/integrity.c, dlls/imagehlp/modify.c:
	imagehlp: Exclude unused headers.

	* dlls/inseng/inseng_main.c:
	inseng: Exclude unused header.

2007-05-05  Ben Taylor <sol11x86@comcast.net>

	* tools/winegcc/winegcc.c:
	winegcc: Allow -R and -z linker options.

2007-05-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/kernel_main.c:
	kernel32: Disable FT_Thunk entry point when Windows version is NT.

	* configure, configure.ac:
	configure: Only check for the static versions of libicu.
	Get rid of hardcoded path names to avoid trouble on 64-bit platforms.
	Based on a patch by Robert Millan.

2007-05-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Use criticalsection for determining wether timer is synchronously
	killable.

2007-05-06  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/browseui/browseui.h, dlls/browseui/browseui_main.c:
	browseui: Implement ClassFactory_LockServer in browseui dll.

2007-05-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/events.c:
	msi: Add handling for the ReinstallMode control event.

	* dlls/msi/action.c:
	msi: Add stub handlers for the remaing standard actions that reference tables.

	* dlls/msi/package.c:
	msi: Remove debugging printf statements.

	* dlls/msi/dialog.c:
	msi: Remove incorrect ERR as messages can be sent before the control is created.

	* dlls/msi/dialog.c:
	msi: Set the text limit of the edit control if the limit is given.

	* dlls/msi/dialog.c:
	msi: Add the ES_AUTOHSCROLL style to the edit control.

	* dlls/msi/dialog.c:
	msi: Only allow valid styles in msi_dialog_get_style.

2007-05-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Remove auto detection of Mozilla and Mozilla ActiveX control.

2007-05-05  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-05-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	comctl32: treeview: Treeviews shouldn't be sending NM_TOOLTIPSCREATED (with
	testcase).

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: Make the focus test pass under Windows XP.

2007-05-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c:
	localui: Prefer builtin version.

	* dlls/localui/localui.c, dlls/localui/localui.h, dlls/localui/ui_En.rc:
	localui: Implement ConfigurePortUI for LPT.

2007-05-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/riched20/tests/editor.c:
	riched32: Avoid implicit time().

2007-05-04  Kevin Koltzau <kevin@plop.org>

	* include/winbase.h:
	winbase.h: Define FILE_FLAG_OPEN_REPARSE_POINT.

2007-05-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Session::Installer.

	* dlls/msi/automation.c, dlls/msi/msipriv.h, dlls/msi/script.c:
	msi: automation: Store parent Installer object in Session.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Session::Installer conformance test.

	* dlls/msi/script.c:
	msi: script: Discriminate properly between JScript and VBScript.

2007-05-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Add FILE_FLAG_BACKUP_SEMANTICS to the flags passed to CreateFileW
	to be able to get security information for directories as well as for files.

	* dlls/gdi32/freetype.c:
	gdi32: AddFontResource should return a number of added font faces.

	* dlls/gdi32/freetype.c:
	gdi32: Handle errors in WineEngAddFontResourceEx.

2007-05-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Handle the ps_3_0 vPos field.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some redundant fields from IWineD3DBaseTextureImpl.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a surface locking test.

	* dlls/d3d8/tests/surface.c:
	d3d8: Add a surface locking test.

	* dlls/d3d9/tests/surface.c:
	d3d9: Add a surface locking test.

	* dlls/d3d8/surface.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	d3d: Fix the surface locking rectangle validation.

	* dlls/wined3d/device.c:
	wined3d: Improve a few VBO traces.

	* dlls/wined3d/device.c:
	wined3d: Bind GL_FRAMEBUFFER_EXT rather than GL_DRAW_FRAMEBUFFER_EXT in
	color_fill_fbo.

	* dlls/wined3d/device.c:
	wined3d: Make the IWineD3DDeviceImpl_ColorFill TRACE a bit more useful.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Flip the coordinate system rather than the coordinates itself for
	onscreen surfaces in stretch_rect_fbo.

2007-05-04  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Implement IUnknown_CPContainerInvokeParam.

2007-05-03  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Integrate test_createrecord_and_version properly.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Convert method names to Unicode on the fly to simplify
	adding new tests.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Free memory after string conversion.

2007-05-03  Bill Medland <billmedland@shaw.ca>

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Some boundary tests on VarBstrFromDate.

	* dlls/kernel32/tests/locale.c, dlls/kernel32/tests/time.c:
	kernel32/tests: Boundary test cases for SystemTimeToFileTime and GetDateFormat.

2007-05-03  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Add missing definitions.

2007-05-03  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/misc.c:
	setupapi: Partially implement SetupQueryInfOriginalFileInformationW.
	Implement SetupQueryInfOriginalFileInformationA on top of
	SetupQueryInfOriginalFileInformationW.

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Add stubs for SetupQueryInfOriginalFileInformationA/W.

	* dlls/setupapi/install.c:
	setupapi: The inf file containing the SourceDisksFiles and SourceDisksNames
	sections is the same as hinf if there is no layout file specified.
	So pass the correct inf handle to SetupQueueDefaultCopyW and
	SetupQueueCopySectionW.

2007-05-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/directory.c:
	ntdll: Call NtQueryAttributesFile in RtlDoesFileExists_U.

2007-05-03  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/oledlg/oledlg_Es.rc, dlls/shdoclc/Es.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/winspool.drv/Es.rc:
	Some Spanish translation updates.

2007-05-03  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/file.c:
	ntdll: Correct a copy/paste mistake in NtWriteFile.

2007-05-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/dplay/Makefile.in, dlls/dplay/dplay_main.c, dlls/lz32/Makefile.in,
	  dlls/lz32/lzexpand_main.c, dlls/msdmo/Makefile.in,
	  dlls/msdmo/msdmo_main.c, dlls/msvcrt40/Makefile.in,
	  dlls/msvcrt40/msvcrt40.c, dlls/shfolder/Makefile.in,
	  dlls/shfolder/shfolder_main.c:
	Get rid of some empty source files, our makefiles no longer require them.

	* dlls/comctl32/tests/trackbar.c, dlls/cryptnet/cryptnet_main.c,
	  dlls/itss/chm_lib.c, dlls/itss/chm_lib.h, dlls/itss/lzx.c,
	  dlls/itss/lzx.h, dlls/mshtml/hlink.c, dlls/msi/update.c,
	  dlls/rsaenh/des.c, dlls/rsaenh/md2.c, dlls/rsaenh/mpi.c,
	  dlls/rsaenh/rc2.c, dlls/rsaenh/rc4.c, dlls/rsaenh/rsa.c,
	  dlls/rsaenh/rsaenh.c, dlls/rsaenh/tomcrypt.h,
	  dlls/shell32/cpanelfolder.c, include/mapitags.h,
	  programs/oleview/details.c, programs/oleview/pane.c,
	  programs/oleview/resource.h, programs/oleview/tree.c,
	  tools/winedump/pdb.c:
	Fix minor differences in the formatting of the license notices.

2007-05-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Allocate the wait event for FSCTL_PIPE_WAIT on the server side.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Allocate the wait event for FSCTL_PIPE_LISTEN on the server side.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/fd.c,
	  server/file.h, server/named_pipe.c, server/protocol.def,
	  server/trace.c:
	server: Infrastructure to return a wait handle for blocking ioctls.

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c:
	server: Store valid file options in pseudo file descriptors.

2007-05-02  Tim Schwartz <tim@sanityinternet.com>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/net/Makefile.in, programs/net/net.c:
	net.exe: Initial stub.

2007-05-02  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Recognize and use topic specification in url or in data.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Do not try to dereference NULL pointer if CreateHelpViewer failed.

	* dlls/hhctrl.ocx/hhctrl.c, include/htmlhelp.h:
	hhctrl.ocx: Update HtmlHelp and its commands definitions, and partially
	implement data A->W translation.

2007-05-02  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/advapi32/crypt.c:
	advapi32: Check for error in CryptEnumProviderTypesA and CryptEnumProvidersA.

2007-05-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/text.c:
	user32: Fix TabbedTextOut.
	The TEXT_TabbedTextOut didn't set correctly the text starting point
	(x0) for left-aligned tabs and was ignoring the last tab. I've also
	changed GetTextMetricsA to W as this should be slightly faster.

2007-05-03  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c:
	widl: Don't declare a global binding handle when using an implicit handle.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement vertex blending using GL_ARB_vertex_blend.

2007-04-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c:
	ddraw: Forward all 4 world matrices to wined3d.

	* dlls/ddraw/utils.c, dlls/wined3d/utils.c:
	d3d: Calculate the size of WINED3DFVF_XYZBx FVFs.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* include/wine/wined3d_gl.h:
	wined3d: Add missing prototypes for GL_ARB_vertex_blend.

2007-05-02  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/ifs.c:
	ole32: Cope with a realloc returning a different pointer.

2007-05-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ifsmgr.vxd/ifsmgr.c:
	ifsmgr.vxd: Constify some variables.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Exclude unused headers.

	* dlls/dpnet/address.c, dlls/dpnet/client.c, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/peer.c, dlls/dpnet/server.c:
	dpnet: Exclude unused headers.

	* dlls/dnsapi/record.c:
	dnsapi: Exclude unused header.

	* dlls/dxerr8/dxerr8.c:
	dxerr8: Exclude unused header.

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Constify some variables.

	* dlls/kernel32/heap.c, dlls/ntdll/heap.c, include/winbase.h,
	  include/winternl.h:
	kernel32: Constify a variable.

	* dlls/dxerr9/dxerr9.c:
	dxerr9: Exclude unused header.

2007-05-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Improve sound mixer detection.
	The previous mixer code depended on the existence of 1 'Master', and 1
	'Capture' control. According to some feedback in wine-devel this is not
	always the case, the new code will try the following order for loading:
	Destination waveout: Master, Headphone PCM
	Destination wavein: Capture

2007-05-02  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: GetGlyphOutline needs to look at linked fonts as well.

2007-05-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Implement WintrustLoadFunctionPointers.

	* include/wintrust.h:
	wintrust: Fix typo.

2007-05-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Remove an unnecessary QueryInterface in CoRegisterClassObject that
	CoMarshalInterface will already do.

	* dlls/setupapi/misc.c:
	setupapi: SetupCopyOEMInfW should preserve the basename when copying the inf
	file to the inf directory if possible.
	If the file already exists, then it should use a name with the form oem%u.inf
	instead.

2007-04-26  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Output to console in Unicode if possible, or OEM codepage otherwise.

2007-05-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Add the tests for EM_SETTEXTEX/EM_GETTEXTEX in addition to
	WM_SETTEXT/WM_GETTEXT, make them pass under Wine.

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Remove a stray back slash.

2007-05-02  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c:
	gdi32: Complete WidenPath implementation.
	WidenPath now recognizes PS_JOINs and PS_ENCDAPs.

2007-05-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmime/dmutils.c:
	dmime: Exclude unused headers.

	* dlls/dmusic32/dmusic32_main.c:
	dmusic32: Exclude unused headers.

	* dlls/dmband/dmutils.c:
	dmband: Exclude unused headers.

	* dlls/dmstyle/dmutils.c:
	dmstyle: Exclude unused headers.

	* dlls/devenum/mediacatenum.c:
	devenum: Exclude unused header.

2007-04-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gphoto2.ds/capability.c:
	gphoto.ds: Constify a variable.

2007-04-30  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/Makefile.in, dlls/msi/automation.c, dlls/msi/custom.c,
	  dlls/msi/msipriv.h, dlls/msi/script.c:
	msi: Add JScript/VBScript support.

	* dlls/msi/custom.c:
	msi: Added handlers for JScript/VBScript actions that call one script function.

	* dlls/msi/automation.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/automation.c:
	msi: automation: Expose Installer object.

	* dlls/msi/automation.c:
	msi: automation: Implement Installer::OpenPackage.

	* dlls/msi/automation.c:
	msi: automation: Implement a few functions from the Session object.

	* dlls/msi/automation.c:
	msi: automation: Implement Database::OpenView.

	* dlls/msi/automation.c:
	msi: automation: Implement View::Execute, Fetch, and Close.

	* dlls/msi/automation.c:
	msi: automation: Implement Record::StringData.

2007-05-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Don't skip directory symlinks when looking for a specific file.

	* server/thread.c:
	server: Give system APCs priority over signaled objects.

	* programs/winebrowser/main.c:
	winebrowser: Don't output debug traces by default.

2007-05-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Run the costing actions for both the UI and execute sequences.

	* dlls/msi/action.c:
	msi: Reset the folder's resolved target before setting the target in
	CostFinalize.

	* dlls/msi/tests/install.c:
	msi: Add tests that show that costing is run in both the UI and Execute
	sequences.

2007-04-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c, dlls/localui/localui.h, dlls/localui/localui.rc,
	  dlls/localui/ui_En.rc:
	localui: Implement AddPortUI.

2007-04-30  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typegen.c,
	  tools/widl/typelib.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Get rid of the tname field of var_t, simplify code.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Get rid of the typeref_t structure, simplify code.

2007-04-30  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: Expand IDL file to contain some OLE automation interface functions.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/automation.c:
	msi: Add base class for OLE automation objects.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/automation.c,
	  dlls/msi/tests/iface.c:
	msi: Merge OLE automation conformance tests.

2007-05-01  Ben Taylor <sol11x86@comcast.net>

	* tools/wineinstall:
	wineinstall: Use `wine --version` instead of `which wine`.

	* tools/wineshelllink:
	wineshelllink: Improve /bin/sh and awk compatibility.

2007-04-30  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Implement IConnectionPoint_SimpleInvoke.

2007-04-30  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/sync.c:
	kernel32: Add stub for BindIoCompletionCallback.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/surface.c:
	ddraw: Update the wined3d depth stencil on device creation, render.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Cube map structure test.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Cube texture support.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d: Pass the cube face to Create*Texture's surface creation callback.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/surface.c:
	ddraw: Store a WineD3DBaseTexture instead of a WineD3DTexture.

2007-04-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_thunks.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gamma.c, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/parent.c, dlls/ddraw/surface.c,
	  dlls/ddraw/texture.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Exclude unused headers.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dwarf.c, dlls/dbghelp/image.c,
	  dlls/dbghelp/minidump.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/stabs.c,
	  dlls/dbghelp/stack.c, dlls/dbghelp/type.c:
	dbghelp: Exclude unused headers.

2007-04-30  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Accelerators, like for the menu ones, should not fire on the keyup
	message.

2007-04-30  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: Implement MIDIOut_Data when device is a MOD_MIDIPORT.
	Implement MIDIOut_Send.

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: Create only one MIDIOutPort and one MIDIInPort for all
	destinations and sources.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: MIDIIn_MessageHandler: Remove a TRACE and simplify skipping
	SysEx.

2007-04-28  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/automation.c:
	msi: Add OLE automation conformance test.

2007-04-29  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Zero-terminate module name in minidump.

2007-04-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/font.c, include/wingdi.h:
	gdi32: Constify some variables.

	* dlls/gdi32/brush.c, dlls/gdi32/enhmetafile.c:
	gdi32: Constify some variables.

2007-04-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Avoid crash on NULL parameter (XcvOpenPort in OpenPrinter).

	* dlls/winspool.drv/info.c:
	winspool: Return the correct errorcode in OpenPrinter (Xcv).

	* dlls/localspl/localmon.c:
	localspl: Code cleanup for XcvDataPort_AddPort.

2007-04-30  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/dnsapi/query.c,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/odbccp32/tests/misc.c,
	  dlls/winealsa.drv/mixer.c, dlls/winecoreaudio.drv/coremidi.c,
	  dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c,
	  programs/cmd/builtins.c:
	Assorted spelling fixes.

	* dlls/msi/tests/db.c:
	msi/tests: Add missing '\n' to ok() call.

	* dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Fix compilation on systems that don't support nameless unions.

	* dlls/d3drm/tests/vector.c:
	d3drm/tests: Add missing '\n' to ok() calls.

2007-04-29  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Add stubs for AtlIPersistStreamInit_Load and AtlIPersistStreamInit_Save.
	Based on a patch by Anastasius Focht and information from Inside ATL.

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlComQIPtrAssign.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Print the correct values when warning about a bad frag length.

	* dlls/winex11.drv/xdnd.c:
	winex11.drv: Remove an unneeded include.

	* dlls/dsound/propset.c:
	dsound: Implement QueryInterface for KsPropertySet objects.

	* dlls/dsound/dsound_main.c:
	dsound: Implement QueryInterface for the class factory objects.

2007-04-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/kernel32/process.c:
	kernel32: Fix off by one error.

	* dlls/ntdll/om.c:
	ntdll: Use correct full access bitmask in NtQuerySecurityObject.

2007-04-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Exclude unused headers.

	* dlls/compstui/compstui_main.c:
	compstui: Exclude unused headers.

	* dlls/dswave/dswave_main.c, dlls/dswave/dswave_private.h:
	dswave: Constify a variable.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c, dlls/crypt32/main.c,
	  dlls/crypt32/protectdata.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Exclude unused headers.

	* dlls/dsound/mixer.c, dlls/dsound/sound3d.c:
	dsound: Constify some variables.

2007-04-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_lmhash.c, dlls/advapi32/eventlog.c:
	advapi32: Exclude unused headers.

2007-04-27  Ken Thomases <ken@codeweavers.com>

	* programs/winebrowser/main.c:
	winebrowser: Don't put the default mailers or browsers into the registry.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for surface attachments.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/main.c, dlls/ddraw/surface.c:
	ddraw: Complex surfaces form a tree.

2007-04-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Move the additional surface creation into a seperate function.

	* dlls/ddraw/surface.c:
	ddraw: Do not access the surface connection structure directly in SetPalette.

	* dlls/ddraw/ddraw.c:
	ddraw: Search for d3d primary a bit differently.

2007-04-27  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/security.c:
	advapi: Improve SetEntriesInAclA stub.

2007-04-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix initial cleanup of the registry keys used for testing.

2007-04-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Fix offset in OnDataAvailable call.

2007-04-27  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Remove useless initialization of an [out] parameter.

2007-04-27  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Handle non System Exclusive messages.

2007-04-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.36.

----------------------------------------------------------------
2007-04-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Unset WAVECAPS_DIRECTSOUND properly for capture.

2007-04-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/Makefile.in, dlls/quartz/main.c, dlls/quartz/mpegsplit.c,
	  dlls/quartz/quartz_private.h, dlls/quartz/regsvr.c:
	quartz: Partially implement the MPEG 1 Stream Splitter filter.

2007-04-25  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for NeedCurrentDirectoryForExePath.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/path.c, include/winbase.h:
	kernel32: Add partial stub for NeedCurrentDirectoryForExePath.

2007-04-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Avoid sizeof in trace.

2007-04-26  Kevin Koltzau <kevin@plop.org>

	* dlls/user32/menu.c:
	user32: Draw menu item bitmaps in the correct location when the scroll arrows
	are active.

2007-04-26  Alexey Markachev <alexey@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Fix mistake in Novosibirsk time zone.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c:
	ddraw: Use EnumAttachedSurfaces for SetColorKey.

	* dlls/ddraw/ddraw.c:
	ddraw: Search for texture sublevels with GetAttachedSurface.

	* dlls/ddraw/ddraw.c:
	ddraw: Use EnumAttachedSurfaces to search for a render target.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for EnumSurfaces.

2007-04-25  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Add legacy 32-bit cursor support.

2007-04-25  Yuval Fledel <yuvalfl@gmail.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/schannel/tests/Makefile.in, dlls/schannel/tests/main.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	schannel: Tests for SpLsaModeInitialize, SpUserModeInitialize and GetInfo.

	* dlls/schannel/Makefile.in, dlls/schannel/schannel.spec,
	  dlls/schannel/usermode.c:
	schannel: Implement SpUserModeInitialize.

	* dlls/schannel/Makefile.in, dlls/schannel/lsamode.c,
	  dlls/schannel/schannel.spec:
	schannel: Implement SpLsaModeInitialize and GetInfo.

2007-04-26  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Prepare and MIDIIn_Unprepare.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_AddBuffer.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Reset.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Start and MIDIIn_Stop.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_GetNumDevs and MIDIIn_GetDevCaps.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Open and MIDIIn_Close.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Add MIDI In messages in MIDI_NotifyClient.

2007-04-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix the return value for IWineD3DDeviceImpl_ColorFill.

2007-04-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplayx_global.c,
	  dlls/dplayx/dplayx_global.h, dlls/dplayx/name_server.c,
	  dlls/dplayx/name_server.h:
	dplayx: Constify some variables.

2007-04-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/table.c:
	msi: Do not mark the tables const.

2007-04-26  Ben Taylor <sol11x86@comcast.net>

	* dlls/wineoss.drv/mixer.c:
	wineoss: Fix to compile on Solaris 10.

2007-04-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: Windows doesn't redraw a window if it is being just moved.

2007-04-26  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Rewrite get_funcdesc to avoid using the funcdesc's oVft member so
	that it works correctly for non-dual dispinterfaces.

2007-04-25  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Don't try to free the typeinfo if get_funcdesc fails.

2007-04-26  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, tools/make_makefiles:
	make_makefiles: Avoid duplicate .gitignore entries.

2007-04-25  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add a testcase for RPCs with fixed-size arrays.

	* tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Declare fixed-size array args as pointers to arrays.

	* .gitignore, dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/server.c,
	  dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for RPC and widl generated code.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c, tools/widl/widl.c, tools/widl/widl.h:
	widl: Add --prefix-* options (take 3).

2007-04-26  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Initial MIDI In Mach message handling.

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial MIDI In support on Mac OS X.

2007-04-25  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Remove fake nvidia card in GetAdapterIdentifier.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/ddraw/vertexbuffer.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d: Fix ProcessVertices.
	IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
	vertex buffer. The source for ProcessVertices is taken from the
	stateblock, not the vertex declaration.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/main.c, dlls/ddraw/vertexbuffer.c:
	ddraw: Get rid of FVFs.
	Remove all IWineD3DDevice::SetFVF calls and instead create converted
	vertex declarations and use them. The idea is to remove the FVF paths
	from wined3d to simplify the code, and optimize the vertex declaration
	codepath.

2007-04-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Implement CreateVertexDeclarationFromFVF.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add a method to create a declaration from a fvf.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not allocate surfaces unless needed.

2007-04-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/fdi.c:
	cabinet: Make sure we don't try to close an invalid file handle.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/symbol.c:
	winedbg: Properly handle EOF on input.

2007-04-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/resource.c:
	kernel32/tests: Resource functions are not implemented on win98.

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: SetupCopyOEMInfA is not available on NT4.

2007-04-25  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Set modify state when removing text.

2007-04-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix a typo.

	* dlls/dnsapi/query.c:
	dnsapi: Constify some variables.

2007-04-25  Hans Leidekker <hans@it.vu.nl>

	* programs/expand/Makefile.in, programs/expand/expand.c:
	expand.exe: Add support for cabinet files.

	* dlls/msi/msi.spec, dlls/msi/registry.c:
	msi: Add a stub implementation for MsiEnumProductsEx{A, W}.

	* dlls/shell32/iconcache.c, dlls/shell32/shell32.spec:
	shell32: Add a stub implementation for SHMapIDListToImageListIndexAsync.

2007-04-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/content.c:
	hhctrl.ocx: Don't insert content item that could not be merged.

2007-04-25  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: SetupDiCreateDeviceInfoListExW is not implemented on win98.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: GetLongPathNameW is not implemented on win98.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: GetComputerNameW is not implemented on win98.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: CreateRemoteThread is not implemented on win98.

2007-04-25  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Reset.

	* dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_GetVolume and MIDIOut_SetVolume.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_LongData.

	* dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Data.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Prepare and MIDIOut_Unprepare.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_GetDevCaps and MIDIOut_GetNumDevs.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDI_NotifyClient, MIDIOut_Open and MIDIOut_Close.

	* configure, configure.ac, dlls/winecoreaudio.drv/Makefile.in,
	  dlls/winecoreaudio.drv/audiounit.c,
	  dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h,
	  dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial MIDI support on Mac OS X.

2007-04-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/msipriv.h, dlls/msi/query.h,
	  dlls/msi/streams.c, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Implement special handling for the _Streams table.

2007-04-25  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: AtlModuleGetClassObject should store an intermediate pointer in obj->pCF
	and then query this for the requested interface.
	Return CLASS_E_CLASSNOTAVAILABLE instead of E_FAIL.

	* dlls/atl/atl_main.c:
	atl: Use the first entry in the object map in AtlInternalQueryInterface when
	IUnknown is requested.

	* tools/winebuild/import.c:
	winebuild: Refer to strings used in generated stubs by symbol rather than by
	offset to avoid problems when the compiler aligns the strings by 2 or more bytes.

2007-04-25  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Add required parameter to CreateThread (for Win9x and WinME).

2007-04-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Do not check for non-NULL before HeapFree'ing a variable as the
	check is redundant.

	* dlls/dbghelp/module.c, dlls/gdi32/tests/font.c, dlls/imm32/imm.c,
	  dlls/msvfw32/msvideo_main.c, dlls/ntdll/tests/port.c,
	  dlls/ole32/storage32.c, dlls/winex11.drv/xfont.c, dlls/wininet/ftp.c,
	  dlls/wininet/internet.c, dlls/winspool.drv/info.c,
	  programs/oleview/tree.c, programs/oleview/typelib.c:
	janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing
	out the allocated memory in a later call.

2007-04-25  Yuval Fledel <yuvalfl@gmail.com>

	* include/ntsecpkg.h:
	include: Introduce SECPKG_INTERFACE_VERSION and extend PSECPKG_FUNCTION_TABLE
	accordingly.

2007-04-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmband/dmutils.c:
	dmband: Constify some variables.

	* dlls/dmstyle/dmutils.c:
	dmstyle: Constify some variables.

	* dlls/dmime/dmutils.c:
	dmime: Constify some variables.

	* dlls/dmloader/debug.c, dlls/dmloader/debug.h:
	dmloader: Constify some variables.

	* dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h:
	dmscript: Constify a variable.

	* dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h:
	dmusic: Constify a variable.

	* dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h:
	dmcompos: Constify a variable.

2007-04-24  Michał Wiernowolski <mihalw@gmail.com>

	* dlls/winealsa.drv/midi.c:
	winealsa: Improved handling of SysEx MIDI messages.

2007-04-24  Aric Stewart <aric@codeweavers.com>

	* dlls/usp10/usp10.c:
	usp10: Do not crash in ScriptPlace if pABC is null.

2007-04-24  Tom Spear <speeddymon@gmail.com>

	* programs/winecfg/driveui.c:
	winecfg: Change WINE_ERR to WINE_TRACE since there is no real error.

2007-04-24  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/module.c:
	kernel32: Add the directory the executable was loaded from to the module search
	path if the module file name doesn't contain a path.

	* dlls/msi/action.c:
	msi: Fix an off-by-one error when calculating the path and filename for the
	action data in the SelfRegModules action.
	The backslash is in p[0], not p[1].

	* dlls/msi/package.c:
	msi: Create the _Property table as a temporary table so that the properties
	aren't saved to the .msi file.

	* dlls/msi/table.c:
	msi: Set rec to NULL after calling msiobj_release on it in msi_create_table
	so that we don't call msiobj_release on it again.

2007-04-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement Get/SetControlDetails in mixer.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement GetLineControls in mixer.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement mixer controls, and add GetLineInfo.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement opening/closing and caps of device.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/mixer.c,
	  dlls/winealsa.drv/winealsa.drv.spec:
	winealsa: Introduce mixer code.

2007-04-23  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c:
	msi: Add a non-persistent string instead of a persistent one if the table or
	row is non-persistent.

	* dlls/msi/create.c, dlls/msi/query.h, dlls/msi/sql.y,
	  dlls/msi/tests/db.c:
	msi: All columns being temporary means the table is non-persistent.
	The HOLD keyword just means that the non-persistent data in the table
	should be kept around, not that the table is temporary.

2007-04-24  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Add a persistent flag to tables.
	Implement MSI_DatabaseIsTablePersistent.

2007-04-23  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Don't add info to the _Columns table for non-persistent tables.

	* dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/select.c,
	  dlls/msi/table.c:
	msi: Add support for adding temporary/non-persistent data to tables.

	* dlls/msi/database.c:
	msi: The HOLD keyword implies a temporary table, whereas database importing
	should lead to permanent tables, so remove the HOLD keyword.

	* dlls/msi/table.c:
	msi: Create the table directly in create_table instead of requiring it to be
	loaded after saving.

	* dlls/msi/create.c, dlls/msi/query.h, dlls/msi/table.c:
	msi: Move table creation to table.c.

	* dlls/msi/table.c:
	msi: Store the column info in the MSITABLE structure.
	Load the data on view creation for simplicity instead of view execution.

	* dlls/msi/table.c:
	msi: Remove the hash table for a column when one of its values is modified
	since it will now be invalid.

	* dlls/msi/msipriv.h, dlls/msi/string.c:
	msi: Cleanup unneeded string table functions.
	Make string table functions that aren't used outside of string.c static.

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/string.c,
	  dlls/msi/table.c:
	msi: Move string loading and saving to string.c.

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c:
	msi: Add support for non-persistent strings.
	Store the loaded refcount in the string table.

2007-04-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: Add more image list tests, fix one problem found.

2007-04-24  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Use A-version for registry functions.

2007-04-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c:
	dinput: Constify some variables.

2007-04-24  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Make service_start_process return the pid to the caller.

	* dlls/advapi32/service.c:
	advapi32: Make struct service_data_t have the new SERVICE_STATUS_PROCESS struct.

2007-04-23  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/README, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support for DEL filename /s.

2007-04-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c, dlls/localui/localui.h:
	localui: Implement ConfigurePortUI for COMx.

	* dlls/localui/localui.c:
	localui: Avoid crash on NULL pointer.

2007-04-23  Lei Zhang <thestig@google.com>

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/tests/Makefile.in,
	  dlls/comdlg32/tests/filedlg.c:
	comdlg32: Initialize CommDlgExtendedError() return value for file dialogs.

2007-04-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  include/wine/wined3d_interface.h:
	wined3d: The second parameter to glTexImage3DEXT isn't a GLenum.

	* dlls/wined3d/volume.c:
	wined3d: Improve IWineD3DVolumeImpl_LoadTexture TRACE output.

	* dlls/wined3d/device.c:
	wined3d: Actually use the calculated mipmap surface sizes in
	IWineD3DDeviceImpl_CreateVolumeTexture.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Output pretty GL errors in checkGLcall and vcheckGLcall.

2007-04-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Fix the handling of overflows in PathCombine[AW].

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: In CreateToolbarEx the default bitmap size is also 16x16.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't execute TB_GETBUTTONINFO if cbSize is invalid.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge TOOLBAR_GetButtonInfoA and TB_GetButtonInfoW.

2007-04-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

2007-04-23  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winecfg/Pl.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Polish translation.

2007-04-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa: Remove disabled code.
	SND_PCM_ASYNC was needed to get asynchronous callbacks, but they are
	not used any more, so remove the code.

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Clear WAVECAPS_DIRECTSOUND for capture.

2007-04-19  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMQuaternionSlerp.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMQuaternionFromRotation.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMMatrixFromQuaternion.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorRotate.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c:
	d3drm: Implement D3DRMQuaternionMultiply.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorReflect.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c:
	d3drm: Implement D3DRMVectorRandom.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorNormalize.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorscale.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorModulus.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorDotProduct.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorCrossProduct.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DVectorSubtract.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3drm/Makefile.in, dlls/d3drm/d3drm.spec, dlls/d3drm/math.c,
	  dlls/d3drm/tests/Makefile.in, dlls/d3drm/tests/vector.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	d3drm: Implement D3DRMVectorAdd.

	* include/Makefile.in, include/d3drmdef.h:
	include: Add d3drmdef.h header.

2007-04-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/amstream/amstream.c, dlls/amstream/main.c,
	  dlls/amstream/mediastream.c, dlls/amstream/regsvr.c:
	amstream: Exclude unused headers.

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/factory.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/regsvr.c, dlls/avifil32/tmpfile.c:
	avifil32: Exclude unused headers.

	* dlls/avicap32/avicap32_main.c:
	avicap32: Exclude unused header.

	* dlls/advpack/advpack.c, dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Exclude unused headers.

	* dlls/acledit/main.c:
	acledit: Exclude unused headers.

	* dlls/activeds/activeds_main.c:
	activeds: Exclude unused headers.

2007-04-22  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: More tests for RegDeleteTreeA.

2007-04-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Use AC_SEARCH_LIBS for the Solaris libs to avoid unused function
	checks.

2007-04-23  Ben Taylor <sol11x86@comcast.net>

	* configure, configure.ac:
	configure: Fix to properly recognize functions on Solaris.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Drop unplayed frames instead of waiting for them.

2007-04-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/msipriv.h, dlls/msi/record.c:
	msi: Abstract MSI_RecordSetStream.

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Add an internal MSI_ViewModify.

2007-04-21  Yuval Fledel <yuvalfl@gmail.com>

	* dlls/rsaenh/handle.c, dlls/rsaenh/handle.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Convert handle type from unsigned int to HCRYPTKEY.

	* include/Makefile.in, include/ntsecpkg.h:
	include: Introduce ntsecpkg.h.

2007-04-19  EA Durbin <ead1234@hotmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sxs/Makefile.in, dlls/sxs/sxs.c, dlls/sxs/sxs.spec:
	sxs: Add new dll stub.

2007-04-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/file.c,
	  server/protocol.def:
	server: Return a more correct fd type for anonymous files.

	* dlls/version/tests/info.c:
	version: Avoid size_t type in traces.

	* dlls/dbghelp/msc.c:
	dbghelp: Don't print garbage chars in ERR message.

2007-04-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/light.c, dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/utils.c, dlls/ddraw/viewport.c:
	ddraw: Constify some variables.

2007-04-22  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/advapi32/crypt_des.c:
	advapi32: Fix one byte array overflow during DES unhash.

2007-04-22  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c:
	advapi32: Add EnumServicesStatusExA/W stub implementation.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi32: Make SERVICE_STATUS_PROCESS match the declaration in MSDN and PSDK.

2007-04-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/action.c, include/msidefs.h, include/odbcinst.h:
	msi: Install data sources in the InstallODBC custom action.

	* dlls/msi/action.c:
	msi: Install translators in the InstallODBC custom action.

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	urlmon: Add an implementation for CreateURLMonikerEx based on existing code
	for CreateURLMoniker.

2007-04-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c:
	dsound: Don't deadlock in capture because of callback.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Make sure we're holding the lock on Drop And Stop.

2007-04-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/tests/format.c,
	  dlls/msi/tests/package.c:
	msi: Add the _Property table back, with tests.

	* dlls/msi/msipriv.h, dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return MSICONDITION_NONE in MsiDatabaseIsTablePersistent if the table
	doesn't exist.

2007-04-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-04-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: Add an image list storage test, make it pass under Wine.

2007-04-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.h:
	comctl32: Use packing only for public ILHEAD structure, 2 bytes packing
	is enough.

2007-04-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix an off by one error in ImageList_Remove.

2007-04-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Thunk GetFileSecurityW to NtQuerySecurityObject.

2007-04-20  Lei Zhang <thestig@google.com>

	* tools/wineshelllink:
	wineshelllink: Fall back to $HOME if $HOME/Desktop does not exist.

2007-04-20  Yuval Fledel <yuvalfl@gmail.com>

	* dlls/userenv/userenv_main.c:
	userenv: Make GetProfileType report a normal (non-roaming) profile.

	* include/wincrypt.h:
	include: Fix a typo in wincrypt.h.

2007-04-20  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/state.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove usesFog flag from IWineD3DVertexShaderImpl.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix fog with shader test.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

	* dlls/winmm/winmm.c:
	winmm: Pass the right message to hwnd from mixer callback.

2007-04-20  Gerald Pfeifer <gerald@pfeifer.com>

	* server/fd.c:
	server: Silence compiler warning in fd_queue_async().

2007-04-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/xcopy/Ru.rc, programs/xcopy/rsrc.rc:
	xcopy: Add Russian resource.

2007-04-20  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Make QueryServiceStatus use QueryServiceStatusEx.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi32: Implement QueryServiceStatusEx.
	Based on a patch by Anastasius Focht.

2007-04-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: The cursor texture doesn't have GL_APPLE_client_storage backing.

2007-04-19  Huw Davies <huw@codeweavers.com>

	* dlls/user32/edit.c:
	user32: Cache the text buffer length to avoid excessive calls to strlenW.

	* dlls/user32/edit.c:
	user32: Add a function to return the length of the text buffer.

	* dlls/user32/edit.c:
	user32: Keep track of whether the app has asked for the text buffer handle.

2007-04-19  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Make the comparison for system link font replacement not case sensitive.

2007-04-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/indexbuffer.c:
	wined3d: Do not upload to the vbo if there's nothing to do.

2007-04-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Constify some variables.

2007-04-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_De.rc, dlls/localspl/spl_En.rc,
	  dlls/localspl/spl_Fr.rc, dlls/localspl/spl_Ko.rc,
	  dlls/localspl/spl_No.rc, dlls/localspl/spl_Pl.rc:
	localspl: ConfigurePort is now in localui.dll.

	* dlls/localui/Makefile.in, dlls/localui/localui.c,
	  dlls/localui/localui.h, dlls/localui/localui.rc,
	  dlls/localui/ui_En.rc:
	localui: Implement ConfigurePortUI.

	* dlls/localspl/localmon.c:
	localspl: DeletePort is now in localui.dll.

2007-04-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/msc.c:
	dbghelp: Constify some variables.

2007-04-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Remove GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT from
	debug_fbostatus().

2007-04-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shlexec.c:
	shell32: Add a stub implementation for OpenAs_RunDLL.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Correct the spec file entry for _makepath.

	* dlls/dnsapi/query.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Only call res_init() once per process.

2007-04-18  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shell32_main.c:
	shell32: SHGFI_EXETYPE flag should have the files returning 0 if they are
	DLL images.

2007-04-18  Alexandre Julliard <julliard@winehq.org>

	* server/named_pipe.c:
	server: Don't give out read/write access to the named pipe device.

	* server/fd.c, server/named_pipe.c:
	server: Use the standard file descriptor wait queue for named pipe server
	async waits.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Moved the FSCTL_PIPE_LISTEN implementation to the server.

	* server/fd.c, server/file.h:
	server: Allow specifying the status code to return on file descriptors that
	don't have a Unix fd.

2007-04-17  Ken Thomases <ken@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Test that quoting file path prevents masking at space.

	* dlls/shell32/shlexec.c:
	shell32: Don't break file path at spaces in ShellExecuteEx if quoted.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Added to-do test showing a bug with file paths with spaces.
	If ShellExecuteEx is asked to execute a file which has a space in its path,
	and if there exists a "masking" file whose name matches the path truncated
	at a space, then ShellExecuteEx launches the masking file instead.

2007-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c:
	d3d9: Rework the converted vertex declaration management.
	Instead of creating a converted declaration each time SetFVF is
	called, exactly one declaration is created for each FVF(on demand) and
	stored for the lifetime of the device. This avoids memory leaks and
	makes keeping track of converted declarations easier. Wether a
	declaration is converted from a fvf or not is now a static information
	inside the declaration. Those declarations are not destroyed in
	VertexDeclaration::Release, they stay for the lifetime of the
	device. This keeps us free from tracking the declaration through
	stateblocks

2007-04-14  Bernd Buschinski <b.buschinski@web.de>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix drawStridedSlow typo.

2007-04-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Use memcmp() instead of strcmp() so that we can check
	'intrazeroed' strings.

2007-04-17  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/winspool.drv/Es.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Spanish resources.

2007-04-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/msstyles.h:
	uxtheme: Fix conflicting declarations.

2007-04-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/minidump.c, dlls/dbghelp/module.c:
	dbghelp: Constify some variables.

2007-04-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/Makefile.in, dlls/localui/localui.c:
	localui: Implement DeletePortUI.

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c:
	localspl: Implement XcvData_AddPort.

	* .gitignore, dlls/Makefile.in, dlls/spoolss/Makefile.in:
	spoolss: Build the import library.

2007-04-17  Aric Stewart <aric@codeweavers.com>

	* programs/taskmgr/Ja.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Add Japanese resource.

2007-04-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Move the FSCTL_PIPE_WAIT ioctl implementation to the server.

	* include/wine/server_protocol.h, server/fd.c, server/file.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Add a specific data type for ioctl codes so they can be printed
	as symbols.

	* dlls/kernel32/sync.c, dlls/ntdll/file.c, dlls/ntdll/nt.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/server.c,
	  dlls/ntdll/sync.c, dlls/ntdll/thread.c, dlls/ntdll/time.c,
	  dlls/user32/message.c, include/wine/server_protocol.h,
	  server/async.c, server/fd.c, server/file.h, server/mailslot.c,
	  server/main.c, server/named_pipe.c, server/object.h,
	  server/process.c, server/process.h, server/protocol.def,
	  server/queue.c, server/registry.c, server/request.c, server/serial.c,
	  server/thread.c, server/thread.h, server/timer.c, server/trace.c,
	  server/winstation.c, tools/make_requests:
	server: Change the timeout handling to use NT-style 64-bit timeouts everywhere.

2007-04-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/version/info.c, dlls/version/tests/info.c,
	  dlls/version/tests/version.rc:
	version: Add a VerQueryValue test, make it mostly pass under Wine.

2007-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c:
	d3d9: Do not allow Direct3D9::GetAdapterModeCount to be called with
	D3DFMT_UNKNOWN.

2007-04-16  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi32/dc.c, dlls/gdi32/gdi32.spec:
	gdi32: Add a stub for CancelDC.

2007-04-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Implement ColorFill using FBOs, if they're being used.

	* dlls/wined3d/swapchain.c:
	wined3d: Don't try to clear the depth stencil if there is none.

	* dlls/wined3d/device.c:
	wined3d: Properly handle the difference between GL_BACK and GL_FRONT for
	onscreen surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Use surface_get_gl_buffer where appropriate.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to determine if a surface is the front or the backbuffer
	for a swapchain, and return the corresponding GLenum.

	* dlls/wined3d/device.c:
	wined3d: Set the FBO drawbuffer using glDrawBuffer when ARB_DRAW_BUFFERS is
	not supported.

	* dlls/wined3d/device.c:
	wined3d: Ignore SetTextureStageState on unsupported texture stages.

	* dlls/wined3d/utils.c:
	wined3d: Use GL_UNSIGNED_BYTE as data type for WINED3DFMT_A8.

	* dlls/wined3d/device.c:
	wined3d: Dump the FBO's attachments when its status is
	GL_FRAMEBUFFER_UNSUPPORTED_EXT.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a function for dumping FBO status codes.

2007-04-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/fd.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Move the server part of device unmounting to the ioctl processing.

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the FSCTL_PIPE_DISCONNECT ioctl on the server side.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/change.c,
	  server/fd.c, server/file.c, server/file.h, server/mailslot.c,
	  server/named_pipe.c, server/process.c, server/protocol.def,
	  server/queue.c, server/request.c, server/request.h, server/serial.c,
	  server/signal.c, server/sock.c, server/thread.c, server/trace.c:
	server: Add infrastructure for ioctl server request.

	* dlls/kernel32/sync.c:
	kernel32: Use the correct access rights when opening named pipes.

2007-04-16  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c:
	wined3d: Remove resourceStoreCriticalSection.

	* dlls/user32/cursoricon.c:
	user32: Fix to succeed reliably in test where it works by accident.

2007-04-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/acledit/Makefile.in, dlls/acledit/acledit.spec,
	  dlls/acledit/main.c:
	acledit: Stubbed out acledit DLL, needed by SysInternals process explorer.

2007-04-16  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: MAPIAdminProfiles stub.

2007-04-15  Alban Browaeys <prahal@yahoo.com>

	* dlls/wininet/urlcache.c:
	wininet: Fix szCacheContent in URLCacheContainer_OpenIndex.

	* dlls/msi/action.c:
	msi: Move msi_free(msiFilePath) to enable ERR message to use it before it
	is freed.

2007-04-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/palette.c, dlls/wined3d/query.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	d3d: Remove dependency on ddraw.h header.

2007-04-16  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool: Declare missing function.

2007-04-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c:
	slwapi: Make function definitions and declarations agree.

	* dlls/shlwapi/reg.c, dlls/shlwapi/thread.c:
	slwapi: Make function definitions and declarations agree.

	* dlls/user32/network.c, include/wine/winnet16.h,
	  include/wine/winuser16.h:
	user32: Make function definitions and declarations agree.

	* dlls/crypt32/sip.c, dlls/crypt32/store.c, dlls/crypt32/str.c:
	crypt32: Constify some variables.

	* dlls/crypt32/protectdata.c:
	crypt32: Constify some variables.

2007-04-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Implement a basic 'more'.
	This implements a basic more, eg 'dir | more' or 'more file.c'
	but it does not support the flags or keys which can control it.
	Basically its not worth implementing those, as in some modes
	we cannot read a single key, we have to wait for <enter> anyway.

2007-04-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/tests/mixer.c, dlls/winmm/winmm.c:
	winmm: Implement CALLBACK_WINDOW.

2007-04-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c, dlls/ddraw/ddraw.c, dlls/wined3d/directx.c:
	d3d: Enumerate palettized formats for ddraw.

2007-04-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-04-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c, dlls/msi/tests/install.c:
	msi: Add handling for the concurrent install custom action.

	* dlls/msi/action.c:
	msi: Run the InstallExecute sequence if the InstallUISequnce table is empty.

	* dlls/msi/custom.c:
	msi: Generalize the msi_custom_action_info struct so other custom actions can
	use it.

	* dlls/msi/tests/install.c:
	msi: Add tests for the concurrent installation custom action.

2007-04-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/base64_codec.c, dlls/secur32/dispatcher.c,
	  dlls/secur32/ntlm.c, dlls/secur32/util.c:
	secur32: Move NTLM debug output to a seperate "ntlm" channel.

2007-04-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix and extend the RegQueryValueEx() tests.
	- Added tests for empty and zero-byte strings. Wine passes these tests, sort of.
	- Check that the returned string is correct.
	- All known Windows versions implement RegQueryValueExA(), so complain if it
	is not implemented.
	- Only allow the Win9x quirks for the Ansi version.
	- Query the name2A/W value for the string2A/W tests!
	- The test_hkey_main_Value_A/W() functions were doing a sizeof() on the string
	parameter to compute the string's full size!
	- We must reset GLE before each test, otherwise Win9x skips all but the
	first test.

2007-04-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Create DirectSound device and buffer at filter creation and connection
	respectively.

2007-04-13  Chia-I Wu <b90201047@ntu.edu.tw>

	* dlls/kernel32/locale.c:
	kernel32: Fix non-terminated separator string.

2007-04-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.35.

----------------------------------------------------------------
2007-04-13  Huw Davies <huw@codeweavers.com>

	* dlls/imagehlp/integrity.c:
	imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.

2007-04-12  András Kovács <andras@debian.sth.sze.hu>

	* programs/winecfg/appdefaults.c:
	winecfg: Add Windows Vista version option.

	* dlls/ntdll/version.c:
	ntdll: Add Vista version option.

2007-04-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Remove superfluous semicolons.

	* dlls/ole32/rpc.c, dlls/ole32/usrmarshal.c:
	ole32: Void functions should not return a value.

2007-04-12  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/baseshader.c:
	wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord.

2007-04-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix some swizzles on scalars.

2007-04-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Hack to disable XInitThreads when an XIM is used.

2007-04-12  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: GetMonthRange Tests.

2007-04-13  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/files.c:
	msi: Provide UI action data for uncompressed files, not just compressed ones.

2007-04-12  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Add tests for RpcServerListen and friends.

2007-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Fix vertex decl test.

2007-04-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_COMPOSESETTINGS and IDM_HTMLEDITMODE stub implementation.

	* dlls/mshtml/persist.c:
	mshtml: Added IPersistFile::Save implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Correctly handle utf-16 encoded pages.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::get_background implementation.

	* dlls/mshtml/htmlbody.c:
	mshtml: Change TRACE to FIXME in stubs.

2007-04-12  Dan Kegel <dank@kegel.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: GetAsyncKeyState must check mouse buttons, too.

2007-04-12  Alexandre Julliard <julliard@winehq.org>

	* server/change.c, server/fd.c, server/file.h, server/process.c,
	  server/queue.c, server/request.c, server/signal.c, server/thread.c:
	server: Don't bother with default entry points for objects that don't even
	return an fd.

	* server/mailslot.c:
	server: Create a separate fd object for each mailslot writer. Make them
	first-class file handles.

2007-04-12  Marcus Meissner <meissner@suse.de>

	* configure, configure.ac:
	configure: Include <sys/types.h> before including <linux/joystick.h>.

2007-04-11  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/heap.c:
	ntdll: Take size of the arena from the current pointer before advancing.

2007-04-11  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix regression when launching a fully qualified program.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h:
	cmd.exe: Add prompting and COPYCMD plus /Y support to move.

	* programs/cmd/builtins.c:
	cmd.exe: Add move support for wildcards and directories.

	* programs/cmd/builtins.c:
	cmd.exe: Add support for move with simple wildcards.

2007-04-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec, dlls/user32/winpos.c:
	user32: Add RealChildWindowFromPoint.

2007-04-12  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Don't hardcode the windows directory.

2007-04-12  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Implement level 1 support for EnumPrinters.

2007-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/server.c:
	ntdll: Fix a compiler warning.

2007-04-12  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Do not crash in MsiGetUserInfo if org, user or serial are not present,
	instead return USERINFOSTATE_ABSENT.

2007-04-11  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/msg.c:
	user32: WM_ACTIVATEAPP on minimize message test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: More monthcal hit tests.

2007-04-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Reset the is_extracted flag when every cabinet is loaded.

2007-04-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* programs/winecfg/audio.c:
	winecfg: Close audio driver when not needed any more.

2007-04-11  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/localui/Makefile.in, dlls/localui/localui.rc:
	localui: Add version resource.

2007-04-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/exception.c, dlls/ntdll/relay.c, dlls/ntdll/signal_i386.c:
	ntdll: Remove superfluous semicolons.

	* dlls/ntdll/string.c:
	ntdll: Void functions should not return a value.

2007-04-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Fix RegQueryValueExA test for win9x and ME.

2007-04-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/oldconfig.c:
	kernel32: Allow any amount of whitespace between the words ANSI and SCSI in
	/proc/scsi/scsi.

2007-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Fix a couple of problems with negative lfWidth test.

2006-10-14  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for the converted vertex decl.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Break out two helper functions from test_fvf_to_decl.

2007-04-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/visual.c,
	  dlls/d3d9/vertexdeclaration.c:
	d3d9: Fix the circular converted vertex declaration reference.

2007-04-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef.

2007-04-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Dirtify the shader and declaration states if the bound interface
	is destroyed.

2007-04-11  Kai Blin <kai.blin@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Don't use settimeofday() to attempt to set the timezone.

2007-04-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtermapper.c:
	quartz: Implement IAMFilterData interface for IFilterMapper.

2007-04-11  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless structs
	or unions.

2007-04-10  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfolder.c:
	shell32: Use _ILSimpleGetTextW instead of using _ILGetTextPointer
	to be able to make use of FileStructW and avoid W->A->W roundtrips if
	possible.

2007-04-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Have _ILCreateFromFindDataW also create a FileStructW type of pidl.
	Based on a patch by Aric Stewart.
	Also get rid of _ILCreateFromFindDataA and _ILCreateFromPatA.

2007-04-09  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/debughlp.c, dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Update the debug functions to handle Unicode value pidl.
	Add _ILIsUnicode as a simple pidl test.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Avoid unneeded A->W conversions in _ILSimpleGetTextW.
	Implement _ILGetTextPointerW, though it does little now.
	Handle the LPWSTR from _ILGetTextPointerW in _ILSimpleGetText and
	_ILSimpleGetTextW.

2007-04-11  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/font.c:
	msi: Register fonts with full target paths as applications can and will install
	fonts to places other than the windows/fonts directory.

2007-04-11  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Use skip when OpenSCManagerA is not implemented.

2007-04-11  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Remove redundant NULL check before HeapFree().

2007-04-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cpp.c:
	msvcrt: Remove superfluous semicolons.

2007-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ws2_32/socket.c, include/wine/server.h,
	  include/wine/server_protocol.h, server/fd.c, server/protocol.def,
	  server/trace.c:
	ntdll: Store the file access and options in the fd cache, and get rid of the
	dynamic flags.
	This avoids server round-trips for all file I/O.

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
	  server/sock.c, server/thread.c:
	server: Rename the get_file_info function to get_fd_type and get rid of
	the flags.

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
	  server/sock.c, server/thread.c:
	server: Store the opening options in the file descriptor instead of in the
	individual objects.
	Allows moving the FD_FLAG_OVERLAPPED support to the generic
	get_handle_fd request handling.

	* dlls/kernel32/sync.c:
	kernel32: Add SYNCHRONIZE access to mailslot handles.
	Don't bother to request write access.

2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Improve printing considerably.
	Make fonts and the other measurements the correct size in relation to
	the actual printer resolution instead of thinking it uses the same
	resolution as the display.  Before fixed sized (and for most printer
	resolutions way to small) margins where used and the font size was
	taken directly from the screen font independent of the actual printer
	resolution, resulting in a completely unreadable micro text on most
	printouts.

2007-04-10  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/tests/misc.c, include/setupapi.h:
	setupapi: Implement SetupGetFileCompressionInfo on top of
	SetupGetFileCompressionInfoEx.

2007-04-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in
	IWineD3DSurfaceImpl_BltOverride.

	* dlls/wined3d/drawprim.c:
	wined3d: Disable the scissor test for depth blits.

	* dlls/wined3d/device.c:
	wined3d: Disable the scissor test in stretch_rect_fbo.

	* dlls/wined3d/device.c:
	wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from
	stretch_rect_fbo.

	* dlls/wined3d/device.c:
	wined3d: Add some traces to stretch_rect_fbo.

2007-04-10  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/ppd.c:
	wineps.drv: Add a heuristic to cope with resolution strings of the form
	"nnnmmmdpi" (ie without the 'x' separator).

2007-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/mailslot.c, server/named_pipe.c:
	server: Explicitly shutdown closed pipes to prevent access from file descriptors
	cached in the client.

	* dlls/ntdll/file.c:
	ntdll: Determine the async read avail_mode flag from the client side.

	* dlls/ntdll/file.c:
	ntdll: Simplify the async read/write code now that most of the work is done
	in the server.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/sync.c,
	  dlls/ws2_32/socket.c, include/wine/server_protocol.h, server/async.c,
	  server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/protocol.def, server/queue.c, server/request.c,
	  server/serial.c, server/signal.c, server/sock.c, server/thread.c,
	  server/trace.c:
	server: Add support for restarting an async I/O when the client side couldn't
	finish it right away.

2007-04-10  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: Run tests on win98 again.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Make sure NT4 and W2K tests don't fail.

2007-04-10  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_mycomp.c:
	shell32: Return Unicode strings from all of the IShellFolder::GetDisplayNameOf
	functions in not running in Win9x mode.

2007-04-09  Lei Zhang <thestig@google.com>

	* dlls/comctl32/monthcal.c:
	comctl32: Fix first day of the week in monthcal.

2007-04-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mshtml/task.c:
	mshtml: Void functions should not return a value.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Constify some variables.

2007-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/misc.c:
	setupapi: Avoid using sizeof in traces.

2007-04-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Remove duplicate tests.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localui/tests/Makefile.in, dlls/localui/tests/localui.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	localui/tests: Add initial test.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localui/Makefile.in, dlls/localui/localui.c,
	  dlls/localui/localui.spec:
	localui: Add localui.dll with stubs.

2007-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/misc.c:
	setupapi: Remove debug traces from allocation routines.

	* dlls/setupapi/tests/misc.c:
	setupapi: Add tests for SetupDecompressOrCopyFile.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupDecompressOrCopyFile{A, W}.

	* dlls/setupapi/tests/misc.c:
	setupapi: Add tests for SetupGetFileCompressionInfoEx.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupGetFileCompressionInfoEx{A, W}.

2007-04-09  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP.

	* dlls/wined3d/device.c:
	wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces.

	* dlls/wined3d/directx.c:
	wined3d: Don't report render target formats we don't support as supported.

	* dlls/wined3d/directx.c:
	wined3d: Add some StretchRectFilterCaps.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the framebuffer blit extension to implement StretchRect.

	* dlls/wined3d/device.c:
	wined3d: Separate attaching a surface to an FBO from set_render_target_fbo.

	* dlls/wined3d/device.c:
	wined3d: Make bind_fbo a bit more generic.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fixup FBO depth attachments when the depth attachment is larger than
	the render target.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Handle FBO attachments slightly more efficiently.

2007-04-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/file.c:
	ntdll: Remove superflous NULL checks.

2007-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/file.c:
	ntdll: Add some test cases for asynchronous I/O.

	* dlls/kernel32/tests/mailslot.c, dlls/ntdll/file.c:
	ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets.

2007-04-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/imm32/imm32.spec, dlls/w32skrnl/Makefile.in,
	  tools/winebuild/import.c:
	winebuild: Check if a given forward does exist in one of the imported dlls,
	fix a couple of problems detected.

2007-04-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/prop.c:
	mapi32: Void functions should not return a value.

	* dlls/kernel32/heap.c, dlls/kernel32/thunk.c, dlls/kernel32/vxd.c:
	kernel32: Remove superfluous semicolons.

2007-04-08  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Set the event regardless of the queue state.

2007-04-08  Chris Robinson <chris.kcat@gmail.com>

	* programs/winedbg/info.c:
	winedbg: Align module addresses to 8 characters.

2007-04-08  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/surface.c:
	wined3d: Issue an error when the render target is read back without
	SFLAG_INDRAWABLE being set.

	* dlls/wined3d/context.c:
	wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER.

2007-04-07  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/surface.c:
	wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE.

2007-04-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: Void functions should not return a value.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/texture.c, dlls/d3d8/volumetexture.c:
	d3d8: Void functions should not return a value.

2007-04-07  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
	  dlls/quartz/transform.h:
	quartz: Pass the media sample to the individual transform filter callbacks.
	This is so the filters can pass on and use timing, discontinuity, and other
	information stored in the sample as needed.

	* dlls/quartz/memallocator.c:
	quartz: Fix error with operator precedence.

	* dlls/quartz/pin.c:
	quartz: Fix ALIGN macros.

2007-04-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Let the debug channels work again.
	While I was at it, simplified the symbol lookup for the debug options.

2007-04-06  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/waveparser.c:
	quartz: Make sure cached media samples are released for parser filters.

	* dlls/quartz/avisplit.c, dlls/quartz/parser.c, dlls/quartz/parser.h,
	  dlls/quartz/waveparser.c:
	quartz: Add a cleanup callback for parser filters to call on release.

2007-04-07  Felix Nawothnig <flexo@holycrap.org>

	* dlls/d3d8/device.c:
	d3d8: Add missing relay trace.

	* dlls/comctl32/treeview.c:
	comctl32: Allow enabling TVS_CHECKBOXES on the fly.

2007-04-06  Lei Zhang <thestig@google.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/registry.c:
	advapi32: Spelling fixes.

2007-04-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Index buffer data is unsigned.

	* dlls/wined3d/directx.c:
	wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap.

2007-04-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/ddraw/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
	This is to allow StretchRect to pass the texture filter to WineD3D.
	DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
	other functions which do not need filtering.

2007-04-06  Stefan Dösinger <stefan@codeweavers.com>

	* include/wine/wined3d_caps.h:
	wined3d: Add D3DDEVCAPS3_* to the wined3d caps header.

2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/setupapi.h:
	include: Remove superfluous semicolons.

2007-04-06  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Add partial implementation of IReferenceClock for DSoundRenderer.

	* dlls/quartz/dsoundrender.c:
	quartz: Use more precise positioning information for the DSound filter's
	reference clock.

2007-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Rely on the server to queue the final APC for asynchronous read/write.

	* dlls/ntdll/file.c:
	ntdll: Reimplement NtWriteFile.
	Always try a write() before queuing an async I/O.
	Handle timeout waits for synchronous I/O entirely on the client side.
	Queue the final APC as a proper user APC.

	* dlls/ntdll/file.c:
	ntdll: Reimplement NtReadFile.
	Always try a read() before queuing an async I/O.
	Handle timeout waits for synchronous I/O entirely on the client side.
	Queue the final APC as a proper user APC.

2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize.

2007-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/mailslot.c:
	kernel32: Add a bit of slack to the mailslot timeout test.

2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
	comdlg32: Remove inappropriate const qualifier.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/cdlg.h, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/finddlg16.c, dlls/comdlg32/finddlg32.c:
	comdlg32: Constify some variables.

2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix a forward to user32.PrivateExtractIconExW.

2007-04-05  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_EXT_framebuffer_blit to extension handler.

2007-04-05  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Partially fix 'dir *.' (ie files with no extension).

	* programs/cmd/directory.c:
	cmd.exe: Make dir a* b* or dir a* b* /s mirror windows.

	* programs/cmd/directory.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Make dir support multiple parameters.

	* programs/cmd/directory.c:
	cmd.exe: Fix dir filename /s and resolve many output differences.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Attempt to launch pgm even if fails to locate it.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Only search for supplied command as-is if it includes an extension.
	Files with no extensions cannot be run as-is. This enables a directory
	with 'fred' and 'fred.bat' to correctly run fred.bat if just fred is
	executed.

2007-04-06  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/toolbar.c:
	comctl32: Allow destruction of toolbar in BN_CLICKED handler.

2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/En.rc:
	notepad: Fix text label.

2007-04-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Send a notification when the filter graph clock changes.

2007-04-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Avoid releasing NULL objects.

2007-04-06  Felix Nawothnig <flexo@holycrap.org>

	* programs/taskmgr/procpage.c:
	taskmgr: Use default font for proc listview.

	* dlls/comctl32/header.c:
	comctl32: Use appropriate font for header drag image.

2007-04-05  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c:
	comctl32: Fix item rect calculation.

2007-04-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Demangle a C++ mangled string that is only a name with it's template
	argument list.

	* dlls/msvcrt/undname.c:
	msvcrt: Move the code to demangle a name with its template argument list out
	of get_class() and into a separate function.

2007-04-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/stubmanager.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Fix a hack which depended on the IID of the interface being marshaled
	to determine whether we were marshaling the remote unknown for the
	apartment or not.

2007-04-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Improve a number of stubs.

2007-04-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap.

2007-04-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/moniker.h:
	ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h
	to moniker.h.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole2.c,
	  dlls/ole32/tests/dragdrop.c:
	ole32: Don't release the registered drop targets in OleUninitialize.
	Do it in DLL_PROCESS_DETACH instead.

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: Check the input hwnd is valid in RevokeDragDrop.

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: Check for COM not being initialised and an invalid window handle being
	input to RegisterDragDrop.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/dragdrop.c:
	ole32: Add tests for drag and drop functions.

2007-04-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/menu.c:
	user32/tests: Don't run unicode tests if not supported.

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Use GetModuleHandle and skip.

2007-04-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps.drv/driver.c, dlls/winspool.drv/tests/info.c:
	winspool: Add a test for DeviceCapabilities, fix some bugs found.

2007-04-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished.

	* dlls/ntdll/file.c:
	ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer
	count.

	* dlls/ntdll/file.c:
	ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done.

2007-04-05  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cnd instruction.
	According to MSDN the cnd instruction should translate:
	dst = src0 > 0.5 ? src1 : src2;

2007-03-31  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Fix UpdateSurface for sourceRect != sourceWidth.

2007-04-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
	comdlg32: Constify some variables.

	* dlls/comdlg32/cdlg.h, dlls/comdlg32/colordlg.c:
	comdlg32: Constify some variables.

2007-04-04  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add some tests for RegDeleteTreeA.

2007-04-04  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c:
	ole32: Storage optimization.
	We do not need to unmap and remap all the victim pages with every
	resize as they are simply a cache. Provides significant speedup for
	saving large storage files.

2007-04-04  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/tests/exception.c:
	ntdll: Remove one exception test.

	* include/dinput.h:
	dinput: Add missing definition to public header.

2007-04-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
	  dlls/winearts.drv/winearts.drv.spec, include/config.h.in,
	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/audio.c,
	  programs/winecfg/libraries.c, programs/winecfg/resource.h,
	  tools/winapi/win32.api:
	winearts.drv: Kill off winearts.

2007-04-04  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib16.c:
	ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make
	LoadTypeLib16 take an LPSTR instead of LPOLESTR.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/tests/compobj.c:
	ole32: Keep a list of the loaded dlls for each apartment.
	Use it to make CoFreeUnusedLibraries per-apartment.

	* dlls/ole32/compobj.c:
	ole32: Cache the address for the library's DllGetClassObject and DllCanUnloadNow
	in the OpenDll list entry.

	* dlls/ole32/tests/compobj.c:
	ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries
	from the current apartment.

	* dlls/ole32/compobj.c:
	ole32: Move the handling of loading a dll and getting an in-process object
	from it to an apartment-specific function.
	Use it to implement apartment_hostobject in a cleaner way so that it is
	guaranteed to not recurse.

	* dlls/ole32/compobj.c:
	ole32: Move the in-process module loading to COMPOBJ_DllList_Add.

	* dlls/ole32/compobj.c:
	ole32: Convert the OpenDll list to a standard Wine list.
	Store the library name and make it reference counted.

2007-03-29  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Add support for float texture formats back in.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cnd instruction for INF and NAN arguments.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cmp instruction for INF and NAN arguments.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Tell filters to stop sending data when the chain is broken.

2007-04-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/memallocator.c:
	quartz: Don't call ReleaseSemaphore on NULL semaphore handles.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface.

2007-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, server/change.c:
	server: Use the standard file descriptor signal mechanism for directory changes.

	* server/async.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c:
	server: Fix the handling of the signaled status for file descriptors.
	File handles are signaled when an I/O operation completes, and reset
	when another operation is queued.

	* dlls/user32/message.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Store the display file descriptor directly in the server message
	queue.
	Get rid of a few WaitForMultipleObjectsEx hacks.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/request.h, server/trace.c:
	server: Add support for associating a file descriptor to a message queue.

	* server/trace.c, tools/make_requests:
	make_requests: More aggressive grepping for status values.

2007-04-04  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
	odbccp32: Don't print *pcbPathOut as it can be NULL (Coverity).

2007-04-03  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/propsheet.c:
	comctl32: Propsheet exception fix.
	Do not attempt to draw a page during WM_PAINT if there is no active page.

2007-04-03  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/state.c:
	wined3d: Only issue state_patchsegments FIXME once.

	* dlls/wined3d/state.c:
	wined3d: Downgrade some ERRs to FIXMEs.

2007-04-03  Steven Edwards <winehacker@gmail.com>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Add a button for audio test.

2007-04-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/stg_bigblockfile.c:
	ole32/stg_bigblockfile: Check page before use (Coverity).

2007-04-03  Vit Hrachovy <vit.hrachovy@sandbox.cz>

	* programs/winecfg/Cs.rc, programs/winecfg/winecfg.rc:
	winecfg: Fix outdated Czech localization.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c:
	quartz: Break loop on error in ACMWrapper.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
	  dlls/quartz/transform.h:
	quartz: Add a QueryConnect method for transform filters.

2007-04-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/transform.c:
	quartz: Connect input when the pins connect, not when querying.
	And clean up when disconnecting input.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Hold a reference on the PullPin's filter while the processing thread
	is alive.
	Also removes dead code caused by the change.

2007-04-03  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: AddRef the object being returned in AtlInternalQueryInterface,  not "this".

	* dlls/msi/custom.c:
	msi: Don't wait on closed handles in ACTION_FinishCustomActions.
	The handle will be closed by free_custom_action_data, so duplicate the
	handle before calling it.

	* dlls/ntdll/tests/om.c, dlls/ntdll/tests/reg.c:
	ntdll: Pass the correct value to NtClose in the tests.

2007-04-03  Alexandre Julliard <julliard@winehq.org>

	* server/async.c, server/fd.c, server/file.h, server/named_pipe.c,
	  server/sock.c:
	server: Hold a pointer to the queue from the async operations.

	* dlls/kernel32/tests/mailslot.c, server/async.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c:
	server: Make timeout status for async I/O specifiable. Fix mailslots timeout
	handling.

2007-03-30  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplay_global.h:
	dplayx: Implement proper interface locking for DP_EnumSession.

2007-03-30  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/regedit/Ko.rc:
	regedit: Update Korean resource.

2007-03-31  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/regedit/En.rc, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/resource.h:
	regedit: Support REG_MULTI_SZ creation and editing.

2007-04-03  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correct WidenPath behaviour when working on an open path.

2007-04-02  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correction of WidenPath behaviour when pen width is 1.

2007-04-02  Jason Edmeades <us@edmeades.me.uk>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Convert to VT_DECIMAL fails with overflow (with test).

2007-04-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Use a second-long DSound buffer for playback.

2007-04-02  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: On NT4 FindExecutable() returns an extra backspace character
	in some tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the
	returned command which caused many tests to fail.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable
	to read them back on Win >= 2000.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Fix some expected FindExecutable() error codes.
	Add comments indicating which Windows version returns a given error code.

2007-04-02  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/tab.c, dlls/kernel32/tests/profile.c,
	  dlls/localspl/tests/localmon.c, dlls/ole32/stg_bigblockfile.c,
	  dlls/rpcrt4/rpcss_np_client.c, dlls/wined3d/state.c:
	Assorted spelling and English fixes.

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Spelling fix.

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Spelling fix.

2007-04-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/avifile.c, dlls/avifil32/avifile_private.h,
	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
	avifil32: Constify some variables.

	* dlls/comcat/information.c, dlls/comcat/register.c:
	comcat: Constify some variables.

	* dlls/advpack/install.c:
	advpack: Constify some variables.

	* dlls/atl/registrar.c:
	atl: Constify some variables.

	* dlls/advapi32/service.c:
	advapi32: Constify some variables.

	* dlls/comctl32/updown.c:
	comctl32: Constify some variables.

	* dlls/comctl32/treeview.c:
	comctl32: Constify some variables.

	* dlls/comctl32/trackbar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/toolbar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/theme_combo.c, dlls/comctl32/tooltips.c:
	comctl32: Constify some variables.

	* dlls/comctl32/tab.c:
	comctl32: Constify some variables.

	* dlls/comctl32/syslink.c:
	comctl32: Constify some variables.

2007-04-02  Alexandre Julliard <julliard@winehq.org>

	* server/async.c, server/change.c, server/fd.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c,
	  server/sock.c:
	server: Add a separate function to set the timeout of an async I/O operation.

	* dlls/kernel32/tests/mailslot.c:
	kernel32: Added some last error tests for mailslots.

	* server/fd.c, server/mailslot.c:
	server: Check file access in register_async before calling the object method.

	* server/async.c, server/change.c, server/fd.c, server/file.h,
	  server/named_pipe.c, server/serial.c, server/sock.c:
	server: Make async I/O queues into real objects.

	* server/change.c:
	server: Use the fd generic wait queue for directory change I/O operations.

	* server/serial.c:
	server: Take advantage of the fd generic wait queue to remove a lot of serial
	code.

	* server/fd.c, server/file.h, server/mailslot.c:
	server: Avoid redundant polling in fd_queue_async_timeout.
	Moved the file overlapped flag check to default_fd_queue_async.

	* server/fd.c, server/file.h:
	server: Add a generic wait queue to the file descriptor object.

	* tools/make_makefiles:
	make_makefiles: Add the .INIT/.BEGIN rules for the main makefile.

2007-03-30  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Unset active page while setting a new active page for a propsheet.
	Before calling the PSN_SETACTIVE in PROPSHEET_SetCurSel set the
	active_page to -1. This prevents crashes and corruption of the
	property sheet if the application makes any modifications during the
	PSN_SETACTIVE.

2007-04-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_minidump.c, tools/winedump/minidump.c:
	winedbg, winedump: Extended some info printed from system info directory in
	minidump about the CPU.

	* programs/winedbg/tgt_minidump.c:
	winedbg: When reloading real PE modules from a minidump, also look in the
	search path (as we do for ELF modules).

2007-03-31  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Remove DDBLT_WAIT fixme.

2007-03-31  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Hack/workaround for filenames starting with a '.'.

	* programs/xcopy/xcopy.c:
	xcopy: /E implies recursive (fixes ActiveState Perl installer).

	* programs/xcopy/xcopy.c:
	xcopy: Make displayed names mirror windows.

2007-03-30  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/En.rc, programs/xcopy/xcopy.c, programs/xcopy/xcopy.h:
	xcopy: Add help.

	* programs/xcopy/xcopy.c:
	xcopy: Update comments with unsupported operations and current status.

	* .gitignore, programs/xcopy/En.rc, programs/xcopy/Makefile.in,
	  programs/xcopy/rsrc.rc, programs/xcopy/xcopy.c,
	  programs/xcopy/xcopy.h:
	xcopy: Move all messages into an English resource file.

	* programs/xcopy/xcopy.c:
	xcopy: Rearrange code to closely match windows ordering.
	Effectively work out if we are interested in a file before worrying
	about prompting for copy or overwrite.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /D and /D:m-d-y.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /EXCLUDELIST:file1+file2 etc.

2007-03-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c:
	comctl32: Constify some variables.

	* dlls/comctl32/rebar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/header.c, dlls/comctl32/pager.c, dlls/comctl32/progress.c,
	  dlls/comctl32/propsheet.c:
	comctl32: Constify some variables.

	* dlls/comctl32/animate.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c:
	comctl32: Constify some variables.

2007-04-01  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/main.c:
	notepad: Fix a possible rounding error when storing the font point size to
	the registry.

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Eo.rc, programs/notepad/Es.rc,
	  programs/notepad/Fi.rc, programs/notepad/Fr.rc,
	  programs/notepad/Hu.rc, programs/notepad/It.rc,
	  programs/notepad/Ja.rc, programs/notepad/Ko.rc,
	  programs/notepad/Nl.rc, programs/notepad/No.rc,
	  programs/notepad/Pl.rc, programs/notepad/Pt.rc,
	  programs/notepad/Ru.rc, programs/notepad/Si.rc,
	  programs/notepad/Sk.rc, programs/notepad/Sw.rc,
	  programs/notepad/Th.rc, programs/notepad/Tr.rc,
	  programs/notepad/Wa.rc, programs/notepad/Zh.rc,
	  programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h, programs/notepad/notepad_res.h:
	notepad: Implement handling of page setup dialog parameters.

2007-04-01  Rob Shearman <rob@codeweavers.com>

	* dlls/advpack/install.c:
	advpack: Stop processing if there was an error registering an OCX.

	* dlls/advpack/Makefile.in, dlls/advpack/install.c:
	advpack: Call OleInitialize before registering OCXs, like native does.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Fix a reference count leak that would keep the module alive when
	it shouldn't.

2007-04-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Make GetKerningPairsA not fail for fonts with SYMBOL charset.

	* dlls/kernel32/tests/locale.c:
	kernel32: Add GetCPInfo test.

2007-03-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use GL_APPLE_client_storage if available.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_APPLE_client_storage to our extension list.

2007-03-31  Dan Kegel <dank@kegel.com>

	* dlls/imagehlp/modify.c:
	imagehlp: BindImageEx stub should report success.

2007-03-31  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/path.c:
	gdi32: Add two basic tests to check what WidenPath does.

2007-03-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Some cleanup.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Reopen the main handle if needed.

2007-03-30  Felix Nawothnig <flexo@holycrap.org>

	* dlls/d3d8/tests/texture.c, dlls/d3d9/tests/texture.c,
	  dlls/wined3d/device.c:
	wined3d: Make CreateCubeTexture fail when not supported.

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Properly handle negative font widths.

2007-03-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Use a safe APC to kill the PullPin thread when the PullPin is being
	released.

	* dlls/quartz/filesource.c, dlls/quartz/pin.c:
	quartz: Set the sample time based on the number of bytes read before sending
	it downstream.

2007-03-30  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/parser.c:
	quartz: Remove errant parser output pins on input connection failure.

	* dlls/quartz/dsoundrender.c:
	quartz: Don't fill the dsound buffer with small amounts.

2007-03-30  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.34.

----------------------------------------------------------------
2007-03-30  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: Try to force the makefile to be rebuilt with non-GNU make too.

	* dlls/kernel32/cpu.c:
	kernel32: Better default for dwActiveProcessorMask in GetSystemInfo.

	* libs/wine/loader.c:
	libwine: Hack to work around the Solaris dlopen() brain damage.

	* dlls/kernel32/except.c:
	kernel32: Make default behavior more consistent when AeDebug key is not present.

2007-03-29  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/baseshader.c, dlls/wined3d/context.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Use GL_TEXTURE_2D for dummy textures.

2007-03-28  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/state.c:
	wined3d: Fix broken ERR() message.

	* dlls/wined3d/context.c, dlls/wined3d/state.c:
	wined3d: Only disable GL_TEXTURE_CUBE_MAP_ARB if supported.

2007-03-29  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/ntdll/ntdll.spec:
	ntdll: Add NtAreMappedFilesTheSame stub.

2007-03-29  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Add support for xcopy /A and /M (archive copies).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /P (Prompt).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /C (Continue if errors).
	Also fix one place error reporting was missing.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /H (Hidden/System).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /R (Replace read only files).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /U (target must exist).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /N (shortname copy).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for COPYCMD override and fix /-y.

	* programs/xcopy/xcopy.c:
	xcopy: Prompt when overwriting files, add /Y and /-Y support.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /T (no copy).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /W (pause).

2007-03-30  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Add filters using their names.

2007-03-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/listview.c:
	comctl32: Cast-qual warnings fix.

	* dlls/comctl32/monthcal.c:
	comctl32: Constify some variables.

2007-03-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if SetEntriesInAclW is implemented.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if ImpersonateSelf is implemented.

2007-03-29  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Implement support for projective textures in ps 2.0 and later.

2007-03-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if LookupAccountNameA is implemented.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Move check for ERROR_CALL_NOT_IMPLEMENTED to the first call.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Use skip.

2007-03-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/listview.c:
	comctl32: Constify some variables.

2007-03-28  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Fix text replacement with text limit.

2007-03-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Ignore failure to open current directory, it's broken on Mac OS X.

2007-03-29  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool.drv: Do not cache the port names.

2007-03-29  Alexander Farber <Alexander.Farber@nokia.com>

	* programs/cmd/wcmdmain.c:
	cmd: Enlarge max. length of PATH variable.

2007-03-29  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Delete the tile pixmap whenever the drawable is changed.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Rename a local variable to avoid confusion with a global.

2007-03-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/files.c,
	  dlls/msi/format.c, dlls/msi/helpers.c, dlls/msi/install.c,
	  dlls/msi/msipriv.h, dlls/msi/tests/install.c:
	msi: Load the folder property if available and requested.

2007-03-28  Jacek Caban <jacek@codeweavers.com>

	* include/winnt.h:
	winnt.h: Added activation context structures declarations.

	* dlls/mshtml/htmldoc.c:
	mshtml: Added DIID_DispHTMLDocument to QueryInterface.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added DispHTMLDocument dispinterface declaration.

2007-03-28  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: Change a couple DPRINTF's to TRACE's

2007-03-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c:
	ddraw: When changing the back buffers also update the render target.

2007-03-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/Makefile.in, dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c,
	  dlls/shlwapi/shlwapi.spec, dlls/shlwapi/shlwapi_main.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/thread.c:
	shlwapi: Match shlwapi wrappers to MSDN descriptions.

2007-03-26  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Change the default IME window to better reflect applications request.
	First part of this change was proposed by Byeong-Sik Jeon.
	Additionally respect parameters give to us by ImmSetCompositionWindow
	for placement of the composition window.

2007-03-28  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: SetLastError to ERROR_SUCCESS on success.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: Correct the Inf output position.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: The Inf file should be copied regardless of the destination buffer,
	with tests.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: Don't allow relative paths in SetupCopyOEMInf.

	* dlls/setupapi/misc.c:
	setupapi: Handle the SP_COPY_NOOVERWRITE flag.

2007-03-26  Marcin Grześkowiak <mgrzeskowiak@tlen.pl>

	* dlls/user32/text.c:
	user32: Use charset of currently selected font in DrawTextExA.

2007-03-27  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/state.c:
	wined3d: Print lastpixel state fixme only once.

2007-03-28  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/crypt.c, dlls/advapi32/tests/crypt_md5.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/mru.c,
	  dlls/crypt32/tests/crl.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/refcount.c, dlls/kernel32/tests/locale.c,
	  dlls/localspl/tests/localmon.c, dlls/msi/tests/db.c,
	  dlls/ntdll/tests/change.c, dlls/ntdll/tests/file.c,
	  dlls/ntdll/tests/om.c, dlls/ole32/tests/stg_prop.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/tests/shreg.c, dlls/shlwapi/tests/string.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/monitor.c,
	  dlls/user32/tests/resource.c:
	Remove unneeded checks on the GetModuleHandle() return value for cases where
	we are linked with the dll.

	* programs/cmd/directory.c:
	cmd: Spelling fix.

	* dlls/gdi32/path.c:
	gdi32: Remove a space before '\n' in a trace.

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Add a missing '\n' to a trace().

	* dlls/setupapi/misc.c:
	setupapi: Fix InstallCatalog()'s calling convention.

2007-03-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mpr/wnet.c, dlls/shell32/shellord.c, include/shlobj.h,
	  include/winnetwk.h:
	include: Add some API prototypes to appropriate header files, fix some
	prototypes.

2007-03-28  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fixing the using of the auth_len values the wrong way round - PKT_PRIVACY
	implies the packet will be encrypted, not just signed.

2007-03-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/classmoniker.c, dlls/ole32/compobj.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/moniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/tests/moniker.c:
	ole32: Implement MkParseDisplayName.

	* dlls/ole32/tests/moniker.c:
	ole32: Add some more tests for MkParseDisplayName.

	* dlls/ole32/tests/moniker.c:
	ole32: Display the testname for the test for display name in test_moniker.

	* dlls/ole32/tests/moniker.c:
	ole32: Do a case-insensitive comparison in the count_moniker_matches in the
	moniker tests as Win9x marshals an all upper-case file name for file monikers.

	* dlls/ole32/tests/marshal.c:
	ole32: Add tests for the standard marshaler's implementation of IClientSecurity.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Pass the OXID info to RPC_CreateClientChannel and use this to pass the
	server process ID to channel hooks.

2007-03-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Some parameter tests for GetPrivateProfileSectionA.

	* dlls/kernel32/profile.c:
	kernel32/profile: Add a few NULL checks (Coverity).

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Move GetPrivateProfileSectionA to its own test.

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Rename a test.

2007-03-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/ipaddress.c:
	comctl32: Constify some variables.

2007-03-27  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/mpegl3.c:
	winemp3: Clear stream buffers when the stream is reset.

	* dlls/quartz/dsoundrender.c:
	quartz: Protect DSound buffer creation with a critical section lock.

2007-03-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/init.c:
	gdi32: Make the EMF driver return sane NUMCOLORS value.

2007-03-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: TB_HIDEBUTTON and TB_MOVEBUTTON shouldn't force a recalc.

2007-03-22  Andrew Riedi <andrewriedi@gmail.com>

	* configure, configure.ac, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/x11drv.h,
	  include/config.h.in:
	winex11.drv: Add Xcursor support for 32 bit cursors.
	Based on patch by Henri Verbeet.

2007-03-27  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: More portable invocation of ctags/etags.

	* server/fd.c, server/file.c, server/file.h, server/named_pipe.c,
	  server/serial.c:
	server: Remove the return value of the flush() method, it's not used.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Add support for queuing a user APC upon async I/O completion.

2007-03-26  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/misc.c, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/misc.c:
	setupapi: Add several tests for SetupCopyOEMInf, with fixes so the tests
	don't crash.

	* include/setupapi.h:
	setupapi: Add missing SetupCopyOEMInf flags.

2007-03-26  Jacek Caban <jacek@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Code clean up.

2007-03-26  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/regsvr.c:
	ole32: Register the ProgID for the class and file monikers.

	* dlls/ole32/compobj.c, dlls/ole32/moniker.c, dlls/ole32/ole2.c:
	ole32: Move GetClassFile to moniker.c and move OleRun to ole2.c.

	* dlls/ole32/compobj.c:
	ole32: Add documentation for CoGetClassObject and GetClassFile.

	* dlls/ole32/bindctx.c, dlls/ole32/moniker.c:
	ole32: Add documentation for CreateBindCtx, BindMoniker, GetRunningObjectTable
	and OleRun.

	* dlls/ole32/usrmarshal.c:
	ole32: Handle NULL sub-objects correctly in the STGMEDIUM user marshaling
	functions so that no further data in marshaled or unmarshaled.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use the correct authorization trailer length using information from
	the security provider.
	Previously it was hardcoded to 16, so only the NTLM provider would work
	correctly.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Call CompleteAuthToken if InitializeSecurityContext returned a code
	that says it should be called.
	Currently, the only security provider that requires this is the Digest
	one, which we don't really care about, but is supported for completeness.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Call InitializeSecurityContext from only one function.
	This reduces the amount of code and ensures that the parameters passed
	to it stay the same, apart from the previous context and the output
	buffer description.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Retrieve the maximum token length from the security provider rather
	than using a hardcoded and rather small limit.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole32: Generate OXID_INFO in the stub manager.
	Copy the OXID_INFO from the stub manager, if available, in
	proxy_manager_construct. Otherwise, attempt to resolve it.
	Use ipidRemUnknown from OXID_INFO in the proxy manager instead of
	magically generating the IPID for RemUnknown.

	* dlls/ole32/dcom.idl:
	ole32: Add the OXID_INFO structure to dcom.idl.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Add a stubbed out implementation of IClientSecurity to the proxy manager.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h:
	rpcrt4: Make some parameters of non-exported functions const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement associations which are intermediary objects that track the
	relationship between the client and a given endpoint on the server.
	Use these to encapsulate the connection pool so that the lifetimes of
	connections are properly handled again.

2007-03-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/secur32.c, dlls/secur32/secur32_priv.h:
	secur32: Replace const pointer parameters with correct pointers to const.

	* loader/kthread.c:
	loader: Replace inline static with static inline.

	* include/wine/debug.h, include/wine/library.h, include/wine/list.h,
	  include/wine/server.h, libs/wine/config.c, libs/wine/loader.c,
	  libs/wine/utf8.c:
	winelib: Replace inline static with static inline.

	* dlls/comctl32/datetime.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c:
	comctl32: Constify some variables.

2007-03-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/parser.c:
	quartz: Return proper CLSID for parser filters.

2007-03-26  Piotr Caban <piotr.caban@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Set label width after editting.

2007-03-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* tools/wrc/translation.c:
	wrc: Change the format of the output of "wrc --verify-translation".

	* tools/wrc/translation.c:
	wrc: Add HTML resources support to wrc --verify-translation.

	* dlls/user32/combo.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/combo.c:
	user32: combobox: The text area height should be font_height+4.
	The tests shows that CBGetTextAreaHeight was using a bad formula.

2007-03-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/autocomplete.c:
	shell32: autocomplete: Don't use sel uninitialized.

2007-03-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Disable texture coordinate arrays on the correct unit.

2007-03-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement bem shader instruction.

2007-03-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Handle input modifiers in texcrd with arb shaders.

2007-03-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Don't use the reserved argument of the APC routine callback.

	* dlls/ntdll/file.c, dlls/ws2_32/socket.c, server/fd.c, server/serial.c,
	  server/sock.c:
	server: Always return STATUS_PENDING when an async I/O operation has been queued.

2007-03-25  Gabriel Gambetta <ggambett@adinet.com.uy>

	* dlls/ntdll/time.c:
	ntdll: Add Uruguayan Summer Time timezone.

2007-03-25  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Add -lXau to NASLIBS if applicable to obtain XauGetBestAuthByAddr
	and XauDisposeAuth.

2007-03-25  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: Fixes the order of GUID initialization and storage.

2007-03-24  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c:
	gdi32: WidenPath partial implementation.

2007-03-24  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Make NetGetUserInfo checks language independent.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserChangePassword.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserDel.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserAdd with a dummy user database.

	* dlls/netapi32/tests/access.c:
	netapi32/test: Test the username and password length limits.

2007-03-24  Piotr Caban <piotr.caban@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Fixed TreeView_EndEditLabelNow crash.

2007-03-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/gdi32.spec, include/wingdi.h:
	gdi32: Implement GdiGetCodePage.

2007-03-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/transform.c:
	quartz: Propogate transform filter errors upstream.

2007-03-25  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Store the current reference time with the PullPin.

	* dlls/quartz/dsoundrender.c:
	quartz: Implement volume and pan control for DSoundRenderer.

2007-03-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Make DSoundRender_Run start the playback buffer.

2007-03-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shell32_main.c:
	shell32: Add a stub implementation for SHPathPrepareForWrite{A, W}.

	* dlls/ntdll/sec.c:
	ntdll: Fully initialize the security descriptor returned from
	RtlSelfRelativeToAbsoluteSD.
	Debugged by Anastasius Focht.

	* dlls/mpr/wnet.c:
	mpr: Add a stub implementation for WNetGetUniversalNameA.

	* dlls/mpr/wnet.c:
	mpr: Fix buffer size calculation in WNetGetUniversalNameW.

2007-03-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/varformat.c:
	oleaut32/tests: Use skip.

2007-03-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/path.c:
	shlwapi/path: Proper use of GetProcessHeap().

2007-03-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Replace inline static with static inline.

	* dlls/winmm/driver.c, dlls/winmm/mci.c:
	winmm: Replace inline static with static inline.

	* dlls/wininet/internet.h:
	wininet: Replace inline static with static inline.

	* dlls/wintab32/context.c:
	wintab32: Replace inline static with static inline.

	* dlls/shlwapi/clist.c, dlls/shlwapi/string.c:
	shlwapi: Replace inline static with static inline.

	* include/vfw.h, include/win.h, include/wincon.h, include/winsock.h,
	  include/winternl.h:
	include: Replace inline static with static inline.

2007-03-23  Alexandre Julliard <julliard@winehq.org>

	* server/named_pipe.c:
	server: A named pipe wait can be satisfied by an idle pipe server too.

	* dlls/ntdll/file.c:
	ntdll: Avoid overwriting the result of the async I/O callback in NtFsControlFile.

	* dlls/kernel32/sync.c:
	kernel32: Fixed timeout calculation in WaitNamedPipe.

2007-03-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: Constify some variables.

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Constify some variables.

2007-03-22  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub for AttachConsole.

2007-03-23  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/netapi32/tests/access.c, dlls/netapi32/tests/apibuf.c,
	  dlls/netapi32/tests/ds.c, dlls/netapi32/tests/wksta.c:
	netapi32/tests: Use LoadLibrary where needed and skip.

2007-03-22  Fabian Bieler <der.fabe@gmx.net>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Add test for texbem instruction.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Fix arb texbem instruction for projective textures.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix glsl texbem instruction for projective textures.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Implemented bump map transform for texbem in GLSL with native signed
	textures.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Add test for fog with shader.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c:
	wined3d: Remove fog coordinate clamping in the vertex shader.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c:
	wined3d: Implement linear fog with pixel shader.

2007-03-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Replace inline static with static inline.

	* dlls/oleaut32/vartype.c:
	oleaut32: Replace inline static with static inline.

	* dlls/ole32/marshal.c:
	ole32: Replace inline static with static inline.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt/tests: Replace inline static with static inline.

	* dlls/shell32/shell32_main.h, dlls/shell32/shelllink.c:
	shell32: Replace inline static with static inline.

	* dlls/msi/msipriv.h:
	msi: Replace inline static with static inline.

2007-03-22  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/name_server.c:
	dplayx: Corrected the way nameserver initializes the sessiondesc structure on
	broadcast request reply.

2007-03-23  Alexandre Julliard <julliard@winehq.org>

	* server/trace.c:
	server: Print the callback function in the APC_ASYNC_IO trace.

2007-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the open_file method for named pipes.
	Get rid of the open_named_pipe request, we can now use a normal open_file_object.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/mailslot.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the open_file method for mailslots.
	Get rid of the open_mailslot request, we can now use a normal open_file_object.

	* dlls/ntdll/directory.c:
	ntdll: Better support for NT path names in wine_nt_to_unix_file_name.
	Don't map NT namespace 1:1 to Unix, add a magic \??\unix device instead.
	More generic support for \??\ devices, with fallback to the wineserver
	for paths that don't exist.

2007-03-22  Aric Stewart <aric@codeweavers.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c:
	Revert 7c35db07c35db0... msiexec: Use CommandLineToArgvW instead of process_args
	to reduce code duplication.
	The previous command line processing is not identical to
	CommandLineToArgvW and CommandLineToArgvW breaks msi command line
	processing for things such as Excel Viewer 2003.
	Specifically the command line created by the Excel Viewer 2003 and
	passed to msiexec.exe is "c:\windows\system32\msiexec.exe" /I
	C:\windows\temp\IXP000.TMP\XLVIEW.MSI CDCACHE="2"
	LAUNCHEDFROMSETUP="1" SETUPEXEPATH="C:\windows\temp\IXP000.TMP\"
	SETUPEXENAME="SETUP.EXE" /lpiwaeo "C:\windows\temp\Microsoft Office
	Excel Viewer 2003 Setup(0001)_Task(0001).txt" CDCACH"...

2007-03-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Split unicode and ansi window procs, handle messages depending on
	the unicode flag.
	Add a hack for WM_GETTEXT in RichEdit20W class when running in win9x emulation
	mode.

	* dlls/user32/winproc.c:
	user32: WM_GETTEXT message converters have to 0-terminate output buffer if
	there is enough space even if there is no text to convert.

2007-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/mailslot.c:
	server: Don't enforce mailslots path format in ntdll, only in the server.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Don't enforce named pipes path format in ntdll, only in the server.

	* server/directory.c:
	server: Create the named pipe and mailslot devices under \Device.
	Add appropriate symlinks to them in the \?? directory.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/fd.c,
	  server/mailslot.c, server/named_pipe.c, server/protocol.def,
	  server/trace.c:
	server: Implemented the open_file method for named pipe and mailslot devices.

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/console.c, server/debugger.c, server/directory.c,
	  server/event.c, server/fd.c, server/file.c, server/handle.c,
	  server/hook.c, server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/semaphore.c, server/serial.c,
	  server/signal.c, server/snapshot.c, server/sock.c, server/symlink.c,
	  server/thread.c, server/timer.c, server/token.c, server/winstation.c:
	server: Add an open_file() function to the object operations.

2007-03-19  Juan Lang <juan_lang@yahoo.com>

	* tools/wine.inf:
	wine.inf: Move fake rundll32 to the system directory.

2007-03-22  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define avi resource #163.

	* dlls/kernel32/actctx.c:
	kernel32: Print a fixme only once.

2007-03-22  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: WSASendTo should always re-enable the FD_WRITE event.

2007-03-21  Ken Thomases <ken@codeweavers.com>

	* dlls/gdi32/freetype.c:
	Revert "gdi32: Disable the freetype mmap sharing on Mac OS.".
	This reverts ae9f68dec91cd6ac66a99dc62d69dc53eaf910d0 commit.  Because
	of commit 4e6860433e72714ed1e500eb523710656e71ba02 which extracts the
	constituent fonts from Mac suitcase fonts, we can use mmap on font
	files on the Mac.

2007-03-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/comboex.c:
	comctl32: Constify some variables.

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Replace inline static with static inline.

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Replace inline static with static inline.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Replace inline static with static inline.

2007-03-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c:
	wininet/ftp: Fix potential memory leak.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded check.

2007-03-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: General signed format correction without native signed formats.
	Implement signed d3d formats for D3DFMT_V8U8 and D3DFMT_Q8W8V8U8 if no
	suitable opengl signed format is supported.

2007-03-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Store the pixel format in the texture.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: Support GL_ATI_envmap_bumpmap for D3DFMT_V8U8.

2007-03-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_ATI_envmap_bumpmap to our gl extension header.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/symbol.c:
	dbghelp: Replace inline static with static inline.

2007-03-21  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: Check for null pointer dereference in DP_FindPlayer.

2007-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/bitmap.c:
	winex11.drv: Relax the bitmap depth check in CreateBitmap to accept some
	compatible formats.

2007-03-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/tests/editor.c:
	riched20: Add a test that shows that under Win9x RichEdit20W windows are not
	unicode, but always expect to see unicode input.

2007-03-21  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj.spec, dlls/ole32/ole16.c:
	ole32: The 16-bit version of CoDisconnectObject is not compatible with the
	32-bit version, so create a separate stub for the former.

	* tools/winedump/output.c:
	winedump: Fix the output for Makefile.in with respect to the dependencies line
	to match that required by the build system.

	* dlls/atl/registrar.c:
	atl: Add support for the registrar parameter of
	AtlModuleUpdateRegistryFromResourceD.

	* dlls/atl/registrar.c:
	atl: Add support for the pMapEntries parameter to
	AtlModuleUpdateRegistryFromResourceD.

2007-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, include/wine/server_protocol.h, server/change.c,
	  server/protocol.def, server/trace.c:
	server: Use a standard async I/O event to signal directory changes.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Move the signalling of the named pipe completion event to the server.

	* dlls/ws2_32/socket.c:
	ws2_32: Move the signalling of the completion event to the server.

	* dlls/ntdll/file.c:
	server: Move the signalling of the completion event for NtRead/WriteFile to
	the server.

	* server/async.c, server/file.h, server/thread.c:
	server: Notify the async object when the APC call completed.

	* include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Add support for storing an event to signal upon async I/O completion.

	* dlls/setupapi/parser.c:
	setupapi: Add support for .inf files in utf-8 format.

2007-03-21  Vitaly Budovski <vbudovski@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Check for float texture formats correctly.
	Move the checks for float texture formats into the correct location.
	This allows some Direct3D sample applications which check for any of
	the float formats together with D3DUSAGE_RENDERTARGET to start.

2007-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Move the storage signatures to the appropriate file that uses them.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/animate.c:
	comctl32: Constify some variables.

2007-03-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: We shouldn't try to resize standard bitmaps.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test standard buttons size.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: The default button size is 16x16.

2007-03-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Fully disconnect the AsyncReader when released.

2007-03-20  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/context.c:
	wined3d: Ensure all states affected by a change in render_offscreen are marked
	dirty in ActivateContext.

2007-03-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/gdiobj.c, dlls/gdi32/region.c:
	gdi32: Replace inline static with static inline.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/parser.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi_private.h:
	setupapi: Replace inline static with static inline.

2007-03-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Replace inline static with static inline.

2007-03-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/waveparser.c:
	quartz: Don't redundantly set waveparser output pin data before it's created.

2007-03-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Expose a problem with FtpGetFile.

	* dlls/wininet/ftp.c:
	wininet/ftp: Move a definition in FTP_FtpFindFirstFileW (Coverity).

	* dlls/wininet/ftp.c:
	wininet/ftp: Simplify FTP_FtpGetFileW a bit.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Use skip.

2007-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/change.c,
	  server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/protocol.def, server/serial.c, server/sock.c, server/trace.c,
	  tools/make_requests:
	server: Add an async_data_t structure to store parameters for async I/O requests.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c:
	server: Return the status from an async I/O APC call to the server.

	* server/Makefile.in, server/async.c, server/fd.c, server/file.h:
	server: Make struct async into a real object, to keep it around while the APC
	is running.

	* server/thread.c:
	server: Grab the owner object of an APC while the APC is executing.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/trace.c:
	server: Use the common pattern for async I/O parameters in named pipe requests.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c:
	msvcrt: Replace inline static with static inline.

	* dlls/dsound/dsound_main.c:
	dsound: Replace inline static with static inline.

	* dlls/ddraw/main.c:
	ddraw: Replace inline static with static inline.

2007-03-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix copy+paste bug.

2007-03-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/quartz/filtergraph.c:
	quartz: Fix typo that produced an empty if-statement.

2007-03-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Don't delete critical sections before the filter's pins are done
	using them.

2007-03-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/class.c:
	user32: Avoid compiler specific code in the DefWindowProc test.

2007-03-19  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c, include/lmaccess.h:
	netapi32: Add test for adding/deleting users.

2007-03-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test for StgStreamImpl_SetSize with a non-zero HighPart for
	the size.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Clear the input pvar structure in VARIANT_UserUnmarshal to free the
	data instead of just initializing.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Make the VARIANT_UserUnmarshal tests work on XP.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Add some tests for user marshaling a VT_UNKNOWN variant.

	* include/rpcndr.h:
	include: Fix the byte-order in the definition of the USER_MARSHAL_CB_SIGNATURE
	macro.

	* dlls/ole32/usrmarshal.c:
	ole32: Implement TYMED_FILE for STGMEDIUM marshaling and unmarshaling.

	* dlls/ole32/stg_stream.c:
	ole32: Add warnings for failures in the structured storage stream functions.

2007-03-19  Jacek Caban <jacek@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Register Spooler service.

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/spoolsv/Makefile.in, programs/spoolsv/main.c:
	spoolsv: Added spoolsv.exe.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi: Improve SetEntriesInAclW stub.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi: Constify argument of StartServiceCtrlDispatcher[AW] functions.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Added RevertToPrinterSelf stub implementation.

2007-03-19  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: In some cases send should block until the entire buffer is sent.

2007-03-16  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Rework storage with blockfiles to properly use ILockBytes interfaces.
	Rework storage to make all its interactions with the underlying data go
	though ReadAt and WriteAt to allow for an ILockBytes underlying layer.
	Implement ReadAt and WriteAt in stg_bigblockfile.c for blockfiles.

2007-03-06  Jason Edmeades <us@edmeades.me.uk>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/xcopy/Makefile.in, programs/xcopy/xcopy.c:
	Basic implementation of xcopy.

2007-03-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Open the default Xcv-channel only once.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Rename hXcv for special tests.

2007-03-18  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Only write 'bytes free' message if a file was displayed during dir.

	* programs/cmd/directory.c:
	cmd.exe: Add errorlevel support for DIR command.

	* programs/cmd/directory.c:
	cmd.exe: Add support for dir /A filtering.

	* programs/cmd/directory.c:
	cmd.exe: Add support for DIRCMD and sequential qualifier processing.

	* programs/cmd/directory.c:
	cmd.exe: Add support for dir /-C.

	* programs/cmd/directory.c:
	cmd.exe: Add support for DIR /D.

2007-03-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Add stub implementations for {Register, Unregister}GPNotification.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Add a stub implementation for InstallCatalog.

	* tools/wine.inf:
	wine.inf: Add cabinet.dll to the list of fake dlls.

2007-03-19  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Use skip when skipping tests.

	* dlls/netapi32/ds.c, dlls/netapi32/wksta.c:
	netapi32: Downgrade more ERRs to TRACEs.

	* dlls/netapi32/access.c, dlls/netapi32/local_group.c,
	  dlls/netapi32/netapi32_misc.h:
	netapi32: Remove another macro, replace by more readable functions.

2007-03-18  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/access.c:
	netapi32: Downgrade another WARN and ERR to a TRACE.

	* dlls/netapi32/access.c:
	netapi32: Get rid of an ugly macro definition only used once.

	* dlls/netapi32/access.c:
	netapi32: fix a comment.

2007-03-18  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Reject invalid flags in DTM_SETSYSTEMTIME.
	Reject invalid flags in DTM_SETSYSTEMTIME i.e. when the flag is neither
	GDT_VALID nor GDT_NONE when the style is set to DTS_SHOWNONE.  Corresponding
	setters and message sequence tests were also added.

2007-03-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c:
	comctl32: CreateToolbarEx should send TB_SETBITMAPSIZE twice.

2007-03-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c:
	user32: tests: Using DefWindowProcA with RegisterClassW works under Windows.

	* include/shellapi.h:
	shell32: Add some more notify icon defines.

	* dlls/shell32/systray.c:
	shell32: Don't free user supplied data in Shell_NotifyIcon if GetIconInfo failed.
	We should free the nid and in such a case we were doing it.

	* dlls/shell32/systray.c, include/shellapi.h, programs/explorer/systray.c:
	shell32/explorer: Support different structure sizes in Shell_NotifyIcon.

2007-03-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/browseui/tests/autocomplete.c:
	browseui: Remove a test with a wrong pointer.

2007-03-14  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Release objects when they're no longer needed.

	* dlls/quartz/filtergraph.c:
	quartz: Disconnect pins when their filter is removed.

	* dlls/quartz/pin.c:
	quartz: Release objects when pins fail to connect.

	* dlls/quartz/pin.c:
	quartz: Hold a reference on a filter while sending data to it.

2007-03-18  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/access.c:
	netapi32: Downgrade a FIXME and an ERR to a trace to not clutter test output
	on handled error conditions.

2007-03-17  A C Hurst <A.Hurst@sheffield.ac.uk>

	* dlls/ddraw/device.c:
	wined3d: Fix struct size calculation in EnumTextureFormats.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store an array of contexts in the swapchain.
	This is a preparation for using multiple contexts on one drawable to
	handle multithreading.

2007-03-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Activate a context before doing opengl calls.

2007-03-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some old stuff.

	* dlls/wined3d/state.c:
	wined3d: Fix client gl unit selection.
	I forgot that when re-enabling register combiners during the state
	management rewrite.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/directx.c, dlls/d3d9/directx.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private_types.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d.

2007-03-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/except.c:
	msvcrt: Print FIXME on platforms where _except_handler3 is a stub.

	* dlls/gdi32/freetype.c, dlls/winex11.drv/xrender.c:
	winex11.drv: In the case requested glyphs do not present in the font fail
	gracefully instead of asserting.

2007-03-17  Hagop Hagopian <shaitani@gmail.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: tab: Minor bug fixes in the curSel and curFocus getters and setters.

	* dlls/comctl32/tests/tab.c:
	comctl32: tab: Added message sequence tests for the tab control.

2007-03-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Remove unnecessary pointers in fstab parsing on Solaris.

	* dlls/wldap32/option.c, dlls/wldap32/winldap_private.h:
	wldap32: Prefix option defines with WLDAP32 to avoid conflicts with system
	headers.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Avoid some warnings on Solaris.

2007-03-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/afm.c, dlls/wineps.drv/afm2c.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/builtin.c,
	  dlls/wineps.drv/glyphlist.c, dlls/wineps.drv/mkagl.c,
	  dlls/wineps.drv/truetype.c, dlls/wineps.drv/type1afm.c:
	wineps.drv: Replace inline static with static inline.

	* tools/winebuild/import.c, tools/winebuild/parser.c,
	  tools/winebuild/res16.c, tools/winebuild/res32.c:
	winebuild: Replace inline static with static inline.

	* server/fd.c, server/file.h, server/handle.c, server/hook.c,
	  server/mapping.c, server/process.h, server/ptrace.c, server/queue.c,
	  server/registry.c, server/request.h, server/sock.c, server/thread.c,
	  server/trace.c, server/user.c, server/window.c, server/winstation.c:
	server: Replace inline static with static inline.

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/keyboard.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xfont.c:
	winex11.drv: Replace inline static with static inline.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Replace inline static with static inline.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/driver16.c,
	  dlls/user32/hook.c, dlls/user32/hook16.c, dlls/user32/listbox.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/scroll.c,
	  dlls/user32/spy.c, dlls/user32/sysparams.c, dlls/user32/winproc.c,
	  dlls/user32/wnd16.c:
	user32: Replace inline static with static inline.

	* dlls/ntdll/critsection.c, dlls/ntdll/loader.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/threadpool.c:
	ntdll: Replace inline static with static inline.

	* dlls/kernel32/computername.c, dlls/kernel32/except.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c, dlls/kernel32/locale.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/path.c,
	  dlls/kernel32/process.c, dlls/kernel32/relay16.c,
	  dlls/kernel32/selector.c, dlls/kernel32/sync.c,
	  dlls/kernel32/thunk.c:
	kernel32: Replace inline static with static inline.

	* dlls/advapi32/registry.c:
	advapi32: Replace inline static with static inline.

	* dlls/comctl32/comboex.c, dlls/comctl32/header.c, dlls/comctl32/hotkey.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Replace inline static with static inline.

2007-03-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comcat/information.c, dlls/comcat/register.c:
	comcat: Declare some variables static and const.

2007-03-16  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/gdi32/mfdrv/init.c:
	gdi32: Don't write a metafile record for escapes that require output.

2007-03-17  Joris Huizer <joris_huizer@yahoo.com>

	* dlls/advpack/reg.c:
	advpack: sign-compare fix.

	* dlls/amstream/amstream.c, dlls/amstream/main.c:
	amstream: sign-compare fixes.

2007-03-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: DuplicateTokenEx is not present on all platforms.

	* dlls/kernel32/tests/pipe.c:
	kernel32/tests: DuplicateTokenEx is not present on all platforms.

2007-03-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/advapi32/registry.c:
	advapi32: Implement RegGetKeySecurity with NtQuerySecurityObject.

2007-03-12  Erich Hoover <ehoover@mediaserver>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/surface.c:
	wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*.

2007-03-16  Huw Davies <huw@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Use a window's icon in preference to its class icon.

2007-03-16  Detlef Riekenberg <wine.dev@web.de>

	* libs/wine/config.c:
	libs/wine: Use xstrdup to avoid duplicate code.

2007-03-16  Hans Leidekker <hans@it.vu.nl>

	* tools/wine.inf:
	wine.inf: Open/print .rtf files with wordpad.

	* tools/wine.inf:
	wine.inf: Register an 'install' verb with the shell for .inf files.

2007-03-16  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.33.

----------------------------------------------------------------
2007-03-16  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/wcmdmain.c:
	cmd: Fix a compiler warning.

2007-03-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/netapi32/tests/ds.c:
	netapi32/tests: Use GetModuleHandle and skip.

2007-03-16  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winemine/Ro.rc, programs/winemine/rsrc.rc:
	winemine: Add Romanian translation.

2007-03-15  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/trackbar.c, dlls/comctl32/trackbar.c:
	comctl32: trackbar: Return the correct number of tics for TBM_GETNUMTICS.

	* dlls/comctl32/tests/trackbar.c, dlls/comctl32/trackbar.c:
	comctl32: trackbar: Correctly set lSetMin and lSelMax.
	Modify the behavior when the messages TBM_SETSEL, TBM_SETSELSTART, and
	TBM_SETSELEND are sent and TBS_ENABLESELRANGE is not set.  When the
	style TBS_ENABLESELRANGE is not set, Windows observed behavior is to
	set the Selection Start and End values to 0, rather than leave them
	unchanged.

2007-03-16  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: Correct the return value in MCM_SETFIRSTDAYOFWEEK.

2007-03-15  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: DirectPlay should keep track of the user count.

2007-03-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c:
	comctl32: datetime: Test for out of range dates in DTM_SETSYSTEMTIME only
	when flag=GDT_VALID.

2007-03-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Add a comment, why we do not implement AddPort for XcvDataPort.

2007-03-15  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Use elf load_offset passed to dwarf2_parse to relocate addresses.
	This is needed, because symbol addresses in dwarf2 debug info are already
	relocated.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix up load_offset to work in case the load offset is different for
	real binary and debug link file.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Initialize the elf_section_map in case of failures in elf_find_section.
	Make sidx signed so sidx < 0 comparisons work.
	(most of the patch written by Eric Pouech)

2007-03-16  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal message sequence test cases.

2007-03-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: RegQueryValueW is not always implemented.

2007-03-16  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix a failing test on Windows caused by the existence of one SID
	that always has no associated account.

	* dlls/kernel32/tests/environ.c:
	kernel32: Fix several failing GetComputerNameA/W tests on Windows.

2007-03-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/surface.c:
	d3d9: Add a LockRect test for DXTn formats.

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a cubemap wrapping test.

2007-03-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Check for Xcv-API only once.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_AddPort.

2007-03-15  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: trackbar: Test message sequences.

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: trackbar: Reorganize the getter and setter tests into functions.

2007-03-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/cabinet/fdi.c:
	cabinet: Simplify code in fdi_decomp().

2007-03-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Return 1 in DTM_SETFORMAT when successful.

2007-03-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Restore erroneously removed chunk of code.

2007-03-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove no longer needed check for libsane.

2007-03-15  Fabian Bieler <der.fabe@gmx.net>

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: always report at least 1 byte of virtual memory
	even if none is available.

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: return the size of physical memory + swapsize
	in ullTotalPageFile/ullAvailPageFile.

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: memory usage reported only reflects physical
	memory.

2007-03-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Add a GetTextMetrics test, make it pass under Wine.

2007-03-15  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/msvcrt/tests/data.c:
	msvcrt: Remove unused variable.

2007-03-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c, dlls/cabinet/fci.c,
	  dlls/cabinet/fdi.c:
	cabinet: Constify some variables.

2007-03-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/state.c:
	direct3d: Add a fixed function fog test.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Blitting to offscreen target.
	Fix the NULL deref that occured when blitting to offscreen targets and
	select the proper gl drawing buffer instead.

2007-03-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/commctrl.c:
	comctl32: Register all the controls in DllMain.

2007-03-14  Jeremy White <jwhite@codeweavers.com>

	* configure, configure.ac, dlls/sane.ds/Makefile.in,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/sane_i.h, dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  include/config.h.in:
	sane.ds: Dynamically load libsane.so.
	This change was triggered because of a bug in libsane-hpaio.so, namely
	that it relies on libsane.so being dlopen'd RTLD_GLOBAL so that
	sanei_init_debug can be resolved.

2007-03-14  Ken Thomases <ken@codeweavers.com>

	* dlls/shell32/clipboard.c:
	shell32: Avoid W->A conversion in RenderHDROP.

2007-03-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/base64.c:
	crypt32/tests: No need to check return value of GetModuleHandle.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: No need to check return value of GetModuleHandle.

2007-03-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Rewrote SymEnumerateModules with Unicode basis, and implemented
	SymEnumerateModulesW64.

2007-03-13  Leslie Choong <septikus@gmail.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Added message sequencing tests.

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Expect macro and spelling errors.

2007-03-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/cmd/Ko.rc:
	cmd: Updated Korean Resource.

2007-03-14  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Print the contents of the IID input to OleLoad.

	* dlls/user32/tests/msg.c:
	user32: Add several more MsgWaitForMultipleObjects tests and split them out
	from the main message tests.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Unmarshal NULL OLE interfaces properly by handling the case of a 0
	stream size.

	* include/objbase.h:
	include: Add a definition for REGCLS_SURROGATE and add declarations for
	CoRegisterSurrogate and CoGetObjectContext.

2007-03-14  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/profile.c, dlls/kernel32/tests/profile.c:
	kernel32: Fix GetPrivateProfileSectionNamesA when the file does not exist.

2007-03-14  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/driver.c:
	wineps.drv: Values for DC_MINEXTENT and DC_MAXEXTENT are returned, not placed
	in the data pointer.

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/casemap.c, libs/wine/compose.c, libs/wine/wctype.c:
	libwine: Update the Unicode tables to version 5.0.1 of the standard.

	* libs/wine/utf8.c:
	libwine: Added support for Unicode surrogates in utf-8 conversions.
	Also make the conversions more strict against invalid input data.

	* dlls/kernel32/locale.c, dlls/ntdll/rtlstr.c, include/wine/unicode.h,
	  libs/wine/utf8.c, tools/wrc/utils.c:
	libwine: Pass flags to wine_utf8_wcstombs to allow supporting
	WC_ERR_INVALID_CHARS.

	* include/winnls.h:
	winnls.h: Added some defines for Unicode surrogates.

	* dlls/ntdll/thread.c:
	ntdll: Fixed typo in previous patch, spotted by Ken Thomases.

2007-03-12  Erich Hoover <ehoover@mines.edu>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow SetCursorProperties on existing cursor.

2007-03-12  Kanit Therdsteerasukdi <therdste@cs.ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Reject out of range dates in DTM_SETSYSTEMTIME.

2007-03-12  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/winex11.drv/dib_convert.c:
	winex11.drv: Small spelling fix.

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c:
	ntdll: Add a wrapper to call the thread entry point for broken apps.

	* dlls/msvcrt/data.c, dlls/msvcrt/tests/data.c:
	msvcrt: _initterm doesn't return anything.

2007-03-14  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/drawprim.c:
	wined3d: Remove space before '\n' in trace.

	* dlls/comctl32/tests/listview.c, dlls/comctl32/tests/tab.c:
	comctl32/tests: Add missing '\n's in ok() calls.

2007-03-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h:
	avifil32: Constify some variables.

2007-03-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /O ordering support.

	* programs/cmd/directory.c:
	cmd.exe: Add dir /X support (sort of...).

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Fixed some exception codes and parameters.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Mask reserved bits before testing dr7.
	Also some spelling fixes.

	* dlls/ntdll/signal_i386.c:
	ntdll: Changed some Solaris defines so that we can access the signal error code.

2007-03-12  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/treeview.c:
	comctl32: Fix visual glitches with TVS_HASLINES.

	* dlls/comctl32/tab.c:
	comctl32: Layout and redraw on TCM_SETIMAGELIST.

	* dlls/gdi32/tests/pen.c:
	gdi32: Add PS_ALTERNATE tests.

2007-03-12  George Gov <ggov@ucla.edu>

	* dlls/comctl32/tests/listview.c:
	comctl32: Add some listview message tests.

2007-03-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/memallocator.c:
	quartz: Avoid asserting from used samples on allocator release.

	* dlls/quartz/dsoundrender.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Force disconnect when a filter is fully released.

	* dlls/quartz/acmwrapper.c:
	quartz: Cleanup properly around error conditions and avoid a potential
	infinite loop.

2007-03-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Pl.rc:
	localspl: Add Polish translation.

	* programs/wordpad/Pl.rc:
	wordpad: Update Polish translation.

	* dlls/comctl32/listview.c:
	comctl32: listview: Compute the state icon rect in GetItemMetrics.

2007-03-13  Alexandre Julliard <julliard@winehq.org>

	* programs/oleview/typelib.c:
	oleview: Use standard APIs in SaveIdl and avoid overflows.

2007-03-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/driver.c:
	wineps.drv: Check for correct value for end of list.

2007-03-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt_sha.c:
	advapi32/tests: Use GetModuleHandle and skip.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: Use GetModuleHandle and skip.

	* dlls/crypt32/tests/base64.c:
	crypt32/tests: Use GetModuleHandle and skip.

2007-03-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/pe_module.c:
	dbghelp: Renamed pe_load_module (resp pe_load_module_from_pcs)
	to pe_load_native_module (resp pe_load_builtin_module) to better describe
	what those functions actually do.

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Added a few more forward definitions to dbghelp.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Get rid of module_name in all traces (using Unicode flavor).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c:
	dbghelp: Cleanups for module loading (lookups on module name and image name
	are two different things)
	- split up module_find_by_name in two different functions:
	+ reused module_find_by_name which looks upon the module name
	+ added module_is_already_loaded which looks upon the image name
	- cleanup module loading using these functions (removed extra parameter
	to pe_load_module_from_pcs)

	* dlls/dbghelp/module.c:
	dbghelp: Rewrote module_is_elf_container_loaded so that it no longer
	uses the stored ModuleName (that the dbghelp's caller can override) but rather a
	combination of base address and filename for the module.

	* dlls/dbghelp/module.c:
	dbghelp: Added helper to get the basename + extension from full filename.

2007-03-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Added test of URLs with trailing slash.

	* dlls/itss/protocol.c:
	itss: Use object_name in FindMimeFromData.

	* dlls/itss/protocol.c:
	itss: Ignore trailing slash in ITSProtocol::Start.

	* dlls/itss/storage.c:
	itss: Ignore trailing slash in IStorage::OpenStream.

2007-03-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/credui/credui.rc, dlls/credui/credui_Pl.rc:
	credui: Add Polish translation.

	* dlls/credui/credui.rc, dlls/credui/credui_En.rc:
	credui: Move language-dependent resources to credui_En.rc.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* programs/start/Pl.rc, programs/start/rsrc.rc:
	start: Add Polish translation.

	* programs/cmd/Pl.rc:
	cmd: Update Polish translation.

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Fix Korean resource name.

	* dlls/kernel32/nls/winerr_kor.mc:
	kernel32: Fix LANGID for Korean resource.

2007-03-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: OleCreate isn't a semi-stub any more, as it is tested in a range of
	cases and has no todos.

	* dlls/ole32/ole2.c:
	ole32: OleCreate shouldn't pass CLSCTX_LOCAL_SERVER to CoCreateInstance.

	* dlls/ole32/bindctx.c:
	ole32: Don't allocate an initial table for bind contexts.
	Most users of bind contexts don't use bound objects or object params, so
	don't create an initial table. Instead, create it on demand and use an
	exponential algorithm for increasing the size of the table when full.

	* include/wincred.h:
	include: Add credential serialisation APIs to wincred.h.

2007-03-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/internet.c:
	wininet: Fix buffer size calculation in INTERNET_InternetOpenUrlW.
	Spotted by Ron Yorston.

	* dlls/mscms/mscms_priv.h:
	mscms: Fix compilation with the latest lcms header.

2007-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c:
	msvcrt: Improved _local_unwind2 implementation.
	Thanks to Dmitry Timoshkov for a test case.

2007-03-12  Stefan Huehner <stefan@huehner.org>

	* dlls/browseui/tests/autocomplete.c, dlls/comctl32/tests/datetime.c,
	  dlls/kernel32/tests/resource.c, dlls/msxml3/tests/schema.c,
	  dlls/ntdll/tests/om.c, dlls/opengl32/wgl.c, dlls/shell32/clipboard.c,
	  dlls/user32/tests/win.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wineesd.drv/audio.c, dlls/winex11.drv/opengl.c,
	  dlls/winspool.drv/info.c, programs/cmd/builtins.c,
	  programs/oleview/details.c, programs/oleview/interface.c,
	  programs/oleview/oleview.c, programs/oleview/pane.c,
	  programs/oleview/tree.c, programs/oleview/typelib.c,
	  programs/regedit/childwnd.c, tools/widl/header.c:
	Mark several functions as static.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Test the rebar style for RBBS_VARIABLEHEIGHT, not the passed
	in structure.

2007-03-11  Shanren Zhou <shanren@ucla.edu>

	* dlls/comctl32/tests/header.c:
	comctl32: Added header message sequence test cases.

	* dlls/comctl32/tests/header.c:
	comctl32: Header message sequence test cases.
	Added separate parent and child header controls for each test case and
	fixed a typo ('Data Modified' should be 'Date Modified').

2007-03-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/loader.c:
	ntdll: Catch the exceptions in the TLS callback like Windows does.

2007-03-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/main.c:
	crypt32: Set ppSignerSig to NULL in case caller doesn't check return value.

	* dlls/user32/sysparams.c:
	user32: Fix a comment.

2007-03-13  András Kovács <andras@debian.sth.sze.hu>

	* dlls/wined3d/directx.c:
	wined3d: Set WINED3DCAPS2_DYNAMICTEXTURES flag.

2007-03-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /X support.

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /T support.

	* programs/cmd/directory.c:
	cmd.exe: Add dir /L support.

	* programs/cmd/builtins.c:
	cmd.exe: Make SET have correct errorlevel.

	* programs/cmd/builtins.c:
	cmd.exe: Add SET /P support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add 2>&1 and 1>&2 support.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add TYPE multiple file support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add support for stderr redirection to a file.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Save initial working directory.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for FTYPE.

2007-03-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Remove some redundant code in IWineD3DVertexBufferImpl_FindDecl().

	* dlls/wined3d/state.c:
	wined3d: Remove a redundant check in handleStreams().

	* dlls/wined3d/state.c:
	wined3d: Remove some redundant checks in the vertexdeclaration() state handler.

	* dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/state.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Disable vertex shaders when transformed vertices are used.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove FVF related fields from IWineD3DVertexDeclaration.

	* dlls/wined3d/drawprim.c:
	wined3d: 11 space indent is ugly.

	* dlls/wined3d/state.c, dlls/wined3d/stateblock.c:
	wined3d: Correct various texture limits checks.

2007-03-12  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/registry.c:
	advapi32: RegGetKeySecurity needs to pass length of struct to caller.

2007-03-12  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Only retrieve posted and paint messages in an STA message loop.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Tests that show that the allocation rules for unmarshaling a conformant
	array are the same as those for a simple structure.

2007-03-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c, dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Constify some variables.

	* dlls/advapi32/security.c:
	advapi32: Explicitly initialize nested array element.

2007-03-12  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/utils.c:
	wined3d: Implemented signed texture formats via NV_TEXTURE_SHADER.

2007-03-10  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Set wrapmode for cubemags to clamp regardless of the sampler state.

2007-03-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, server/mach.c:
	Fixed some compilation issues on Mac OS X Leopard.

2007-03-10  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Height of rectangle is bottom - top, not vice versa.

2007-03-11  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/ole32/moniker.c, dlls/ole32/stg_prop.c:
	ole32: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

2007-03-10  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winenas.drv/audio.c:
	winenas.drv: Add DebugInfo to critical sections.

	* dlls/dmloader/loader.c:
	dmloader: Add DebugInfo to critical sections.

	* dlls/winmm/winmm.c:
	winmm: Add DebugInfo to critical sections.

	* dlls/winearts.drv/audio.c:
	winearts.drv: Add DebugInfo to critical sections.

	* dlls/wineoss.drv/audio.c:
	wineoss.drv: Add DebugInfo to critical sections.

	* dlls/wineaudioio.drv/audio.c:
	wineaudioio.drv: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

	* dlls/wineesd.drv/audio.c:
	wineesd.drv: Add DebugInfo to critical sections.

	* dlls/winex11.drv/dib.c:
	winex11.drv: Add DebugInfo to critical sections.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c:
	dsound: Conform critical section DebugInfo names.

	* dlls/winealsa.drv/alsa.c:
	winealsa.drv: Conform critical section DebugInfo names.

	* dlls/rsaenh/handle.c:
	rsaenh: Add DebugInfo to critical sections.

	* dlls/urlmon/binding.c:
	urlmon: Add DebugInfo to critical sections.

	* dlls/wintab32/wintab32.c:
	wintab32: Add DebugInfo to critical sections.

	* dlls/secur32/secur32.c:
	secur32: Add DebugInfo to critical sections.

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/memallocator.c,
	  dlls/quartz/parser.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

	* dlls/qcap/capturegraph.c, dlls/qcap/v4l.c, dlls/qcap/vfwcapture.c:
	qcap: Add DebugInfo to critical sections.

	* dlls/riched20/txtsrv.c:
	riched20: Add DebugInfo to critical sections.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add DebugInfo to critical sections.

	* dlls/mciavi32/mciavi.c:
	mciavi32: Add DebugInfo to critical sections.

	* dlls/netapi32/nbcmdqueue.c, dlls/netapi32/nbnamecache.c,
	  dlls/netapi32/nbt.c, dlls/netapi32/netbios.c:
	netapi32: Add DebugInfo to critical sections.

	* dlls/ntdll/heap.c, dlls/ntdll/rtl.c:
	ntdll: Add DebugInfo to critical sections.

	* dlls/msvcrt/file.c, dlls/msvcrt/lock.c:
	msvcrt: Add DebugInfo to critical sections.

	* dlls/mapi32/prop.c:
	mapi32: Add DebugInfo to critical sections.

	* dlls/crypt32/context.c, dlls/crypt32/oid.c, dlls/crypt32/proplist.c,
	  dlls/crypt32/store.c:
	crypt32: Add DebugInfo to critical sections.

	* dlls/itss/chm_lib.c:
	itss: Add DebugInfo to critical sections.

	* dlls/kernel32/file.c:
	kernel32: Add DebugInfo to critical sections.

2007-03-11  Hagop Hagopian <shaitani@gmail.com>

	* dlls/comctl32/tests/tab.c:
	comctl32: Adding getter-setter tests for tab control.

2007-03-10  Stefan Huehner <stefan@huehner.org>

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/install.c,
	  dlls/browseui/tests/autocomplete.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/updown.c,
	  dlls/ddraw/tests/visual.c, dlls/devenum/createdevenum.c,
	  dlls/devenum/devenum_main.c, dlls/devenum/mediacatenum.c,
	  dlls/dsound/tests/ds3d.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/tests/font.c, dlls/kernel32/tests/change.c,
	  dlls/mscoree/mscoree_main.c, dlls/mshtml/nsembed.c,
	  dlls/oleaut32/tests/olefont.c, dlls/secur32/tests/ntlm.c,
	  dlls/shell32/pidl.c, dlls/shlwapi/tests/string.c,
	  dlls/wineps.drv/glyphlist.c, dlls/winex11.drv/clipboard.c,
	  dlls/wnaspi32/aspi.c, include/msiquery.h, programs/progman/group.c,
	  programs/progman/main.c, programs/progman/program.c,
	  programs/regedit/hexedit.c, programs/winecfg/drive.c,
	  programs/winecfg/drivedetect.c, programs/winecfg/theme.c,
	  programs/wineconsole/wineconsole.c, programs/wordpad/wordpad.c:
	Change some functions arguments from () -> (void).

2007-03-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Prepare for more tests and use skip.

2007-03-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/version.c:
	kernel32/tests: Use skip.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Use skip as is done in the other tests.

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Use skip as is done in the other tests.

	* dlls/dnsapi/tests/Makefile.in, dlls/dnsapi/tests/name.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi/tests: Load dnsapi dynamically and use skip.

2007-03-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/tests/error.c:
	ntdll: Make the error test pass under XP.

2007-03-12  Francois Gouget <fgouget@free.fr>

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd: Fix compilation on systems that don't support nameless unions.

2007-03-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Stop DSound buffer playback when the filter is paused or stopped,
	not the next time it's processed.

2007-03-10  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c:
	comctl32: Implement LVS_EX_DOUBLEBUFFER.

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	comctl32: Fix a typo.

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Fix my last patch.
	My last patch was wrong and caused some nasty regressions. Mapping
	CLR_DEFAULT to the global defaults seem to be what native does.

2007-03-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Account for offscreen rendering when setting up the clearing scissor
	rectangle.

2007-03-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Blit the offscreen texture into the drawable if needed.
	When using pbuffer or back buffer offscreen rendering the content of
	the drawable will have been overwritten. Thus the texture has to be
	written into the drawable. An exception is the (pretty common) case
	that the whole render target is cleared before rendering to it.

	* dlls/wined3d/device.c:
	wined3d: Restore the index buffer when switching from UP to buffer drawing.
	The state handler binds index buffer 0 when a user pointer is used. Likewise
	the real index
	buffer has to be restored when switching back to drawing from index buffers.

2007-03-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/service.c:
	advapi32: Constify some variables.

	* dlls/advapi32/lsa.c:
	advapi32: Constify some variables.

	* dlls/advapi32/crypt_md4.c, dlls/advapi32/tests/crypt_md4.c:
	advapi32: Constify some variables.

2007-03-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Replace const pointer parameters with correct non-const pointers.

2007-03-09  Chris Peterson <Chrisp@ucla.edu>

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: Message sequencing tests.

2007-03-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/string.c:
	ntdll: Fixed a compiler warning for size_t/unsigned int mismatch.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Avoid a printf format warning.

2007-03-09  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Check allocation failure and clear memory in DSound Renderer.

2007-03-09  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Remove clrTextBkDefault member from LISTVIEW_INFO and fix (clrTextBk
	== CLR_DEFAULT) handling for custom drawing.

	* dlls/comctl32/tests/listview.c:
	comctl32: Add a failing custom draw related test.

2007-03-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Implement CoAddRefServerProcess and CoReleaseServerProcess.

	* dlls/ole32/compobj.c:
	ole32: Make RegisteredClass list into a standard Wine list.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Don't keep the local server named pipe open for a single-use object.

	* dlls/ole32/tests/compobj.c:
	ole32: Add some tests for the flags input to CoRegisterClassObject.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Close the named pipe after revoking local server objects.

	* dlls/ole32/tests/marshal.c:
	ole32: Enable local server test and make it work with Win9x COM implementation.

	* dlls/ole32/compobj.c:
	ole32: REGCLS_MULTIPLEUSE implies CLSCTX_INPROC_SERVER in CoRegisterClassObject.

2007-03-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c:
	mshtml: Use get_client_disp_property in SetClientSite to get silent property.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added Navigate2 test.

	* dlls/shdocvw/navigate.c:
	shdocvw: Call EnableModeless and SetStatusText in navigate.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Move frame variable to DocHost.

	* dlls/shdocvw/navigate.c:
	shdocvw: Release callback and bindctx in bind_url_to_object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Added mode dispids implementation in DocHost::Invoke.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Always set hostui to NULL in SetClientsite.

	* dlls/shdocvw/client.c:
	shdocvw: Added DISPID_AMBIENT_OFFLINEIFNOTCONNECTED and DISPID_AMBIENT_SILENT
	implementation in DocHost::Invoke.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move offline and silent variables to DocHost.

2007-03-03  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/wineconsole_Ru.rc:
	wineconsole: Update Russian resources.

	* programs/cmd/Ru.rc:
	cmd: Update translation and synchronize Russian resource.

	* dlls/comdlg32/cdlg_Ru.rc, dlls/comdlg32/cdlg_Uk.rc:
	comctl32: Update Russian and Ukrainian resourses.

2007-03-03  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/kernel32/computername.c, dlls/kernel32/tests/environ.c:
	kernel32: Fix GetComputerNameA to not count trailing NULL, with test.

2007-03-09  Alexandre Julliard <julliard@winehq.org>

	* server/Makefile.in, server/process.h, server/procfs.c:
	server: Added process control support using /proc on Solaris.

2007-03-08  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c:
	ntdll: Handle SIMD exceptions.

	* dlls/ntdll/tests/exception.c:
	ntdll: Testcase for handling SIMD exceptions.

2007-03-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix return codes returned by IBindCtx::RegisterObjectBound and
	IBindCtx::RevokeObjectBound when used on NULL objects.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix cbStruct handling in IBindCtx:GetBindOptions.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Add more tests of IBindCtx functions.
	Add tests for IBindCtx::GetObjectParam, IBindCtx::RevokeObjectParam and
	IBindCtx::RevokeObjectBound.

2007-03-08  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: Reject out of range dates in MCM_SETCURSEL.

2007-03-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/int2f.c:
	winedos: Check a file handle against INVALID_HANDLE_VALUE, not 0.

2007-03-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/serialui/confdlg.c:
	serialui: Replace const pointer type with correct pointer to const.

2007-03-09  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/winecfg/Ko.rc:
	winecfg: Fix typo.

2007-03-08  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winecfg/Ro.rc, programs/winecfg/winecfg.rc:
	winecfg: Initial Romanian translation.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/cpu.c:
	kernel32: Implemented GetSystemInfo() for Solaris.

2007-03-08  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c:
	dplayx: Add DebugInfo to critical sections.

	* dlls/dmime/performance.c:
	dmime: Add DebugInfo to critical sections.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Add DebugInfo to critical sections.

2007-03-08  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/ppd.c:
	wineps.drv: Remove paper sizes that lack either a PageSize or a PaperDimension
	entry in the PPD.

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/init.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/ps.c, dlls/wineps.drv/psdrv.h:
	wineps.drv: Convert the page size list to a standard Wine list.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* programs/rpcss/np_server.c:
	rpcss: Fix a file handle leak in RPCSS_BecomePipeServer().
	Also, RPCSS_NPConnect() returns a file handle so treat it as such by
	checking it against INVALID_HANDLE_VALUE and not NULL.

	* dlls/ws2_32/socket.c:
	ws2_32: Fix an int/long mismatch in a trace.

	* dlls/ws2_32/socket.c:
	ws2_32: Replace a few -1 literals with SOCKET_ERROR.
	Do a small tweak in WS2_send() so it looks more like WS2_recv().

2007-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wininet/ftp.c:
	wininet: Fix a couple of reversed checks that could result in leaked socket
	handles.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Check file handles against INVALID_HANDLE_VALUE, not NULL.
	Simplify the file handle handling in FTP_FtpPutFileW().

2007-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Fix a file handle leak in RPCRT4_RPCSSOnDemandCall().
	Also, RPCRT4_RpcssNPConnect() returns a file handle so treat it as
	such by checking it against INVALID_HANDLE_VALUE and not NULL.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c:
	dbghelp: Check file handles against INVALID_HANDLE_VALUE, not NULL.

2007-03-08  Tomas Carnecky <tom@dbservice.com>

	* dlls/dsound/buffer.c, dlls/dsound/primary.c, dlls/quartz/dsoundrender.c,
	  dlls/winedos/soundblaster.c, include/dsound.h:
	dsound: Update prototypes for IDirectSoundBuffer::Lock/Unlock.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/time.c:
	kernel32: Fixed DosDateTimeToFileTime behavior when timegm() is missing.
	The tm_isdst field needs to be initialized for mktime to do the right thing.

	* dlls/advapi32/tests/registry.c:
	advapi32: Fixed registry test that failed because of a buffer overflow.

2007-03-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c:
	mshtml: Release IOleCommandTarget in IPersistMoniker::Load.

2007-03-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Check for actual return value on invalid QuerySecurityPackageInfo call.

2007-03-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/main.c, dlls/quartz/memallocator.c, dlls/quartz/parser.c,
	  dlls/quartz/systemclock.c, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Use proper alloc/free functions for COM objects.

2007-03-08  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: TKIND_COCLASS parameters to Invoke'd functions should be converted
	into VT_DISPATCH instead of VT_UNKNOWN.
	Add a test for this.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Set output param to NULL in BindCtxImpl_EnumObjectParam.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix BindCtxImpl_GetBindOptions to return the correct locale and to not
	fail if the input size is too large.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: CreateBindCtx should fail if reserved parameter is not zero.

2007-03-08  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support SHIFT /n option.

	* programs/cmd/builtins.c:
	cmd.exe: Add support for CD /D.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: setlocal and endlocal should preserve drive and directory.

	* programs/cmd/builtins.c:
	cmd.exe: Hide new internal vars during SET.

	* programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for working directories per drive.

	* programs/cmd/builtins.c:
	cmd.exe: Support TIME /T option.

	* programs/cmd/builtins.c:
	cmd.exe: Support DATE /T option.

	* programs/cmd/builtins.c:
	cmd.exe: Prevent options to pushd.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support PUSHD with wildcards.

	* programs/cmd/builtins.c:
	cmd.exe: Set errorlevel if CD fails.

	* programs/cmd/builtins.c:
	cmd.exe: Wildcards in directory names for CD.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support unquoted directories in CD command.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Support default colours for wineconsole.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add cmd.exe /T option.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add COLOR command.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed default dependencies to work properly in test dirs too.

	* Make.rules.in, configure, configure.ac, include/config.h.in,
	  tools/widl/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	configure: Get rid of lex compatibility support, we require flex anyway.

	* dlls/kernel32/heap.c:
	kernel32: Add missing limits.h include.

2007-03-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Add tests for GetVertexShaderDeclaration, GetVertexShaderFunction and
	GetPixelShaderFunction.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix IWineD3DPixelShader_GetFunction / IWineD3DVertexShader_GetFunction.

	* dlls/d3d8/device.c:
	d3d8: Implement IDirect3DDevice8_GetVertexShaderDeclaration.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Save the d3d8 vertex declaration.

2007-03-07  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/symbol.c:
	winedbg: Do not write over const char * parameter.
	Also pass the right string to SymEnumSymbols and check for _ in symbol
	name, instead of beginning of string.

2007-03-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/pidl.c, dlls/wined3d/device.c:
	janitorial: Remove two redundant checks for NULL.

	* dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/header.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/updown.c:
	comctl32: Remove redundant NULL checks before Free() (found by Smatch).

2007-03-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/mmsystem.c, include/wine/mmsystem16.h:
	winmm: Replace const pointer parameters with correct pointers to const.

	* dlls/mpr/wnet.c:
	mpr: Replace const pointer parameters with correct pointers to const.

2007-03-07  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/kernel32/process.c:
	kernel32: Allow to execute .cmd files.

2007-03-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

2007-03-06  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c:
	winedump: Fixed formatting of timestamps.

	* include/wine/wine_common_ver.rc:
	wine_common_ver: Set company name to Microsoft, some apps check for that.

	* .gitignore, dlls/advapi32/Makefile.in, dlls/advapi32/version.rc,
	  dlls/imm32/Makefile.in, dlls/imm32/version.rc,
	  dlls/iphlpapi/Makefile.in, dlls/iphlpapi/version.rc,
	  dlls/lz32/Makefile.in, dlls/lz32/version.rc, dlls/ntdll/Makefile.in,
	  dlls/ntdll/version.rc, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/version.rc, dlls/rsaenh/Makefile.in,
	  dlls/rsaenh/version.rc, dlls/version/Makefile.in,
	  dlls/version/version.rc, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/version.rc:
	Added version information for a number of dlls.

2007-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Use unicode Win32 APIs when possible.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Use unicode Win32 APIs when possible.

2007-03-07  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Implement writing of SAFEARRAY type descriptions in typelibs.

	* dlls/Maketest.rules.in:
	Maketest.rules.in: Make CROSSOBJS consistent with the equivalent OBJS rule in
	the toplevel Make.rules.in.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/pipe.c:
	kernel32: Add tests for ImpersonateNamedPipeClient.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/netapi32/wksta.c:
	netapi32: Added support for more info levels in NetWkstaGetInfo.

2007-03-07  Luis Carlos Busquets Pérez <luis.busquets@ilidium.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dpnaddr/Makefile.in, dlls/dpnaddr/dpnaddr.spec,
	  dlls/dpnaddr/version.rc:
	dpnaddr: Added dll that just forwards to dpnet.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* server/token.c:
	server: Use internal luid_t type where appropriate.

2007-03-06  Juan Lang <juan_lang@yahoo.com>

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c,
	  tools/make_requests:
	ntdll: Implement NtAllocateLocallyUniqueId with server call.

2007-03-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Rework surface dirtification.
	Previously the surfaces stored a flag if the system memory copy was
	ahead of the gl copy(SFLAG_DIRTY) or the gl copy is
	ahead(SFLAG_GLDIRTY). The pbuffer copy was 'managed' differently using
	SFLAG_INPBUFFER and SFLAG_INTEXTURE.
	This patch replaces them with 3 flags, INSYSMEM, INPBUFFER and
	INTEXTURE which specify which copy contains the most up to date
	copy. It is perfectly valid to have more than one of those flags
	set. One must be set at least (except at init, when no content is in
	the surface yet). When one copy is modified, the flags for the others
	are removed.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DSurface::SetPBufferState.
	The method is removed because it does not really help with
	anything. It should not be exported from wined3d, there is no need for
	the other libs to call it. It does not help abstraction and code
	simplification in any way because it is very specific and the code
	calling it has to know what is happening in the surface to use this
	method.

2007-03-07  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Search SystemLinked fonts when looking for a valid replacement.

	* dlls/user32/painting.c:
	user32: Don't delete hrgnClip until we are done using it.
	Thanks to Peter Oberndorfer for noticing this.

2007-03-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_DeletePort.

	* dlls/localspl/localmon.c:
	localspl: Implement DeletePort for XcvDataPort.

2007-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Remove false FIXME.

	* dlls/mshtml/navigate.c:
	mshtml: Improve ReadSegments implementation.

	* dlls/atl/registrar.c:
	atl: Compare file handle to INVALID_HANDLE_VALUE to handle errors.

2007-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a mova rounding test.

	* dlls/wined3d/directx.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h, programs/winecfg/Bg.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	wined3d: Remove broken software shaders.

	* dlls/wined3d/directx.c:
	wined3d: Fix a typo.

2007-03-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/mdi.c, dlls/user32/painting.c, include/winuser.h:
	user32: Replace const pointer parameters with correct pointers to const.

	* dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h,
	  dlls/comdlg32/fontdlg16.c:
	comdlg32: Replace const pointer parameters with correct pointers to const.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add some tests for IBindCtx.

	* dlls/ole32/tests/marshal.c:
	ole32: Remove some unnecessary traces from the HeapUnknown implementation.

	* dlls/ole32/tests/compobj.c:
	ole32: Fix a failing CoUnmarshalInterface test on Windows.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix a use-after-free of the file moniker in the running object table
	tests.

	* server/registry.c, server/token.c:
	server: A general solution for handling MAXIMUM_ALLOWED access right has been
	implemented so remove the workarounds.

2007-03-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Do not specify the viewport origin upside down when doing offscreen
	rendering.
	The gl viewport origin is the lower left corner of the window, in d3d
	it is the upper right corner. This is corrected when setting the
	viewport. However, when we are doing offscreen rendering, this is
	reversed. So do not flip the viewport origin when rendering offscreen.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Disable depth stencil related states without a depth stencil buffer.
	Except with fbos, it is not possible to remove the depth stencil
	buffer from the opengl frame buffer, so when the d3d app sets a NULL
	depth stencil disable all states that work with the depth stencil
	buffer.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Clearing the depth stencil buffer fails without a depth stencil buffer.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Use an aux buffer as blitting helper if available.
	This helps performance a bit because the function does not have to
	wait for the 2nd read to finish before returning. Only do that if we
	have an aux buffer to mess with for free though.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Store the number of aux buffers in the gl limits structure.

2007-03-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: WINED3DFMT_U8V8 is signed.
	Plain OpenGL does not provide any signed pixel formats, so the
	unsigned GL_RGB is used for loading perturbation data into pixel
	shaders that use texbem. For correct loading, the signedness has to be
	considered.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Adjust the rhw transformation for offscreen rendering.

2007-03-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msvcrt/tests/dir.c:
	msvcrt/tests: Properly remove temporary directory.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Remove tempfile after running the tests.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Remove tempfile after running the tests.

2007-03-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/snmpapi/main.c:
	snmpapi: Fix printf format warnings.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: NTLM's AcquireCredentialHandleA/W should accept domains and usernames
	with lengths of 0.
	Add tests for these cases.

	* dlls/secur32/ntlm.c:
	secur32: NTLM - don't bother nul terminating the password string as nothing
	relies on it being nul terminated.

	* dlls/secur32/ntlm.c:
	secur32: NTLM - don't copy more data from User, Domain and Password
	pointers in the SEC_WINNT_AUTH_IDENTITY structure than the
	corresponding Length fields say the pointers hold.

2007-03-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Add an extensive EnumFontFamilies test, fix some failures when running
	under Wine.

2007-03-06  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/tests/htmldoc.c, dlls/msi/tests/install.c,
	  dlls/wineps.drv/psdrv.h, programs/cmd/batch.c,
	  programs/cmd/builtins.c:
	Assorted spelling fixes.

	* dlls/dplayx/tests/dplayx.c:
	dplayx/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/dplayx/tests/dplayx.c:
	dplayx/tests: Add missing '\n' to ok() call.

2007-03-06  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix FontSubstitute values for Korean locale.

	* dlls/gdi32/freetype.c:
	gdi32: Add missing pFT_Done_Face().

2007-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/init.c:
	wineps.drv: Return correct values for DESKTOPHORZ/VERTRES since they are used
	to setup the visible region.

	* tools/wine.inf:
	wine.inf: dwReserved values for DirectPlay providers should be dwords
	(spotted by Alessandro Pignotti).

2007-03-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Do not ignore the keysyms assigned to a group switch, it leads
	to side effects like missing KeyRelease events.

	* dlls/user32/tests/win.c:
	user32: Make the excessive scroll test pass under Windows.

2007-03-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/serialui/tests/confdlg.c:
	serialui/tests: Add some tests for CommConfigDialog.

	* dlls/kernel32/comm.c, dlls/serialui/confdlg.c:
	serialui: Fix return type for CommConfigDialog.

	* dlls/localspl/localmon.c:
	localspl: Do not crash when Xcv was opened without a space in the name.

2007-03-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Vista returns a different status.

2007-03-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_active.c:
	winedbg: Forward the wShowWindow option from winedbg to the debuggee.

	* programs/winedbg/tgt_minidump.c:
	winedbg: We no longer need to force for ELF modules in minidumps as we do it
	automatically now.

2007-03-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Compare the class contexts in COM_GetRegisteredClassObject.
	Only objects that have been registered for a class context that matches
	the requested class context should be returned.

	* dlls/ole32/ole2.c:
	ole32: OleLoad should call CoCreateInstance with CLSCTX_INPROC_SERVER as well
	as CLSCTX_INPROC_HANDLER.

	* dlls/credui/credui.rc:
	credui: Fix a missing ":" in the credential dialog domain name text box.

2007-03-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/drawdib.c:
	msvfw32: Replace const pointer parameter with correct pointer to const.

	* dlls/comctl32/rebar.c:
	comctl32: Replace const pointer parameter with correct pointer to const.

	* dlls/msi/custom.c:
	msi: Replace const pointer parameters with correct pointers to const.

2007-03-05  Mike Schaadt <mschaadt@gmail.com>

	* dlls/snmpapi/main.c:
	snmpapi: Changed %llu to %x%08lx.

2007-03-05  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c, tools/wine.inf:
	gdi32: Set FontSubstitute values by locale.

2007-03-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Use skip where appropriate.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Make sure we can run on win9x and NT again.

2007-03-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/enumpins.c,
	  dlls/quartz/filesource.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/parser.c:
	quartz: Improve reference traces.

2007-03-05  Alexandre Julliard <julliard@winehq.org>

	* server/mach.c:
	server: Replace use of internal __pthread_kill() function by a system call.

	* dlls/user32/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	server: Expose areas revealed by changes to the window region.

	* programs/clock/main.c, programs/clock/winclock.c,
	  programs/clock/winclock.h:
	clock: Make the window round in no title bar mode, to exercise SetWindowRgn.

2007-03-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Move skip to a more appropriate place.

	* dlls/advapi32/tests/crypt_md5.c:
	advapi32/tests: Don't use FreeLibrary with GetModuleHandle.

2007-03-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix a format warning.

2007-03-05  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/sync.c:
	kernel32: Implement CallNamedPipeW.

	* dlls/wininet/tests/http.c, dlls/wininet/utility.c:
	wininet: Always make copies of strings passed to INTERNET_SendCallback.
	This ensures that applications that change the strings received in
	status callbacks don't affect the data needed to successfully connect to
	the correct server.

	* dlls/credui/credui_main.c:
	credui: The pfSave parameter of CredUIPromptForCredentials is optional.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the PackageCode property based on the "revision number" data in the
	summary information.
	Add a test to show that PackageCode is set by MSI.

	* dlls/msi/custom.c:
	msi: Rewrite the second loop in ACTION_FinishCustomActions so that it always
	terminates.
	Create an array of handles to wait on so that we can wait without
	holding a critical section.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the Date, Time and VersionDatabase properties.
	Add tests for these properties.
	Update the todo list of properties to set.

2007-03-03  Joris Huizer <joris_huizer@yahoo.com>

	* tools/winedump/minidump.c, tools/winedump/msc.c:
	winedump: sign-compare fixes.

	* loader/preloader.c:
	preloader: sign-compare fix.

	* tools/winebuild/import.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: sign-compare fixes.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Adjust the rhw transformation for offscreen rendering.
	When drawing processed vertices with the fixed function pipeline the
	projection matrix is set up to map y values from 0 to height to 1.0;
	-1.0(gl and d3d coord systems are flipped). This moves the y axis to
	the bottom of the drawing area. When later on the y inversion matrix
	is applied for offscreen rendering, the coordinate system will get
	flipped out of the viewport.
	This patch sets the Y range up upside down when using offscreen
	rendering, so the invymat will flip it to the correct position. This
	has to happen before the 0.375 pixel correction.

2007-03-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the scissor test when clearing the full surface too.
	It was incorrect to disable the scissor test for full surfaces in my
	clear patch. With back buffer offscreen rendering the viewport does
	not seem to restrict clearing, and with different sizes of depth
	stencil and color buffer the final fantasy XI demo seems to expect the
	clear to be restricted.

2007-03-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Don't AddRef an object we just created and are handing back to the
	caller.

2007-03-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Report the previous refcount of a PullPin object.

2007-03-04  Jason Edmeades <us@edmeades.me.uk>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: Show wrong behaviour with current directory.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix stdio redirects.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for del file1 file2.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Makefile.in, programs/cmd/Nl.rc,
	  programs/cmd/No.rc, programs/cmd/Pl.rc, programs/cmd/Pt.rc,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add ASSOC command.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: PROMPT option to show pushd levels.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Additional PROMPT options.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support rd dir1 dir2.

2007-03-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_module.c:
	dbghelp: module target: Better error handling when init fails and creates a
	dummy thread.

	* dlls/dbghelp/msc.c:
	dbghelp: Fixes for loading circular references on function signature.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, include/dbghelp.h:
	dbghelp: Implemented SymEnumTypesW.

	* programs/winedbg/tgt_minidump.c:
	winedbg: When reloading a minidump, recreate all threads from the thread record
	(and not just the first one).

	* programs/winedbg/types.c:
	winedbg: Fix printing function signature type for circular references on
	return type.

	* programs/winedbg/types.c:
	winedbg: Fix maint type when no process is active.

2007-03-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Use the right vtable offset for the IMediaFilter functions.

2007-03-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c:
	mapi32/tests: Don't run tests if functions are not implemented.

2007-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Avoid a needless goto.

2007-03-05  Francois Gouget <fgouget@free.fr>

	* programs/cmd/directory.c:
	cmd: Remove unneeded NONAMELESS* defines and ifdefs.

2007-03-04  Francois Gouget <fgouget@free.fr>

	* programs/oleview/typelib.c:
	oleview: Fix compilation on systems that don't support nameless unions.

	* programs/cmd/batch.c:
	cmd: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-03-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_lmhash.c, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Replace const pointer parameters with correct pointers to const.

	* dlls/advapi32/crypt.c:
	advapi32: Constify a variable.

	* dlls/version/info.c:
	version: Constify some variables.

2007-03-03  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2007-03-03  Kai Blin <kai.blin@gmail.com>

	* dlls/dplayx/tests/dplayx.c:
	dplayx: Remove unneeded test, fix compilation on msvc++.

	* dlls/dplayx/tests/dplayx.c:
	dplayx: Use skip and fix indentation.

	* dlls/secur32/tests/ntlm.c:
	secur32: Use skip for skipped tests, reduce indentation.

2007-03-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Use the proper CLSID when creating the IFilterMapper2 interface.

	* dlls/quartz/filtermapper.c, dlls/quartz/main.c,
	  dlls/quartz/quartz_private.h:
	quartz: Return the proper interface for IFilterMapper.

2007-03-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c:
	user32: win2k and XP return broken border info in GetWindowInfo most of the
	time, so there is no point in testing it.

	* dlls/user32/tests/msg.c:
	user32: Fix most of test failures when running message test under win2k and XP.

2007-03-02  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Tests for events for date and time picker added.

2007-03-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Try to build URL with full path if navigation to URL fails.

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Correctly handle URLs in SetChmPath.

2007-03-02  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Make exception test not hang when creating process fails.

2007-03-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: gl_FogFragCoord is a scalar.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: The texldl instruction takes 3 arguments.

	* dlls/wined3d/state.c:
	wined3d: Properly check the clipplane index against the limit.

2007-03-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	programs/winetest: Raise fileversion.

	* dlls/msi/tests/install.c:
	msi/tests: Properly cleanup after each test.

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Rewording and cleanup.

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Make use of skip.

2007-03-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.32.

----------------------------------------------------------------
2007-03-02  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Don't fail replacement on no localized family name.

2007-03-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/netapi32/netbios.c:
	netapi32: Fixed array overflow (spotted by Coverity).

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Protect from 1 byte static buffer overflow.

	* dlls/uxtheme/draw.c:
	uxtheme: Fixed wrong index in draw.c.

2007-03-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt_md5.c:
	advapi32/tests: Make use of skip.

2007-03-01  Lei Zhang <thestig@google.com>

	* programs/regedit/regproc.c:
	regedit: Correctly parse key name containing ']' when deleting/exporting.

	* programs/regedit/regproc.c:
	regedit: Allow entering - for a key in a .reg file to delete that key.

	* programs/regedit/regproc.c, programs/regedit/regproc.h:
	regedit: Removed dead code from regproc.c.

	* programs/regedit/En.rc:
	regedit: Updated English resources to remove shortcut conflicts.

2007-03-01  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Add another test for GetUpdateRect().

2007-03-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more tests.

	* dlls/mshtml/navigate.c:
	mshtml: Always read data in OnDataAvailable.

2007-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Fix FindMimeFromData tests on IE7.

2007-03-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/tests/font.c:
	gdi32: Implement GetFontUnicodeRanges.

2007-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/content.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Store full chm paths to solve problems with relative paths.

2007-03-01  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use IPPROTO_TCP for SOL_TCP if SOL_TCP isn't defined.
	Fixes compilation on *BSD systems.

2007-03-01  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/color.c, dlls/wineps.drv/driver.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/psdrv.h:
	wineps.drv: Many MacOSX generated ppd files don't include a *ColorDevice
	line. Treat these as if they were colour.

2007-03-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: header tests: Support different window border width.

	* dlls/comctl32/tests/rebar.c:
	comctl32: rebar tests: Support different window border width.

2007-03-01  Rob Shearman <rob@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/schannel/Makefile.in, dlls/schannel/schannel.spec,
	  dlls/schannel/schannel_main.c:
	schannel: Add new schannel dll that mostly forwards to secur32.

	* dlls/secur32/secur32.spec:
	secur32: SealMessage and UnsealMessage are aliases of EncryptMessage and
	DecryptMessage respectively.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c:
	makedep: Fixed string comparison against the source tree path
	(reported by Kai Blin).

2007-02-27  Alessandro Pignotti <alex.pigna@inventati.org>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dplayx/dplay.c, dlls/dplayx/tests/Makefile.in,
	  dlls/dplayx/tests/dplayx.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	dplay: Directplay should initialize session Guid, with conformance tests.

2007-02-27  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add text alignment buttons.

2007-02-27  Bang Jun-Young <junyoung@mogua.com>

	* programs/notepad/Ko.rc:
	notepad: Fully revise Korean translation.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* include/wine/test.h:
	wine/test: Print the official name of the test in summary.

2007-02-27  Aric Stewart <aric@codeweavers.com>

	* dlls/winex11.drv/keyboard.c, dlls/winex11.drv/x11drv.h:
	winex11.drv: Make sure keyboard state is up to date before processing
	GetAsyncKeyState.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmdmain.c:
	cmd: Fix silly local variables indentation that breaks diff -p.

2007-02-28  Alexander Farber <afarber@h754814.serverkompetenz.net>

	* programs/cmd/builtins.c:
	cmd: Support /-Y and COPYCMD environment variable in the "copy" builtin.

2007-02-28  Alexander Farber <Alexander.Farber@nokia.com>

	* programs/cmd/wcmdmain.c:
	cmd: Fixed 3 buffer overflows when fetching environment variables.

2007-03-01  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp: Let CreateFile deal with last error.

2007-03-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Spring cleanup in X11DRV_setup_opengl_visual, and added one new
	visual config (with aux buffers).

2007-03-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/query.c,
	  include/wine/wined3d_gl.h:
	wined3d: Support GL_APPLE_fence for event queries.

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support event queries using GL_NV_fence.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_NV_fence defines and functions.

	* dlls/wined3d/surface.c:
	wined3d: Use the source surface's texture for writing the backup.
	The hwstretch blit code creates a new texture each time it is called
	to back up the back buffer and releases it afterwards. It is more
	efficient to keep the texture and release it with the surface.

	* dlls/wined3d/context.c:
	wined3d: Prepare only fixed function samplers for blit.

2007-03-01  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winex11.drv/desktop.c:
	winex11.drv: Change virtual desktop refresh rate from 0 to 60.

2007-02-28  Lei Zhang <thestig@google.com>

	* programs/regedit/regproc.c:
	regedit: Correctly parse key name containing ']'.

2007-02-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Remove the not needed BANDS_NEED_LAYOUT flag.

2007-02-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: WM_SETFONT should send a RBN_HEIGHTCHANGE if necessary.

2007-02-28  Ken Thomases <ken@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Use "ping -c 1" instead of "ping -w 1" for InternetCheckConnection.

	* dlls/gdi32/printdrv.c:
	gdi32: Use exec() and _exit() instead of system() and exit().

	* dlls/winspool.drv/info.c:
	winspool.drv: Use exec() and _exit() instead of system() and exit().

2007-02-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Bg.rc, dlls/shdocvw/De.rc, dlls/shdocvw/En.rc,
	  dlls/shdocvw/Es.rc, dlls/shdocvw/Fi.rc, dlls/shdocvw/Fr.rc,
	  dlls/shdocvw/Hu.rc, dlls/shdocvw/Ko.rc, dlls/shdocvw/Nl.rc,
	  dlls/shdocvw/No.rc, dlls/shdocvw/Pt.rc, dlls/shdocvw/Tr.rc,
	  dlls/shdocvw/shdocvw.rc:
	shdocvw: Remove no longer used resources.

2007-02-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Clip planes with vertex shaders.

2007-02-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move clip planes to the state table.

2007-02-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Leave the fog state handler after disabling fog.

	* dlls/wined3d/device.c:
	wined3d: Use GL_STATIC_DRAW_ARB instead of GL_STATIC_DRAW.

2007-02-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support for using auxilliary buffers for offscreen rendering.
	OpenGL AUX buffers provide a way for offscreen rendering which is very
	similar to our back buffer "offscreen" rendering emulation. Not all
	card support aux buffers, but if they are available they are a nice
	present which is easy to use.

2007-02-28  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Update header window in listview WM_PAINT handler.

	* dlls/comctl32/tests/listview.c:
	comctl32: Add listview WM_PAINT message sequence tests.

2007-02-28  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/tests/msg.c, dlls/comctl32/tests/msg.h:
	comctl32: Add message ids to allow multi-window test sequences.

2007-02-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Create the service manager registry key if needed.

	* dlls/advapi32/service.c:
	advapi32: Reimplement QueryServiceConfigA on top of QueryServiceConfigW.

	* tools/widl/typegen.c:
	widl: Add missing '\n' on error message.

	* dlls/advapi32/advapi.c:
	advapi32: Avoid slashes and backslashes in user names.

2007-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Fix a test failure when running under Windows 2003.

	* programs/winetest/main.c:
	winetest: Set correct WINETEST_PLATFORM when running under Wine.

2007-02-27  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c:
	cmd.exe: Fix parameter parsing returns.
	Only return valid values for the location of the parameter if it is
	the one requested. Currently returns address when ANY quoted or
	bracketed parameter found.

	* programs/cmd/builtins.c:
	cmd.exe: Support del /a[:].

	* programs/cmd/builtins.c:
	cmd.exe: Support del /f.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Support del /p.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Prompt during del *.* and del *.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h:
	cmd.exe: Add prompt for rd /s.

2007-02-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Added handling of topic selection.

	* dlls/hhctrl.ocx/content.c:
	hhctrl.ocx: Fill content tree.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/content.c, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added hhc parser.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Added content tab window.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added code for handling tabs.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Resize tab control in Child's WM_SIZE handler.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added HH_HELP_CONTEXT implementation.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Use HtmlHelpA in doWinMain.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Call PostQuitMessage only in hh.exe process.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Don't use doWinMain in HtmlHelpW.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Release HHInfo on WM_CLOSE message.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Clean up Help_WndProc.

	* dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.ocx.spec:
	hhctrl.ocx: Added DllGetClassObject stub implementation.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Remove redundant casts.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move doWinMain to hhctrl.c.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move more code from doWinMain.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Fixed releasing web browser object.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h,
	  dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Merge WBInfo to HHInfo.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Store whole HH_WINTYPEW struct in HHInfo, not its pointer.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move hhctrl_hinstance to hhctrl.h.

2007-02-27  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Mimick native treeview display of enumerations.

2007-02-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Eliminate some W-to-A cross calls.

2007-02-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store multiple constant indices per list entry.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store GLSL programs in a hash table rather than a linked list.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add some hash table code.

	* dlls/wined3d/directx.c:
	wined3d: Boolean constants use up only a single uniform each.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix matching WINED3DDECLUSAGE_POSITION against
	WINED3DDECLUSAGE_POSITIONT.

2007-02-27  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Test object attributes in NtCreateMailslotFile.

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Set default timeout in NtCreateMailslotFile if parameter is NULL.

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Check for passing a NULL handle to NtCreateMailslotFile and add a test.

	* dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/file.c:
	ntdll: Framework for NtCreateMailslotFile tests.

2007-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set TCP_NODELAY on the socket for the ncacn_ip_tcp transport to
	reduce latency.

2007-02-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: More error checking. Properly handle NULL ACLs.

2007-02-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/schema.c, dlls/msxml3/tests/schema.c:
	msxml3: Implement {get,putref}_schemas.

	* dlls/msxml3/Makefile.in, dlls/msxml3/factory.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/schema.c,
	  dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/schema.c:
	msxml3: Add a schema cache object.

2007-02-26  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Extend debugger tests.
	Shows that second chance handler gets the same modified context as the
	exception handlers.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Add a debugger around the exceptions.
	Shows that the first chance handler gets a unmodified context.
	Shows that changing the context has no effect when exception is not handled
	by debugger.

2007-02-27  Aric Stewart <aric@codeweavers.com>

	* dlls/kernel32/profile.c:
	kernel32: Allow for non base-10 int values in ini file.

2007-02-26  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/builtins.c:
	cmd.exe: Make 'set t' show all vars starting with 't'.

	* programs/cmd/builtins.c:
	cmd.exe: Add rd /s support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Locate programs more correctly.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Allow special named env vars to be modified.

2007-02-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Simplify height calculation.

	* dlls/imm32/imm.c:
	imm32: Simplify ImmInternalSendIMENotify.

2007-02-27  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, tools/make_makefiles:
	configure: Generate stand alone AC_CONFIG_FILES() lines.

2007-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/nonclient.c:
	user32: Send WM_GETTEXT to get the window caption when drawing the nonclient
	caption bar.

2007-02-27  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Small cosmetic fixes.
	- Clear title bar when creating new document.
	- Remove newline from statusbar.
	- Add horizontal line to toolbar.

2007-02-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/comm.c:
	kernel32: Remove duplicate code (use serialui instead).

	* dlls/serialui/confdlg.c:
	serialui: Use RS232 as default ProviderSubType.

2007-02-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add another test.

2007-02-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/device.c:
	wined3d: More Clear fixes.
	Test for rectangles with x1 > x2 and y1 > y2. Empire earth passes such rects.

	* dlls/winex11.drv/desktop.c:
	winex11.drv: Ignore depth mismatch when using a virtual desktop.

	* dlls/wined3d/device.c:
	wined3d: Index buffer creation adjustments.
	Index buffer creation changes the bound gl buffer, thus the state has to
	be dirtified, similar to locking.
	In an error case the function returned without calling LEAVE_GL().

2007-02-26  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Select correct replacement from ttc file.
	Some font files, especially Asian ttc files, can have several
	different families in the same file. So just using the file is not
	unique enough for identifying a replacement family.

	* dlls/gdi32/freetype.c:
	gdi32: Allow for loading of multibyte font name replacements.
	Change a number of A function to W functions in LoadReplaceList to
	allow for replacements of fonts with multibyte family names.

2007-02-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Set default font to 'Times New Roman', like native does.

2007-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/regsvr.c:
	msxml3: Register schema cache classes.

2007-02-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dc.c:
	gdi32: Make DC creation fail if we cannot allocate the visible region.

2007-02-25  Alex Arazi <alexarazi@gmail.com>

	* dlls/comctl32/tests/status.c:
	comctl32: More status bar tests.

2007-02-26  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: There is no unnamed union in D3DLIGHT7.

2007-02-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Remove usage of uninitialised variable.

2007-02-26  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Convert the domdoc object to use the IXMLDOMDocument2 interface.

2007-02-26  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Print EXPR_NUM expresssions as unsigned to avoid printing an extra
	negative sign when lval is large.

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/tests/storage32.c:
	ole32: The stream returned by StgStreamImpl_Clone should have one reference,
	so call AddRef before returning.
	Move the call to StorageBaseImpl_AddStream to StgStreamImpl_Construct to
	fix StgStreamImpl_Clone, which forgets to call it.
	Add tests for OLE structured storage tests for IStream::Clone.

2007-02-25  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Add safearray type.

	* programs/oleview/typelib.c:
	oleview: Make optional flag "optional" not "opt.".

	* programs/oleview/typelib.c:
	oleview: Add forgotten newlines to forward declarations.

	* programs/oleview/typelib.c:
	oleview: Properly support enumerations.

	* programs/oleview/typelib.c:
	oleview: Report default values.

2007-02-23  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Check the valid rects after the set_window_pos wineserver call.

2007-02-26  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Properly send WM_IME_NOTIFY using SendMessage.

2007-02-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Handle the .gnu_debuglink files with the newly added alternate
	mechanism.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Allow to add an alternate file_map for an ELF file (where to look
	for its debug information).

	* dlls/dbghelp/elf_module.c:
	dbghelp: Rewrote the ELF section mapper for better data encapsulation.

2007-02-23  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/comctl32/comboex.c:
	comctl32: Use mask value in COMBOEX_GetItemA too.

2007-02-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Test the RBN_HEIGHTCHANGE notify and do some fixes.

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Set the style in WM_CREATE.

2007-02-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/cdlg_Bg.rc, dlls/comdlg32/cdlg_Ca.rc,
	  dlls/comdlg32/cdlg_Da.rc, dlls/comdlg32/cdlg_De.rc,
	  dlls/comdlg32/cdlg_Fi.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/comdlg32/cdlg_Hu.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Ja.rc, dlls/comdlg32/cdlg_Nl.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/comdlg32/cdlg_Sv.rc, dlls/comdlg32/cdlg_Uk.rc,
	  dlls/comdlg32/cdlg_Wa.rc:
	comdlg32: Synchronize ChooseColor dialog templates with the English one.

2007-02-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/wined3d/state.c:
	wined3d: Use application provided fog range when fog is enabled.

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Forward already implemented functions to dbghelp.

2007-02-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Free the vertex declaration elements.

2007-02-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Overwrite an existing read-only file when copying the install file.

2007-02-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for using markers in SELECT clauses.

2007-02-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Check for a NULL text entry, as it can be blank in the VolumeCostList
	control.

	* dlls/msi/custom.c:
	msi: Free the custom action data after the thread function executes.

2007-02-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wineshelllink:
	wineshelllink: Fix menu entries with double spaces in their names.

2007-02-23  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add special SET modifiers.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add %random% special name support.

	* programs/cmd/batch.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Unify parsing and expansion.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add support for call :label and goto :label.

	* programs/cmd/En.rc, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add pushd and popd.

2007-02-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/En.rc, programs/wordpad/No.rc,
	  programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add open file dialogue.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Nl.rc,
	  programs/wordpad/No.rc, programs/wordpad/Pl.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Make edit menu more like native.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add paste support.

	* programs/wordpad/wordpad.c:
	wordpad: Don't create maximized window.

2007-02-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Make toolbar more like native.

2007-02-24  Fabian Bieler <der.fabe@gmx.net>

	* dlls/user32/message.c, dlls/user32/tests/msg.c:
	user32: Do not call NULL message callback.

2007-02-24  Rok Mandeljc <rok.mandeljc@email.si>

	* include/d3d9types.h:
	include/d3d9types.h: Remove Size from D3DVOLUME_DESC.

2007-02-23  Rob Shearman <rob@codeweavers.com>

	* include/wine/unicode.h, libs/wine/string.c:
	libwine: Eliminate duplicate function implementations in string.c
	by using macros to turn off inlining when including wine/unicode.h.

	* dlls/ole32/memlockbytes.c:
	ole32: Use IsEqualIID instead of memcmp in HGLOBALLockBytesImpl_QueryInterface.

	* dlls/ole32/tests/marshal.c:
	ole32: Add tests for default handler creation and handler marshaling.

2007-02-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c:
	wininet: Constify some variables.

2007-02-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Constify some variables.

	* dlls/version/info.c:
	version: Constify a variable.

2007-02-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Handle NULL argument in inet_addr.

2007-02-23  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd: Remove execute permission on source files.

2007-02-22  Bang Jun-Young <junyoung@mogua.com>

	* documentation/README.ko:
	README: Fully revise Korean translation.

2007-02-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Added beginning #SYSTEM parsing code.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Handle memory allocation in OpenCHM and CloseCHM.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Move HH_OpenCHM implementation to HH_Open.

2007-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Use hhctrl.ocx's HINSTANCE.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Rewrite reading strings from #STRINGS section.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h, dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Use wrappers of memory allocation functions.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/main.c:
	hhctrl.ocx: Move DllMain to hhctrl.c.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Declare strdupAtoW in hhctrl.h and use it instead of duplicated
	*ANSIToUnicode.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.h,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h:
	hhctrl.ocx: Merge chm.h and webbrowser.h to hhctrl.h.

2007-02-22  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/serialui/tests/Makefile.in, dlls/serialui/tests/confdlg.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	serialui/tests: Add initial tests.

	* dlls/serialui/confdlg.c:
	serialui: Fix return type for drvGetDefaultCommConfig.

2007-02-23  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/comctl32/animate.c:
	comctl32: Add DebugInfo to critical section.

	* dlls/wined3d/directx.c:
	wined3d: replace #ifdef with if() for DEBUG_SINGLE_MODE.

	* dlls/wined3d/directx.c:
	wined3d: Make CreateFakeGLContext thread safe.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Set the refresh rate for NoRes to 60 instead of 0.

	* programs/cmd/batch.c:
	cmd: Remove redundant const.

2007-02-22  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user32/tests/monitor.c:
	user32/tests: Fix the ChangeDisplaySettingsEx() test so it succeeds on NT4.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Catch and report screen resolution change errors.

2007-02-23  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Corrections to the message ordering for IME input.

	* dlls/imm32/imm.c:
	imm32: Implement GSC_RESULTCLAUSE.

2007-02-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/install.c:
	version: Constify a variable.

2007-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Check if protocol object implements IInternetProtocolInfo interface.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added CombineUrl implementation.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added ParseUrl implementation.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added IInternetProtocolInfo interface stub implementation.

	* dlls/itss/tests/protocol.c:
	itss: Added test of paths with back slashes and escaped URLs.

	* dlls/itss/Makefile.in, dlls/itss/protocol.c:
	itss: Fix handling URLs with back slashes and escaped URLs.

	* dlls/itss/storage.c:
	itss: Fix opening streams with back slashes.

2007-02-22  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c:
	kernel32: Fix crash in dns_gethostbyname.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add a stub for NetUserChangePassword.

2007-02-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wing32/Makefile.in, dlls/wing32/wing32.c,
	  dlls/wing32/wing32.spec:
	dlls: Add wing32 dll.

	* dlls/gdi32/wing.c:
	gdi32: Avoid a not necessary CreateDC call.

2007-02-22  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Fix the 'Pacific Standard Time' display name to match the CLDR.
	This also removes the ambiguity with the new 'Pacific Standard Time (Mexico)'
	timezone.

2007-02-22  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/msgbox.c, dlls/wined3d/device.c:
	Use the SW_XXX constants when calling ShowWindow().

2007-02-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Merge the A/W of elf_map_file into a single one.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Now load the .gnu_debuglink file using Unicode search paths.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Added helper to map a Unicode file.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c:
	dbghelp: Now moving the ELF loading code to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/minidump.c, dlls/dbghelp/path.c:
	dbghelp: Move elf_fetch_file_info to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/minidump.c:
	dbghelp: Make elf_enum_modules a Unicode function.

	* dlls/dbghelp/minidump.c:
	dbghelp: Now storing module internal info for minidumps in Unicode.

	* programs/winedbg/tgt_minidump.c:
	winedbg: Some enhancements by using Unicode flavors.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: A few fixes related to Unicode translation.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/module.c:
	dbghelp: Moved the internals for registered callback to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c:
	dbghelp: Get rid of temporary module_get_type_by_nameA.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/msc.c, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, include/dbghelp.h:
	dbghelp: Implemented SymFindFileInPathW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented SearchTreeForFileW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented EnumDirTreeW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented SymMatchFileNameW.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/path.c:
	dbghelp: Added module_get_type_by_name in Unicode form and keep the ANSI form
	for compatibility.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c:
	dbghelp: Moved ELF module loading interfaces to Unicode.
	The core the code remains ANSI, as all the information is stored as ANSI.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c:
	dbghelp: Move PE module loading to Unicode.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c,
	  dlls/imagehlp/imagehlp.spec, include/dbghelp.h:
	dbghelp: Implemented FindExecutableImage[W].

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c:
	dbghelp: Now storing module information in Unicode form.

	* dlls/dbghelp/elf_module.c:
	dbghelp: .gnu_link support: rewrote helper functions for better later
	unicodification.

	* dlls/dbghelp/module.c:
	dbghelp: Prepare module loading functions to be switched to Unicode module
	storage.

	* dlls/dbghelp/module.c:
	dbghelp: Make the module info functions ready for the Unicode move.

	* dlls/dbghelp/module.c:
	dbghelp: Rewrote the loaded modules enumeration so that Unicode version is
	the core.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added an ANSI copy of the module name (useful for next patches).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c:
	dbghelp: Added helper to define the module's name.

2007-02-22  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Account for unnamed right hand side parameter of propput.

2007-02-22  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shelllink.c:
	shell32: IShellLink::GetIDList fix.
	IShellLink::GetIDList when it fails to generate a PIDL must set ppidl
	to NULL or some applications think it contains valid data.

	* dlls/comctl32/listview.c:
	comctl32: Implement LVM_SETUNICODEFORMAT.

2007-02-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/serialui/confdlg.c:
	serialui: Constify a variable.

2007-02-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add a few more tests.

2007-02-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/alsa.c:
	winealsa: Fix typo.

	* dlls/dsound/mixer.c:
	dsound: Use an inline for ring buffer pointer difference calculation.

	* dlls/dsound/mixer.c:
	dsound: Add some comments from earlier patch that makes code a little better
	understandable.

2007-02-21  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Use MAKELPARM instead of MAKELONG.

2007-02-20  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Respect size of array ITypeInfo_GetNames returns.

2007-02-21  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c:
	kernel32: Fix an off-by-one error in GetComputerNameExA/W.
	The dns_* functions expect the input buffer to have space for size
	characters plus the nul terminating character.

	* dlls/wininet/netconnection.c:
	wininet: Fix the case of partial SSL reads from the peek buffer.
	Don't return FALSE for a partial read. Fall through to SSL_read and use
	the logic for partial reads there instead of having separate logic and
	recursively calling NETCON_recv. Based on a patch by Michael Moss.

	* dlls/dbghelp/elf_module.c:
	dbghelp: ImageName is usually blank, so print LoadedImageName in
	elf_load_debug_info_map.

	* dlls/advapi32/tests/security.c, dlls/ntdll/nt.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Add get_token_impersonation_level server call for retrieving the
	impersonation level from a token.
	Add tests for GetTokenInformation(TokenImpersonationLevel).

	* dlls/advapi32/tests/security.c, server/handle.c, server/security.h,
	  server/token.c:
	server: Check object's security when creating handles.
	Don't check object's security when duplicating a handle of the same or
	lower access rights. Based on a patch by Vitaliy Margolen.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix a memory leak in I_RpcSendReceive caused by I_RpcReceive overwriting
	pMsg->Buffer.
	(Reported by Huw Davies.)

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add documentation for the I_Rpc* RPC message functions.

2007-02-21  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/graphics.c:
	winex11.drv: Pass correct coords into X11DRV_InternalFloodFill.
	The (x,y) should be relative to the XImage, not the drawable.  The (xOrg,yOrg)
	is what should be relative to the drawable.  This fixes a crash when XGetPixel
	tried to access memory outside the XImage's buffer.

2007-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a TypeAttr leak.

2007-02-21  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update the timezone information.

2007-02-21  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Fix some tests so they succeed on Windows 98.

2007-02-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/odbc32/proxyodbc.c:
	odbc32: Constify some variables.

2007-02-17  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/msg.c,
	  dlls/comctl32/tests/msg.h, dlls/comctl32/tests/updown.c:
	comctl32: Move up-down msg seq test functions into msg.c.

2007-02-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Clients should pass only KeyPress events to XmbLookupString.

2007-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: Added support for the PM_QS_* flags in PeekMessage.

2007-02-20  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c:
	cmd.exe: Add support for env vars DATE, TIME, CD.

	* programs/cmd/batch.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for %ERRORLEVEL% in both batch and cmd line.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Support return code if fail to launch program.

	* programs/cmd/builtins.c:
	cmd.exe: Support PATH= as a valid command.

	* programs/cmd/batch.c:
	cmd.exe: Add ~ modifiers for %0-9.

	* programs/cmd/builtins.c:
	cmd.exe: Support :EOF in goto labels.

	* programs/cmd/batch.c:
	cmd.exe: Add support for %*.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support exit [/b] returncode.

	* programs/cmd/builtins.c:
	cmd.exe: Add "if defined ..." support.

2007-02-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/volume.c:
	wined3d: Make sure volumes have memory allocated.

	* dlls/wined3d/device.c:
	wined3d: Do not use glMapBuffer in ProcessVertices.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove dead code from drawprim.c.

	* dlls/wined3d/device.c:
	wined3d: Use CopyRect / EqualRect.

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c:
	wined3d: Index buffer fixes.

	* dlls/wined3d/device.c:
	wined3d: Clean up sampler usage in UpdateSurface.
	UpdateSurface has to modify one gl texture unit to bind the texture to
	load.  To restore the correct properties for drawing gl texture unit 0
	is activated and dirtified.

	* dlls/wined3d/device.c:
	wined3d: IWineD3DDevice::Clear fixes.
	Fix the use of the scissor test in Clear. The rectangle is only set if
	a clearing rectangle is used, otherwise the scissor test is disabled
	(the pixel ownsership test should take care of the window
	boarders). To get the scissor test back to the value the app set up
	Clear dirtifies the state(s).

	* dlls/d3d9/tests/shader.c, dlls/wined3d/device.c:
	wined3d: Floating point shader constant setting.
	Test how shader constant limits are checked in Set*ShaderConstantF.
	The vertex shader tests it based on the limits reported in the caps,
	the pixel shader tests tries to find the limit manually because I
	could not find a cap structure member specifying the pixel shader
	constant limit.
	Set*ShaderConstantF returns an error as soon as start or start + count
	are bigger than the constant limit.

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Light parameter fixes.

	* dlls/wined3d/drawprim.c:
	wined3d: Do not print the fixed / unfixed vertices warning with shaders.

2007-02-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
	user32: Add a CreateIcon test, make it pass under Wine.

	* dlls/user32/cursoricon.c, dlls/winex11.drv/mouse.c:
	user32: Add traces to the cursor APIs.

2007-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm32: Implement stubs for ImmGetImeMenuItemsA and ImmGetImeMenuItemsW.

2007-02-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some typos.

2007-02-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/url.c:
	shlwapi: Fix size passed to MultiByteToWideChar.

2007-02-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement IUnknown methods for IMediaPosition.

	* dlls/quartz/filtergraph.c:
	quartz: Don't release filters when they connect.

2007-02-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Cleanup the dialog event subscriptions when destroying the dialog.

2007-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/urlhist.c:
	shdocvw: Fix module ref counting.

2007-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/comm.c:
	kernel32: Display correct parameters in comm traces.

	* dlls/localspl/localmon.c:
	localspl: Implement SetDefaultCommConfig for XcvDataPort.

	* dlls/localspl/localmon.c:
	localspl: Implement GetDefaultCommConfig for XcvDataPort.

2007-02-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/minidump.c:
	dbghelp: MiniDumpWriteDump called from exception handler.
	- MiniDumpWriteDump was unable to provide stack information for the current
	thread, hence did produce unusable minidump when a programs generates the
	minidump from its own exception handler.
	- We now support this if the current thread calls MiniDumpWriteDump from an
	exception handler and provides the exception information.

2007-02-20  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/header.c, dlls/comctl32/tests/monthcal.c,
	  dlls/d3d9/tests/visual.c, dlls/ddraw/tests/refcount.c,
	  dlls/wined3d/context.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, dlls/wininet/ftp.c,
	  tools/winapi/winapi.pm:
	Assorted spelling fixes.

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Tell the user which ftp server we're using for the tests so he
	can try to connect to it manually in case of trouble.

	* dlls/wininet/tests/http.c:
	wininet/tests: Dynamically load some functions so the test runs on Windows 98.

	* dlls/wininet/ftp.c:
	wininet: Move a bunch of misplaced API documentation.

	* tools/winapi/modules.pm:
	winapi_check: gdi32.dll and gdi.exe have some extra sources in subdirectories.

	* tools/winapi/modules.pm:
	winapi_check: We no longer have dlls in nested sub-directories.

	* tools/winapi/winapi_documentation.pm:
	winapi_check: Clarify a pair of error messages.
	Don't use a regular expression if not necessary.

	* tools/winapi/config.pm:
	winapi: Update and simplify file_skip() to match the current sources.

	* tools/winapi/c_parser.pm, tools/winapi/make_parser.pm,
	  tools/winapi/winapi_fixup_statements.pm:
	winapi: Remove useless 'if (0)' statements.

	* tools/winapi/winapi_local.pm:
	winapi_check: Fix handling of the 'longlong' arguments.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api to fix the winapi_check warnings.

	* dlls/ole32/compobj.c, include/objbase.h, tools/winapi/win32.api:
	ole32: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

2007-02-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/devinst.c:
	setupapi: Always return an empty list from SetupDiGetClassDevs.

	* dlls/setupapi/misc.c, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Implement SetupCopyOEMInf{A,W}.

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Implement ExpandEnvironmentStringsForUser{A,W}.

2007-02-19  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Re-arrange the position of functions and vtables in olefont.c to
	avoid forward-declarations.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix IFont::AddRefHFont and IFont::ReleaseRefHFont.
	The tests show that there is a global cache that keeps references to
	HFONTs that is released when all IFont objects are released.
	(Based on a patch by Benjamin Arai.)

2007-02-19  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa: Recognize alsa application ports as generic midi ports.

2007-02-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c, include/commctrl.h:
	comctl32: Implement LM_GETIDEALSIZE for the syslink control.

2007-02-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/defdlg.c, dlls/user32/tests/msg.c:
	user32: Add a test for DefDlgProc(WM_SETFOCUS), make the test pass under Wine.

	* include/msvcrt/direct.h, include/msvcrt/dos.h, include/msvcrt/eh.h,
	  include/msvcrt/io.h, include/msvcrt/math.h,
	  include/msvcrt/mbstring.h, include/msvcrt/setjmp.h,
	  include/msvcrt/stdio.h, include/msvcrt/stdlib.h,
	  include/msvcrt/sys/stat.h, include/msvcrt/sys/timeb.h,
	  include/msvcrt/sys/utime.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h, include/msvcrt/wctype.h:
	msvcrt: Pack the structures on a 8-byte boundary like in PSDK.

	* dlls/gdi32/tests/font.c:
	gdi32: Move get_glyph_indices near its caller test_font_charset.

2007-02-19  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Added range of value for an up-down control.

2007-02-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Initialize a pointer to NULL for the case of no enumerated filters.

	* dlls/quartz/filtergraph.c, include/control.idl:
	quartz: Add IMediaPosition interface and stubs.

	* dlls/quartz/filtergraph.c:
	quartz: Better handle error conditions when connections fail.

2007-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_ConfigureLPTPortCommandOK.

	* dlls/localspl/localmon.c:
	localspl: Implement ConfigureLPTPortCommandOK for XcvDataPort.

	* dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_GetTransmissionRetryTimeout.

	* dlls/localspl/localmon.c:
	localspl: Implement GetTransmissionRetryTimeout for XcvDataPort.

2007-02-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/msvideo16.c:
	msvfw32: Constify a variable.

	* dlls/netapi32/nbt.c:
	netapi32: Constify a variable.

2007-02-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: With FVFs only one stream is used.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use VBOs for index buffers.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the scissor rectangle to the state table.

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c:
	wined3d: No bounds checking is done on sampler / texture numbers.

	* dlls/wined3d/device.c:
	wined3d: Misc comment updates.

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DDevice::EnumDisplayModes.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix d3d8/9 style palettes.

	* dlls/wined3d/device.c:
	wined3d: Remove stream flags from GetStreamSource.

	* dlls/d3d8/device.c, dlls/wined3d/device.c:
	wined3d/d3d8: Move todo about sw vp usage to d3d8.

	* dlls/wined3d/device.c:
	wined3d: Check volume texture creation errors.
	Volumetexture::Release checks for NULL pointers, so releasing a partially
	created texture works.

2007-02-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Store the oldSize as a local variable.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Store the coordinates of infoPtr->calcSize swapped for CCS_VERT.

	* dlls/comctl32/comctl32.h, dlls/comctl32/rebar.c,
	  dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Test and fix the WM_SIZE handler and REBAR_ForceResize.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Rewrite the layout code.

2007-02-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-19  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/thread.c:
	kernel32: Don't run the CreateRemoteThread tests if the child process isn't
	mapped at the same address as the parent process.

	* dlls/ole32/marshal.c:
	ole32: Make an error message more useful by printing the returned error code.

2007-02-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/internet.c:
	wininet: Don't discard the extra info part of a URL in InternetOpenUrl.

2007-02-19  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/parser.l:
	widl: 'control' is an attribute not a keyword.

2007-02-18  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/childwnd.c:
	regedit: Enable WM_RBUTTONDOWN to set the splitbar.

2007-02-19  Kovács András <andras@csevego.net>

	* include/winuser.h:
	winuser.h: Declare some raw input related structures.

2007-02-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/kernel32/debugger.c, dlls/kernel32/kernel32.spec:
	kernel32: Add a CheckRemoteDebuggerPresent stub.

2007-02-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Activate a different context if the active render target is destroyed.

2007-02-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Only scream about unsupported vertex blending when it is used.

	* dlls/wined3d/device.c:
	wined3d: Pretend to support event queries.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Test and fix IDirectDrawSurfaceX::GetDDInterface.

	* dlls/ddraw/ddraw_thunks.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Creating surfaces with old interfaces doesn't addref.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Fix a leak in a test.

	* dlls/ddraw/surface.c:
	ddraw: SetClipper refcounting fix.

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/state.c:
	wined3d: Lighting is calculated for vertices without normals.
	It still should be disabled for transformed vertices though.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/visual.c,
	  dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/Makefile.in, dlls/ddraw/tests/visual.c,
	  dlls/wined3d/device.c:
	wined3d: Visual test framework.

	* dlls/wined3d/swapchain.c:
	wined3d: Remove an outdated TODO comment.
	BltFast takes care of activating the correct context nowadays.

2007-02-17  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Return proper error codes from GraphBuilder_RenderFile.

	* dlls/quartz/filtergraph.c:
	quartz: Make sure the splitter has output plugins before trying to render them.

	* dlls/quartz/dsoundrender.c:
	quartz: Check for the proper ID when querying for the IBasicAudio interface.

	* dlls/quartz/acmwrapper.c:
	quartz: Don't use uninitialized memory in ACMWrapper.

2007-02-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/msxml3/domdoc.c:
	msxml3: Stub out some more getters and setters of IXMLDOMDocument.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec,
	  dlls/netapi32/share.c, include/lmaccess.h, include/lmshare.h:
	netapi32: Add a stub implementation for NetShareDel. Improve the stub for
	NetUserGetLocalGroups.

	* dlls/snmpapi/main.c:
	snmpapi: Add a missing memcpy.

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptGetLogicalWidths.

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add stub implementations for SetupDiGetINFClass and SetupSetSourceList.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Add a stub implementation for FindFirstVolumeMountPoint{A, W}.

2007-02-18  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Stop and free the dsound buffer when needed.

2007-02-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Fixed potential overflow.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Return when not finding the name.

	* dlls/comctl32/tests/header.c:
	comctl32: Fixed new header test.

2007-02-16  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/msmangle.c:
	winedump: Added a missing free().

2007-02-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Small fixes.

2007-02-18  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/winspool.drv/info.c:
	winspool: Constify some parameters in some functions.

2007-02-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Add new extensions.

2007-02-17  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Don't free user32 objects with a gdi32 function in imagelist test.
	Use DestroyIcon for releasing the resources associated with created icons.

	* include/commctrl.h:
	include: Add macro for ListView_GetOrigin to commctrl.h.
	(Reported by David Saez Padros.)

2007-02-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Initial tests for date and time picker.

2007-02-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Constify some variables.

	* dlls/msi/appsearch.c, dlls/msi/msi.c:
	msi: Constify some variables.

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Constify some variables.

2007-02-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mciseq/mcimidi.c:
	mciseq: Constify a variable.

2007-02-16  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.31.

----------------------------------------------------------------
2007-02-16  Chris Peterson <Chrisp@ucla.edu>

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: New conformance tests for TreeView controls.

2007-02-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-16  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fstat's handling of pipes and char devices.
	For pipes/char devices, st_dev and st_rdev should be the fd, st_nlink
	is always 1, and st_mode is S_IFIFO and S_IFCHR respectively.
	Added tests to prove the new behaviour right.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c, dlls/kernel32/tests/environ.c:
	kernel32: Fix the GetComputerName* functions to not write to the buffer at
	all if there is not enough space.
	Add tests for the GetComputerName* functions that show this issue.
	Fix an off-by-one error in setting the size when there is not enough space.
	Remove the exception handlers for GetComputerNameW,
	GetComputerNameExA/W, since testing on XP SP2 shows that access
	violations are not caught and these are not present on Win9x, which
	does have an exception handler.

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Track the impersonation level of tokens.

	* server/token.c:
	server: Track IDs for tokens and modifications made to tokens.

2007-02-15  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Added monthcal test cases.

2007-02-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmapIndirect should ignore the provided bm.bmWidthBytes.

2007-02-15  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: Add missing '\n's to ok() calls.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9.h include from wined3d_private.h.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h,
	  include/wine/wined3d_types.h:
	wined3d: Get rid of any remaining d3d9 stuff in directx.c.

	* dlls/wined3d/context.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCREATE flags and use them.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Fix WINED3DPRESENT_PARAMETERS and use it instead of
	D3DPRESENT_PARAMETERS.

2007-02-15  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add a vectored exception handling test to the existing RtlRaiseException
	test.
	Show that context changes in vectored handler also affect stack handlers.
	Show that vectored handlers also get the changed context.Eip value.

2007-02-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Create a window for justification tests that generate output
	instead of painting over the desktop.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for token impersonation levels and what operations are
	allowed at each level.

	* dlls/advapi32/tests/security.c:
	advapi32: Add some more tests for AccessCheck that determine what
	token impersonation levels it accepts and to show that it doesn't
	accept primary tokens.

	* dlls/dbghelp/stack.c:
	dbghelp: nread can be NULL for read_mem and read_mem64.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c:
	d3d8: Set WINED3DPRESENT_PARAMETERS.MultiSampleQuality to a valid pointer.

	* dlls/wined3d/surface.c:
	wined3d: Convert the full surface for now.
	Until we have proper subrectangle handling for offscreen surfaces,
	surface conversion has to use the real surface sizes, and not the size
	of the opengl subrectangle that it is going to upload. Due to the
	power of 2 limitations the gl height may be bigger than the real
	surface height. If that is not the case, the uploading function will
	pick the correct parts from the converted surface data.

	* dlls/wined3d/surface.c:
	wined3d: Read offscreen render targets upside down when blitting them to
	a texture.

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/query.c,
	  dlls/wined3d/device.c:
	wined3d: Test for supported queries.
	This test contains a table of known supported / known unsupported
	queries. In theory wined3d could just report the queries it supports,
	but applications may make some assumtions regarding supported /
	unsupported queries and stop working if they find a query unexpectadely
	supported or unsupported. It also tests what is supposed to happen if an
	unsupported query is created.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	6/10: WineD3D: rsq and rcp instructions may need a default swizzle in arb.
	ARB shaders need a swizzle for the RSQ and RCP instructions, while d3d
	shaders do not. The DirectX sdk says that the x component is used if
	no swizzle is given.

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Restore the display mode when releasing a swapchain.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped mag filters by ignoring the mipmap parameter.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped TEXTUREMIN render states.

	* dlls/wined3d/basetexture.c:
	wined3d: Remove empty texture stage applying loop.

	* dlls/ddraw/device.c:
	ddraw: Forward D3DRS_TEXTUREADDRESS* and D3DTSS_ADDRESS* to sampler states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Skip the SYMBOL_CHARSET test if Symbol or Wingdings is not installed.

	* dlls/gdi32/tests/font.c:
	gdi32: Fix a typo in the memcmp call.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Get rid of any remaining d3d9 stuff in surface.c and surface_gdi.c.

	* dlls/wined3d/stateblock.c:
	wined3d: Get rid of any remaining d3d9 stuff in stateblock.c.

	* dlls/wined3d/state.c:
	wined3d: Get rid of any remaining d3d9 stuff in state.c.

	* dlls/wined3d/query.c:
	wined3d: Use WINED3DISSUE_BEGIN / WINED3DISSUE_END rather than D3DISSUE_BEGIN
	/ D3DISSUE_END.

	* dlls/wined3d/resource.c, include/wine/wined3d_types.h:
	wined3d: Add the WINED3DSPD_IUNKNOWN flag and use it.

	* dlls/wined3d/palette.c:
	wined3d: Use WINED3DRTYPE_SURFACE rather than D3DRTYPE_SURFACE.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DVS20 & WINED3DVS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPS20 & WINED3DPS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DDTCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DLINECAPS flags and use them.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Change internal imagelist bitmap storage in the way applications
	with pre-compiled imagelists expect it.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more tests for DuplicateHandle security.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	ntdll/server: Implement NtSetSecurityObject. With tests.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/object.c, server/object.h:
	server: Add security descriptor field to object struct.

2007-02-08  Pedro Araujo Chaves Jr <inckie@gmail.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Fix for GetTextExtentExPointW() and ExtTextOutW().

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPTADDRESSCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPCMPCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPMISCCAPS flags and use them.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPBLENDCAPS flags and use them.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DSTENCILCAPS flags and use them.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_caps.h:
	wined3d: Add WINED3DTEXOPCAPS flags and use them.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Restore blitting environment after modifying it.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: alphaop fixes for color keying.

	* dlls/wined3d/state.c:
	wined3d: Enable color keying only for surfaces without an alpha channel.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	ddraw, wined3d: Color keying tests and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Accelerated blits from and to offscreen render targets.

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Convert and load U8V8 surfaces as rgb.
	GL_INDEX is definitly not the way to load U8V8 surfaces

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Implement texbem in arb, improve it in glsl.

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Load one bump mapping environment matrix into pixel shaders if needed.

	* dlls/wined3d/state.c:
	wined3d: Give the bump env matrices their own states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Revert 1440eb5a35dc95dea1836d9035b51e2b15d83703 and add the test showing
	that the change was wrong.

2007-02-14  Jason Green <jave27@gmail.com>

	* dlls/riched20/editor.c:
	riched20: If outside of the richedit window, return earlier.
	Prevents a crash when selecting text outside of a richedit control box.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexshader.c:
	wined3d: Use WINED3D_OK rather than D3D_OK.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Use WINED3DPRESENT_BACK_BUFFER_MAX rather than
	D3DPRESENT_BACK_BUFFER_MAX.

	* dlls/wined3d/device.c:
	wined3d: Use WINED3DUSAGE rather than D3DUSAGE.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Use WINED3DSTREAMSOURCE_INSTANCEDATA rather than
	D3DSTREAMSOURCE_INSTANCEDATA.

2007-02-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Do not access NULL when HeapAlloc failed.

2007-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/dialog.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/resource.rc:
	user32: Fix error return values in DialogBoxParam + simple test.

2007-02-11  Steven Stein <frosty522@wourld.com>

	* dlls/msi/action.c:
	msi: ValidateProductID action stub.

	* dlls/msi/dialog.c:
	msi: Added "Default" control condition to msi_dialog_set_control_condition.

2007-02-12  Ivan Sinitsin <ivan@etersoft.ru>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Set the right background color of the dialog window "Choose color".

2007-02-11  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Start items in StartUp folder on boot.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Test creating shell links for commands on path.

	* dlls/shell32/shelllink.c:
	shell32: Properly create shell links for commands on path.

2007-02-13  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/painting.c, dlls/user32/tests/win.c:
	user32: Scroll window fix.
	Fix the case where the scrolling amount exceeds the window but still
	falls within the clipping rect. This generates an additional update
	region that needs to be invalidated.

2007-02-12  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/trackbar.c:
	comctl32: Add trackbar tests.

2007-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/comctl32/string.c, dlls/comdlg32/printdlg.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/oleaut32/tests/vartest.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/string.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/winspool.drv/tests/info.c, dlls/ws2_32/socket.c,
	  include/ddraw.h, include/wine/mmsystem16.h,
	  programs/uninstaller/main.c:
	Assorted spelling fixes.

2007-02-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Constify some variables.

	* dlls/itss/moniker.c:
	itss: Constify a variable.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Constify a variable.

2007-02-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: More fullscreen window fixes.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/vertexdeclaration.c:
	wined3d: Properly release the converted vertex declaration.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Instancing emulation.

	* dlls/wined3d/state.c:
	wined3d: Correctly load vertex attributes with a stride of 0.

	* dlls/wined3d/device.c:
	wined3d: Do not leave SetStreamSource early.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Do not release the local vertex buffer copy.

	* dlls/wined3d/device.c:
	wined3d: SetStreamSource does not modify stream flags.

	* include/wine/wined3d_gl.h:
	wined3d: Load single attribute setter functions.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move lights to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replace the light chain with a hashmap.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, include/wine/library.h:
	winex11.drv: Added a check for the ATI driver corrupting %fs.
	Based on a patch by Lei Zhang.

	* dlls/shell32/shlfileop.c:
	shell32: Don't wrap SHELL_ConfirmIDs in an assert. Fixed return value.

	* dlls/d3d8/vertexdeclaration.c:
	d3d8: Avoid a size_t printf format warning.

2007-02-12  Shanren Zhou <shanren@ucla.edu>

	* dlls/comctl32/tests/header.c:
	comctl32: Add header tests.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Make load_gecko thread safe.

2007-02-13  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/info.c, include/winver.h:
	version: Constify a formal parameter of VerQueryValue{A|W}().

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Find pending custom actions by GUID.

2007-02-13  Marcus Meissner <meissner@suse.de>

	* tools/bin2res.c:
	bin2res: Use fstat, handle errors.

2007-02-13  Lei Zhang <thestig@google.com>

	* tools/wineshelllink:
	tools/wineshelllink: Create links with WINEPREFIX.

2007-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Avoid sending unwanted DM_GETDEFID/DM_SETDEFID messages.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	d3d8: Don't store the d3d8 declaration in the wined3d object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d8: Move loading local d3d8 vertex shader constants from wined3d to d3d8.

	* dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/vertexdeclaration.c, dlls/wined3d/device.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d9: Don't store the d3d9 declaration in the wined3d object.

	* dlls/d3d8/device.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: Store the d3d8 vertex declaration in the d3d8 vertex shader.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Add an IDirect3DVertexDeclaration8 class to hold the wined3d vertex
	declaration.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDECLUSAGE, use it.

	* include/wine/wined3d_types.h:
	wined3d: Get rid of WINED3DSHADERDECLUSAGE.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Don't use WINED3DSHADERDECLUSAGE_PSIZE / WINED3DSHADERDECLUSAGE_FOG.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/fdi.c, dlls/msi/tests/install.c:
	cabinet: Fixed fd leak in case of error.

2007-02-14  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c:
	msvcrt: Implemented stat64, wstat64 and fstat64.
	Change all other variations of stat use the stat64 family, since it is
	the most general.

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h,
	  include/msvcrt/sys/types.h, include/msvcrt/wchar.h:
	msvcrt: Added declarations for functions and structures related to stat64.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/painting.c:
	gdi32: Fixed typo in AngleArc.

2007-02-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Loop through the rest of the possible filters even when a connection
	fails.

	* tools/wine.inf:
	wine.inf: Add quartz.dll to the list of installed fake DLLs.

	* dlls/quartz/avisplit.c:
	quartz: Remove 1GB AVI size limitation.

	* dlls/quartz/filesource.c:
	quartz: Properly handle input parameters in FileSource_GetCurFile.

2007-02-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Do not allocate compressed surfaces with glTexImage2D.

	* dlls/wined3d/swapchain.c:
	wined3d: Swap the SFLAG_DIBSECTION flag when swaping hdc and memory.

	* dlls/wined3d/device.c:
	wined3d: Check error conditions before creating the object.

	* dlls/wined3d/surface.c:
	wined3d: Partial render target locking.

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Always use np2 repacking if no native np2 support is available.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target locking.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove pow2Size from the surfaces.

	* dlls/wined3d/device.c:
	wined3d: Show fullscreen rendering windows.

	* dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: GetRenderTargetData can call BltFast.

	* dlls/wined3d/drawprim.c:
	wined3d: Dirtify the render targets, not the primary swapchain on draws.

2007-02-13  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/treeview.c:
	comctl32: Remove redundant NULL checks before Free() calls.

	* dlls/comctl32/tests/misc.c:
	comctl32: Add tests for Alloc() and friends.

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/misc.c,
	  dlls/comctl32/tests/string.c:
	comctl32: Rename 'string' test to 'misc'.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Cleanup the pixelshader() state handler a little bit.

	* dlls/wined3d/state.c:
	wined3d: Always select the correct shader pair in the vertexdeclaration()
	state handler.

2007-02-13  Vitaly Lipatov <lav@etersoft.ru>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Nl.rc, programs/cmd/No.rc, programs/cmd/Pl.rc,
	  programs/cmd/Pt.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc:
	cmd: Fix program name.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c:
	mshtml: Don't release window if it wasn't created.

2007-02-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Added comments about frozen/not frozen interface.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use wine_url in GetSpec if possible.

	* dlls/mshtml/nsio.c:
	mshtml: Forward GetAsciiSpec to GetSpec.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Added SchemeIs implementation.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return "wine" as scheme of nsIURI if wine_url is set.

2007-02-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Get the primary group from the token's groups.

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Remove an unused initializer.

	* dlls/ole32/moniker.c:
	ole32: Add missing parameter for RunningObjectTableImpl_UnInitialize.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/tests/install.c:
	msi: Conformance test, check that INSTALLUILEVEL flags don't trigger UI install.

2007-01-19  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Add tests for WM_SETICON.

	* dlls/user32/defwnd.c:
	user32: Handle WM_SETICON message similarly to WM_SETTEXT.

2007-02-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Allow APCs to run while waiting for a debug event reply.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: We still have to flush the display after mapping a window.
	The Photoshop splash screen needs this.

2007-02-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Popup windows with system menu are managed.

2007-02-10  Leslie Choong <septikus@gmail.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Getter and setter tests for updown control.

2007-02-10  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Added range of value for all up-down controls on config dialog.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: fontdlg: Add initialisation for comboboxes.

2007-02-09  Tijl Coosemans <tijl@ulyssis.org>

	* tools/wineshelllink:
	wineshelllink: Fix mktemp usage on FreeBSD.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Fixed WCHAR overflow.

2007-01-27  Kim Lilliestierna <kill@itr.no>

	* programs/cmd/builtins.c:
	cmd: Fix the "move" command the same way as the "copy" command.

2007-02-13  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/msmangle.c:
	winedump: Free function_name on all error paths.

2007-02-12  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Test that shows RtlRaiseException with EXCEPTION_BREAKPOINT mangles
	Eip of context.

2007-02-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/registrar.c:
	atl: Fix a comparison between signed and unsigned.

	* dlls/wldap32/page.c:
	wldap32: Missing HeapFree on error path (found by Smatch).

2007-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Implement ImageList_GetFlags.

	* dlls/user32/mdi.c:
	user32: Activate an MDI child on WM_SETFOCUS as well as on WM_CHILDACTIVATE.

2007-02-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Constify some variables.

	* dlls/amstream/mediastream.c:
	amstream: Constify a variable.

2007-02-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to create onscreen contexts.

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c:
	d3d8: Deleting bound shaders unbinds them.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to select the primary render target.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the context array dynamic.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target to texture blits.

	* dlls/wined3d/context.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for blitting.

	* dlls/wined3d/Makefile.in, dlls/wined3d/context.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for drawing.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store dirty states per context.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store state optmization members in the context.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a per context structure for context management.

2007-02-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/http.c:
	wininet: Fix a test that fails on Windows.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Skip empty accept type strings in HttpOpenRequest.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add tests to show the order of parameter checking.

2007-02-12  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The format structures used in the marshaling code should have 1-byte
	alignment.

	* include/objidl.idl:
	include: Add more EOAC_* enumeration values to objidl.idl.
	Also add the SOLE_AUTHENTICATION_INFO and SOLE_AUTHENTICATION_LIST
	structures which are used by CoInitializeSecurity.

	* include/rpcdce.h:
	include: Fix a typo in a comment in rpcdce.h.

	* include/objidl.idl:
	include: Fix a typo in the parameter name for IClientSecurity::QueryBlanket
	in objidl.idl.

2007-02-12  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Fix compilation on systems that don't support nameless structs.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Add prototypes to winnt.h for the SList functions.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Added mk protocol handling test.

	* dlls/urlmon/tests/url.c:
	urlmon: Added test of handlong its protocol.

	* dlls/urlmon/binding.c:
	urlmon: Depend on Read result in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Store download state in Binding object.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Enter new named pipe connections into the protocol connection list.

2007-02-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Make ImageList_Read and ImageList_Write compatible with each other,
	simplify the code.

2007-02-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store dll based custom actions in a separate list.

	* dlls/msi/custom.c:
	msi: Simplify ACTION_FinishCustomActions.

2007-02-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Properly round negative values in shader_glsl_mov.

2007-02-10  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/wordpad.c, tools/wine.inf:
	wordpad: Open .wri files in wordpad.

2007-02-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/winedump.h:
	winedump: Removed a couple of unused elements out of struct symbol.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/lnk.c,
	  tools/winedump/pdb.c, tools/winedump/winedump.h:
	winedump: Simplify guid dumping.

	* tools/winedump/dump.c, tools/winedump/main.c, tools/winedump/msc.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Larger usage of symbol demangling while dumping.

	* programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/intvar.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Support for debugging child processes.
	Added internal flag (AlsoDebugProcChild) to let winedbg debug both
	parent and child (in the same WineDbg session).

	* programs/winedbg/memory.c:
	winedbg: Correctly handle invalid read conditions.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add another test.

2007-02-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Handle resource protocol like chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Call SetWineURL in Clone.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/task.c:
	mshtml: Start binding asynchronously.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Move AddRequest call to OnStartBinding.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used [Get|Set]Moniker functions.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Don't test the contents of an output parameter.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Don't store moniker in nsURI.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added [Set|Get]WineURL functions to nsIWineURI.

	* dlls/mshtml/nsio.c:
	mshtml: Store URL in unicode in nsURI.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix handling mk URLs.

	* dlls/shlwapi/url.c:
	shlwapi: Unicodified scheme detecting code.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Fix handling URLs without '/' in object name.

2007-02-09  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Scrolling does not cause label being edited to lose focus.

2007-02-10  Joris Huizer <joris_huizer@yahoo.com>

	* tools/winegcc/utils.c, tools/winegcc/utils.h, tools/winegcc/winegcc.c:
	winegcc: Sign-compare fixes.

2007-02-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Split process_handle() into two separate functions.

2007-02-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h,
	  dlls/shell32/tests/shlfileop.c:
	shell32: Allow overwriting files in SHFileOperation(FO_COPY) (with confirmation
	dialogs).

	* dlls/shell32/shell32_En.rc, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Add a confirmation dialog with a "Yes to All" option.

	* dlls/shell32/brsfolder.c:
	shell32: Make sure BrowseForFolder doesn't return NULL for the Desktop folder
	as this means a cancel.

2007-02-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make shader_cleanup more useful.

2007-02-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: BeginScene and EndScene tests and fixes.

2007-02-09  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/oleaut32/tests/Makefile.in,
	  tools/make_makefiles:
	Make.rules: Automatically generate the header for all types of idl sources.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: wnsprintfA() is missing on Win9x, so use sprintf() instead.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fix test_GetDisplayName() to cope with a left-over test directory.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: ILFree() and ILIsEqual() are exported by ordinal only on
	Win9x. So use GetProcAddress().

	* dlls/ntdll/misc.c, dlls/ntdll/string.c, tools/winapi/win32.api:
	ntdll: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/winapi.pm, tools/winapi/winapi_local.pm:
	winapi_check: Fix handling of the -register functions.
	Unless specified otherwise they are implemented by a '__regs_' function.
	Keep track of the '-i386' flag so we can detect CONTEXT* vs. CONTEXT86*
	mismatches.
	Remove an unneeded and broken hack meant to fudge the number of parameters.

	* tools/winapi/winapi_local.pm:
	winapi_check: '-register' is compatible with stdcall. So remove this obsolete
	warning.

	* tools/winapi/win32.api:
	ntdsapi: Update win32.api to fix the winapi_check warnings.

	* include/ntdsapi.h:
	ntdsapi: Add a commented-out #include directive as a reminder.

	* include/winnt.h:
	Make winnt.h C++ compatible.

	* include/winbase.h:
	kernel32: Add prototypes to winbase.h for the SList functions.

	* dlls/ntdll/ntdll.spec:
	ntdll: The fourth parameter of RtlUnwind() is a pointer, not a long.

	* dlls/ntdll/ntdll.spec:
	ntdll: ZwRaiseException() is not a register function.

2007-02-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/comm.c:
	kernel32/tests: Fixed several uninitialized variables.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/listbox.c:
	user32/listbox: Remove deadcode (Coverity).

2007-02-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/exit.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Use raise(SIGABRT) for abort() and assert().

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented the raise function.

	* dlls/msvcrt/except.c:
	msvcrt: Reset a signal to DFL before it's used.

2007-02-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-08  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Add Omsk time zone.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/vxd.c:
	kernel32: Remove CloseHandle call.

	* dlls/devenum/devenum_main.c:
	devenum: Initialize hKeysub.

	* dlls/ntdll/file.c:
	ntdll: Initialize needs_close to FALSE.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/riched20/row.c:
	riched20: Removed more dead code.

	* tools/wmc/mcl.c:
	wmc: inputbuffer is a WCHAR array.

2007-02-08  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comctl32/comctl_Ru.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/msi/msi_Ru.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/user32/resources/user32_Ru.rc, dlls/winmm/winmm_Ru.rc:
	Some fixes in russian resources.

2007-02-08  Hans Leidekker <ecl@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Keep using the slash as path separator.

2007-02-08  Hans Leidekker <hans@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Use "=" instead of "==" to compare strings.

2007-02-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Don't skip files continued from a previous cabinet.

2007-02-07  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Create the LISTVIEW_INFO in WM_NCCREATE.

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the return value of ITypeInfo::Invoke when the property-put
	named argument isn't DISPID_PROPERTYPUT.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Implement automatic value getting in ITypeInfo::Invoke.
	If an IDispatch object is returned from in the retval for a propget
	function and an extra parameter was passed in to ITypeInfo::Invoke then
	it should call IDispatch::Invoke on the returned object with the extra
	parameter to retrieve the value of the object, which is then returned in
	pVarResult.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Fix the IDL for the "Value" method in the tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Comment out "dual" attribute of IKindaEnumWidget in tmarshal test
	to cause the interface to be marshaled correctly.
	This fixes a bunch of tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Always register the typelib for the tmarshal tests.

2007-02-08  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/childwnd.c:
	regedit: Do not use a local copy of a global pointer.

	* programs/regedit/childwnd.c:
	regedit: Do not pass a global available pointer to a static function.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/framewnd.c:
	regedit: Declare some variables static.

2007-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix continue_call handling.

	* dlls/urlmon/binding.c:
	urlmon: Call OnProgress directly in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_DIRECTBIND) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Fix ReportResult on async protocols.

2007-02-08  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Catch the -Embedding flag and print out a message.

	* dlls/msi/msi_main.c, dlls/msi/msipriv.h, dlls/msi/regsvr.c:
	msi: Register the typelib.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Fix typo. Should be group not owner.

2007-02-07  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/rtl.c:
	ntdll: Fix compile errors for Win64.

	* include/winnt.h:
	winnt.h: Correct declaration of SLIST_HEADER and SLIST_ENTRY for Win64.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/clusapi.h:
	clusapi: Make clusapi.h C++ compatible.

2007-02-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/clipboard.c, dlls/winex11.drv/codepage.c:
	winex11.drv: Remove unused items.

2007-02-08  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/parser.l:
	widl: Rename parser states to uppercase to avoid conflicts.

2007-02-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/defwnd.c:
	user32: Don't crash if a WM_NCCREATE message is sent with lParam=0.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Fix typo (Coverity).

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix a one-off test failure in the tmarshal tests -
	TYPE_E_LIBNOTREGISTERED is an expected return value.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: A value of PARAMFLAG_FNONE for wParamFlags means that the parameter
	is also marshaled and unmarshaled in the PARAMFLAG_FOUT case.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove unused resource.

2007-02-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use queue for whole ReportData implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_BEGINDOWNLOADDATA) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Use custom task structs.

	* dlls/urlmon/binding.c:
	urlmon: Use proc instead of enum in task queue.

	* dlls/urlmon/binding.c:
	urlmon: Unlock protocol only if it was locked.

	* dlls/urlmon/binding.c:
	urlmon: Set BINDF_NEEDFILE flag for all not urlmon protocols.

2007-02-07  Ken Thomases <ken@codeweavers.com>

	* programs/explorer/diskarb.c:
	explorer: Fix leak: always release the CFDictionary.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Remove obsolete FIXME.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/advpub.h, tools/winapi/win32.api:
	advpack: Make the header more consistent with the implementation and fix the
	winapi_check warnings.

	* dlls/credui/credui_main.c, include/wincred.h, tools/winapi/win32.api:
	credui: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win16.api, tools/winapi/win32.api:
	winsock & ws2_32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h, tools/winapi/win32.api:
	atl: Better match the PSDK types and fix the winapi_check warnings.

	* include/clusapi.h, tools/winapi/win32.api:
	clusapi: Better match the PSDK types and fix the winapi_check warnings.
	This also makes the headers and implementation more consistent.

	* include/wincred.h:
	credui: Make wincred.h C++ compatible.

	* dlls/browseui/tests/autocomplete.c:
	browseui: Add missing '\n's to ok() calls.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/rpc_epmap.c,
	  include/rpcndr.h, tools/winapi/win32.api:
	rpcrt4: Better match the PSDK types and fix the winapi_check warnings.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add a few more tests.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

2007-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/browseui/aclmulti.c:
	browseui: Move 'static' to the beginning of the declaration specifier.

2007-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add a test for the version method.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Add test cases for update rects affected by ShowWindow.

2007-02-02  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/combo.c:
	user32: We are calculating the height for the drop down based on
	number of items however the if statement used nIHeight (just the
	height of 1 item) and not nHeight (the height all the items).

2007-02-07  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Output endpoint information in client and server files.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add a string list type and use it for the endpoint attribute.

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Only recognize attribute keywords inside an attribute list.

	* dlls/msvcrt/file.c:
	msvcrt: Implement fopen/wfopen on top of fsopen/wfsopen instead of the other
	way around.

2007-02-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Clean up magic numbers.

	* dlls/msi/dialog.c:
	msi: Honor attributes for combobox.

	* dlls/msi/dialog.c:
	msi: Honor msidbControlAttributesSorted attribute for list box.

2007-02-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implement _mbbtype according to MSDN.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/tests/shlfileop.c:
	shell32: shlfileop tests: Avoid buffer overflows for paths.

2007-02-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/wintab.c:
	winex11drv: Do extra error checking when opening XInput device.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c:
	wininet/ftp.c: Remove unneeded check.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fixes.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fix.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/files.c,
	  dlls/msi/msipriv.h:
	msi: Make sure to ignore UI level flags in dialog and files as well.

2007-02-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/trash.c:
	shell32: Declare some functions static.

	* dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c:
	shell32: Declare some functions static.

	* dlls/shell32/shellole.c:
	shell32: Declare some functions static.

	* dlls/shell32/dialogs.c:
	shell32: Declare some functions static.

2007-02-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Copy bitmaps with CopyImage so that it works also for DIBs
	(based on a patch by Oleg Krylov).

2007-02-06  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tab.c:
	comctl32: Remove unnecessary and misused mask member from TAB_ITEM.

2007-02-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Allow reading from ReportData call.

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fix zone tests.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h:
	hhctrl.ocx: Use mk as default protocol and code clean up.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Use SetWindowRects to set WebBrowser's size.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove useless SetHostNames call.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Ignore the first named argument when invoking property-put methods
	as it is mandatory and doesn't indicate that the arguments will be
	passed in as named ones.

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for named arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Copy the value directly returned from the called function
	if it is not an HRESULT value, instead of getting it from a [retval]
	attribute.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the missing argument handling for non-byref variant arguments.

	* dlls/oleaut32/typelib.c:
	oleaut32: If an error info object was created when the invoked method failed
	then fill in exception info from the error info object.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole32: Add the external references that the server gave to us to any existing
	ifproxy,
	so that the right external reference count is released when the proxy is
	destroyed.
	Protect all changes to refs in the ifproxy using interlocked functions
	and update the thread-safety documentation.

	* dlls/ole32/marshal.c:
	ole32: Release iobject and the IRpcStubBuffer object no matter which code path
	we take.
	Otherwise we would leak a reference for both of these if the ifstub was
	already created.
	Fix the FIXME in the code by releasing the stub manager if necessary.

	* dlls/comctl32/listview.c:
	comctl32: Fix the computation of the select bounds item rect
	and fixup the places that depended on the old behaviour.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a wrapper around the channel supplied to the IDispatch proxy
	to fixup the IID used to connect to the server and fix somewhat common
	"err:rpc:RPCRT4_OpenBinding" messages.

2007-02-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Do not use a static variable to save the insertion position for the
	listview.

	* dlls/msi/dialog.c:
	msi: Store value of the property with each listbox element.
	This makes sure the property is set to the right value even when order in
	listbox is changed.

	* dlls/msi/dialog.c:
	msi: Do not store property for each listbox element, as it is the same one
	for the whole listbox.
	Remove struct msi_listbox_item as it only contains 1 element now.

	* dlls/msi/dialog.c:
	msi: Only insert entries into listbox if property value matches.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/button.c, dlls/user32/tests/msg.c:
	user32: WM_SETFONT on button doesn't repaint directly.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/tests/joystick.c:
	dinput: Don't reset dead zone and saturation when setting data format.
	Additional tests indicate that native doesn't touch previously set
	properties.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui.rc:
	credui: Fix the order of the controls in the dialog so that the
	keyboard shortcuts work correctly and so that tabbing through the
	controls behaves as the user expects.

2007-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Call SearchPath before LoadLibrary so that we get the full path of
	native exes and dlls.
	For builtin dlls prepend the system directory.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: CreateThread returns NULL on error, not INVALID_HANDLE_VALUE.

2007-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Clear the DebugInfo field when a shared heap critical section is
	made global.

	* tools/widl/proxy.c:
	widl: Use the correct type offset when freeing proxy variables.

	* tools/widl/typegen.c:
	widl: Added support for iid_is conformance descriptors.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c,
	  tools/widl/typegen.c:
	widl: size_is and length_is are expression lists now.

	* tools/widl/typegen.c:
	widl: Take array dimensions into account when computing buffer size.

	* tools/widl/typegen.c:
	widl: Add support for arrays of simple types in format strings.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Output correct alignments in type format strings.

2007-02-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Removed dead code (Coverity).

	* dlls/riched20/row.c:
	riched20: Fixed wrong condition (Coverity).

	* programs/oleview/typelib.c:
	oleview: Removed dead code (Coverity).

2007-02-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h, include/msvcrt/wchar.h:
	msvcrt: Align struct _stati64's st_size on an 8 byte boundary.

2007-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c:
	ntdll: Add a stub API documentation to make winapi_check happy.

	* dlls/hid/main.c, include/Makefile.in, include/ddk/hidsdi.h:
	hid: Add the hidsdi.h header.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c, include/rpcdce.h,
	  tools/winapi/win32.api:
	rpcrt4: Improve the prototypes Win64 compatibility by replacing long with LONG.

	* tools/winapi/win32.api:
	inseng.dll: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	localspl: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	pstorec: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	gphoto2.ds: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wtsapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	comctl32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	hid: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	compstui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	oleaut32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atlwin.h:
	atl: Protect atlwin.h against multiple inclusions.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv: Remove unneeded cast.

	* dlls/kernel32/tests/sync.c, dlls/winealsa.drv/dsoutput.c:
	Add missing '\n's in traces.

2007-02-06  Mike McCormack <mike@codeweavers.com>

	* tools/widl/parser.y:
	widl: Implement dispinterfaces derived from an interface.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a few more tests for transacted storage.

	* dlls/msi/tests/iface.c:
	msi: Test the dispid for CreateRecord.

	* dlls/msi/msi.rc:
	msi: Add the generated typelib to the resources.

	* dlls/msi/table.c:
	msi: Factor out code to calculate column offsets.

	* dlls/msi/tests/package.c:
	msi: Add a test showing MsiGetProperty returns correct values.

2007-02-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Remove redundant const.

2007-02-05  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c:
	msi: InstallPackage check for UI level must not disregard flags.

2007-02-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/ppd.c:
	wineps.drv: Declare some functions static.

	* dlls/wineps.drv/mkagl.c:
	wineps.drv: Remove unused functions.

	* dlls/user32/message.c:
	user32: Remove unused function.

	* dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Remove unused functions.

	* dlls/shell32/shlexec.c:
	shell32: Remove unused function.

	* dlls/user32/sysparams.c:
	user32: Remove unused variables.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/aclmulti.c,
	  dlls/browseui/browseui.h, dlls/browseui/browseui_main.c,
	  dlls/browseui/regsvr.c, dlls/browseui/tests/Makefile.in,
	  dlls/browseui/tests/autocomplete.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	browseui: Implement and test ACLMulti.

	* dlls/browseui/browseui_main.c:
	browseui: Add class factory.

	* include/shlguid.h, include/shlobj.h:
	include: Add definitions for the multisource AutoComplete list (ACLMulti).

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/browseui.spec,
	  dlls/browseui/browseui_main.c, dlls/browseui/regsvr.c,
	  dlls/browseui/version.rc, tools/wine.inf:
	browseui: Add the browseui DLL.

2007-02-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/internet.h:
	wininet: Remove unused function.

2007-02-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Use correct flag for object instance.
	DIDFT_AXIS is a generic mask for absolute and relative axes.

	* dlls/dinput/joystick_linux.c:
	dinput: Look for all available js* joystick devices.

2007-02-05  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix ntlm_auth version number check when registering the NTLM SSP.

	* dlls/secur32/ntlm.c:
	secur32: Bump minimal required samba version to 3.0.25, 3.0.24 is a bugfix
	release.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Avoid printf format warnings.

	* libs/port/interlocked.c:
	libwine_port: Implemented interlocked_cmpxchg64 for x86_64.

2007-02-02  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/sync.c,
	  dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Slist support.
	Implemented ntdll's RtlInitializeSListHead, RtlQueryDepthSList,
	RtlInterlockedFlushSList, RtlFirstEntrySList,
	RtlInterlockedPushEntrySList, RtlInterlockedPopEntrySList, their
	kernel32 equivalents, and tests.

	* include/wine/port.h, libs/port/interlocked.c:
	libwine_port: Added interlocked_cmpxchg64.

2007-01-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/ftp.c:
	wininet/tests: Add ftp tests.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add the tests for minimize/restore MDI child sequence, fix some failures.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/c_20127.c, libs/wine/cpmap.pl:
	libwine: Hardcode the data for the US-ascii codepage instead of loading a
	unicode.org file.

2007-02-03  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: Added conformance test for nested thread wakeups in the server.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* server/thread.c:
	server: Clear the thread wait before releasing objects to avoid nested calls.
	Reported by Misha Koshelev.

	* include/winnt.h:
	winnt.h: Avoid warnings on Mac OS X.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winedos/devices.c, dlls/winedos/dosaspi.c, dlls/winedos/dosmem.c,
	  dlls/winedos/int09.c, dlls/winedos/int21.c, dlls/winedos/int31.c,
	  dlls/winedos/int67.c, dlls/winedos/interrupts.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/vga.c, dlls/winedos/vga.h,
	  dlls/winedos/vxd.c:
	winedos: Declare some items static.

2007-02-01  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/rasapi32/rasapi.c:
	rasapi32: RasEnumConnections now returns correct buffer size (zero) when there
	are zero connections available.

2007-01-31  John Klehm <xixsimplicityxix@gmail.com>

	* include/ras.h:
	ras.h: Added additional szDeviceType defines.

2007-01-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Use a helper thread instead of asynchronous callbacks.

	* dlls/winealsa.drv/alsa.c:
	winealsa: Cosmetic stuff.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c, dlls/winealsa.drv/waveout.c:
	winealsa: Split driver up in tiny pieces.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/tests/string.c:
	shlwapi: Test string functions when buffer is too small.

2007-02-03  Felix Nawothnig <flexo@holycrap.org>

	* dlls/gdi32/path.c:
	gdi32: Fix offset calculation in PATH_ExtTextOut for >1 chars.

2007-02-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Make sure that we don't read/write beyond the provided buffer in
	GetOutlineTextMetricsA, add a test case.

2007-02-02  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-02-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/tests/joystick.c:
	dinput: Don't reset user specified range in SetDataFormat. With tests.

	* dlls/dinput/joystick_linuxinput.c, dlls/dinput/tests/joystick.c:
	dinput: Initialize user limits with the default 0..65535 range. Add tests.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Return user set limits not the device limits.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't close fd before we done with it.

2007-02-01  Marcus Meissner <meissner@suse.de>

	* dlls/kernel32/ne_module.c:
	kernel32: Initialize owner_exists (Coverity).

	* dlls/dinput/device.c:
	dinput: Fix dereference pointer after NULL check (Coverity).

	* dlls/devenum/devenum_main.c:
	devenum: Fix uninitialized clsidString (Coverity).

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	user32: Although Windows sends WM_GETMINMAXINFO at the window creation time,
	it doesn't use returned values to set window size.

2007-01-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report D3D caps properly for ATI cards.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	winnt.h: Add defines for SLIST_HEADER.

2007-02-03  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advpack/advpack.c, include/advpub.h:
	advpack: Constify the 3rd argument of RebootCheckOnInstall[AW].

2007-02-02  John Morris <mailjohnmorris@gmail.com>

	* dlls/ole32/ole32.spec:
	ole32: Add CoWaitForMultipleHandles to spec file.

2007-01-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/mshtml/Makefile.in:
	mshtml: Add a missing space.

2007-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,PortIsValid.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,MonitorUI.

2007-02-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Declare variable signed to accept possible negative return value
	(Coverity).

	* dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Declare a variable static.

	* dlls/winmm/message16.c:
	winmm: Declare a function static.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c:
	winemp3.acm: Declare some items static.

	* dlls/quartz/pin.c:
	quartz: Fix a typo.
	Should fix Coverity CID-348 (dereference before NULL check).

2007-02-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/draw.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/msstyles.h,
	  dlls/uxtheme/system.c:
	uxtheme: Declare some items static.

2007-01-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/comm16.c, dlls/user32/menu.c:
	user32: Declare some functions static.

2007-01-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c:
	shdocvw: Declare some functions static.

2007-02-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Turn a FIXME to a WARN in order to avoid mangling the output.

	* tools/winedump/lib.c:
	winedump: Add a sanity check before dumping long format library export.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add a trace to MultiByteToWideChar.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Fix lpBand->lpText memory leak in DeleteBand and simplify
	the code.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge SetBandInfoA and SetBandInfoW.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge GetBandInfoA and GetBandInfoW.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge InsertBandA and InsertBandW.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Add some tests for rebar and change the way the header size
	is fixed.

2007-02-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Allow uncompressed files before compressed files in the same media.

2007-02-01  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Try to use the PostSript name of a font.

2007-01-30  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: We don't need to check for the PPD Files key before using
	/etc/printcap.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix marshaling of VARTYPE-less safearrays.

2007-01-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix *printf() handling of negative field width.

2007-01-29  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advapi32/registry.c, dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Fix NtUnloadKey to match the DDK.

	* dlls/wininet/internet.h:
	wininet: config.h police.

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt.h, include/wincrypt.h:
	advapi32: Fix prototypes to match the PSDK.

2007-01-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/factory.c:
	avifil32: Declare some variables static.

2007-01-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/util.c:
	secur32: Declare a function static.

	* dlls/sensapi/sensapi.c:
	sensapi: Declare a variable static.

	* dlls/setupapi/setupx_main.c:
	setupapi: Declare some functions static.

	* dlls/sane.ds/sane_main.c:
	sane.ds: Declare a function static.

	* dlls/serialui/confdlg.c:
	serialui: Declare some items static.

2007-01-27  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/tab.c:
	comctl32: Fix the TAB_ITEM_SIZE macro.

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/spy.c:
	user32: Dump contents of CREATESTRUCT in WM_[NC]CREATE of the message spy.

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmap and friends should return stock DEFAULT_BITMAP if requested
	bitmap width or height is 0.

2007-01-26  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Fill out the username, password and domain edit boxes from the values
	input to CredUIPromptForCredentialsW.
	Set the focus to the password edit box, unless the user edit box is empty.

	* dlls/credui/credui.spec, dlls/credui/credui_main.c:
	credui: Implement CredUIParseUserName.

	* dlls/credui/credui_main.c:
	credui: Set the focus to the username edit control.

2007-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Code clean up.

	* dlls/urlmon/session.c:
	urlmon: Call AddRef in CoInternetGetSession.

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Don't unescape url in UrlCombineW with URL_FILE_USE_PATHURL flag.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shelllink.c:
	shell32: Remove an unneeded local variable initialization.

	* tools/winapi/winapi.pm:
	winapi_check: Print a warning when 'long' is used in an API file as this type
	is not Win64 compatible.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* programs/oleview/typelib.c:
	oleview: Remove many casts.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/msiserver.idl:
	msi: Add a (mostly empty) typelib for the MsiServer interface.

	* tools/widl/write_msft.c:
	widl: Handle TKIND_DISPATCH when generating MSFT typelibs.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Use git-ls-files if possible to build tags files.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi.pm:
	winapi_check: Print the line number when an error or warning is found in the
	API files.

	* include/mscat.h:
	wintrust: Add missing packing directives to mscat.h.

	* include/mscat.h:
	wintrust: Add missing prototypes and a missing include directive to mscat.h.

	* dlls/wintrust/register.c, include/wintrust.h, tools/winapi/win32.api:
	wintrust: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	usp10: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winecoreaudio.drv: Update win32.api to fix the winapi_check warnings.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add todos around tests that aren't being run yet, but will fail.

	* dlls/msi/msi_main.c:
	msi: Fix a typo.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winspool.drv/Makefile.in:
	winspool: Fix make rules for import library.

	* dlls/snmpapi/tests/util.c:
	snmpapi: Fix printf format warnings in tests.

2007-01-25  Mark Adams <mark@transgaming.com>

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Support for non-linux platforms, including Mac OS X.
	- Add error messages when unimplemented functions are called on
	non-linux platforms.
	- Implement retrieving the interface list on MacOS X (and other
	platforms that use NET_RT_DUMP).

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Filter out no-ip addresses when building ip address table.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Clarify interface counting.

2007-01-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/fdi.c:
	cabinet: Improve initialization of some arrays.

2007-01-25  Joris Huizer <joris_huizer@yahoo.com>

	* libs/wine/loader.c, libs/wine/mmap.c:
	libwine: sign-compare fixes.

2007-01-25  Francois Gouget <fgouget@free.fr>

	* dlls/snmpapi/main.c, include/snmp.h, tools/winapi/win32.api:
	snmpapi: Fix the winapi_check warnings.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Allocate a buffer in WCHARs not CHARs.

2007-01-25  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* server/window.c:
	wineserver: Validate the children of windows being hidden.
	Prevents paint_count values from being skewed when hiding windows.

2007-01-25  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Don't restrict the number of params of [prop*] functions.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Add VT_DATE support to typelib generation.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/proxy.c:
	widl: Make some generated variables static and/or const.

	* tools/widl/proxy.c:
	widl: Avoid dependency on COBJMACROS in generated code.

	* tools/widl/proxy.c:
	widl: Define __midl_proxy in the generated proxy code.

	* tools/widl/proxy.c:
	widl: Add a few more fields in the stub descriptor.

	* tools/widl/proxy.c:
	widl: Rename a couple of variables to make the code closer to what midl
	generates.

	* tools/widl/proxy.c:
	widl: Initialize local variables in stub functions.

	* tools/widl/proxy.c:
	widl: Use the typegen function for marshalling/unmarshalling in proxies.

	* tools/widl/typegen.c:
	widl: Copy the UserMarshal support into the generic code.

2007-01-25  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.30.

----------------------------------------------------------------
2007-01-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Prevent a crash on error while creating a token.

	* dlls/advapi32/tests/security.c, server/handle.c:
	advapi32: Add more tests for granted access mask. Fix test on Wine.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server/ntdll: Simplistic implementation of NtQueryObject(ObjectBasicInformation).

	* server/token.c:
	server: Reverse return value and status in token_access_check to be consistent.

	* dlls/advapi32/tests/security.c, server/token.c:
	advapi32: Add few more tests for token access check and fix it on Wine.

2007-01-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/qcap/dllsetup.c:
	qcap: Initialize a variable (Coverity).

2007-01-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/rsa.c:
	rsaenh: Declare some functions static.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Declare some functions static.

2007-01-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h:
	rpcrt4: RPCRT4_strdupWtoA and RPCRT4_strdupAtoW don't change the input string,
	so make the input const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Stash away NetworkOptions passed in from the binding string so that
	transports can look at the string if needed.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi_main.c:
	msi: Implement IDispatch->CreateInstance() for the msi server dll.

	* dlls/msi/msi_main.c:
	msi: Implement IClassFactory->QueryInterface() for the msi server dll.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/iface.c:
	msi: Add a test for the IMsiServer interface.

2007-01-25  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-01-25  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Create undos in StreamIn at the right times. Adds tests for when
	StreamIn should be undoable.

2007-01-24  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/reader.c:
	riched20: Remove excessive traces from reader.c.

2007-01-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Copy the GL extensions string because it may be freed.

2007-01-24  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Fix type of an empty string to avoid warning.

	* dlls/opengl32/wgl.c:
	opengl32: Remove redundant const.

2007-01-24  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/imagelist.c:
	comctl32: Degrade ERR to WARN.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: The typelib version numbers should be written to the registry in hex.

2007-01-24  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	sfc_os: Update win32.api to fix the winapi_check warnings.

	* dlls/sfc_os/sfc_os.c, include/sfc.h:
	sfc_os: Add a prototype for SfcIsKeyProtected().

	* dlls/mscoree/mscoree_main.c:
	mscoree: _CorValidateImage() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/shell32/shell32_main.c:
	shell32: SHLoadNonloadedIconOverlayIdentifiers() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Fix the spec file to better match the SymGetSymFromAddr64() prototype.
	This fixes a winapi_check warning.

	* dlls/snmpapi/main.c:
	snmpapi: Add a missing '\n' trace.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: SnmpUtilDbgPrint() is a vararg and not an stdcall function.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/typegen.c:
	widl: Add support for some simple pointer types.

	* tools/widl/typegen.c:
	widl: Store the interface id in _StubMsg.MaxCount for iid_is pointers.

	* tools/widl/typegen.c:
	widl: Fix alignment check for struct members format string.

	* tools/widl/typegen.c:
	widl: Fix possible crash in write_array_tfs.

	* tools/widl/typegen.c:
	widl: Skip local functions when building format strings.

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Export a function to compute the proc format string size for a function.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move initialization of the stub buffer size into
	write_remoting_arguments().

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Move support for stub arguments to typegen.c to make it usable for
	proxies too.

	* .gitignore, include/.gitignore, include/Makefile.in,
	  tools/make_makefiles:
	include: Simplify the variable declarations in the makefile to allow
	make_makefiles to parse it.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error in converting the password to unicode.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/debugtools.c:
	ntdll: Properly handle embedded nulls in NTDLL_dbg_vprintf.

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added BindProtocol's IInternetPriority implementation.

2007-01-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/style.c,
	  dlls/riched20/undo.c:
	riched20: Declare some functions static.

	* dlls/quartz/parser.c:
	quartz: Declare a function static.

2007-01-23  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Use CharFromPos instead of FindPixelPos in LinkNotify so it accounts
	for scrolling.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_LIMITTEXT and some simple tests.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error when copying the password to the helper.
	This fixes NTLM authentication with Outlook2003.

2007-01-24  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: When copying quality of service, deep copy TransportCredentials
	structure too.
	Remove some no longer relevant fixmes.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_conn_open_pipe.
	Fix a typo in rpcrt4_conn_open_pipe where the initial setting of dwFlags
	was done inside the switch statement instead of at the indented place of
	at the start of the block (thanks to Jan Zerebecki for noticing this bug).

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added CreateBinding test.

	* dlls/urlmon/bindprot.c:
	urlmon: Added beginning BindProtocol implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return CLSID from get_protocol_handler.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetProtocolSink interface to BindProtocol.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetPriority interface to BindProtocol.

	* dlls/urlmon/Makefile.in, dlls/urlmon/bindprot.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added IInternetSession::CreateBinding beginning implementation.

2007-01-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Cast-qual warning fixes.

	* dlls/ole32/tests/compobj.c:
	ole32/tests: Cast-qual warning fixes.

	* dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Cast-qual warning fixes.

2007-01-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleType{Marshall,Unmarshall}.

2007-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptPlace and ScriptShape.

	* dlls/usp10/usp10.c:
	usp10: Move text metrics into the script cache. Start using accessor functions.

	* dlls/usp10/tests/usp10.c:
	usp10: Remove duplicate font selection code from the tests.

2007-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Do not use DIB APIs for bitmap bits in a device dependent format.

	* dlls/user32/cursoricon.c:
	user32: Using DIB APIs to convert a DDB to monochrome is wrong, do it
	differently.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Fix the FSF address.

2007-01-17  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/builtins.c:
	cmd: In function WCMD_goto() changed strcmp() to lstrcmpi().

	* programs/cmd/builtins.c:
	cmd: Remove incorrect return in WCMD_if().

2007-01-18  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/console.c:
	kernel32: Add comment for  GetConsoleWindow.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlguid.h, include/shobjidl.idl:
	shell32: Implement the property sheet extension array functions.
	Implement the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray functions
	that are used to extend/replace property sheets by shell extensions.

2007-01-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: Fix the internal flag computation for _open_osfhandle.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Add tmarshal test.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/make_makefiles:
	make_makefiles: Ignore IDL_H_SRCS targets in all directories.

2007-01-22  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource .

2007-01-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/dllsetup.c, dlls/qcap/v4l.c:
	qcap: Declare some items static.

2007-01-22  Rob Shearman <rob@codeweavers.com>

	* .gitignore, dlls/credui/Makefile.in, dlls/credui/credui.rc,
	  dlls/credui/credui.spec, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Implement CredUIPromptForCredentialsW and CredUIConfirmCredentialsW.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/credui/Makefile.in, dlls/credui/credui.spec,
	  dlls/credui/credui_main.c:
	credui: Add stubbed out credui DLL.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Try to avoid partial named pipe read/writes by looping.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Make the fixme for an unhandled packet type more useful by printing
	the code of the unhandled packet type.

2007-01-22  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to use the optional flag.

2007-01-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/mdi.c:
	user32: Only try to remove the MDI document icon from the frame menu when needed.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/tests/util.c:
	snmpapi: Add tests for SnmpUtilVarBind{, List}{Cpy, Free}. Make them pass.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/snmpapi/tests/Makefile.in, dlls/snmpapi/tests/util.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	snmpapi: Add a bunch of tests.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtil{DbgPrint, IdsToA, OidToA, PrintAsnAny, PrintOid}.

2007-01-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fixed protocol tests on IE7.

2007-01-22  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Remove some unused methods from the IWineD3DVertexShader interface.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9types.h include from wined3d_private.h.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use ARB_VERTEX_PROGRAM instead of GL_VERTEX_PROGRAM_ARB with GL_SUPPORT.
	Spotted by Marcus Meissner.

2007-01-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/header.c:
	comctl32/tests: Cast-qual warning fixes.

2007-01-22  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless structs
	(e.g. gcc 2.95).

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert expression lists to standard Wine lists.
	Add a specific type for array dimensions.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert variable lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert function lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/widl.h, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert interface lists to standard Wine lists.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/typegen.c, tools/widl/typelib.c,
	  tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert attribute lists to standard Wine lists.

	* tools/widl/typelib.c, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert typelib lists to standard Wine lists.

	* tools/widl/write_msft.c:
	widl: Use existing functions to retrieve attributes for typelibs.

2007-01-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Add a simple SelectObject test for bitmaps.

	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Add a GetDIBits test.

2007-01-20  Bang Jun-Young <junyoung@mogua.com>

	* dlls/wineoss.drv/audio.h:
	wineoss.drv: config.h police.

	* dlls/msxml3/factory.c, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/parseerror.c, dlls/msxml3/regsvr.c:
	msxml3: config.h police.

	* dlls/advapi32/advapi.c:
	advapi32: Do not include unnecessary headers.

	* include/winbase.h:
	winbase.h: Cosmetic changes.

	* include/objbase.h:
	objbase.h: Fix typo in comment.

	* dlls/advpack/tests/files.c:
	advpack/tests: Fix typo.

2007-01-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec:
	user32: Define RealChildWindowFromPoint as a real stub.

2007-01-21  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c:
	ntdll: Correct trace message stating NtAccessCheck is a stub.

	* dlls/ntdll/sec.c:
	ntdll: Don't change granted access mask on error.

2007-01-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Make fixme for PRINTER_ENUM_CONNECTIONS more silent.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOid{Append, Cmp, NCmp}. Fix SnmpUtilOid{Cpy, Free}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOctets{Cmp,Cpy,Free,NCmp}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilAsnAny{Cpy,Free}.

2007-01-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec:
	kernel32: Forward EncodePointer and DecodePointer to their ntdll counterparts.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Implement RtlDecodePointer and RtlEncodePointer.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* include/wine/list.h:
	wine/list.h: Add list_count function. Make some parameters const.

	* dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Undefine SW_MAX to avoid possible conflicts with winuser.h.

	* .gitignore, dlls/Makefile.in, dlls/sfc/Makefile.in,
	  dlls/sfc_os/Makefile.in:
	sfc: We need to import sfc_os for the forwards to work properly.

2007-01-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c:
	ntdll: Extra check for ObjectAttributes (Coverity).

2007-01-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/pin.c:
	qcap: Fix a typo.

	* dlls/dmime/performance.c:
	dmime: Remove unused variable.

	* dlls/shlwapi/assoc.c:
	shlwapi: Uninitialized variable fix (Coverity).

	* dlls/oledlg/insobjdlg.c:
	oledlg: Declare a function static.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Declare some items static.

2007-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: GetVolumeNameForMountPoint not present before w2k.

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: VirtualAllocEx not present in Win95.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Fix a declaration and use skip for the message.

2007-01-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to pass under XP.

2007-01-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c:
	mlang: Implement IMultiLanguage::GetCodePageInfo.

2007-01-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: User correct user sid for the default_dacl.

2007-01-19  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/file.c, dlls/ntdll/file.c:
	kernel32: Handle the SECURITY_* flags passed into CreateFileW by filling out
	the SECURITY_QUALITY_OF_SERVICE structure and passing it to NtCreateFile.
	Print a fixme in NtCreateFile if the SECURITY_QUALITY_OF_SERVICE
	structure is specified, since it isn't handled yet.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Handle security quality of service flags relevant to the ncacn_np
	protocol.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Track the security quality of service settings for bindings and
	connections.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: Fix InitCommonControlsEx prototype.

2007-01-19  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c, tools/widl/proxy.c:
	widl: Include objbase.h so that generated proxy file compiles on Wine.

	* include/rpc.h:
	rpc.h: Include excpt.h, and windef.h in Wine so that the header compiles.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate proxy/client/server files when requested explicitly even if
	they are empty.

	* Make.rules.in:
	Make.rules: Pass all idl source files to makedep.

2007-01-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: The sincos instruction is valid for ps/vs 2.1 as well.

	* dlls/wined3d/glsl_shader.c:
	wined3d: gl_FragDepth is a float, so fixup the write mask.

	* dlls/wined3d/device.c:
	wined3d: Use SetupFullscreenWindow() to make the window fullscreen.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Move SetupFullscreenWindow() and RestoreWindow() from IDirectDrawImpl
	to IWineD3DDeviceImpl.

	* dlls/wined3d/baseshader.c:
	wined3d: Use %s in trace.

2007-01-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/odbc32/proxyodbc.c:
	odbc32: Declare a function static.

	* dlls/ole32/classmoniker.c, dlls/ole32/errorinfo.c,
	  dlls/ole32/hglobalstream.c, dlls/ole32/itemmoniker.c,
	  dlls/ole32/memlockbytes.c:
	ole32: Declare some functions static.

2007-01-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/winstation.c:
	server: Add generic access mapping for winstation and desktop objects.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32: Add proper support for SHGetFileInfo(SHGFI_ICONLOCATION |
	SHGFI_USEFILEATTRIBUTES).

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Add some more SHGetFileInfo() tests.

2007-01-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlobj.h:
	shell32: Fix prototypes.
	Fix the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray function
	prototypes because they're now documented. Also add them to shlobj.h.

2007-01-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Some apps pass a color bitmap as a mask to CreateIconIndirect, convert
	it to b/w.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	ntdll: Avoid inter-process APCs when called for the process itself.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Get rid of the no longer used is_current_process function.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process NtMapViewOfSection and
	NtUnmapViewOfSection.

	* dlls/kernel32/tests/thread.c, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process RtlCreateUserThread.

	* dlls/kernel32/thread.c, dlls/ntdll/thread.c:
	ntdll: Abuse RtlCreateUserThread to call the thread function for CreateThread
	directly.

	* dlls/kernel32/kernel_main.c, dlls/ntdll/thread.c:
	ntdll: Move the LDT section to ntdll and make it an uninterruptible section.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Fix printf format warnings.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/localspl/tests/localmon.c,
	  dlls/mapi32/tests/prop.c, dlls/odbccp32/odbccp32.c, dlls/ole32/rpc.c,
	  dlls/urlmon/mk.c, dlls/wined3d/state.c, dlls/winspool.drv/info.c,
	  include/wine/debug.h, tools/winapi/options.pm:
	Assorted spelling fixes.

	* dlls/comctl32/ipaddress.c, dlls/comctl32/propsheet.c,
	  dlls/comdlg32/filedlg.c, dlls/dmloader/loaderstream.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/palette.c,
	  dlls/kernel32/lcformat.c, dlls/msacm32/driver.c, dlls/msi/action.c,
	  dlls/msvcrt/dir.c, dlls/msvcrt/file.c, dlls/msvfw32/mciwnd.c,
	  dlls/secur32/ntlm.c, dlls/shell32/shellpath.c,
	  dlls/shlwapi/ordinal.c, dlls/user32/dialog.c, dlls/user32/edit.c,
	  dlls/wineps.drv/ps.c, dlls/wininet/http.c, dlls/winmm/playsound.c,
	  programs/winemenubuilder/winemenubuilder.c,
	  programs/winhelp/hlpfile.c:
	Don't put single quotes around '%s' when using the debugstr_*() functions.

	* dlls/shell32/shlexec.c:
	shell32: There is no need to check strings for NULL when using debugstr_w().
	Also don't put single quotes around '%s' in that case.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Use '%u' to print GetLastError().

	* dlls/winspool.drv/info.c:
	winspool.drv: Use '%u' to print GetLastError().

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Use '%u' to print GetLastError().

	* dlls/mcicda/mcicda.c:
	mcicda: Use '%u' to print GetLastError().

	* dlls/secur32/secur32.c:
	secur32: Use '%u' to print GetLastError().

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Use '%u' to print GetLastError().

	* dlls/localspl/localmon.c:
	localspl: Remove unneeded cast.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* server/mach.c, server/ptrace.c:
	server: Print a trace when sending a signal to a thread.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/thread.c:
	ntdll: Block async signals during process init and thread creation.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c:
	ntdll: Make the server signal mask global.

	* dlls/ntdll/thread.c:
	ntdll: Avoid heap allocations during thread creation.

	* dlls/ntdll/server.c:
	ntdll: Make the fd cache section an uninterruptible section.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	ntdll: Fix NtDuplicateObject to only close the file descriptor if it's in the
	same process.

	* dlls/ntdll/file.c, dlls/ntdll/om.c, dlls/ntdll/server.c:
	ntdll: Avoid heap allocation in fd cache. Fixed a couple of races.

2007-01-17  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Calc more caps infos ahead and store it in JoystickImpl.

2007-01-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Give shader constants their own debug channel.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix a typo.

	* dlls/wined3d/state.c:
	wined3d: When switching color material, apply the material we were previously
	tracking.
	This fixes a regression introduced by 329670c7f129343ef0086f76b08a40d0fd5e3242.

	* dlls/wined3d/state.c:
	wined3d: Don't set Parm when isDiffuseSupplied is FALSE in state_colormat(),
	it isn't used anyway.

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/device.c, dlls/ddraw/utils.c, dlls/wined3d/utils.c,
	  include/d3d8types.h, include/d3d9types.h,
	  include/wine/wined3d_types.h:
	d3d: Fix the D3DFMT_XXX constant declarations.

2007-01-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Reorder a couple of functions and remove the forward declarations.

	* include/wine/test.h:
	tests: The non-gcc case was missing a forward declaration for winetest_skip().

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/odbccp32/tests/misc.c:
	odbccp32/tests: Add missing '\n' to an ok() call.

2007-01-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Print each 64-bit integer as two 32-bit integers.

2007-01-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/objsel/objsel.c:
	objsel: Declare a variable static.

2007-01-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix trace for WS_setsockopt to look closer to WS_getsockopt.

2007-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Register IMsiServer.

	* dlls/user32/tests/win.c:
	user32: Add a test showing WM_GETTEXT doesn't crash with bad pointers.

	* dlls/user32/defwnd.c:
	user32: Add an exception handler around the WM_GETTEXT handler.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc.spec, dlls/sfc/sfc_main.c:
	sfc: Forward SfcIsFileProtected to sfc_os.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc_os/Makefile.in, dlls/sfc_os/sfc_os.c,
	  dlls/sfc_os/sfc_os.spec:
	sfc_os: Add stub for sfc_os.dll.

2007-01-12  Joel Parker <jjk3@msstate.edu>

	* dlls/kernel32/ne_module.c, dlls/kernel32/relay16.c,
	  dlls/kernel32/selector.c, dlls/kernel32/thunk.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/misc.c,
	  dlls/ntdll/loader.c, dlls/ntdll/relay.c, dlls/ntdll/resource.c,
	  dlls/ntdll/rtl.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  dlls/riched20/txtsrv.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/user32/winproc.c, libs/port/interlocked.c, libs/wine/port.c:
	Remove redundant semicolons for ANSI compatibility.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/curses.c:
	wineconsole: Add support for non-latin symbols with curses.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No longer check for value exceeding have(min|max) in map_axis.

2007-01-16  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Add a config for the axes.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the config for the buttons from the JoyDev into the JoystickImpl.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use a struct ObjProps for the config of the device.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Rename 'axe' to 'axis'.

2007-01-17  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Search for .gnu_debuglink file.

2007-01-16  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix HTTP_EncodeBasicAuth by passing an out buffer to the second set
	of character set conversion calls.

2007-01-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Implement per stream offsets.

2007-01-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Store the stream number in the strided structure.

	* dlls/wined3d/drawprim.c:
	wined3d: Improve drawStridedSlow a bit.

2007-01-17  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: If we're at EOF in the buffer and we have pattern %n in format string
	we should not count the EOF in the total.

2007-01-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/netapi32.c:
	netapi32: Declare a variable static.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement PortIsValid for XcvDataPort.

	* dlls/localspl/localmon.c:
	localspl: Implement XcvDataPort.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement XcvOpenPort and XcvClosePort.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for XcvDataPort_PortIsValid.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Extend test for XcvDataPort_MonitorUI.

2007-01-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_SETBITMAPSIZE for width or height zero (with
	testcase).

2007-01-16  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValue.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Initialize nrofnames to keep from freeing unused memory in the
	error case.

2007-01-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_src_param_t type, pass it to shader_glsl_add_src_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_dst_param_t type, pass it to shader_glsl_add_dst_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_write_mask().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix pshader_glsl_tex() and pshader_glsl_texcoord().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_callnz().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_breakc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_ifc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_if().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_rep().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_loop().
	Fix the comment.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3vspec().
	Use shader_glsl_get_sample_function().
	Use the GLSL builtin reflect() function.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3spec().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3tex().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2depth().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_texreg2rgb to properly take the write mask
	into account.
	Use shader_glsl_get_sample_function() rather than having the instruction
	handler figure it out itself.
	Get rid of shader_glsl_add_dst_old().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split out getting the sample function and coordinate mask from
	shader_glsl_sample().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2gb().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2ar.
	Use the correct source swizzle.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_dst().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_rcp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_expp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cnd() to properly take the write mask into account.
	Take the difference between ps 1.4 and earlier versions into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cmp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_lrp() to properly take the write mask into account,
	use the GLSL mix instruction.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_lit().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mov() to properly take the write mask into account.
	In case of writing to an address register round the source.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_dp2add() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_dot() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_map2gl() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give WINED3DSIO_CRS its own function, properly take the write mask
	into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Move WINED3DSIO_SGE & WINED3DSIO_SLT from shader_glsl_map2gl() to
	shader_glsl_compare() where they belong.
	Properly take the write mask into account

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mad() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_arith() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_sincos() to properly take the write mask into
	account.
	The write mask can only be one of .x, .y, .xy

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_get_register_name().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass a mask to shader_glsl_add_src_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rename shader_glsl_add_dst() to shader_glsl_add_dst_old(), add
	shader_glsl_append_dst().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	05/49: wined3d: Only add line numbers for new lines in shader_addline().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fixup the write mask for gl_FogFragCoord and gl_PointSize.
	gl_FogFragCoord and gl_PointSize are floats rather than vec4s in GLSL,
	so they shouldn't have a destination swizzle, and the write mask we
	return should consist of only the first component.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Return the (binary) write mask from shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split shader_glsl_add_param() in shader_glsl_add_src_param() and
	shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a comment about D3D write masks and GLSL destination swizzles.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c:
	ntdll: Added a missing chunk in the NtLockVirtualMemory support.
	Thanks to Rob Shearman for noticing this.

	* tools/wmc/utils.c:
	wmc: Use standard format for error messages.

	* dlls/msvcrt/locale.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec:
	msvcrt: Export various locale and codepage variables.

2007-01-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_fra.mc:
	kernel: Beginning of French translation of error messages.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* tools/wmc/lang.c:
	wmc: Added support for neutral languages.

2007-01-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindList{Cpy,Free}.

2007-01-15  Kai Blin <kai.blin@gmail.com>

	* tools/wineinstall:
	winetools: Fix installing on distributions without a root password.

2007-01-15  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound: Fix tests for old versions of windows.

2007-01-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellole.c:
	shell32: Remove unused variable.

	* dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Move static function from header into file where it is called.

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Remove unused items.

2007-01-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Fix tests for EnumPrinters when the spooler is off.

	* dlls/winspool.drv/info.c:
	winspool: More error checks for XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Improve trace for ClosePrinter.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in AddPortW.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in DeletePortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use a more generic name for a variable.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Recalc the toolbar after a TB_SETIMAGELIST.

	* dlls/comctl32/listview.c:
	comctl32: listview: When shrinking the last column clear the now unused field.

	* dlls/comctl32/listview.c:
	comctl32: listview: A CDRF_SKIPDEFAULT for an item should skip the whole row.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented NtLockVirtualMemory and NtUnlockVirtualMemory.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implementation of inter-process NtFlushVirtualMemory.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualProtectEx.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualQueryEx.

	* dlls/kernel32/tests/process.c, dlls/kernel32/tests/virtual.c,
	  dlls/ntdll/sync.c, dlls/ntdll/virtual.c:
	ntdll: Implementation of inter-process VirtualAllocEx and VirtualFreeEx.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	server: Support queuing some APCs to a process instead of a thread.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/thread.c, server/trace.c,
	  tools/make_requests:
	server: Added mechanism for returning results of APC calls.
	Defined APC_VIRTUAL_ALLOC and APC_VIRTUAL_FREE requests.

	* server/thread.c:
	server: Properly wake the waiting threads when an APC is cancelled.

	* dlls/kernel32/console.c:
	kernel32: Use the proper codepage for console functions.
	Based on a patch by Anatoly Lyutin.

2007-01-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Fix compilation for older gcc versions (and MinGW).

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/thread.c:
	ntdll: Remove unused function.

	* dlls/msvcrt/except.c, dlls/msvcrt/exit.c:
	msvcrt: Declare some items static.

	* dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/pi.c:
	msxml3: Remove unused functions.

2007-01-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindCpy.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilMem{Alloc,Free,ReAlloc}.

	* dlls/snmpapi/snmpapi.spec:
	snmpapi: Add some missing APIs to the spec file.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: Implement SnmpUtilOidCpy, SnmpUtilOidFree and SnmpUtilVarBindFree.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* loader/Makefile.in:
	loader: Fix git-describe invocation to work with old git versions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Replace some macros by functions to reduce code size and
	compile time.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/locale.c:
	kernel32: Add details in description function MultiByteToWideChar and
	WideCharToMultiByte.

2007-01-14  Felix Nawothnig <flexo@holycrap.org>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/lzexpand.c:
	kernel32: Forward CopyLZFile() to LZCopy() instead of wrapping it.

2007-01-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed unneeded code from rewrite of .gnu_link handling.

2007-01-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mpr/wnet.c:
	mpr: Fix typo (Coverity).

2007-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Remove redundant visibility checks of a maximized MDI child, add an
	explanation why we do that.

2007-01-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Simplify some maximized MDI child checks.

	* dlls/user32/mdi.c:
	user32: Remove MDI_AugmentFrameMenu call from WM_MDICREATE handler.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the typos in the fullscreen state debug trace.

	* dlls/wined3d/device.c:
	wined3d: Do not play with WS_VISIBLE, this causes unwanted mapping/unmapping
	of the window.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c, dlls/wined3d/directx.c:
	wined3d, d3d9: Caps correction.

	* dlls/wined3d/device.c:
	wined3d: Do not force dynamic usage on transformed buffers.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Better tracking of vertex buffer assignments.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not free regularily locked surfaces.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Revert "wined3d: Do not preload vertex buffers in unlock.".
	This reverts commit 6fb1869b98265a30a285c6f94a768934476a8c2a.

2007-01-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Pl.rc:
	mpr: Add Polish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Pl.rc:
	msi: Add Polish translation.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/cmdlgtst/Pl.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Add Polish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Pl.rc:
	wininet: Add Polish translation.

	* programs/wordpad/Pl.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Polish translation.

2007-01-12  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Change HTTP_EncodeBase64 to operate on a series of bytes,  instead
	of text.
	Change HTTP_EncodeBasicAuth to convert the username and password into
	utf8 before base64 encoding.

	* dlls/wininet/http.c:
	wininet: HTTP_HttpQueryInfoW deals with bytes, not characters so update the
	callers that have this wrong assumption.

	* dlls/wininet/http.c:
	wininet: Allow a NULL value to be passed into HTTP_ProcessHeader
	instead of crashing so that when used with the replace flag it will
	delete an existing value.

2007-01-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Added more protocol tests.

	* dlls/itss/storage.c:
	itss: Close chm file when destroying Storage.

	* dlls/itss/storage.c:
	itss: Return S_FALSE in IStream::Read if there is no more data to read.

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added mk protocol implementation.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c,
	  include/odbcinst.h:
	odbccp32: Implement SQLGet/SetConfigMode.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c, server/named_pipe.c:
	server: Set the specified in/out buffer sizes on named pipes using SO_SND/RCVBUF.

2007-01-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Declare some functions static.

	* dlls/msi/action.c, dlls/msi/events.c:
	msi: Declare some functions static.

	* dlls/msi/registry.c, dlls/msi/table.c, dlls/msi/tokenize.c:
	msi: Remove unused variables.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Remove A->W cross-call.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Cast-qual warning fixes.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Cast-qual warning fix.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Cast-qual warning fixes.

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Cast-qual warning fixes.

	* dlls/user32/tests/win.c:
	user32/tests: Cast-qual warning fixes.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32/tests: Cast-qual warnings fixes.

2007-01-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Initialise the caller supplied ABC structure in ScriptPlace.
	Fixes a regression found by Lei Zhang.

2007-01-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/Makefile.in, dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h:
	urlmon: Added mk protocol stub implementation.

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/virtual.c:
	ntdll: Make the virtual.c critical section uninterruptible by signals.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/virtual.c:
	ntdll: Fix handling of 64-bit sizes in NtMapViewOfSection.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	ntdll: Duplicate the mapping handle on the server side for NtMapViewOfSection.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c,
	  server/fd.c, server/file.c, server/file.h, server/process.c:
	ntdll: Moved the check for removable file in load_dll to the server.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winex11.drv/xrandr.c:
	xrandr: Small X11DRV_XRandR_(Get|Set)CurrentMode() code optimisations.

2007-01-11  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Implement SQLGetInstalledDrivers.

2007-01-11  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/treeview.c:
	treeview: Fix horizontal scrolling.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Avoid a NULL pointer dereference in UpdateTexture (Coverity).

	* dlls/wined3d/surface.c:
	wined3d: Do not perform a NULL check on riid (Coverity).

	* dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d9: Implement IDirect3DDevice9::StretchRect.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/propvariant.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash undoing a paste.

2007-01-12  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/explorer/systray.c:
	explorer/systray: Some code cleanup.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c, dlls/d3d8/tests/device.c,
	  dlls/d3d8/tests/surface.c, dlls/d3d8/tests/texture.c,
	  dlls/d3d8/tests/volume.c:
	d3d8/tests: Warn that tests were skipped if we could not load d3d8.dll.
	But report a failed test if a mandatory function is missing from it.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/texture.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/tests/volume.c:
	d3d9/tests: Warn that tests were skipped if we could not load d3d9.dll.
	But report a failed test if a mandatory function is missing from it.
	Also warn if the hardware capabilities force us to skip some tests.

	* include/wine/test.h:
	tests: Add skip(), a function to warn that tests were skipped due to limitations
	of the environment or missing dependencies.

2007-01-11  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: The tests link with dsound.dll so use GetModuleHandle() instead
	of LoadLibrary().

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2007-01-11  Ken Thomases <ken@codeweavers.com>

	* dlls/wined3d/query.c:
	wined3d: Do not block waiting for occlusion query result in GetData.

2007-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/errorinfo.c:
	ole32: Fix copied description and copyright statement for tests/errorinfo.c.

2007-01-11  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Split gnu_debuglink handling into own function.

2007-01-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/internal.c:
	msacm32: Declare some variables static.

	* dlls/mshtml/nsembed.c:
	mshtml: Declare a variable static.

	* dlls/mpr/wnet.c:
	mpr: Declare a variable static.

	* dlls/msdmo/dmoreg.c:
	msdmo: Declare a function static.

	* dlls/itss/chm_lib.c:
	itss: Remove unused variable and associated dead code.

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Remove unused function.

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Remove unused function.

2007-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filetitle.c:
	comdlg32: Move GetFileTitle(A/W/16) to filedlg.c, filedlg16.c.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Support Xcv for ConfigurePortW.

	* dlls/winspool.drv/info.c:
	winspool: Support monitors without a name.

2007-01-11  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Added printf format checking and fix some formats.

	* loader/preloader.c:
	preloader: Remove reserved ranges that we failed to allocate.

2007-01-10  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
	odbccp32: Implement SQLInstallerError(W).

2007-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Merge existing resources in EndUpdateResource.

	* dlls/kernel32/resource.c:
	kernel32: Split update_add_resource() into two functions.

	* dlls/kernel32/resource.c:
	kernel32: Create a simple abstraction for file mappings.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/text.c, dlls/user32/uitools.c:
	user32: Add a simple DrawState test, make it pass under Wine.

2007-01-11  James Hawkins <truiken@gmail.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use the correct variable in the FIXME.

	* dlls/winspool.drv/info.c:
	winspool.drv: Check for get_filename failure.

	* programs/winedbg/memory.c:
	winedbg: Check buffer for NULL before writing to it.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Fix modification state for several operations.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for the default handler.

	* dlls/ole32/errorinfo.c, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/errorinfo.c:
	ole32: Add tests for error info functions.
	Return E_INVALIDARG if dwReserved is not set to zero for both
	GetErrorInfo and SetErrorInfo.

2007-01-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Internal data format is not const anymore.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Don't copy no longer used user data format object array.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Use internal data format for object lookups.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Use correct offset to queue events.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Rewrite GetObjectInfo and EnumObjects on top of
	base class.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Copy and modify default data format.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Use correct offset to queue events.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Reuse the same properties array.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Copy and modify default data format.
	Copy only what we have.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Print status of the hinting support in the debug log.

2007-01-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/clock/Nl.rc:
	clock: Update Dutch resource.

2007-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resources.

	* dlls/user32/resources/user32_Nl.rc:
	user32: Update Dutch resources.

2007-01-10  Francois Gouget <fgouget@free.fr>

	* dlls/rpcrt4/tests/ndr_marshall.c, include/rpcndr.h:
	rpcrt4: Give a proper name to some formerly reserved MIDL_STUB_MESSAGE fields.
	Define NTDDI_VERSION so we get definitions for the Reserved51_X fields with
	the PSDK.
	This fixes compilation of the ndr_marshall.c with the PSDK.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/netconnection.c:
	wininet: Don't try to read anything if 0 bytes are to be read.

2007-01-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/resource.c:
	kernel32: Declare some functions static.

	* dlls/itss/chm_lib.c, dlls/itss/chm_lib.h:
	itss: Declare a function static.

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Remove unused function.

2007-01-10  Harry McNally <harrymc@decisions-and-designs.com.au>

	* dlls/ntdll/time.c:
	ntdll: Add Western Australia Summer Time.

2007-01-10  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We cannot create fake dlls for 16bit libraries. So remove ddeml.dll.

2007-01-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove dead NV_TEXTURE_SHADER code

	* dlls/wined3d/state.c:
	wined3d: Do not activate / deactivate texture dimensions twice.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: D3D7 vertex buffers never change their declaration.

	* dlls/wined3d/state.c:
	wined3d: Fix a capital letter in a parameter name.

	* dlls/wined3d/state.c:
	wined3d: Add copyright statements to state.c.

	* dlls/wined3d/state.c:
	wined3d: Attempt to remove some tabs smuggled in by xcode.

	* dlls/wined3d/state.c:
	wined3d: Do not warn about unsupported point sizes if the default values are set.

	* dlls/wined3d/state.c:
	wined3d: Avoid false resultarg warnings.

	* dlls/ddraw/device.c:
	ddraw: Get some texture stage states from their equivalent sampler states.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store the scissor rect in the stateblock.

	* dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Count the framerate per swapchain, not globally.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move material applying to the state table.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove the invymat from drawprim.c.

	* dlls/wined3d/drawprim.c:
	wined3d: Do not reset the material.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, server/thread.c:
	server: Allow suspended threads to run system APCs.

	* dlls/ntdll/critsection.c:
	ntdll: Make sure that critical section waits are not interrupted.

	* dlls/ntdll/sync.c:
	ntdll: Only return STATUS_USER_APC from a wait if a real user APC has been run.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/sync.c:
	ntdll: Compute the wait timeout only once in NTDLL_wait_for_multiple_objects.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: Get rid of the rules for dll symlinks.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineoss.drv/Makefile.in, dlls/wineoss.drv/audio.c,
	  dlls/wineoss.drv/audio.h, dlls/wineoss.drv/dscapture.c,
	  dlls/wineoss.drv/dsrender.c, dlls/wineoss.drv/midi.c,
	  dlls/wineoss.drv/midipatch.c, dlls/wineoss.drv/mixer.c,
	  dlls/wineoss.drv/mmaux.c, dlls/wineoss.drv/oss.c,
	  dlls/wineoss.drv/oss.h, dlls/wineoss.drv/wineoss.drv.spec,
	  dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/wineoss/wineoss.drv.spec:
	wineoss: Renamed the dlls/winmm/wineoss directory to dlls/wineoss.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winenas.drv/Makefile.in, dlls/winenas.drv/audio.c,
	  dlls/winenas.drv/nas.c, dlls/winenas.drv/nas.h,
	  dlls/winenas.drv/winenas.drv.spec, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/winenas/winenas.drv.spec:
	winenas: Renamed the dlls/winmm/winenas directory to dlls/winenas.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejack.drv/Makefile.in, dlls/winejack.drv/audio.c,
	  dlls/winejack.drv/jack.c, dlls/winejack.drv/jack.h,
	  dlls/winejack.drv/winejack.drv.spec, dlls/winmm/winejack/Makefile.in,
	  dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winejack/jack.h, dlls/winmm/winejack/winejack.drv.spec:
	winejack: Renamed the dlls/winmm/winejack directory to dlls/winejack.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineesd.drv/Makefile.in, dlls/wineesd.drv/audio.c,
	  dlls/wineesd.drv/esound.c, dlls/wineesd.drv/esound.h,
	  dlls/wineesd.drv/wineesd.drv.spec, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/wineesd/wineesd.drv.spec:
	wineesd: Renamed the dlls/winmm/wineesd directory to dlls/wineesd.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winecoreaudio.drv/Makefile.in, dlls/winecoreaudio.drv/audio.c,
	  dlls/winecoreaudio.drv/audiounit.c,
	  dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to
	dlls/winecoreaudio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineaudioio.drv/Makefile.in, dlls/wineaudioio.drv/audio.c,
	  dlls/wineaudioio.drv/audioio.c,
	  dlls/wineaudioio.drv/wineaudioio.drv.spec,
	  dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c,
	  dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineaudioio/wineaudioio.drv.spec:
	wineaudioio: Renamed the dlls/winmm/wineaudioio directory to
	dlls/wineaudioio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
	  dlls/winearts.drv/winearts.drv.spec, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winearts/arts.c, dlls/winmm/winearts/arts.h,
	  dlls/winmm/winearts/audio.c, dlls/winmm/winearts/winearts.drv.spec:
	winearts: Renamed the dlls/winmm/winearts directory to dlls/winearts.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/midi.c, dlls/winealsa.drv/winealsa.drv.spec,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winealsa/winealsa.drv.spec:
	winealsa: Renamed the dlls/winmm/winealsa directory to dlls/winealsa.drv.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/fdi.c, dlls/ddraw/ddraw.c, dlls/user32/misc.c,
	  dlls/wined3d/device.c, dlls/wined3d/state.c,
	  programs/winetest/main.c:
	janitorial: Use the C standard for multiline strings.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix a typo in the help message about correct backend names.

	* programs/wineconsole/curses.c:
	wineconsole: Use CP_UNIXCP to translate strings to the system encoding.

	* programs/wineconsole/curses.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	wineconsole: Make some data const.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Pass complete DataFormat structure to find_property.

	* dlls/dinput/keyboard.c:
	dinput: Remove duplicate Keyboard->Poll it is the same as base class.

	* dlls/dinput/mouse.c:
	dinput: Fix trace formatting.

2007-01-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Fix the detection of when we need an additional QueryInterface in
	CoUnmarshalInterface.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for the failure case of same-apartment unmarshaling when
	passing in an unsupported iid.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for passing invalid arguments to CoUnmarshalInterface.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: ReadClassStm should return STG_E_READFAULT is not all of the data could
	be read, not S_FALSE.
	Clear pclsid in case of errors.
	Add tests for ReadClassStm.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for invalid arguments of CoMarshalInterface and
	CoMarshalInterThreadInterfaceInStream.

	* dlls/ole32/marshal.c:
	ole32: Return an error from CoUnmarshalInterface if pStream is NULL or if ppv
	is NULL.

	* dlls/ole32/storage32.c:
	ole32: Fix Read/WriteClassStm to return an error if the passed in stream
	pointer is NULL.

	* dlls/ole32/marshal.c:
	ole32: Return an error in CoMarshalInterface if pStream is NULL.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix HGLOBALStreamImpl_CopyTo to check the return values of IStream_Read
	and IStream_Write and to not compare the bytes read to the bytes written.
	Add tests for IStream::CopyTo of the HGLOBAL stream implementation.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/marshal.c,
	  dlls/ole32/rpc.c, dlls/ole32/stubmanager.c:
	ole32: Remove some unneeded inclusions of headers.
	Change some incorrect usages of SEEK_SET to the intended STREAM_SEEK_SET
	instead.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Move test for CoGetInterfaceAndReleaseStream to compobj.c.

	* dlls/ole32/git.c:
	ole32: Use the standard list functions for the global interface table
	implementation.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32: Move the Running Object Table test in marshal.c to moniker.c to put it
	with the other ROT tests.

	* dlls/ole32/rpc.c:
	ole32: Fix a comment in rpc_sendreceive_thread that wasn't correct.

	* dlls/ole32/compobj.c:
	ole32: Remove a FIXME comment that no longer applies.

2007-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Fill the output buffer to workaround a bug in IE7s advpack.

	* dlls/comctl32/tests/updown.c:
	comctl32: Rewrite the up-down control tests to add message checking.

2007-01-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/minidump.c:
	winedump: Fixed signature for dumping MDMP files.

2007-01-09  Bill Medland <billmedland@shaw.ca>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/odbccp32/tests/Makefile.in, dlls/odbccp32/tests/misc.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	odbccp32: Add tests structure.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Do not forget to cleanup if the test is skipped.

2007-01-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Force the fullscreen state update once the window is mapped.

2007-01-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/uninstaller/Pt.rc:
	uninstaller: Add a Portuguese translation (contributed by Americo Jose Melo).

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Consistenly use INTERNET_SetLastError().

2007-01-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Skip some tests on Windows Vista.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Fix exception test for CPUs that do segment limit checks
	differently.

	* dlls/ntdll/tests/port.c:
	ntdll/tests: Don't bother testing the port functions if creating the port failed.

2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.l, tools/wrc/utils.c:
	wrc: Added support for utf-8 codepage.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.29.

----------------------------------------------------------------
2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Print GetLastError() in decimal with '%u'.

	* dlls/mcicda/mcicda.c:
	mcicda: Compare GetLastError() to kernel error codes, not ntdll ones.

2007-01-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/volume.c,
	  dlls/kernel32/volume.c:
	kernel32: Add a stub implementation for GetVolumeNameForVolumeMountPoint{A, W}.

2007-01-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add SetTermsrvAppInstallMode stub.

2007-01-08  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Implement EndUpdateResource for the case existing resources are
	deleted.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dxguid/dxguid.c, include/Makefile.in, include/rmxfguid.h:
	dxguid: Add the rmxfguid.h header and export the GUIDs.

	* .gitignore, tools/make_makefiles:
	make_makefiles: Add *_crosstest.exe to .gitignore.

2007-01-09  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Initialize iImage and iSelectedImage with zero.

2007-01-08  Ken Thomases <ken@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Don't release preferred_locales until we're done with its members.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/tmpfile.c, dlls/dmband/dmutils.c, dlls/dmime/dmutils.c,
	  dlls/dmloader/debug.c, dlls/dmstyle/dmutils.c,
	  dlls/dmusic/collection.c, dlls/dplayx/dplayx_messages.c,
	  dlls/kernel32/cpu.c, dlls/msrle32/msrle32.c, dlls/ntdll/tests/om.c,
	  dlls/user32/tests/msg.c, programs/oleview/oleview.c:
	janitorial: Remove stray '\' at end of lines.

	* dlls/wined3d/device.c:
	wined3d: Remove stray '\' at end of lines.

	* dlls/dsound/sound3d.c, dlls/dsound/tests/propset.c:
	dsound: Remove stray '\' at end of lines.

	* include/commctrl.h, include/softpub.h, include/wintrust.h:
	include: Remove stray '\' at end of lines.

2007-01-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dsound/sound3d.c:
	dsound: Remove unused function.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove unused variable.

	* dlls/gdi32/freetype.c:
	gdi32: Remove unused variables.

	* dlls/gdi32/mapping.c, dlls/gdi32/printdrv.c:
	gdi32: Declare some functions static.

	* dlls/gdi32/path.c:
	gdi32: Remove unused function.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Load the user interface dll on demand.

2007-01-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dsound/propset.c:
	dsound: The dsconf.h GUIDs are now in libdxguid.

	* server/mapping.c:
	server: Don't fail to map a shared section if the final sector is truncated.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dsound/tests/propset.c, dlls/dxguid/dxguid.c:
	dsound: The GUID:s defined in dsconf.h should be exported by dxguid.

	* dlls/imm32/imm.c:
	imm32: Only unregister the IME class if it was registered.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: Prevent memory leak.

2007-01-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Set event from queue_event, simplifying code a bit.

	* dlls/dinput/keyboard.c:
	dinput: Use proper offset when queuing keyboard events.

2007-01-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/keyboard.c:
	winex11drv: Change FIXME to WARN in X11DRV_GetKeyNameText.

2007-01-06  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Allow LVIF_STATE flag in subitems.

2007-01-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Fr.rc:
	localspl: Added French translation.

2007-01-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix np2 textures.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to read the vertex decl when the stateblock isn't finalized.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some unneeded context cache members from the device.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex buffers can use the declaration from the device.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Do not preload vertex buffers in unlock.

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawprim a bit.

	* dlls/ddraw/ddraw.c:
	ddraw: Forward the DDSCAPS2_TEXTUREMANAGE flag to wined3d.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on index buffers.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/vertexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex buffers.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on pixel shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references to the vertex declaration.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not activate vertex shaders needlessly.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid negative draw start indices.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying shader constants to the state table.

	* dlls/wined3d/query.c:
	wined3d: Remove the general query fixme.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c:
	wined3d: Apply shaders in their state handlers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move debugging fixmes from drawprim to the stream source handler.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Re-add the fixed function stream source trace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying the gl stream sources to the state table.

2007-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Restore old WM_SIZE handler in mdi child.

	* dlls/kernel32/tests/file.c:
	kernel32: Print more information about the reason of a test failure.

	* dlls/kernel32/tests/file.c:
	kernel32: Fix the file sharing test to pass cleanly under XP and Win9x.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Skip the VirtualAllocEx test under Win9x.

	* server/file.c, server/trace.c:
	server: Map ESPIPE to STATUS_ILLEGAL_FUNCTION for consistency with ntdll.

	* dlls/user32/tests/msg.c:
	user32: Add one more GetSystemMenu test.

2007-01-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Make message tests pass cleanly under XP SP2.

2007-01-07  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use Keep-Alive for HTTP requests if specified by the flags passed
	into HttpOpenRequest.

	* dlls/wininet/http.c:
	wininet: Fix the handling of Accept types passed into HttpOpenRequest
	by properly coalescing all the types into the Accept header value,
	rather than just adding the first.

	* dlls/wininet/http.c:
	wininet: Rename HTTP_Base64 to HTTP_EncodeBase64 to more accurately reflect
	what it does.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix the OLE clipboard test to call OleInitialize before performing the
	tests to fix test failures on Windows.

	* dlls/ole32/compobj_private.h, dlls/ole32/ole2.c:
	ole32: Add a field to the TLS data to determine whether OLE has been initialised
	for the current thread.

	* dlls/ole32/stg_stream.c:
	ole32: IPeristStream implies IPersist and IStream implies ISequentialStream
	so fix the Structured Storage stream implementation's QueryInterface with to
	reflect this.

	* dlls/ole32/hglobalstream.c:
	ole32: IStream inherits from ISequentialStream so the HGLOBALStream
	implementation must also support ISequentialStream.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the global interface table in the tests when it is no longer
	needed.

2007-01-07  Kai Blin <kai.blin@gmail.com>

	* dlls/winmm/mci.c:
	winmm: Remove unused variable and if check (Coverity).

	* programs/taskmgr/graphctl.c:
	taskmgr: Remove unused variable and if check (Coverity).

2007-01-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_global.h,
	  dlls/dplayx/dplobby.c, dlls/dplayx/name_server.c:
	dplayx: Declare some functions static.

	* dlls/dmstyle/dmutils.c, dlls/dmstyle/dmutils.h:
	dmstyle: Declare some functions static.

	* dlls/dnsapi/main.c, dlls/dnsapi/ns_name.c:
	dnsapi: Declare some items static.

2007-01-06  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/kernel32/tests/console.c, dlls/kernel32/tests/file.c,
	  dlls/kernel32/tests/path.c:
	kernel32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Replace an '#if 0' with an 'if (0)'.
	Fix the code so it compiles without warnings.

	* dlls/d3d9/tests/surface.c:
	d3d9/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/gdi32/tests/dc.c:
	gdi32/tests: Tweak a test to avoid an '#if 0'.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4/tests: Remove an unneeded '#if 0' and fix the code so it compiles
	without warnings.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace some '#if 0's with 'if (0)'s, or remove them if not
	needed anymore.
	Fix the code so it compiles without warnings.

	* dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems with no nameless unions (e.g. gcc
	2.95).

	* dlls/setupapi/tests/parser.c:
	setupapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet/tests: Print GetLastError() in decimal with '%u'.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32/tests: Hack SHGetFileInfo() so it does not crash and add a test for it.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Skip the OpenProcess test under Win9x.

2007-01-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderDeclaration gets passed a handle
	instead of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderFunction gets passed a handle instead
	of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetPixelShaderFunction gets passed a handle instead
	of a pointer.

2007-01-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec, dlls/shlwapi/tests/Makefile.in,
	  dlls/shlwapi/tests/clsid.c:
	shlwapi: Forward CLSIDFromProgIDWrap to ole32 (with test).

2007-01-06  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/shdoclc/Fr.rc:
	shdoclc: Update French translation.

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/devenum/devenum_main.c:
	devenum: Do not store full DLL path in the registry.

	* dlls/qcap/dllsetup.c, dlls/qcap/dllsetup.h, dlls/qcap/qcap_main.c:
	qcap: Do not store full DLL path in the registry.

2007-01-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Call the Portmonitor for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c:
	winspool: Start support for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Support the local computername as servername for OpenPrinter.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/driver.c,
	  dlls/user32/tests/input.c, dlls/user32/user_private.h,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11drv/user32: Add ClipCursor to x11drv to pass clip rectangle to x11drv.

2007-01-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Fix possible NULL deference.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Fix memory leak.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Fix mouse to use proper offset when queuing new events. Add handling
	of X-buttons.
	We should use instance IDs instead of sequential numbers to get correct offset.

2007-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/mscvpdb.h, tools/winedump/msc.c:
	winedump: Add support for derived types in codeview type info.

	* tools/winedump/debug.c, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Fix a couple of issues with types table walking.
	Align types to DWORD boundaries.
	Split types dumping functions into two versions (one without offsets
	table, the second one with offset table).

	* tools/winedump/msc.c:
	winedump: Dump S_SSEARCH_V1 symbols.

	* tools/winedump/debug.c:
	winedump: Added for dumping sstAlignSym and sstGlobalTypes COFF sections.

	* dlls/dbghelp/msc.c:
	dbghelp: Handling of S_SALIGN symbols.

	* tools/winedump/msc.c:
	winedump: Handling of S_SALIGN symbols.

	* include/wine/mscvpdb.h, tools/winedump/debug.c:
	winedump: Re-use existing codeview facilities to dump OMF files.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h, tools/winedump/cvinclude.h,
	  tools/winedump/debug.c:
	winedump: Removed cvinclude.h.

	* tools/winedump/debug.c:
	winedump: Added dumping of RSDS header from module.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added helper to convert a guid to a string.

	* tools/winedump/main.c, tools/winedump/ne.c,
	  tools/winedump/winedump.man.in:
	winedump: While dumping NE files, use -j option if present (as we do for
	PE files).

	* tools/winedump/Makefile.in, tools/winedump/dos.c, tools/winedump/dump.c,
	  tools/winedump/winedump.h:
	winedump: Print some basic info for pure DOS file (which fixes segfault while
	reading DOS files).

	* tools/winedump/debug.c:
	winedump: Added ability to dump FPO debug information.

2007-01-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Corrected the map/unmap operations for ELF sections.
	Now correctly free the mapped areas when no longer used.

2007-01-06  Kai Blin <kai.blin@gmail.com>

	* dlls/msacm32/driver.c:
	msacm32: Fix comment and remove unneeded if check (Coverity).
	Thanks to Alex Villacís Lasso for comments.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/rpc.c:
	ole32: Print GetLastError() in decimal with '%u'.

	* dlls/gdi32/tests/gdiobj.c:
	gdi32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Print GetLastError() in decimal with '%u'.

	* dlls/version/tests/info.c:
	version/tests: Print GetLastError() in decimal with '%u'.

2007-01-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Self-register objsel.dll.

	* dlls/ddrawex/Makefile.in, dlls/ddrawex/main.c, dlls/ddrawex/regsvr.c,
	  tools/wine.inf:
	ddrawex: Self-register the DirectDrawFactory CoClass.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/regsvr.c, tools/wine.inf:
	dinput8: Self-register the DirectInput8 CoClass.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Print GetLastError() in decimal with '%u'.

	* dlls/advapi32/crypt.c:
	advapi32: Remove a useless macro.

2007-01-05  Kai Blin <kai.blin@gmail.com>

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment, unicode version (Coverity).

	* dlls/user32/combo.c:
	user32: If pTest was allocated, length has to be > 0 (Coverity).

	* dlls/ole32/ole2.c:
	ole32: Remove redundant NULL check (Coverity).

2007-01-05  Jeff Latimer <lats@yless4u.com.au>

	* dlls/winemp3.acm/interface.c:
	winemp3.acm: Ensure null check before dereference.

	* dlls/wininet/utility.c:
	wininet: Ensure null check before dereference.

2007-01-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmloader/debug.c, dlls/dmloader/debug.h:
	dmloader: Declare some functions static.

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Declare some functions static.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/quartz/memallocator.c, dlls/quartz/videorenderer.c:
	quartz: Use '%u' to print GetLastError().

	* dlls/urlmon/umon.c:
	urlmon: Print GetLastError() in decimal with '%u'.

	* dlls/qcap/v4l.c:
	qcap: Print GetLastError() in decimal with '%u'.

2007-01-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/lcformat.c, dlls/kernel32/tests/locale.c:
	kernel32: GetTimeFormat and GetDateFormat should fail if LOCALE_NOUSEROVERRIDE
	is specified simultaneously with a format string.

2007-01-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Pass correct working directory to the tests.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/devenum/devenum.rc:
	devenum: Update Dutch resource.

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resource.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/device.c:
	dinput: Change EnumObjects to use GetObjectInfo.
	Also small debug trace correction to make it more readable.

2007-01-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: state_pointsprite should apply to all texture units.

2007-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: Make use of the bReadOnly parameter in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Correctly handle files without NT headers in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Fixed computation of SizeOfImage in MapAndLoad.

2007-01-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Skip sampler state application for stages that aren't mapped to a
	texture unit.

	* dlls/wined3d/state.c:
	wined3d: Skip WINED3DTSS_TEXCOORDINDEX state application for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_ALPHAOP texture operations for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_COLOROP texture operations for stages that aren't
	mapped to a texture unit.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix the releasing of the wrong reference count in
	HTTP_CloseHTTPRequestHandle.
	lpwhr obviously already has a reference count of 0 because it is being destroyed.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Change the HTTP code to not assume that the connection will be closed
	at the end of every request.

	* dlls/wininet/http.c:
	wininet: Don't send callbacks in HTTP_CloseConnection if not connected.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use the Content-Length header to work out how much HTTP data there
	is left to be read
	and don't try to read any more than what is available.

	* dlls/wininet/http.c:
	wininet: Always send a Connection header set to "close" because that is what
	we expect for the moment.

	* dlls/wininet/ftp.c:
	wininet: Use correct types for socket functions to avoid warnings when compiling
	on BSD-based systems.

	* dlls/wininet/http.c:
	wininet: Fix HTTP redirects by reseting loop_next after one loop.

	* dlls/ntdll/threadpool.c:
	ntdll: Don't print a fixme in RtlQueueUserWorkItem if WT_EXECUTELONGFUNCTION
	is specified
	since that is what the current behaviour is tuned for.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Fix cut and paste error.

2007-01-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/write_msft.c:
	widl: Fix memory leaks.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/d3d9/directx.c:
	d3d9: Declare some functions static.

	* dlls/dmband/dmutils.c, dlls/dmband/dmutils.h:
	dmband: Declare some functions static.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove the custom thread pool implementation and use QueueUserWorkItem
	instead.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Pass WT_EXECUTELONGFUNCTION to QueueUserWorkItem since the
	function being called can sometimes take a long time to return and we
	almost always want a new thread to be created if there are no free
	threads available.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Fix some test failures of RtlGUIDFromString and RtlStringFromGUID
	by setting the length correctly and by doing a case-insentive compare
	on the GUID string that is returned.

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: RtlInitUnicodeString on a string too long to fit in a UNICODE_STRING
	should set the it to have the maximum possible length and size rather
	than a modulus of the actual length.
	Fix test failures for RtlInitUnicodeString on Windows XP upwards.

	* dlls/ole32/rpc.c:
	ole32: Make sure to reset the message state if it has been changed in
	RPC_ExecuteCall before returning.
	Fix the hrFault parameter passed into the ClientNotify function in
	ClientRpcChannelBuffer_SendReceive so that it is correct in the case of
	messages dispatched with PostMessage.
	Only unmarshal ORPCTHAT for non-fault packets.

2007-01-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/user32/win.c,
	  dlls/winex11.drv/window.c:
	user32: Fix some failures in the MDI message test.

	* dlls/user32/tests/msg.c:
	user32: Fix some failures of the ShowWindow test under Windows 2003.

2007-01-04  Kai Blin <kai.blin@gmail.com>

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment (Coverity).

2007-01-01  Michael Gardiner <mikegardiner@bigpond.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Stop StgOpenStorage from creating a file when it does not already exist.

2007-01-04  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Check subitem is valid before calling LISTVIEW_InvalidateSubItem().

	* dlls/comctl32/listview.c:
	comctl32: Remove unnecessary casts.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/trace.c, tools/make_requests:
	make_requests: Grab status names from async_terminate calls too.

	* dlls/ntdll/sync.c, dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/fd.c, server/named_pipe.c, server/protocol.def,
	  server/thread.c, server/thread.h, server/timer.c, server/trace.c,
	  tools/make_requests:
	server: Add a generic apc_call structure to make it easier to extend, and
	more type-safe.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	server: Notify the server that an APC has completed in the next get_apc call.

	* server/thread.c:
	server: Make thread_apc into a real object.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/regedit/Nl.rc:
	regedit: Update Dutch resources.

2007-01-04  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/tests/device.c, dlls/mshtml/olecmd.c, dlls/wined3d/device.c,
	  dlls/wined3d/state.c:
	Assorted spelling fixes.

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Use '%d' to print GetLastError().

	* dlls/kernel32/tests/comm.c, dlls/kernel32/tests/module.c,
	  dlls/kernel32/tests/path.c, dlls/kernel32/tests/pipe.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Use '%d' to print GetLastError().

	* dlls/itss/protocol.c:
	itss: Fix spelling of the dwOrigin variables.

	* dlls/rsabase/tests/rsabase.c:
	rsabase/tests: Remove unneeded casts.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented 64 bit versions of EnumerateLoadedModules.

	* programs/winedbg/Makefile.in, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_module.c:
	winedbg: Added a maintenance command to load a given module (for debug purposes).

2007-01-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Dirtify the stream sources in DrawPrimitiveUP.

	* dlls/wined3d/state.c:
	wined3d: Move decoding the streams to their own inline function.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP SetStreamSource changes.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP vertex declaration changes.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break the viewport out of the vertex declaration state.

2007-01-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Implement mouse GetObjectInfo on top of base class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new GetObjectInfo.

	* dlls/dinput/device.c:
	dinput: Implement GetObjectInfo[A|W] in base device class.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Don't try update version resources with invalid data, as it fails
	on Windows 2003.

2007-01-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix piAttributes NULL crash.

2007-01-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Declare some items static.

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c:
	dinput: Declare some functions static.

	* tools/winedump/pe.c:
	winedump: Fix memory leak.

2007-01-03  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wininet/wininet_Nl.rc:
	wininet: Update Dutch resource.

	* dlls/mshtml/Nl.rc:
	mstml: Update Dutch resource.

2007-01-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptItemize. Get rid of the remaining tabs.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptStringGetOrder and ScriptString_pcOutChars.

	* dlls/usp10/usp10.c:
	usp10: Use macro functions for memory allocation and start checking for
	allocation failures.

	* dlls/usp10/usp10.c:
	usp10: Make the script cache accessible from a string analysis.

2007-01-03  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Be more verbose about the expected and received values for failures
	in the resource function tests.

	* dlls/ole32/ole2.c:
	ole32: Don't release pUnk in OleCreate if CoCreateInstance failed.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Avoid crash in alloc_console when the process has no parent.

2007-01-03  Thomas Kho <tkho@ucla.edu>

	* dlls/kernel32/tests/thread.c:
	kernel32: Add CreateRemoteThread remote thread conformance tests.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add VirtualAllocEx remote thread conformance tests.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.
	The previous version of this patch wasn't applied correctly.

2006-12-30  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/stubs.c:
	oleaut32: Better OleIconToCursor stub.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* server/serial.c:
	server: Fix 0 timeout handling for serial I/O.

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.

	* dlls/ntdll/serial.c:
	ntdll: Fix DTR and CTS controls in serial code.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Store resources to be updated in a tree.

2007-01-02  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarImp.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMod.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarXor.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarOr.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarSub.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMul.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAdd.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Add wrapper for dereferencing a VARIANT of type VT_DISPATCH and
	returning the VARIANT value.

2007-01-02  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/status.c:
	comctl32: Add initial tests for the status bar control.

2006-12-25  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/status.c:
	comctl32: statusbar: Fix GetRect return value bug.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Select a proper texture unit in LockRect and dirtify the state.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove d3ddevice_set_ortho.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c:
	wined3d: Move the projection matrix into its own state.

	* dlls/wined3d/state.c:
	wined3d: Break the lighting state out of the vertex decl.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the world matrix to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the functionality of primitiveInitState to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a viewport state to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move decoding the vertex declaration to the vertexshader state handler.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Pass the user pointer strided structure via the device implementation.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/device.c,
	  dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Use the baseVertexIndex in the stateblock.

2007-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/thread.c:
	shlwapi: Use the appropriate constant for an uninitialized TLS check.

2007-01-02  Robert Reif <reif@earthlink.net>

	* dlls/dmusic/port.c:
	dmusic: Implement just enough of IDirectMusicPortImpl_GetFormat
	to keep Direct Sound from crashing from unitialized data.

2007-01-02  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Sampler variables wrongly named 'shader'.

	* dlls/ddraw/device.c:
	ddraw: Fix the AddViewport thunk.

2007-01-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Fix the calculation of message_state->prefix_data_len in two places
	where it would come out negative.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: A NULL IfSpec in RpcServerUnregisterIf should remove all interfaces,
	not crash.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix _nroffuncs to return the correct number of functions by taking
	into account inherited interfaces.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/process.c:
	msvcrt: execl fix when no args are given (reported by Louis Lenders).

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/locale.c:
	kernel32: Remove a line that was supposed to be deleted by the previous patch.

2007-01-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptFreeCache, ScriptGetFontProperties, ScriptStringFree
	and ScriptGetCMap.

	* dlls/usp10/usp10.c:
	usp10: Downgrade some more FIXME's to TRACE's.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringValidate.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add a stub implementation for TermsrvAppInstallMode.

	* dlls/gdi32/font.c, include/wingdi.h:
	gdi32: Implement GetCharWidthI.

2007-01-01  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/vertexbuffer.c:
	wineded3: dirtyend set to more than resource size.

2007-01-01  Nick Burns <adger44@hotmail.com>

	* dlls/wined3d/state.c:
	wined3d: Fix point handling.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race condition in drvclose.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/ddraw/main.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	Use GetDC instead of CreateDC where possible.

	* tools/make_makefiles:
	make_makefiles: Properly skip dlls marked with MKDLL_SKIP.

	* dlls/gdi32/mfdrv/graphics.c, dlls/gdi32/mfdrv/metafiledrv.h,
	  dlls/gdi32/mfdrv/objects.c:
	gdi32: Avoid leaking a handle in MFDRV_ExtSelectClipRgn.

2007-01-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Declare function static.

	* tools/wrc/readres.c:
	wrc: Declare some variables static const.

2007-01-01  Kai Blin <kai.blin@gmail.com>

	* dlls/dnsapi/query.c:
	dnsapi: Fix entering the success case (Coverity).

	* dlls/imagehlp/access.c:
	imagehelp: Remove unused if() check in error path.

	* tools/wrc/translation.c:
	wrc: Fix comparison typo (Coverity).

2006-12-31  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/surface.c,
	  dlls/d3d8/tests/texture.c, dlls/d3d8/tests/volume.c:
	d3d8: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	Revert "wined3d: Simplify the get_write_mask and get_swizzle functions."
	This reverts commit a9f658f6a68fbe53bcf30ab0329e5ff91451bf30.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c:
	user32: Initialize clip rectangle on first use.

	* dlls/wined3d/device.c:
	wined3d: Clip mouse after resolution change while creating default swap chain.

2006-12-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/ntdll/relay.c:
	ntdll: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/wnaspi32/winaspi16.c:
	wnaspi32: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

2006-12-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmband/band.c:
	dmband: Remove unused file-static variable.

2006-12-29  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringOut.

2006-12-28  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Remove incorrect and incomplete implementation of BeginResourceUpdate.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/resource.c:
	kernel32: Add a short test for Begin/EndUpdateResource.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add emtpy vertex declaration and related states to the state table.

	* dlls/wined3d/state.c:
	wined3d: Add stub handlers for world matrices 1-255.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Put the decoded strided data structure into the device.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_MODELVIEW to the state table.

2007-01-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DDevice_ApplyStateChanges.

2007-01-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_TEXTURETRANSFORMFLAGS to the state table.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reset both AT_SYSINFO and AT_SYSINFO_EHDR when one of them conflicts.

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Remove redundant debug channel, use the default one instead.

2007-01-02  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/file.c:
	ntdll: Remove an unnecessary NULL check.

2007-01-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/path.c, include/winbase.h:
	kernel32: Implement CopyFileWithProgress.

2007-01-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Remove get_drawable.

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pt.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Remove desktop double buffering option.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Remove desktop double buffering option.

2006-12-30  Reinhard Karcher <rkarcher@frey.de>

	* dlls/ntdll/directory.c:
	ntdll: Fix NtQueryDirectoryFile handling of short names on vfat filesystems.

2006-12-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Make more ShowWindow tests pass under Wine.

	* dlls/kernel32/tests/locale.c:
	kernel32: Make the locale test pass without errors under XP SP2.

	* dlls/ntdll/file.c:
	ntdll: Map ESPIPE to STATUS_ILLEGAL_FUNCTION.

2006-12-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Remove test directory after the files have been deleted.

2006-12-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Run tests on NT4 again.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Moved ok-statement to the appropriate place.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Move USE_EXTENDED_PRIORITIES outside the if-statement.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Skip EnumPrintersW tests when not implemented.

2006-12-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the regression caused by a previous change.

	* dlls/user32/tests/msg.c:
	user32: Update the ShowWindow test to pass cleanly under Windows 2000.

2007-01-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in:
	configure: Use the correct ar tool when building Mingw import libraries.

	* aclocal.m4, configure.ac:
	configure: Added a generic macro for checking for Mingw programs.

2006-12-29  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c:
	ole32: Add tests for channel hooks.

	* include/objbase.h:
	include: Add function declarations for CoAllowSetForegroundWindow and
	CoRegisterChannelHook to objbase.h.

2006-12-29  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Simplify the get_write_mask and get_swizzle functions.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_input_register_swizzle() and
	vshader_program_add_input_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_input_register_swizzle().

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_write_mask() and
	vshader_program_add_output_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_output_register_swizzle().

	* dlls/wined3d/baseshader.c:
	wined3d: Remove dead code in shader_get_registers_used().
	As spotted by Christoph Bumiller, these branches are now never
	reached. Also, at least in the case of WINED3DSIO_TEXM3x3SPEC and
	WINED3DSIO_TEXM3x3VSPEC the old code was not quite correct, since we
	can lookup rather than guess the texture type these days.

2006-12-29  Frank Richter <frank.richter@gmail.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Fix getting user params and subitems.
	When querying a listview subitem for the user param, the main item's
	user param is returned. Also, when a subitem is custom-drawn, the main
	item's user param is passed along.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h:
	winex11drv: Make dxgrab global.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new EnumObjects from base class.

2006-12-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Factor out script cache handling.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, server/Makefile.in, server/mach.c,
	  server/process.h, server/ptrace.c:
	server: Implement process control using Mach primitives for Mac OS.
	With help from Ken Thomases.

	* configure, configure.ac, include/config.h.in, loader/pthread.c:
	loader: Use the Mach thread port as thread id on Mac OS.

	* server/process.c, server/process.h, server/ptrace.c, server/request.c:
	server: Add hooks to support process tracing mechanisms other than ptrace.

	* server/ptrace.c, server/thread.c, server/thread.h:
	server: Split get_thread_from_pid to allow lookups by tid or pid only.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejoystick.drv/Makefile.in, dlls/winejoystick.drv/joystick.c,
	  dlls/winejoystick.drv/winejoystick.drv.spec, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/joystick/joystick.c,
	  dlls/winmm/joystick/joystick.drv.spec, programs/winecfg/libraries.c,
	  tools/winapi/win32.api:
	joystick.drv: Renamed the dlls/winmm/joystick directory to dlls/winejoystick.drv.

	* .gitignore, tools/make_makefiles:
	make_makefiles: List test directories explicitly in .gitignore.

	* .gitignore, tools/make_makefiles:
	make_makefiles: In .gitignore, explicitly list files that we know are generated
	instead of using wildcards.

	* Make.rules.in:
	Make.rules: Be more specific in make clean, only clean targets that we have
	created.

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Avoid sizeof in traces.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Avoid sizeof in traces.

2006-12-28  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Report actual supported input wave formats.
	Also, added some output formats that Core Audio ought to be able to handle.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement CoreAudio_wiAudioUnitIOProc, the input callback.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStart.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Changed widReset to stop the audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add mechanism for cross-thread call of
	widHelper_NotifyCompletions.
	wodSendNotifyInputCompletionsMessage sends the kWaveInNotifyCompletionsMessage
	to the message thread, which calls widHelper_NotifyCompletions.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add widHelper_NotifyCompletions.
	It scans for completed input wavehdrs, removes them from the queue,
	and notifies the application that they're done.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Store the device ID in the WINE_WAVEOUT structure.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Allocate/deallocate audio buffers in widOpen/widClose.

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Do additional setup in AudioUnit_CreateInputUnit.
	It now returns in an output parameter the frame count that the AU will use.
	Also, initialize the Audio Unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widDevInterfaceSize and widDevInterface.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widReset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widAddBuffer.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widOpen and widClose.

	* dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Add AudioUnit_CreateInputUnit to create an input audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add stub implementation of CoreAudio_wiAudioUnitIOProc.
	It will serve as the input callback called when our Audio Unit has sound
	data available.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Initial implementation of widGetDevCaps.

	* dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Initial stub implementation of audio input support.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/tests/device.c:
	d3d8: Don't report Shader Model 2.0 or higher.

2006-12-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty transform states to the state table.

	* dlls/wined3d/surface.c:
	wined3d: Do not setup states for unlocking if unlocking is disabled.

2006-12-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/sane.ds/ui.c:
	sane.ds: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.
	With grateful acknowledgement to Marcus Meissner.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix wglGetProcAddress typo.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Release critical section before warping mouse.

2006-12-28  Colin Pitrat <colin.pitrat@bull.net>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: nextNode and reset functions.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/shdocvw/Makefile.in:
	shdocvw: IDL_TLB_SRCS should contain the source file, not the target.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	Revert "wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4."
	This reverts commit 045975b1f439049da9405a8defbad82a39710f49.

2006-12-23  Robert Reif <reif@earthlink.net>

	* tools/winedump/pe.c:
	winedump: Fix crash on delayed import section.

2006-12-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add some tests for the running object table.
	The tests show the behaviour when the IROTData interface is not
	available from the moniker. They also show the flags that are accepted
	into IRunningObjectTable::Register.

	* dlls/ole32/moniker.c:
	ole32: Contrary to MSDN, IROTData doesn't need to be implemented for a moniker
	to be usable with the running object table.
	If IROTData isn't available, fall back to a path that uses the display
	name and the clsid of the moniker to generate the comparison data.

	* dlls/ole32/moniker.c:
	ole32: Only call IROTData::GetComparisonData once, like native does.

	* dlls/ole32/moniker.c:
	ole32: Use IMoniker::GetTimeOfLastChange to attempt to retrieve the last-modified
	time for the ROT entry.
	However, fall back to CoFileTimeNow if it fails.

	* dlls/ole32/moniker.c:
	ole32: Use the reduced forms of monikers for comparison in the running object
	table.

	* dlls/ole32/compositemoniker.c:
	ole32: Execute Reduce using the moniker's vtable in CreateCompositeMoniker as
	the moniker isn't necessarily a composite moniker.

	* dlls/ole32/moniker.c:
	ole32: ROTFLAGS_REGISTRATIONKEEPSALIVE and ROTFLAGS_ALLOWANYCLIENT are legal
	to be used together in RunningObjectTable_Register.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a simple test for XMLHTTP.

2006-12-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Move mouse to using new EnumObjects from base class.

	* dlls/dinput/device.c:
	dinput: Implement EnumOjects[A|W] in the base device class.

	* dlls/dinput/mouse.c:
	dinput: mouse: Copy and modify default data format.

	* dlls/dinput/keyboard.c:
	dinput: Remove MsgWaitForMultipleObjects calls.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Add OpenGL 2.1 support and more extensions.

	* dlls/opengl32/wgl.c:
	wgl: Fix wglGetProcAddress bug.

2006-12-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix wglGetPixelFormatAttribiv bug.

2006-12-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Create samplers for all 1.x instructions that sample.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: The default debug channel for arb_program_shader.c & glsl_shader.c
	already is d3d_shader.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move set_glsl_shader_program() to glsl_shader.c.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4.

2006-12-27  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c:
	usp10: Downgrade fixme's to trace's with comments.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: SafeArrayAllocData should succeed when cbElements is 0.

	* dlls/ole32/tests/clipboard.c:
	ole32: Output the HRESULT for clipboard tests that fail.

	* dlls/advapi32/tests/registry.c:
	advapi32: Change the test for the type parameter of RegQueryValueExA to only
	run on Win9x, since the value is set to a random value on NT.

2006-12-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Detect out of tree builds made from an unclean source tree.

	* .gitignore, dlls/.gitignore, programs/.gitignore,
	  programs/winetest/.gitignore, tools/make_makefiles:
	make_makefiles: Merge the generated gitignores in dlls and programs into the
	top-level one.

2006-12-27  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Makefile.in, dlls/.gitignore, loader/.gitignore,
	  loader/Makefile.in, programs/.gitignore, programs/Makefile.in,
	  programs/winedbg/.gitignore, server/.gitignore, tools/.gitignore,
	  tools/make_makefiles, tools/widl/.gitignore,
	  tools/winebuild/.gitignore, tools/winedump/.gitignore,
	  tools/winegcc/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	make_makefiles: Generate the top-level .gitignore file.
	Add a PROGRAMS variable in some makefiles to make things easier.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHAT structure prefixed to the server data.
	Unmarshal the data on the client side (during
	ClientChannelBuffer_SendReceive) and call ClientNotify.

2006-12-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comdlg32/tests/printdlg.c, dlls/ddraw/ddraw.c,
	  dlls/msvcrt/except.c, dlls/netapi32/tests/apibuf.c:
	janitorial: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: In multiline strings there is no need for '\' at the end
	of the lines.

	* dlls/kernel32/tests/atom.c, dlls/kernel32/tests/codepage.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/path.c:
	kernel32/tests: In multiline strings there is no need for '\' at the end of
	the lines.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Message filters aren't used in the test_call_from_message test, so
	remove the call to CoRegisterMessageFilter.

2006-12-26  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/input.c:
	user32: Silence tests in default debug level.

2006-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/cmd/builtins.c:
	cmd: Fix 'copy foo bar/' which gave access denied errors.

2006-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix failing test.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Remove failing tests.

2006-12-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/generic.ppd:
	wineps.drv: Remove surious null byte in generic.ppd.

	* dlls/atl/Makefile.in, dlls/atl/rsrc.rc, dlls/itss/Makefile.in,
	  dlls/itss/rsrc.rc, dlls/mshtml/Makefile.in, dlls/mshtml/rsrc.rc,
	  dlls/urlmon/Makefile.in, dlls/urlmon/rsrc.rc, tools/makedep.c:
	makedep: Add support for magic comments in .rc files so we can generate proper
	dependencies for them.

2006-12-24  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix VarMod(VT_DECIMAL) test by properly initializing the DECIMAL
	to use.
	Fix Wine handling of VT_DECIMAL in VarMod.

2006-12-24  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptStringGetLogicalWidths.

2006-12-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix all failing tests on Windows and Wine.

	* dlls/usp10/usp10.c:
	usp10: Reduce multiple assignments to a single memset in ScriptItemize.

2006-12-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c, dlls/d3d9/device.c,
	  dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	d3d: GetStreamSource on a stream with NULL data isn't an error.

2006-12-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/monthcal.c:
	comctl32: MonthCalendar - Fix highlighting of current date.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Skip NULL textures rather than non-NULL ones, assign -1 to skipped
	stages.
	Downgrade a FIXME to a WARN.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/utility.c:
	wininet: Get rid of ASYNC_FUNC enum.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDNEXTW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPRENAMEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPREMOVEDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPDELETEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPOPENFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETCURRENTDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDFIRSTFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPCREATEDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPSETCURRENTDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPUTFILE request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETREADFILEEXA request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETOPENURLW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove not used HTTPOPENREQUESTW request.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in HTTPSENDREQUESTW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Use proc instead of enum in SENDCALLBACK request.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Restore texture bindings in the FBO code.

	* dlls/wined3d/drawprim.c:
	wined3d: Copy the depth buffer after all dirty states are applied.

2006-12-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c:
	wined3d: D3DRS_BLENDFACTOR should not influence glBlend(TRUE/FALSE).

	* dlls/wined3d/device.c:
	wined3d: Do not mark texture stages above MAX_TEXTURES dirty.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/itss/tests/Makefile.in, dlls/itss/tests/protocol.c,
	  dlls/itss/tests/rsrc.rc, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	itss: Added test of protocol.

	* dlls/itss/Makefile.in, dlls/itss/protocol.c:
	itss: Added ITS protocol implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLFrameBase2 declaration.

2006-12-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Check lParam of the HCBT_MINMAX hook message in ShowWindow tests.

	* dlls/msvcrt/main.c:
	msvcrt: Make an internal function static, avoid a prototype.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/atl/.gitignore, dlls/mshtml/.gitignore,
	  dlls/ole32/.gitignore, tools/make_makefiles:
	make_makefiles: Automatically add IDL header targets to the .gitignore file.

2006-12-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix a failing test.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Clarify OpenGL error codes.

2006-12-23  Patrik Stridvall <patrik@stridvall.se>

	* dlls/user32/class.c, dlls/user32/spy.c, dlls/user32/user_private.h:
	user32: Show the GCL{,P}_* constant names in debug messages.

	* dlls/secur32/ntlm.c:
	secur32: Use constants instead of hardcoded values.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makefile.in, dlls/make_dlls, tools/make_makefiles:
	dlls: Merged the make_dlls script into the global make_makefiles.

2006-12-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/olepicture.c:
	oleaut32: Fix tests for redundant headers in OLEPicture load from IStream.

2006-12-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itsstor.h,
	  dlls/itss/protocol.c:
	itss: Added ITSProtocol stub implementation.

2006-12-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/storage.c:
	itss: DllCanUnloadNow code clean up.

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itss.inf,
	  dlls/itss/regsvr.c, dlls/itss/rsrc.rc, include/wine/itss.idl:
	itss: Move registration code to inf file and add missing registry.

	* dlls/itss/itss.c, dlls/itss/regsvr.c, include/wine/itss.idl:
	itss: Rename CLSID_ITSProtocol to CLSID_MSITStore.
	ITSProtocol is a different object.

	* dlls/itss/itss.spec:
	itss: DllUnregisterServer is not a stub.

2006-12-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptString_pLogAttr.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Match output of WinXP for ScriptGetProperties.

	* dlls/usp10/usp10.c:
	usp10: Improve the stub for ScriptBreak.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec,
	  include/usp10.h:
	usp10: Implement ScriptString_pSize.

2006-12-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix a crash when executing the VarAnd test with an old version
	of oleaut32.dll.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix the VarPow tests for older versions of oleaut32.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Performing a COM call from within the processing of a sent message
	during a wait for completion of another COM call is not allowed.
	Add a test for the behaviour where RPC_E_CANTCALLOUT_ININPUTSYNCCALL is returned.

	* dlls/ole32/compobj.c:
	ole32: Call the MessagePending function for message filters.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Track the pending call count so that the correct call type can be passed
	to the message filter HandleInComingCall function.

	* dlls/ole32/oleproxy.c:
	ole32: Allow the marshaling/unmarshaling of NULL interfaces for IClassFactory.

2006-12-22  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Add function _mbsspnp.

2006-12-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: AddRef and Release parent DirectInput class.

2006-12-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.28.

----------------------------------------------------------------
2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add a message test for various ShowWindow() calls, fix some failures.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub for GetCORSystemDirectory.

2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Fix a typo.

2006-12-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Build the name of the local print server in a separate function.

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix copy+paste typo.

2006-12-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Improve loading document detection in AsyncOpen.

	* dlls/mshtml/nsio.c:
	mshtml: Use Gecko's AsyncOpen if URI is has no nsIWineURI interface.

2006-12-21  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi32/Makefile.in, dlls/gdi32/freetype.c:
	gdi32: Extract the constituent TrueType files from Mac suitcase fonts into
	the user's caches directory
	and use these instead of the original suitcase.

2006-12-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of 'CopyFiles=@file'.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fixed a problem with enumerating network interfaces.
	Keep increasing the buffer until the returned length is more than two
	records smaller than the buffer we provided.

2006-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Added support for physically ejecting devices on Mac OS.

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: File positions should be aligned to sector boundaries in PE loader.

2006-12-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Don't use full path for executable in tests.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Replace pthread mutex with OSSpinLock.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Move a memset out of a mutex-guarded section.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Merge wodReset and wodHelper_Reset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Change to faster non-recursive mutex.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Push notify of completions from render callback to message thread.
	Rather than have the Audio Unit render callback traverse the queue of wave
	headers looking for complete ones, and sending a message to the message thread
	for each one it finds, just send one message to tell the message thread to do
	that work itself.  The render callback is called in a real-time priority
	thread and is expected to return as quickly as possible.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Remove more mutexes from around Audio Unit calls.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Report when the render callback is just providing silence.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Lift mutex lock/unlock out of wodHelper_PlayPtrNext to caller.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Leave audio unit running, except when waveout device paused.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Eliminate unnecessary variable, unreachable code, unused retval.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Inline & eliminate the specializations of wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Specialize wodHelper_BeginWaveHdr for its two callers and
	simplify.
	wodHelper_PlayPtrNext is only called when state == WINE_WS_PLAYING.  Also, it
	clears dwPartialOffset itself.
	wodWrite only calls wodHelper_BeginWaveHdr[Write] with a non-NULL lpWaveHdr
	parameter.  wodWrite is not called from the Audio Unit render callback, so it
	can use Wine debug channels.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Simplify handling of BEGIN+ENDLOOP wave headers.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Extract wodHelper_CheckForLoopBegin() from
	wodHelper_BeginWaveHdr().
	This refactoring prepares the ground for subsequent refactoring of
	wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Create port for sending messages to the callback thread only once.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Control the fprintf's by the Wine debug channel on/off settings.

2006-12-21  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for IDirectDrawSurface_SetColorKey.

2006-12-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Actually create the Wine fonts key if it doesn't exist.

2006-12-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/kernel32/profile.c:
	kernel32: Suppress an unneeded warning.

2006-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: VarBstrFromCy - Remove use of sprintfW by converting a CY
	into a DECIMAL instead of a double as an intermediate step.

2006-12-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/directx.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/directx.c:
	d3d: Fix adapter mode enumeration and filtering.

2006-12-20  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/device.c:
	dinput: Drop magic int.

	* dlls/dinput/data_formats.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Set the correct size for the old dinput joystick.
	This also reverts my previous patch as this is the real cause for the
	problems with Grand Prix Legends.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Reinstall the nvrc texture unit mapping.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add pixel shaders to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Catch nop sampler changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move samplers to the state table.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty sampler entries to the state table.

	* dlls/wined3d/device.c:
	wined3d: Catch nop SetTextureStageState calls.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_CONSTANT a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Make a WINED3DTSS_RESULTARG stub.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_TEXTURETRANSFORMFLAGS a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVLOFFSET stub.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVSCALE stub.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_TEXCOORDINDEX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_ALPHAOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move WINED3DTSS_COLOROP to the state table.

	* dlls/wined3d/basetexture.c:
	wined3d: Do not enable the texture dimensions in BindTexture.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty texture stage states to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c:
	wined3d: Temporary disable nvrc junk texture skipping.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c:
	shell32: Don't hardcode the system32 directory in registered classes.

	* loader/kthread.c:
	loader: Try to detect glibc 2.3 without NPTL or TLS and print a warning.

	* dlls/kernel32/tests/module.c, dlls/ntdll/loader.c:
	ntdll: Fix the libdl refcount when loading the same builtin twice.

2006-12-20  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/module.c:
	kernel32/tests: Test loading and unloading of builtin dlls.

2006-12-20  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: ws_sockaddr_u2ws should zero the sockaddr_in.sin_zero field.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* include/guiddef.h, include/windef.h, include/wine/debug.h,
	  include/wine/test.h, include/winnt.h:
	include: Get rid of the WINE_NO_LONG_AS_INT ifdefs.

	* programs/winedbg/Makefile.in, programs/winedbg/be_i386.c,
	  programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/memory.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Win64 printf format fixes.

	* programs/winedbg/be_i386.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/tgt_minidump.c:
	winedbg: Fixed a few data types.

2006-12-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse in exclusive cooperation mode only.

	* dlls/dinput/mouse.c:
	dinput: Use GetCursorPos() to calculate relative mouse movements.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Send a causality ID in the ORPCTHIS header for a call.
	Use the causality ID to determine whether this is a top-level or a
	nested (called-back) call for the purposes of IMessageFilter::HandleInComingCall.

	* dlls/ole32/tests/marshal.c:
	ole32: Reset the message filter at the end of the message filter test.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole32: Pass in the IID and IUnknown* of the object being executed to the server
	notification and message filter functions.

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole32: Call the message filter for incoming calls.

	* dlls/ole32/rpc.c:
	ole32: Call ServerNotify for channel hooks.
	Store the SChannelHookCallInfo structure in the message state.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/rpc.c:
	ole32: Implement CoRegisterChannelHook and call channel hook methods on the
	client side.

	* dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHIS structure prefixed to the client data when doing
	ORPC calls.
	This is done by putting the ORPCTHIS data into the buffer when calling
	IRpcChannelBuffer::GetBuffer on the client side and then storing the
	amount we increased the buffer in a structure stored in the Handle
	field. This is done to present the correct Buffer pointer to the proxy
	so that it writes its data after the ORPCTHIS data.
	Unmarshal the data on the server side (during RPC_ExecuteCall) and make
	sure the data is consistent according to NDR rules. Also add several
	checks on the unmarshaled data that are specified by the DCOM draft
	specification.

2006-12-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Allow wined3d to handle multiple render targets.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow the FBO code to handle multiple render targets.

	* dlls/wined3d/device.c:
	wined3d: Move storing the render target from ActiveRender to SetRenderTarget.
	Use the render target index rather than hardcoding 0.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow the device to store multiple render targets.

2006-12-19  Hans Leidekker <hans@it.vu.nl>

	* include/winnt.h, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.man.in:
	winedump: Start dumping .NET specific bits from PE executables.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Fixed typo in map_image.

2006-12-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: pbuffer detection.

2006-12-19  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't crash when called with a NULL gl context.

2006-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Improve the fontconfig filtering hack so that Mac suitcase fonts get
	through.

2006-12-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/gdiobj.c:
	gdi32: Remove unused function.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix the HMETAFILEPICT user marshaling test to use the size
	derived from the return value of HMETAFILEPICT_UserMarshal instead of
	the value returned by HMETAFILEPICT_UserSize, as the latter
	over-estimates the size on Windows.
	Remove some unnecessary casts.

2006-12-19  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	user32: Extend the support for SWP_STATECHANGED for all windows.

2006-12-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DRS_STIPPLEPATTERNxy.

2006-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Fix a function name.

	* dlls/wined3d/state.c:
	wined3d: Add missing render state function.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Catch nop render state changes.

	* dlls/wined3d/device.c:
	wined3d: Move render state applying to drawprim.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add the state dirtification infrastructure.

2006-12-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* configure, configure.ac, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c, include/config.h.in:
	msvcrt: Add _atoldbl.

2006-12-19  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Re-generated with autoconf 2.61.

2006-12-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Bypass conversion to string in R4/R8 -> DECIMAL conversion.

2006-12-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/mouse.c:
	winex11drv: Return cached cursor_pos in GetCursorPos().

2006-12-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/ws2_32/socket.c:
	ws2_32: Implement the SIO_ADDRESS_LIST_QUERY ioctl.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add a minimal PE image that XP is able to load.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Enable cab compression and delete any resulting cabs using SHFileOperation.

	* dlls/msi/tests/install.c:
	msi: Run the install tests from a temporary directory.

2006-12-15  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringCPtoX.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringXtoCP.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringFree.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringAnalyse.

2006-12-18  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c:
	d3d9: Handle volume container in d3d9.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c:
	d3d9: Handle surface container in d3d9.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c:
	d3d8: Handle volume container in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Handle surface container in d3d8.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/directx.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c:
	d3d9: Fix implicit swap chain refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit swap chain destruction in
	IWineD3DDevice.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Fix implicit surface refcounting.

	* dlls/wined3d/volume.c, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DVolume_GetContainerParent.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DSurface_GetContainerParent.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Handle volume refcount forwarding in d3d9.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/surface.c, dlls/d3d9/tests/device.c, dlls/d3d9/texture.c:
	d3d9: Handle surface refcount forwarding in d3d9.

	* dlls/wined3d/device.c:
	wined3d: Call the depth stencil destroy callback function.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the text control when the selection path changes.

	* dlls/msi/events.c:
	msi: Only cleanup event subscriptions of the dialog being closed.

2006-12-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/Makefile.in,
	  dlls/dinput/tests/device.c:
	dinput: Make mouse use axis mode flag set in base class. Add tests.

	* dlls/dinput/device.c:
	dinput: Add handling of AXISMODE property to base device object.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Zero out returned information struct.

	* dlls/dinput/keyboard.c:
	dinput: Don't return non existent keys.

2006-12-17  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/heap.c:
	kernel32: Protect global alloc functions against integer overflows on the
	size parameter.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix SetSize for HGLOBAL streams in the case of being out-of-memory.

	* dlls/ole32/ole32.spec, dlls/ole32/tests/usrmarshal.c,
	  dlls/ole32/usrmarshal.c:
	ole32: Implement HMETAFILE and HMETAFILEPICT user marshaling functions and
	add tests for these.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/usrmarshal.c:
	ole32: Move the user marshal tests to usrmarshal.c.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Free the resource allocated by InitializeSecurityContext when the
	connection is closed.

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the user marshaling functions.

	* dlls/ole32/datacache.c:
	ole32: Support reading and writing custom clipformats in the data cache.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/pe.c:
	winedump: Remove a redundant ';'.

	* tools/winedump/pe.c:
	winedump: Fix a couple of typos.

2006-12-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Make tests run on win9x and NT4 again.

	* dlls/user32/tests/monitor.c:
	user32/tests: Make sure the tests run on NT4 again.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/token.c:
	server: Cast-qual warnings fix.

	* server/object.c:
	server: Cast-qual warnings fix.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Define __CxxLongjmpUnwind for i386 only.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/hlpfile.c:
	winhelp: Cast-qual warnings fix.

	* programs/winecfg/theme.c:
	winecfg: Cast-qual warning fix.

	* programs/progman/group.c:
	progman: Cast-qual warnings fix.

	* dlls/version/tests/info.c:
	version/tests: Write-strings warning fix.

2006-12-15  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/main.c:
	ddraw: IDirectDraw3 should use its own ref count variable.

	* dlls/ddraw/main.c:
	ddraw: Initialize the IDirectDraw3 vtable.

2006-12-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Remove some no longer used libcurses checks.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/wined3d/device.c:
	wined3d: When changing display modes clip cursor to the requested display size.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/gdi32/opengl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid grabbing syslevel locks in the wrong order.

2006-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented __CxxLongjmpUnwind.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Make pointers to read-only exception descriptors const.

2006-12-15  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Close the opened file handle even in error cases.

2006-12-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add a stub implementation for SetupPromptReboot.

2006-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/edit.c:
	user32: Center the context menu if it was activated via VK_APPS like Windows
	does.

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  dlls/winex11.drv/keyboard.c:
	user32: Add support for the VK_APPS (Menu) key.

	* dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	ddrawex: Avoid not necessary casts.

	* dlls/ddraw/ddraw_thunks.c:
	ddraw: Fix warnings.

2006-12-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/tests/ntlm.c:
	secur32/tests: Cast-qual warnings fix.

2006-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Clean up SetRenderState.

	* dlls/d3d8/tests/device.c, dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c:
	wined3d: D3DRS_ZVISIBLE is not supposed to return an error.

	* dlls/ddraw/surface.c:
	ddraw: Add a TRACE to GetPixelFormat.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use pvaIn in exec_print.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi/tests: Fix typos.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/monitor.c,
	  dlls/winex11.drv/winpos.c:
	user32: ClipCursor should use virtual screen resolution for empty/invalid rects.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ddrawex/Makefile.in, dlls/ddrawex/ddrawex.spec,
	  dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	Add ddrawex dll.

2006-12-13  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, include/ddraw.h:
	ddraw: Add IDirectDraw3 interface.

2006-12-09  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/surface.c:
	ddraw: Fix IDirectDrawSurfaceImpl_SetColorKey to also change surface_desc.

2006-12-14  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/kernel32/tests/heap.c, dlls/usp10/usp10.c,
	  dlls/wined3d/directx.c, dlls/winedos/int15.c,
	  dlls/winspool.drv/tests/info.c, programs/wineconsole/wineconsole.c,
	  programs/winedbg/break.c:
	Assorted spelling fixes.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/tests/printdlg.c:
	comdlg32: Fix PrintDlg(NULL) and reenable a test that was in an '#if 0'.
	Fix the test so it compiles without warnings.

	* dlls/ole32/tests/marshal.c:
	ole32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles.

	* dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/win.c:
	user32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/version/tests/info.c:
	version/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/shlwapi/tests/clist.c:
	shlwapi/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/comctl32/tests/mru.c:
	comctl32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2006-12-14  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Replace numeric literals with the proper constant.

2006-12-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/schannel.c:
	secur32: Make some data const.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make some data const.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Make some data const and static.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make some data const.

	* dlls/msvcrt/exit.c, dlls/msvcrt/locale.c:
	msvcrt: Make some data const.

	* dlls/dswave/dswave_main.c:
	dswave: Make some data const.

	* dlls/crypt32/store.c:
	crypt32: Make some data const.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Make some data const.

	* dlls/winmm/winearts/audio.c:
	winearts: Make some data const.

	* dlls/dmime/audiopath.c:
	dmime: Make some data const and static.

	* dlls/dbghelp/module.c:
	dbghelp: Make some data const.

	* dlls/atl/registrar.c:
	atl: Make some data const.

	* dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/midipatch.c,
	  dlls/winmm/wineoss/mixer.c:
	wineoss: Make some data const.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Be a bit more verbose on failure.

2006-12-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y:
	Revert "msi: Comparisons with null in conditions are special."
	This reverts commit 9dce96b3155ce07dffa4f5b0712fbcaad9ba3e2c.

	* dlls/msi/tests/package.c:
	msi: Fix the condition test to not assume MsiNetAssemblySupport is empty.

2006-12-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Release non implicit surfaces only if refcount is 0, with test.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added print template strings.

	* dlls/mshtml/olecmd.c, dlls/mshtml/resource.h:
	mshtml: Set default print template in exec_print.

	* dlls/mshtml/nsio.c:
	mshtml: Fixed handling chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Don't do anything in SetNSContainer if new container is the same
	as previous.

	* dlls/mshtml/nsio.c:
	mshtml: Fix loading pages in containers without document.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added nsACString_SetData function and use it instead of nsACString_Init
	when we return string value.

2006-12-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Cast-qual warnings fix.

2006-12-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Fix FindExecutableW() to not check if lpResult after using it. It's
	supposed to cause a segfault anyway.
	Use SE_ERR_FNF rather than a numeric literal.

	* dlls/shell32/shlexec.c:
	shell32: Add some documentation for FindExecutableW().

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Fix FindExecutable() to return the executable path,  not the whole
	command.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add FindExecutable() tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: MSDN says ShellExecute() == 32 indicates an error. So fix
	the tests.

2006-12-13  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/tests/ole2.c:
	ole32: Fix named/nameless union compilation error.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/tests/string.c:
	msvcrt: The tests link with msvcrt(d).dll now, so use GetModuleHandle() rather
	than LoadLibrary().

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added beginning of IDM_PRINT implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Added test of CompareUrl.

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Update cached cursor position after calling hook.

	* dlls/user32/tests/input.c, dlls/winex11.drv/mouse.c:
	winex11.drv: Only events with MOUSEEVENTF_MOVE flag should change mouse position.

2006-12-13  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Remove unneeded headers.

2006-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: Map the PE header up to the specified size, and clear the rest of
	the page.

2006-12-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add the data that mimics the PE image which upack creates.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Use pluggable protocol in CoInternetCompareUrl.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-msdownload mime filter.

2006-12-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/ntdll/rtl.c, dlls/ntdll/tests/rtl.c, include/winternl.h:
	ntdll/tests: Cast-qual warning fix.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed computation of viewport and scissor position.

2006-12-10  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/user_private.h, dlls/user32/win.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec:
	user32: Factorize graphics driver SetParent into user32.

2006-12-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add tests and fix for ScriptXtoCP .

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Use standard mouse data format instead of custom one.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Remove redundant parameter.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move mouse & keyboard user data format to base class.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick user data format into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Add user data format into base class. Implement SetDataFormat.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move transform and offsets structures into base device class.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Show correct filenames on test.winehq.org.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: No need to return anything as we are using a global
	variable now.

2006-12-12  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Allow the preferred language to be different from the preferred
	locale on Mac OS X.

2006-12-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsservice.c:
	mshtml: Use HTMLWindow::alert in nsPromptService::Alert.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/resource.h:
	mshtml: Added alert implementation.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the display pointer in the GL context.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	opengl32: Don't use ENTER_GL/LEAVE_GL around calls to driver functions.
	This causes lock inversions when the driver accesses the DC.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c:
	opengl32: Avoid generating a wrapper for internal functions when we can call
	the internal one directly.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	winex11.drv: Correctly position and clip opengl child windows.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the unused set_drawable function.

	* dlls/gdi32/clipping.c:
	gdi32: Use a more appropriate size for the default clip region.

	* dlls/gdi32/dc.c, dlls/winex11.drv/init.c:
	winex11.drv: Implemented DESKTOPHORZ/VERTRES device caps.

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Make sure the drawable rect is always updated and use it where
	appropriate.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipping.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrender.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/window.c:
	winex11.drv: Store window and drawable rects in X11DRV_PDEVICE.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Remove unused PropertyAliasMap variable.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub implementation for CorExitProcess and
	GetRequestedRuntimeInfo.

	* dlls/mscoree/Makefile.in, dlls/mscoree/mscoree_main.c:
	mscoree: Take advantage of an installed Mono for Windows to run .NET
	applications.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Don't treat having no printers as a failure.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Make default_printer a global variable.

2006-12-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msi/tests/install.c:
	msi/tests: Cast-qual warning fix.

2006-12-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/tests/treeview.c,
	  dlls/usp10/tests/usp10.c, dlls/winmm/tests/wave.c:
	Made some functions static.

2006-12-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvClosePort.

	* dlls/localspl/tests/localmon.c, include/ddk/winsplp.h:
	localspl/tests: Add tests for XcvOpenPort.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shell32_main.c:
	shell32: Add a stub implementation for SHLoadNonloadedIconOverlayIdentifiers.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move SRGBWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move tesselation to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POSITIONDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_DEBUGMONITORTOKEN a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHSEGMENTS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHEDGESTYLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STIPPLEDALPHA to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREPERSPECTIVE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DEPTHBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SCISSORTESTENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_WRAPx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSPRITEENABLE to the state table.

	* dlls/wined3d/device.c:
	wined3d: WINED3DRS_SOFTWAREVERTEXPROCESSING is a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LASTPIXEL to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LOCALVIEWER to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORWRITEENABLEx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move point scale render states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MAX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MIN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALIZENORMALS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LINEPATTERN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORVERTEX to the state table.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cryptdll/cryptdll.c:
	cryptdll: Change storage class of module handle to static.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move few helper functions and standardize them.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move internal function calculate_ids to where it's really used.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No need to copy default constant format. Use already defined static
	instead.

2006-12-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Avoid using garbage data in wildcard expansion.

2006-12-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Make the WGL code independant of the number of supported pixel formats.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Properly handle GLX_DRAWABLE_TYPE queries.

2006-12-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize IDirectInputDevice2AImpl_Acquire/Unacquire.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Ensure that the size of the dev caps pointer is large enough - no exact.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Silently ignore DIPROP_CALIBRATIONMODE.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Remove incorrect assumption about format.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Set WINED3DRS_INDEXEDVERTEXBLENDENABLE to state_nogl.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused tween factor stateblock member.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused stateblock vertex blend member.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move wined3drs_fogdensity to the state table.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FOGCOLOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_RANGEFOGENABLE a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move fog states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STENCILWRITEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move stencil states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SPECULARENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREFACTOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_BLENDOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move clipping states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move alpha states to the state table.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::Reset.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/util.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/gdi32/tests/metafile.c:
	gdi32/tests: Cast-qual warning fix.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Reduce the number of error messages.

2006-12-10  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix imagelist regression from "comctl32: Remove Nx1 assumptions
	in ImageList_Read".

2006-12-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/cert.c, dlls/ddraw/tests/refcount.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/propset.c, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/msi/tests/db.c, dlls/msvcrt/tests/data.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msxml3/tests/domdoc.c, dlls/ole32/tests/ole2.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartype.c, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/secur32/tests/main.c,
	  dlls/shell32/tests/shlfolder.c, dlls/user32/tests/dde.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/sysparams.c, dlls/user32/tests/win.c:
	made functions and variables static in some testcases.

2006-12-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Fix typo.

2006-12-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/joystick_linux.c:
	dinput: Fix processing of custom format.

2006-12-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmstyle/dmutils.c:
	dmstyle: Dangling references fix.

	* dlls/dmloader/debug.c:
	dmloader: Dangling references fix.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmime/dmutils.c:
	dmime: Dangling references fix.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Cast-qual warnings fix.

2006-12-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/storage.c:
	dbghelp: Sparse array speed up.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.27.

----------------------------------------------------------------
2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Don't assume that the font codepages change with the user locale.
	Codepages can be set independently with LC_CTYPE.

	* dlls/msvcrt/locale.c:
	msvcrt: Use LOCALE_USER_DEFAULT to get the proper codepage for the Unix locale.

	* dlls/shlwapi/tests/string.c:
	shlwapi: Fixed string tests for non-English locales.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move blending related states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_AMBIENT to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZFUNCENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DITHERENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SHADEMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_CULLMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LIGHTNING to the state table.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Disable the freetype mmap sharing on Mac OS.

2006-12-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comcat/comcat_private.h, dlls/comcat/manager.c:
	comcat: Remove const from COMCAT Manager.

2006-12-08  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define AVI resource 152.

2006-12-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Change the output for HRESULT's.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/stack.c:
	dbghelp: Avoid a printf format warning.

	* tools/winedump/pdb.c:
	winedump: Avoid printf format warnings.

2006-12-08  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/imm32/imm.c:
	imm32: Send the WM_IME_CHAR message, although ResultString has been read.

2006-12-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Cast-qual warnings fix.

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Cast-qual warnings fix.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FILLMODE to the state table.

2006-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add render states to the state table.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Create the state table.

2006-12-07  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Downgrade SO_REUSEADDR fixme to a trace.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Check the NX compatibility flag for every loaded module.

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winebuild/winebuild.man.in:
	winebuild: Added --nxcompat option, and mark all modules as NX-compatible
	by default.

	* tools/winedump/pe.c:
	winedump: Print sizes and offsets in hex.

2006-12-07  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Don't try to download a non-scalable font.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for comparison to empty strings.

	* dlls/msi/cond.y:
	msi: Comparisons with null in conditions are special.

2006-12-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/lib.c:
	winedump: Dump section data of COFF library files, decode some import data.

	* tools/winedump/main.c, tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Add a possibility to dump raw section data.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Export dump_section() for use outside of pe.c.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Handle properly partial optional COFF headers.
	Export dump_file_header() and dump_optional_header() for use outside of pe.c.

	* tools/winedump/pe.c:
	winedump: IMAGE_SCN_ALIGN_??? are not the bit fields, but the values masked
	by IMAGE_SCN_ALIGN_MASK.

	* tools/winedump/pdb.c:
	winedump: Avoid returning void from a void function.

	* tools/winedump/pdb.c:
	winedump: Make output of dump_data fit into 80 columns.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add PE images with section alignment 1 and 2 to the loader test.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c:
	ntdll: Fix the failing loader tests.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Implement wglGetPixelFormatAttribfvARB.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Use LOCALE_NOUSEROVERRIDE in tests that depend on the decimal
	separator.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use LOCALE_NOUSEROVERRIDE where necessary in variant conversions.

	* dlls/kernel32/locale.c:
	kernel32: For LOCALE_NOUSEROVERRIDE, check locale against the appropriate
	default lcid.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Added LOCALE_NOUSEROVERRIDE flag on time tests that rely
	on AM/PM.

2006-12-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* documentation/README.ko:
	README: Updated Korean translation.

2006-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/Fr.rc:
	winecfg: A few fixes for the French translation.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove references to wine_unicode and to .spec.c files.

2006-12-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Add some documentation for CoCreateInstance.

	* dlls/wininet/http.c:
	wininet: Make a function for resolving the server name for an HTTP request
	and sending the appropriate callbacks and use it to remove some duplicated code.

	* dlls/wininet/http.c:
	wininet: Make HTTP_HandleRedirect no longer call HTTP_HttpSendRequestW.
	Make the redirect handling in HTTP_HttpSendRequestW iterate instead of recurse.

2006-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_parentWindow implementation.

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added IDS_MESSAGE_BOX_TITLE string.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/pdf mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/java mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-zip-compressed filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-gzip-compression filter.

2006-12-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Fix typo.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* include/wingdi.h:
	gdi32: Add a prototype for GetFontUnicodeRanges().

2006-12-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Only mmap a given font file once.
	FT_New_Face always creates a new mapping of the font file, so do the
	mapping by hand and use FT_New_Memory_Face instead.

2006-12-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix implicit surface refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Handle volume refcount forwarding in d3d8.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c, dlls/d3d8/texture.c:
	d3d8: Handle surface refcount forwarding in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit depth stencil surface destruction
	in IWineD3DDevice.

	* dlls/wined3d/directx.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit volume destruction in
	IWineD3DVolumeTexture.

	* dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit render target destruction in
	IWineD3DSwapChain.

	* dlls/wined3d/cubetexture.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in
	IWineD3DCubeTexture.

	* dlls/wined3d/directx.c, dlls/wined3d/texture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in IWineD3DTexture.

2006-12-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/list.h:
	wine/list.h: Added list_move_head and list_move_tail.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Remove resolve_STREAM_SEEK(), it is unused.

	* dlls/ole32/usrmarshal.c:
	ole32: Convert dump_user_flags() into debugstr_user_flags(), a proper debug
	trace function.

	* dlls/ole32/datacache.c:
	ole32: Convert dump_FORMATETC() into debugstr_formatetc(), a proper debug
	trace function.

	* tools/winapi/msvcmaker:
	msvcmaker: Link with msvcrt(d).dll rather than with the static C library.

	* tools/winapi/msvcmaker:
	msvcmaker: Tweak the .dsp formatting to better match Visual Studio.

	* tools/winapi/msvcmaker:
	msvcmaker: Remove unneeded -I.. for the msvcrt tests.

	* tools/winapi/msvcmaker:
	msvcmaker: Fix the code that sets __WINETEST_OUTPUT_DIR so it does not pollute
	$output_dir.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix for missing NV GLX extension.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: More tests for the SourceDir property.

	* dlls/msi/tests/package.c:
	msi: Add some tests for the ALTER query.

2006-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Added support for constant values passed by dbghelp.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/symbol.c:
	dbghelp: Added ability to internal store / reload a symbol with a constant value.
	Let dwarf and msc use this new feature.
	As we also add global symbol without addresses, don't take those
	constant symbols into account for searches by address.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/storage.c, dlls/dbghelp/symbol.c:
	dbghelp: Added a field to the hash table to store the number of elements in
	the hash table.
	Make use of it to get rid to module_compute_num_syms.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/symbol.c:
	dbghelp: In find_nearest, now return the symbol instead of its index in
	module->sorttable.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Simplify the way we find the debug header.

2006-12-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/dplayx/dplay.c:
	dplayx: Display requested provider.

2006-12-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Cleanup wglMakeCurrent.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/type42.c:
	wineps.drv: When we're using a GlyphDirectory we should clear the offsets and
	lengths of the loca and glyf tables in addition to changing their names.
	Should fix printing on Mac based cups servers.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetWindowsDirectory.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetSystemDirectory.

2006-12-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/version/tests/info.c:
	version/tests: Free memory after use.

	* dlls/wininet/tests/url.c:
	wininet/test: Free memory after use.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Free memory after use.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/volume.c:
	kernel32: Always read a full block from the CD-ROM to avoid problems on raw
	devices.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/user32/listbox.c, dlls/user32/tests/listbox.c:
	user32: For LBS_OWNERDRAWVARIABLE listboxes return the fixed item height if
	the listbox is empty.

2006-12-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Initialize sid_str to NULL.

	* dlls/msi/database.c:
	msi: Fail if stg is NULL.

2006-12-05  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Rewrite setsockopt to be more readable.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Added support for the HEAP_CREATE_ENABLE_EXECUTE flag.

	* loader/kthread.c:
	kthread: Don't make the stack executable by default.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Force exec permissions on all mmaps unless the app is marked
	NX-compatible.

2006-12-05  Thomas Fitzsimmons <fitzsim@redhat.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Recognize DT_GNU_HASH.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/lsa.c:
	advapi32: Eliminate wild pointers.

	* dlls/comcat/tests/comcat.c:
	comcat/tests: Cast-qual warnings fix.

2006-12-04  Lei Zhang <thestig@google.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Move EM_EXSETSEL fix into ME_SetSelection.

2006-12-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Remove no longer used GEN_EVENT.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick event queue into base device class.

	* dlls/dinput/mouse.c:
	dinput: Move mouse event queue into base device class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard event queue into base device class.
	This removes [Get|Set]Property and GetDeviceData.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Implement [Get|Set]Property and GetDeviceData in base Device object.
	Also add queue_event to replace big macro GEN_EVENT.

2006-12-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h:
	msi: Examine the attributes of all features before setting a component's state.

	* dlls/msi/tests/package.c:
	msi: Add the names of features/components to debugging output.

2006-12-04  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/avifile_It.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/mpr/mpr_It.rc,
	  dlls/msacm32/msacm_It.rc, dlls/msi/msi_It.rc,
	  dlls/msrle32/msrle_It.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oledlg/oledlg_It.rc, dlls/serialui/It.rc, dlls/setupapi/It.rc,
	  dlls/shell32/shell32_It.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/user32/resources/user32_It.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wininet/wininet_It.rc, dlls/winspool.drv/It.rc,
	  programs/clock/It.rc, programs/cmdlgtst/It.rc,
	  programs/notepad/It.rc, programs/progman/It.rc,
	  programs/regedit/It.rc, programs/start/It.rc, programs/view/It.rc,
	  programs/winecfg/It.rc, programs/wineconsole/wineconsole_It.rc,
	  programs/winemine/It.rc, programs/winhelp/It.rc:
	Consistently use SUBLANG_NEUTRAL for Italian resources.

	* README, dlls/gdi32/gdi_private.h, dlls/iphlpapi/ifenum.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/instr.c, dlls/kernel32/process.c,
	  dlls/kernel32/selector.c, dlls/msvcrt/tests/headers.c,
	  dlls/ole32/storage32.h, dlls/oleaut32/typelib.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/shell32/shell32_main.c,
	  dlls/user32/mdi.c, include/msvcrt/process.h, include/windef.h,
	  libs/wine/mmap.c, tools/widl/typelib_struct.h, tools/winedump/le.c,
	  tools/winedump/msc.c, tools/winegcc/winegcc.c:
	Assorted spelling fixes.

	* dlls/mshtml/editor.c:
	mshtml: Add '\n' to Wine trace.

	* dlls/msxml3/domdoc.c:
	msxml3: Add '\n' to Wine trace.

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: PC_WRITABLE spelling fix.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Change storage class of dll_count to static.

2006-12-04  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Implement the GetData function of the data cache to using the
	existing LoadData function and fix GetData to also return data that
	has been set, rather than loaded.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Fix HandsOffStorage in the data cache.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement the DiscardCache function in the data cache.

2006-12-04  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool.drv: Outlook 2003 relies on the buffer size returned by EnumPrintersA
	being big enough to hold the buffer returned by EnumPrintersW.

2006-11-23  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Add err for failure case in CheckDepthStencilMatch.

	* dlls/wined3d/directx.c:
	wined3d: Fix CreateFakeGLContext to work with a foreign context.

	* dlls/wined3d/directx.c:
	wined3d: Avoid XFree on NULL in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Rearrange code in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Add warn trace for INVALIDCALL case in CheckDeviceType.

2006-12-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/glut32/Makefile.in, dlls/glut32/glut.c, dlls/glut32/glut32.spec,
	  dlls/make_dlls:
	Remove glut32.

2006-12-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Added tests for closesocket cancelling pending I/O operations.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* server/sock.c:
	server: Explicitly shutdown destroyed sockets to force pending poll() calls
	to return.

	* dlls/kernel32/locale.c:
	kernel32: Store the LC_MESSAGES value under the "Locale" value.
	Some apps depend on the value. Reported by Karsten Elfenbein.

2006-12-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Dwarf can emit REGREL symbol information, so handle it.
	Factorize a bit more some symbol handling code.

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_active.c:
	winedbg: Now that local variable computation depends on instruction
	pointer value, be sure to have the relevant insn ptr value when
	fetching the stack frames (spotted by Peter Oberndorfer).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fixed value stored for register relative information
	(regression spotted by Peter Oberndorfer).

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Now that symbol's value computation depend on instruction
	pointer value, be sure to always store it (spotted by Peter
	Oberndorfer).

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/stack.c:
	winedbg: Added some black magic to still handle register values on non
	current frame for some of the registers we know of (frame pointer,
	stack pointer).

	* programs/winedbg/symbol.c:
	winedbg: Remove some hassle from sgv_cb, and handle line number displacement
	where needed.

	* programs/winedbg/symbol.c:
	winedbg: No longer test filename in sgv_cb, but do it in the only place where
	we actually need it.

2006-12-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Add some more traces to the data cache to make debugging easier.

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for invalid clipformat/tymed combinations in IOleCache:Cache
	and for caching formats with a clipformat of 0.

	* dlls/ole32/datacache.c:
	ole32: In the data cache, fmtetc->cfFormat and fmtetc->tymed can be 0 which
	means to match any clipformat/tymed.
	Therefore, keep the clipformat of the data in the data_cf field.
	Return an error from SetData if a non-zero clipformat hasn't been specified.
	Write out stgmedium.tymed instead of fmtetc.tymed, which is guaranteed
	to be non-zero if data has been set.

	* dlls/ole32/datacache.c:
	ole32: Check that the specified clipboard format and tymed are valid in
	IOleCache::Cache in the data cache.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss.spec:
	spoolss: Forward EnumPortsW to winspool.drv.

2006-12-04  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Rewrite getsockopt to make it more readable.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Allow module with extensions in forward specifications.

2006-12-04  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Double quotes are not valid in queries.

	* dlls/msi/tests/db.c:
	msi: Add tests for quoting in queries.

2006-12-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/volume.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/volume.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Pass the superior creating object down to the callback functions.

2006-12-01  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in MS Sans Serif font.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Small fonts.

	* fonts/courier.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Courier font.

	* fonts/system.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in System font.

2006-12-02  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/comctl32/header.c:
	comctl32: Destroy header information on WM_NCDESTROY instead of WM_DESTROY.

2006-12-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Don't return prematurely if ConvertPixelFormatWGLtoGLX receives an invalid
	pixel format.

2006-12-01  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/vartype.c:
	oleaut32: Cleanup of previous VarBstrCmp patch.

2006-12-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Pitch for DXTn textures can not be 0. With tests.

2006-12-01  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Implement Poll for keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move critical section to the base device class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: Move acquired flag to the base device class. Add tests.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/parser.c:
	winebuild: Check for illegal characters in entry point names.

2006-12-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/nonclient.c, dlls/user32/tests/win.c:
	user32: Add ShowWindow test, make it pass under Wine.

2006-12-03  Lei Zhang <thestig@google.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fixes and additional conformance tests for EM_EXSETSEL.

2006-12-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: (W)GL_NV_vertex_array_range.

2006-12-03  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Fix single stepping over popf instruction.

2006-12-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/msc.c:
	winedump: Cast-qual warnings fix.

	* tools/winedump/lnk.c:
	winedump: Cast-qual warnings fix.

2006-12-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/reg.c:
	shell32: Forward SHDeleteKeyA directly to SHDeleteKeyW.

2006-12-01  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlexec.c:
	shell32: Move a NULL pointer check before the place where we dereference
	the pointer.

	* dlls/msi/action.c, include/msidefs.h:
	msi: Add handling for the StartServices action.

2006-12-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: MapAndLoad should do some useful stuff now.

2006-12-01  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole32_main.c:
	ole32: Set the mapping mode to anisotropic in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The width of the metafile drawn should be 3 times the icon width in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Fill in the xExt and yExt fields in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Use the default icon title font when writing the caption text out in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The METAFILEPICT created by OleMetafilePictFromIconAndLabel should have
	its mapping mode be anisotropic, not isotropic.

	* dlls/ole32/ole32_main.c:
	ole32: Call SetWindowOrgEx and SetWindowExtEx in OleMetafilePictFromIconAndLabel
	so that the created metafile scales correctly.
	Centre the icon and the label.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement saving of the data cache.
	Document a few of the unknown fields in the presentation data header.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Add handling of the dirty state to the data cache and fix InitNew to
	not call Load.

	* dlls/ole32/datacache.c:
	ole32: Add documentation for CreateDataCache.

	* dlls/ole32/tests/ole2.c:
	ole32: Add some tests for the IViewObject, IOleCache2 and IPersistStorage
	interfaces of the OLE data cache.

	* dlls/ole32/datacache.c:
	ole32: The advise sink for the data cache should be primed with the passed in
	aspects value, not an arbitrarily selected value.

	* dlls/ole32/datacache.c:
	ole32: Implement the SetData function for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Load cached data in the data cache into a STGMEDIUM type so it can be
	treated the same as set data.

	* dlls/ole32/datacache.c:
	ole32: Implement Cache and Uncache for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Create a cache entry for each format in the data cache to allow
	for the future possiblity to add entries with IOleCache::Cache and
	IOleCache::SetData.

	* dlls/ole32/datacache.c:
	ole32: Implement DataCache_GetClassID.

	* include/ole2.h:
	include: Add some missing OLE defines and declarations to ole2.h.

2006-12-01  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix elf_load_module params on non elf system to reflect last change
	to its definition.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msacm32/pcmconverter.c:
	msacm32: Make some data const.

2006-12-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Don't update the key state table in mouse related functions.

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/device.c:
	d3d9: Remove unreachable return.

2006-11-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Set the UserSID property.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountName.

2006-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comctl32/propsheet.c:
	comctl32: Do not crash when the startpage is invalid.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: Added test case for . and .. directory entries.

	* dlls/kernel32/file.c, dlls/ntdll/directory.c:
	ntdll: Always return . and .. as the first two entries in directory searches.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Skip the PE loader test under a Win9x platform.

2006-11-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add more exception tests.

	* dlls/ntdll/tests/exception.c:
	ntdll: Run exception tests from executable memory.

	* dlls/ntdll/tests/exception.c:
	ntdll: Simplify exception tests.
	- create helper function to setup exception frame and run the test
	- lookup function ptr only once
	- make "code data" const
	- reuse global exception counter
	- change alignment test to use stack address to generate an alignment
	exception. This avoids
	the need to pass an argument, so it can use the created helper function.
	(as the stack is (at least) 4 byte aligned, this works equally well)

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c:
	d3d8: Use correct COM macros.

	* dlls/d3d9/device.c, dlls/d3d9/vertexdeclaration.c:
	d3d9: Use correct COM macros.

	* dlls/wined3d/directx.c:
	wined3d: Remove duplicated code.

	* dlls/ddraw/device.c:
	ddraw: Call wined3d's SetTextureStageState not the one of d3d7.

2006-11-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Relax the pixel format attribute conversion code a bit.

2006-11-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added handling of right and left arrow keys in editing mode.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/class.c:
	user32: W2K3 returns ERROR_INVALID_PARAMETER.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Don't free the DOS area when a broken app passes a NULL pointer to
	NtFreeVirtualMemory.

2006-11-30  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Add VarBstrCmp binary comparison for LCID==0.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/send.c:
	winetest: Make sure we can send larger files.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/dump.c, tools/winedump/lib.c:
	winedump: Restore the COFF library dumper functionality broken by the previous
	change.

2006-11-29  Lei Zhang <thestig@google.com>

	* configure, configure.ac, dlls/msxml3/domdoc.c, include/config.h.in:
	msxml3: Fix compiles for systems with libxml2 version 2.6.14 and below.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Load the local monitor only once.

2006-11-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Look for supported color depths icons only.

2006-11-30  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.".
	This reverts commit 167b83c28af73803462e92ee4dcb1a95f194a74d.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.".
	This reverts commit 478a414e5820c56fb7bb65d0c41c831932ca26e8.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.".
	This reverts commit a7518f6f5494558e80ad125d0b42a46b4744d448.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.".
	This reverts commit 18546a65e6e68427ed49c4ea5a601972fb8a4de0.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetTexture.".
	This reverts commit 274df6ef88fb16da6c61fc891db74042fec0bfc5.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".
	This reverts commit 16b1e046d8da9b716975c1c483c149ea3826b690.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetIndices.".
	This reverts commit 5c4008719c60af52e9370023f09c7b86b7768e85.

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.".
	This reverts commit f84f687e6d3d8f432de2c5d9b2af13d2c5cedfb2.

	* dlls/wined3d/device.c:
	Revert "d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.".
	Removing COM in d3d is not feasible as long as we use inheritance. So
	stick to the COM refcount rules.
	This reverts commit 3fd8fe089c5337c76c55c4beb74c53576f51776e.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Implement SO_EXCLUSIVEADDRUSE for setsockopt.

2006-11-30  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/appdefaults.c:
	winecfg: Determine the current Windows version from the standard registry keys.
	Also avoid setting the HKCU\Software\Wine version value when not needed.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h:
	comdlg32: Moved prototypes to the header file and fixed declaration of
	FileOpenDlgInfosStr.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: SO_DONTROUTE is ignored on windows, fix comment and downgrade FIXME
	to TRACE.

2006-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/Makefile.in, dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/image.c, dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Get rid of long int issues on 64bit platforms.

	* tools/winedump/Makefile.in, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added support for dumping types from PDB, CV... files.

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: First shot at dumping PDB files contents.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h:
	mscvpdb.h: Update some definitions (constants, structures) with latest
	information we have.

	* dlls/dbghelp/coff.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  include/wine/mscvpdb.h:
	dbghelp: Moved mscvpdb.h file to include/wine to allow sharing of the definitions
	with winedump.

	* tools/winedump/main.c:
	winedump: Make dump mode the default.

	* tools/winedump/dump.c, tools/winedump/emf.c, tools/winedump/main.c,
	  tools/winedump/winedump.h:
	winedump: Dump the EMF files as any other file types.
	Internally, make use of the PRD function for checking available file ranges.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Use same scheme for dumping lnk files as the executables (through
	the PRD macro and a full mapped image).

	* tools/winedump/dump.c, tools/winedump/lib.c, tools/winedump/minidump.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Use a uniform scheme for dumping file contents.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/pe.c,
	  tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Header file pe.h is useless, get rid of it.

	* tools/winedump/dump.c, tools/winedump/le.c, tools/winedump/ne.c,
	  tools/winedump/pe.c, tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Changed PE, NE, LE dumping so that they are consistent in terms of
	dump function signatures.
	Avoid passing around the base of the module, but use instead the PRD function.

2006-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/crypt.c:
	advapi32: Remove redundant NULL checks before CRYPT_Free.

	* dlls/msi/files.c:
	msi: Use mi->source if the source is not a full path.

2006-11-30  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fix SetWindowPos parameters in the spec file.

2006-11-29  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/system.sfd:
	fonts: Add Ukrainian symbols in System font.

	* fonts/courier.sfd:
	fonts: Add ukrainian symbols in Courier.

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian symbols in MS Sans Serif.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian symbols in Small fonts.

2006-11-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/action.c:
	msi: Add handling for the InstallODBC action.

	* dlls/msi/files.c:
	msi: Don't fail if we can't remove an existing install file.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial tests for AddPort.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial test for DeletePort.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortW.

2006-11-26  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/message.c, dlls/user32/user_private.h,
	  dlls/user32/winpos.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	user32: Factorize driver's SetWindowPos in user32.

2006-11-27  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Added AssertFail stub.

2006-11-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c:
	comdlg32: Make some data const.

	* dlls/advapi32/registry.c:
	advapi32: Make some data const.

	* dlls/dsound/capture.c:
	dsound: Make some data const.

	* dlls/winedos/devices.c:
	winedos: Make some data const.

	* dlls/riched20/writer.c:
	riched20: Make some data const.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/main.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h:
	quartz: Make some data const and static.

	* dlls/mshtml/install.c:
	mshtml: Make some data const.

	* dlls/comctl32/rebar.c:
	comctl32: Make some data const.

	* dlls/winspool.drv/info.c:
	winspool.drv: Make some data const.

	* dlls/urlmon/binding.c:
	urlmon: Make some data const.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/regsvr.c:
	shdocvw: Make some data const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/font.c,
	  dlls/msi/update.c:
	msi: Make some data const and static.

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Make some data const.

	* dlls/ntdll/om.c, dlls/ntdll/path.c:
	ntdll: Make some data const.

2006-11-29  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Improve version detection, move all the version detection to ntlm.c.
	Also, as starting with Samba 3.0.24, ntlm_auth will have all the features
	we need, require that as minimal version and remove odd old-version
	compatibility hacks.

2006-11-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Update the UI in one place only in ACTION_ProcessComponents.

	* dlls/msi/action.c:
	msi: Advertise components of a feature that has the
	msidbFeatureAttributesFavorAdvertise property.

2006-11-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Cast-qual warnings fix.

2006-11-28  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Implement SO_GET_MAX_MSG_SIZE for getsockopt.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Synchronize msi exports with what PSDK has.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl: Add initial tests for AddPortW.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Implement AllocSplStr + DllFreeSplStr.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/lib.c,
	  tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h:
	winedump: Add partial COFF library support.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c:
	mlang: Implement LcidToRfc1766 and GetRfc1766FromLcid.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/reg.c:
	shlwapi: Make some data const.

	* dlls/oleaut32/oaidl_p.c, dlls/oleaut32/typelib.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Make some data const and static.

	* dlls/ole32/compobj.c:
	ole32: Make some data const.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/recyclebin.c,
	  dlls/shell32/shell.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/xdg.c:
	shell32: Make some data static and const.

	* dlls/user32/cursoricon.c, dlls/user32/spy.c, dlls/user32/static.c:
	user32: Make some data const.

	* dlls/kernel32/lzexpand.c:
	kernel32: Make some data const.

	* tools/winedump/debug.c, tools/winedump/pe.c:
	winedump: Make some data const.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add more obscure PE images that XP is able to load.

2006-11-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set the initial FBO depth stencil when creating the device.

	* dlls/wined3d/device.c:
	wined3d: Delete the device's FBO when destroying the device.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (GLSL).

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (ARB
	asm shaders).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix the texm3x3tex instruction to sample properly.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Create a separate function for sampling a texture.

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Select the right shader backend when creating the device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move some code specific to the different shader backends into the
	respective source files.

2006-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_IterateRecords in ACTION_AppSearch.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchIni.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchDr.

2006-11-28  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_SETPARAFORMAT use ME_RewrapRepaint instead of ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make EM_SETCHARFORMAT call ME_RewrapRepaint instead of
	ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make WM_SETFONT call RewrapRepaint instead of UpdateRepaint.

2006-11-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: EM_EXLIMITTEXT: ignore wParam and properly cast lParam.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Make ME_StreamIn create undos properly.

2006-11-27  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/De.rc:
	winecfg: Update German translation.

2006-11-27  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add WS_SIO_ADDRESS_LIST_QUERY stub to make native dplay error output
	more readable.

2006-11-27  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/editor.c:
	mshtml: Add missing '\n' in Wine trace.

2006-11-27  Francois Gouget <fgouget@codeweavers.com>

	* programs/cmdlgtst/Pt.rc:
	cmdlgtst: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/oledlg/oledlg_Pt.rc:
	oledlg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/regedit/Pt.rc:
	regedit: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/wineconsole/wineconsole_Pt.rc:
	wineconsole: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winefile/Pt.rc:
	winefile: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shell32/shell32_Pt.rc:
	shell32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shdocvw/Pt.rc:
	shdocvw: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winecfg/Pt.rc:
	winecfg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/winmm/winmm_Pt.rc:
	winmm: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/wininet/wininet_Pt.rc:
	wininet: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winemine/Pt.rc:
	winemine: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/user32/resources/user32_Pt.rc:
	user32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shlwapi/shlwapi_Pt.rc:
	shlwapi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msrle32/msrle_Pt.rc:
	msrle32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Unset the WINESERVERSOCKET variable after we have retrieved it.

2006-11-27  Pierre d'Herbemont <pdherbemont@free.fr>

	* include/winsock.h:
	winsock: Get rid of already disabled WS prefix, thus fix Wine compilation
	on big-endian.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c, include/mswsock.h, include/winsock2.h:
	winsock: Add WS_ prefix on WSAIoctl constants.

2006-11-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Silence typedefs children in sub program block.

2006-11-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Added basic support for printing 64bit wide entities.

	* programs/winedbg/memory.c, programs/winedbg/types.c:
	winedbg: Host references lookup.
	Since more and more information in now available through the CPU
	registers, those require DLV_HOST access to be a bit better handled
	than it is...

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Various information printing issues.
	- in backtraces, (void) functions should be listed with '()' as arguments
	instead of ''
	- factorized code for diplaying information about a local/parameter
	- fixed a couple of bugs here
	- rewrote format specifiers for print commands (do no waste space for padding
	data)
	- added support for new wine's dbghelp extension for local/parameter
	variables being out of scope

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed the alpha status FIXME for the dwarf code.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Correctly store the addresses of blocks.
	They are stored internally as offsets to the start of the function
	which embeds the block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle the void type in some declarations.

	* dlls/dbghelp/dwarf.c:
	dbghelp: We can now remove the default name prefix as all the non conforming
	cases have been eliminated.
	Got rid of dwarf2_find_name which is now useless.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Extend support for inlined functions and handle them as generic blocks
	inside functions
	(except for parameters which are converted into local variables).
	Rewrote dwarf2_find_attribute so that it takes into account the
	abstract origin information when available.
	A+

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/type.c:
	dbghelp: Be a bit more strict on where we do actually expect default names to
	be generated
	(removed this feature for UDTs, structures' fields, enums, typedefs, compilands)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for a label in a subprogram block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Register numbers in OP_piece don't need to be next to each other.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for deref operation in location computation.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add ability to add a SymTagCustom element to a function.
	Make use of it to store the frame information for a dwarf function
	(either because frame's location is a location list, or because one of
	the function's variables is not properly computed at parse time).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Function points location is now expressed as a struct location.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Added infrastructure to compute variable location at runtime (as
	opposed to debug info parse time).
	Use it to send the variables depending on not known frame register at parse time.
	Made just a stub for the location computation function for dwarf2.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Use the location info structure thoughout the code to handle the
	location of a data variable.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c:
	dbghelp: Added struct location to help computing a location.
	Make use of it in dwarf.c to handle correctly variable location computation.
	Split code to handle both location with parse time computation
	(current code) and yet to come run-time computation

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c:
	dbghelp: Pass .debug_loc section info from the ELF loader to the dwarf parser.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Store compiland's address in internal structures.

	* dlls/dbghelp/symbol.c:
	dbghelp: When looking up for a local variable (or parameter), pass the function
	pointer.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added a process field to the modules pair structure.
	This makes the code simpler to read, a bit more efficient, and
	furthermore it'll be needed in future patches.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Simplify code with function to get section size.

2006-11-26  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/ole32/storage32.c:
	ole32: Fix logic in Storage32Impl_SmallBlocksToBigBlocks function.

2006-11-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/crypt32/tests/main.c:
	crypt32: Add test for I_CryptInstallOssGlobal.

	* dlls/crypt32/main.c:
	crypt32: Better stub for I_CryptInstallOssGlobal.

2006-11-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wineshelllink:
	wineshelllink: Use FreeDesktop standard to create Wine menu structure.

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Downgrade some ERR to WARN.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/dib.c:
	winex11.drv: Don't use the specified DC when mapping RGB colors for a DIB.
	The DC palette only matters for DIB_PAL_COLORS.

2006-11-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/pen.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Cast-qual warnings fix.

2006-11-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11drv: State of side mouse buttons (X-buttons) is not returned from
	XQueryPointer.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --unix so it works whether the Windows path refers to an existing
	file/directory or not.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Don't warn about libjpeg if gphoto support is not enabled.

2006-11-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Unify pixel format code.

2006-11-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchReg.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchComponents.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchGetSignature.

	* dlls/msi/package.c:
	msi: Use MSI_IterateRecords when cloning properties.

2006-11-25  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/paint.c:
	riched20: Only send EN_CHANGE when it is supposed to be sent.

2006-11-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/symbol.c:
	winedump: Constify some data.

	* tools/winedump/lnk.c:
	winedump: Fix a copy/paste typo.

	* tools/winedump/le.c:
	winedump: Remove a not needed include.

	* tools/winedump/dump.c:
	winedump: Make the implementation match the prototype.

	* include/winnt.h:
	include: Add some structures a definitions required for the COFF library dumper.

2006-11-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/oleview/No.rc, programs/oleview/rsrc.rc:
	oleview: Add Norwegian Bokmål translation.

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål translation.

2006-11-26  Kevin Koltzau <kevin@plop.org>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Process browser and multimedia key events.

	* dlls/user32/defwnd.c, dlls/user32/message.c:
	user32: Generate WM_APPCOMMAND messages for browser and multimedia keys.

	* include/winuser.h:
	winuser.h: Add some HSHELL and APPCOMMAND defines.

	* dlls/user32/spy.c, include/winuser.h:
	winuser.h: Define browser and multimedia keys.

2006-11-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Improve the PE loader test.

2006-11-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/baseshader.c:
	wined3d: Cast-qual warnings fix.

2006-11-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/msi/msi_Pt.rc:
	msi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msacm32/msacm_Pt.rc:
	msacm32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/mpr/mpr_Pt.rc:
	mpr: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comctl32/comctl_Pt.rc:
	comctl32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc:
	avifil32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.26.

----------------------------------------------------------------
2006-11-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/device.c:
	d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.

2006-11-24  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Simplify the code that finds the offset of the given linux event.

2006-11-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/oleaut.c:
	oleaut32: Protect against integer overflow in SysAllocStringLen.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/msvcrt/tests/data.c:
	msvcrt/tests: We cannot link with _initterm() with Visual C++, so we have to
	load it dynamically.

2006-11-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/wineoss/dscapture.c:
	winmm/wineoss: Cast-qual warning fix.

	* dlls/ws2_32/socket.c:
	ws2_32: Cast-qual warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warning fix + make function static.

2006-11-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for DeletePort.

	* dlls/localspl/localmon.c:
	localspl: Implement DeletePort.

2006-11-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Remove test that crashes on systems with IE7.

2006-11-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/editor.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added missing break.

2006-11-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/codepage.c:
	kernel32/tests: Test -1 length for NULL ptr too.

2006-11-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Moved a FIXME out of the user-visible string.

	* dlls/serialui/Pt.rc:
	serialui: Update the Portuguese translation (contributed by Americo Jose Melo).

	* programs/notepad/Pt.rc, programs/progman/Pt.rc, programs/start/Pt.rc,
	  programs/view/Pt.rc, programs/winhelp/Pt.rc:
	programs: Update the Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/msacm32/msacm_Pt.rc, dlls/msi/msi_Pt.rc,
	  dlls/msrle32/msrle_Pt.rc, dlls/oleaut32/oleaut32_No.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oledlg/oledlg_Pt.rc,
	  dlls/shdocvw/Pt.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/user32/resources/user32_Pt.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/winmm/winmm_Pt.rc, programs/winecfg/Pt.rc,
	  programs/wineconsole/wineconsole_Pt.rc:
	Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages
	that have multiple sublanguages.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/dce.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/win.c:
	user32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/msvcrt/tests/data.c, dlls/msvcrt/tests/file.c:
	msvcrt/tests: The tests must not include msvcrt.h because it contains
	declarations that may be incompatible with the PSDK headers.

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Fix the CheckDPA() tests.
	There is no guarantee that the compiler will compute the function arguments
	in left-to-right order.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Remove unneeded NONAMELESS* macros.

	* dlls/shell32/tests/string.c:
	shell32/tests: Don't use the NONAMELESS* macros in the tests.

	* dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c:
	mapi32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dinput/tests/joystick.c, dlls/dinput/tests/keyboard.c,
	  dlls/dinput/tests/mouse.c:
	dinput/tests: Remove unneeded NONAMELESS* macros.

	* dlls/comctl32/tests/propsheet.c:
	comctl32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-22  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove unused parameters from SHELL_FindExecutableByOperation().

2006-11-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean resource.

2006-11-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/playsound.c:
	winmm: Cast-qual warnings fix.

	* dlls/winmm/mci.c:
	winmm: Cast-qual warnings fix.

2006-11-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Use 'start.exe' to launch non .exe files.

2006-11-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/internet.c:
	wininet: Cast-qual warnings fix.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Treat the SourceDir folder the same as TargetDir.

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Load all folders in one query, rather one per query.

2006-11-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel32/locale.c:
	kernel32: Restore C locale for LC_NUMERIC.

2006-11-20  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetIndices.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetTexture.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only wait for custom actions that don't have msidbCustomActionTypeContinue
	specified.

	* dlls/msi/custom.c:
	msi: Split process_action_return_value into two different functions.

	* dlls/msi/custom.c:
	msi: Remove an unused parameter.

2006-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c:
	user32: Restore the len == 0 check which got lost in a previous patch.

2006-11-21  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/hglobalstream.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c:
	ole32: Spelling fixes.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: CoGetInterfaceAndReleaseStream shouldn't crash when passed a NULL stream.

2006-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/systray.c:
	shell32: Pass number of wide chars, not bytes as last argument to MBtoWC().

2006-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: RPC_C_AUTHN_LEVEL_NONE and RPC_C_AUTHN_LEVEL_DEFAULT are
	handled at the binding level now instead of the message level, so
	remove this special handling in RPCRT4_Send.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Allow applications to specify authentication levels other than connect
	in RpcBindingSetAuthInfoA/W.
	Map the default authentication level and service to sane values.
	Don't create an RpcAuthInfo object if RPC_C_AUTHN_LEVEL_NONE is specified.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Setting the needs_close flag in server_get_unix_fd got lost in the
	previous change.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c, dlls/user32/tests/msg.c:
	user32: Add a rudimentary WM_SETFONT message test for the static control,
	make it pass under Wine.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tooltips.c:
	comctl32: Remove invalid NULL check.

2006-11-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Use intended variable.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

2006-11-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Cs.rc, programs/winecfg/It.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: Remove some old dead code and associated language resources.

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2006-11-19  Matthew Kehrer <kehrermatt@gmail.com>

	* include/.gitignore, include/Makefile.in, include/ocmm.idl:
	mshtml: Add basic support for ITimer interface.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/dde_private.h, dlls/user32/dde_server.c:
	user32: Add support for DdeEnableCallback(EC_DISABLE) command.

2006-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c:
	riched20: Simplify an array size calculation.

	* dlls/msi/helpers.c, dlls/msi/tests/format.c:
	msi: Fix use of integer fields in MsiFormatRecord.

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Test MsiRecordGetString on an integer record fields with a NULL output
	buffer.

	* dlls/msi/tests/format.c:
	msi: Add a test for formatting records with strings.

	* dlls/msi/dialog.c:
	msi: Don't access the list of controls after the dialog is destroyed.

	* dlls/msi/dialog.c:
	msi: Create a function to free control data.

	* dlls/msi/dialog.c:
	msi: Fix an access after freeing memory.

2006-11-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wineconsole/wineconsole_No.rc:
	wineconsole: Updated Norwegian Bokmål translation.

	* programs/regedit/No.rc:
	regedit: Updated Norwegian Bokmål translation.

2006-11-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add some optional messages to the button message test.

2006-11-20  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Set the result to IDOK on 'Finish'.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/audio.c:
	winecfg: Don't try to load the arts driver, the arts library is too buggy.

2006-11-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/theme.c:
	winecfg: Add ability to change colors and non-client sizes.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: Move controls on "Desktop Integration" tab to make more room for the
	next patch.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Don't bother with async I/O on regular files.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Store the fd type in the cache and return it in server_get_unix_fd.

	* include/wine/server_protocol.h, server/change.c, server/fd.c,
	  server/file.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/protocol.def, server/serial.c, server/sock.c, server/trace.c:
	server: Return an fd type in the get_handle_fd request.

2006-11-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/kernel32/nls/nor.nls, dlls/localspl/localspl.rc,
	  dlls/localspl/spl_No.rc, dlls/oledlg/oledlg_No.rc:
	Updated Norwegian Bokmål translations.

2006-11-17  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Correct the count of characters matching with layout.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Enable code for picking layout-independent vkey as second pass.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Changed indenting of some dead code.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Move some dead code from inside a loop to just after the loop.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Replace no-longer-existent VK_A, VK_Z, VK_0, and VK_9 constants.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Track which vkeys have already been assigned to keycodes.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Reset the keyc2vkey table to empty before rebuilding it.

2006-11-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split msi_set_sourcedir_props into a separate function.

	* dlls/msi/action.c:
	msi: Spelling fixes.

	* dlls/msi/tests/package.c:
	msi: Add another test for the SourceDir property.

	* dlls/msi/files.c:
	msi: Clean up parameters of msi_media_get_disk_info().

	* dlls/msi/files.c:
	msi: Fix some memory leaks.

	* dlls/msi/files.c:
	msi: Don't leak row handles.

2006-11-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Avoid crash on Win95 (GetLongPathNameW).

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Load tests on Win9x again (VirtualAllocEx+VirtualFreeEx).

2006-11-18  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add setupapi to fake dlls.

2006-11-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Only copy the depth buffer if there is one.

	* dlls/wined3d/device.c:
	wined3d: Make sure render target textures aren't bound when we start drawing.

	* dlls/wined3d/device.c:
	wined3d: Support cube map FBO attachments.

	* dlls/wined3d/baseshader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GL_ARB_texture_cube_map extension support.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/message16.c:
	winmm: Avoid using sizeof() in traces.

2006-11-17  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/lzexpand.c:
	kernel32: Replace magic numbers with descriptive defines.

2006-11-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/hook.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/edit.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dialog.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dde_client.c:
	user32: Cast-qual warnings fix.

2006-11-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tape.c:
	ntdll: Converted bitmask into TRUE/FALSE.

	* dlls/kernel32/locale.c:
	kernel32: Added missing shift by 8.

2006-11-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Allow the depth buffer to be shared between onscreen and offscreen
	rendering modes.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add FBO support for offscreen rendering.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the offscreen render mode a registry setting.

	* dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Fix depth buffer formats to use actual depth textures.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rename renderUpsideDown to render_offscreen.

2006-11-17  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Implement createElement.

2006-11-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGet{SourceFileLocation, SourceInfo, TargetPath}.

2006-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Remove nscstring and nscwstring typedefs.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added semi-stub createStyleSheet implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_fontSize implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_backgroundColor implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_fontFamily implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Store nsIDOMCSSStyleDeclaration in HTMLStyle.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlstyle.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_style implementation.

2006-11-17  Alexandre Julliard <julliard@winehq.org>

	* include/Makefile.in:
	include: Install adshlp.h too.

	* dlls/wineps.drv/escape.c, dlls/wineps.drv/init.c,
	  dlls/winspool.drv/info.c, include/heap.h:
	include: Get rid of heap.h.

	* dlls/gdi32/bidi.c, dlls/gdi32/bitblt.c, dlls/gdi32/bitmap.c,
	  dlls/gdi32/brush.c, dlls/gdi32/clipping.c, dlls/gdi32/dc.c,
	  dlls/gdi32/dib.c, dlls/gdi32/driver.c, dlls/gdi32/enhmetafile.c,
	  dlls/gdi32/enhmfdrv/bitblt.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/env.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/gdi16.c, dlls/gdi32/gdi_main.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/mapping.c,
	  dlls/gdi32/metafile.c, dlls/gdi32/metafile16.c,
	  dlls/gdi32/mfdrv/bitblt.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/opengl.c, dlls/gdi32/painting.c, dlls/gdi32/palette.c,
	  dlls/gdi32/path.c, dlls/gdi32/pen.c, dlls/gdi32/printdrv.c,
	  dlls/gdi32/region.c, dlls/gdi32/wing.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xrender.c, include/gdi.h, include/wingdi.h:
	gdi32: Get rid of the gdi.h include.

	* dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h, include/gdi.h:
	gdi32: Stop exporting GDI_GetObjPtr and GDI_ReleaseObj.

	* dlls/winex11.drv/palette.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Store the palette mapping in an X context instead of the GDI object.

	* dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/mfdrv/init.c,
	  dlls/gdi32/palette.c, include/gdi.h:
	gdi32: Get rid of the palette mapping handling and leave it up to the driver.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Abstract accesses to the palette color mapping.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Avoid some direct accesses to the PALETTEOBJ structure.

	* dlls/gdi32/palette.c, dlls/winex11.drv/palette.c, include/gdi.h:
	gdi32: Moved the system palette flags to winex11.drv.

	* dlls/gdi32/dib.c:
	gdi32: Avoid accessing the internal palette object from dib.c.

	* dlls/d3d9/d3d9_private.h:
	d3d9: Include wingdi.h, not gdi.h.

2006-11-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Cast-qual warnings fix.

2006-11-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/drive.c:
	winecfg: Allow editing of broken drive links.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Add _fstat64 and _stat64 to msvcrt.spec.

2006-11-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak in load_folder().

	* dlls/msi/custom.c:
	msi: Remove unnecessary includes.

	* dlls/msi/helpers.c:
	msi: Remove a level of indent in resolve_folder().

	* dlls/msi/tests/package.c:
	msi: Add a test showing the _Properties table is a bit strange.

	* dlls/msi/tests/db.c:
	msi: Add a test showing which tables are special.

	* dlls/msi/helpers.c:
	msi: Remove some redundant else statements.

2006-11-16  Kevin Koltzau <kevin@plop.org>

	* tools/winedump/pe.c:
	winedump: Print new DLL characteristics.

	* include/winnt.h:
	winnt.h: Add AMD64 relocation types.

	* include/winnt.h:
	winnt.h: Add defines for new DLL characteristics.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/pi.c:
	msxml3: Implement createProcessingInstruction with a stub PI object.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/lcformat.c, dlls/kernel32/locale.c, dlls/kernel32/time.c:
	kernel32: Use the appropriate Unix locale for GetLocaleInfo when a default
	LCID is used.
	For instance LOCALE_SDATE is looked up in the lcid corresponding to
	LC_TIME, LOCALE_IDIGITS in the LC_NUMERIC lcid, etc.

	* dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/zhh.nls,
	  dlls/kernel32/nls/zhi.nls, dlls/kernel32/nls/zhm.nls:
	kernel32: Added the locale name entry to all locale definitions.

	* dlls/kernel32/locale.c, include/winnls.h:
	kernel32: Rewrote the locale matching to match more elements and to support
	Windows-format locale names.
	Added implementation for LocaleNameToLCID and LCIDToLocaleName.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: CoRegisterMessageFilter shouldn't crash on an uninitialized apartment.

2006-11-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/xdg.c:
	shell32: Fix a function name in a comment.

2006-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/loader.c:
	kernel32: Add a basic PE loader test.

2006-11-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupGetTargetPath{A,W}.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for ConfigurePortW.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c,
	  dlls/user/ddeml.spec, dlls/user/ddeml16.c, dlls/user/defdlg.c,
	  dlls/user/defwnd.c, dlls/user/desktop.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/display.drv.spec, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/focus.c,
	  dlls/user/hook.c, dlls/user/hook16.c, dlls/user/icontitle.c,
	  dlls/user/input.c, dlls/user/kbd16.c, dlls/user/keyboard.drv.spec,
	  dlls/user/listbox.c, dlls/user/lstr.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/mouse.drv.spec, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/class.c, dlls/user/tests/clipboard.c,
	  dlls/user/tests/cursoricon.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/generated.c,
	  dlls/user/tests/input.c, dlls/user/tests/listbox.c,
	  dlls/user/tests/menu.c, dlls/user/tests/monitor.c,
	  dlls/user/tests/msg.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c,
	  dlls/user/text.c, dlls/user/uitools.c, dlls/user/user.exe.spec,
	  dlls/user/user16.c, dlls/user/user32.spec, dlls/user/user_main.c,
	  dlls/user/user_private.h, dlls/user/win.c, dlls/user/winhelp.c,
	  dlls/user/winpos.c, dlls/user/winproc.c, dlls/user/winproc.h,
	  dlls/user/winstation.c, dlls/user/wnd16.c, dlls/user/wsprintf.c,
	  dlls/user32/Makefile.in, dlls/user32/bidi16.c, dlls/user32/button.c,
	  dlls/user32/caret.c, dlls/user32/class.c, dlls/user32/clipboard.c,
	  dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/controls.h,
	  dlls/user32/cursoricon.c, dlls/user32/dde_client.c,
	  dlls/user32/dde_misc.c, dlls/user32/dde_private.h,
	  dlls/user32/dde_server.c, dlls/user32/ddeml.spec,
	  dlls/user32/ddeml16.c, dlls/user32/defdlg.c, dlls/user32/defwnd.c,
	  dlls/user32/desktop.c, dlls/user32/dialog.c, dlls/user32/dialog16.c,
	  dlls/user32/display.c, dlls/user32/display.drv.spec,
	  dlls/user32/driver.c, dlls/user32/driver16.c, dlls/user32/edit.c,
	  dlls/user32/exticon.c, dlls/user32/focus.c, dlls/user32/hook.c,
	  dlls/user32/hook16.c, dlls/user32/icontitle.c, dlls/user32/input.c,
	  dlls/user32/kbd16.c, dlls/user32/keyboard.drv.spec,
	  dlls/user32/listbox.c, dlls/user32/lstr.c, dlls/user32/mdi.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/misc.c,
	  dlls/user32/mouse.drv.spec, dlls/user32/mouse16.c,
	  dlls/user32/msg16.c, dlls/user32/msgbox.c, dlls/user32/network.c,
	  dlls/user32/nonclient.c, dlls/user32/painting.c,
	  dlls/user32/property.c, dlls/user32/resource.c,
	  dlls/user32/resources/display.rc, dlls/user32/resources/mouse.rc,
	  dlls/user32/resources/user32.rc, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Cs.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Fr.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Ja.rc,
	  dlls/user32/resources/user32_Ko.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Sv.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc,
	  dlls/user32/resources/user32_Wa.rc,
	  dlls/user32/resources/user32_Zh.rc,
	  dlls/user32/resources/user32_bin.rc,
	  dlls/user32/resources/version.rc, dlls/user32/resources/version16.rc,
	  dlls/user32/scroll.c, dlls/user32/spy.c, dlls/user32/static.c,
	  dlls/user32/sysparams.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/cursoricon.c, dlls/user32/tests/dce.c,
	  dlls/user32/tests/dde.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/generated.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/listbox.c,
	  dlls/user32/tests/menu.c, dlls/user32/tests/monitor.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/resource.c,
	  dlls/user32/tests/resource.rc, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/text.c, dlls/user32/tests/win.c,
	  dlls/user32/tests/winstation.c, dlls/user32/tests/wsprintf.c,
	  dlls/user32/text.c, dlls/user32/uitools.c, dlls/user32/user.exe.spec,
	  dlls/user32/user16.c, dlls/user32/user32.spec,
	  dlls/user32/user_main.c, dlls/user32/user_private.h,
	  dlls/user32/win.c, dlls/user32/winhelp.c, dlls/user32/winpos.c,
	  dlls/user32/winproc.c, dlls/user32/winproc.h,
	  dlls/user32/winstation.c, dlls/user32/wnd16.c,
	  dlls/user32/wsprintf.c, programs/winetest/Makefile.in,
	  tools/winapi/tests.dat:
	user32: Renamed the user/ directory to user32.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/tests/device.c:
	d3d9: Forward port d3d8 refcount tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Show that the implicit surfaces are not freed if refcount reaches 0.

2006-11-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Cast-qual warnings fix.

	* dlls/shlwapi/clist.c:
	shlwapi: Cast-qual warnings fix.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define a few more icon resources.

2006-11-16  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/ungif.h:
	oleaut32: Remove incorrect references to malloc.

	* dlls/kernel32/process.c:
	kernel32: Downgrade a FIXME to a WARN.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Replace number with a defined value (static buffer size).

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_De.rc, dlls/localspl/spl_En.rc,
	  dlls/localspl/spl_Ko.rc:
	localspl: Implement ConfigurePort.

2006-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_private.h,
	  dlls/user/dde_server.c:
	user: Use DDE critical section exclusively for instance list protection.

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_server.c:
	user: Set DDE errors in some failing cases.

2006-11-13  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c:
	riched20: Fix key handling in dialogs.

2006-11-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Implement SetupGetSourceInfo{A,W}.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* include/winbase.h:
	include: Add security QOS flags to winbase.h.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/imagelist.c:
	Revert "comctl32: Fix a potential regression in ImageList_ReplaceIcon()."
	This reverts commit 9e772d1369f0292cfb79d8cabc017611fc6d0369.

2006-11-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellpath.c, dlls/shell32/undocshell.h:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shellole.c:
	shell32: Cast-qual warnings fix.

2006-11-15  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/edit.c:
	user32: Update the edit control when the IME composition string is emptied.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Reserve some more memory for the environment.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use SecInvalidateHandle and SecIsValidHandle for handling
	RpcConnection::ctx instead of setting/comparing the field to 0.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add support for signing, verifying, encrypting and decrypting RPC
	packets.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a crash in RPCRT4_OpenBinding that can occur if
	RPCRT4_CreateConnection fails by checking the return value from the
	function and returning in this case.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a FIXME for unsupported client protocol sequences.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Test AddRef with refcount==0.

	* dlls/d3d8/tests/device.c:
	d3d8: Test refcount forwarding.

	* dlls/d3d8/tests/device.c:
	d3d8: Back buffer is identical to the render target, test it only once.

2006-11-14  Sam Dennis <samuel.howard.dennis@gmail.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/wcs.c:
	msvcrt: Use the custom vsnprintf implementation for msvcrt.vsprintf too.

2006-11-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, server/ptrace.c:
	ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
	(spotted by Peter Oberndorfer).

2006-11-06  Kovács András <andras@csevego.net>

	* dlls/mshtml/htmlelem.c:
	mshtml: HTMLElementCollection_item implementation.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Clean up a temp file.

	* dlls/shell32/shlfileop.c:
	shell32: Don't use the short path name to delete files in SHFileOperation.

2006-11-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shdoclc/Ko.rc:
	shdoclc: Updated Korean resource.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Split MSI_CreatePackage into two functions.

	* dlls/msi/package.c:
	msi: Delete the tempfile created by GetTempFileName.

	* dlls/msi/package.c:
	msi: Defer package deletion until after the database is closed.

	* dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h:
	msi: Remove track_tempfile()'s unused 2nd parameter.

	* dlls/msi/dialog.c:
	msi: Always delete temp files after creating them.

	* dlls/msi/helpers.c:
	msi: Print a message if we fail to delete a file.

2006-11-13  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/factory.c, dlls/msxml3/regsvr.c:
	msxml3: Support both v 2.x and 3.0 version independent clsids as well as the
	v 3.0 version dependent clsid.

	* dlls/msxml3/factory.c, dlls/msxml3/tests/domdoc.c, include/msxml2.idl:
	msxml3: Add the CLSID_DOMDocument define in msxml2.idl to match the PSDK.

	* dlls/msxml3/Makefile.in, dlls/msxml3/uuid.c:
	msxml3: Initialize the uuids that aren't in libuuid.

	* include/msxml2.idl:
	msxml3: Add a guard around DOMNodeType just like in the PSDK, so that we can
	include version 2 and version 3 msxml headers simultaneously.

2006-11-13  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: printf buffer overrun tests.

	* dlls/msvcrt/wcs.c:
	msvcrt: Estimate required buffer size better in pf_vsnprintf.

	* dlls/msvcrt/wcs.c:
	msvcrt: Free correct buffer in pf_vsnprintf.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a potential regression in ImageList_ReplaceIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: When removing an image, move the remaining images one forward,
	not one backwards.

	* dlls/user/win.c:
	user32: Print a fixme only once.

	* dlls/kernel32/locale.c:
	kernel32: Print a FIXME only once.

2006-11-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/files.c:
	msi: Notify the external UI handler when changing media.

2006-11-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/virtcopy.c:
	setupapi: Cast-qual warning fix.

	* dlls/secur32/util.c:
	secur32: Cast-qual warning fix.

	* dlls/rsaenh/implglue.c:
	rsaenh: Cast-qual warning fix.

2006-11-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.spec, dlls/setupapi/setupapi_private.h,
	  include/setupapi.h:
	setupapi: Implement SetupGetSourceFileLocation{A,W}.

	* dlls/setupapi/install.c:
	setupapi: The inf section suffix that corresponds to __x86_64 is .ntamd64.

2006-11-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix handling of ISC_REQ* flags in InitializeSecurityContext.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update the X11 window position when the primary monitor origin
	changes.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* include/Makefile.in, include/wincred.h:
	include: Add wincred.h header file.

	* include/sspi.h:
	include: Fix a typo in the SecInvalidateHandle macro in sspi.h.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/ntdll/directory.c, include/config.h.in:
	ntdll: Added support for reading directories using the BSD getdirentries
	function.

2006-11-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove deadcode (Coverity).

2006-11-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleRegisterServer.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlRegisterLoadTypeLib.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleLoadTypeLib.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Fix incorrect prototypes.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: AtlAxGetHost and AtlAxGetControl implementation.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleControlSite.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceFrame.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceSiteWindowless.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleContainer.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: Implement AtlAxAttachControl.

2006-11-10  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_ax.c:
	alt: Host component implementation: IOleClientSite.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Re-enable the code that unregisters interfaces with the RPC runtime.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Implement RpcServerUnregisterIf.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the server interfaces list into a standard Wine list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a comment and move a WARN to where it really indicates a problem,
	rather than falsely triggering on normal conditions.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Use LC_NUMERIC instead of LC_ALL to determine the user locale.
	Passing LC_ALL to setlocale() doesn't do what we want.

2006-11-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only free a string in one place.

	* dlls/msi/custom.c:
	msi: Fix error handling.

	* dlls/msi/custom.c:
	msi: Track temp files as soon as they are created.

	* dlls/msi/custom.c:
	msi: Fail if we can't write out a temporary file.

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable in the test cases.

	* dlls/msi/custom.c:
	msi: Clean upstore_binary_to_temp.

2006-11-12  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/api.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/tests/header.c, dlls/dplayx/dplayx_messages.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/msi/action.c, dlls/msi/custom.c,
	  dlls/msvfw32/msvideo_main.c, dlls/ntdll/handletable.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole2_16.c, dlls/uxtheme/system.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/winex11.drv/dib_convert.c, dlls/winex11.drv/opengl.c,
	  dlls/winmm/wineoss/dscapture.c:
	Assorted spelling fixes.

	* dlls/advapi32/security.c, dlls/crypt32/oid.c, dlls/hlink/hlink_main.c,
	  dlls/infosoft/infosoft_main.c, dlls/inseng/inseng_main.c,
	  dlls/kernel32/heap.c, dlls/ntdsapi/ntdsapi.c, dlls/opengl32/wgl.c,
	  dlls/pstorec/pstorec.c, dlls/quartz/main.c, dlls/query/query_main.c,
	  dlls/rpcrt4/rpc_epmap.c, dlls/secur32/secur32.c:
	Add some documentation headers to make winapi_check happy.

	* dlls/ole32/ole2_16.c, dlls/ole32/storage.c:
	ole32: Standardize some documentation comments.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix some comments so they are properly formatted documentation
	headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add some stub documentation headers to make winapi_check happy.
	Also fix some headers that identified internal APIs as external.

	* dlls/shell32/trash.c, dlls/shell32/xdg.c:
	shell32: Fix inclusion of conditional headers (spotted by winapi_check).

	* dlls/msi/table.c:
	msi: assert.h is not a local header (spotted by winapi_check).

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/Makefile.in:
	ntdll: Alphabetically sort the Makefile entries.

2006-11-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Remove unused variable (Coverity).

	* dlls/rsaenh/rsa.c:
	rsaenh: Move type-check before len-check (Coverity).

	* dlls/msi/action.c:
	msi: Fix typo's (Coverity).

2006-11-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Fix a comment.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Fix list corruption caused by previous change.

2006-11-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c, dlls/mshtml/view.c:
	mshtml: Added border implementation.

2006-11-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_ORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_UNORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_HORIZONTALLINE implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_INDENT and IDM_OUTDENT implementation.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Remove menus that are in shdoclc.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/shdoclc/Bg.rc, dlls/shdoclc/De.rc, dlls/shdoclc/En.rc,
	  dlls/shdoclc/Es.rc, dlls/shdoclc/Fi.rc, dlls/shdoclc/Fr.rc,
	  dlls/shdoclc/Hu.rc, dlls/shdoclc/Ko.rc, dlls/shdoclc/Makefile.in,
	  dlls/shdoclc/Nl.rc, dlls/shdoclc/No.rc, dlls/shdoclc/Sv.rc,
	  dlls/shdoclc/Tr.rc, dlls/shdoclc/rsrc.rc, dlls/shdoclc/shdoclc.h,
	  dlls/shdoclc/shdoclc.spec:
	shdoclc: Added shdoclc.dll.

2006-11-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/capture.c,
	  dlls/winmm/tests/mixer.c, dlls/winmm/tests/mmio.c,
	  dlls/winmm/tests/timer.c, dlls/winmm/tests/wave.c:
	winmm/tests: Win64 printf format warning fixes.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Fix the parameters of LPTIMECALLBACK functions.

	* dlls/dsound/Makefile.in, dlls/dsound/buffer.c, dlls/dsound/capture.c,
	  dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Win64 printf format warning fixes.

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Fix the declaration/definition of DSOUND_timer().

2006-11-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlEscapeA should fail with E_POINTER when querying the buffer size.

2006-11-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the pbuffer pixelformat enumeration code.

2006-11-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: The y coordinate should be offset agaist the height, not the width.

2006-11-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_sha.c:
	advapi32: Constify a parameter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Cast-qual warnings fix.

	* dlls/qcap/pin.c, dlls/qcap/pin.h:
	qcap: Cast-qual warnings fix.

2006-11-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Fix a heap corruption bug by resizing the src string before adding to it.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  include/tapi.h:
	include/tapi.h: Add missing include directives.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/monitor.c:
	user: Only perform the screen resolution changing tests in interactive mode.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/locale.c:
	kernel32: Fix the 'MAP_FOLDCZONE' ok() test.

2006-11-10  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Use path of parent helpfile while looking for popup window.

	* programs/winhelp/winhelp.c:
	winhelp: Fix WINHELP_DeleteWindow.

	* programs/winhelp/winhelp.c:
	winhelp: Do not create popup window if file not found.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.25.

----------------------------------------------------------------
2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Avoid a sizeof in a trace.

2006-11-10  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Create one protseq object per used protocol sequence, not per
	RpcServerUseProtseq* function call.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Don't store the endpoint in the protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix a crash in RpcServerUseProtseqEpExA/W when using an unsupported
	protseq.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Correctly align the results in the RPC Bind Ack packet.

2006-11-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/shlwapi/reg.c:
	shlwapi: Unify SHDeleteKeyW implementation with SHDeleteKeyA.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32: Constify some data.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c:
	opengl32: Hack to make sure winex11 is loaded before getting function pointers.

	* dlls/advapi32/registry.c:
	advapi32: Fixed last error check in RegSaveKey.

	* server/process.c:
	server: Properly handle kill_thread recursion when killing a process.
	Spotted by Mike McCormack.

2006-11-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/filtergraph.c:
	quartz: Cast-qual warning fix.

2006-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add GetContainer tests for implicit surfaces.

	* dlls/d3d9/tests/device.c:
	d3d9: Forwardport implicit surface tests.

2006-11-10  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20: Flush the clipboard before exiting the test.

	* dlls/riched20/tests/editor.c:
	riched20: Add missing void to parameter list.

	* dlls/riched20/tests/editor.c:
	riched20: Remember to close windows after tests.

	* dlls/riched20/editor.c:
	riched20: Fix a memory leak.

	* dlls/riched20/editor.c:
	riched20: Set the correct number of initialized cursors.

	* dlls/riched20/editor.c:
	riched20: Fix an uninitialized variable.

	* dlls/msi/action.c:
	msi: Only log the Action, as it's the same as ActionRequest.

	* dlls/msi/action.c:
	msi: Check whether the component is enabled first.

	* dlls/msi/action.c:
	msi: Component attributes are bitmasks.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use HeapAlloc/Free instead of alloc/free.

	* dlls/setupapi/setupcab.c:
	setupapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/shlwapi/path.c:
	shlwapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/oleaut32/ungif.c:
	oleaut32: Use HeapAlloc/Free instead of malloc/free.

2006-11-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Check for incompatible bpps and negative widths.

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Fix copying top-down/bottom-up DIBs.

2006-11-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: work around a bug in ntlm_auth that breaks RPC.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/olewnd.c:
	mshtml: Use popup menu from shdoclc.dll.

2006-11-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Win64 printf format warning fixes.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_misc.h:
	rpcrt4: More "unsigned long" to "ULONG" changes in preparation of the removal
	of WINE_NO_LONG_AS_INT.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Bring the function definitions in sync with their declaration.
	They got out of sync due to the unsigned long to ULONG changes in the headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4/ndr_marshall.c: Bring the function definitions in sync with their
	declaration.
	Those got out of sync due to the unsigned long to ULONG migration in the headers.

2006-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* loader/Makefile.in:
	loader: Use plain binary name of git-describe to avoid junk in version output.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace || by |.

	* dlls/dmsynth/dmsynth_main.c:
	dmsynth: Fix one more instance of && instead of &.

2006-11-09  Marcus Meissner <meissner@suse.de>

	* dlls/user/text.c:
	user32: Replaced && 0xff by & 0xff.

	* dlls/dmscript/dmscript_main.c:
	dmscript: Replaced && 0xff by & 0xff.

	* dlls/dmusic/collection.c, dlls/dmusic/dmusic_main.c:
	dmusic: Replaced && 0xfff... by & 0xff.

	* dlls/dswave/dswave_main.c:
	dswave: Replaced && 0xff by & 0xff.

	* dlls/dmcompos/dmcompos_main.c:
	dmcompos: Replaced && 0xff by & 0xff.

2006-11-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winsock.h:
	include: Remove duplicate definition.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add refcount tests for implicit surfaces.

2006-11-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --long option.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: GetColorDirectory: fixed incorrect A -> W conversions.

	* dlls/msi/registry.c:
	msi: Fixed bogus A -> W conversion.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c:
	kernel32/tests: Fixed the pipe test for MacOS.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_JUSTIFY*) implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Code clean up.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYLEFT) and Exec(IDM_JUSTIFYRIGHT) implementataion.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYCENTER) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_FORECOLOR implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) stub.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTSIZE) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTNAME) implementation.

2006-11-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement NTLM2 encryption.

2006-11-09  Francois Gouget <fgouget@free.fr>

	* include/shlwapi.h:
	shlwapi: Add a fixme for a missing include.

	* include/usp10.h:
	include/usp10.h: Add missing include directives.

	* include/oledlg.h:
	include/oledlg.h: Add missing include directives.

	* include/dshow.h:
	include/dshow.h: Add missing include directives.

	* include/d3d8.h, include/d3d9.h:
	include: Add missing include directives to d3d8.h and d3d9.h.

	* dlls/user/tests/msg.c, dlls/user/user_private.h, include/winuser.h:
	include: The PSDK headers don't define WM_SYSTIMER so we shouldn't either.

2006-11-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Ko.rc:
	localspl: Added Korean resource.

2006-11-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for ConfigurePort.

2006-11-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortW.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/volume.c:
	d3d8: Backport volume tests.

	* dlls/d3d8/volume.c:
	d3d8: Backport IDirect3DVolume9Impl_GetContainer.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/texture.c:
	d3d8: Backport texture tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Backport missing device tests.

	* dlls/d3d8/device.c:
	d3d8: Backport null pointer check in SetCursorProperties.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/lolvldrv.c:
	winmm: Plug a memory leak.

	* dlls/ole32/tests/stg_prop.c:
	ole32: Don't use PropVariantClear to setup an unitialized variant.

	* dlls/msi/tests/suminfo.c:
	msi: Don't call PropVariantClear on uninitialized variants.

	* dlls/kernel32/nls/div.nls:
	kernel32: Changed encoding for Divehi (which has a 639-1 enconding).

	* dlls/comctl32/header.c:
	comctl32: header: fix bug found out by running valgrind on the regression tests.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Fixed buffer overrun in get_registry_locale_info.

2006-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/win.c:
	user32: Downgrade a FIXME to a WARN.

	* dlls/comctl32/toolbar.c:
	comctl32: Downgrade an ERR to a WARN.

	* dlls/gdi32/freetype.c:
	gdi32: Downgrade a FIXME to a WARN.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/Makefile.in, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/time.c, dlls/winmm/winemm.h, dlls/winmm/winmm.c:
	winmm: Remove WINE_NO_LONG_AS_INT.

2006-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: typelib - fix regression in MSFT typelib parsing.

2006-11-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/ole32/tests/marshal.c, dlls/ole32/usrmarshal.c:
	ole32: Fix the warnings introduced by the "unsigned long" to "ULONG" header
	changes.

	* include/rpcndr.h:
	rpcndr.h: Use ULONG/LONG/DWORD for Win64 compatibility instead of unsigned
	long/long.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserFree() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserUnMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserSize() functions. This is needed for Win64 compatibility.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Implement ntlmv2 signing.

	* dlls/secur32/hmac_md5.h:
	secur32: MD5 functions are WINAPI.

2006-11-08  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: For TCP endpoints, bind to all the address and ports that getaddrinfo
	for the machine.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use MaxCalls from the protseq when determining the backlog length to
	pass in to listen.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: The error code RPC_S_SERVER_UNAVAILABLE doesn't make much sense on
	the server side
	so replace it with some more appropriate endpoint error codes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Open the endpoint from the caller of RpcServerUseProtseq* instead of
	the protseq server thread.
	This allows errors to be returned to the caller and to create more than
	one connection for an endpoint.

	* include/rpcdce.h:
	include: Add RPC/DCE defines and structures related to RPC_SECURITY_QOS_V2.

2006-11-08  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Do not write to array element -1.

2006-11-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Add support for continuous cabinets.

	* dlls/msi/files.c:
	msi: Extract cabinets in ACTION_InstallFiles. ready_media is for finding and
	loading medi.

	* dlls/msi/files.c:
	msi: Move the file sequence check out of ready_media_info to avoid an unnecessary
	function call.

	* dlls/msi/files.c:
	msi: Factor out load_media_info from ready_media_for_file.

	* dlls/msi/files.c:
	msi: Use disk_prompt from the media_info structure instead of passing an extra
	parameter to msi_change_media.

	* dlls/msi/dialog.c:
	msi: Only add text to the scroll control if text is provided.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Re-add sys/ioctl.h that got lost in the PeekNamedPipe move.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Add basic OpenProcess test.

	* include/winnt.h:
	include: Add the PROCESS_SUSPEND_RESUME definition.

2006-11-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/subclass.c:
	comctl32: Load function pointers by ordinal.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h:
	secur32: Use a helper function for creating the signature as this simplifies
	implementing NTLM2 signing a lot.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Delete session key and arc4 context when the session based security
	context is deleted.

2006-11-08  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Fix off-by-one in map of non-char keysyms to vkeys.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map XK_KP_Equal to VK_OEM_NEC_EQUAL.

2006-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/x11drv.h:
	winex11.drv: Get rid of the DIB color table now that it's stored in gdi32.

	* dlls/gdi32/bitmap.c, dlls/gdi32/dib.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/tests/bitmap.c:
	gdi32: Remove call to CreateCompatibleDC() from GetDIBits() implementation.
	Based on a patch by Alex Villacís Lasso.

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: varformat - Force LCID_US for conversion in VarFormatNumber.

2006-11-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Added stub for MsiGetFeatureValidStatesA/W.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression in ImageList_AddMasked().

2006-11-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Cast-qual warnings fix.

2006-11-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/cstub.c, include/rpcproxy.h:
	rpcproxy.h: Use LONG/ULONG for Win64 compatibility instead of long and
	unsigned long.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: For Win64 compatibility use a temp variable of the right type in
	ComputeVariance().

2006-11-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: variant - allow conversion of VT_DISPATCH into VT_BSTR in VarCat.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: olepicture - Support multiple redundant headers before picture data.

2006-11-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/module.c:
	dbghelp: Initialize BOOL elements with FALSE instead of 0.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser only report file numbers when at least one
	compilation unit really has numbers.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c:
	dbghelp: Make dwarf2_parse_line_numbers handle missing line number section.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec,
	  dlls/shlwapi/tests/ordinal.c:
	shlwapi: Implement GetShellSecurityDescriptor and test for it.

2006-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: ScissorRect correction.

2006-11-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix failure of X11DRV_ChoosePixelFormat.

2006-11-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Factor out download_remote_cabinet and reuse extract_cabinet_file to
	extract a remote cabinet.

	* dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/preview.c:
	msi: Store the base URL of the MSI package if it is downloaded.

	* dlls/msi/files.c:
	msi: Factor copy_install_file out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Factor schedule_install_files out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Model the media_info structure members after the columns in the media table.

	* dlls/msi/files.c:
	msi: Use msi_alloc_zero instead of a helper function that sets everything
	to zero.

	* dlls/msi/files.c:
	msi: Use the file's component instead of passing an extra parameter to
	set_file_source.

	* dlls/msi/files.c:
	msi: Use the media_info structure instead of passing in individual values
	to extract_cabinet_file.

	* dlls/msi/tests/install.c:
	msi: Add more tests for installing from cabinets.

2006-11-08  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c,
	  dlls/netapi32/access.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/wksta.c,
	  include/ntsecapi.h, include/sspi.h, include/winternl.h:
	Fix ntsecapi.h so it does not depend on winternl.h.

	* dlls/rpcrt4/rpc_epmap.c, dlls/secur32/tests/ntlm.c,
	  dlls/secur32/tests/secur32.c, include/sspi.h:
	secur32: sspi.h must not include wtypes.h.

	* dlls/setupapi/stringtable.c, dlls/setupapi/tests/stringtable.c,
	  include/setupapi.h:
	setupapi: setupapi.h must not define HSTRING_TABLE and the StringTable*
	prototypes.

	* dlls/uxtheme/draw.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/property.c, dlls/uxtheme/system.c,
	  dlls/uxtheme/tests/system.c, include/winerror.h:
	uxtheme: winerror.h must not define the E_PROP_*_UNSUPPORTED macros.

	* dlls/shell32/shlexec.c:
	shell32: Add missing '\n' to Wine trace.

	* include/objbase.h:
	include/objbase.h: Add missing include directives.

	* dlls/comctl32/theming.c, dlls/user/class.c, dlls/user/controls.h,
	  dlls/user/desktop.c, dlls/user/dialog.c, dlls/user/dialog16.c,
	  dlls/user/icontitle.c, dlls/user/menu.c, dlls/user/spy.c,
	  dlls/user/tests/win.c, dlls/uxtheme/draw.c, dlls/uxtheme/system.c,
	  include/winbase.h, include/winuser.h, programs/explorer/desktop.c:
	include: The PSDK does not have the A/W variants of MAKEINTATOM() so we should
	not either.

	* include/winuser.h:
	user32/include: Don't define the window and control styles if NOWINSTYLES is set.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Call SetWindowPos with SWP_FRAMECHANGED set when switching from
	minimized state in X11DRV_MapNotify.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map VK codes for arrow keys to an X11 keycode manually as we do
	for other keypad keys.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Read.

2006-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Fix regression in surface conversion.

2006-11-07  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Associate a printer driver with each printer, rather than share
	a common one between all printers.

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix AddPrinterDriverA so that the strings actually get written.
	Include the size of the terminating zero in set_reg_szW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Implement DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriverExA -> DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriver -> DeletePrinterDriverEx.

2006-11-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/string.c:
	comctl32: Beginning of some string related tests.

	* dlls/comctl32/string.c:
	comctl32: Fix return values of string functions.

2006-11-07  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11: Fix regression caused by client-side DIB copy patch.

2006-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c, dlls/kernel32/process.c:
	kernel32: Better workaround for the lack of locale environment variables
	on MacOS.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Detect an XLookupString that returns Latin-1 and avoid codepage
	mapping in that case.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Added mapping for Unicode keysyms in ToUnicodeEx.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Only load the keycode->keysym mapping once in DetectLayout,
	instead of once per supported layout.

2006-11-07  Francois Gouget <fgouget@free.fr>

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/resources/user32.rc,
	  dlls/user/tests/menu.c, dlls/user/user16.c, include/winuser.h,
	  programs/explorer/desktop.c, programs/progman/main.c:
	user32/include: Don't define the OBM_*, OCR_* and OIC_* macros unless OEMRESOURCE
	is defined.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Fix compilation with the PSDK headers.

	* dlls/advapi32/registry.c, dlls/comctl32/pager.c, dlls/ddraw/device.c,
	  dlls/ddraw/viewport.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dmstyle/commandtrack.c,
	  dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/kernel32/tests/thread.c,
	  dlls/localspl/tests/localmon.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/mapi32/prop.c, dlls/mciseq/mcimidi.c, dlls/msi/tests/db.c,
	  dlls/ntdll/virtual.c, dlls/ole32/hglobalstream.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/opengl32/wgl.c, dlls/quartz/videorenderer.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shell32/cpanelfolder.c,
	  dlls/user/exticon.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/winex11.drv/xfont.c,
	  dlls/winmm/winealsa/audio.c, dlls/ws2_32/socket.c, include/cvconst.h,
	  include/winternl.h, programs/winecfg/En.rc,
	  programs/wineconsole/wineconsole.c, tools/wrc/CHANGES:
	Assorted spelling fixes.

	* include/d3d.h, include/d3d8.h, include/d3d9.h, include/ddraw.h,
	  include/dinput.h, include/dmplugin.h, include/dmusicc.h,
	  include/dmusicf.h, include/dmusici.h:
	include: Some DirectX headers are supposed to define COM_NO_WINDOWS_H.

	* dlls/oleaut32/tests/typelib.c:
	oleau32: The PSDK's ELEMDESC's union is nameless, always. So use the U(x) macro.

	* dlls/comctl32/tests/toolbar.c:
	comctl32: Add missing '\n' to ok() call.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix spelling of the DPLAYX_AcquireSemaphore() macro.

	* dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/style.c:
	dmstyle: Fix spelling of the DMUS_PRIVATE_STYLE_MOTIF.dwRhythm field.

	* programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h:
	taskmgr: Fix spelling of the SYSTEM_PERFORMANCE_INFORMATION.MmTotalCommittedPages
	field.

2006-11-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: By default, install components locally.

	* dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix WHERE IS (NOT) NULL queries.

	* dlls/msi/tests/db.c:
	msi: Fix regression tests failing on Windows.

	* dlls/msi/action.c:
	msi: Split ACTION_CostFinalize into two functions.

2006-11-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/ntdll/server.c:
	ntdll: Cast-qual warning fix.

2006-11-06  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Use width while converting surfaces.
	This fixes also a heap corruption with 1x1 and 2x2 surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Use SURFACE_ALIGNMENT.

2006-11-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/atl_ax.c:
	atl: Move the storage specifier to the beginning of the declaration.

2006-11-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/handletable.c:
	ntdll: Clarify the documentation for HandleTable.

2006-11-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* 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/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.rc, programs/winhelp/Wa.rc,
	  programs/winhelp/Zh.rc, programs/winhelp/macro.c,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Rewrite LookupHelpFile function.
	Add ability for user to find file himself if winhelp cannot find it.
	Update resources.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed build without OpenGL headers.

2006-11-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c:
	msvcrt: Cast-qual warnings fix.

2006-11-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/driver.c:
	msacm32: Cast-qual warnings fix.

2006-11-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Have SHELL_ArgifyW respect the length of the buffer passed in and
	report a needed buffer size.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Create dynamic buffers for expanded enviroment strings to allow for
	parameters and such longer than MAX_PATH.
	With help from Michael Moss.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/advapi32/tests/security.c:
	advapi32: Test for OpenProcessToken with MAXIMUM_ALLOWED access.

2006-11-06  Paul Chitescu <paulc@voip.null.ro>

	* dlls/mscoree/mscoree_main.c:
	mscoree: String returned by GetCORVersion starts with letter 'v'.

2006-11-06  Mike McCormack <mike@codeweavers.com>

	* dlls/user/user32.spec:
	user32: The string passed to ToUnicode(Ex) is for output.

	* dlls/winex11.drv/keyboard.c:
	user32: ToUnicodeEx should return 0 for an unknown key.

2006-11-05  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser handle file paths relative to working dir better.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Test and fix DecryptMessage for multiple data buffers.

2006-11-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for EnumPorts.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsA.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsW.

	* dlls/winspool.drv/info.c:
	winspool: EnumPorts: Read driver from registry.

2006-11-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Added a basic client-side DIB copy optimization.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Added missing DiskArbitration/DiskArbitration.h check.

	* loader/.gitignore, loader/Makefile.in, loader/main.c:
	loader: Update the reported version from the current git HEAD if available.

	* dlls/ntdll/loader.c, loader/main.c:
	ntdll: Moved command-line help to the loader binary.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Fixed definition of the MSIITERHANDLE type.

2006-11-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/icmp/icmp_main.c:
	icmp: Changed select to poll.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Changed select to poll.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Convert WS_select to use poll() instead of select(). Also fixes an
	fd leak.

2006-11-05  Phil Krylov <phil.krylov@gmail.com>

	* configure, configure.ac, programs/explorer/diskarb.c:
	explorer: Build on Darwin versions prior to 8.0.

2006-11-06  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/ntdll/tape.c:
	ntdll: Fix building on Darwin versions prior to 8.0.

2006-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Remove unnecessary quotes in traces, as debugstr_a and debugstr_w add
	them instead.

	* tools/winedump/output.c:
	winedump: Fix printf warning in the generated code.

2006-11-05  Gerald Pfeifer <gerald@pfeifer.com>

	* server/fd.c:
	server: Compilation fix.

2006-11-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/source.c:
	dbghelp: Fixed memory leak in source string handling.

2006-11-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added more tests.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Cal on_offlineconnected_change and on_silent_change in SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_OFFLINECONNECTED)
	implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Offline implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_SILENT) implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Ignore hwndParent in DoVerb.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Set parent window in activate_inplace.

	* dlls/mshtml/olecmd.c:
	mshtml: Fixed query_edit_status when Gecko is not available.

2006-11-05  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/list.c:
	riched20: Fix a leak in the undo stack.

	* dlls/riched20/string.c:
	riched20: Fix one more memory leak.

	* dlls/riched20/editor.c:
	riched20: Don't access memory after freeing it.

	* dlls/riched20/editor.c:
	riched20: Fixed memory leaks.

	* dlls/comctl32/imagelist.c:
	comctl32: Switch to a Nx4 tiling.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a Nx1 assuption in ImageList_AddMasked().

	* dlls/comctl32/imagelist.c:
	comctl32: Check if GetObject fails on bitmaps passed to us.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix Nx1 assumptions when adding multiple bitmaps with ImageList_Add.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix an Nx1 in ImageList_DrawIndirect().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove another Nx1 assumption from ImageList_Remove().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Merge.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_GetIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: Use imagelist_copy_images() in ImageList_SetImageCount().

	* dlls/comctl32/imagelist.c:
	comctl32: Create a helper function to copy a block of images.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression.

2006-11-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Use HKCU instead of HKLM.

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	wgl: Fix WoW screen flickering.

2006-11-04  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Clear %gs again before calling the interpreter entry point.

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Don't wait for overlapped result if the previous test failed.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix handling of buffers that don't have the SECBUFFER_TOKEN as the
	first buffer.
	Thanks to Robert Shearman for catching this one and providing some of the
	test code.

	* dlls/secur32/tests/ntlm.c:
	secur32: Get rid of some HeapAlloc() calls to make code more readable.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Avoid double HeapFree() of password and session key.

2006-11-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Remove glx context.

2006-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Add refcount test for binding objects.

	* dlls/wined3d/device.c:
	wined3d: glReadPixels corrections.

2006-11-03  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: If the app asks for a single buffered pixel format, then it should
	be happy with a double buffered one.
	Likewise for mono vs stereo.
	Add some TRACEs so that we know what condition is failing.

2006-10-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	wgl: Add extension checking code / glxGetProcAddress protection.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/mailslot.c,
	  server/protocol.def, server/trace.c:
	ntdll: Retrieve mailslot message info from the client side.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	ntdll: FILE_GetDeviceInfo no longer needs to be public.

	* libs/wine/ldt.c, loader/preloader.c:
	preloader: Setup a fake thread-local storage block pointed to by %gs.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Added implementation of RtlDllShutdownInProgress.

2006-11-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Opengl init fix.

2006-11-01  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a few more stubs.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't store the socket file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/file.c:
	ntdll: Don't store the unix file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Added a server_get_unix_fd function that avoids doing a dup() of the
	fd when not required.

2006-11-02  Francois Gouget <fgouget@free.fr>

	* include/winbase.h:
	include: Fix the HeapQueryInformation() prototype.

	* programs/winhelp/macro.c:
	winhelp: Add missing '\n' in Wine trace.

2006-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Make the path to ntlm_auth easier to change by moving the executable
	name to the top of ntlm.c.

	* dlls/wininet/internet.c:
	wininet: Don't return an error for INTERNET_OPTION_SEND/RECEIVE_TIMEOUT not
	being implemented
	on protocols other than HTTP, just print a FIXME. Reported by Michael Moss.

2006-10-30  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateDialogA and AtlAxCreateDialogW.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_ax.c,
	  dlls/atl/atl_main.c, dlls/atl/atlbase.h, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateControl and AtlAxCreateControlEx.

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlModuleAddCreateWndData and AtlModuleExtractCreateWndData.

	* dlls/atl/Makefile.in, dlls/atl/atl_ax.c, dlls/atl/atl_main.c:
	atl: Implement AtlAxWinInit and AtlAxWin window procedure.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlPixelToHiMetric and AtlHiMetricToPixel.

2006-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_UNDERLINE).

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_ITALIC).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more QueryStatus tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Added implementation of QueryStatus(IDM_BOLD).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more edit mode tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Load about:blank in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Added beginning of set_progress task implementation.

	* dlls/mshtml/task.c:
	mshtml: Call SetStatusText in set_parsecomplete.

	* dlls/mshtml/persist.c:
	mshtml: Get DISPID_AMBIENT_SILENT and DISPID_AMBIENT_OFFLINECONNECTED property
	in IPersistMoniker::Load.

	* dlls/mshtml/persist.c:
	mshtml: Fix no longer valid ERR.

	* dlls/mshtml/nsio.c:
	mshtml: Added heuristic hack that decides if run the page from moniker or
	gecko channel.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Revert commit 760043c2455a90cd74178d98b7c81bfbfc81793f.
	After more testing I've checked that current code is bad, but my patch
	was also wrong and causes regression in WoW.

2006-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Implement PSM_GETRESULT.

	* dlls/comctl32/propsheet.c:
	comctl32: Fix return value of PropertySheet() for modal propsheets.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Move the system menu test into its own test.

	* dlls/user/menu.c:
	user32: Check only for -1 and -2 as special values returned by
	MENU_ExecFocusedItem.

2006-11-02  Paul Chitescu <paulc@voip.null.ro>

	* dlls/msxml3/node.c:
	msxml3: Check parameters of IXMLDOMNode::insertBefore().

2006-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/serial.c, server/sock.c:
	server: Refuse to close handles in other processes if they have an associated fd.

	* include/wine/server_protocol.h, server/console.c, server/debugger.c,
	  server/fd.c, server/handle.c, server/handle.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c,
	  server/winstation.c:
	server: Get rid of the server-side file descriptor cache management.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/handle.c, server/protocol.def, server/trace.c:
	ntdll: Maintain a file descriptor cache on the client side.

2006-11-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add buttons size tests.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use the width of the current button instead of nButtonWidth
	to position the icon.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The SetButtonSize should not allow too small buttons.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The top margin should be computed and saved in CalcToolbar.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add a LayoutToolbar that works like CalcToolbar but doesn't
	overwrite the button sizes.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix buttons heights.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The string should be included in the height of a button-less
	toolbar only if there is a string in the pool.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add support for WM_SETFONT.

2006-11-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/comctl32undoc.c, dlls/comctl32/string.c:
	comctl32: Move documented functions to string.c.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user32/tests: Mask a not documented extended style 0x800 in WINDOWINFO before
	the comparison.

2006-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Avoid a memory leak by freeing actions scripts in one place only.

	* dlls/msi/source.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Fix a handle leak in the tests.

	* dlls/riched20/editor.c, dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Initialize and free the RTF lookup table in DllMain to avoid memory
	leaks.

	* dlls/riched20/reader.c:
	riched20: Use WARN() not ERR() on unknown tokens.

	* dlls/kernel32/heap.c, dlls/kernel32/kernel32.spec:
	kernel32: Add a stub for HeapSetInformation.

	* include/winbase.h, include/winnt.h:
	kernel32: Declare HeapQueryInformation and HeapSetInformation.

	* dlls/comctl32/imagelist.c:
	comctl32: imagelist: Remove more 1xN assumptions.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

2006-11-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Use the full path of the INF file as the source directory if the CAB
	file is invalid.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/sync.c, dlls/ntdll/file.c, include/winioctl.h:
	kernel32: Moved PeekNamedPipe implementation to ntdll.

	* dlls/kernel32/file.c:
	kernel32: Reimplemented SetFilePointerEx on top of ntdll functions.

2006-11-01  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	imagelist: Move Nx1 assumptions about bitmaps dimensions into a single function.

	* dlls/msi/table.c:
	msi: Fix a typo.

	* dlls/msi/handle.c:
	msi: Don't print traces for addref and release.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Search the patch package for source cabinet files.

2006-10-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/profile.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_segment.c:
	kernel32: Cast-qual warnings fix.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/protocol.def, server/trace.c:
	server: Compute the removable device flag on the server side.

	* dlls/ntdll/server.c:
	ntdll: Simplify wine_server_handle_to_fd.
	Now that we have a critical section, races are no longer possible.

	* dlls/ntdll/file.c:
	ntdll: Added NetBSD fstatvfs support.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/install.c:
	advpack: Add another test.

	* dlls/advpack/tests/install.c:
	advpack: Fix typos.

2006-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Don't fail if ole is already initialised.

2006-10-31  Markus Amsler <markus.amsler@oribi.org>

	* programs/cmd/builtins.c:
	cmd: Check for argument in copy, mkdir, delete, goto, move, rmdir, rename, type.

2006-10-31  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the AI_PASSIVE flag to getaddrinfo in rpcrt4_ip_tcp_open so that
	the bound-to port is connectable from other machines.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Improve the debug messages for failures in rpcrt4_ip_tcp_open.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the socket back to blocking in rpcrt4_conn_tcp_handoff as
	the read and write function for the protseq assume that syscalls will block.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_ip_tcp_open that would cause the function
	to go into an infinite loop if getaddrinfo returned more than one entry.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Convert the named pipe server code to look directly into the
	connection to get at the wait handles, instead of using
	get_connect_wait_handle which isn't generic enough to be used for
	other protocols.
	Remove the unneeded get_connect_wait_handle function from the connection
	operations function list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Eliminate the extra thread used for RPC over TCP/IP servers by adding
	socket-specific server protseq functions.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fixed the prototype of many OpenGL functions.

2006-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Route wglMakeContextCurrentARB through gdi32.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/int21.c:
	winedos: Use NT instead of Unix calls to identify DOS device pseudo-files.

	* dlls/kernel32/vxd.c:
	kernel32: Use NT instead of Unix calls to identify VxD pseudo-files.

2006-10-31  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DLINEPATTERN to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DPATCHEDGESTYLE to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c:
	wined3d: Use D3DCUBEMAP_FACES consistently in the WINED3D namespace.

	* dlls/wined3d/device.c:
	wined3d: Use D3DDEGREE consistently in the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTREAMSOURCE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Add D3DCOLORWRITEENABLE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCLEAR codes to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTSS_TCI codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFVF codes to the WINED3D namespace.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32: Make sure crashing tests are not run.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Fixed behavior of FindFirstFile for DOS devices.

2006-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test showing a join doesn't need a WHERE clause.

	* dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c:
	msi: Use a simpler algorithm for joins.

	* dlls/msi/tests/db.c:
	msi: Test the data returned by join queries in one ok().

	* dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Remove tokens that aren't valid for MSI SQL.

	* dlls/msi/alter.c:
	msi: Fix a trace.

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the ALTER and FREE keywords in the tokenizer.

	* dlls/msi/action.c:
	msi: Mark components with missing or outdated files as incomplete.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove some more Nx1 assumptions.

2006-10-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Inherit INET_CALLBACKW from parent handler.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use handle stored in WININETHANDLEHEADER instead of WININET_FindHandle.

2006-10-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Remove duplicate HeapFree().

	* dlls/gdi32/metafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/freetype.c:
	gdi32: Cast-qual warnings fix.

2006-10-30  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/file.c:
	msvcrt: Add stub for _setmaxstdio + tiny test.

2006-10-30  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix introduced regression in shader_glsl_mnxn and vshader_hw_mnxn.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for EnumPorts.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_De.rc:
	localspl: Add German resources.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl.rc, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_En.rc:
	localspl: Implement EnumPortsW.

2006-10-27  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shell32_main.c:
	shell32: ABM_NEW was using parameters that are not set.

2006-10-30  Kirill K. Smirnov <lich@math.spbu.ru>

	* tools/wine.inf:
	wine.inf: Associate .hlp files with winhelp.

2006-10-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user32: Add a test for CreateWindow/DestroyWindow behaviour with WS_CHILD |
	WS_POPUP style, make it pass under Wine.

2006-10-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Input parameter checking.

2006-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/user/winpos.c:
	user32: SetWindowRgn should call SetWindowPos, not RedrawWindow.

	* dlls/winecrt0/delay_load.c:
	winecrt0: Fix delay load structure types for Win64.

2006-10-29  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DMATERIALCOLORSOURCE to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCMPFUNC to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTENCILOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFILLMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCULL to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSHADEMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLENDOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_types.h:
	wined3d: Add D3DFOGMODE to the WINED3D namespace.

2006-10-28  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Make GetTexture and GetSamplerState read from the correct stateblock.

	* dlls/wined3d/stateblock.c:
	wined3d: Set correct default for DMAPOFFSET sampler state.

	* dlls/wined3d/device.c:
	wined3d: Fix GetTexture() for uninitialized textures.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Make the "Tests executed" counter stable.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Pass test as argument to print handler.

2006-10-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added put_innerHTML implementation.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Added SHQueueUserWorkItem implementation.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Call SendCallback in destructor instead of InternetCloseHandle.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Store handle in WININETHANDLEHEADER and use it in SendCallback.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Remove lpwhparent from WININETHANDLERHEADER.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFILEW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFINDNEXTW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Move ftp FindNextFile implementation to ftp.c.

	* dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/internet.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/ftp.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETFTPSESSIONW.

	* dlls/wininet/dialogs.c, dlls/wininet/http.c:
	wininet: Use lpHttpSession instead of lpwhcalback where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store pointer to WININETHTTPSESSIONW in WININETHTTPREQUESTW.

	* dlls/wininet/http.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETHTTPSESSIONW.

2006-10-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Cast-qual warnings fix.

2006-10-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/source.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/dbghelp/path.c:
	dbghelp: Cast-qual warnings fix.

2006-10-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/enhmetafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/env.c:
	gdi32: Cast-qual warnings fix.

2006-10-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d9/device.c, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Cast-qual warnings fix.

2006-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split ACTION_UpdateInstallStates into two separate functions.

2006-10-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Flush painting events harder in some places in order to avoid races
	in the message tests.

	* dlls/user/tests/msg.c:
	user32: Properly log HCBT_KEYSKIPPED hook event, make the message
	tests pass cleanly under fully up to date XP SP2.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* programs/control/params.h:
	control.exe: Remove unused define.

2006-10-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Print wine_gecko version in load_wine_gecko.

	* dlls/wininet/tests/http.c, include/wininet.h:
	wininet: Fixed declaration of INTERNET_STATUS_CALLBACK.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Update winehq.org IP.

2006-10-28  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/drawprim.c:
	wined3d: Respect ARB_VERTEX_BUFFER_OBJECT in loadVertexData.

2006-10-27  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dmusic/dmusic.c:
	dmusic: Do not write outside of array bounds.

2006-10-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user32: The hiword of the return value from LB_ITEMFROMPOINT should be
	a hittest on the item that's returned and not a hittest on the client
	area as MSDN states.

2006-10-27  Stephen R. Veit <sveit@tradeharbor.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Fix GetAdaptersInfo return value for IpMask.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.24.

----------------------------------------------------------------
2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/directx.c:
	wined3d: Simplify some uses of the WineD3D_Context object.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: The WineD3D_GLContext structure doesn't need to be exported.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Fix a memory leak (spotted by Eric Pouech).

2006-10-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/oid.c:
	crypt32: Cast-qual warnings fix.

2006-10-26  Kirill K Smirnov <Kirill.K.Smirnov@star.math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Properly implement context help and JumpContext macro.

2006-10-24  Pierre d'Herbemont <pdherbemont@free.fr>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winequartz.drv/Makefile.in,
	  dlls/winequartz.drv/quartzdrv_main.c,
	  dlls/winequartz.drv/winequartz.drv.spec, include/config.h.in:
	quartzdrv: Add the quartz (Mac OS X) video driver to the build system.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c:
	winedump: Avoid some dead code.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c:
	wined3d: Implement D3DSIO_MOVA in ARB backend.

2006-10-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/opengl.c, dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move part of wglGetProcAddress to gdi32.

2006-10-26  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread on large buffers in ascii mode.

2006-10-26  Kevin Krammer <kevin.krammer@gmx.at>

	* programs/winebrowser/main.c:
	winebrowser: Support for Portland Initiative scripts.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Close the directory handle in FindNextFile as soon as we reach the
	end of the directory.

2006-10-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d8/device.c, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Cast-qual warnings fix.

2006-10-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Extract cabinets based on DiskId, not LastSequence.

2006-10-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the order in which cab files are handled in the Media table.

	* dlls/msi/dialog.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/install.c:
	msi: Implement handling for the ErrorDialog and use it to change media.

2006-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Avoid crashing if writeout_cabinet_stream fails.

	* dlls/msi/action.c:
	msi: Remove redundant null checks before MSI_EvaluateCondition.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Move code assuming Nx1 into ImageList_CreateImage.

2006-10-26  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	tools/wine.inf: Add default printer ports.

2006-10-26  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: The allocation hint in request and response packets is just that -
	a hint.
	It is not an error if the stub data exceeds this size, so reallocate the
	buffer with the newly calculated size and continue.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't terminate the loop on the buffer becoming filled, but when we
	receive a packet with the RPC_FLG_LAST flag set.
	This matches what is mentioned in the DCE/RPC specification.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix RPCRT4_Receive to accept authentication verifier data on any packets,
	not just bind packets.

	* dlls/ole32/rpc.c:
	ole32: Fix a memory leak on the error path of dispatch_rpc.

	* dlls/oleaut32/typelib.c:
	oleaut32: Update comments at the top of typelib.c and remove "stub" from
	several traces that are in implemented functions.

	* dlls/ole32/oleproxy.c:
	ole32: Fix some memory leaks in the class factory proxy.

	* dlls/ole32/oleproxy.c:
	ole32: Always call IRpcChannelBuffer_GetBuffer in the class factory stub.

2006-10-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/urlhist.c:
	shdocvw: Added CUrlHistory stub implementation.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/urlhist.idl:
	include: Added urlhist.idl.

2006-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/mouse.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Offset X11 coordinates with the primary monitor position.
	No longer force the primary monitor to contain the X11 (0,0) coordinate.

	* server/window.c:
	server: Always ignore the root window position when computing coordinates
	offsets.

2006-10-24  David Anderson <davea42@earthlink.net>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Avoid printing too many "What the heck" messages from winedbg.

2006-10-26  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ddraw/device.c:
	ddraw: Add missing dereference operators.

2006-10-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mshtml/olecmd.c:
	mshtml: Moved release of dom_window to right place.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Fix the join algorithm.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/update.c:
	msi: Allow UPDATE queries without a condition.

	* dlls/msi/delete.c, dlls/msi/msipriv.h, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Update tables using records, not integer by integer.

	* dlls/msi/alter.c, dlls/msi/delete.c, dlls/msi/join.c:
	msi: Remove some unused functions.

	* dlls/msi/insert.c, dlls/msi/query.h, dlls/msi/tests/db.c,
	  dlls/msi/update.c:
	msi: Fixed the UPDATE query to work with explicit values.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c,
	  dlls/msi/helpers.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Use msi_feature_set_state and msi_component_set_state where possible.

	* dlls/msi/action.c:
	msi: Create macro functions to set feature and component states.

2006-10-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the UPDATE sql command.

2006-10-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Select the Filename edit box content after the user navigated to a
	directory by entering there the name.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_kor.mc:
	kernel32: Added winerr_kor.mc.

2006-10-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move transport-specific server functions to rpc_transport.c.

2006-10-25  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tab.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Create tooltip windows with WS_POPUP style.

	* dlls/comctl32/status.c:
	comctl32: statusbar: Create tooltip window with WS_POPUP and TTS_ALWAYSTIP style.

2006-10-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/direct3d.c, dlls/ddraw/surface.c:
	ddraw: Forward the depth stencil buffer to wined3d.

2006-10-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winpos.c:
	user32: Fixed maximized window size on multi-monitor setups.

	* programs/winhelp/winhelp.c:
	winhelp: Properly handle negative coordinates for mouse events.

	* programs/winemine/main.c, programs/winemine/main.h:
	winemine: Properly handle negative coordinates for mouse events.

	* programs/winefile/winefile.c:
	winefile: Properly handle negative coordinates for mouse events.

	* programs/wineconsole/user.c:
	wineconsole: Properly handle negative coordinates for mouse events.

	* programs/regedit/childwnd.c:
	regedit: Properly handle negative coordinates for mouse events.

	* programs/oleview/pane.c:
	oleview: Properly handle negative coordinates for mouse events.

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/listbox.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/win.c:
	user32: Properly handle negative coordinates for mouse events.

	* dlls/shell32/control.c:
	shell32: Properly handle negative coordinates for mouse events.

	* dlls/msi/dialog.c:
	msi: Properly handle negative coordinates for mouse events.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Properly handle negative coordinates for mouse events.

	* dlls/comctl32/header.c, dlls/comctl32/monthcal.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/status.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/theme_combo.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/tooltips.c, dlls/comctl32/treeview.c:
	comctl32: Properly handle negative coordinates for mouse events.

2006-10-25  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Create a point from index function and use it.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/mlang/mlang.c:
	mlang: Set fnIMLangFontLink_GetStrCodePages stub return values.

2006-10-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/crl.c, dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Cast-qual warnings fix.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/process.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xinerama.c:
	Revert "kernel32: Exit from initial thread with ExitThread not by ExitProcess."
	This reverts commit 5a1fd50db345c1de97d9d02133728a6080d2848b.
	I committed the wrong file.

2006-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only create a fontSet if we are going to be using it in the XIC.

2006-10-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/win.c:
	user: Remove wrong comment.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/xinerama.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, include/wine/wined3d_types.h:
	wined3d: Add D3DZBUFFERTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLEND to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTA masks to the WINED3D namespace.
	Also fix usage of D3DTSS/D3DTA in ddraw.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DVS_RASTOUT_OFFSETS to the WINED3D namespace.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTADDRESS to the WINED3D namespace.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3DLOCK: Use consistently in the WINED3D namespace.

2006-10-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringCptoX and ScriptStringXtoCp for activation
	in later patches.

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringAnalyse and ScriptStringFree.

2006-10-24  Francois Gouget <fgouget@free.fr>

	* dlls/amstream/main.c, dlls/amstream/regsvr.c,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c,
	  dlls/comcat/comcat_private.h, dlls/comcat/regsvr.c,
	  dlls/comctl32/animate.c, dlls/comdlg32/cdlg.h,
	  dlls/comdlg32/cdlg16.h, dlls/comdlg32/filedlgbrowser.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c,
	  dlls/devenum/devenum_private.h, dlls/dxdiagn/regsvr.c,
	  dlls/dxerr8/dxerr8.c, dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c,
	  dlls/dxguid/dx9guid.c, dlls/dxguid/dxguid.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/mciavi32/private_mciavi.h,
	  dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c,
	  dlls/msrle32/msrle_private.h, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/objsel/objsel_private.h,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/pastespl.c,
	  dlls/olepro32/olepro32stubs.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shlinstobj.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/string.c,
	  dlls/strmiids/strmiids.c, dlls/urlmon/regsvr.c, dlls/urlmon/umon.c,
	  dlls/uuid/uuid.c, dlls/winex11.drv/event.c, dlls/wininet/urlcache.c,
	  include/mediaobj.idl:
	Don't include windows.h & co in the Wine sources.
	Remove uneeded COM_NO_WINDOWS_H defines.

2006-10-24  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a crash in dump_DispParms when running the typelib test with
	debug tracing on.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free the array subscript memory for type descriptions when freeing
	the typelib.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32: Fix a reference count leak in the typelib test.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a reference count leak in CreateDispTypeInfo.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialise all members of the FUNCDESC structure in CreateDispTypeInfo.

2006-10-24  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only initialize static variables once per process.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XCloseIM another chance.

2006-10-24  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/oledlg/oledlg_Fr.rc:
	oledlg: Updated French translation.

	* programs/wineconsole/wineconsole_Fr.rc:
	wineconsole: Updated French translation.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_Nl.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/hhctrl.ocx/Nl.rc, dlls/mpr/mpr_Nl.rc, dlls/msacm32/msacm_Nl.rc,
	  dlls/mshtml/Nl.rc, dlls/msi/msi_Nl.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/oleaut32/oleaut32_Nl.rc, dlls/oledlg/oledlg_Nl.rc,
	  dlls/sane.ds/sane_Nl.rc, dlls/serialui/Nl.rc, dlls/setupapi/Nl.rc,
	  dlls/shdocvw/Nl.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/winmm/winmm_Nl.rc, dlls/winspool.drv/Nl.rc,
	  dlls/wldap32/wldap32_Nl.rc, programs/clock/Nl.rc, programs/cmd/Nl.rc,
	  programs/cmdlgtst/Nl.rc, programs/notepad/Nl.rc,
	  programs/progman/Nl.rc, programs/regedit/Nl.rc, programs/start/Nl.rc,
	  programs/taskmgr/Nl.rc, programs/view/Nl.rc, programs/winecfg/Nl.rc,
	  programs/wineconsole/wineconsole_Nl.rc, programs/winefile/Nl.rc,
	  programs/winemine/Nl.rc, programs/winhelp/Nl.rc,
	  programs/wordpad/Nl.rc:
	resources: Change Dutch sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Fallback to default position if saved position if off-screen.

	* dlls/user/misc.c:
	user: Make sure the desktop window exists before calling monitor functions.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_De.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/crypt32/crypt32_De.rc,
	  dlls/devenum/devenum.rc, dlls/hhctrl.ocx/De.rc,
	  dlls/iccvid/iccvid_De.rc, dlls/kernel32/nls/winerr_deu.mc,
	  dlls/mpr/mpr_De.rc, dlls/msacm32/msacm_De.rc, dlls/mshtml/De.rc,
	  dlls/msi/msi_De.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvidc32/msvidc32_De.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oledlg/oledlg_De.rc,
	  dlls/sane.ds/sane_De.rc, dlls/serialui/De.rc, dlls/setupapi/De.rc,
	  dlls/shdocvw/De.rc, dlls/shell32/shell32_De.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/user/resources/user32_De.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wininet/wininet_De.rc,
	  dlls/winmm/winmm_De.rc, dlls/winspool.drv/De.rc,
	  dlls/wldap32/wldap32_De.rc, programs/clock/De.rc, programs/cmd/De.rc,
	  programs/cmdlgtst/De.rc, programs/notepad/De.rc,
	  programs/progman/De.rc, programs/regedit/De.rc, programs/start/De.rc,
	  programs/taskmgr/De.rc, programs/view/De.rc, programs/winecfg/De.rc,
	  programs/wineconsole/wineconsole_De.rc, programs/winefile/De.rc,
	  programs/winemine/De.rc, programs/winhelp/De.rc,
	  programs/wordpad/De.rc:
	resources: Change German sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split code to get a file's verion into a separate comment.

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/reader.c,
	  dlls/riched20/richole.c:
	riched20: Create macro functions for allocating and freeing memory.

	* dlls/riched20/clipboard.c:
	riched20: Make sure to use GlobalAlloc with GlobalFree.

2006-10-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Fix the full path check.

	* dlls/msi/tests/install.c:
	msi: Add tests for installing from continuous cabinets.

	* dlls/msi/tests/install.c:
	msi: Allow more customization of install test files.

	* dlls/msi/tests/install.c:
	msi: Remove unused function pointer and definitions.

	* dlls/msi/tests/install.c:
	msi: Remove two unnecessary install tables.

	* dlls/msi/database.c, dlls/msi/tests/install.c:
	msi: Add support for localizable strings in MsiDatabaseImport.

2006-10-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/mpeg mime filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Code clean up.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/avi mime filter implementation.

2006-10-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Remove superfluous shadow variable.

	* dlls/crypt32/cert.c:
	crypt32: Cast-qual warnings fix.

2006-10-23  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Initialize data->xim to NULL if xim has been disabled.

2006-10-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/regedit/edit.c:
	regedit: Initialize a variable (Coverity).

2006-10-23  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/toolbar.c:
	comctl32/tests: Specify type of function argument and remove unused arguments.

2006-10-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/netapi32/wksta.c:
	netapi32: Fix the size of allocation for the string returned from
	NetpGetComputerName.

	* dlls/ole32/clipboard.c:
	ole32: Fixed some wrong conditions in OleFlushClipboard.

	* dlls/ole32/compobj.c:
	ole32: CoUninitialize: No longer access an object after it's been freed.

	* dlls/msxml3/nodelist.c:
	msxml: Fixed list walking in xmlnodelist_get_length.

	* dlls/gdi32/enhmfdrv/graphics.c:
	gdi32: Better error handling in enhanced metafile.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: As the min keycode is always greater or equal to 8, we
	don't need to scan XKeymapEvent.key_vector from 0 but from 8.

2006-10-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winmm/wineoss/midi.c:
	wineoss: On non-OSS systems define MidiExit too.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: NetBSD needs sys/param.h.

2006-10-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl_main.c, dlls/localspl/localspl_private.h:
	localspl: Remember hInstance, needed for resources.

	* dlls/localspl/Makefile.in, dlls/localspl/localspl.rc:
	localspl: Add version resource.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fallback to localmon.dll on NT4.0.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/misc.c,
	  dlls/user/tests/monitor.c, dlls/user/win.c:
	user: Fixed MonitorFromWindow behavior for an invalid window handle.

2006-10-23  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tests/suminfo.c:
	msi/tests: Fix compilation with gcc 2.95.

	* programs/oleview/typelib.c:
	oleview: Fix compilation with gcc 2.95.

2006-10-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a missing ITypeInfo::ReleaseTypeAttr in the typelib marshaling
	code.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix two more leaks on type info destruction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Rewrite MSFT_ReadName and MSFT_ReadString to need one less allocation
	and to fix a memory leak.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free allocated memory on typelib and typeinfo destruction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix some reference count and memory leaks in the typelib marshaling
	code.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix memory leaks after calling ITypeInfo::GetNames.

	* dlls/ole32/tests/marshal.c:
	ole32: Fix some memory leaks in the marshal tests.

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Fix imagelist leak in tests.

2006-10-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/class.c, dlls/user/tests/class.c:
	user32: Make the test pass for GetClassName called on a small buffer.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Make QueryPathOfRegTypeLib test pass under Wine.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
	oleaut32: Add a test for QueryPathOfRegTypeLib.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c, dlls/shlwapi/tests/string.c:
	shlwapi: Test and fix StrRStrI[AW].

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Disable the StrFromTimeInterval tests as they are
	language-dependent.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Enable the locale-dependent tests if the delimiters are correct.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Make the string.c tests compile in Visual C++.

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix ellipsis in menu items.

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Implement Find and Find Next.

	* programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/dialog.h:
	notepad: Add a generic function for message boxes with a string parameter.

2006-10-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Cast-qual warning fix.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Cast-qual warnings fix.

2006-10-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/datetime.c:
	comctl32: Cast-qual warnings fix.

2006-10-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/heap.c:
	msvcrt: Speed up new operator.

2006-10-20  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/mshtml/nsembed.c:
	mshtml: Insert missing "return" operator.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Adapt system metrics for multi-monitor setups.

	* dlls/comctl32/tooltips.c:
	comctl32: Position the tooltip window correctly on multi-monitor setups.

	* dlls/user/winpos.c:
	user: Maximize windows to the right monitor on multi-monitor setups.

	* dlls/user/combo.c:
	user: Fixed combo box drop position on multi-monitor setups.

	* dlls/user/dialog.c, dlls/user/dialog16.c:
	user: Take multiple monitors into account when placing a dialog.

	* dlls/user/win.c:
	user: Take multiple monitors into account when placing a window.

	* dlls/user/menu.c:
	user: Take multiple monitors into account when placing a popup menu.

	* dlls/user/driver.c, dlls/user/misc.c, dlls/user/user_private.h,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/xinerama.c:
	user: Moved GetMonitorInfo and EnumDisplayMonitors to the display driver.
	Added Xinerama support for these functions.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Preliminary support for Xinerama.

	* configure, configure.ac, include/config.h.in:
	configure: Check for the Xinerama extension.

2006-10-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-10-23  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/class.c:
	user32: Add a test showing a problem in GetClassNameA.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix insertion of null integers into a table.

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c, dlls/msi/tokenize.c:
	msi: Add the column type INTEGER as an alias for INT.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	msi: Only apply transforms that are valid for a database.

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msipriv.h,
	  dlls/msi/suminfo.c:
	msi: Initialize the summary information from a storage interface, not a db.

2006-10-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/Ko.rc:
	notepad: Update Korean resources.

	* programs/oleview/Ko.rc:
	oleview: Update Korean resources.

	* programs/winefile/Ko.rc:
	winefile: Update Korean resources.

2006-10-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stubs for DnsWriteQuestionToBuffer_{UTF8,W}.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix Polish translation.

	* programs/wineconsole/dialog.c:
	wineconsole: Check one of the radio buttons in the "Save settings" dialog.

	* programs/wineconsole/wineconsole_En.rc:
	wineconsole: En.rc: Enlarge the "save console settings" dialog to avoid cropping
	of text.

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Pl.rc: Enlarge the Find dialog to show the whole radio buttons text.

	* dlls/hhctrl.ocx/Pl.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Add Polish translation.

	* dlls/oledlg/oledlg_Pl.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Polish translation.

2006-10-22  Frank Richter <frank.richter@gmail.com>

	* programs/wineconsole/wineconsole_De.rc:
	wineconsole: Update German translation.

	* programs/oleview/De.rc, programs/oleview/rsrc.rc:
	oleview: Add German translation.

	* dlls/gphoto2.ds/gphoto2_De.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add German translation.

	* programs/winefile/De.rc:
	winefile: Update German translation.

	* programs/taskmgr/De.rc:
	taskmgr: Update German translation.

	* programs/regedit/De.rc:
	regedit: Update German translation.

	* programs/progman/De.rc:
	progman: Update German translation.

	* programs/notepad/De.rc:
	notepad: Update German translation.

	* programs/cmdlgtst/De.rc:
	cmdlgtst: Update German translation.

	* programs/clock/De.rc:
	clock: Update German translation.

	* dlls/oledlg/oledlg_De.rc:
	oledlg: Update German translation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Ko.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Left-align Gecko download information message for better readability.

	* dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Tr.rc:
	mshtml: Enlarge status text control ins some translated dialogs so all text
	is readable.

	* dlls/mshtml/De.rc:
	mshtml: Update German translation.

2006-10-20  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Only send the end dialog msg if the button is actually clicked.

2006-10-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/tiff mime filter.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix windows style of windows without parents.

2006-10-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use HTTP_ADDHDR_FLAG_REPLACE flag in HTTP_HttpSendRequest to add
	Content-Length header.

	* dlls/mshtml/htmlelem.c:
	mshtml: Added IHTMLElement::get_className implementation.

	* dlls/mshtml/htmlselect.c:
	mshtml: Don't return empty string in IHTMLSelectElement::get_name.

2006-10-21  Jeff Latimer <lats@yless4u.com.au>

	* tools/runtest:
	tools: Add addtional help to runtest.

2006-10-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c:
	advapi32: Fixed a couple items from previous patch (spotted by G Pfeifer).

	* programs/winedbg/be_i386.c:
	winedbg: Added a few more cases where we inspect if i386 instructions
	are actually calls (based on previous work by Jeff Latimer).

	* configure, configure.ac:
	configure: Now that we have dwarf support for debug info, don't force stabs
	as debug info format.

	* server/sock.c:
	winsock: Clear the held mask with the requested events so that they can be
	signaled.

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Plug a couple of memory leaks.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Avoid non-portable types.

2006-10-18  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Added support for RPC TCP servers.

2006-10-18  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: HttpSendRequestW() returns ERROR_IO_PENDING when called on an async
	socket. But that does not mean that it failed.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/joystick_linuxinput.c, dlls/oleaut32/tmarshal.c:
	Add '\n's to Wine traces.

2006-10-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/heap.c:
	ntdll: Added debug support for notifying block allocation / freeing.

2006-10-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32: Plug a couple of memory leaks.

2006-10-19  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/crypt32/crypt32_Ko.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/hhctrl.ocx/Ko.rc,
	  dlls/iccvid/iccvid_Ko.rc, dlls/mpr/mpr_Ko.rc,
	  dlls/msacm32/msacm_Ko.rc, dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/oleaut32/oleaut32_Ko.rc,
	  dlls/oledlg/oledlg_Ko.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/serialui/Ko.rc, dlls/setupapi/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/winmm/winmm_Ko.rc,
	  dlls/winspool.drv/Ko.rc, dlls/wldap32/wldap32_Ko.rc,
	  programs/clock/Ko.rc, programs/cmd/Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/notepad/Ko.rc, programs/oleview/Ko.rc,
	  programs/progman/Ko.rc, programs/regedit/Ko.rc, programs/start/Ko.rc,
	  programs/taskmgr/Ko.rc, programs/uninstaller/Ko.rc,
	  programs/view/Ko.rc, programs/winecfg/Ko.rc,
	  programs/wineconsole/wineconsole_Ko.rc, programs/winefile/Ko.rc,
	  programs/winemine/Ko.rc, programs/winhelp/Ko.rc,
	  programs/wordpad/Ko.rc:
	Korean: Use SUBLANG_NEUTRAL in Korean resources.

2006-10-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: WM_RBUTTONDOWN lParam is in client coordinates not window
	coordinates.

	* programs/wineconsole/user.c:
	wineconsole: Make most keys cancel the selection.

	* programs/wineconsole/user.c:
	wineconsole: Allow making selections with a mouse also when not in the
	QuickEdit mode.

	* programs/wineconsole/user.c:
	wineconsole: Remove spaces from the ends of lines while copying to the clipboard.

	* programs/wineconsole/user.c:
	wineconsole: Change selection on WM_KEYDOWN not WM_KEYUP.

	* programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_res.h:
	wineconsole: Add usage message and more specific error messages.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c:
	wineaudioio.drv: Win64 printf format fixes.

	* dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/coreaudio.c:
	winecoreaudio.drv: Win64 printf format fixes.

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/dispdib.spec, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/enhmfdrv/mapping.c, dlls/gdi/enhmfdrv/objects.c,
	  dlls/gdi/env.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi.exe.spec, dlls/gdi/gdi16.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_main.c, dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c,
	  dlls/gdi/icm.c, dlls/gdi/mapping.c, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/generated.c, dlls/gdi/tests/mapping.c,
	  dlls/gdi/tests/metafile.c, dlls/gdi/tests/palette.c,
	  dlls/gdi/tests/pen.c, dlls/gdi/version.rc, dlls/gdi/version16.rc,
	  dlls/gdi/wing.c, dlls/gdi/wing.spec, dlls/gdi32/Makefile.in,
	  dlls/gdi32/bidi.c, dlls/gdi32/bidi16.c, dlls/gdi32/bitblt.c,
	  dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/clipping.c,
	  dlls/gdi32/dc.c, dlls/gdi32/dib.c, dlls/gdi32/dispdib.c,
	  dlls/gdi32/dispdib.spec, dlls/gdi32/driver.c,
	  dlls/gdi32/enhmetafile.c, dlls/gdi32/enhmfdrv/bitblt.c,
	  dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/mapping.c, dlls/gdi32/enhmfdrv/objects.c,
	  dlls/gdi32/env.c, dlls/gdi32/font.c, dlls/gdi32/freetype.c,
	  dlls/gdi32/gdi.exe.spec, dlls/gdi32/gdi16.c, dlls/gdi32/gdi32.spec,
	  dlls/gdi32/gdi_main.c, dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/icm.c, dlls/gdi32/mapping.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/metafile16.c, dlls/gdi32/mfdrv/bitblt.c,
	  dlls/gdi32/mfdrv/dc.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/mfdrv/text.c, dlls/gdi32/opengl.c, dlls/gdi32/painting.c,
	  dlls/gdi32/palette.c, dlls/gdi32/path.c, dlls/gdi32/pen.c,
	  dlls/gdi32/printdrv.c, dlls/gdi32/region.c,
	  dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/brush.c, dlls/gdi32/tests/clipping.c,
	  dlls/gdi32/tests/dc.c, dlls/gdi32/tests/font.c,
	  dlls/gdi32/tests/gdiobj.c, dlls/gdi32/tests/generated.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/gdi32/tests/palette.c, dlls/gdi32/tests/pen.c,
	  dlls/gdi32/version.rc, dlls/gdi32/version16.rc, dlls/gdi32/wing.c,
	  dlls/gdi32/wing.spec, programs/winetest/Makefile.in,
	  tools/make_makefiles, tools/winapi/msvcmaker, tools/winapi/tests.dat:
	gdi32: Renamed the gdi directory to gdi32.

	* dlls/dmstyle/style.c, dlls/imm32/imm.c, dlls/kernel32/computername.c,
	  dlls/ole32/stg_prop.c, dlls/winspool.drv/info.c:
	Avoid usage of sizeof in traces that causes warnings on MacOSX.

2006-10-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/hmac_md5.h:
	secur32: Add include guard to hmac_md5.h.

2006-10-20  Christoph Frick <frick@sc-networks.de>

	* dlls/gdi/gdi32.spec:
	gdi32: Add wglShareList to gdi32.spec.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for integer column types.

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Integer columns can have the 'NOT NULL' modifier too.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Allow more than one primary key in a table when importing a database.

2006-10-18  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add the ProgramFilesPath registry entry.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Only initialize a component's state if it is linked with a feature.

	* dlls/msi/tests/install.c:
	msi: Use the ProgramFileDir reg value instead of ProgramFilesPath.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Implement the InstallServices action.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_main.c:
	localspl: Implement InitializePrintMonitor.

2006-10-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Get function pointers from the monitor.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Another test for InitializePrintMonitor.

2006-10-19  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Remove the structure window property when we quit.

	* dlls/oledlg/pastespl.c:
	oledlg: Return the appropiate value after the dialog is closed.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the source text.

	* dlls/oledlg/pastespl.c:
	oledlg: Set nSelectedIndex on exit.

	* dlls/oledlg/pastespl.c:
	oledlg: Retrieve names from the OBJECTDESCRIPTOR structure.

	* dlls/oledlg/pastespl.c:
	oledlg: Call the hook proc if present.

	* dlls/oledlg/pastespl.c:
	oledlg: Set initial focus to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Handle paste / link mode change.

	* dlls/oledlg/pastespl.c:
	oledlg: Minimal 'As Icon' handling. Just disable for now.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the result text.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/resource.h:
	oledlg: Add paste special string resources.

2006-10-18  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Post OLEUI_MSG_HELP when the Help button is pressed and hide the Help
	button if the app doesn't want it.

	* dlls/oledlg/pastespl.c:
	oledlg: Send the OLEUI_MSG_ENDDIALOG messsage when closing the dialog.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a couple of messages.

	* dlls/oledlg/pastespl.c:
	oledlg: Copy the appropiate list to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Logic for initial selection of paste/pastelink radio buttons.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the pastelink list.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the paste list.

	* dlls/oledlg/pastespl.c:
	oledlg: Set the user supplied caption.

	* dlls/oledlg/pastespl.c:
	oledlg: Use the clipboard if the user doesn't pass an IDataObject.

	* dlls/oledlg/pastespl.c:
	oledlg: Initial management of private structure for dialog box control.

	* dlls/oledlg/oledlg_private.h, dlls/oledlg/pastespl.c:
	oledlg: Load the correct dialog template and add a skeleton dialog proc.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/rsrc.rc:
	oledlg: Paste special dialog resource.

	* dlls/oledlg/pastespl.c:
	oledlg: Forward OleUIPasteSpecialA -> OleUIPasteSpecialW.

	* dlls/oledlg/pastespl.c:
	oledlg: Debugging code to dump the OLEUIPASTESPECIAL structure.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a bunch of clipboard formats.

	* dlls/oledlg/Makefile.in, dlls/oledlg/oledlg_main.c,
	  dlls/oledlg/pastespl.c:
	oledlg: Move paste special dialog stubs to their own file.

	* include/oledlg.h:
	oledlg: Add the registered message name strings.

	* include/oledlg.h:
	oledlg: Add PS_MAXLINKTYPES.

	* include/oledlg.h:
	oledlg: Move the flag defines to under their respective structure definitions
	and remove some duplicates.

	* include/oledlg.h:
	oledlg: Add resource ids for the paste special dialog.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/pen.c:
	winex11.drv: Avoid X error with unsupported pen styles.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable causing random conformance test failures.

2006-10-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc,
	  dlls/mshtml/resource.h:
	mshtml: Use mshtmcid.h defines where possible.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Fix debug traces.

	* dlls/shdocvw/ie.c:
	shdocvw: Added WebBrowser::Navigate implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Use navigate_url in WebBrowser::Navigate.

	* dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move common Navigate2 code to navigate_url.

2006-10-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Cast-qual warnings fix.

	* dlls/cabinet/fdi.c:
	cabinet: Cast-qual warnings fix.

2006-10-19  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/swapchain.c:
	wined3d: Fix the FrontBuffer content capturing.

	* dlls/wined3d/swapchain.c:
	wined3d: Correct the software cursor position if the app is running in
	windowed mode.

	* dlls/wined3d/surface.c:
	wined3d: BltOverride: Make sure that the content of the source rect is
	copied to the correct position in the destination rect.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for the InstallServices action.

2006-10-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the tests and handling of TB_SETHOTITEM on a disabled
	button.

2006-10-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create tooltip on TB_GETTOOLTIPS message if not yet created.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Allow rows in the _Columns table to be unordered.

	* dlls/msi/table.c:
	msi: Reset the column number for each new table in a transform.

2006-10-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update RelayExclude and add RelayFromExclude filter in order to
	avoid not useful APIs in the traces.

2006-10-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Hack to work around an Xlib bug when XInitThreads is used.

2006-10-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/stabs.c:
	dbghelp: Cast-qual warnings fix.

2006-10-18  Jesse Allen <the3dfxdude@gmail.com>

	* include/winuser.h:
	include: Fix out of place comment for DLGC_* codes.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/cert.c, dlls/d3d9/tests/stateblock.c,
	  dlls/ole32/tests/hglobalstream.c, dlls/shell32/recyclebin.c:
	Fix compilation with gcc 2.95.

2006-10-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/iccvid/iccvid_Fr.rc, dlls/msvfw32/msvfw32_Fr.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/wldap32/wldap32_Fr.rc:
	Use SUBLANG_NEUTRAL in French resources.

	* programs/taskmgr/Fr.rc:
	taskmgr: Fix an error in French translation.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the USERNAME and COMPANYNAME properties when initializing a package.

	* dlls/msi/dialog.c:
	msi: Run SetProperty events before all other events no matter what the order is.

2006-10-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Improved metafile support.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/registry.c:
	advapi32: Cast-qual warning fix.

2006-10-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Cast-qual warnings fix.

2006-10-17  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add stub for _getmaxstdio.

2006-10-16  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/x11drv.h:
	x11drv: Fix a typo in x11drv.h about X11DRV_GetTextExtentExPoint.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/Makefile.in, dlls/ntdll/atom.c, dlls/ntdll/cdrom.c,
	  dlls/ntdll/critsection.c, dlls/ntdll/debugbuffer.c,
	  dlls/ntdll/debugtools.c, dlls/ntdll/directory.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/loader.c, dlls/ntdll/misc.c,
	  dlls/ntdll/nt.c, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/sec.c, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/signal_i386.c, dlls/ntdll/sync.c, dlls/ntdll/tape.c,
	  dlls/ntdll/threadpool.c, dlls/ntdll/version.c, dlls/ntdll/virtual.c:
	ntdll: Win64 printf format warning fixes.

2006-10-17  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/stack.c:
	winedbg: Print frame address instead of duplicated bare address in backtrace.

2006-10-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/gdi32.spec:
	gdi32: Add missing spec file entry for wglDeleteContext.

2006-10-17  Cihan Altinay <bobbyg@gmx.net>

	* dlls/shdocvw/dochost.c:
	shdocvw: Make sure BSTR is allocated before calling sink.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/db.c:
	msi/tests: Make sure to delete the test data file.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/mdi.c, dlls/user/tests/msg.c, dlls/winex11.drv/winpos.c:
	user: Add a test for ShowWindow(SW_MAXIMIZE) called on an invisible maximized
	MDI child, make it mostly pass under Wine.

2006-10-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Dead code fix (Coverity).

2006-10-17  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix dead code in ScriptItemize.

2006-10-15  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/tests/joystick.c:
	dinput: Add SetCooperativeLevel test for joystick.

	* dlls/dinput/tests/keyboard.c:
	dinput: Add SetCooperativeLevel tests to keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Move SetCooperativeLevel into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move SetEventNotification and associated event into base class.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Use dinput device as a base class for keyboard,  mouse and joystick.

2006-10-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Use SM_CYEDGE for heights in NCCalcSize.

2006-10-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix tables with binary data where the key is an integer.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Stream fields shouldn't be treated as strings.

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Add a test for modifying a table containing binary data.

	* dlls/msi/tests/suminfo.c:
	msi: Add a test for summary information.

2006-10-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Revert "msi: Perform button control events in greatest to least order."

2006-10-17  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/surface.c:
	d3d8: Backport d3d9 surface tests.

	* dlls/d3d8/device.c:
	d3d8: Fix wrong function name in FIXME.

2006-10-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglDeleteContext to gdi32.

2006-10-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/directory.c:
	ntdll: Plug a memory leak.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/msvcrt/direct.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbstring.h,
	  include/msvcrt/search.h, include/msvcrt/stddef.h,
	  include/msvcrt/stdio.h, include/msvcrt/string.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	configure: Don't define _WIN64 on the command line to avoid trouble with
	system headers.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Don't return rectangles with negative width or height in
	NCCalcSize.

	* dlls/user/input.c:
	user32: Send a WM_MOUSELEAVE even if another window calls TrackMouseEvent
	before the timer proc is called.

2006-10-16  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add support for detecting the user locale preference from the system
	on Mac OS X.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Add a critical section to protect the connection list in each
	protseq to avoid taking the process-wide server_cs in the hot path for
	each protocol.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the protseq list into a standard Wine list.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Abstract out the way incoming connections are waited for so that we
	no longer need to wait on Win32 handles.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Rename protseq_ops to connection_ops to reflect the fact that
	the functions operate on an RpcConnection object, not an
	RpcServerProtseq object.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Create a server thread for each protseq.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/atl/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/ole32/Makefile.in, include/Makefile.in:
	Make.rules: Added support for building IDL client/proxy/server/iid files.

	* tools/makedep.c:
	makedep: Added support for generating dependencies of IDL client/proxy/server/iid
	files.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Update the scroll bars after resizing the last column.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix a typo.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* programs/winhelp/winhelp.c:
	winhelp: Cast-qual warnings fix.

2006-10-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTURE[MIN/MAG].

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREADDRESS[U/V].

2006-10-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Stop leaking the session key memory.

2006-10-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/olepro32/Makefile.in, dlls/olepro32/version.rc:
	olepro32: Add version resource.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c:
	libuuid: Fixed typo in CLSID_SynchronizeContainer.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: A window timer id should be an unsigned long.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/input.c:
	user32: When calling TrackMouseEvent with TME_LEAVE the dwHoverTime may be
	uninitialized.

	* dlls/user/input.c:
	user32: Don't create timers with nEventId == 0 in TrackMouseEvent.

2006-10-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREHANDLE.

2006-10-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use real handles for state blocks.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c:
	ddraw: Make the surface list a standard wine list.

2006-10-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglShareLists to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentDC to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentContext to gdi32.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/registry.c, dlls/cabinet/cabinet_main.c,
	  dlls/kernel32/heap.c, dlls/mscms/mscms_priv.h,
	  dlls/msg711.acm/msg711.c, dlls/ole32/compobj.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/marshal.c, dlls/ole32/ole2.c,
	  dlls/ole32/tests/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/ungif.c, dlls/oleaut32/variant.c,
	  dlls/shell32/shlview.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  dlls/winmm/message16.c, tools/wmc/mcy.y, tools/wrc/genres.c:
	Assorted spelling fixes.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Create a message window for each binding to make sure they are cleaned
	up properly.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/msi/table.c:
	msi: Remove spaces before '\n's.

	* programs/oleview/main.h:
	oleview: U(x) must be defined after winnt.h has had a chance to define
	NONAMELESSUNION. Fixes the compilation with gcc 2.95.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Remove '\0's in traces.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winetest/main.c:
	winetest: Don't start test programs with STARTUPINFO.wShowWindow = SW_HIDE.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test and improve the custom draw and owner draw code.

	* dlls/comctl32/header.c:
	comctl32: header: Make all repaints pass through HEADER_Refresh.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: bUnicode and NtfUnicode should be the same.

2006-10-15  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32_priv.h:
	secur32: Get rid of NEGO_* helper modes, they will never be used. Negotiate
	should not be done via ntlm_auth.

2006-10-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/hmac_md5.c,
	  dlls/secur32/hmac_md5.h:
	secur32: Implement RFC2104 (HMAC) with MD5 for NTLMv2.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add stub implementations of CorBindToRuntimeHost and GetCORVersion.

	* dlls/mscoree/mscoree.spec:
	mscoree: Add missing stubs to the spec file.

2006-10-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d8: Implement CopyRects with BltFast.

2006-10-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added IDocHostUIHandler2 test.

	* dlls/mshtml/nsio.c:
	mshtml: Load page from moniker if AsyncOpen fails.

	* dlls/mshtml/task.c:
	mshtml: Don't crash in remove_doc_tasks if thread_data is not allocated.

2006-10-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/secur32/Makefile.in, dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  include/sspi.h:
	secur32: Win64 printf format warning fixes.

2006-10-15  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ole32/Makefile.in, dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/datacache.c, dlls/ole32/dcom.idl,
	  dlls/ole32/defaulthandler.c, dlls/ole32/enumx.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/itemmoniker.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/ole2_16.c, dlls/ole32/ole2stubs.c, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/rpc.c,
	  dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/stubmanager.c:
	ole32: Win64 printf format warning fixes.

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c,
	  dlls/dsound/tests/propset.c, dlls/infosoft/infosoft_main.c,
	  dlls/mshtml/main.c, dlls/ole32/tests/marshal.c,
	  dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib16.c, dlls/shell32/classes.c,
	  dlls/shell32/debughlp.c, dlls/shell32/shfldr.h,
	  dlls/shlwapi/ordinal.c, dlls/urlmon/regsvr.c, include/guiddef.h,
	  include/wine/debug.h, tools/widl/header.c, tools/winedump/lnk.c:
	The Data1 member of the GUID struct needs to be an unsigned int too for Win64
	compatibility.

	* dlls/rpcrt4/rpc_message.c, dlls/winedos/module.c:
	janitorial: Remove redundant NULL checks before calling HeapFree wrappers.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and improve TB_SETHOTITEM.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use nHotItem not nOldHit for the hot item in MouseLeave.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't try to redraw buttons outside of the clipping rect.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Change the dwData from DWORD to DWORD_PTR.

2006-10-14  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ole32/errorinfo.c:
	ole32: Remove dead code in errorinfo.c (Coverity).

2006-10-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: More workarounds for more kernel bugs in VFAT ioctl mapping on x86-64.

2006-10-13  Peter Oberndorfer <kumbayo84@arcor.de>

	* configure, configure.ac:
	configure: Detect mingw cross compiler in gentoo.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Also set the SOURCEDIR property in MSI_InstallPackage.

	* dlls/cfgmgr32/main.c, dlls/setupapi/devinst.c, include/Makefile.in,
	  include/cfgmgr32.h, include/ddk/cfgmgr32.h:
	include: Move cfgmgr32.h to include/ to match the SDK.

	* dlls/clusapi/clusapi.c, include/Makefile.in, include/clusapi.h:
	clusapi: Add the clusapi.h public header.

2006-10-14  Mike McCormack <mike@codeweavers.com>

	* programs/winetest/send.c:
	winetest: Avoid calling fclose twice on the same file (Coverity).

2006-10-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/env.c, dlls/ntdll/tests/error.c,
	  dlls/ntdll/tests/exception.c, dlls/ntdll/tests/info.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c:
	ntdll/tests: Win64 printf format warning fixes.

	* dlls/imm32/Makefile.in, dlls/imm32/imm.c:
	imm32: Win64 printf format warning fixes.

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/devinst16.c, dlls/setupapi/dirid.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx_main.c,
	  dlls/setupapi/stringtable.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/virtcopy.c:
	setupapi: Win64 printf format warning fixes.

2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/hglobalstream.c,
	  dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c,
	  dlls/ole32/tests/ole2.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32/tests: Win64 printf format warning fixes.

	* dlls/comctl32/Makefile.in, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/dpa.c, dlls/comctl32/draglist.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/smoothscroll.c,
	  dlls/comctl32/status.c, dlls/comctl32/tab.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/paint.c,
	  dlls/riched20/richole.c, dlls/riched20/run.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/writer.c:
	riched20: Win64 printf format warning fixes.

	* dlls/wininet/http.c:
	wininet: Cast-qual warnings fix.

2006-10-13  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Window style has not been initialized.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Use color specified in .hlp file for background, not just WHITE_BRUSH.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.23.

----------------------------------------------------------------
2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/comboex.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/imagelist.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/mru.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/tooltips.c:
	comctl32/tests: Win64 printf format warning fixes.

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/finddlg16.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Win64 printf format warning fixes.

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Win64 printf format warning fixes.

	* dlls/winspool.drv/Makefile.in, dlls/winspool.drv/info.c:
	winspool.drv: Win64 printf format warning fixes.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/oleaut32/Makefile.in, dlls/oleaut32/connpt.c,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/recinfo.c, dlls/oleaut32/safearray.c,
	  dlls/oleaut32/stubs.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib16.c,
	  dlls/oleaut32/typelib2.c, dlls/oleaut32/usrmarshal.c,
	  dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/vartype.c:
	oleaut32: Win64 printf format warning fixes.

	* dlls/quartz/Makefile.in, dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c,
	  dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/dsoundrender.c, dlls/quartz/enumfilters.c,
	  dlls/quartz/enummedia.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/enumpins.c, dlls/quartz/enumregfilters.c,
	  dlls/quartz/filesource.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/filtermapper.c, dlls/quartz/main.c,
	  dlls/quartz/memallocator.c, dlls/quartz/parser.c, dlls/quartz/pin.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c:
	quartz: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/wineps.drv/Makefile.in, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/color.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/font.c, dlls/wineps.drv/graphics.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/pen.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/type1.c, dlls/wineps.drv/type42.c:
	wineps.drv: Win64 printf format warning fixes.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/change.c, dlls/kernel32/comm.c,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/except.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c,
	  dlls/kernel32/lcformat.c, dlls/kernel32/locale.c,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/snoop16.c,
	  dlls/kernel32/stress.c, dlls/kernel32/sync.c,
	  dlls/kernel32/syslevel.c, dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/thread.c, dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/volume.c, dlls/kernel32/vxd.c, dlls/kernel32/win87em.c,
	  dlls/kernel32/wowthunk.c:
	kernel32: Win64 printf format warning fixes.

	* dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c:
	gdi/tests: Win64 printf format warning fixes.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Avoid a compiler warning.

2006-10-13  Francois Gouget <fgouget@free.fr>

	* dlls/dmband/bandtrack.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/signposttrack.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/wavetrack.c,
	  dlls/dmscript/scripttrack.c, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	Add '\n's to Wine traces.

	* dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/vertexshader.c,
	  dlls/imagehlp/integrity.c, dlls/msi/action.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/url.c, dlls/usp10/usp10.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, dlls/winex11.drv/dib.c,
	  tools/widl/write_msft.c:
	Assorted spelling fixes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	rpcrt4: Add RPC_CSTR, RPC_WSTR and update the prototypes accordingly.

	* dlls/secur32/ntlm.c:
	secur32: Add missing '\n' in a Wine trace.

	* dlls/olepro32/olepro32stubs.c:
	olepro32: Mark stubs as such.

2006-10-13  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread eof handling.

	* dlls/msvcrt/file.c:
	msvcrt: fread: Fill buffer on small reads.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add fread eof tests.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add shader version/end masks to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTURETRANSFORMTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DCLIPPLANE constants to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSHADER_ADDRMODE masks to the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSI and other opcode masks to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DVERTEXBLENDFLAGS to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTUREOP to the WINED3D namespace.

2006-10-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Do not let the a surface dimension fall to 0.

	* dlls/ddraw/ddraw.c:
	ddraw: Remove an incorrect size check.

2006-10-12  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mciseq/Makefile.in, dlls/mciseq/mcimidi.c:
	mciseq: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32_De.rc:
	shell32: Fix typo in Run dialog.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bitblt.c,
	  dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/clipping.c,
	  dlls/gdi/dc.c, dlls/gdi/dib.c, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi16.c, dlls/gdi/gdiobj.c, dlls/gdi/metafile.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/init.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/wing.c:
	gdi: Win64 printf format warning fixes.

	* dlls/dmstyle/Makefile.in, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/dmutils.c, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/style.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Win64 printf format warning fixes.

	* dlls/msacm32/Makefile.in, dlls/msacm32/driver.c, dlls/msacm32/filter.c,
	  dlls/msacm32/format.c, dlls/msacm32/internal.c,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c:
	msacm32: Win64 printf format warning fixes.

	* dlls/dmusic/Makefile.in, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/download.c,
	  dlls/dmusic/downloadedinstrument.c, dlls/dmusic/instrument.c,
	  dlls/dmusic/port.c, dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Win64 printf format warning fixes.

	* dlls/mciavi32/Makefile.in, dlls/mciavi32/info.c, dlls/mciavi32/mciavi.c,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/wnd.c:
	mciavi32: Win64 printf format warning fixes.

	* dlls/msvfw32/Makefile.in, dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvideo16.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Win64 printf format warning fixes.

	* dlls/dmband/Makefile.in, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmutils.c:
	dmband: Win64 printf format warning fixes.

	* dlls/dmloader/Makefile.in, dlls/dmloader/classfactory.c,
	  dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c:
	dmloader: Win64 printf format warning fixes.

	* dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c:
	mciwave: Win64 printf format warning fixes.

	* dlls/mpr/Makefile.in, dlls/mpr/multinet.c, dlls/mpr/nps.c,
	  dlls/mpr/pwcache.c, dlls/mpr/wnet.c:
	mpr: Win64 printf format warning fixes.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/sane.ds/sane_i.h:
	sane.ds: Get rid of the prototypes of some removed functions.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/itss/Makefile.in, dlls/itss/chm_lib.c, dlls/itss/itss.c,
	  dlls/itss/storage.c:
	itss: Win64 printf format warning fixes.

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/imalloc.c,
	  dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Win64 printf format warning fixes.

	* dlls/tapi32/Makefile.in, dlls/tapi32/assisted.c, dlls/tapi32/line.c,
	  dlls/tapi32/phone.c:
	tapi32: Win64 printf format warning fixes.

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/apibuf.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/nbt.c,
	  dlls/netapi32/netapi32.c, dlls/netapi32/netbios.c,
	  dlls/netapi32/share.c, dlls/netapi32/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/olefont.c,
	  dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/typelib.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/varformat.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32.spec, dlls/shell32/shellreg.c:
	shell32: Implement SHRegQueryValueA with RegQueryValueA.

2006-10-11  Srivatsa Kanchi, R <skanchi@nexthop.com>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Set correct LD_LIBRARY_PATH.

2006-10-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/opengl.c:
	opengl: Fix wglMakeCurrent bug.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms/tests: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/edit.c:
	regedit: Cast-qual warnings fix.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle the sign properly when converting integer data.

	* dlls/msi/table.c:
	msi: Improve error checking when applying transform data.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c, dlls/crypt32/tests/encode.c,
	  dlls/dmime/tempotrack.c, dlls/shlwapi/tests/clist.c,
	  dlls/user/tests/class.c, tools/winedump/pe.c:
	Fixed some printf warnings caused by using sizeof.

	* loader/main.c:
	loader: Make sure the reserved area is protected on MacOSX too.

	* dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c, dlls/ws2_32/socket.c,
	  include/winsock.h:
	ws2_32: Win64 printf format fixes.

	* dlls/ws2_32/socket.c, include/winsock.h, include/winsock2.h:
	winsock: Add a WS_ prefix to the BSD types.

2006-10-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Store dwBaseCustDraw and dwItemCDFlag in local variables.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge TOOLBAR_InsertButtonA and TOOLBAR_InsertButtonW.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Passing a string pointer in TB_INSERTBUTTON shouldn't change
	the strings table (with test case).

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Remove dwItemCustDraw from TOOLBAR_INFO and store it as a
	local variable.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't send NM_CUSTOMDRAW for separators.

	* dlls/comctl32/header.c:
	comctl32: header: Call DefWindowProcW not DefWindowProcA.

	* dlls/comctl32/header.c:
	comctl32: header: Invalidate the control after a WM_SETREDRAW with wParam
	== TRUE.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't call ScrollColumn with an out of bounds index when
	resizing the last column.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Merge D3DDP_MAXTEXCOORD constants into one constant in WINED3D
	namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DPRIMITIVETYPE types into one type in WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DCOLOR types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge D3DRECT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DMATRIX types into one type in WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: D3DTRANSFORMSTATETYPE: Consistently use in the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: D3DRENDERSTATETYPE: Consistently use in the WINED3D namespace.

2006-10-11  Nickolay V. Shmyrev <nshmyrev@yandex.ru>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Always set window type.

2006-10-11  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Win64 printf format warning fixes.

	* dlls/dinput/tests/Makefile.in, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput/tests: Win64 printf format warning fixes.

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c,
	  dlls/advpack/tests/files.c, dlls/advpack/tests/install.c:
	advpack/tests: Win64 printf format warning fixes.

2006-10-12  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/msi/msi_Es.rc:
	msi: Updated Spanish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Es.rc:
	wldap32: Added Spanish translation.

	* dlls/mshtml/Es.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Spanish translation.

2006-10-11  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/user/sysparams.c:
	user32: SPI_GETFONTSMOOTHINGORIENTATION and SPI_SETFONTSMOOTHINGORIENTATION
	are kown actions.

2006-10-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Make internal functions static.

	* dlls/crypt32/chain.c:
	crypt32: Make an internal function static.

	* dlls/comctl32/listview.c, dlls/comctl32/propsheet.c:
	comctl32: Make internal functions static.

	* dlls/gphoto2.ds/gphoto2_main.c:
	gphoto2.ds: Make an internal function static.

	* include/winbase.h, include/winreg.h:
	advapi32: Add missing declarations to the public headers.

	* dlls/advapi32/crypt_sha.c, dlls/advapi32/registry.c:
	advapi32: Make internal functions static.

2006-10-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/winnt.h:
	winedump: Cast-qual warnings fix (with thanks to Dmitry Timoshkov and Eric
	Pouech).

	* tools/winebuild/import.c:
	winebuild: Cast-qual warning fix.

2006-10-11  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/ws2_32/socket.c:
	winsock: Add mapping for SO_ACCEPTCONN.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Test transforms removing a row in a table.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Tests for transforms modifying rows in a table.

	* dlls/msi/table.c:
	msi: An empty string table entry should always have a zero refcount.

2006-10-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/gamma.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge GAMMARAMP types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge VIEWPORT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge MATERIAL types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge LIGHT types into one type in WINED3D namespace.

	* dlls/wined3d/wined3d_private.h:
	wined3d: TEXTUREFILTERTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDECLTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DQUERYTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c:
	wined3d: D3DTEXTURESTAGESTATETYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDEVTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: D3DFORMAT: Consistently use WINED3D namespace.

2006-10-10  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/tests/generated.c, dlls/kernel32/tests/generated.c,
	  dlls/ntdll/tests/generated.c, dlls/rpcrt4/tests/generated.c,
	  dlls/shell32/tests/generated.c, dlls/shlwapi/tests/generated.c,
	  dlls/urlmon/tests/generated.c, dlls/user/tests/generated.c,
	  tools/winapi/tests.dat, tools/winapi/winapi_test:
	winapi_test: Regenerate tests.
	Remove structs from test list which have preprocessor directives in
	their definitions (winapi_test can't handle that).

2006-10-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the SourceDir and SOURCEDIR properties in the ResolveSource action.

	* dlls/msi/tests/package.c:
	msi: Clean up after the package tests.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msiquery.c:
	msi: Check transforms have the correct storage guid.

	* dlls/msi/tests/db.c:
	msi: Check that transforms return the correct data.

2006-10-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/spy.c, include/winuser.h:
	user: Add some missing messages to the message spy.

2006-10-10  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mlang/tests/Makefile.in, dlls/mlang/tests/mlang.c:
	mlang/tests: Win64 printf format warning fixes.

	* dlls/usp10/tests/Makefile.in, dlls/usp10/tests/usp10.c:
	usp10/tests: Win64 printf format warning fixes.

	* dlls/psapi/tests/Makefile.in, dlls/psapi/tests/psapi_main.c:
	psapi/tests: Win64 printf format warning fixes.

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/tests/schannel.c,
	  dlls/secur32/tests/secur32.c:
	secur32/tests: Win64 printf format warning fixes.

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Format warning fixes.

	* programs/wordpad/wordpad.c:
	wordpad: Format warning fixes.

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gamma.c, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/palette.c, dlls/ddraw/parent.c,
	  dlls/ddraw/surface.c, dlls/ddraw/texture.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c:
	ddraw: Win64 printf format warning fixes.

	* dlls/d3d9/tests/surface.c:
	d3d9: Disable the surface pitch size test for now, just check alignment instead.

2006-10-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: WinME sometimes returns short filenames.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Be more verbose and aware of root directory.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: More checks for various LZOpenFile[AW] operations on existing files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Non-op cosmetics for LZOpenFile[AW] operations.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Test more last errors set by LZOpenFile[AW].

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/tests/Makefile.in, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw/tests: Win64 printf format warning fixes.

	* dlls/d3d9/Makefile.in, dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Win64 printf format warning fixes.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/d3d8_main.c,
	  dlls/d3d8/tests/device.c:
	d3d8/tests: Win64 printf format warning fixes.

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Win64 printf format warning fixes.

	* dlls/wined3d/baseshader.c:
	wined3d: Improve shader_dump_decl_usage() TRACEs.

2006-10-10  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/query.c:
	wined3d: Corrected names in checkGLcall text.

2006-10-10  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Fix for DDSURFACEDESC param in CreateSurface.

2006-10-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.l:
	widl: Cast-qual warning fix.

2006-10-10  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/shreg.c:
	shlwapi: Cast-qual warnings fix.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Fix Win64 printf format warnings.

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/cond.y, dlls/msi/custom.c,
	  dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/font.c, dlls/msi/format.c, dlls/msi/helpers.c,
	  dlls/msi/install.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/source.c, dlls/msi/upgrade.c:
	msi: Merge action.h into msipriv.h.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Make msi_makestring static.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmime/Makefile.in, dlls/dmime/audiopath.c, dlls/dmime/dmutils.c,
	  dlls/dmime/graph.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/patterntrack.c, dlls/dmime/performance.c,
	  dlls/dmime/segment.c, dlls/dmime/segmentstate.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Win64 printf format warning fixes.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/locale.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/sync.c, dlls/kernel32/tests/thread.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Win64 printf format warning fixes.

2006-10-08  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/input.c:
	user: Add test for LL mouse hook and [Get|Set]CursorPos.

2006-10-09  Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>

	* programs/regedit/edit.c, programs/regedit/regedit.c:
	programs/regedit: Fix format specifiers for _stscanf and fprintf.

2006-10-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP dest modifier related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP source modifier-related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP_REG structures into the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h,
	  include/wine/wined3d_types.h:
	wined3d: Move D3DSP DCL-related structures into WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSPR structure into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSIO structure into WINED3D namespace.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/nls/winerr_enu.mc:
	kernel32: Fix typos in English messages.

2006-10-09  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/db.c,
	  dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi/tests: Win64 printf format warning fixes.

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/devinst.c,
	  dlls/setupapi/tests/parser.c, dlls/setupapi/tests/query.c,
	  dlls/setupapi/tests/stringtable.c:
	setupapi/tests: Win64 printf format warning fixes.

	* dlls/uxtheme/tests/Makefile.in:
	uxtheme: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/itss/chm_lib.c, dlls/itss/lzx.c, dlls/msvcrt/tests/file.c,
	  dlls/oleaut32/ungif.c, dlls/winmm/winenas/audio.c, libs/wpp/ppl.l,
	  libs/wpp/wpp.c, programs/taskmgr/perfdata.c:
	janitorial: Remove remaining NULL checks before free() (found by Smatch).

	* tools/widl/parser.y, tools/winedump/msmangle.c, tools/winedump/search.c,
	  tools/winedump/symbol.c, tools/wmc/write.c, tools/wrc/parser.y:
	tools: Remove redundant NULL checks before free() (found by Smatch).

	* server/atom.c, server/change.c, server/console.c, server/hook.c,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/thread.c, server/token.c, server/window.c:
	server: Remove redundant NULL check before free() (found by Smatch).

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix a memory leak.

	* dlls/msi/msiquery.c:
	msi: Avoid an unnecessary strdup.

	* dlls/msi/table.c:
	msi: Avoid reading the transform table data twice.

	* dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi: Fix handle leaks in the test cases.

	* dlls/msi/appsearch.c, dlls/msi/custom.c, dlls/msi/database.c:
	msi: Fix memory leaks and bad frees.

2006-10-10  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2006-10-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/directx.c:
	wined3d: Fix DEBUG_SINGLE_MODE.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: NULL-terminate dst on error.

	* dlls/msi/appsearch.c:
	msi: Add missing sizeof(WCHAR) multiplier.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_deu.mc:
	kernel32: Added German translation of messages.

	* dlls/kernel32/nls/deu.nls:
	kernel32: Translated some more NLS strings to German.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound/tests: Win64 printf format warning fixes.

	* dlls/dplayx/Makefile.in, dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c:
	dplayx: Win64 printf format warning fixes.

	* dlls/avifil32/Makefile.in, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c:
	avifil32: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mapi32/Makefile.in, dlls/mapi32/imalloc.c,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/prop.c,
	  dlls/mapi32/sendmail.c, dlls/mapi32/util.c:
	mapi32: Win64 printf format warning fixes.

	* dlls/version/tests/Makefile.in, dlls/version/tests/info.c,
	  dlls/version/tests/install.c:
	version/tests: Win64 printf format warning fixes.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c:
	mlang: Win64 printf format warning fixes.

	* dlls/dmcompos/Makefile.in, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/signposttrack.c:
	dmcompos: Win64 printf format warning fixes.

	* dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Win64 printf format warning fixes.

	* dlls/mcicda/Makefile.in, dlls/mcicda/mcicda.c:
	mcicda: Win64 printf format warning fixes.

	* dlls/odbc32/Makefile.in, dlls/odbc32/proxyodbc.c:
	odbc32: Win64 printf format warning fixes.

2006-10-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_ADDSTRING from resources for a NUL delimiter.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge AddButtonsA and AddButtonsW into AddButtonsT.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create the tooltip control during WM_MOUSEMOVE so that the
	NM_TOOLTIPSCREATE is not sent too early.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Move add/remove/setrect tooltip code to separate functions.

2006-10-09  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Implement ITypeInfo_CreateInstance.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/main.c:
	ddraw: Remove the process counter.

	* dlls/ddraw/main.c:
	ddraw: Protect the ddraw list.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Make the ddraw list a wine list.

2006-10-09  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Don't crash if a colour isn't found.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Make internal functions static.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make the shader mode selections per device.

2006-10-07  Nick Burns <adger44@hotmail.com>

	* tools/winegcc/winegcc.c:
	winegcc: __stdcall__ and __cdecl__ defined safely for Mac OSX.

	* include/msvcrt/process.h:
	msvcrt/process.h: __stdcall__ defined safely for Mac OSX.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/device.c,
	  dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9/tests: Printf format fixes for d3d9 tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Make d3d9 tests Wcast-qual compliant.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Remove unused device parameter.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Add init/teardown handlers for state tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Clean up get/set handler arguments.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/misc.c:
	user32: Return a fake device notification handle in RegisterDeviceNotificationA.

	* dlls/msxml3/Makefile.in, dlls/msxml3/version.rc:
	msxml3: Add a version resource.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/brush.c,
	  dlls/winex11.drv/clipboard.c, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/keyboard.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/scroll.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xdnd.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrender.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11drv: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/ptrace.c:
	server: Cast-qual warning fix.

2006-10-09  James Hawkins <truiken@gmail.com>

	* include/msi.h, include/msiquery.h:
	msi: Add missing declarations to the public headers.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/custom.c,
	  dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/install.c,
	  dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/registry.c, dlls/msi/select.c:
	msi: Make internal functions static.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Perform button control events in greatest to least order.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc:
	uninstaller: Fix Polish translation.

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* programs/clock/Pl.rc:
	clock: Update Polish translation.

	* programs/notepad/Pl.rc:
	notepad: Update Polish translation.

	* programs/progman/Pl.rc, programs/progman/rsrc.rc:
	progman: Add Polish translation.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmscript/Makefile.in, dlls/dmscript/dmscript_main.c,
	  dlls/dmscript/script.c, dlls/dmscript/scripttrack.c:
	dmscript: Win64 printf format warning fixes.

	* dlls/rasapi32/Makefile.in, dlls/rasapi32/rasapi.c:
	rasapi32: Win64 printf format warning fixes.

	* dlls/rsaenh/Makefile.in, dlls/rsaenh/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/dswave/Makefile.in, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c:
	dswave: Win64 printf format warning fixes.

	* dlls/dpnet/Makefile.in, dlls/dpnet/address.c, dlls/dpnet/client.c,
	  dlls/dpnet/dpnet_main.c:
	dpnet: Win64 printf format warning fixes.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Win64 printf format warning fixes.

	* dlls/qcap/Makefile.in, dlls/qcap/capturegraph.c, dlls/qcap/enummedia.c,
	  dlls/qcap/enumpins.c, dlls/qcap/pin.c, dlls/qcap/v4l.c,
	  dlls/qcap/vfwcapture.c:
	qcap: Win64 printf format warning fixes.

	* dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/access.c,
	  dlls/netapi32/tests/apibuf.c, dlls/netapi32/tests/ds.c,
	  dlls/netapi32/tests/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/version/Makefile.in, dlls/version/info.c, dlls/version/install.c,
	  dlls/version/resource.c, dlls/version/ver16.c:
	version: Win64 printf format warning fixes.

	* dlls/uxtheme/Makefile.in, dlls/uxtheme/draw.c, dlls/uxtheme/main.c,
	  dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Win64 printf format warning fixes.

	* dlls/wintab32/Makefile.in, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c:
	wintab32: Win64 printf format warning fixes.

	* dlls/d3dxof/Makefile.in, dlls/d3dxof/d3dxof.c:
	d3dxof: Win64 printf format warning fixes.

	* dlls/vmm.vxd/Makefile.in, dlls/vmm.vxd/vmm.c:
	vmm.vxd: Win64 printf format warning fixes.

	* dlls/dmsynth/Makefile.in, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Win64 printf format warning fixes.

	* dlls/ws2_32/tests/Makefile.in, dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Win64 printf format warning fixes.

	* dlls/pstorec/Makefile.in, dlls/pstorec/pstorec.c:
	pstorec: Win64 printf format warning fixes.

	* dlls/wsock32/Makefile.in, dlls/wsock32/service.c, dlls/wsock32/socket.c:
	wsock32: Win64 printf format warning fixes.

	* dlls/devenum/Makefile.in, dlls/devenum/createdevenum.c,
	  dlls/devenum/devenum_main.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c:
	devenum: Win64 printf format warning fixes.

	* dlls/msrle32/Makefile.in, dlls/msrle32/msrle32.c:
	msrle32: Win64 printf format warning fixes.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/access.c,
	  dlls/imagehlp/integrity.c, dlls/imagehlp/modify.c:
	imagehlp: Win64 printf format warning fixes.

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20/tests: Win64 printf format warning fixes.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the DDSCAPS2_MIPMAPSUBLEVEL flag on sublevels.

2006-10-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/rsaenh/tests/Makefile.in, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Make hmac test run on all windows versions.

	* dlls/msi/tests/install.c:
	msi: Make tests run on Win98 again.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add ddeml.dll to fake dlls.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/Makefile.in, dlls/dinput/device.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shelllink.c,
	  dlls/shell32/tests/shellpath.c, dlls/shell32/tests/shlexec.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shell32/tests/shlfolder.c:
	shell32/tests: Win64 printf format warning fixes.

	* dlls/shell32/Makefile.in, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanelfolder.c,
	  dlls/shell32/dataobject.c, dlls/shell32/debughlp.c,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/folders.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellstring.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfolder.c, dlls/shell32/shlfsbind.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shlview.c,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c:
	shell32: Win64 printf format warning fixes.

2006-10-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/tests/Makefile.in, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c:
	user/tests: Win64 printf format warning fixes.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dxerr8/Makefile.in, dlls/dxerr8/dxerr8.c:
	dxerr8: Win64 printf format warning fixes.

	* dlls/olecli32/Makefile.in, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli_main.c:
	olecli32: Win64 printf format warning fixes.

	* dlls/dxerr9/Makefile.in, dlls/dxerr9/dxerr9.c:
	dxerr9: Win64 printf format warning fixes.

	* dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr_main.c:
	olesvr32: Win64 printf format warning fixes.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/filtergraph.c,
	  dlls/quartz/tests/memallocator.c:
	quartz/tests: Win64 printf format warning fixes.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Win64 printf format warning fixes.

	* dlls/psapi/Makefile.in, dlls/psapi/psapi_main.c:
	psapi: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/iphlpapi/Makefile.in, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/iphlpapi/tests/Makefile.in, dlls/iphlpapi/tests/iphlpapi.c:
	iphlpapi: Win64 printf format warning fixes.

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/ole2.c:
	ole32: Don't fail in OleCreate if created object doesn't implement
	IRunnableObject or IOleChache.

2006-10-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Move NULL check before use (Coverity).

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/misc.c, dlls/mshtml/tests/protocol.c:
	mshtml: Win64 printf format warning fixes.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Win64 printf format warning fixes.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/shlwapi/tests/path.c,
	  dlls/shlwapi/tests/shreg.c, dlls/shlwapi/tests/string.c:
	shlwapi/tests: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winefile/winefile.c:
	winefile: Cast-qual warnings fix.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winebrowser/main.c:
	winebrowser: Cast-qual warnings fix.

	* programs/wineboot/wineboot.c:
	wineboot: Cast-qual warning fix.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/shlwapi_main.c:
	shlwapi: Update info in DllGetVersion.

2006-10-07  Mike McCormack <mike@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c:
	d3d8: Don't crash if d3d8 can't be loaded.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in PersistStorage_InitNew.

	* dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shlexec.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/trash.c:
	janitorial: Remove redundant NULL checks before SHFree.

	* dlls/devenum/devenum_main.c, dlls/devenum/parsedisplayname.c,
	  dlls/msdmo/dmort.c, dlls/oleaut32/usrmarshal.c,
	  dlls/qcap/enummedia.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtermapper.c:
	janitorial: Remove redundant NULL checks before CoTaskMemFree (found by Smatch).

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Win64 printf format warning fixes.

2006-10-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/Makefile.in, dlls/atl/atl_main.c, dlls/atl/registrar.c:
	atl: Win64 printf format warning fixes.

	* dlls/wnaspi32/Makefile.in, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/winaspi16.c, dlls/wnaspi32/winaspi32.c:
	wnaspi32: Win64 printf format warning fixes.

	* dlls/wtsapi32/Makefile.in, dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Win64 printf format warning fixes.

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/mediastream.c:
	amstream: Win64 printf format warning fixes.

	* dlls/vwin32.vxd/Makefile.in, dlls/vwin32.vxd/vwin32.c:
	vwin32.vxd: Win64 printf format warning fixes.

	* dlls/serialui/Makefile.in, dlls/serialui/confdlg.c:
	serialui: Win64 printf format warning fixes.

	* dlls/winemp3.acm/Makefile.in, dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Win64 printf format warning fixes.

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/dxdiag_main.c, dlls/dxdiagn/provider.c:
	dxdiagn: Win64 printf format warning fixes.

	* dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/dscapture.c, dlls/winmm/wineoss/dsrender.c,
	  dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c:
	winmm/wineoss: Win64 printf format warning fixes.

	* dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c:
	winmm/winealsa: Win64 printf format warning fixes.

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winmm/winearts: Win64 printf format warning fixes.

	* dlls/winmm/winenas/Makefile.in, dlls/winmm/winenas/audio.c:
	winmm/winenas: Win64 printf format warning fixes.

	* dlls/winmm/wineesd/Makefile.in, dlls/winmm/wineesd/audio.c:
	winmm/wineesd: Win64 printf format warning fixes.

	* dlls/winmm/winejack/Makefile.in, dlls/winmm/winejack/audio.c:
	winmm/winejack: Win64 printf format warning fixes.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/drive.c:
	winecfg: Cast-qual warnings fix.

2006-10-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XInitThreads another chance.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warnings fix.

2006-10-06  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add support for cached client credentials.

2006-10-06  Paul Chitescu <paulc@voip.null.ro>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mscoree/Makefile.in, dlls/mscoree/mscoree.spec,
	  dlls/mscoree/mscoree_main.c:
	mscoree: Initial stub implementation.

2006-10-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c:
	dmloader: Modify the debugstr_DMUS_* functions to return strings that never
	end with a '\n'.

	* dlls/oleaut32/variant.c, dlls/usp10/usp10.c, dlls/wintab32/context.c:
	Tweak TRACE()s to simplify '\n' checks.

	* dlls/wined3d/directx.c:
	wined3d: Fix '\n' typo.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation of ScriptStringValidate.

	* dlls/shlwapi/Makefile.in, dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c,
	  dlls/shlwapi/istream.c, dlls/shlwapi/msgbox.c,
	  dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/regstream.c, dlls/shlwapi/shlwapi_main.c,
	  dlls/shlwapi/stopwatch.c, dlls/shlwapi/string.c,
	  dlls/shlwapi/thread.c, dlls/shlwapi/url.c:
	shlwapi: Win64 printf format warning fixes.

2006-10-05  Christopher GAUTIER <krys@via.ecp.fr>

	* dlls/wined3d/surface.c:
	wined3d: Disable GL_REGISTER_COMBINERS_NV (if supported) in
	IWineD3DSurfaceImpl_BltOverride.

2006-10-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Make msi_dialog_dup_property return a copy of the property if the property
	is empty.

	* dlls/ddraw/device.c:
	ddraw: Set lplpDirect3DViewport3 to NULL before returning an error (found
	by Smatch).

	* dlls/dinput/mouse.c:
	dinput: Call missing LeaveCriticalSection in the error case (found by Smatch).

	* dlls/dbghelp/msc.c:
	dbghelp: Remove redundant NULL checks before pdb_free (found by Smatch).

	* dlls/advapi32/service.c:
	advapi32: Remove redundant NULL check before SERV_free (found by Smatch).

	* dlls/crypt32/protectdata.c:
	crypt32: Remove redundant NULL checks before CryptMemFree (found by Smatch).

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/install.c, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/nsservice.c, dlls/mshtml/olecmd.c, dlls/mshtml/oleobj.c,
	  dlls/mshtml/persist.c, dlls/mshtml/protocol.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Win64 printf format warning fixes.

2006-10-06  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/comboex.c:
	comctl32: Return the correct value for CB_GETLBTEXTLEN.

	* dlls/msi/table.c:
	msi: Fix transform traces.

	* dlls/msi/table.c:
	msi: Work around what appears to be a bug in native MSI's generation of
	transform data.

	* dlls/msi/table.c:
	msi: Transform the _Columns and _Tables tables first so the table metadata is
	present for new tables.

	* dlls/msi/table.c:
	msi: Handle null integers properly in transforms.

2006-10-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/cabinet/tests/extract.c:
	cabinet: Make tests run on Win98 again.

	* dlls/advpack/tests/files.c:
	advpack: Make tests run on Win98 again.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/protectdata.c:
	crypt32: Cast-qual warnings fix.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Pitch alignment for the pow2Size.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Define the surface alignment in the header.

	* dlls/wined3d/surface.c:
	wined3d: Honor the pitch in a few more places.

	* dlls/wined3d/surface.c:
	wined3d: No color keying on surfaces with an alpha channel.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DUSAGE_OVERLAY.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::UpdateOverlay.

	* include/wine/wined3d_types.h:
	wined3d: Add DDOVERLAYFX struct.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add UpdatOverlayZOrder.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetOverlayPosition.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::SetOverlayPosition.

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/regsvr.c,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/view.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Win64 printf format warning fixes.

2006-10-05  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add d3d9 to fake dlls.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/tests/Makefile.in, dlls/cabinet/tests/extract.c:
	cabinet/tests: Win64 printf format warning fixes.

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c:
	iccvid: Win64 printf format warning fixes.

	* dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/time.c:
	msvcrt/tests: Win64 printf format warning fixes.

	* dlls/msdmo/Makefile.in, dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c:
	msdmo: Win64 printf format warning fixes.

	* dlls/comcat/tests/Makefile.in, dlls/comcat/tests/comcat.c:
	comcat/tests: Win64 printf format warning fixes.

	* dlls/msacm32/tests/Makefile.in, dlls/msacm32/tests/msacm.c:
	msacm32/tests: Win64 printf format warning fixes.

	* dlls/powrprof/Makefile.in, dlls/powrprof/powrprof.c:
	powrprof: Win64 printf format warning fixes.

	* dlls/comdlg32/tests/Makefile.in, dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Win64 printf format warning fixes.

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvideo1.c:
	msvidc32: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/http.c:
	wininet/tests: Cast-qual warning fix.

2006-10-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/opengl_ext.h, include/wine/wgl.h:
	x11drv: Fix building issue.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Correctly name a variable.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/comctl32/comctl_Nl.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/wineps.drv/wps_Nl.rc:
	Don't use utf-8 in rc files.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/crypt32_Fr.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/hhctrl.ocx/Fr.rc, dlls/winspool.drv/Fr.rc,
	  programs/oleview/Fr.rc:
	French rc files must be encoded in iso-8859-1, not utf-8.

2006-10-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11.drv: Make all windows moveable by default.

2006-10-05  Paul Chitescu <paulc@voip.null.ro>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec:
	netapi: Stub for DsGetDcNameA.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/bind.c:
	wldap32: Cast-qual warnings fix.

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Cast-qual warnings fix.

	* dlls/mscms/profile.c:
	mscms: Cast-qual warnings fix.

	* dlls/mscms/transform.c:
	mscms: Document the transform functions.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/atl/registrar.c, dlls/avicap32/avicap32_main.c,
	  dlls/comctl32/tab.c, dlls/comdlg32/printdlg.c, dlls/crypt32/main.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/pixelshader.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/device.c, dlls/ddraw/main.c, dlls/dmstyle/style.c,
	  dlls/gdi/freetype.c, dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/util.c, dlls/msvfw32/msvideo_main.c,
	  dlls/netapi32/netbios.c, dlls/oleaut32/olepicture.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/secur32/ntlm.c,
	  dlls/setupapi/devinst.c, dlls/shlwapi/ordinal.c, dlls/urlmon/umon.c,
	  dlls/user/scroll.c, dlls/uxtheme/system.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/winmm/winealsa/audio.c, programs/cmdlgtst/cmdlgtst.c,
	  programs/winecfg/driveui.c, programs/winecfg/libraries.c,
	  programs/winecfg/theme.c, programs/winecfg/x11drvdlg.c,
	  programs/wineconsole/curses.c, programs/winedbg/types.c:
	Add missing '\n's to Wine traces.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Correct the documentation.

	* dlls/crypt32/sip.c:
	crypt32: Change function declaration to overcome some cast-qual warnings in
	future patches.

	* dlls/crypt32/sip.c:
	crypt32: Move some defines to the top as they will be needed in more functions.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/dinput/dinput_main.c:
	dinput: Only register the window class once to avoid race conditions.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/Makefile.in, dlls/wininet/cookie.c, dlls/wininet/dialogs.c,
	  dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c, dlls/wininet/urlcache.c,
	  dlls/wininet/utility.c:
	wininet: Win64 printf format warning fixes.

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c,
	  dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Win64 printf format warning fixes.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/sysparams.c:
	user/tests: It is perfectly valid for some sysparams registry fields
	to not be set if they have their default value. This is the case on
	Windows for instance.

	* programs/oleview/typelib.c:
	oleview: Fix the placement of a '\n'.

	* dlls/d3d8/device.c:
	d3d8: Fix '\n' typo.

	* programs/winecfg/driveui.c:
	winecfg: Remove unneeded memset() calls.

	* dlls/shell32/shlview.c:
	shell32: Don't forget to set stateMask when calling LVM_GETITEM/LVIF_STATE.
	Remove ZeroMemory() calls and instead set iSubItem = 0 manually.

	* dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Remove ZeroMemory() calls and instead set the relevant fields
	(usually just iSubItem) to zero manually.

	* programs/taskmgr/dbgchnl.c, programs/taskmgr/debug.c,
	  programs/taskmgr/endproc.c, programs/taskmgr/priority.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Remove ZeroMemory() calls and instead set the relevant fields (usually
	just iSubItem) to zero manually.

	* programs/winecfg/appdefaults.c:
	winecfg: Remove ZeroMemory() calls and instead set iSubItem = 0 manually.
	Fix on_selection_change() and on_remove_app_click() so they do set iSubItem = 0.

	* include/commctrl.h, include/winuser.h:
	include: Add new Vista SDK constants and structures.

2006-10-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c, dlls/user/message.c, dlls/user/user_private.h:
	user32: Pass hook handle to the destination thread.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/hook.c, include/wine/server_protocol.h, server/hook.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Changed the get_next_hook request to allow retrieving the current
	hook too.

	* dlls/user/hook.c, dlls/user/user_private.h,
	  include/wine/server_protocol.h, server/hook.c, server/protocol.def,
	  server/trace.c:
	user32: Store the prev_unicode hook flag on the client side.

2006-10-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/dde.c:
	user/tests: Cast-qual warnings fix.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/node.c,
	  dlls/msxml3/parseerror.c:
	msxml3: Win64 printf format warning fixes.

	* dlls/midimap/Makefile.in, dlls/midimap/midimap.c:
	midimap: Win64 printf format warning fixes.

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/main.c:
	cfgmgr32: Win64 printf format warning fixes.

	* dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.c:
	msg711.acm: Win64 printf format warning fixes.

	* dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Win64 printf format warning fixes.

	* dlls/msadp32.acm/Makefile.in, dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Win64 printf format warning fixes.

	* dlls/usp10/Makefile.in, dlls/usp10/usp10.c:
	usp10: Win64 printf format warning fixes.

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Win64 printf format warning fixes.

2006-10-05  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Return some fake data in FindActCtxSectionStringW.

	* dlls/msi/table.c:
	msi: Only ignore the StringPool and StringData in a transform.

	* dlls/msi/table.c:
	msi: Only declare the szStringData and szStringPool strings once.

	* dlls/msi/table.c:
	msi: Remove an unused variable.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/appsearch.c,
	  dlls/msi/custom.c, dlls/msi/database.c, dlls/msi/dialog.c,
	  dlls/msi/files.c, dlls/msi/format.c, dlls/msi/insert.c,
	  dlls/msi/msi.c, dlls/msi/msiquery.c, dlls/msi/package.c,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/source.c,
	  dlls/msi/suminfo.c, dlls/msi/table.c, dlls/msi/upgrade.c:
	msi: Win64 printf format warning fixes.

	* dlls/msi/tests/db.c:
	msi: Check that transforms preserve tables.

2006-10-05  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Don't crash when setting CRYPT_KEY_PROV_INFO with empty names.

2006-10-04  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Fix typo in trace.

2006-10-04  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/Fr.rc:
	oleview: Updated French translation.

	* programs/regedit/Fr.rc:
	regedit: Updated French translation.

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/winspool.drv/Pl.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Polish translation.

	* programs/taskmgr/Pl.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Add Polish translation.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Fixed typo in serial.c.

	* dlls/user/win.c, include/win.h, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user32: The per-window user data must be a DWORD_PTR.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	server: Rearrange a few fields to avoid wasting padding space on 64 bits.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Win64 printf format warning fixes.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertVerifyValidityNesting.

2006-10-04  James Hawkins <truiken@gmail.com>

	* dlls/user/dialog.c:
	user: Add missing sizeof(WCHAR) multiplier.

2006-10-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/register.c, dlls/wintrust/wintrust_main.c:
	wintrust: Win64 printf format warning fixes.

	* dlls/crypt32/tests/sip.c:
	crypt32: More tests for CryptSIPLoad.

2006-10-04  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/infosoft/Makefile.in, dlls/infosoft/wordbreaker.c:
	infosoft: Win64 printf format warning fixes.

	* dlls/ifsmgr.vxd/Makefile.in, dlls/ifsmgr.vxd/ifsmgr.c:
	ifsmgr.vxd: Win64 printf format warning fixes.

	* dlls/comcat/Makefile.in, dlls/comcat/information.c:
	comcat: Win64 printf format warning fixes.

	* dlls/activeds/Makefile.in, dlls/activeds/activeds_main.c:
	activeds: Win64 printf format warning fixes.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/mscms_priv.h:
	mscms: Restore the preprocessor hack.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Pass the data for message callbacks as vararg from the client side.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c:
	server: Return the data for callback results in the varargs part of the
	get_message request.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Return the data for winevent hooks in the varargs part of the get_message
	request.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Only apply the last font style in the list of styles.

	* dlls/msi/events.c:
	msi: Handle the SelectionBrowse event using ControlEvent_SpawnDialog.

	* dlls/msi/dialog.c:
	msi: Subscribe the SelectionTree control to the SelectionPath event.

	* dlls/msi/dialog.c:
	msi: Store the selected item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Publish the SelectionDescription and SelectionPath events when the
	selection changes in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Properly initialize the SelectionTree control's attributes and property
	values.

	* dlls/msi/events.c:
	msi: Publish the SelectionPath event in the SetTargetPath event.

	* dlls/msi/action.h, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Provide a specific dialog to ControlEvent_SubscribeToEvent, as
	package->dialog does not always point to the same dialog.

	* dlls/msi/dialog.c:
	msi: Select the first item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Empty the window text if no text is provided.

	* dlls/msi/dialog.c:
	msi: Assign the property to path if the property is empty.

	* dlls/msi/dialog.c:
	msi: Don't ERR if a dialog doesn't provide control conditions, as they are
	not required.

	* dlls/msi/dialog.c:
	msi: Add missing '\n' to TRACE output.

2006-10-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	x11drv: Fix wgl pixel format bug.

	* dlls/gdi/driver.c, dlls/gdi/gdi32.spec, dlls/gdi/gdi_private.h,
	  dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL font code through gdi32.dll.

	* dlls/gdi/Makefile.in, dlls/gdi/driver.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL context code through gdi32.dll.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: Make the user backend work on non-latin1 locales.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Move some common code into one function.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c, dlls/crypt32/cert.c,
	  dlls/crypt32/context.c, dlls/crypt32/crl.c, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/proplist.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/sip.c, dlls/crypt32/store.c, dlls/crypt32/str.c:
	crypt32: Win64 printf format warning fixes.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CryptAcquireContextU to CryptAcquireContextW.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/capi2032/cap20wxx.c:
	capi: Fix compiler warnings.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* tools/wine.inf:
	wine.inf: Add some more fake binaries.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Set the TVIF_TEXT mask when notifying the parent window of a
	selection change.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/win32s16.c:
	w32skrnl: Win64 printf format warning fixes.

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss_main.c:
	spoolss: Win64 printf format warning fixes.

	* dlls/query/Makefile.in, dlls/query/query_main.c:
	query: Win64 printf format warning fixes.

	* dlls/oleacc/Makefile.in, dlls/oleacc/main.c:
	oleacc: Win64 printf format warning fixes.

	* dlls/newdev/Makefile.in, dlls/newdev/main.c:
	newdev: Win64 printf format warning fixes.

	* dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c:
	nddeapi: Win64 printf format warning fixes.

	* dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c:
	localspl/tests: Win64 printf format warning fixes.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/main.c:
	hhctrl.ocx: Win64 printf format warning fixes.

	* dlls/d3dx8/Makefile.in, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Win64 printf format warning fixes.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: Win64 printf format warning fixes.

	* dlls/cards/Makefile.in, dlls/cards/cards.c:
	cards: Win64 printf format warning fixes.

	* dlls/msvcrt/Makefile.in, dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/locale.c, dlls/msvcrt/main.c:
	msvcrt: Win64 printf format warning fixes.

2006-09-22  Elie Morisse <lachienne@wanadoo.fr>

	* dlls/ddraw/surface.c:
	ddraw: Don't destroy complex attached surfaces even if explicitely
	requested as they will be liquidated anyway when the root is
	destroyed.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Include wine/port.h for strcasecmp.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Replace bad use of sprintf by 2 strcats.

	* dlls/ntdll/tests/exception.c:
	ntdll: More tests for exception handling.
	- Check if we really set the debug register.
	- Added unaligned access exception check.
	- Added single step exception check.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Make it clearer where alg ids come from in
	CryptVerifyCertificateSignatureEx.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Win64 printf format warning fixes.

2006-10-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented AmILastThread information class for NtQueryInformationThread.

	* programs/winedbg/source.c:
	winedbg: Rewrote the file handling to use SearchPath instead of home grown
	version.

2006-09-30  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/comm.c, dlls/ntdll/serial.c:
	ntdll-kernel32: WaitCommEvent.
	- implemented IOCTL_SERIAL_WAIT_ON_MASK for DeviceIoControl
	on serial lines in ntdll
	- now using thread pool (instead of simple thread) for the
	background operations (this should help some high load
	situations)
	- used this to implement WaitCommEvent on top NtDll functions
	- in kernel32, removed now the no longer used termios/ioctls...
	for comm devices

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Fix LVM_GETITEM/LVIF_STATE so it only returns the bits it
	has been asked for, and sets all the others to zero (with conformance
	test).

	* include/ntstatus.h:
	include: Add missing STATUS_CTX_ constants.

	* include/prsht.h:
	include: Add missing PSP_ constants.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Remove unnecessary casts.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Implement MsiDatabaseImport.

2006-10-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi.c,
	  dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Win64 printf format warning fixes.

2006-10-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use I_Rpc{Allocate, Free} instead of Heap{Alloc, Free} as that
	the former are exported by rpcrt4 seemingly to allow callers of tower
	functions to free the allocated memory.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: RpcBindingCopy is implemented.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't use HEAP_ZERO_MEMORY when most of the fields will be initialised
	to non-zero values.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Increase the time during which flush_events() waits for pending events.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Remove bogus tests.

2006-10-03  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shelllink.c:
	shell32: Microsoft's EXP_DARWIN_LINK structure does not have a dbh
	field so cast it to DATABLOCK_HEADER to access the dwSignature
	field. Fixes the compilation with Visual C++ on Windows.

	* dlls/urlmon/file.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c:
	urlmon: Fix spelling of the 'origin' parameter in the *Protocol_Seek() functions.

	* dlls/kernel32/thunk.c, dlls/ole32/tests/storage32.c,
	  dlls/shlwapi/path.c, tools/winapi/winapi_check_options.pm:
	Assorted spelling fixes.

	* dlls/kernel32/tests/path.c, dlls/ntdll/tests/info.c,
	  dlls/rsaenh/tests/rsaenh.c:
	Add missing '\n's to ok() calls.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Remove space before '\n'.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/tests/exception.c:
	ntdll: Make test_debug_regs() print the actual Dr7 value it got.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/Makefile.in, dlls/winedos/dma.c, dlls/winedos/dosaspi.c,
	  dlls/winedos/dosvm.c, dlls/winedos/int10.c, dlls/winedos/int13.c,
	  dlls/winedos/int1a.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int2f.c, dlls/winedos/int31.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/soundblaster.c,
	  dlls/winedos/vxd.c, dlls/winedos/xms.c:
	winedos: Win64 printf format warning fixes.

2006-10-03  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/user/cursoricon.c, include/winuser.h:
	user: Fix CopyImage function declaration.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Load "Save" string from resources in filedlgbrowser.c.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: Avoid trailing slash in find, it breaks tags on MacOS.

	* dlls/ntdll/file.c:
	ntdll: Added error mapping for ENXIO.

	* dlls/ntdll/directory.c, server/fd.c:
	ntdll: Implement FSCTL_DISMOUNT_VOLUME for MacOSX.

	* configure, configure.ac, programs/explorer/Makefile.in,
	  programs/explorer/desktop.c, programs/explorer/device.c,
	  programs/explorer/diskarb.c, programs/explorer/explorer_private.h,
	  programs/explorer/hal.c:
	explorer: Added dynamic drive support for MacOSX.

	* programs/explorer/device.c:
	explorer: Avoid repeated notifications on device removal.

	* programs/explorer/Makefile.in, programs/explorer/device.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Split the device management to a separate file to make it usable
	independently of HAL support.

2006-10-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed the auto mode.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Avoid retrieving the fd twice in WSAIoctl.

2006-10-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ws2_32/socket.c:
	ws2_32: Implemented FIONBIO and FIONREAD in WSAIoctl.

	* dlls/ntdll/signal_i386.c:
	ntdll: Clear alignment check flag before entering exception handler.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CryptSignAndEncodeCertificate.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove the unused IDD_DIALOG2.

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/framewnd.c, programs/regedit/resource.h:
	regedit: Add option to export only a specified branch.

	* programs/regedit/framewnd.c:
	regedit: Some import/export dialogs code cleanup.

2006-10-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Fr.rc:
	crypt32: Initial French translation.

2006-10-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/cursoricon.c, dlls/user/exticon.c, dlls/user/spy.c:
	user: Cast-qual warnings fix.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Win64 printf format warning fixes.

	* dlls/msi/appsearch.c, dlls/msi/tests/package.c:
	msi: Implement msidbLocatorTypeFileName in RegLocator searches.

2006-10-02  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winemenubuilder/Makefile.in,
	  programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Win64 printf format warning fixes.

	* programs/wineconsole/Makefile.in, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c:
	wineconsole: Win64 printf format warning fixes.

	* programs/rpcss/Makefile.in, programs/rpcss/np_server.c:
	rpcss: Win64 printf format warning fixes.

	* programs/oleview/Makefile.in, programs/oleview/typelib.c:
	oleview: Win64 'incompatible pointer type' warning fix.

	* programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	icinfo: Win64 printf format warning fixes.

	* programs/eject/Makefile.in, programs/eject/eject.c:
	eject: Win64 printf format warning fixes.

	* programs/cmdlgtst/Makefile.in, programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Win64 printf format warning fixes.

	* programs/winhelp/Makefile.in, programs/winhelp/hlpfile.c,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c:
	winhelp: Win64 printf format warning fixes.

	* programs/winecfg/Makefile.in, programs/winecfg/appdefaults.c,
	  programs/winecfg/drive.c, programs/winecfg/winecfg.c:
	winecfg: Win64 printf format warning fixes.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Win64 printf format warning fixes.

2006-10-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence common invalid QueryInterface FIXMEs.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Silence common invalid QueryInterface FIXME.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added begining implementation of IPersistStreamInit::Save.

	* dlls/mshtml/nsembed.c:
	mshtml: Code cleanup.

2006-10-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report the correct number of available 4-component float vectors
	for GLSL.

	* dlls/wined3d/pixelshader.c:
	wined3d: Explicitly enable the GL_ARB_draw_buffers extension in GLSL shaders.

2006-10-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix ITypeInfo::GetFuncDesc to return the correct information for
	dual dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut32: Make ITypeInfo::GetDocumentation work for functions/variables in
	inherited interfaces.

2006-10-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/tests/registry.c:
	advapi32: Make sure it's a real cleanup.

2006-10-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc:
	regedit: Fix some translated resources errors.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Ru.rc:
	winecfg: Fix a typo in Russian translation.

2006-09-28  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/tgt_active.c:
	winedbg: Don't try to read to invalid memory if winedbg does not find the thread.

	* dlls/ntdll/tests/info.c:
	ntdll: Add a test for NtReadVirtualMemory.

2006-09-29  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/tests/path.c:
	kernel32: Add 2 simple tests for GetLongPathNameW.

	* dlls/kernel32/path.c:
	kernel32: Print an error instead of crashing in GetLongPathNameW if shortpath=0.

2006-09-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/chain.c,
	  dlls/crypt32/tests/crl.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/protectdata.c, dlls/crypt32/tests/store.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Win64 printf format warning fixes.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Ignore VT_ERROR arguments to WebBrowser_Navigate2.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Return S_OK from WebBrowser_put_RegisterAsDropTarget.

2006-09-30  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Win64 printf fixes.

2006-09-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/bind.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c, dlls/wldap32/extended.c, dlls/wldap32/init.c,
	  dlls/wldap32/main.c, dlls/wldap32/misc.c, dlls/wldap32/page.c,
	  dlls/wldap32/parse.c, dlls/wldap32/search.c:
	wldap32: Win64 printf format warning fixes.

	* dlls/mscms/Makefile.in, dlls/mscms/mscms_main.c,
	  dlls/mscms/mscms_priv.h, dlls/mscms/profile.c, dlls/mscms/stub.c,
	  dlls/mscms/transform.c:
	mscms: Win64 printf format warning fixes.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/main.c, dlls/dnsapi/query.c:
	dnsapi: Win64 printf format warning fixes.

2006-09-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/class.c,
	  dlls/user/clipboard.c, dlls/user/combo.c, dlls/user/comm16.c,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_server.c, dlls/user/defwnd.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/hook.c,
	  dlls/user/input.c, dlls/user/listbox.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/nonclient.c, dlls/user/painting.c, dlls/user/resource.c,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/uitools.c, dlls/user/user16.c,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winstation.c:
	user: Win64 printf format warning fixes.

2006-09-29  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/resutils/Makefile.in, dlls/resutils/resutils.c,
	  dlls/resutils/resutils.spec:
	resutils: Implements stub dll for resutils.dll.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Added debug registers test case.

2006-09-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mswsock/mswsock.c:
	mswsock: More debug output in AcceptEx().

2006-10-02  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Improve get_nearest_charset().

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/tapi32/line.c:
	tapi32: Cast-qual warnings fix.

2006-10-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user/tests: Flush events before running mouse tests.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add a comment to ioctlsocket about 'bogus' ioctl 0x667e.

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Use a symbolic name instead of hand-made value.

2006-10-01  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field in shader opcode_arg.

2006-09-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/devenum/devenum.rc, dlls/winspool.drv/No.rc,
	  dlls/winspool.drv/winspool.rc, programs/cmdlgtst/No.rc,
	  programs/regedit/No.rc:
	Updated Norwegian Bokmål translations.

2006-10-02  Alexandre Julliard <julliard@winehq.org>

	* include/winsock.h:
	winsock: Make sure to include sys/types.h in all cases.

2006-09-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Print each 64-bit integers as two 32 bit integers.

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlfileop.c:
	shell32: Another cast-qual warning fix.

2006-09-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: import & export of a plaintext public key + algID check.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/Makefile.in, tools/winedump/debug.c, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/minidump.c, tools/winedump/ne.c,
	  tools/winedump/pe.c:
	winedump: Win64 printf format warning fixes.

	* tools/wrc/Makefile.in, tools/wrc/dumpres.c, tools/wrc/newstruc.c:
	wrc: Win64 printf format warning fixes.

	* server/Makefile.in, server/registry.c, server/trace.c:
	server: Win64 printf format warning fixes.

2006-09-29  Jason Green <jave27@gmail.com>

	* dlls/user/input.c, dlls/user/user32.spec:
	user32: Stub implementation of BlockInput.

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/riched20/tests/editor.c:
	riched20: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't return void values. This fixes Visual C++ warnings.

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Only perform the screen resolution changing tests in interactive mode.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fixed compilation in the nameless union case.

	* dlls/comctl32/tests/toolbar.c, dlls/rpcrt4/tests/cstub.c:
	Add missing '\n's to ok() calls.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Don't use state.buffer_size before it has been initialized.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c, dlls/shdocvw/navigate.c,
	  dlls/urlmon/binding.c, include/urlmon.idl:
	urlmon: Fix the case of the BINDINFO.cbstgmedData field. Fixes the htmldoc
	test compilation on Windows.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Fix comparefloat() so it compiles with Visual C++ when given a negative
	value.

	* tools/winapi/msvcmaker:
	msvcmaker: The msvcrt tests need '..' in the include path.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix invalid macro usage.

	* include/wincrypt.h:
	wincrypt: Fix the CERT_TRUST_PUB_AUTHENTICODE_FLAGS_VALUE_NAME declaration in
	the MSVC case.

	* include/security.h:
	secur32: Only include secext.h when asked to.

	* dlls/mshtml/tests/htmldoc.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shell32/tests/shlfolder.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c,
	  include/rpcndr.h:
	Fix rpcndr.h so it takes CONST_VTABLE into account.
	Define CONST_VTABLE in the tests that need it. This fixes many Visual C++
	warnings.

	* tools/widl/header.c:
	widl: Use CONST_VTBL to declare lpVtbl.

2006-09-28  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/tests/listview.c, dlls/crypt32/tests/sip.c,
	  dlls/oleaut32/ungif.c, dlls/setupapi/tests/devinst.c,
	  dlls/wined3d/surface.c, dlls/wined3d/vertexbuffer.c,
	  dlls/winex11.drv/opengl.c:
	Assorted spelling fixes.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avicap32/avicap32_main.c, dlls/compstui/compstui_main.c,
	  dlls/crtdll/crtdll_main.c, dlls/cryptdll/cryptdll.c,
	  dlls/cryptnet/cryptnet_main.c, dlls/dpnhpast/main.c,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/hlink/tests/hlink.c,
	  dlls/localspl/localspl_main.c, dlls/mmdevldr.vxd/mmdevldr.c,
	  dlls/monodebg.vxd/monodebg.c, dlls/mprapi/mprapi.c,
	  dlls/msisys.ocx/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msvcrtd/tests/debug.c, dlls/ntdsapi/ntdsapi.c,
	  dlls/odbccp32/odbccp32.c, dlls/oledlg/oledlg_main.c,
	  dlls/sane.ds/sane_main.c, dlls/sensapi/sensapi.c,
	  dlls/snmpapi/main.c, dlls/svrapi/svrapi_main.c,
	  dlls/twain_32/twain32_main.c, dlls/userenv/userenv_main.c,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/winmm/joystick/joystick.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/msiexec/msiexec.c,
	  programs/uninstaller/main.c, tools/widl/hash.c:
	"One liners" printf format warning fixes for the migration of DWORD/LONG/ULONG
	from long to int.

	* include/wine/debug.h, include/wine/test.h:
	debug.h, test.h: Temporary add ifdefs around some printfs to avoid format.

	* include/windef.h, include/winnt.h:
	include: Make DWORD/LONG/ULONG an int to use the same type in Win32 and Win64.

	* dlls/activeds/Makefile.in, dlls/advapi32/Makefile.in,
	  dlls/advapi32/tests/Makefile.in, dlls/advpack/Makefile.in,
	  dlls/advpack/tests/Makefile.in, dlls/amstream/Makefile.in,
	  dlls/atl/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/tests/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/Makefile.in, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/d3dxof/Makefile.in, dlls/dbghelp/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dpnet/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/gdi/tests/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/ifsmgr.vxd/Makefile.in, dlls/imaadp32.acm/Makefile.in,
	  dlls/imagehlp/Makefile.in, dlls/imm32/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/iphlpapi/Makefile.in,
	  dlls/iphlpapi/tests/Makefile.in, dlls/itss/Makefile.in,
	  dlls/kernel32/Makefile.in, dlls/kernel32/tests/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/msacm32/tests/Makefile.in, dlls/msadp32.acm/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mscms/tests/Makefile.in,
	  dlls/msdmo/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msrle32/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvfw32/Makefile.in,
	  dlls/msvidc32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/nddeapi/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/netapi32/tests/Makefile.in,
	  dlls/newdev/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ntdll/tests/Makefile.in, dlls/odbc32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/rsaenh/tests/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shdocvw/tests/Makefile.in,
	  dlls/shell32/Makefile.in, dlls/shell32/tests/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/spoolss/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/urlmon/Makefile.in, dlls/urlmon/tests/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/tests/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/uxtheme/tests/Makefile.in,
	  dlls/version/Makefile.in, dlls/version/tests/Makefile.in,
	  dlls/vmm.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/wined3d/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winemp3.acm/Makefile.in,
	  dlls/wineps.drv/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/wininet/tests/Makefile.in,
	  dlls/winmm/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/winspool.drv/tests/Makefile.in, dlls/wintab32/Makefile.in,
	  dlls/wintrust/Makefile.in, dlls/wintrust/tests/Makefile.in,
	  dlls/wldap32/Makefile.in, dlls/wnaspi32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  programs/cmdlgtst/Makefile.in, programs/eject/Makefile.in,
	  programs/icinfo/Makefile.in, programs/oleview/Makefile.in,
	  programs/rpcss/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winecfg/Makefile.in, programs/wineconsole/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winhelp/Makefile.in, server/Makefile.in,
	  tools/winedump/Makefile.in, tools/wrc/Makefile.in:
	Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of
	DWORD/LONG/ULONG from long to int.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h,
	  dlls/msi/preview.c:
	msi: Return to the parent dialog when the argument to the EndDialog event
	is Return.

2006-09-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shelllink.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shell32_main.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/pidl.c, dlls/shell32/regsvr.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/brsfolder.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix typo that confuses winapi_check.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't deadlock if GL init fails.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/winedump.man.in:
	winedump: Remove the shell script reference from the man-page.

2006-09-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Small fix in TOOLBAR_StyleChanged.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Set correcly hwndTrack in TrackMouseEvent call.

	* dlls/msvfw32/msvfw32_Pl.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Polish translation.

	* dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/gphoto2.ds/gphoto2_No.rc:
	gphoto2.ds: Use SS_CENTER to center a dialog string.

	* dlls/gphoto2.ds/gphoto2_Pl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Polish translation.

	* dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc:
	sane.ds: Use SS_CENTER to center a dialog string.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Pl.rc:
	sane.ds: Add Polish translation.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Fix a typo.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Correct signature checking.
	- pass desired key to encrypt_block_impl
	- don't change the alg id of imported keys
	- add a few traces

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/sip.c:
	crypt32: Added some CryptSIP stub implementations.

2006-09-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation and a test for ScriptLayout.

2006-09-28  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.22.

----------------------------------------------------------------
2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: StgOpenStorage on non-existent file should create it (with test).

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/string.c:
	shlwapi: Add size parameters to function that takes array arguments.

2006-09-27  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix RpcMgmtSetServerStackSize prototype.

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: A small test to verify when to write function pointers.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	localspl/tests: Add initial test.

2006-09-27  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/clusapi/Makefile.in, dlls/clusapi/clusapi.c,
	  dlls/clusapi/clusapi.spec:
	clusapi: Implement stub dll for clusapi.

2006-09-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Follow state resolution rules when a feature parent saves a component.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: A feature state of INSTALLSTATE_ABSENT translates into a component state
	of INSTALLSTATE_UNKNOWN.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertGetPublicKeyLength.

2006-09-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Make GdiFont a proper C structure, with GdiFont* being a pointer.

2006-09-27  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Align stack to 4 bytes.

2006-09-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl_main.c:
	localspl: Start implementation of InitializePrintMonitor.

2006-09-28  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

	* dlls/winmm/winmm_Ko.rc:
	winmm: Updated Korean resource.

2006-09-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Tell gl about the surface alignment.

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Cast-qual warnings fix.

	* dlls/secur32/secur32.c:
	secur32: Cast-qual warnings fix.

2006-09-27  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Don't return from CoRegisterClassObject until we have created the
	named pipe.
	Also don't fail if the client connects to the pipe between CreateNamedPipe
	and ConnectNamedPipe.

2006-09-27  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	include: Add types to objidl.idl used by COM contexts.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make sure to free the allocated vtable when the tmarshal proxy
	is released.

	* dlls/ole32/stg_stream.c:
	ole32: Check the return value of IStream_SetSize so as to not blindly continue
	on and possibly corrupt the structured storage file.

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid crashing in check_atl_thunk if an execution exception was raised
	with a bad address.

	* dlls/ntdll/virtual.c:
	ntdll: NtAllocateVirtual with type of MEM_WRITE_WATCH fails with
	STATUS_NOT_SUPPORTED on Win2000 instead of STATUS_INVALID_PARAMETER.

	* include/winnt.h:
	include: Add recently added PSDK VM flags to winnt.h.

2006-09-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi32: Modify kerning scaling algorithm to the one which appears to better
	match what Windows does.

2006-09-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c, dlls/mshtml/task.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Added get_readyState implementation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc, dlls/mshtml/resource.h,
	  dlls/mshtml/rsrc.rc:
	mshtml: Remove conflicts between resource.h and mshtmcid.h.

2006-09-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/hglobalstream.c:
	ole32/tests: Avoid using sizeof in a trace.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Don't test texture states beyond the supported maximum.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and fix TB_ADDSTRING from resource.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Fix typo in ResourceReleased.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Partly implement CryptSIPRetrieveSubjectGuid.

2006-09-27  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Fix some typos in error messages.

2006-09-27  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Read GL info and load constants into the same device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move device pointer into the BaseShader class.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec, include/dsgetdc.h:
	netapi32: Add stubs for DsGetDcNameW and DsGetSiteNameW.

	* include/wintrust.h:
	wintrust.h: Remove duplicate definitions.  Spotted by Paul Vriens.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Another CryptSIPLoad test.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Added some CryptSIP stub implementations.

	* include/mssip.h:
	wintrust: Fix function prototype.

2006-09-27  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/clock/Fr.rc:
	clock: French translation improvements.

	* programs/notepad/Fr.rc:
	notepad: French translation improvements.

	* programs/progman/Fr.rc:
	progman: French translation improvements.

	* programs/winefile/Fr.rc:
	winefile: French translation improvements.

	* programs/taskmgr/Fr.rc:
	taskmgr: French translation improvements.

	* programs/regedit/Fr.rc:
	regedit: French translation improvements.

2006-09-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/view/view.c:
	view: Reset the image left-top corner to the window left-top corner after a
	Scale to Window.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/resource.h, programs/view/view.c:
	view: Remove the Info > Hello menu item.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/init.c, programs/view/resource.h:
	view: Remove IDS_APPNAME from resources.

	* programs/view/Pl.rc, programs/view/viewrc.rc:
	view: Add Polish translation.

	* programs/regedit/En.rc:
	regedit: Fix the English (Neutral) menu.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2006-09-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Comparing BOOLs against FALSE is redundant.

	* dlls/wined3d/directx.c:
	wined3d: Add a comment to clarify the point of max_sampler_stages.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Add support for native NPOT textures.

	* dlls/wined3d/wined3d_main.c, programs/winecfg/x11drvdlg.c:
	wined3d: Enable pixel shaders by default.

	* dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix the default values for wined3d_settings.

	* dlls/wined3d/vertexshader.c:
	wined3d: Don't overwrite the position y offset in ARB vertex programs.

	* dlls/wined3d/device.c:
	wined3d: Cleanup ActiveRender some more.

	* dlls/wined3d/device.c:
	wined3d: Render upside down when rendering offscreen, even if the backbuffer
	is used to render to.

	* dlls/wined3d/device.c:
	wined3d: Show the MESSAGE in device_find_fbconfigs() only once.

2006-09-26  Juan Lang <juan_lang@yahoo.com>

	* include/wintrust.h:
	wintrust.h: Add missing defines.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode authority key ids.

2006-09-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmdlgtst/Ko.rc:
	cmdlgtst: Updated Korean resource.

2006-09-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Cast-qual warnings fix.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsa.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Cast-qual warnings fix.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Polish translation.

	* dlls/winmm/winmm_En.rc:
	winmm: Use English (US) instead of English (Neutral) for resources.

	* dlls/comctl32/comctl_Pl.rc:
	comctl32: Update Polish translation.

	* dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Cs.rc,
	  dlls/msrle32/msrle_Hu.rc:
	msrle32: Show correctly the authors surname in some non-latin1 languages.

	* dlls/iccvid/iccvid_Pl.rc, dlls/iccvid/rsrc.rc, dlls/msrle32/msrle_Pl.rc,
	  dlls/msrle32/rsrc.rc, dlls/msvidc32/msvidc32_Pl.rc,
	  dlls/msvidc32/rsrc.rc:
	video codecs: add Polish translation.

2006-09-26  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmband/bandtrack.c, dlls/dmband/dmutils.c:
	dmband: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If the feature linked to a component has a state of INSTALLSTATE_UNKNOWN,
	the component's state should match.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Only specifically resolve the TARGETDIR directory once.

	* dlls/msi/tests/package.c:
	msi: Add tests for setting the target path of TARGETDIR (based on a patch by
	Andrey Turkin).

	* dlls/msi/database.c, dlls/msi/install.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Store the full path to the database file in the MSIDATABASE structure.

2006-09-21  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/user/property.c, include/winuser.h:
	winuser.h: Fix PROPENUMPROCEXA/W types declarations.

2006-09-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Brace the guid in SetupDiOpenClassRegKeyExW.

2006-09-26  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, programs/explorer/hal.c:
	explorer: Work around the latest HAL binary compatibility breakage.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Add tests for CryptSIPRetrieveSubjectGuid.

2006-09-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Fix a typo.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_main.c:
	d3d8: Remove no longer used imports.

	* dlls/d3d9/d3d9_main.c:
	d3d9: Remove no longer used imports.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/mssip.h:
	mssip.h: Added function definition.

2006-09-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: Add a test for GetKerningPairs.

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Implement GetKerningPairs for TrueType fonts.

2006-09-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Use a proper protector for X11/XKBlib.h.

2006-09-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Fixed regression in gdb startup (especially gdb proxy).

	* programs/winedbg/memory.c:
	winedbg: Put back the %d format for printing integral values even for
	64bit internal values as the default format in winebdg command imposes.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for a couple of compiland's children.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fix location computation when attribute has a constant form instead
	of a block form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Change the definition of an attribute so that we can pass around
	the form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Move the attribute union (now nameless) into a structure called
	attribute.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for DW_OP_breg* operations in location computation.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Variables & registers.
	- more strickling differentiation variable location between
	a register, and the dereferenced address defined by a
	register (and possibly an offset)
	- added a parameter to symt_add_func_local (and internal symbol
	data struct) to help differentiate
	- fix all debug parsers to confer to this new scheme

2006-09-25  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Try to open nonexisting compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Add more cases for opening compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Move indirect opening of compressed files into separate functions.
	Also rename W-string variable to get some naming consistency.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Compare result to predefined compressed file name, not calculated
	one.

2006-09-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/cert.c:
	crypt32: Reduce indent level of tests.

2006-09-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use GL_EXTCALL.
	That fixes compilation with gl headers that do not know about glUniform4fvARB.

2006-09-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.Drv: Remove unneeded wgl exports.

2006-09-25  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: fgetc needs to use unsigned parameters.
	Spotted by and adapted from test written by Tobias Ringström.

2006-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/dmcompos_main.c,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/riched20/reader.c:
	riched20: Cast-qual warning fix.

2006-09-25  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/notepad/Tr.rc:
	notepad: Update Turkish resources.

	* programs/clock/Tr.rc:
	clock: Update Turkish resources.

	* dlls/shell32/shell32_Tr.rc:
	shell32: Update Turkish resources.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* programs/regedit/listview.c:
	regedit: Remove dead code.

2006-09-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add the missing gamma cap.

2006-09-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Implement SoftpubDllRegisterServer.

2006-09-22  Ivan Leo <ivanleo@gmail.com>

	* dlls/dinput/mouse.c:
	dinput: Add some error checks to mouse.c.

2006-09-22  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Duplicate behaviour of native SetupGetInfInformation with NULL
	ReturnBuffer and certain ReturnBufferSizes.

2006-09-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl32.h, dlls/comctl32/commctrl.c,
	  dlls/comctl32/toolbar.c:
	comctl32: toolbar: If wParam in TB_ADDBUTTON is large, enlarge the
	bitmap before ImageList_AddMasked rather then call
	ImageList_SetImagesCount after.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Resize the imagelist icons after a TB_SETBITMAPSIZE.

2006-09-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid ebx being clobbered in exception handler.

2006-09-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more loading tests.

	* dlls/mshtml/navigate.c:
	mshtml: Set dwOptions in GetBindInfo to 0x80000 to make test pass.

	* dlls/mshtml/nsembed.c:
	mshtml: Initialize url in OnStartURIOpen.

	* dlls/mshtml/persist.c:
	mshtml: Remove FIXMEs and fix a typo.

	* dlls/mshtml/navigate.c, dlls/mshtml/task.c:
	mshtml: Added PARSECOMPLETE task implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Store BSCallback in HTMDocument.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Store IBinding interface in BSCallback.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Add SETDOWNLOADSTATE task implementation and use it in
	IPersistMoniker::Load.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/task.c, dlls/mshtml/view.c:
	mshtml: Create one "Internet Explorer_Hidden" window per thread.

2006-09-25  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/shell32/shell32_Fr.rc:
	dlls: Assorted French translation improvements.

2006-09-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* dlls/user/resources/user32_Pl.rc:
	user32: Update Polish translation.

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

	* programs/cmdlgtst/En.rc, programs/cmdlgtst/Ru.rc:
	cmdlgtst: Move the PageSetup_Flags_Dialog from Ru.rc to En.rc.

	* dlls/mshtml/rsrc.rc, dlls/msi/msi.rc, dlls/shdocvw/shdocvw.rc,
	  programs/oleview/rsrc.rc, programs/uninstaller/rsrc.rc:
	resources: Mark common resources as LANG_NEUTRAL, SUBLANG_NEUTRAL.

2006-09-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Surface data is 32 bit aligned.

2006-09-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid wasting a uniform.

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Stop fixing up a VBO if the declaration changes too often.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Verify the VBO vertex declaration every draw.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix a typo.

2006-09-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c:
	quartz: Cast-qual warnings fix.

2006-09-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/typelib.c:
	oleaut32: Cast-qual warnings fix.

2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* programs/msiexec/msiexec.c:
	msiexec: Should recognize /xpackage syntax.

2006-09-21  Aric Stewart <aric@codeweavers.com>

	* dlls/user/edit.c:
	user: Correct buffer overflows in IME processing code.

2006-09-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/dialog.c:
	msi: Support more dialog groups.

2006-09-25  Nicolas Delcros <nicolas@dyalog.com>

	* tools/wrc/wrc.c:
	wrc: Fixed typo for the --pedantic argument.

2006-09-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: A few more defines.

2006-09-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: glBlend* fixes.

2006-09-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Better IDM_PARSECOMPLETE test.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Silent implementation.
	As we don't have any dialog in WebBrowser implemented yet, all we have to do
	is to store silent value.

2006-09-21  Huw Davies <huw@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Fix ADVAPI_GetComputerSid to work correctly if a sid doesn't exist
	in the registry.
	This makes the tests run correctly on first invocation.

	* dlls/gdi/tests/font.c:
	gdi32: Make the bitmap font tests locale aware.

	* dlls/gdi/tests/font.c:
	gdi32: Win 2000 and Win XP behave differently if there's a '\n' in the string,
	so remove the width test completely.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32.c:
	secur32: Stop loading Negotiate until it is actually working.

2006-09-24  Alexandre Julliard <julliard@winehq.org>

	* programs/.gitignore, programs/make_progs, tools/make_makefiles:
	make_makefiles: Merged the make_progs script into make_makefiles.

2006-09-20  Detlef Riekenberg <wine.dev@web.de>

	* include/msvcrt/sys/types.h, include/winsock.h:
	include: Open Watcom compatibility (Fix _BSDTYPES_DEFINED typo).

2006-09-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Moved the libGL.a check to the final warnings.

	* Makefile.in, configure, configure.ac, include/.gitignore:
	Makefile: Automatically update config.h if configure changed.

	* tools/make_makefiles:
	make_makefiles: Parse the makefiles to find the correct rules file dependency.

	* tools/makedep.c:
	makedep: Update dependencies even with no source files.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/resource.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc:
	user: Fix handling of high bits of resource id in LoadString, reported by
	Andrey Turkin.

2006-09-17  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Allow null streams in the vertex declaration.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Tell the user if ntlm_auth is not found or outdated.

2006-09-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm32/driver.c:
	msacm: acmDriverPriority() compares dwPriority against negative values.
	This issue was spotted by Andrew Talbot.

2006-09-15  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c,
	  dlls/nddeapi/nddeapi.spec:
	nddeapi: Implement stub dll for nddeapi.

2006-09-14  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Show better font style information in fontdlg.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATClose.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec, include/mscat.h:
	wintrust: Add a stub implementation of CryptCATEnumerateMember.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust_main.c:
	wintrust: Move the Crypt* functions to crypt.c.

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATOpen.

2006-09-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the return code of TB_ADDBITMAP.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Simplify the TOOLBAR_AddButton.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix IDB_STD_VIEW_* icons count (with testcase).

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use correctly wParam in TB_ADDBITMAP.

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: imagelist: SetImageCount can be used to decrease image count (with
	testcase).

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.rc,
	  dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add some tests for TB_ADDBITMAP.

2006-09-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/tests/package.c:
	msi: Disable child features of parent features that are unselected because of
	the install level.

	* dlls/msi/dialog.c:
	msi: Translate the INSTALLSTATE_UNKNOWN index into the INSTALLSTATE_ABSENT
	image index.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Don't check a component's install state if a component ID is not provided.

	* dlls/msi/tests/package.c:
	msi: Fix the results of a few tests to match Windows.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Load the component states in CostFinalize instead of CostInitialize.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Initialize all features' action states to INSTALLSTATE_UNKNOWN.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Only override a feature whose action state is INSTALLSTATE_SOURCE.

	* dlls/advpack/files.c:
	advpack: backup should be a const string.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/tests/http.c:
	wininet/tests: Don't fail the tests if the network is unreachable.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Don't fail the tests if the network is unreachable.

2006-09-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	opengl: Move wgl font code to winex11.drv.

2006-09-20  Michael Stefaniuc <mstefani@redhat.de>

	* include/wine/mmsystem16.h:
	include: Make the return type of mmioSendMessage16 in the function declaration
	match that of the function definition.

2006-09-20  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix IXMLDOMNamedNodeMap_getNamedItem() conformance on error.

2006-09-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check "JOIN" operator with "*" operator for the SELECT clause
	returns the correct results.

	* dlls/msi/tests/db.c:
	msi: Adds test to check if basic "JOIN" operator without "WHERE" clause returns
	the correct results.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarImp.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/variant.c:
	oleaut32: Implementation for function variant:VarImp.

2006-09-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmime/dmutils.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/performance.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Print 64bit integers with wine_dbgstr_longlong.

2006-09-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/odbc32/proxyodbc.c:
	odbc32: Cast-qual warning fix.

2006-09-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/tests/ds.c:
	netapi32: Partially implement DsRoleGetPrimaryDomainInformation, and
	DsRoleFreeMemory.

	* dlls/crypt32/chain.c:
	crypt32: Don't crash on freeing null chain engine.

	* dlls/crypt32/tests/cert.c:
	crypt32: Test exporting key acquired through CryptAcquireCertificatePrivateKey.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test decoding a big CRL.

2006-09-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Do not bind the 0 vbo when vbos are unsupported.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/request.c:
	server: Kill the process without SIGTERM when the fd socket is closed.

	* configure, configure.ac:
	configure: Don't display any messages when started from the makefile to rebuild
	config.status.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Escape newlines in DEPENDENCIES when using an old autoconf version.

	* Makefile.in, tools/Makefile.in:
	Makefile: Fixed rule for building makedep when cross-compiling.

2006-09-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Simplify by removing unneeded backslash.

2006-09-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: GetTextExtentPoint and GetTextExtentExPoint behave differently if
	there's a \n in the string.

	* dlls/gdi/freetype.c:
	gdi32: Fix ppem in the case that there isn't an exact height match in the
	vdmx table.

	* dlls/gdi/tests/font.c:
	gdi32: Only run the GetGlyphIndices test if Symbol is installed.

2006-09-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check if "AND" operator returns the correct result for the
	"WHERE" clause.

	* dlls/msi/tests/db.c:
	msi: Adds tests to check if joins return the correct number of rows.

	* dlls/msi/tests/db.c:
	msi: Updates tests for joins to include row and column ids in message.

2006-09-17  Christoph Frick <frick@sc-networks.com>

	* dlls/wined3d/device.c:
	wined3d: Clamp the light exponent at 128.

2006-09-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use pSetupDiOpenClassRegKeyExA.

	* dlls/ntdll/cdrom.c:
	ntdll: Don't do DVD_READ_STRUCTURE when inbuffer or outbuffer has issues
	(Coverity).

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fixed conditional expression (Coverity).

2006-09-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If there is no space for strings GetOutlineTextMetricsA should not indicate
	that they present.

2006-09-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Initialize default coop level. Invert logic in hook handler.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/env.c:
	ntdll: Cast-qual warning fix.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/registry.c,
	  dlls/msi/source.c:
	msi: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hlink/hlink_main.c:
	hlink: Cast-qual warnings fix.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/path.c, dlls/url/url_main.c:
	url: Fixed wrong argument (Coverity).

2006-09-16  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/dialog.c:
	notepad: Keep the modify information of edit control when toggle wrap line.

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Use HKCU\Software\Microsoft\Notepad for font and window-geometry.

2006-09-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use ACTION_UpdateComponentStates in the selection tree so we don't have
	to duplicate the component changing logic.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: INSTALLSTATE_SOURCE also overrides a parent feature state change to
	INSTALLSTATE_ABSENT.

	* dlls/msi/tests/package.c:
	msi: Add tests for components with multiple parent features.

2006-09-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add the total and free disk space to the VolumeCostList control.

2006-09-18  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/d3d8_main.c:
	d3d8: More correct stub for ValidatePixelShader + tests.

2006-09-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/mouse.c:
	dinput: Return proper errors in SetCooperativeLevel.

2006-09-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/winuser.h:
	include: Add some missing definitions in winuser.h.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/advpack_private.h:
	advpack: Remove duplicate function declaration.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/nbnamecache.c:
	netapi32: Cast-qual warnings fix.

2006-09-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/misc.c:
	msvcrt: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/util.c:
	mapi32: Cast-qual warning fix.

	* dlls/kernel32/resource.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_module.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/instr.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/heap.c, dlls/kernel32/registry16.c, dlls/kernel32/time.c,
	  dlls/kernel32/volume.c:
	kernel32: Cast-qual warnings fix.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/except.c, dlls/ntdll/signal_i386.c,
	  dlls/winex11.drv/dib.c, include/winnt.h,
	  programs/winedbg/tgt_active.c:
	include: Added definitions for the fault address exception information.

	* dlls/kernel32/except.c, dlls/ntdll/thread.c, include/winbase.h,
	  include/wine/exception.h, include/winnt.h:
	include: Exception filters should return LONG, not DWORD.
	Also move UnhandledExceptionFilter definitions to winbase.h since they
	are there in the latest SDK.

2006-09-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/commctrl.h:
	include: Win64 fix in TBBUTTON.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't leak the intoPtr->bitmaps during resizing and
	destruction.

	* dlls/comctl32/header.c:
	comctl32: header: Update the header comment.

	* dlls/comctl32/header.c:
	comctl32: header: Remove the nOldWidth.

	* dlls/comctl32/header.c:
	comctl32: header: Send new values in notifies during resize and drag-drop
	instead of the old ones.
	This also fixes the notify format of HDN_ITEMCLICKED(A/W).

	* dlls/comctl32/header.c:
	comctl32: header: Merge the simple delete and complex delete.

	* dlls/comctl32/header.c:
	comctl32: header: Simplify the insert/delete code by using ReAlloc.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test the header order-management code and fix some bugs.

2006-09-19  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing definitions and prototypes.

2006-09-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmloader/debug.c:
	dmloader: Print 64bit integers with wine_dbgstr_longlong.

2006-09-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Fix missing backslash.

2006-09-17  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add the missing SecurityService keys.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/devinst.c:
	setupapi: Fixed wrong check (Coverity).

2006-09-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/sip.c:
	crypt32: Move SIP related tests to their own file.

2006-09-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/Makefile.in, dlls/crypt32/main.c, dlls/crypt32/sip.c:
	crypt32: Move SIP related functions to their own file.

	* dlls/crypt32/crypt32.spec:
	crypt32: Add a few functions to the spec file.

2006-09-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix wined3d/opengl regression.

2006-09-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix fbconfig regression.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add stubs for SetupOpenLog, SetupCloseLog, and SetupLogError.

	* dlls/setupapi/parser.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/tests/parser.c:
	setupapi: Implement pSetupGetField, with tests.

2006-09-14  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* documentation/README.ko:
	README.ko: Updated.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/font.c, dlls/gdi/printdrv.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/enhmetafile.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/dib.c:
	gdi: Cast-qual warnings fix.

2006-09-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c:
	widl: Don't compare result of read() to unsigned type.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in create_msft_typeinfo.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in ctl2_encode_name.

	* tools/widl/utils.c:
	widl: Replace a #if by if for better compiler checking.

	* tools/widl/typegen.c:
	widl: Remove unused parameter in write_ip_tfs.

	* tools/widl/parser.l:
	widl: Fix warning about unused structure field in lexer.

	* tools/widl/widl.man.in:
	widl: Add -u and -U options to man page.

2006-09-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmscript/dmscript_main.c, dlls/dmscript/scripttrack.c:
	dmscript: Print 64bit integers with wine_dbgstr_longlong.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Some tests for CryptSIPLoad.

2006-09-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c, dlls/dnsapi/record.c:
	dnsapi: Use the proper type for the return value in dns_do_query_netbios().
	Remove some unnecessary casts.

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetDetach.

2006-09-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels after the first click of a double click.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels on click if the view was not focused.

2006-09-13  Nicolas Delcros <nicolas@dyalog.com>

	* include/commctrl.h:
	include/commctrl.h: TV_DISPINFO constants definition.

2006-09-12  Nicolas Delcros <nicolas@dyalog.com>

	* include/windows.h:
	include/windows.h: Added _INC_WINDOWS declaration.

2006-09-14  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Automatically re-run configure if it has been modified.

	* Makefile.in, tools/make_makefiles:
	makefiles: Automatically rebuild makefiles when their sources and/or configure
	changed.

	* Make.rules.in, Makefile.in, configure, configure.ac, tools/Makefile.in:
	makefiles: Attempt to automatically run make depend when reading an updated
	makefile.

	* Makefile.in, dlls/Makefile.in, dlls/make_dlls,
	  documentation/Makefile.in, fonts/Makefile.in, libs/Makefile.in,
	  programs/Makefile.in, programs/make_progs:
	makefiles: Remove the dependencies comment in files that don't need it.

	* configure, configure.ac, dlls/activeds/Makefile.in,
	  dlls/advapi32/Makefile.in, dlls/advapi32/tests/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/advpack/tests/Makefile.in,
	  dlls/amstream/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avicap32/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/Makefile.in, dlls/cabinet/tests/Makefile.in,
	  dlls/capi2032/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/compstui/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/cryptdll/Makefile.in,
	  dlls/cryptnet/Makefile.in, dlls/ctl3d32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d9/Makefile.in, dlls/d3d9/tests/Makefile.in,
	  dlls/d3dim/Makefile.in, dlls/d3drm/Makefile.in,
	  dlls/d3dx8/Makefile.in, dlls/d3dxof/Makefile.in,
	  dlls/dbghelp/Makefile.in, dlls/dciman32/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dmusic32/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/Makefile.in, dlls/dplay/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/dpnet/Makefile.in,
	  dlls/dpnhpast/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/dxguid/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/tests/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/glut32/Makefile.in,
	  dlls/gphoto2.ds/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/hlink/tests/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/icmp/Makefile.in, dlls/ifsmgr.vxd/Makefile.in,
	  dlls/imaadp32.acm/Makefile.in, dlls/imagehlp/Makefile.in,
	  dlls/imm32/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/iphlpapi/tests/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel32/Makefile.in,
	  dlls/kernel32/tests/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mmdevldr.vxd/Makefile.in,
	  dlls/monodebg.vxd/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/mprapi/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msacm32/tests/Makefile.in,
	  dlls/msadp32.acm/Makefile.in, dlls/mscms/Makefile.in,
	  dlls/mscms/tests/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/msftedit/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msimg32/Makefile.in, dlls/msisys.ocx/Makefile.in,
	  dlls/msnet32/Makefile.in, dlls/msrle32/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt20/Makefile.in, dlls/msvcrt40/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msvcrtd/tests/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msvidc32/Makefile.in,
	  dlls/mswsock/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/netapi32/tests/Makefile.in, dlls/newdev/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdsapi/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/oledlg/Makefile.in, dlls/olepro32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/riched32/Makefile.in,
	  dlls/rpcrt4/Makefile.in, dlls/rpcrt4/tests/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsabase/tests/Makefile.in,
	  dlls/rsaenh/Makefile.in, dlls/rsaenh/tests/Makefile.in,
	  dlls/sane.ds/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/security/Makefile.in,
	  dlls/sensapi/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/sfc/Makefile.in, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shell32/tests/Makefile.in, dlls/shfolder/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/snmpapi/Makefile.in, dlls/spoolss/Makefile.in,
	  dlls/stdole2.tlb/Makefile.in, dlls/stdole32.tlb/Makefile.in,
	  dlls/sti/Makefile.in, dlls/strmiids/Makefile.in,
	  dlls/svrapi/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/twain_32/Makefile.in, dlls/unicows/Makefile.in,
	  dlls/url/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/urlmon/tests/Makefile.in, dlls/user/Makefile.in,
	  dlls/user/tests/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uuid/Makefile.in, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/Makefile.in, dlls/vdhcp.vxd/Makefile.in,
	  dlls/vdmdbg/Makefile.in, dlls/version/Makefile.in,
	  dlls/version/tests/Makefile.in, dlls/vmm.vxd/Makefile.in,
	  dlls/vnbt.vxd/Makefile.in, dlls/vnetbios.vxd/Makefile.in,
	  dlls/vtdapi.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/winecrt0/Makefile.in,
	  dlls/wined3d/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/winemp3.acm/Makefile.in, dlls/wineps.drv/Makefile.in,
	  dlls/winex11.drv/Makefile.in, dlls/wininet/Makefile.in,
	  dlls/wininet/tests/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winnls32/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/tests/Makefile.in,
	  dlls/wintab32/Makefile.in, dlls/wintrust/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wldap32/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/wow32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  include/Makefile.in, libs/port/Makefile.in, libs/wine/Makefile.in,
	  libs/wpp/Makefile.in, loader/Makefile.in, programs/clock/Makefile.in,
	  programs/cmd/Makefile.in, programs/cmdlgtst/Makefile.in,
	  programs/control/Makefile.in, programs/eject/Makefile.in,
	  programs/expand/Makefile.in, programs/explorer/Makefile.in,
	  programs/hh/Makefile.in, programs/icinfo/Makefile.in,
	  programs/iexplore/Makefile.in, programs/msiexec/Makefile.in,
	  programs/notepad/Makefile.in, programs/oleview/Makefile.in,
	  programs/progman/Makefile.in, programs/regedit/Makefile.in,
	  programs/regsvr32/Makefile.in, programs/rpcss/Makefile.in,
	  programs/rundll32/Makefile.in, programs/start/Makefile.in,
	  programs/taskmgr/Makefile.in, programs/uninstaller/Makefile.in,
	  programs/view/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winebrowser/Makefile.in, programs/winecfg/Makefile.in,
	  programs/wineconsole/Makefile.in, programs/winedbg/Makefile.in,
	  programs/winefile/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winemine/Makefile.in, programs/winepath/Makefile.in,
	  programs/winetest/Makefile.in, programs/winevdm/Makefile.in,
	  programs/winhelp/Makefile.in, programs/winver/Makefile.in,
	  programs/wordpad/Makefile.in, server/Makefile.in, tools/Makefile.in,
	  tools/widl/Makefile.in, tools/winebuild/Makefile.in,
	  tools/winedump/Makefile.in, tools/winegcc/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Generate the dependencies line to avoid some code duplication.

2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.21.

----------------------------------------------------------------
2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore failure to create the service if it already exists.

2006-09-13  Marcus Meissner <marcus@beiboot.franken.de>

	* documentation/README.de:
	README.de: Updated comment on support libraries to match English.

	* documentation/README.de:
	README.de: Mention kernel 2.6.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add CryptSIPAddProvider calls to the registration.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix a couple of test cases for MsiDatabaseIsTablePersistent.

2006-09-13  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Create/destroy hook thread from DirectInput.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for ALTER TABLE.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Fix database creation.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/action.h,
	  dlls/msi/font.c:
	msi: Split the font registration code out into a separate file.

2006-09-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dxdiagn/provider.c:
	dxdiagn: Cast-qual warning fix.

2006-09-13  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix init_system_links() for non-localized font name.

	* dlls/gdi/freetype.c:
	gdi32: Fix wrong break statement use.

2006-09-12  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/directx.c:
	wined3d: Avoid crashing when renderer returns no name.

2006-09-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more join tests.

	* dlls/msi/dialog.c:
	msi: Show the available drives in the VolumeCostList control.

2006-09-12  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ole32/stg_stream.c:
	ole32: Silence a compiler warning about unused variable in StgStreamImpl_Write().

2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/tests/extract.c, dlls/msi/tests/package.c,
	  dlls/shell32/tests/shlfileop.c, include/wine/test.h:
	tests: Moved some compatibility defines to wine/test.h.

2006-09-12  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Print 64bit integers with wine_dbgstr_longlong.

2006-09-12  Marcus Meissner <marcus@beiboot.franken.de>

	* README:
	README: Update for kernel 2.6.

2006-09-12  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mshtml/rsrc.rc:
	mshtml: Add version resource.

	* dlls/shdocvw/version.rc:
	shdocvw: Update version info.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Use the return values of the registration functions.

	* dlls/wintrust/register.c:
	wintrust: We do care about errors during this kind of registration.

	* dlls/wintrust/register.c:
	wintrust: Simplify registration by using WintrustAddDefaultForUsage.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/tests/db.c:
	msi: Delete databases we create but never commit.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix left-over reference to kernel directory.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c:
	wintrust: Implemented WintrustAddDefaultForUsage.

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Added tests for WintrustAddDefaultForUsage.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustAddDefaultForUsage.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/secur32/dispatcher.c:
	secur32: Use _exit instead of exit in child process to avoid flushing things
	twice.

	* dlls/crypt32/tests/encode.c:
	crypt32: Comment out an unreliable test.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed and simplified the opengl extension registration.

2006-09-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h:
	opengl32: Remove unused code.

2006-09-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec, include/wine/wgl.h:
	winex11.drv: Move WGL extension code to winex11.drv.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/kernel/Makefile.in, dlls/kernel/actctx.c, dlls/kernel/atom.c,
	  dlls/kernel/atom16.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/comm.drv.spec, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_main.c, dlls/kernel/kernel_private.h,
	  dlls/kernel/krnl386.exe.spec, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/stress.spec, dlls/kernel/string.c, dlls/kernel/sync.c,
	  dlls/kernel/syslevel.c, dlls/kernel/system.c,
	  dlls/kernel/system.drv.spec, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/Makefile.in, dlls/kernel/tests/alloc.c,
	  dlls/kernel/tests/atom.c, dlls/kernel/tests/change.c,
	  dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/console.c, dlls/kernel/tests/directory.c,
	  dlls/kernel/tests/drive.c, dlls/kernel/tests/environ.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/format_msg.c,
	  dlls/kernel/tests/generated.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/version.c, dlls/kernel/tests/virtual.c,
	  dlls/kernel/tests/volume.c, dlls/kernel/thread.c,
	  dlls/kernel/thunk.c, dlls/kernel/time.c, dlls/kernel/toolhelp.c,
	  dlls/kernel/toolhelp.h, dlls/kernel/toolhelp.spec,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/win87em.spec, dlls/kernel/windebug.c,
	  dlls/kernel/windebug.spec, dlls/kernel/wowthunk.c,
	  dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/atom.c, dlls/kernel32/atom16.c, dlls/kernel32/change.c,
	  dlls/kernel32/comm.c, dlls/kernel32/comm.drv.spec,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/console_private.h, dlls/kernel32/cpu.c,
	  dlls/kernel32/debugger.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/error16.c, dlls/kernel32/except.c,
	  dlls/kernel32/fiber.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c, dlls/kernel32/kernel.rc,
	  dlls/kernel32/kernel16.c, dlls/kernel32/kernel16_private.h,
	  dlls/kernel32/kernel32.spec, dlls/kernel32/kernel_main.c,
	  dlls/kernel32/kernel_private.h, dlls/kernel32/krnl386.exe.spec,
	  dlls/kernel32/lcformat.c, dlls/kernel32/local16.c,
	  dlls/kernel32/locale.c, dlls/kernel32/locale_rc.rc,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/winerr_enu.mc,
	  dlls/kernel32/nls/zhh.nls, dlls/kernel32/nls/zhi.nls,
	  dlls/kernel32/nls/zhm.nls, dlls/kernel32/oldconfig.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/pthread.c, dlls/kernel32/registry16.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/selector.c,
	  dlls/kernel32/snoop16.c, dlls/kernel32/stress.c,
	  dlls/kernel32/stress.spec, dlls/kernel32/string.c,
	  dlls/kernel32/sync.c, dlls/kernel32/syslevel.c,
	  dlls/kernel32/system.c, dlls/kernel32/system.drv.spec,
	  dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/generated.c, dlls/kernel32/tests/heap.c,
	  dlls/kernel32/tests/locale.c, dlls/kernel32/tests/mailslot.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/profile.c, dlls/kernel32/tests/sync.c,
	  dlls/kernel32/tests/thread.c, dlls/kernel32/tests/time.c,
	  dlls/kernel32/tests/timer.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c,
	  dlls/kernel32/tests/volume.c, dlls/kernel32/thread.c,
	  dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp.h,
	  dlls/kernel32/toolhelp.spec, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/version.rc, dlls/kernel32/version16.rc,
	  dlls/kernel32/virtual.c, dlls/kernel32/volume.c, dlls/kernel32/vxd.c,
	  dlls/kernel32/win87em.c, dlls/kernel32/win87em.spec,
	  dlls/kernel32/windebug.c, dlls/kernel32/windebug.spec,
	  dlls/kernel32/wowthunk.c, programs/winetest/Makefile.in,
	  tools/make_makefiles:
	kernel32: Renamed the kernel directory to kernel32.
	Also get rid of the kernel/messages subdirectory.

	* libs/wine/config.c:
	libwine: Avoid a compiler warning on Solaris.

2006-09-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more tests for MsiOpenDatabase.

2006-09-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/hash.c:
	oleaut32: Replace a loop with a simple computation.

	* tools/widl/hash.c:
	widl: Replace a loop with a simple computation.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Remove some TRACE's as they are now covered by WintrustAddActionID.

	* dlls/wintrust/register.c:
	wintrust: Removed stray backslash.

	* dlls/wintrust/register.c:
	wintrust: Typo in TRACE.

	* dlls/wintrust/register.c:
	wintrust: Simplify registrations by using WintrustAddActionID.

2006-09-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/classes.c:
	msi: Don't try to register a class if a COM server file is not provided.

2006-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Print 64bit integers with wine_dbgstr_longlong.

2006-09-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarIdiv.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarDiv.

2006-09-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Cleanup the surface loading code a bit.
	- Separate allocation and uploading of textures.
	- Move common code for allocating, uploading and downloading textures
	into separate functions.
	- Set the correct format and type for DXT textures.

	* dlls/d3d8/device.c:
	d3d8: Free the shader handle table.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Remove the IOKit code and reuse the FreeBSD implementation for MacOS.
	FILE_GetDeviceInfo needs to be efficient, and IOKit is much too slow
	to be used here.

	* tools/wrc/newstruc.c, tools/wrc/parser.h, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/utils.h,
	  tools/wrc/wrc.c:
	wrc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/utils.h,
	  tools/wmc/wmc.c, tools/wmc/wmc.h:
	wmc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/widl/header.c, tools/widl/parser.h, tools/widl/parser.l,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/utils.c,
	  tools/widl/utils.h, tools/widl/widl.c:
	widl: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* libs/wpp/ppl.l, libs/wpp/ppy.y, libs/wpp/preproc.c, libs/wpp/wpp.c,
	  libs/wpp/wpp_private.h:
	wpp: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* Make.rules.in, programs/winedbg/dbg.y, tools/widl/parser.y,
	  tools/wmc/mcy.y, tools/wrc/parser.y:
	Make.rules: Set the default prefix for bison files from the file basename.

	* Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, tools/widl/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: List bison dependencies explicitly for parallel makes, since older
	bisons don't support --defines.

2006-08-29  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix logical error of italic, bold determination.

	* dlls/gdi/gdiobj.c:
	gdi32: Fix DefaultGuiFont name string for Korean Charset.

2006-09-11  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/localspl/localspl.spec, dlls/localspl/localspl_main.c:
	localspl: Add minimal localspl.dll.

2006-09-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Move hook_thread from device to DirectInput.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/cpu.c:
	kernel: Better CPU detection on MacOS.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid compile errors in the non-OpenGL case.

	* Makefile.in:
	Makefile: Don't build all the tools before make depend, only build makedep
	itself.

	* dlls/Maketest.rules.in:
	Maketest.rules: Don't require testlist.c to be built before make depend.

	* dlls/shell32/Makefile.in:
	shell32: Don't build authors.c for make depend, it has no dependencies anyway.

	* programs/winetest/.gitignore, programs/winetest/Makefile.in,
	  programs/winetest/dist.rc, programs/winetest/maketest,
	  programs/winetest/winetest.rc, tools/make_makefiles:
	winetest: Generate the list of test resources in make_makefiles.
	Only include test revision information in the distributed binary.

	* programs/winetest/main.c, programs/winetest/maketest,
	  programs/winetest/util.c, programs/winetest/winetest.h:
	winetest: Store the test name as the resource name instead of in a separate
	string table.

2006-09-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add a check for a condition where a stream has an invalid size
	and so there aren't enough blocks in the chain to write data into.

	* dlls/ole32/storage32.c:
	ole32: Remove some assertions in the stuctured storage code by
	returning error codes to the caller and by handling the error
	condition.

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Convert the *_{Read,Write}At structured storage functions to
	return HRESULTs instead of BOOLs so that errors can be properly
	propagated from lower levels.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the IStream_SetSize function for HGLOBAL streams to ignore HighPart.

	* dlls/ole32/tests/storage32.c:
	ole32: Make an ok message match the name of the function it is testing.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the return value of the HGLOBAL stream IStream_LockRegion function.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the HGLOBAL stream IStream_Read function to return S_OK even if
	not all of the requested bytes were available.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/hglobalstream.c:
	ole32: Add tests for the stream object returned by CreateStreamOnHGlobal.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Change the name of the strings to not confuse them with the functions
	that are present in wintrust.

	* dlls/wintrust/register.c:
	wintrust: Use the return value of CryptRegisterOIDFunction.

2006-09-01  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/font.c:
	gdi: Fix test for GetGlyphIndicesW on non Unicode systems.

2006-08-30  James Liggett <jrliggett@cox.net>

	* programs/explorer/Makefile.in, programs/explorer/systray.c:
	explorer: Add support for tooltips for system tray icons.
	Based on the original systray implementation by Kai Morich
	<kai.morich@bigfoot.de>.

2006-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx makecurrent/wglsharelists.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx context code.

2006-09-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/cabinet/fci.c, dlls/gdi/bidi.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gphoto2.ds/ui.c, dlls/imagehlp/imagehlp_main.c,
	  dlls/kernel/atom.c, dlls/kernel/kernel16.c, dlls/mscms/icc.c,
	  dlls/msi/tokenize.c, dlls/msvcrt/ctype.c, dlls/netapi32/browsr.c,
	  dlls/netapi32/nbnamecache.c, dlls/ntdll/wcstring.c,
	  dlls/rsaenh/implglue.c, dlls/user/driver.c, dlls/user/lstr.c,
	  dlls/uxtheme/stylemap.c, dlls/wineps.drv/encode.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winspool.drv/wspool.c, dlls/wsock32/protocol.c:
	Removes all unnecessary WINE_DEFAULT_DEBUG_CHANNEL and respective wine/debug.h
	includes.

2006-09-10  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/dmusic_main.c:
	dmusic: Print 64bit integers with wine_dbgstr_longlong.

2006-09-10  Detlef Riekenberg <wine.dev@web.de>

	* programs/taskmgr/trayicon.c:
	taskmgr: Remove dead code in trayicon.c (Coverity).

	* dlls/winspool.drv/tests/info.c:
	winspool: String cleanup in the tests.

2006-09-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8.spec, dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/d3d8_main.c:
	d3d8: Better stub for ValidateVertexShader + tests.

2006-09-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: Rewrite of scrolling and some redrawing code.
	Replaces duplicated scrolling code with re-usable functions.
	Removes excessive boundary checking on scroll code, since that's done
	in the scrollbar control anyways.
	Properly separates repaint calls based on what has changed.
	Send EN_UPDATE and EN_CHANGE at the right places.
	Only call EnsureVisible on changes, not all repaints.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/wintrust/wintrust_main.c, include/wintrust.h:
	wintrust: In recent SDKs, WinVerifyTrust()'s last parameter is a void pointer.

2006-09-10  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, tools/makedep.c:
	makedep: For generated headers, parse the source idl instead.
	This avoids having to generate all the headers before make depend.

2006-09-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shellole.c:
	shell32: Remove the unused shell allocator.

	* dlls/shell32/shellole.c, dlls/shell32/shellord.c:
	shell32: Document the shell32 "mini-COM" functions.

2006-09-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	ddraw: Pass the fullscreen flag to wined3d.

	* dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw.c,
	  dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Double buffered primary surfaces can only be created in EXLUSIVE mode.

	* dlls/ddraw/surface.c:
	ddraw: Return DDERR_NOPALETTEATTACHED if no palette is attached.

2006-09-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/computername.c:
	kernel: Remove dead code in computername.c.

2006-09-09  Damjan Jovanovic <dj015@yahoo.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Fixed returns values and added a test for SetupDiOpenClassRegKeyExW.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dswave/dswave_main.c:
	dswave: Print 64bit integers with wine_dbgstr_longlong.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c, dlls/crypt32/tests/main.c:
	crypt32: Fix the adding of pwszIsFunctionName and pwszIsFunctionNameFmt2.

2006-09-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/name_server.c,
	  dlls/dplayx/name_server.h:
	dplayx: Cast-qual warnings fix.

2006-09-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/query.c:
	dnsapi: Cast-qual warnings fix.

2006-09-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/device.c:
	dinput: Cast-qual warnings fix.

	* dlls/ddraw/texture.c:
	ddraw: Cast-qual warning fix.

2006-09-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/msvfw32/msvfw32_Fr.rc, programs/clock/Fr.rc,
	  programs/cmdlgtst/Fr.rc, programs/notepad/Fr.rc,
	  programs/progman/Fr.rc, programs/regedit/Fr.rc,
	  programs/taskmgr/Fr.rc, programs/uninstaller/Fr.rc,
	  programs/winefile/Fr.rc, programs/winemine/Fr.rc,
	  programs/winhelp/Fr.rc:
	Assorted French translation improvements.

	* programs/winecfg/Fr.rc:
	winecfg: French translation update.

2006-09-08  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/hhctrl.ocx/Fr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl: New French translation.

	* dlls/winspool.drv/Fr.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: New French translation.

	* dlls/mshtml/Fr.rc:
	mshtml: Updated French translation.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Added tests for CryptSIPAddProvider and CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Implemented CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

2006-09-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/metafile.c:
	gdi: Change the metafile.c test to use sprintf instead of snprintf for
	portability.

2006-09-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: An unavailable address for the PE file can cause ERROR_NOT_ENOUGH_MEMORY
	too.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  documentation/Makefile.in:
	makefiles: Make sure that all phony targets depend on 'dummy'.

	* dlls/Makedll.rules.in, programs/Makeprog.rules.in:
	makefiles: Avoid empty variables in substitutions, it's broken on BSD make.

	* fonts/Makefile.in:
	fonts: Avoid using the $< make variable in explicit rules.

	* tools/Makefile.in, tools/makedep.c:
	makedep: Support for new naming scheme for lex files.

	* .gitignore, Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winhelp/Makefile.in,
	  tools/widl/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Add global rules for bison and lex files.
	Also build the .c and .h files separately to allow parallel makes.

	* programs/winedbg/dbg.y:
	winedbg: Allow building without debug support in the parser.

	* tools/wrc/wrc.c:
	wrc: Allow building without debug support in the parser.

	* tools/wmc/wmc.c:
	wmc: Allow building without debug support in the parser.

	* tools/widl/widl.c:
	widl: Allow building without debug support in the parser.

	* programs/winhelp/Makefile.in, programs/winhelp/macro.lex.l:
	winhelp: Specify the lex options directly in the source file.

	* programs/winedbg/Makefile.in, programs/winedbg/debug.l:
	winedbg: Specify the lex options directly in the source file.

	* dlls/msi/Makefile.in, dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Specify the bison name prefix directly in the source file.

	* libs/wpp/Makefile.in, libs/wpp/ppy.y:
	libs/wpp: Specify the bison name prefix directly in the source file.

2006-09-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/module.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/kernel/virtual.c, include/winbase.h:
	kernel: Constify a formal parameter.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/ungif.h, include/config.h.in:
	oleaut32: Include minimal ungif source to remove dependency on libungif.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/netapi32/apibuf.c, dlls/netapi32/tests/apibuf.c:
	netapi32: Avoid NULL access in NetApiBufferAllocate, with test.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

	* dlls/crypt32/main.c:
	crypt32: Change the order of writing to the registry.

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Added some input validation.

2006-09-04  Konstantin Petrov <argentum@office.etersoft.ru>

	* configure, configure.ac, dlls/Makefile.in, dlls/svrapi/Makefile.in,
	  dlls/svrapi/svrapi.spec, dlls/svrapi/svrapi_main.c,
	  include/Makefile.in, include/lmcons.h, include/svrapi.h:
	svrapi: Added a stub svrapi.dll.

2006-09-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Manage loaded monitors in a list.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Minimal load/unload printmonitors; use it to get a test working.

2006-09-02  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/user/sysparams.c:
	user: ChangeDisplaySettings virtual desktop mode handling fix.

2006-09-08  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Register msiexec.

2006-09-07  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarPow.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarAnd.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for temporary columns.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the TEMPORARY keyword for columns.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseIsTablePersistent.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fix the prototype of MsiDatabaseIsTablePersistent to match the SDK.

	* dlls/msi/string.c:
	msi: Increase the size of the string table.

	* dlls/msi/action.c:
	msi: Split code to create a random package name into a separate function.

	* dlls/msi/table.c:
	msi: Use msi_string_lookup_id instead of msi_id2stringW where possible.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/file.c:
	ntdll: attr is never NULL inside NtCreateFile.

2006-09-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Allow non-key columns to be used with the join query.

	* dlls/msi/tests/db.c:
	msi: Add tests for MSI SQL join queries.

2006-09-07  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c, tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add more complete pointer handling to write_typeformatstring_var.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/crypt.c, dlls/gdi/tests/font.c, dlls/kernel/sync.c,
	  dlls/ole32/tests/compobj.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/wined3d/directx.c, dlls/winex11.drv/opengl.c,
	  dlls/wintrust/tests/register.c, dlls/ws2_32/socket.c,
	  programs/view/init.c:
	Assorted spelling fixes.

	* dlls/ntdll/ntdll.spec:
	ntdll: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/setupapi/setupapi.spec:
	setupapi: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/tapi32/line.c:
	tapi32: Fix spelling of a local variable.

	* dlls/ole32/stg_stream.c:
	ole32: Fix spelling of a couple of local variables.

	* dlls/shell32/shlmenu.c:
	shell32: Fix spelling of a local variable.

	* dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Fix spelling of VARIANT_NUMBER_CHARS's separator fields.

	* include/ntstatus.h, include/sddl.h:
	include: Document some Microsoft spelling mistakes so we know they are not to
	be fixed.

	* include/shlobj.h:
	shell32: Fix name of a constant.

	* include/mcx.h:
	include: Fix the name of a MODEMSETTINGS field.

	* include/imagehlp.h:
	imagehlp: Fix the name of the ADDRESS_MODE enum.

2006-09-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-09-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix DecryptMessage for the dummy case.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix generation of the session key.

2006-09-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Don't crash when tracing is on and a numeric identifier is passed.

	* dlls/crypt32/oid.c:
	crypt32: Add some documentation.

2006-09-07  Albert Lee <trisk@jhu.edu>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement and test Script{Apply, Record}DigitSubstitution.

2006-09-06  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure.ac: Display a hint when CAPI is not supported.

2006-09-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added sysctl to make the signal stack per-thread on MacOS.

2006-09-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Simplify setting the stencil renderstate.

	* dlls/wininet/ftp.c:
	wininet: Fix fd leak on failure case.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Remove "please report" from a trace.

	* programs/winefile/winefile.c:
	winefile: Fix the display of free disk space in the statusbar.

	* programs/regedit/framewnd.c:
	regedit: Also refresh the listview.

	* dlls/winmm/mci.c, dlls/winmm/tests/Makefile.in, dlls/winmm/tests/mci.c:
	winmm: Prevent NULL dereference in MCI_Close and add testcase for it.

2006-09-02  Hippocrates Sendoukas <hsendoukas@hotmail.com>

	* dlls/riched20/editor.c:
	riched20: WM_CONTEXTMENU fix for custom context menus.

	* dlls/riched20/caret.c:
	riched20: ME_SetSelection -1 to -1 behavior fix.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeUnicodeNameValueInternal, getting rid of
	a warning.

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeNameValueInternal, getting rid of a warning.

2006-09-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Store the CustomActionData for deferred custom actions.

	* dlls/msi/dialog.c:
	msi: Add the ability to change directories in the DirectoryList control.

2006-09-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryList control.

	* dlls/msi/dialog.c:
	msi: Load and display the VolumeCostList control's column headers.

2006-08-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h:
	msi: Store and use the center point of the dialog window in between dialogs.

	* dlls/msi/dialog.c:
	msi: Verify the path in the PathEdit control.

	* dlls/msi/dialog.c:
	msi: Search for the browse dialog controls by type instead of name.

	* dlls/msi/dialog.c:
	msi: Provide the control to the dialog_update function for the case
	when the control isn't attached to the dialog yet.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for the _Streams table.

2006-09-03  Dan Kegel <dank@kegel.com>

	* configure, configure.ac, dlls/msvcrt/process.c, documentation/PACKAGING,
	  programs/.gitignore, programs/Makefile.in, programs/cmd/Cs.rc,
	  programs/cmd/De.rc, programs/cmd/En.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Makefile.in, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/README,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/batch.c, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c, programs/cmd/wcmdrc.rc, programs/make_progs,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Makefile.in, programs/wcmd/Nl.rc,
	  programs/wcmd/No.rc, programs/wcmd/Pl.rc, programs/wcmd/Pt.rc,
	  programs/wcmd/README, programs/wcmd/Ru.rc, programs/wcmd/Si.rc,
	  programs/wcmd/Tr.rc, programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/directory.c, programs/wcmd/wcmd.h,
	  programs/wcmd/wcmdmain.c, programs/wcmd/wcmdrc.rc, tools/wine.inf:
	programs/wcmd: Rename to programs/cmd.

2006-09-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/static.c:
	user: Use computed icon rectangle if SS_CENTERIMAGE style is set.

2006-09-06  James Hawkins <truiken@gmail.com>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove a reference to libs/unicode in msvcmaker.

	* dlls/msi/tests/format.c:
	msi: Add many more MsiFormatRecord tests.

	* dlls/msi/tests/format.c:
	msi: Fix two MsiFormatRecord tests.

2006-09-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Use the TargetPath of a file if the file doesn't exist in MsiFormatRecord.

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Fix creation of the default format in MsiFormatRecord.

	* dlls/msi/tests/format.c, dlls/msi/tests/package.c:
	msi: Add more tests for MsiFormatRecord.

2006-09-05  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for R32F and R16F texture formats.

2006-09-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field: Surface.textureName.

	* dlls/wined3d/device.c:
	wined3d: Clean up ActiveRender.

2006-09-04  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/device.c:
	wined3d: Avoid crashing when ProcessVertices is called with NULL vertex
	declaration.

2006-09-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Cast-qual warnings fix.

2006-09-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/finddlg16.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Cast-qual warnings fix.

2006-09-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Cast-qual warning fix.

	* dlls/crypt32/encode.c, dlls/crypt32/protectdata.c, dlls/crypt32/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-03  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shfolder/Makefile.in, dlls/shfolder/version.rc:
	shfolder: Add version resource.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Simple test for UrlCanonicalizeA.

2006-09-01  András Kovács <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Implement BlendFactor renderstate.

	* dlls/wined3d/device.c:
	wined3d: Remove unnecessary glBlendColor in TextureFactor renderstate.

2006-09-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Set last error on registry errors.

	* dlls/wintrust/register.c:
	wintrust: Add a bunch of CryptRegisterOIDFunction calls.

	* include/wintrust.h:
	wintrust.h: Added several defines needed for the registration of wintrust.dll.

	* dlls/wintrust/register.c:
	wintrust: Only register actions when
	HKLM\Software\Microsoft\Cryptography\Providers\Trust can be opened.

2006-09-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CHAIN_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register DRIVER_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register OFFICESIGN_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register HTTPSPROV_ACTION.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_TRUSTPROVIDER_TEST.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CERT_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE_NOBADUI.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE.

	* dlls/wintrust/register.c, tools/wine.inf:
	wintrust: Register WINTRUST_ACTION_GENERIC_VERIFY_V2.

2006-09-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added several new defines for provider functions.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added a new define for a provider function.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/resource16.c, include/wine/winuser16.h:
	kernel: Constify some formal parameters.

2006-09-01  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a short test for transforms.

	* dlls/msi/tests/db.c:
	msi: Make opening and closing 4000 handle into two tests, not 20000.

2006-08-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole32: Allocate memory for a copy of the ptd member of FORMATETC in
	DataAdviseHolder_Advise since there is no requirement for the
	application to keep this memory valid for the lifetime of the
	connection.

	* dlls/ole32/oleobj.c:
	ole32: Don't send data changes in DataAdviseHolder_Advise for
	ADVF_PRIMEFIRST connections if we are connected to a data object,
	since it will send the data change for us.

	* dlls/ole32/defaulthandler.c:
	ole32: DefaultHandler_GetData and DefaultHandler_QueryGetData should
	both defer to the real data object if the cached versions fail and we
	are running.

	* dlls/ole32/rpc.c:
	ole32: Add a reference to the stream in RPC_StartLocalServer since we
	release a reference to it when the local server thread dies.

	* dlls/ole32/tests/ole2.c:
	ole32: Add a test for OleLoad.

	* dlls/ole32/ole2.c:
	ole32: Do a QueryInterface for IOleLink in OleLoad, like native does.

	* dlls/ole32/ole2.c:
	ole32: Re-order the function calls in OleLoad to match native.
	Call IOleObject_GetMiscStatus like OleCreate and native do.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/ole2.c:
	ole32: Add tests for OleCreate.

	* dlls/ole32/ole2.c:
	ole32: Call IRunnableObject_Run and IOleCache_Cache from OleCreate if the
	render option is specified as draw or format.
	This is documented on MSDN and is confirmed by tests.

	* dlls/ole32/ole2.c:
	ole32: Call IOleObject_GetMiscStatus in OleCreate if a client site is passed in.

	* dlls/ole32/ole2.c:
	ole32: Re-structure OleCreate to match to order of calls that native does.
	Get rid of hres1 since all failures are returned. Cleanup pUnk on
	failure and make sure to return NULL in ppvObj.

	* dlls/ole32/ole2.c:
	ole32: Set the storage's class ID in OleCreate.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Raise an exception if IRpcChannelBuffer_GetBuffer fails.
	Make StdProxy_GetIID and StdProxy_GetChannel return void.
	Don't bother checking for This and pRpcChannelBuffer being NULL as
	native doesn't.

2006-08-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Implement MsiDatabaseExport.

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Create MSI_ViewGetColumnInfo for accessing MsiViewGetColumnInfo internally.

	* dlls/msi/insert.c, dlls/msi/tests/db.c:
	msi: Make sure there's a value for each column when inserting data.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Validate database fields before inserting them.

	* dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/record.c,
	  dlls/msi/select.c:
	msi: Create a function to copy record fields, use it to order INSERT fields
	correctly.

	* dlls/msi/tests/record.c:
	msi: Add a few more tests for MSI_NULL_INTEGER.

	* dlls/msi/create.c, dlls/msi/tests/db.c:
	msi: Check that column names are unique when creating a table.

2006-08-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add delegating stub support.

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Add infrastructure to create and manage a variable sized vtbl
	that will be used as the server object for delegated stubs.

2006-08-31  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Moved the generation of the guidstring to a separate function.

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c,
	  include/wintrust.h:
	wintrust: Implementation of WintrustAddActionID.

2006-08-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/tests/register.c:
	wintrust: Implementation of WintrustRemoveActionID.

2006-09-01  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typelib.c:
	widl: Sanity check string and pointer attrs.  Don't assign string as type.

	* tools/widl/parser.y:
	widl: Handle more pointer types in get_struct_type.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Remove checks for typedefs that always fail.

2006-08-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add the regsvr action to the SetupInstallFromInfSection call.

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Get the proper working directory in install_init.

2006-08-30  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests on NdrCStdStubBuffer_Release to show that we shouldn't call
	Disconnect.
	Also call IPSFactoryBuffer_Release on the 2nd arg, rather than on
	This->pPSFactory.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_QueryInterface.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_AddRef,Release.

2006-08-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Don't crash if we can't find a control.

	* dlls/msi/tokenize.c:
	msi: Use a binary search to find sql keywords.

	* dlls/ddraw/main.c, dlls/ddraw/tests/ddrawmodes.c,
	  dlls/ddraw/tests/dsurface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Make tests pass when OpenGL libraries aren't present.

2006-08-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests on windows98.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Generate an error for "int f(void a)".

	* tools/widl/header.c:
	widl: Print pointers more aesthetically in generated header.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add an is_ptr function.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Factor the entry_t structure.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Use type_t for typedefs, not var_t.  Simplify representation.

	* tools/widl/parser.y:
	widl: Generate names for tagless structs, unions and enums.

2006-08-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Make the reference counting in the standard proxy thread-safe.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Fix NdrStubGetBuffer to use the IRpcChannelBuffer object since
	IRpcChannelBuffer_GetBuffer may put extra data onto the wire for ORPC
	calls.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Remove some unused code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_clientserver.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Rename ndr_midl.c to ndr_clientserver.c to more accurately
	idenitfy what the code contained does - it is a number of helpers for
	generated client/server code.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Move NdrStub* functions to cstub.c and move NdrProxy*
	functions to cproxy.c since both sets of functions depend on the
	implementations of the standard stubs and proxies.

	* server/file.c:
	server: Translate errnos ENFILE and EMFILE to STATUS_TOO_MANY_OPENED_FILES,
	which seems to be more appropriate and matches the errno translation
	in ntdll.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Delay the creation of the stub object for IDispatch until it is
	actually used.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a leak of the module reference count.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Cast-qual warnings fix.

2006-08-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-08-29  Renu Rajput <renu.rajput@gmail.com>

	* dlls/comdlg32/filedlg.c:
	comdlg: Send missing CDN_FOLDERCHANGE.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: Add new OID.

	* include/softpub.h:
	softpub.h: Add a GUID.

	* include/wintrust.h:
	wintrust.h: Add a GUID.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add some documentation.

	* dlls/wintrust/tests/register.c:
	wintrust: Add some extra tests for WintrustRemoveActionID.

2006-08-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c:
	msi: Fix a memory leak.

	* dlls/msi/handle.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h:
	msi: Free the handle table on PROCESS_DETACH.

	* dlls/msi/tests/package.c:
	msi: Fix test compilation with MSVC6.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Properties are case sensitive.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c,
	  programs/winetest/Makefile.in:
	wintrust: Add framework and initial tests.

2006-08-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec:
	wintrust: Add some register stubs.

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Move register related functions to a separate file.

2006-08-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Add the rest of the pointer types to write_type.

2006-08-28  Marcus Meissner <marcus@jet.franken.de>

	* programs/explorer/explorer.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/winedbg/display.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c:
	Remove some more unused debugging channels.

2006-08-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add a test for IRpcStubBuffer_Connect on a delegated stub.
	This shows that we have a vtbl ptr at (void**)This-2 that is passed to
	the base interface's IRpcStubBuffer_Connect.  This vtbl should
	presumably forward calls to the real object's vtbl.  We can't simply
	pass the real object to the base interface's stub, as the real
	object's QI may not provide us with the base interface.

2006-08-28  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Add a helper function to create a stub.

2006-08-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Apply the half pixel correction for shaders too.

2006-08-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use msi_dialog_dup_property where appropriate.

	* dlls/msi/dialog.c:
	msi: Use the respective update functions when creating the Browse dialog control.

	* dlls/msi/dialog.c:
	msi: Update the DirectoryCombo control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Update the PathEdit control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Highlight the text in the PathEdit control.

2006-08-28  Dan Kegel <dank@kegel.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/msiquery.c, dlls/msi/package.c, dlls/msi/preview.c,
	  dlls/msi/suminfo.c:
	msi: Callers of alloc_msihandle should handle failure.

	* dlls/msi/handle.c, dlls/msi/msipriv.h, dlls/msi/tests/db.c:
	msi: Remove limit on number of handles.

	* dlls/msi/tests/db.c:
	msi/tests: Add test to verify we can create 4000 msi handles.

2006-08-28  Robert Shearman <rob@codeweavers.com>

	* dlls/quartz/videorenderer.c:
	quartz: Use the absolute height of the bitmap format as a negative values
	simply means it is a top-down bitmap.

	* dlls/ole32/rpc.c:
	ole32: Return errors if the attempt to start a LocalService object fails.

	* dlls/ole32/compobj.c:
	ole32: AppId is a value under the clsid key, rather than a key.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/ole2.c,
	  dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Fix functions defined without specifying argument types by changing
	them to "(void)".

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Import ConvertPixelFormatWGLtoGLX from opengl32.

2006-08-27  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_EXSETSEL fixes and conformance tests.

2006-08-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, tools/Makefile.in, tools/winapi/Makefile.in:
	tools: Get rid of the winapi makefile, it's not used anyway.

	* Make.rules.in, Makefile.in, dlls/Makefile.in, dlls/Makeimplib.rules.in,
	  dlls/Maketest.rules.in, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/cabinet/Makefile.in,
	  dlls/comcat/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comdlg32/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d9/Makefile.in, dlls/ddraw/Makefile.in,
	  dlls/dinput/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dsound/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/make_dlls, dlls/mapi32/Makefile.in,
	  dlls/mlang/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mshtml/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/psapi/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/secur32/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/usp10/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/ws2_32/Makefile.in:
	makefiles: Only run test and documentation targets in directories that need them.

	* programs/winetest/Makefile.in, tools/make_makefiles:
	make_makefiles: Generate the tests list in programs/winetest/Makefile.in.

	* dlls/make_dlls, programs/make_progs, tools/make_makefiles:
	tools: Added make_makefiles tool that updates the list in configure.ac and
	runs make_dlls and make_progs.

	* dlls/kernel/cpu.c:
	kernel: Get rid of useless trace.

2006-08-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix writing of long strings to the database.

	* dlls/msi/record.c:
	msi: Fix MsiRecordGetString for a null buffer and non-zero buffer length.

2006-08-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c:
	d3d8: Use proper handles for pixel shaders.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Improve shader handle management.

2006-08-26  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for A16B16G16R16F and A32B32G32R32F texture formats.

2006-08-28  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/msi/msi_Ko.rc:
	msi: Updated Korean resource.

2006-08-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c:
	dbghelp: Removed stabs dump facility now that we have it (for PE files)
	in winedump.

	* tools/winedump/debug.c, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Added -G option to dump raw stabs information from PE files.

	* programs/winedbg/memory.c:
	winedbg: Native dbghelp generate long basic types, so handle them too.

2006-08-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_UNDERLINE implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_ITALIC implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Added IDM_FONTNAME implementation.

2006-08-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the VolumeCostList control.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Add initial implementation of the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryCombo control.

2006-08-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Find the correct sampler type for < 2.0 pshaders.

	* dlls/wined3d/surface.c:
	wined3d: Properly initialize a variable.

2006-08-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Cast-qual warnings fix.

2006-08-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Remove two testing fixme's that were accidentally committed.

2006-08-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/combo.c:
	user: Do not force repainting on WM_WINDOWPOSCHANGED in combobox.
	- do not force repainting on WM_WINDOWPOSCHANGED in combobox, it
	breaks Z-order based painting.
	- do nothing in the combobox WM_ERASEBKGND handler do all painting in
	WM_PAINT like Windows does.

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl: Fix Mesa/DRI regression.

2006-08-27  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix security tests to not crash on windows.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/kernel/locale.c:
	kernel32: Fix TRACE in WideCharToMultiByte to not cause exception with non-null
	terminated input.

2006-08-25  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Make do_file_copyW send "target newer" notifications.

	* dlls/kernel/profile.c, dlls/kernel/tests/profile.c:
	kernel: Add tests for GetPrivateProfileSectionNames. Make behaviour the same
	as observed on Windows XP.

2006-08-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/path.c:
	kernel: Fixed off-by-one error in GetShortPathNameW.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/wrc.c:
	wrc: Get rid of xmalloc casts.

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.y, tools/wrc/utils.c:
	wrc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/wmc.c:
	wmc: Get rid of xmalloc casts.

	* tools/wmc/mcy.y, tools/wmc/utils.c:
	wmc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/utils.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/checklink.c:
	makefiles: Get rid of the checklink rules, they no longer work.

2006-08-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleproxy.c:
	ole32: Call IRpcChannelBuffer_GetBuffer for the RemRelease case of
	Invoke, even though we are requesting a buffer size of 0 as we put
	extra data into the buffer in IRpcChannelBuffer_GetBuffer.

	* dlls/ole32/oleproxy.c:
	ole32: Use IRpcChannelBuffer_GetBuffer in the hand-made proxy/stubs
	instead of calling I_RpcGetBuffer as IRpcChannelBuffer_GetBuffer does
	some extra magic.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: Add support for main-threaded apartments.
	A main-threaded apartment is the first single-threaded apartment in the
	process. It was designed to be used for legacy applications that don't
	want to think about threading at all, even if they are always called
	from the same context, as is the case for regular STAs.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Move the opening of the AppId key for a clsid to a helper function.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: CoGetClassObject should host a single-threaded object in a
	single-threaded apartment if executing in a multi-threaded apartment,
	if one exists.

	* dlls/ole32/compobj.c:
	ole32: Get the threading model value for inproc classes and output a
	fixme if we should create it in an apartment of another type.

2006-08-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/eventlog.c:
	advapi32: Cast-qual warnings fix.

2006-08-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Better stub for QueryStatus(CGID_MSHTML).

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added nsICommandParams argument to do_ns_command.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix secur32 test to pass on windows.

2006-08-25  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fix LookupAccountSid and tests to pass on windows and wine.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests.

2006-08-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Updated Korean resource.

2006-08-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix a bug in SHELL_ConfirmW.
	Fix a bug introduced while changing the OK/Cancel to Yes/No.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/Makefile.in:
	winex11.drv: Remove no longer used all: target.

2006-08-25  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in EnumFuncs function.

2006-08-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/avisplit.c, dlls/quartz/fourcc.h:
	quartz: Skip over INFO chunk in AVI file parsing.

2006-08-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c:
	comctl32: Remove unneccessary default debug channels.

2006-08-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use a common function for all D3DCMPFUNC -> GLenum conversions.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Set the ALLUSERS property to 1 always.

	* dlls/msi/alter.c:
	msi: Fix a memory leak.

	* dlls/msi/dialog.c:
	msi: Use msi_get_property_int rather than MSI_GetPropertyW.

2006-08-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix a compiler warning when OpenGL is missing.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Avoid sizeof in traces.

	* Make.rules.in, configure, configure.ac, loader/Makefile.in,
	  server/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	configure: Set rpath on all executables that link to libwine.
	Also add the -multiply_defined suppress option for executables on MacOS.

	* configure, configure.ac:
	configure: Make sure timezone and daylight are variables.

	* aclocal.m4, configure, configure.ac:
	configure: Move cache handling into the WINE_TRY_CFLAGS macro.

	* configure, configure.ac:
	configure: Enable the -Wwrite-strings flag.

	* tools/winedump/main.c, tools/winedump/output.c,
	  tools/winedump/winedump.h:
	winedump: Get rid of the install script.

	* programs/make_progs:
	make_progs: Update the directory list in configure.ac too.

	* dlls/make_dlls:
	make_dlls: Update the directory list in configure.ac too.

2006-08-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2006-08-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typelib.c,
	  tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Remove usage of type_t ref field for base types; simplify code.

2006-08-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.y:
	widl: Write-strings warning fix.

	* dlls/mshtml/nsiface.idl:
	mshtml: Write-strings warnings fix.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Reimplement msi_dup_property and msi_get_property_int.

	* dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store properties in a hash table, not the database.
	Use string insensitive comparisons for property names.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Fix the height of the line control window.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryList dialog control.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryCombo dialog control.

2006-08-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added some GUIDs.

2006-08-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Load projected textures in fragment shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c:
	wined3d: Compile pixel shaders in drawprim.

2006-08-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/riched32/Makefile.in, dlls/riched32/version.rc:
	riched32: Add version resource.

	* tools/wine.inf:
	wine.inf: Add a bunch of fake dlls.

2006-08-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/version.c:
	ntdll: Print 64bit integers with wine_dbgstr_longlong.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Ru.rc,
	  dlls/msi/msi_Tr.rc, dlls/msi/package.c:
	msi: Inform the user with an error message when the MSI file path is invalid.

2006-08-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.20.

----------------------------------------------------------------
2006-08-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed bug in previous OpenGL warning patch.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Output information on failed LsaQueryInformationPolicy tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix strings with lengths that are exact multiples of 2^16.

2006-08-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi: Add missing glyph code to GetGlyphIndices and tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Use kernel functions in preference to libwine ones.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Fix compilation of test on MSVC6.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add an initial implementation of the PathEdit control.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix ATI OpenGL bug.

2006-08-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* configure, configure.ac:
	configure: Extend the current OpenGL/Direct3D warning code.

2006-08-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean Resource.

2006-08-23  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Updated conformance test return string for VT_RESERVED.

2006-08-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/debug.c, tools/winedump/dump.c:
	winedump: Cast-qual warnings fix.

2006-08-23  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c:
	winex11.drv: Fix explorer regression caused by systray patch
	Move systray_dock_window call to X11DRV_CreateWindow so that it can
	safely call SetWindowPos without having _CheckNotSysLevel crash the
	explorer.

2006-08-22  Clinton Stimpson <cjstimpson@afinternet.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add tests for EM_GETMODIFY.

2006-08-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Disconnect and a tidy up of the implementation.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Connect and fixes to make them pass.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for CreateStub and fix up CStdStubBuffer_Construct to match.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for NdrStubForwardingFunction and write a commented out
	implementation.
	This shows that the IRpcStubBuffer for a delegated stub's base
	interface is stored at (void**)This-1.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for NdrDllGetClassObject.
	These show that delegated stubs need different Connect, Disconnect and
	CountRefs methods than non-delegated stubs (ie they don't use all of
	the CStdStubBuffer_* functions).

2006-08-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Added IMultiLanguage3 interface stub implementation.

	* include/mlang.idl:
	mlang.idl: Added IMultiLanguage3 declaration.

2006-08-22  Andrzej Popowski <popej@friko.onet.pl>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix scanf format "%i" base detection.

2006-08-21  Stefan Huehner <stefan@huehner.org>

	* programs/winedbg/winedbg.man.in:
	winedbg: Fix typo in manpage.

2006-08-19  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Make the destination surface glDirty in UpdateSurface.

2006-08-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warnings fix.

2006-08-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ppd.c, dlls/wineps.drv/psdrv.h:
	wineps.drv: Write-strings warnings fix.

	* dlls/ddraw/main.c:
	ddraw: Write-strings warnings fix.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* README, loader/wine.man.in:
	Documentation updates.

	* tools/.gitignore, tools/Makefile.in, tools/wineprefixcreate.man.in:
	tools: Added a man page for wineprefixcreate.

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Moved to the Wiki by Tom Wickline.

2006-08-23  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pl.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/string.c:
	shlwapi: Move strings used by StrFromTimeInterval to resources.

	* programs/regedit/En.rc, programs/regedit/Pl.rc,
	  programs/regedit/about.c, programs/regedit/childwnd.c,
	  programs/regedit/framewnd.c, programs/regedit/listview.c,
	  programs/regedit/main.c, programs/regedit/main.h,
	  programs/regedit/resource.h:
	regedit: Put language-dependent strings in resources.

	* programs/regedit/framewnd.c:
	regedit: Remove custom filter from open/save dialogs.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/winecfg.c:
	winecfg: Make sure we can use a large text.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Add some documentation.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove -O2 disable hack for MacOS now that gcc is fixed.

2006-08-21  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure: Show messages about additional packages with --verbose.

2006-08-22  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add XEmbed system tray support.
	Portions of this patch based on the work of Mike Hearn and Rob
	Shearman.

2006-08-22  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Add handling for msiexec's regserver option.

2006-08-23  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Use ntdll values where possible.

	* include/windef.h:
	windef.h: Add a definition for FILETIME.

	* dlls/ntdll/threadpool.c:
	ntdll: Use RTL_CRITICAL_SECTION not CRITICAL_SECTION.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

	* programs/winecfg/driveui.c:
	winecfg: Wrong text in messagebox.

2006-08-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Update Korean resource.

2006-08-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* libs/wine/loader.c:
	libwine: Cast-qual warning fix.

	* tools/winebuild/res16.c:
	winebuild: Cast-qual warnings fix.

2006-08-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/string.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix opengl pixel format bug.

2006-08-22  Fatih Aşıcı <fatih.asici@gmail.com>

	* dlls/mshtml/Tr.rc:
	mshtml: Update Turkish resources.

2006-08-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add CryptFormatObject stub.

2006-08-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Pl.rc: Fix a backslash.

	* dlls/shlwapi/string.c:
	shlwapi: Make StrFormatByteSize format numbers using locale settings.

2006-08-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Use IPropertyNotifySink connection point.

2006-08-22  Robert Reif <reif@earthlink.net>

	* dlls/dsound/propset.c:
	dsound: Remove unused parameter from propset functions.

2006-08-21  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Try to #include <pthread.h> before checking for pthread_np.h.

2006-08-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Correctly draw transformed and untransformed vertices in the same scene.

2006-08-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Print parameters and add some documentation.

2006-08-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the AppSearch action.

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	msi: Add handling for MsiEvaluateCondition's substring operators.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiEvaluateCondition's substring operators.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/itss/itss.c:
	itss: Simplify the class factory.

2006-08-22  Kai Blin <kai.blin@gmail.com>

	* dlls/kernel/sync.c:
	kernel: Set last error in CreateIoCompletionPort.

2006-08-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c:
	shlwapi: Format the kilobyte file size number using locale settings.
	The code is quite complex but I haven't found any easier way to do it
	(passing NULL as NUMBERFMT results in two decimal places being appended).

	* dlls/shell32/pidl.c, dlls/shell32/recyclebin.c:
	shell32: Show file size in the details view in kilobytes.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Don't add the directory name twice when recursing into subdirectories.

2006-08-21  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for handling TKIND_COCLASS in userdefined_to_variantvt.

2006-08-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Fix a misplaced parenthesis.

2006-08-21  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Print 64bit integers with wine_dbgstr_longlong.

2006-08-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

2006-08-21  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resources.

2006-08-21  Matthew Finnicum <MattFinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_EXLINEFROMCHAR handle special case of lParam == -1.

2006-08-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added dispinterface handling to idl viewer.

	* programs/oleview/typelib.c:
	oleview: Added typedef handling to idl viewer.

2006-08-21  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Fix rendering of fonts that don't support anti-aliasing.

2006-08-19  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/audio.c, programs/winecfg/properties.h,
	  programs/winecfg/resource.h:
	winecfg: audio: Use strings from resources.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: driveui: Load UI strings from resources.

2006-08-19  David Adam <David.Adam@math.cnrs.fr>

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2006-08-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't pass bad values to glAlphaFunc and glDepthFunc.

	* dlls/wined3d/device.c:
	wined3d: Print real unhandled D3DCMPFUNC value.

2006-08-20  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added idl save to file functionality.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added idl displaying.
	- Added idl displaying.
	- Fixed AddToTLDataStrWithTabsW function.

	* programs/oleview/typelib.c:
	oleview: Added idl formatting.

	* programs/oleview/typelib.c:
	oleview: Added functions description to idl generation.

2006-08-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/install.c:
	advpack/tests: Make RunSetupCommand not popup dialogs.

2006-08-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel32: Print parameters, call SetLastError() when failing.

2006-08-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Better GPU detection.

2006-08-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Improve float constant loading a bit.
	- Use a list to keep track of what constants are set.
	- Move TRACEs and checkGLcall calls out of the main constant loading loop.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Lookup GLSL float uniform locations only once per program.

	* dlls/wined3d/stateblock.c:
	wined3d: Free the float constant map arrays for all stateblocks.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix indices for the float constant map.
	Indices for the float constant map should be multiplied by 4 because
	we're loading 4 component float vectors, not because the size of a
	float is 4.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added IDM_BOLD implementation.

2006-08-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/mscat.h:
	wintrust: Added stubbed CryptCATAdminEnumCatalogFromHash.

2006-08-19  Dan Kegel <dank@kegel.com>

	* dlls/mpr/wnet.c:
	mpr: Fix bug in ProviderOrder comma processing in wnetInit().

2006-08-19  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Swap two lines that were in wrong order / caused notification not
	to be sent.

2006-08-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Initial working implementation of EncryptMessage and DecryptMessage.

2006-08-19  Robert Reif <reif@earthlink.net>

	* dlls/kernel/environ.c, dlls/kernel/tests/environ.c:
	kernel32: Fix ExpandEnvironmentStrings to not overflow UNICODE_STRING buffer
	size (with test).

	* dlls/advapi32/tests/security.c:
	advapi32: LookupAccountSid buffer size query tests.

	* dlls/advapi32/security.c:
	advapi32: LookupAccountSid buffer size query fixes.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/qcap/capturegraph.c:
	qcap: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

	* dlls/shlwapi/shlwapi_No.rc:
	shlwapi: Update Norwegian Bokmål resources.

2006-08-18  Stefan Huehner <stefan@huehner.org>

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/comctl32/tests/header.c, dlls/ddraw/tests/d3d.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c,
	  dlls/riched20/tests/editor.c, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/sane.ds/sane_main.c, dlls/shell32/shellpath.c,
	  dlls/twain_32/dsm_ctrl.c:
	Fix some -Wstrict-prototype warnings () -> (void).

2006-08-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Correctly map toolbar bitmap mask color in case of non-default
	color scheme.

2006-08-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c:
	msvcrt: Fixed access to the extra arguments of setjmp3.

	* dlls/user/user_main.c:
	user: Add .exe extension to wineboot just in case.

	* programs/explorer/explorer.c:
	explorer: Specify an explicit path when launching winefile.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/systemclock.c:
	quartz: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: DSoundRender: Do not overwrite a full buffer.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* dlls/shlwapi/shlwapi_De.rc:
	shlwapi: Update German resources.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	winecfg: x11drv: Load vertex shader mode strings from resources.

2006-08-18  Tom Wickline <twickline@gmail.com>

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Fix reference in implementing new API calls.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c, dlls/mshtml/tests/htmldoc.c, dlls/mshtml/view.c:
	mshtml: Added more Exec tests and fixes.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix failing test on windows.

2006-08-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc_main.c:
	sfc: Print a FIXME only once.

2006-08-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound: Add class factory tests.

	* dlls/dsound/capture.c, dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/duplex.c,
	  dlls/dsound/propset.c:
	dsound: Class factory cleanup.
	Consolidate all class factories into a single implementation.
	Fixes a problem discovered by oleview.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Gracefully handle ntlm_auth versions that don't support the new
	commands.

2006-08-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Pl.rc:
	shlwapi: Add the Polish translation.

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/shlwapi/shlwapi_Tr.rc, dlls/shlwapi/string.c:
	shlwapi: Store the "%ld bytes" string as a resource.

	* dlls/shell32/trash.c:
	shell32: Show the original file name and deletion date in the Trash folder.

	* dlls/shell32/xdg.c, dlls/shell32/xdg.h:
	shell32: Add desktop entries parsing code.

	* dlls/shell32/shlfileop.c:
	shell32: Use Yes/No instead of OK/Cancel in confirm dialogs.

2006-08-18  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/locale.c:
	kernel32: Change a FIXME to a WARN.

	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/query.h,
	  dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Add a stub ALTER query.

2006-08-17  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Output format-strings for interface pointers.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Allow format-string functions to work with objects.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix test_LookupAccountSid to work on win9x.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Fix Advise implementation for IPropertyNotifySink.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Switch nsWebBrowset to editing mode in exec_editmod.

2006-08-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shlwapi/string.c:
	shlwapi: Print 64bit integers with wine_dbgstr_longlong.

2006-08-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remember to skip over the conformance description.

2006-08-17  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix ImageList_Replace function to correctly apply image mask.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added some defines.

2006-08-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Make tests loadable on NT4.

2006-08-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Defer all ExitWindowsEx processing to wineboot.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Added support for doing a proper shutdown before rebooting.
	Send WM_QUERYENDSESSION messages to all windows of a given process
	before moving on to the next.
	Switch option parsing to getopt.
	Added a bunch of options to control shutdown behavior.

2006-08-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h,
	  dlls/winex11.drv/opengl.c:
	x11drv/opengl: Pixel format rewrite.

2006-08-16  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/paint.c,
	  dlls/riched20/style.c:
	riched20: Send EN_LINK notifications. Properly underline / color links.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Add real signing / verifying to NTLM provider.

	* dlls/secur32/ntlm.c:
	secur32: Mask away NTLMv2 and key exchange flags so we never negotiate it
	for now.

2006-08-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/childwnd.c:
	regedit: Write-strings warnings fix.

	* dlls/ddraw/direct3d.c:
	ddraw: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warning fix.

2006-08-16  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Use typegen.c format-string functions in proxy.c.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move format-string declaration output to typegen.c.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of edit mode.

	* dlls/mshtml/olecmd.c:
	mshtml: Added beginning implementation of IDM_EDITMODE.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c:
	mshtml: Rename get_property to get_client_disp_property and make it available
	for other files.

	* include/mshtmhst.idl:
	mshtmhst.idl: Added DOCHOSTUITYPE declaration.

2006-08-16  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c:
	wined3d: Make sure b_info structure is properly allocated and released.

2006-08-16  Stefan Leichter <Stefan.Leichter@camline.com>

	* tools/winedump/minidump.c:
	winedump: Print each 64bit integers as two 32 bit integers.

2006-08-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2006-08-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-08-16  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2006-08-16  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use HOT imagelist for buttons in CHECKED state.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix issues with LVM_GETITEMW by removing superfluous flag.

	* programs/winecfg/appdefaults.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Use WCHARs for window title, current app.

2006-08-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for NdrAllocate.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: New resource strings for appdefaults.

2006-08-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c:
	mshtml: Added [Get|Set]ParentContentListener implementation.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValueEx to show that it sets the data
	size to 0 when a buffer isn't present and that it sets the type to
	REG_NONE on Win9x.

2006-08-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Silence WINED3DRS_DEBUGMONITORTOKEN.

2006-08-16  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix GetComputerObjectName tests based on feedback from Paul Vriens.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Explicitly load explorer.exe from the system directory.

	* tools/wine.inf:
	wine.inf: Create a fake exe for explorer.exe.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole32: Move some functions out of compobj.c that don't belong there and update
	the copyright statement.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Add some more tests for failure cases of Co* functions and make builtin
	ole32 pass them.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add tests for the failure cases of CLSIDFromProgID and fix the function
	to conform to these.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move processing of the arguments from NdrClientCall2 to two new
	functions.

2006-08-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/option.c:
	wldap32: Support setting server controls.

	* dlls/wldap32/option.c, dlls/wldap32/parse.c:
	wldap32: Document ldap_{get,set}_option and the parsing functions.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in,
	  programs/Makeprog.rules.in:
	configure: Setting rpath should no longer be needed for dlls.

2006-08-16  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Ordinal 394 should load and call shell32.SHNotifyChange.
	Makes builtin shlwapi behave better during reboot after IE6 install.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for ZoneComputePaneSize.
	Allows IE6 to show its main window with builtin shlwapi.

	* dlls/msi/tests/db.c:
	msi: Fix a couple of memory leaks in the test code.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.h:
	winecfg: appdefaults: Use more strings from resources, unicode.

	* programs/winecfg/main.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Make load_string public.

	* programs/winecfg/De.rc:
	winecfg: Tweak and update German resources.

2006-08-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Generate proxy code for user marshalled types.

	* tools/widl/proxy.c:
	widl: Fix out-only temporary variable generation.

	* tools/widl/proxy.c:
	widl: Fix NdrComplexStructUnmarshall calls in generated code.

	* tools/widl/proxy.c:
	widl: Fix NdrConformantArrayUnmarshall calls in generated code.

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Calculate method indices in parser instead of during header generation.

2006-08-15  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/secur32.c:
	secur32: Add GetComputerObjectName tests.

	* dlls/secur32/secur32.c:
	secur32: Partial GetComputerObjectName implementation.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy test to pass on NT4.

	* dlls/kernel/cpu.c, dlls/kernel/kernel32.spec, include/winbase.h:
	kernel32: Add GetNativeSystemInfo.

2006-08-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add a stub for MsiGetFeatureCost.

	* dlls/msi/source.c:
	msi: Use the bare minimum number of parameters for LookupAccountName.

2006-08-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ps.c:
	wineps.drv: Write-strings warnings fix and declare function static.

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Write-strings warning fix.

2006-08-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Correctly handle nsILoadGroup.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Store the actual process count in snapshots.
	We can't rely on running_processes for that, since it now also counts
	processes waiting for SIGKILL and those aren't included in snapshots.

	* dlls/user/tests/cursoricon.c:
	user/tests: Fix a compiler warning, and remove some useless casts.

	* dlls/ntdll/loadorder.c:
	ntdll: Default to native loadorder for the main exe if not in system directory.
	Unlike dlls, executables can have the same name without necessarily
	being the same application, so defaulting to native is more likely to
	do the right thing.

2006-08-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/file.c:
	kernel/tests: Wrong error code checked.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Make tests loadable again on NT4.

	* include/winerror.h:
	winerror.h: Added an error code.

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustLoadFunctionPointers.

2006-08-15  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/infosoft/tests/infosoft.c,
	  programs/winetest/Makefile.in:
	infosoft: Add a test for the language neutral word breaker.

2006-08-15  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/En.rc:
	winecfg: Improve wording of virtual desktop explanation.

2006-08-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ddraw/main.c:
	ddraw: Do not report DDCAPS_OVERLAY and friends since overlays are not supported.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* tools/relpath.c:
	relpath: Properly handle a "." directory name.

2006-08-15  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Remove unnecessary casts in test suite.

2006-08-14  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/chain.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/chain.c:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

	* include/wincrypt.h:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, loader/kthread.c:
	loader/kthread: Remove some unneeded #ifdefs, other platforms use pthread now.

	* configure, configure.ac:
	configure: Disable optimization on MacOS because of gcc bug.

	* configure, configure.ac:
	configure: Use a platform name check for MacOS shared library support,
	it's completely different from the others anyway.

	* configure, configure.ac, include/config.h.in, libs/wine/Makefile.in:
	configure: Moved the library checks after the function checks to avoid code
	duplication.

2006-08-15  Kai Blin <kai.blin@gmail.com>

	* include/sspi.h:
	secur32: Fix typo in ISC flags.

	* dlls/secur32/ntlm.c:
	secur32: Add handling of feature flags and session key to AcceptSecurityContext.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Copy helper buffer to output buffer before reusing helper buffer.

2006-08-14  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Pass the right size to MIDL_memset in generated proxy code.

2006-08-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Non-compressed files may come before the list of compressed files in the
	file sequence.

2006-08-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/tests/extract.c:
	cabinet/tests: Write-strings warnings fix.

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/gdbproxy.c:
	winedbg: Correctly protect system inclusion (needed for Mingw compilation).

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/Makefile.in,
	  dlls/ws2_32/Makefile.in, include/config.h.in,
	  programs/winedbg/Makefile.in, server/Makefile.in:
	configure: Only link against libpoll where really necessary.

2006-08-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustRemoveActionID.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/user/sysparams.c:
	user: Fix SPI_SETICONTITLELOGFONT to check for LOGFONTW size.

	* dlls/user/sysparams.c:
	user: Initialize size of nonclients struct in load_nonclient_metrics.

2006-08-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/wine/Makefile.in:
	libwine: Also set the current library version for MacOS.

	* configure, configure.ac:
	configure: Suppress multiple definitions warnings from the MacOS linker.

	* server/request.c, server/request.h, server/signal.c:
	server: Make sure to completely kill processes before returning from a
	wineserver -k.

	* server/process.c, server/process.h, server/thread.c:
	server: Send a SIGKILL to processes that don't terminate properly.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Avoid a warning for VT_FILETIME in PropVariantCopy.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Fixed the symbol lookup so that it can really find _foo when looking
	for foo.

	* programs/winedbg/stack.c:
	winedbg: Native dbghelp can modify the passed debug context in StackWalk,
	so guard against it.

	* programs/winedbg/Makefile.in, programs/winedbg/tgt_active.c:
	winedbg: Don't ask for module inspection when calling SymInitialize.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Clean up AcceptSecurityContext (reduce indent and duplication).

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Set non-client metrics from theme.

	* dlls/uxtheme/msstyles.c:
	uxtheme: Split color handling out of MSSTYLES_ParseThemeIni into smaller
	helper functions.

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Enable gradient captions if a theme provides colors for them.

2006-08-14  Shachar Shemesh <wine@shemesh.biz>

	* fonts/system.sfd:
	fonts: Add Hebrew to the system font.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Put the HeapFree back in the right place.

	* dlls/ole32/stg_prop.c:
	ole32: Use PropVariantInit instead of memset.

2006-08-14  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/dsgetdc.h:
	include: Add dsgetdc.h.

	* dlls/advapi32/lsa.c:
	advapi32: Move duplicated code into function.

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c:
	advapi32: Try again with different access mask if LsaOpenPolicy fails with
	STATUS_ACCESS_DENIED.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Fix heap error.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add handling for SECPKG_CONTEXT_FLAGS to QueryContextAttributes,
	unify indentation.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Cast helper to ULONG_PTR instead of DWORD.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple VerifySignature.

2006-08-12  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple MakeSignature.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Make AcceptSecurityContext behaviour consistent with Windows.

2006-08-13  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:AddRefHfont.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:ReleaseHfont.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Calculate icon data if the picture is dirty, or there's no icon data.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Print an IID in the trace, not just a pointer to it.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Don't complain when PICTDESC->cbSizeofstruct is 0.

	* dlls/ole32/hglobalstream.c:
	ole32: Always set pcbWritten when writing a stream.

	* dlls/ole32/ole2.c:
	ole32: FreePropVariantArray should return an error if rgvars is null.
	As suggested by Rob Shearman.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/system.c:
	uxtheme: Don't back up colors etc. when a theme is already active.

2006-08-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/view/Ko.rc:
	view: Updated Korean resource.

2006-08-12  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more LookupAccountSid tests.

	* dlls/advapi32/security.c:
	advapi32: Add more SIDs to AccountLookupSid.

	* dlls/netapi32/access.c:
	netapi32: NetUserModalsGet bug fixes and cleanup.

2006-08-13  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix vertex shader corruption issue.

2006-08-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winedbg/memory.c:
	winedbg: Print 64bit integers with wine_dbgstr_longlong.

2006-08-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Write-strings warnings fix.

2006-08-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winetest/main.c:
	winetest: Write-strings warnings fix.

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-08-12  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Improved interface handling in idl viewer.

2006-08-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used get_nsIURI.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in about protocol handler's
	CombineUrl.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/widltypes.h:
	widl: Improve pointer null checking logic.

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Use ref_type to simplify some code.

2006-08-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add some more well known SIDs.

2006-08-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Added test to check if olefont:IFont_QueryInterface increments
	ref counter.

2006-08-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If a component's state is not local, source, or default, default to the
	local state.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Improve undocumented functions.
	- Test and implement I_CryptGetDefaultCryptProv (and correct its
	parameter list)
	- I_CryptReadTrustedPublisherDWORDValueFromRegistry always initializes
	its out parameter, correct and show with a test.

	* dlls/msi/tokenize.c:
	msi: Use wide char strings for token values to avoid an unnecessary
	WideCharToMultiByte.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/relay.c,
	  tools/winebuild/res16.c, tools/winebuild/res32.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Added output() function to properly deal with write errors.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Don't generate indentation spaces on empty lines.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Exit the whole process when killing the last thread.

2006-08-11  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix LZ77 decompressor.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fix.

	* dlls/msi/files.c:
	msi: Write-strings warning fix.

	* dlls/version/install.c:
	version: Write-strings warnings fix.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Only load crypt32 once.

2006-08-11  Robert Reif <reif@earthlink.net>

	* include/lmaccess.h:
	lmaccess.h: Add some LOCALGROUP defines.

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c, include/winbase.h:
	kernel32: Add IsWow64Process.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wldap32/ber.c, dlls/wldap32/init.c:
	wldap32: Write-strings warnings fix.

2006-08-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Set the CLSID_Internet shell folder's attributes.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/indexsrv.idl, include/indexsvr.idl:
	include: Rename indexsvr.idl to indexsrv.idl.

	* dlls/infosoft/wordbreaker.c:
	infosoft: Use the pfnFillTextBuffer function to refresh the buffer.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  tools/wine.inf:
	infosoft: Implement and register the language neutral wordbreaker, not the
	English_US one.

2006-08-10  Aric Stewart <aric@codeweavers.com>

	* dlls/user/menu.c:
	user: Implement MNS_NOTIFYBYPOS.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Remove some macros and clean up the code now that all platforms use
	siginfo.

	* dlls/ntdll/signal_i386.c:
	ntdll: Switch linux to siginfo-style signal handling.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/pstorec/pstorec.c, dlls/pstorec/pstorec.spec:
	pstorec: Add a stub implementation.

2006-08-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Removes stub message from olefont:OLEFontImpl_FindConnectionPoint.

2006-08-10  Molle Bestefich <molle.bestefich@gmail.com>

	* tools/bug_report.pl:
	bug_report.pl: Use correct 'wine --version' syntax.

2006-08-10  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.h:
	widl: Fix incorrect version number in generated code.

2006-08-11  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix opengl extension call.

2006-08-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/package.c:
	msi: Only remove a file if the version to be installed is strictly newer than
	the old file.

2006-08-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/treeview.c:
	regedit: Write-strings warnings fix.

	* dlls/wininet/tests/http.c:
	wininet/tests: Write-strings warnings fix.

2006-08-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Accept RTF header without a version number.

	* dlls/riched20/reader.c:
	riched20: Accept RTF group tokens inside colortbl destination.

2006-08-10  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Fix spelling in a comment.

2006-08-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement CompleteAuthToken for NTLM.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/serial.c, server/thread.c, server/timer.c,
	  server/trace.c, server/winstation.c:
	server: Only call gettimeofday once per poll loop.

2006-08-04  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: Increase requested file size in two tests to hit FreeBSD file
	size limit.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.19.

----------------------------------------------------------------
2006-08-08  Colin Pitrat <colin.pitrat@bull.net>

	* tools/bug_report.pl, tools/make_authors, tools/winapi/config.pm,
	  tools/winapi/make_filter, tools/winapi/msvcmaker,
	  tools/winapi/nativeapi.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_extract, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_module_user.pm, tools/winapi/winapi_test,
	  tools/winedump/function_grep.pl:
	tools: Check for open return code in Perl scripts.

2006-08-09  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add conformance tests for WM_SETFONT.

2006-08-09  Ken Myers <kmyers@ucla.edu>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_EXLIMITTEXT, EM_GETLIMITTEXT and tests.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c:
	crypt32: Implement CryptRegisterDefaultOIDFunction and
	CryptUnregisterDefaultOIDFunction.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of inf paths that are quoted (due to spaces, typically).

2006-08-09  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Add ref_type (dereference typedefs) and use it.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ddraw/main.c, dlls/gdi/font.c, dlls/setupapi/misc.c,
	  dlls/setupapi/stringtable.c:
	janitorial: Removed the rest of the redundant NULL checks before HeapFree.

2006-08-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/tests/info.c, dlls/version/tests/install.c:
	version/tests: Write-strings warnings fix.

	* dlls/wineps.drv/init.c:
	wineps.drv: Write-strings warnings fix.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/user/static.c:
	user32: Remember to draw the icon when SS_CENTERIMAGE is set.

2006-08-10  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

	* dlls/mshtml/No.rc:
	mshtml: Updated Norwegian Bokmål resources.

2006-08-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/package.c:
	msi: Download install cabinet files if the msi package is remote.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Add a couple stubs, and implement the undocumented
	I_CryptReadTrustedPublisherDWORDValueFromRegistry.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Draw buffers support.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Minor cursor fixes.

2006-08-08  Clinton Stimpson <clinton@elemtech.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash with NULL lParam in EM_SETTEXTEX.

2006-08-08  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wininet/netconnection.c:
	wininet: MSG_WAITALL support in NETCON_recv with SSL.

2006-08-09  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Rename _execve to MSVCRT__execve.

2006-08-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Made stabs parsing a bit more robust.
	Enhance dbghelp's robustness against bogus stabs sections found in
	meetro.exe (as reported by Jan Zerebecki).

2006-08-09  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/database.c:
	msi: Support MSIDBOPEN_CREATEDIRECT and MSIDBOPEN_DIRECT in MSI_OpenDatabaseW.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Forward NdrClientCall to NdrClientCall2.
	NdrClientCall should be implemented as a separate function when
	NdrClientCall2 has been factorised enough.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add some more traces and make the stack offsets easier to read in the
	stubless interpreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Change call_memory_sizer to preserve the buffer contents and
	initialise the memory size field to zero before calling the memory
	sizer function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Set retval_ptr and allocate memory for out pointers for the old format
	stubless intepreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Support fixed arrays in calc_arg_size.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Complex types should be dereferenced an extra time in the old format
	stubless code.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the stack offset for the old format stubless code when an object's
	method is being called.

	* dlls/ole32/defaulthandler.c:
	ole32: Add a check for NULL This->dataAdviseHolder in DefaultHandler_Stop.
	Cleanup DefaultHandler_GetCanonicalFormatEtc by using
	This->pDataDelegate instead of querying for IDataObject from
	This->pOleDelegate.

	* dlls/ole32/storage32.c:
	ole32: Fix a typo in IEnumSTATSTGImpl_QueryInterface where IStorage was being
	compared against instead of IEnumSTATSTG.

	* dlls/ole32/moniker.c:
	ole32: When comparing monikers use the abData field of MInterfacePointer
	as ulCntData doesn't include the size of its own field.

	* dlls/ole32/oleobj.c:
	ole32: Zero stg in case ADVF_NODATA is specified.
	Otherwise IDataObject_GetData fails before using it in
	DataAdviseHolder_SendOnDataChange.

	* include/rpcproxy.h:
	include: Add DLL registration macros to rpcproxy.h for dlldata.c files.

	* include/rpcproxy.h:
	include: Fix rpcproxy.h to allow the compilation of dlldata.c files.
	Add macros for generating the GetProxyDllInfo, DllGetClassObject and
	DllCanUnloadNow functions.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/regsvr.c:
	ole32: Register the CLSID_Picture_Metafile and CLSID_Picture_Dib ProgIDs.

	* dlls/msxml3/regsvr.c:
	msxml3: DOMFreeThreadedDocument's thread model is Both, not Free.

	* dlls/msi/regsvr.c:
	msi: Link the WindowsInstaller.Installer ProgId back to the right CLSID.

	* dlls/msi/regsvr.c:
	msi: Change the CLSID_IMsiServer ProgId to IMsiServer to match Windows.

2006-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/regsvr.c, include/mlang.idl:
	mlang: Give the CLSIDs their proper names.
	Move CLSID_CMultiLanguage and CLSID_CMLangConvertCharset to mlang.idl.
	Leave CLSID_CMLangString in regsvr.c as MSDN claims it is not supported anymore.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/regsvr.c:
	shell32: Register CLSID_NetworkPlaces, CLSID_ShellFSFolder and
	CLSID_ShellFolderViewOC.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register CLSID_CUrlHistory and CLSID_Internet.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user: Fix the keyboard navigation and some graphical glitches for multi-column
	menus.

2006-08-09  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/winerror.h:
	winerror.h: Add some error codes.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/pixelshader.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GLSL regression / draw buffers support.

2006-08-09  Frank Richter <frank.richter@gmail.com>

	* dlls/shell32/shell32_De.rc:
	shell32: Tweak and update German translation.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c:
	ddraw: Implement D3DRENDERSTATE_TEXTUREMAPBLEND.

	* dlls/wined3d/device.c:
	wined3d: Watch out for negative results when validating the shader constant
	range.

2006-08-08  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: In text mode a ctrl-z signals EOF.
	Spotted by David Hagood with test suggested by Dan Kegel.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/cursoricon.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/cursoricon.c:
	user: CopyImage: Handle the flags LR_COPYDELETEORG, LR_CREATEDIBSECTION,
	and LR_MONOCHROME.

2006-08-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Accept more flags in SetMenuItemInfo and ModifyMenu.
	- Accept MFT_MENU{BAR}BREAK, MFT_RADIOCHECK, MFT_RIGHTJUSTIFY, and
	MFT_RIGHTORDER in SetMenuItemInfo.
	- InsertMenu, AppendMenu, ModifiyMenu: Accept MF_HILITE flag (undocumented).
	- SetMenuItemInfo: Only use the lower word of the bitmap handle as
	documented in MSDN (Word 95 depends on this).
	- The type MFT_RADIOCHECK cannot be set if only the checkmarks are
	modified with SetMenuItemInfo.
	- New tests.

2006-08-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use moniker in AsyncOpen if channel is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Set nsURI's moniker in NewURI.

	* dlls/mshtml/nsembed.c:
	mshtml: Set nsURI's moniker in OnStartURILoad.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in QueryInterface if uri is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added default GetSpec implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in ResProtocolInfo::CombineUrl.

	* dlls/mshtml/nsembed.c:
	mshtml: Continue searching for Gecko if loading xpcom.dll failed.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c:
	mshtml: Store IMoniker in BSCallback.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added GetMoniker and SetMoniker methods to nsIWineURI.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Create "Internet Explorer_Hidden" window.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Load the page from moniker if we don't have nsIChannel.

	* dlls/shdocvw/classinfo.c:
	shdocvw: Return DIID_DWebBrowserEvents in GetGUID for WebBrowser_V1.

2006-08-09  Huw Davies <huw@codeweavers.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathUnquoteSpaces.

2006-08-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Make ntlm tests run on both WinXP and Win2k.

	* dlls/secur32/tests/ntlm.c:
	secur32: Add tests for MakeSignature, VerifySignature, EncryptMessage and
	DecryptMessage.

2006-08-09  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	shell32: IShellLink::SetPath removes quotes from the path.

	* dlls/shell32/tests/shelllink.c:
	shell32: Fix test compilation with MSVC6.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_private.h, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Make the message extra info 64 bits on Win64.

	* dlls/user/message.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/request.h,
	  server/trace.c:
	server: Split the queuing of hardware messages into a separate
	send_hardware_message request.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/recyclebin.c:
	shell32: Add recyclebin.c file missing in previous commit.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* dlls/shell32/regsvr.c, dlls/shell32/shres.rc:
	shell32: Add a custom icon for the trash folder.

	* dlls/shell32/trash.c:
	shell32: Add trash items enumeration.

	* dlls/shell32/Makefile.in, dlls/shell32/regsvr.c,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shellole.c, dlls/shell32/shresdef.h,
	  dlls/shell32/trash.c, dlls/shell32/xdg.h:
	shell32: Add a Trash virtual folder.

2006-08-06  Yong Chi <yong28chi@yahoo.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Fix for incorrect return value from wined3d.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in:
	Make.rules: Added rules for client/proxy/server generation from IDL files.

	* programs/explorer/desktop.c:
	explorer: Never paint the desktop when using the X root window.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Trace key type in CryptFindOIDInfo.

2006-08-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/exit.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/process.c:
	msvcrt: Remove redundant NULL checks before MSVCRT_free.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Remove redundant NULL checks before MemFree.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* programs/wordpad/wordpad.c:
	wordpad: Request WS_VSCROLL now that riched20 supports it.

	* dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Implement EM_SHOWSCROLLBAR, EM_SETSCROLLPOS, ES_DISABLENOSCROLL,
	and WS_VSCROLL.

2006-08-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the RemoveFiles action.

2006-08-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c:
	user/tests: Write-strings warnings fix.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/shreg.c:
	shlwapi/tests: Write-strings warnings fix.

2006-08-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c:
	secur32: Move NTLM tests to ntlm.c to avoid cluttering main.c with NTLM-specific
	tests.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Test and fix CryptEncrypt with NULL buffer.

2006-08-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptItemize will break up the string into script_items.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* configure, configure.ac:
	configure: Fix the linux/ipx.h detection.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Volume texture addressing caps.

	* dlls/wined3d/directx.c:
	wined3d: Shader declaration cap fixes.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/run.c:
	riched20: Modify ME_CharFromPoint to work properly with password controls.

2006-08-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/mshtml/Sv.rc, dlls/mshtml/rsrc.rc:
	mshtml: Add Swedish translation.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Shader cap fixes.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Make ExitWindowsEx asynchronous by deferring the real work to the
	explorer process.

2006-08-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Use case insensitive comparisons when comparing paths.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Fix the compressed files logic.
	If the compressed file attribute is not set, use the Word Count
	property to determine if files are compressed.

2006-08-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-08  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Stub out remaining renderstates.

	* dlls/wined3d/device.c:
	wined3d: Correct check for GL ext. support in MULTISAMPLEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Add missing newline at the end of traces.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Registry setting for the amount of simulated texture memory.
	Set VideoMemorySize under HKCU\Software\Wine\Direct3D to amount in MB
	as string.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: lnkfile\shellex\ContextMenuHandlers\... is not supposed to have a
	default value.

	* tools/wine.inf:
	wine.inf: Don't create a fake exe and change the name at the same time.
	This confuses installers that think said exes can be run when this is
	not the case and cannot work.

	* tools/wine.inf:
	wine.inf: Use %CurrentVersionNT% wherever applicable.

	* dlls/mlang/regsvr.c:
	mlang: Fix the 'Multi Language String' CLSID: there is no
	{44EC053A-B70D-11D0-B188-00AA0038C969} CLSID in the Windows registry.

	* include/shlguid.h:
	shell32: Add CLSID_CUrlHistory and CLSID_CURLSearchHook.

	* dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, dlls/inseng/regsvr.c:
	inseng: Switch to the standard regsvr.c registration code.
	Now the CLSID_DLManager and CLSID_ActiveSetupEng keys get proper display names.
	This also gives us DllUnregisterServer() for free.

	* dlls/itss/regsvr.c:
	itss: Register CLSID_ITSProtocol. Tweak the registration code (via copy/paste)
	so we can register its VersionIndependentProgID.

	* dlls/oleaut32/regsvr.c:
	oleaut32: Set some missing ProxyStubClsid fields.

	* dlls/ole32/regsvr.c:
	ole32: Add a BaseInterface where needed.

2006-08-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Textureops caps fix.

2006-08-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c, dlls/user/tests/text.c:
	user/tests: Write-strings and cast-qual warnings fix.

	* dlls/shell32/dialogs.c, dlls/shell32/shellord.c:
	shell32: Write-strings warnings fix.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Always return ERROR_SUCCESS in WinVerifyTrust.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiGetProperty.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	configure: Fixed soname detection on MacOS by using otool instead of ldd.

2006-08-05  Kevin Koltzau <kevin@plop.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hid/hid.spec, dlls/hid/main.c,
	  dlls/hid/version.rc:
	hid: Initial implementation.

2006-08-07  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Add INTERNET_OPTION_SECURITY_FLAGS stub to InternetSetOptionW.

2006-08-07  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/undo.c, dlls/riched20/wrap.c:
	riched20: New, clean, simple selection repaint logic - should fix all outstanding
	refresh issues.

2006-08-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Stub D3DPERF_ functions.

	* dlls/wined3d/query.c, include/wine/wined3d_gl.h:
	wined3d: Allow async occlusion queries.

	* dlls/wined3d/query.c:
	wined3d: Improve a few query traces.
	The query type is useful to have in query TRACEs.
	IWineD3DQueryImpl_GetDataSize isn't really a stub.

	* dlls/wined3d/query.c:
	wined3d: Check Occlusion query GL calls.

	* dlls/wined3d/utils.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add a couple of traces to the vertexdeclaration creation code.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/wineps.drv/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/wine/Makefile.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	makefiles: Use make dependencies to create installation directories.
	This avoids a lot of redundant calls to mkinstalldirs.

	* dlls/ntdll/signal_i386.c:
	ntdll: Get rid of the Linux legacy signal stack switching.
	It doesn't work right in 32-bit code anyway.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Cleanup signal_i386.c a bit and fix *BSD.

2006-08-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Tell the advise holder what the data delegate is in DefaultHandle_DAdvise
	if we are already connected.

	* dlls/ole32/oleobj.c:
	ole32: Finish off delegate notifications in the data advise holder.
	Advise the data delegate object when new advises come in on the data
	advise holder, not just when connecting.
	Unadvise the data delegate object when unadvising a connection on the
	data advise holder, when destructing the data advise holder and when
	disconnecting.

2006-08-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Signal event after we queued an event. Not before.

2006-08-05  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/netapi32.spec,
	  include/lmaccess.h:
	netapi32: Add stubs for remaining NetLocalGroup* functions.
	Move existing NetLocalGroup* functions to local_group.c.
	Add stubs for remaining NetLocalGroup* functions.

2006-08-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Missing bits from previous patch about variables with constant values.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, documentation/Makefile.in:
	Make.rules: Make all submake invocations silent for consistency.

	* dlls/ntdll/directory.c:
	ntdll: Fixed buffer overflow in NtQueryDirectoryFile optimisation.

2006-08-06  Francois Gouget <fgouget@free.fr>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Add trailing '\n's to ok() calls.

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/refcount.c,
	  dlls/mciavi32/mciavi.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/msi/msi.c, dlls/ole32/compobj.c,
	  dlls/shell32/trash.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexbuffer.c, include/mlang.idl:
	Assorted spelling fixes.

2006-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: texture caps fixes.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: General constant caps fix.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, include/wine/pthread.h,
	  loader/pthread.c:
	loader/pthread: Added pthread_attr_get_np support.

2006-08-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Fix the dialog centering logic.

	* dlls/kernel/powermgnt.c:
	kernel32: Change some FIXMEs to WARNs.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/tests/extract.c:
	cabinet: Fix and test the undocumented Extract function.
	The paths are MAX_PATH length.
	The last field is list of files which is checked when flags = 0.
	Add tests for the flag in the file list.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Split the cabinet path for FDICopy.

2006-08-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/oleview/Ko.rc:
	oleview: Updated Korean resource.

2006-08-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Don't crash when SetRenderTarget() is called with a NULL pSurface.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix D3DCOLOR swizzling in shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Delay vertex shader compilation until the shader is first used.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/directory.c:
	ntdll: Add FreeBSD default serial port device.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Test relative error, not absolute.

2006-08-05  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add some more RIDs.

2006-08-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c, dlls/setupapi/tests/query.c:
	setupapi/tests: Write-strings warnings fix.

	* dlls/secur32/tests/main.c, dlls/secur32/tests/schannel.c:
	secur32/tests: Write-strings warnings fix.

2006-08-05  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Some more exports requested from msvcr80.dll.

2006-08-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We should not override existing associations.

	* dlls/mshtml/mshtml.inf:
	mshtml: Fix the .jfif Content Type.

2006-08-04  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Ensure text is wrapped before invalidating selection.

2006-08-05  Alexandre Julliard <julliard@winehq.org>

	* libs/.gitignore, libs/wine/Makefile.in:
	libwine: Add a minor number to the library filename for future extensions.

	* configure, configure.ac, libs/.gitignore, libs/Makelib.rules.in,
	  libs/wine/Makefile.in:
	libs: Get rid of Makelib.rules since we only have one library now.
	Merge all the rules into the libwine makefile.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetUserGetLocalGroups.

	* dlls/netapi32/access.c:
	netapi32: Return an error for unimplemented levels in NetUserGetInfo.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetLocalGroupEnum.

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add some stubs.

2006-08-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/tests/package.c,
	  include/msiquery.h:
	msi: Write-strings warnings fix.

2006-08-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/volume.c,
	  include/wine/wined3d_gl.h:
	wined3d: Volume textures fix.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Raster caps fix.

	* dlls/wined3d/directx.c:
	wined3d: Primitive misc caps fix.

2006-08-04  Kevin Koltzau <kevin@plop.org>

	* dlls/setupapi/devinst.c:
	setupapi: Create an empty list when getting device interface classes.

2006-08-04  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_SETPASSWORDCHAR and EM_GETPASSWORDCHAR.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.c, tools/widl/write_msft.c:
	widl: Replace strdup, malloc and realloc with xstrdup, xmalloc and xrealloc.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/iphlpapi/Makefile.in:
	configure: Only link against libresolv where necessary.

	* configure, configure.ac, include/config.h.in, server/fd.c:
	server: Added support for kqueue() as an alternative to poll() on FreeBSD.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Basetexture anisotropic fix.

	* dlls/wined3d/directx.c:
	wined3d: Fix a number of badly reported caps.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Call SetLastError in CreateWindowEx when WS_CHILD is set with no parent.

	* dlls/user/tests/win.c:
	user: Add a test for CreateWindowEx.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Don't bother checking the WS_VISIBLE style on the desktop window.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptGetGlyphABCWidth.
	Add a test for ScriptGetGlyphABCWidth and ScriptCacheGetHeight.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more SID tests.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Make the error output on a failed binding more informative
	by dumping information about the interface it is trying to bind to.

	* dlls/urlmon/Makefile.in, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Delay-load cabinet.dll as native urlmon doesn't import it.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptIsComplex.

2006-08-03  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate GUID (infile_i.c) files.

2006-08-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use the initial dialog position values in the database when creating the
	dialog window.

2006-08-04  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Fix glyph comparsion between tests.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Fix a race condition at thread exit.

2006-08-03  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: Removes extra string allocation for varformat:VarMonthName.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Add an optimisation for NtQueryDirectoryFile to not read the
	whole directory if the mask doesn't contain any wildcards and the file
	exists on in the directory with the same case as the mask.

2006-08-04  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-08-03  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c, dlls/advapi32/security.c, include/ntsecapi.h:
	advapi32: Add a computer SID to the registry.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c, include/winternl.h:
	ntdll: Fix some function arguments.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Fix handling offset in BSCallback.

2006-08-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Disable vertex arrays after we're done drawing from them.
	After drawing from a vertex array we should disable them, to prevent
	the next draw calls from potentially reading past their ends. This
	also moves the disabling of vertex attrib arrays (for shaders) into
	its own function.

2006-08-02  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/mshtml/mshtml_private.h, dlls/shdocvw/shdocvw.h,
	  tools/widl/parser.y:
	widl: Write forward declarations for coclass definitions.

2006-08-03  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_LINELENGTH work correctly for non-final paragraphs containing
	exactly one screen line.

	* dlls/riched20/editor.c:
	riched20: Make EM_GETLINE work properly in 1.0 emulation mode.

	* dlls/riched20/editor.c:
	riched20: Ctrl+A should be allowed in read-only controls too.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Added nsInputStream::Read implementation.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Ensure that a returned free block is valid in storage.
	Otherwise, an IStream_SetSize call followed by an IStream_Read call
	could fail with STG_E_DOCFILECORRUPT.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole32: Fix CoLockObjectExternal to respect fLastUnlockReleases.

	* dlls/msi/action.c:
	msi: Fix the creation of shortcuts with a null icon index by mapping it to zero.

2006-08-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/msvideo16.c:
	msvfw32: Write-strings warning fix.

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Write-strings warnings fix.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Write-strings warnings fix.

2006-08-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle variable with const value (ie without location)
	in dwarf code.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Abstract the epoll functions a bit more.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/ntquery.h, include/shlguid.h:
	shell32: Add property ids to header files.

2006-08-03  Francois Gouget <fgouget@codeweavers.com>

	* include/shldisp.idl:
	include: Add the ShellFolderViewOC coclass.

2006-08-03  Stefan Siebert <stefan.siebert@web.de>

	* dlls/oleaut32/typelib.c:
	oleaut32: GetTypeInfoType - Return TYPE_E_ELEMENTNOTFOUND if index out of bounds.

2006-08-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/hlink/link.c:
	hlink: Avoid double computation of the string length.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/init.c:
	winex11.drv: Comment out the XCloseDisplay call on process detach.
	It has a tendency to trigger X11 bugs, and it's not really useful anyway.

2006-08-02  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Implement function olefont:OLEFontImpl_IsEqual.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:OLEFontImpl_IsEqual.

2006-08-03  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add missing define.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Paletted texture support.

2006-08-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Don't link to wined3d, load it at runtime.
	This lets ddraw dlls built on a machine with OpenGL present run on other
	machines that may not have the OpenGL libraries installed.

2006-08-02  Thomas Kho <tkho@ucla.edu>

	* server/thread.c:
	server: Remove unused thread_apc member.

2006-08-03  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/notepad/Ko.rc:
	notepad: Updated Korean resource.

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add that extra pixel to the variants of 'e' too.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/editor.c:
	riched20: Fixed handling of window private data for Win64.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Handle incorrect calls of window procedure.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Check returned data from LsaQueryInformationPolicy.

2006-08-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Write-strings warning fix.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/thunk.c:
	kernel32: Make some functions static.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Make some functions static.

	* dlls/user/spy.c:
	user: Add some missing internal Wine messages to the message spy.

2006-08-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, include/hlink.idl:
	hlink: Added HlinkTranslateURL tub implementation.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c,
	  dlls/hlink/tests/hlink.c, include/hlink.idl:
	hlink: Added HlinkIsShortcut implementation.

	* dlls/ole32/moniker.c:
	ole32: Clean up OleRun.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/run.c:
	riched20: Added short descriptions to functions in run.c, just in case
	anybody had any doubts about what they actually do.

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: By popular demand, add an extra pixel to the smallest strike of 'e'.

2006-08-02  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winetest/Makefile.in:
	winetest: Added hlink tests.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c, include/win.h,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	user: Implementation of Get/SetWindowLongPtr for 64-bit platforms.
	Also use the same code for Get/SetWindowWord.
	Based on a patch by Ge van Geldorp.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	msi: Only ever write the long path for InProcServers.

	* dlls/msi/classes.c:
	msi: Register advertised components too.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/uxtheme/system.c:
	uxtheme: Make some variables static.

	* dlls/oledlg/insobjdlg.c:
	oledlg: Make a string static.

	* dlls/kernel/editline.c:
	kernel32: Make the keymap entries const.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/git.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Make some functions and variables static.

	* dlls/msxml3/domdoc.c, dlls/msxml3/factory.c, dlls/msxml3/nodelist.c:
	msxml3: Make some functions and variables static.

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl32: Make some functions and variables static.

	* dlls/glu32/glu.c:
	glu32: Make some functions static.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c:
	dsound: Make some functions static.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Make some functions and variables static, and get rid of x11ddraw.h.

2006-08-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for SQL query markers.

	* dlls/msi/files.c:
	msi: A file that does not have the msidbFileAttributesCompressed bit set should
	be considered non-compressed.

	* dlls/msi/package.c, dlls/msi/tests/format.c:
	msi: Don't crash if an empty record is given to MsiProcessMessage.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for features with compressed
	files.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy: do the right thing for both domains
	and accounts.

2006-08-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/Makefile.in, dlls/wintrust/wintrust.spec,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Implement TrustIsCertificateSelfSigned.

	* dlls/crypt32/str.c:
	crypt32: Support more types in CertRDNToStr.

2006-08-02  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Updated Korean resource.

2006-08-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/version.h:
	shell32: Fix the file version string of the version resource.

2006-08-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

	* dlls/kernel/oldconfig.c, dlls/kernel/thunk.c:
	kernel: Write-strings warnings fixes.

2006-08-01  Dan Hipschman <dsh@linux.ucla.edu>

	* programs/oleview/typelib.c:
	oleview: Initialize TVITEM.lParam to NULL in EnumFuncs.

2006-08-01  Francois Gouget <fgouget@codeweavers.com>

	* dlls/mshtml/mshtml.inf:
	mshtml: Remove unwarranted REG_EXPAND_SZ flags.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* libs/port/memmove.c:
	libport: Fixed invalid lvalue accesses in memmove.

2006-08-01  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/view/Ko.rc:
	view: Updated Korean resource.

2006-08-01  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the width of the watermark to 164 pixels.

2006-07-31  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the size of the header bitmap to 49x49.

	* dlls/comctl32/propsheet.c:
	comctl32: Invalidate the header area so that updated titles will be drawn.

	* dlls/comctl32/propsheet.c:
	comctl32: Wordwrap the sub title.

	* dlls/comctl32/propsheet.c:
	comctl32: The titles are already converted to unicode so always use DrawTextW
	to write them.

2006-08-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/trash.c:
	shell32: Send directories and non-regular files to the trash.

2006-08-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Add a couple of missing bits to the SetWindowLong test.

2006-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextcont.c, dlls/mshtml/nsiface.idl:
	mshtml: Added implementation of put_scrollTop and put_scrollLeft.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement pointer in HTMLTextContainer.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: More LsaQueryInformationPolicy tests.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/Makefile.in, dlls/hlink/link.c:
	hlink: Use ShellExecute to start the link if we can't get a IHlinkTarget.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/font.c:
	gdi: Fixed buffer overflow in GetCharABCWidthsI.

	* Make.rules.in, tools/makedep.c:
	makedep: Always search for includes in the standard directories, even without
	-I option.

	* Make.rules.in, tools/makedep.c:
	makedep: Don't add dependencies for system headers.

	* tools/makedep.c:
	makedep: Get rid of restrictions on line lengths. Merge lines that end in
	a backslash.

	* tools/makedep.c:
	makedep: Convert to standard Wine lists.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/msxml3/regsvr.c:
	msxml3: Add progids for MSXML.DOMDocument and MSXML.FreeThreadedDOMDocument.
	Don't delete the progid key when unregistering coclasses - this is now
	done in unregister_progids.

	* dlls/msxml3/regsvr.c:
	msxml3: Separate the writing of progids from the writing of classes.
	This allows writing multiple progids that refer to one class.
	Support writing out Version and VersionIndependentProgId keys for classes.

2006-07-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/format_msg.c:
	kernel: Wsign-compare warning fix.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy update.
	Update LsaQueryInformationPolicy to use correct computer name and SID.
	Add support for PolicyDnsDomainInformation.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/hlink/tests/Makefile.in,
	  dlls/hlink/tests/hlink.c:
	hlink: Add a short test case.

	* dlls/hlink/link.c:
	hlink: Use CoTaskMemAlloc when returning memory to a caller.

	* dlls/hlink/link.c:
	hlink: Create a strdupW function and use it.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/msi/dialog.c:
	msi: Wake dialog on messages from external threads.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Fix a couple install state test cases.
	- Correctly handle the msidbComponentAttributesOptional component attribute.
	- Don't set a component's state to INSTALLSTATE_LOCAL if the
	msidbComponentAttributesSourceOnly attribute is provided.

	* dlls/msi/tests/package.c:
	msi: Fix the add_feature_entry helper function.

2006-07-31  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/winsplp.h:
	winsplp.h: Remove FAR, use W structs, fix typo.

2006-07-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/tests/keyboard.c:
	dinput/tests: Write-strings warning fix.

	* dlls/dsound/tests/dsound8.c:
	dsound/tests: Write-strings warning fix.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Ignore setting NULL window procs inside SetWindowLong.
	Add tests for SetWindowLong error cases.

2006-07-31  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fgetwc/s in binary mode.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Test fgetwc/s in binary mode.

	* dlls/msvcrt/file.c:
	msvcrt: Remove read_i loop and fix fread.

2006-07-31  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Set type_t kind field correctly for all types.

	* tools/widl/parser.y:
	widl: Set defined flag for coclasses.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation of SetupGetSourceInfo.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for components with compressed
	files.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Improve dump_DispParms.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Add some validation for the DISPPARAMS structure in ITypeInfo::Invoke.

	* dlls/ole32/ole2.c, dlls/ole32/ole32.spec:
	ole32: Implement OleNoteObjectVisible as described by MSDN.

	* dlls/ole32/storage32.c:
	ole32: Remove a check on the share mode for the NULL filename case as the
	check is already done earlier in StgCreateDocfile.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Move the calling of the process entry point back to kernel32.
	Apparently some copy protection stuff relies on that.
	This reverts commit 50fca716fddf5af03b4c91ae5e950daff5fbdf2a.

	* dlls/ntdll/loader.c:
	ntdll: Set initial module refcount to 1 to avoid unloading during imports fixup.

	* loader/preloader.c:
	preloader: Added support for the new style DT_GNU_HASH symbol table.

	* loader/preloader.c:
	preloader: Fixed type checking in symbol lookup.

	* loader/preloader.c:
	preloader: Properly use the ELF hash table when looking up a symbol.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::Invoke implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added SetExtent and GetExtent implementation.

2006-07-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix potential NULL dereference in IWineD3DSurfaceImpl_LockRect.

	* dlls/wined3d/device.c:
	wined3d: Avoid NULL dereference.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_GETLINE.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Use IsGUIDEqual to compare IIDs.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Better heuristic for finding the top of the address space on Linux.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add computer sid support to LookupAccountSidW.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/security.c:
	advapi32: Add more helper functions.
	Add ADVAPI_GetComputerSid.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register SHDocVw typelib.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.rc,
	  dlls/shdocvw/shdocvw_v1.idl:
	shdocvw: Added typelib.

2006-07-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h:
	shell32: Call the trashing code from SHFileOperationW.

	* dlls/shell32/Makefile.in, dlls/shell32/trash.c, dlls/shell32/xdg.c,
	  dlls/shell32/xdg.h:
	shell32: Add trashing support functions.

	* dlls/shell32/Makefile.in, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add trashing confirmations.

2006-07-31  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/tests/vartest.c:
	oleaut32: Move varformat conformance tests to new file varformat.c

2006-07-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/input.c, dlls/user/tests/input.c:
	user: Set buffer to '\0' in GetKeyNameTextA too.

2006-07-29  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _getw.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _read and fgetc.

	* dlls/msvcrt/tests/file.c:
	msvcrt: File read buffer tests.

2006-07-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Initialize event sequence counter. And simplify code.

2006-07-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add string sid tests.

	* dlls/advapi32/tests/security.c:
	advapi32: Print more info about failed test.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/lsa.c,
	  dlls/advapi32/security.c:
	advapi32: Make ADVAPI_IsLocalComputer global and remove duplicate copy.
	Make debugstr_sid global.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add function parameters to FIXME messages.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add a test showing what STGM_TRANSACTED does for streams.

2006-07-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Order Z-buffer formats by depth buffer bit depths in
	IDirect3DImpl_7_EnumZBufferFormats.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Split the GLSL check in a check for GLSL vertex shaders and one for
	GLSL fragment shaders.

	* dlls/wined3d/device.c:
	wined3d: Improve IWineD3DDeviceImpl_CreateTexture trace.

	* dlls/wined3d/surface.c:
	wined3d: Use GL_LIMITS(samplers) instead of GL_LIMITS(sampler_stages) in
	IWineD3DSurfaceImpl_UnlockRect.

2006-07-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/comboex.c:
	comctl32/tests: Write-strings warnings fix.

	* dlls/advpack/tests/install.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Write-strings warning fix.

2006-07-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change file path to URL in UrlCanonicalize.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetParseUrl in URLMonikerImpl_Construct.

2006-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Use the right section size when setting protections.
	Use the same size computation when setting section protections than
	when mapping it in the first place (reported by Nicholas Miell).

2006-07-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c:
	ole32: Add some missing traces.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test for IEnumSTATSTG.

	* dlls/msi/files.c:
	msi: Change an ERR to a WARN.

2006-07-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Fix "static declaration follows non-static declaration" in generated code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Encode coclass types in typelibs.

	* tools/widl/parser.y:
	widl: Register types for coclasses.

	* tools/widl/write_msft.c:
	widl: Check if a typeinfo is already in a typelib before adding it.

	* tools/widl/write_msft.c:
	widl: Set typelib_idx for coclasses when they're added to a typelib.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Fold class_t into type_t.

2006-07-28  Thomas Kho <tkho@ucla.edu>

	* dlls/Maketest.rules.in:
	Maketest.rules.in: Fix comment.

2006-07-28  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Fix debugstr_sid to print unsigned SubAuthority.

	* dlls/advapi32/security.c:
	advapi32: Move SID members from WELLKNOWNSID to MAX_SID.

2006-07-28  Yuriy Kozlov <yuriy.kozlov@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Allow entering - for a value in a .reg file to delete that value.

2006-07-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/urlcache.c:
	wininet: Only copy the relative filename into the UrlEntry structure.

2006-07-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptHashPublicKeyInfo.

	* dlls/rsaenh/handle.c, dlls/rsaenh/handle.h:
	rsaenh: Use Interlocked functions for reference counting.

2006-07-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, include/dinput.h:
	dinput: Add DISCL_NOWINKEY define.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Skip processing of D3DSIO_PHASE instruction.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Declare a 1D sampler for TEXDP3TEX (GLSL).

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Start checking for D3DUSAGE_QUERY_* items, improve traces.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Optimize d3dfmt_convert_surface.

	* configure, configure.ac, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, include/config.h.in:
	winex11.drv: Kill DGA support.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl, include/Makefile.in,
	  include/stdole2.idl:
	stdole2.tlb: Move stdole2.tlb generation to include to allow importlib from
	other IDLs.

2006-07-29  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, dlls/stdole2.tlb/Makefile.in,
	  dlls/stdole32.tlb/Makefile.in:
	Make.rules: Replace RC_TLB by IDL_TLB_SRCS as tlb files can be used for other
	things than resources.

2006-07-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Abort WaitForUserIdle if the target process died.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: More shader fixes / new instructions.
	- Replace gl_FragColor with gl_FragData[0] for GLSL pixel shader output.
	- Subtract 1 more constant from total GLSL allowed float constants to
	accommodate the PROJECTION matrix row that we reference.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Render target texturing.

2006-07-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/msi_main.c:
	msi: Native DllGetVersion does not fail if the supplied buffer is bigger
	than required.

	* dlls/msi/msipriv.h:
	msi: Make the version information of DllGetVersion same as in version resource.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: More tests and some fixes.
	- correct deleting the default container
	- imported keys should be stored in their container, not just given to the caller
	- tests for these changes

2006-07-27  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: VarMonthName - Update error codes and helper functions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: VarSub: Conformance test.

	* dlls/oleaut32/variant.c:
	oleaut32: VarSub: Fixes several data types and corrects error codes.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetTypeInfoCount and GetTypeInfo for standard pictures.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implement GetTypeInfoCount for standard fonts.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement setting of the hPal property in IPictureDisp::Invoke.
	Remove some validation code that is already handled by a more generic
	case at the end of the function.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Implement getting of all properties in IPictureDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a test for passing an invalid number of input parameters into
	IFontDisp::Invoke with DISPATCH_PROPERTYGET.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Add validation for parameters in IPictureDisp::Invoke.
	Add some tests for IPictureDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix the return code for an invalid dispid in IFontDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a successful test for IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c:
	oleaut32: Handle the Weight property in IFontDisp::Invoke.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/secur32/Makefile.in, dlls/secur32/schannel.c,
	  dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Improve schannel's AcquireCredentialsHandle, with tests.

	* include/sspi.h:
	sspi.h: Add missing define.

2006-07-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for MsiDatabaseImport.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* include/mshtml.idl:
	mshtml.idl: Fix SAFEARRAY argument declaration.

	* tools/widl/write_msft.c:
	widl: Reorder segments to match midl.

	* tools/widl/write_msft.c:
	widl: Use cval in ATTR_ID.

	* tools/widl/write_msft.c:
	widl: Added ATTR_BINDABLE handling to add_func_desc.

	* tools/widl/write_msft.c:
	widl: Store typekind in msft_typeinfo_t to fix ATTR_DUAL handling.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of GetControlInfo.

2006-07-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/d3d9/vertexdeclaration.c, dlls/gdi/tests/font.c:
	Fix 2 "static is not at beginning of declaration" warnings.

	* dlls/msi/tests/package.c:
	msi: 0xdeadbeef is too big for a signed int thus producing sign
	comparison warnings when compared to an int variable. Use 0xdeadbee
	instead.

2006-07-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Write-strings warning fix.

	* dlls/msi/tests/install.c:
	msi/tests: Write-strings warning fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-27  Stefan Siebert <stefan.siebert@web.de>

	* programs/winebrowser/main.c:
	winebrowser: Pass any given argument that is not a mailto URL to the browser.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Don't crash if there's no args.

	* dlls/msi/action.c:
	msi: Don't set the shortcut's working directory if it's NULL.

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: Fix some memory leaks.

2006-07-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Keyboard: Use the same event queue mechanism as mouse.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not use the IWineD3DSurface for the cursor.

2006-07-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a false ERR.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.18.

----------------------------------------------------------------
2006-07-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix minor typo from shader patch.

2006-07-27  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add lnkfile description.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Round up the timeout for poll() to avoid redundant calls.

	* server/request.c:
	server: Don't crash on invalid request sizes.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/winhelp.c:
	winhelp: Write-strings warning fix.

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/package.c:
	msi: Download the MSI package if it is a remote URL.

2006-07-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CryptStrToNameA/W, with tests.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME encoding/decoding.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Public keys should be exported with the CALG_RSA_KEYX alg_id.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/olefont.c:
	oleaut32: Fixed compiler warning.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix some upside-down rendering issues for shaders.

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: BltFast/BltOverride color keying.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Blacklist WINED3DFMT_R8G8B8.

2006-07-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	comctl32: Fix a typo.

	* dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix the value of LONG integers in records (suggested by James Hawkins).

	* dlls/msi/tests/format.c:
	msi: Remember to free a handle.

	* dlls/msi/cond.y:
	msi: Fix some memory leaks in the condition parser.

	* dlls/msi/appsearch.c, dlls/msi/msi.c:
	msi: Use msi_alloc/free, not HeapAlloc/Free.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the column types of MSI packages.

	* dlls/msi/tests/package.c:
	msi: Test the states of a component with a compressed file.

	* dlls/msi/table.c:
	msi: Fix a typo.

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/dinput8_main.c:
	dinput8: Better DirectInput8Create warning.

2006-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change '/'->'\' only for file protocol in UrlCanonicalize.

	* dlls/mshtml/protocol.c:
	mshtml: Fix handling res URLs with full path and number resource ID.

2006-07-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Add validation of some more parameters in IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Clean up IFontDisp::Invoke by using VariantChangeTypeEx to coerce
	the input parameter into the correct type.

	* dlls/ole32/regsvr.c:
	ole32: Add more self-registration entries for classes and interfaces.

2006-07-26  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add inifile entries.

2006-07-24  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: Correct handling of quotes and /s flag when a command argument is present.

2006-07-23  Kovács András <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Fix CopyRects if pDestPointsArray is NULL.

2006-07-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/monitor.c, dlls/winex11.drv/settings.c:
	x11drv: Number of fixes for ChangeDisplaySettingsEx with tests.

2006-07-26  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/break.c,
	  programs/winedbg/db_disasm.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/source.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/tgt_minidump.c,
	  programs/winedbg/types.c:
	winedbg: Change ADDRESS variables to ADDRESS64 so we can handle 64-bit addresses.

2006-07-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: More efficient color keying dirtifying.
	Instead of blindly dirtifying the surface LoadTexture keeps track of
	the color key that was used when creating the opengl texture and
	reloads the surface if the color key has changed.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	ddraw: Support using an application-provided surface pointer.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Fix an off by one error in MsiRecordGetString.

	* dlls/msi/Makefile.in, dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y:
	msi: Implement SQL inner joins.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Clean up temp files.

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/time.c, include/wine/server_protocol.h, server/object.h,
	  server/protocol.def, server/request.c, server/thread.c,
	  server/trace.c:
	server: Convert the server start time to the abs_time_t type.

	* dlls/ntdll/thread.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/thread.h,
	  server/trace.c:
	server: Convert thread creation/exit times to the abs_time_t type.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/sync.c,
	  dlls/ntdll/time.c:
	ntdll: Renamed the NTDLL_get/from_server_timeout functions since they don't
	deal only with timeouts.

	* dlls/user/message.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Rename the wait_input_idle request to better reflect what it does.
	Also get rid of the unused timeout field.

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/serial.c:
	server: Make the create_async function take an absolute timeout.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* server/console.c, server/ptrace.c, server/queue.c, server/registry.c,
	  server/token.c:
	server: Fix some comparisons between signed and unsigned.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server.h, include/wine/server_protocol.h, server/atom.c,
	  server/console.c, server/debugger.c, server/file.c, server/hook.c,
	  server/object.c, server/object.h, server/process.c, server/process.h,
	  server/protocol.def, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/request.c,
	  server/request.h, server/snapshot.c, server/symlink.c,
	  server/token.c, server/trace.c, server/user.h, server/window.c,
	  server/winstation.c, tools/make_requests:
	server: Added data_size_t type to represent sizes in the server protocol.
	Make it an unsigned int to save some space on Win64, if we need to
	transfer more than 4Gb over the server pipe something is seriously
	wrong.

2006-07-25  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when CPGetHashParam should return the size of the HASHVAL.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when the CPEncrypt function is asked for the needed
	buffer size.

2006-07-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Updated Korean resource.

2006-07-25  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/dmime/performance.c:
	dmime: Accept IDirectMusicPerformance2 in QueryInterface.

2006-07-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement file stores.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Enable all bump mapping formats.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix crash caused by bad TRACE.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Remove superfluous breaks.

2006-07-25  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Allow trailing commas in attribute lists.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/sql.y:
	msi: Add a FIXME for join queries.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Always load all the components.

2006-07-25  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c:
	dbghelp: Implement SymGetSymFromAddr64.

	* configure, configure.ac, dlls/oleaut32/olepicture.c,
	  include/config.h.in:
	configure: Add a check for the DGifOpen function in the gif_lib.h header as
	the v4 of the file does define it, while v3 doesn't.

2006-07-24  Stefan Siebert <stefan.siebert@web.de>

	* dlls/comdlg32/filedlg.c:
	comdlg32: GetOpenFileNameW - Create unicode windows.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* programs/uninstaller/main.c:
	uninstaller: Fail more gracefully when the registry key is missing.

2006-07-23  Neil Skrypuch <ns03ja@brocku.ca>

	* dlls/oleaut32/safearray.c:
	oleaut32: Adding a NULL to a safearray is supposed to crash.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Avoid accessing the TEB after the memory view has been released.
	When using reserved areas the memory could potentially be reused right
	after the release.

	* server/ptrace.c:
	server: Try harder to find a suitable thread for read/write_process_memory.

2006-07-20  Thomas Kho <tkho@ucla.edu>

	* server/process.c:
	server: Add new threads to end of thread_list.

2006-07-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for SMVARRAY in EmbeddedComplexSize.

2006-07-24  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	Implement D3DSIO_TEXREG2AR, TEXREG2GB, TEXREG2RGB, TEXM3X3TEX, TEXM3X3SPEC.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/query.h, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix where queries on 32bit integer columns.

2006-07-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the WHERE SQL clause.

2006-07-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/wineps.drv/wps_Ko.rc:
	wineps.drv: Updated Korean resource.

2006-07-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add real occlusion query support.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Add traces to IWineD3DVertexShaderImpl_SetFunction &
	IWineD3DPixelShaderImpl_SetFunction.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3d8 shaders can have a NULL pFunction, but a valid vertex declaration.

2006-07-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Support SAFEARRAY(type) syntax.

	* tools/widl/header.c:
	widl: Fix redefinition of types in output.

2006-07-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added more test and fixes.

2006-07-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use the correct name when writing the fixed font registry value.

2006-07-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add more TrackMouseEvent tests, particularly a test with
	injected mouse move events. Fix a problem detected by the test.

2006-07-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c:
	user: Various TrackMouseEvent fixes.
	- Use WINPOS_WindowFromPoint instead of WindowFromPoint in order to
	use hittest directly to simplify the code.
	- WM_NCMOUSEHOVER and WM_MOUSEHOVER take different parameters.

	* dlls/user/winpos.c:
	user: Add a trace to EndDeferWindowPos.

	* dlls/user/input.c:
	user: Use (win) debug channel by default, add a TRACE to SendInput.

2006-07-24  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Move SetupDiGetClassDevsExW into devinst.c.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	msi: Use CLSIDFromString to make squash_guid a bit more robust.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Make MsiConfigureFeature a bit more robust.

	* dlls/msi/Makefile.in, dlls/msi/msi.c, dlls/msi/msi_main.c,
	  dlls/msi/msipriv.h:
	msi: Move COM server implementation to a separate file.

	* configure, configure.ac:
	configure: Check for freetype-config first, then use the libraries it specifies.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Improve traces for D3DTRANSFORMSTATETYPE.
	Added debug function for WINED3DTRANSFORMSTATETYPE and changed all
	references from D3DTS_* to WINED3DTS_*.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/main.c, loader/preloader.c:
	preloader: Allocate more space in low memory as well as for top-down allocations.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Allocate the PEB with NtAllocateVirtualMemory too.

	* dlls/ntdll/virtual.c:
	ntdll: Support memory allocations inside reserved areas.

	* dlls/ntdll/virtual.c:
	ntdll: Propagate the MEM_TOP_DOWN flag into the map_view() function.

	* include/wine/library.h, libs/wine/mmap.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added a function to enumerate the reserved mmap areas.

2006-07-24  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/msi.c:
	msi: The szLogFile parameter of MsiEnableLogW is optional, so handle the case
	of it being NULL.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set BufferMark before calling EmbeddedPointerMarshall,
	EmbeddedPointerUnmarshall or EmbeddedPointerMemorySize.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Improve the stubs for RpcImpersonateClient and RpcRevertToSelf.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support small fixed arrays in EmbeddedComplexSize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Allocate memory based on MaxCount, not ActualCount in
	NdrConformantStringUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add support for marshaling the FC_HYPER base type in complex types.
	Change the FIXME messages to print out unrecognised format characters in
	hex rather than decimal.

	* dlls/uuid/uuid.c:
	uuid: Add IIDs and CLSIDs from xmldso.h.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize pRetVal in ITypeInfo::Invoke before calling VariantCopyInd
	as native doesn't assume that it doesn't contain valid data.

	* dlls/msxml3/Makefile.in, dlls/msxml3/main.c, dlls/msxml3/regsvr.c:
	msxml3: Use general DLL registration framework to register CLSIDs and ProgID's.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/msi.c:
	msi: Add a test case for MsiGetFileHash.

	* dlls/msi/msi.c:
	msi: Implement MsiGetFileHash.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Avoid an uninitialized variable warning.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* programs/winevdm/winevdm.c:
	winevdm: Load sound.drv too.

2006-07-21  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Allow write_type to output full pointer types.

2006-07-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Draw the cursor.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the ddraw blitting code for IWineD3DDevice::ColorFill.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Reimplement MsiGetUserInfo using awstrings.

2006-07-23  Dan Kegel <dank@kegel.com>

	* dlls/winedos/int21.c:
	winedos: Limit reported disk space to 1GB.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Replace memset/memcpy routines on stateblock (fixes dynamic shader
	constants regression).

2006-07-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: PrintDlg with PD_RETURNDEFAULT can fail.

2006-07-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Simplify code a bit.

2006-07-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Fix small typo.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Whitelist pixelformats instead of blacklisting.

	* dlls/wined3d/surface.c:
	wined3d: Reactivate the X bits fixup.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: MoveMsiEnumPatches to registry.c

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register MruListLong.

	* dlls/hlink/hlink_main.c:
	hlink: Implement HlinkNavigateToStringReference.

	* dlls/hlink/link.c:
	hlink: Only release an object that we successfully created.

	* dlls/query/query.spec, dlls/query/query_main.c:
	query: Add a stub implementation for LocateCatalogs.

2006-07-24  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

2006-07-23  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add more SID defines.

2006-07-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Don't use freed string in TRACE.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::Load.

2006-07-22  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define one more avi resource.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for component and feature states.

2006-07-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Write-strings warnings fix.

2006-07-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  include/richedit.h:
	riched20: Write-strings warnings fix.
	The string members of the FINDTEXT and FINDTEXTEX structs are declared
	constant in the SDK.

2006-07-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added interface handling to idl display.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Expand features with odd Display values.

	* dlls/msi/dialog.c:
	msi: Don't display a feature if its Display value is zero.

	* dlls/msi/action.c:
	msi: Set the component's initial state based on its attributes.

2006-07-21  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Minor trace corrections in Set___ShaderConstants().

2006-07-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to create a vbo more than once.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Move vertex fixups into their own function.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Use NtAllocateVirtualMemory to allocate all TEBs except the first one.

2006-07-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix missing tests and heap errors for VarCat conformance.

	* dlls/oleaut32/variant.c:
	oleaut32: Fix temp variant initialization issues in VarCat.

2006-07-20  Stefan Siebert <stefan.siebert@web.de>

	* dlls/kernel/time.c, dlls/ntdll/process.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	ntdll: Implementation of process CreationTime and ExitTime.

2006-07-20  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Implemented SetupDiCreateDeviceInfoA.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Rename a test.

2006-07-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Partial LookupAccountSid implementation.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Simplify the sanity checks in RtlFreeHeap and RtlReAllocateHeap.

	* dlls/ntdll/heap.c:
	ntdll: Set a proper HEAP_MIN_DATA_SIZE on 64-bit platforms.

	* dlls/ntdll/heap.c:
	ntdll: Add a few more free list entries to the heap.

2006-07-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

2006-07-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Handle W/A conversions more correctly in MsiProvideQualifiedComponentEx.

	* dlls/msi/msi.c:
	msi: Use msi_reg_get_val_str() to read a registry value.

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Add a stub implementation for MsiProvideQualifiedComponentExA.

	* dlls/msi/msi.c:
	msi: Components with INSTALLSTATE_NOTUSED are considered present.

	* dlls/msi/msi.c:
	msi: A component with an empty path is not used.

	* dlls/msi/msi.c:
	msi: Use TRACE not FIXME for already implemented functions.

2006-07-20  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: State management test framework for d3d9.

	* dlls/wined3d/device.c:
	wined3d: Respect EnableAutoDepthStencil parameter.

	* dlls/wined3d/stateblock.c:
	wined3d: Correct initial render states.

	* dlls/wined3d/device.c:
	wined3d: Do not return WINED3DERR_INVALIDCALL for Phong shading.

	* dlls/wined3d/device.c:
	wined3d: Restore recording mode later in ActiveRender().

	* dlls/wined3d/device.c:
	wined3d: Read shader constants from correct stateblock.

2006-07-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Write-strings warnings fix.

2006-07-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add a TrackMouseEvent test, make it pass under Wine.

2006-07-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add functionality for ScriptXtoCP and ScriptCPtoX calls.

2006-07-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/tests/compobj.c:
	ole32: Implement CoRegisterPSClsid.

2006-07-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Don't use fixed-size buffers in AppSearch action.

2006-07-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c, tools/wine.inf:
	dinput8: DirectInput8Create rewrite.

2006-07-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: OLEFontImpl_GetIDsOfNames conformance test.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implements OLEFontImpl_GetIDsOfNames.

2006-07-19  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Remove redundant headers.

2006-07-19  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/freetype.c:
	gdi: Use variables of correct size.

2006-07-19  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupDiCreateDeviceInfoW.

	* dlls/setupapi/devinst.c:
	setupapi: Remove unneeded NULL checks before MyFree().

2006-07-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/events.c:
	msi: Implement the SetInstallLevel event.

	* dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can
	be used internally.

	* dlls/msi/action.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Update feature states after changing install levels, as they may have
	changed.

	* dlls/msi/action.c:
	msi: Rename SetFeatureStates to match the naming scheme of internal msi
	functions.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/amstream.idl, include/ddstream.idl, include/dispex.idl,
	  include/downloadmgr.idl, include/dyngraph.idl, include/mlang.idl,
	  include/mmstream.idl, include/mshtmhst.idl, include/mshtml.idl,
	  include/msxml.idl, include/msxml2.idl, include/objidl.idl,
	  include/tom.idl, include/urlmon.idl, include/xmldom.idl,
	  include/xmldso.idl:
	include: Remove unnecessary semicolons from idl.

	* include/.gitignore, include/Makefile.in, include/dbinit.idl,
	  include/dbprop.idl, include/dbs.idl, include/oledb.idl:
	oledb: Add oledb.idl and some idl files it depends on.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Use -fno-builtin to avoid warnings with gcc 4.1.1.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/control.idl, include/hlink.idl, include/indexsvr.idl,
	  include/mshtmhst.idl, include/objsafe.idl, include/propidl.idl,
	  include/pstore.idl, include/richole.idl, include/shobjidl.idl,
	  include/wine/itss.idl:
	include: Semicolons after cpp_quote are a syntax error in midl.

2006-07-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptCacheGetHeight.

2006-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c:
	urlmon: Added PARSE_CANONICALIZE implementation in CoInternetParseUrl.

	* dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c, dlls/mshtml/install.c,
	  dlls/mshtml/loadopts.c, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Wrap remaining Heap* functions by inline functions.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpDeleteFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-07-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Compilation fixes.

2006-07-20  Kovács András <andras@csevego.net>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: joydev_enum_deviceA now returns the correct value.

2006-07-20  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc:
	comctl32: Updated Korean resource.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement more string types for X509_NAME_VALUE.

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Correct handling of empty output buffer in CertRDNValueToStr and
	CertNameToStr.

	* dlls/msi/appsearch.c:
	msi: Implement ACTION_AppSearchIni.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Null-terminate strings returned by VFAT_IOCTL_READDIR_BOTH to work
	around a kernel bug.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpRenameFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME_VALUE encoding/decoding.

	* dlls/msi/appsearch.c:
	msi: Implement searching parent in ACTION_AppSearchReg.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureW.

	* dlls/msi/msi.c:
	msi: Fix the size of base 85 GUIDs.

	* dlls/msi/action.c:
	msi: Only load the features and files tables once.

2006-07-18  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in TypeLib Viewer.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added some features to IDL data displaying.

	* programs/oleview/main.h, programs/oleview/pane.c,
	  programs/oleview/typelib.c:
	oleview: Added skeleton for IDL files generation.

2006-07-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add ScriptStringCPtoX and ScriptStringXtoCP stubs.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Make sure the WINEPRELOADRESERVE area doesn't overlap the low
	memory area.

	* dlls/kernel/process.c:
	kernel: Simplify set_process_name now that it doesn't have to handle winevdm.

	* dlls/kernel/process.c, dlls/ntdll/virtual.c:
	kernel: Added support for exec'ing a new Win32 process.
	Use it to restart execution if the main binary can't be loaded because
	of address space conflicts, and also for Win16/DOS support.

	* dlls/kernel/process.c, dlls/ntdll/server.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/request.c, server/trace.c:
	server: Simplify process creation.
	Pass the socket for the new process from the parent through the
	environment.
	Perform initialisations during the new_process request.

2006-07-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Make the number of floating point shader constants dynamic.

2006-07-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/crypt32/tests/crl.c:
	crypt32: Make tests loadable on NT4.

2006-07-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add a stub implementation of MsiSourceListClearAll.

	* dlls/msi/action.c, dlls/msi/dialog.c:
	msi: Sort SelectionTree items by their Display value.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msi/files.c:
	msi: Create files with the correct file attributes.

2006-07-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Check the right pointers for NULL.

	* dlls/msi/msi.c:
	msi: Set properties, not the command line in MsiReinstallFeatureW.

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Implement MsiSetInstallLevel.

2006-07-19  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

2006-07-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-18  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Update error codes for VarMod.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: removeChild should catch a NULL child node.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a test to check that selectSingleNode returns a NULL-ptr when it
	doesn't find a match.

2006-07-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Set name in ACTION_AppSearchGetSignature.

	* dlls/crypt32/encode.c:
	crypt32: Don't return from a try block.

2006-07-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml.spec:
	mshtml: Added stub implementation of ShowHTMLDialog.

2006-07-17  Dan Hipschman <dsh@linux.ucla.edu>

	* libs/wpp/ppl.l:
	wpp: In recursive macro definitions, print the macro name instead of nothing.

2006-07-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	ddraw/wined3d: Remove texture format enumeration functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Duplicate flips in software if the local copy is up to date.

2006-07-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Disable the fog before writing the back buffer data.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a setting for the render target locking method.

	* dlls/wined3d/surface.c:
	wined3d: Break the glDrawPixels call out of UnlockRect.

2006-07-18  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmdlgtst/Ko.rc:
	cmdlgtst: Updated Korean resource.

2006-07-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Output x.500 strings from CertNameToStrA/W.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c:
	crypt32: Fix reading key prov info from serialized data.

	* dlls/crypt32/encode.c:
	crypt32: Always set required encoded length in CryptEncodeObject(Ex).

	* dlls/msi/appsearch.c:
	msi: Fix silly pointer error.

2006-07-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the feature components' states when a feature is selected.

2006-07-17  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add tests of file operations in ASCII mode.

2006-07-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fix handle leak.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmltextarea.c:
	mshtml: Wrap more Heap* function by inline functions.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add an exception handler around code executed on the server side
	from the typelib marshaler.

	* dlls/msi/msi.c:
	msi: Fix conversion of path to include nul-termination character in
	MsiProvideQualifiedComponentA.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Display a big message box if the user tries to use typelib
	marshaling in native oleaut32 with builtin rpcrt4 to tell them what is
	wrong.

	* dlls/rpcrt4/ndr_marshall.c, include/wine/rpcfc.h:
	rpcrt4: Handle more structure padding values.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Revert check for FUNCFLAG_FRESTRICTED in ITypeInfo::Invoke.
	The change caused regressions in a number of applications and needs more
	study to see what the correct behaviour should be.

2006-07-17  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Readd missing copyright to shaders files.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Fix typo in ARB pixel shader.

2006-07-17  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/variant.c:
	oleaut32: VarCmp - Corrected function description.

2006-07-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Increment texture_idx when continuing as well.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/crypt_lmhash.c:
	advapi32/tests: Write-strings warnings fix.

2006-07-17  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: All items should be marked as unchecked when LVS_EX_CHECKBOXES is
	initially set.
	When a new item is added with LBS_EX_CHECKBOXES already set then that item is
	marked as unchecked.

2006-07-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Store the full path to the prelink tool.

2006-07-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix for vertex shaders.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* programs/notepad/main.c:
	notepad: Change notepad printing font.

	* programs/notepad/dialog.c:
	notepad: Make notepad print something reasonable.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/protocol.c:
	mshtml: Wrap Heap* functions by inline functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Break out the frame buffer readback of LockRect, implement palettized
	readback.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Don't access a negative section index in elf_map_section.

	* dlls/dbghelp/stabs.c:
	dbghelp: Avoid accessing a negative string index when parsing stabs entries
	with an empty string.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix a return code from RtlVerifyVersionInfo and change the FIXME to a
	TRACE now that all of the tests pass.

	* dlls/kernel/tests/version.c:
	kernel: Fix an incorrect version test.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix RtlVerifyVersionInfo handling of major, minor and service pack
	versions, which are tested in a hierarchical manner.
	Add some new tests for the different condition values.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Use a common condition value for the major, minor and service pack
	version numbers.

	* dlls/ntdll/version.c:
	ntdll: Reduce duplicated code in RtlVerifyVersionInfo by calling a function
	for comparing the values.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Test the return value of VarCat in the tests.

2006-07-15  Aric Stewart <aric@codeweavers.com>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Copy windows file protection files at boot time.

2006-07-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Tidy up MsiCreateAndVerifyInstallerDirectory a bit.

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureA using MsiConfigureFeatureW.

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	msi: Cleanup traces, remove unnecessary includes.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c:
	msi: Move msi_get_property_int() to helpers.c

	* dlls/msi/msi.c:
	msi: Add support for INSTALLSTATE_ADVERTISED to MsiQueryFeatureState.

	* dlls/msi/msi.c:
	msi: MsiGetComponentPath cannot return INSTALLSTATE_ADVERTISED.

2006-07-16  Paul Millar <paul@astro.gla.ac.uk>

	* configure, configure.ac, include/config.h.in, libs/wine/loader.c:
	libwine: Add a configure check for setrlimit.

2006-07-17  Alexandre Julliard <julliard@winehq.org>

	* tools/winegcc/winegcc.c:
	winegcc: Make sure the Wine library paths take precedence in Wine mode.

2006-07-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/clock/Ko.rc:
	clock: Updated Korean resource.

2006-07-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/listview.c:
	comctl32: Use struct member after check for NULL (Coverity).

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Write the "Microsoft Browser Architecture" CLSID.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Register zone and security manager.

	* dlls/urlmon/session.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Added UrlMkGetSessionOption implementation.

	* dlls/urlmon/umon.c:
	urlmon: Use URL_FILE_USE_PATHURL flag to combine urls.

	* include/urlmon.idl:
	urlmon.idl: Added some missing declarations.

	* dlls/mshtml/htmldoc.c:
	mshtml: Added get_all implementation.

2006-07-17  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Da.rc:
	notepad: Fix typo in Danish translation spotted by Henrik Olsen.

2006-07-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Unacquire correct device.

	* dlls/dinput/keyboard.c:
	dinput: Ignore repeated key events.

2006-07-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Allocate 4 extra bytes in the dib section.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* tools/examine-relay:
	examine-relay: Indent winex11.drv lines.

2006-07-15  Duane Clark <dclark@akamail.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Set PD_PAGENUMS from print dialog.

2006-07-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

2006-07-14  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Add more tests for InternetCrackurl.

	* dlls/msi/dialog.c:
	msi: Add handling for the ListBox dialog control.

2006-07-14  Milko Krachounov <milko@3mhz.net>

	* dlls/shell32/shell32_Bg.rc:
	shell32: Update Bulgarian translation.

	* dlls/mshtml/Bg.rc:
	mshtml: Update Bulgarian translation.

2006-07-16  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add CreateWellKnownSid and IsWellKnownSid.

2006-07-14  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	include: Add well known sids and quota limits to winnt.h.

2006-07-14  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/style.c:
	riched20: WM_SETFONT support.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Improve CoRegisterMessageFilter and add tests for it.

	* dlls/ole32/rpc.c:
	ole32: Free the buffer allocated in local_server_thread (found by Smatch).

2006-07-13  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, dlls/comcat/Makefile.in,
	  dlls/comcat/information.c, dlls/comcat/tests/Makefile.in,
	  dlls/comcat/tests/comcat.c, programs/winetest/Makefile.in:
	comcat: cImplemented or cRequired of -1 means to match everything
	regardless of the implementation or categories.

2006-07-12  Stefan Siebert <stefan.siebert@ssiebert.de>

	* dlls/msi/files.c:
	msi: cabinet_notify - don't fail on files with the same filepath.

2006-07-13  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c:
	wined3d: Only copy memory corresponding to the dib section instead of the
	power of 2 surface.

2006-07-14  András Kovács <andras@csevego.net>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Stub for SHSetLocalizedName.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Let caller set property in AppSearch.

2006-07-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Use awstring to return strings from MsiGetProductInfo.

	* dlls/msi/msi.c:
	msi: Read from the registry, not the database in MsiGetProductInfo.

	* dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Add some registry reading macro functions.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, dlls/msi/registry.c, dlls/msi/upgrade.c:
	msi: Move version string conversions to registry.c.

	* dlls/msi/classes.c, dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Move some registry helper functions to registry.c.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Correct self-signed cert creation.
	- use correct function names for rpcrt functions
	- use CryptGenRandom to create unique serial numbers

2006-07-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* tools/widl/header.c:
	widl: Fix unterminated comment in generated code.

2006-07-13  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix cmp instruction for GLSL.
	The current GLSL cmp instruction is incorrect, because:
	- it ignores destination write mask
	- it ignores source swizzle
	- it ignores other source modifiers.
	- it works incorrectly for src0 = 0

	* dlls/wined3d/device.c:
	wined3d: Fix light state bugs.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Don't execute a function in ITypeInfo::Invoke if it has the
	FUNCFLAG_FRESTRICTED flag.
	Add some more tests for ITypeInfo::Invoke.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetClassID for the OLE picture class.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix Variance Callback Functions.
	A callback function for computing the variance puts the computed value
	into the same field as a conformance, so make sure to copy the value
	into pCount before returning from ComputeConformanceOrVariance.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Add the threading model and a description when registering a CLSID
	for the PSFactoryBuffer.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add validation of parameters to CoGetClassObject and make sure to
	initialise ppv to NULL.

2006-07-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dinput/device.c, dlls/gdi/tests/brush.c, dlls/winedos/int10.c,
	  dlls/winex11.drv/xim.c:
	Fix swapped 2nd and 3rd argument passed to memset.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Invert the return values of the boolean functions so that
	their names make more sense.

2006-07-13  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Also support options using a hyphen.

	* dlls/msi/dialog.c:
	msi: Add handling for the GroupBox dialog control.

2006-07-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/pe.c:
	winedump: Write-strings warnings fix.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Revert the error exit code for warnings, it causes more
	trouble than it's worth.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, loader/kthread.c, loader/pthread.c:
	ntdll: Make sure to not unmap anything from reserved areas
	when using NtFreeVirtualMemory with the MEM_SYSTEM flag.

	* dlls/ntdll/virtual.c:
	ntdll: Use the map_view() function to allocate TEBs, now that it supports an
	arbitrary granularity.

	* dlls/ntdll/virtual.c:
	ntdll: Support for arbitrary memory allocation granularity.

2006-07-12  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix the ellipsis and shortcuts in menus.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Ru.rc, programs/wordpad/Tr.rc:
	wordpad: Add shortcuts in menus.

2006-07-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Update Polish translation.

2006-07-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Don't loop while peeking messages in CoWaitForMultipleHandles.
	It increases the latency on completing the COM call and could result in
	the COM call never completing in some circumstances.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert void return types to the VT_EMPTY variant type in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Typelib interfaces with the FDUAL flag should also be registered,
	since dispinterfaces don't have the FDISPATCHABLE flag.

	* dlls/ws2_32/socket.c, include/ws2tcpip.h:
	include: Add NI_* defines and add a WS(socklen_t) type.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a stub for I_RpcMapWin32Status.

	* dlls/dbghelp/path.c:
	dbghelp: Fix the finding of PDB DS-type files.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/brsfolder.c:
	shell32: Avoid using macros that cause gcc warnings.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Moved the calling of the process entry point to LdrInitializeThunk.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel32: Moved initialisation of the console handles to DllMain.

2006-07-12  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCommonPrefixA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathBuildRootA.

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Update the files target paths as well, because a parent directory might
	have been changed.

2006-07-12  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/dialog.c:
	notepad: Change file not saved alert title to match Windows' notepad.exe.

	* programs/notepad/En.rc, programs/notepad/dialog.c:
	notepad: Change window title to be like Windows' notepad.exe.

2006-07-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/mshtml/main.c:
	mshtml: Write-strings warnings fix.

2006-07-11  James Hawkins <truiken@gmail.com>

	* dlls/urlmon/umon.c:
	urlmon: Implement URLDownloadToCacheFileW.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* dlls/user/class.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c:
	user32: Implement Get/SetClassLongPtrA/W.

2006-07-11  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/user/sysparams.c:
	user: Implement Ascii version of SPI_GETDESKWALLPAPER.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

	* dlls/ole32/clipboard.c:
	ole32: Small cleanups.

	* dlls/ole32/stg_prop.c:
	ole32: Remove unnecessary assert(This) calls.

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Fix and test reading and writing of VT_CF properties.

2006-07-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl_Bg.rc, dlls/comctl32/comctl_Cn.rc,
	  dlls/comctl32/comctl_Cs.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comctl32/comctl_En.rc, dlls/comctl32/comctl_Eo.rc,
	  dlls/comctl32/comctl_Es.rc, dlls/comctl32/comctl_Fr.rc,
	  dlls/comctl32/comctl_Hu.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comctl32/comctl_Ja.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comctl32/comctl_Nl.rc, dlls/comctl32/comctl_No.rc,
	  dlls/comctl32/comctl_Pl.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comctl32/comctl_Ru.rc, dlls/comctl32/comctl_Si.rc,
	  dlls/comctl32/comctl_Sv.rc, dlls/comctl32/comctl_Th.rc,
	  dlls/comctl32/comctl_Tr.rc, dlls/comctl32/comctl_Uk.rc,
	  dlls/comctl32/propsheet.c:
	comctl32: Use wsprintf instead of strcat building the properties
	dialog title to allow different word orders.

2006-07-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Split up ACTION_AppSearchReg.

	* dlls/crypt32/store.c:
	crypt32: Add stubs for some stores.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CreateFileU to CreateFileW.

2006-07-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/gdi/driver.c, dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi_private.h, dlls/gdi/mfdrv/init.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/wineps.drv.spec, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11font.h:
	gdi32: Implement GetTextExtentPoint in terms of GetTextExtentExPoint
	(not vice versa) for efficiency (required adding the Ex functionality
	to drivers).

	* dlls/gdi/tests/font.c:
	gdi32: Add conformance test for GetTextExtentExPointW.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/query/query_main.c:
	query: Return a more appropriate error code from CIState.

2006-07-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Write-strings warnings fix.

2006-07-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Texture stages that reference NULL textures should just pass
	through the result of the previous stage.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Fix specular color handling for register combiners.
	By default the FinalCombiner is setup to add the specular color to the
	final result of the combiner operations. However, it should only do
	this when the WINED3DRS_SPECULARENABLE renderstate is enabled.

2006-07-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Check the color data type too when deciding whether to convert data.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement IPropertyStorage::Enum using enumx.

	* dlls/ole32/stg_prop.c:
	ole32: Clean up some declarations.

	* dlls/ole32/stg_prop.c:
	ole32: Use enumx to implement IPropertySetStorage::Enum.

	* dlls/ole32/Makefile.in, dlls/ole32/enumx.c, dlls/ole32/enumx.h:
	ole32: Add a framework for implementing IEnum* interfaces.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Don't warn when clearing PropVariants that don't have allocated memory.

	* dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32: Fix conformance test to compile with MSVC6.

	* dlls/ole32/stg_prop.c:
	ole32: This cannot be NULL, so don't check it.

	* dlls/ole32/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Allocate copied VT_CF data correctly in PropVariantCopy.

2006-07-11  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/avifil32/Makefile.in:
	avifil32: Remove unnecessary dependency on ntdll.

2006-07-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptAcquireCertificatePrivateKey.

2006-07-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy HeapAlloc bug.

	* include/ntsecapi.h:
	include: Add more policy structures to ntsecapi.h.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* libs/Makefile.in, tools/winewrapper:
	libs: Get rid of the libwine symlinks.

	* Make.rules.in, dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, tools/winegcc/winegcc.c:
	winegcc: Automatically add the correct lib paths when building inside the
	Wine tree.

	* Make.rules.in, libs/Makefile.in, tools/widl/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Get rid of the symlinks for the static libs.

	* Make.rules.in, configure, configure.ac, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avifil32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comctl32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/devenum/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/mapi32/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mpr/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msi/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt20/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/qcap/Makefile.in,
	  dlls/quartz/Makefile.in, dlls/query/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/serialui/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/ws2_32/Makefile.in, libs/Makefile.in,
	  libs/unicode/Makefile.in, libs/unicode/c_037.c,
	  libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20127.c,
	  libs/unicode/c_20866.c, libs/unicode/c_20932.c,
	  libs/unicode/c_21866.c, libs/unicode/c_28591.c,
	  libs/unicode/c_28592.c, libs/unicode/c_28593.c,
	  libs/unicode/c_28594.c, libs/unicode/c_28595.c,
	  libs/unicode/c_28596.c, libs/unicode/c_28597.c,
	  libs/unicode/c_28598.c, libs/unicode/c_28599.c,
	  libs/unicode/c_28600.c, libs/unicode/c_28603.c,
	  libs/unicode/c_28604.c, libs/unicode/c_28605.c,
	  libs/unicode/c_28606.c, libs/unicode/c_424.c, libs/unicode/c_437.c,
	  libs/unicode/c_500.c, libs/unicode/c_737.c, libs/unicode/c_775.c,
	  libs/unicode/c_850.c, libs/unicode/c_852.c, libs/unicode/c_855.c,
	  libs/unicode/c_856.c, libs/unicode/c_857.c, libs/unicode/c_860.c,
	  libs/unicode/c_861.c, libs/unicode/c_862.c, libs/unicode/c_863.c,
	  libs/unicode/c_864.c, libs/unicode/c_865.c, libs/unicode/c_866.c,
	  libs/unicode/c_869.c, libs/unicode/c_874.c, libs/unicode/c_875.c,
	  libs/unicode/c_878.c, libs/unicode/c_932.c, libs/unicode/c_936.c,
	  libs/unicode/c_949.c, libs/unicode/c_950.c, libs/unicode/casemap.c,
	  libs/unicode/collation.c, libs/unicode/compose.c,
	  libs/unicode/cpmap.pl, libs/unicode/cptable.c, libs/unicode/defaults,
	  libs/unicode/fold.c, libs/unicode/mbtowc.c, libs/unicode/sortkey.c,
	  libs/unicode/string.c, libs/unicode/utf8.c, libs/unicode/wctomb.c,
	  libs/unicode/wctype.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map, libs/wine/Makefile.in,
	  libs/wine/c_037.c, libs/wine/c_10000.c, libs/wine/c_10006.c,
	  libs/wine/c_10007.c, libs/wine/c_10029.c, libs/wine/c_1006.c,
	  libs/wine/c_10079.c, libs/wine/c_10081.c, libs/wine/c_1026.c,
	  libs/wine/c_1250.c, libs/wine/c_1251.c, libs/wine/c_1252.c,
	  libs/wine/c_1253.c, libs/wine/c_1254.c, libs/wine/c_1255.c,
	  libs/wine/c_1256.c, libs/wine/c_1257.c, libs/wine/c_1258.c,
	  libs/wine/c_20127.c, libs/wine/c_20866.c, libs/wine/c_20932.c,
	  libs/wine/c_21866.c, libs/wine/c_28591.c, libs/wine/c_28592.c,
	  libs/wine/c_28593.c, libs/wine/c_28594.c, libs/wine/c_28595.c,
	  libs/wine/c_28596.c, libs/wine/c_28597.c, libs/wine/c_28598.c,
	  libs/wine/c_28599.c, libs/wine/c_28600.c, libs/wine/c_28603.c,
	  libs/wine/c_28604.c, libs/wine/c_28605.c, libs/wine/c_28606.c,
	  libs/wine/c_424.c, libs/wine/c_437.c, libs/wine/c_500.c,
	  libs/wine/c_737.c, libs/wine/c_775.c, libs/wine/c_850.c,
	  libs/wine/c_852.c, libs/wine/c_855.c, libs/wine/c_856.c,
	  libs/wine/c_857.c, libs/wine/c_860.c, libs/wine/c_861.c,
	  libs/wine/c_862.c, libs/wine/c_863.c, libs/wine/c_864.c,
	  libs/wine/c_865.c, libs/wine/c_866.c, libs/wine/c_869.c,
	  libs/wine/c_874.c, libs/wine/c_875.c, libs/wine/c_878.c,
	  libs/wine/c_932.c, libs/wine/c_936.c, libs/wine/c_949.c,
	  libs/wine/c_950.c, libs/wine/casemap.c, libs/wine/collation.c,
	  libs/wine/compose.c, libs/wine/cpmap.pl, libs/wine/cptable.c,
	  libs/wine/defaults, libs/wine/fold.c, libs/wine/mbtowc.c,
	  libs/wine/sortkey.c, libs/wine/string.c, libs/wine/utf8.c,
	  libs/wine/wctomb.c, libs/wine/wctype.c, libs/wine/wine.def,
	  libs/wine/wine.map, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in,
	  server/Makefile.in, tools/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Merged libwine_unicode into libwine.
	Most dlls use libwine_unicode at this point, so there's nothing to
	gain by having two separate libraries.

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Check a pointer before dereferencing it (Coverity).

	* dlls/shell32/pidl.c, dlls/shell32/tests/shlfolder.c:
	shell32: Always NULL-terminate path in SHGetPathFromIDList.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/infosoft.spec, dlls/infosoft/infosoft_main.c,
	  dlls/infosoft/wordbreaker.c:
	infosoft: Add a word breaker for English.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* tools/winebuild/import.c:
	winebuild: Save registers which might contain parameters for the function to
	be called.

	* dlls/kernel/resource.c, include/winternl.h:
	ntdll: Widen fields in LDR_RESOURCE_INFO to accomodate 64 bit pointers.

2006-07-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test how SetTargetPath affects the target paths of install files.

2006-07-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: AppSearchReg shouldn't create the key it's looking for if it doesn't exist.

2006-07-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Conformance test and patch for VarCat.

2006-07-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Improve GetAdapterMonitor stub.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions.
	- Implement call, callnz, label, and ret
	- Implement support for NOT modifier

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions
	- Implement if, else, endif, rep, endrep, break
	- Implement ifc, breakc, using undocumented comparison bits in the instruction
	token
	- Fix bug in main loop processing of codes with no dst token
	- Fix bug in GLSL output modifier processing of codes with no dst token
	- Fix bug in loop implementation (src1 contains the integer data, src0 is aL)
	- Add versioning for all the instructions above, and remove
	GLSL_REQUIRED thing, which is useless and should be removed from all
	opcodes in general.

2006-07-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix off-by-one constants bug.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Clamp texcoord output between 0 and 1.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place immediate constants in the same array as global constants.
	- move DEF, DEFI, DEFB handling into the register counting pass
	- keep track of defined constants as a linked list (because there's a
	few of them)
	- apply immediate constants after global constants in the constant
	loading function
	- both types of constants now get loaded with array notation in the
	shader (into the same array)

2006-07-10  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/palette.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fix.
	Do not AddRef the DirectDraw interfaces in CreatePalette of older
	interface version, and add a test for that.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/direct3d.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Split up the ddraw refcount.

2006-07-10  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/cierror.h:
	include: Add cierror.h.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Only print a FIXME if necessary in StgOpenStorageEx.

	* include/indexsvr.idl:
	indexsvr.h: Fix a typo.

2006-07-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/directx.c:
	wined3d: Add an "\n" to a fixme to fix another overflow (in
	IWineD3DImpl_CheckDeviceFormatConversion).

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/riched20/richole.c, include/.gitignore, include/Makefile.in,
	  include/tom.idl:
	riched20: Add stub implementation of ITextDocument.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement key context property, with tests.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h:
	winedbg: Implement some x86_64 backend routines.

	* tools/winebuild/spec32.c:
	winebuild: Reserve enough space for null function pointer.

	* server/queue.c:
	server: Widen lparam for timers.

2006-07-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlview.c:
	shell32: Write-strings warning fix.

2006-07-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings test.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Fixed get_thread_context for x86_64.

2006-07-10  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/amstream/amstream.c, include/mmstream.idl:
	amstream: Fix argument types to match the PSDK.

2006-07-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/En.rc:
	notepad: En.rc: Fix the ellipsis in menu.

2006-07-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement removeChild.

2006-07-10  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Fix a buffer overrun (Coverity).

	* dlls/wldap32/ber.c:
	wldap32: Document the ber functions.

	* dlls/wldap32/rename.c:
	wldap32: Document the rename functions.

	* tools/wine.inf:
	wine.inf: Add msi to the list of fake dlls.

2006-07-10  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added more fields to TypeLib Viewer tree.

2006-07-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Always verify mime using FindMimeFromData.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of DoVerb.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added GetMiscStatus test.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call SetMenu in activate_ui.

	* dlls/mshtml/olewnd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added OnFrameWindowActivate implementation.

2006-07-08  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Fix registry API prototypes to match the PSDK.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* include/.gitignore, include/wine/.gitignore:
	include/.gitignore: Moved the wine subdir ignore list to the main file.

	* libs/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore:
	libs/.gitignore: Added wildcards for libraries.

	* .gitignore, dlls/msi/.gitignore, libs/wpp/.gitignore,
	  programs/winedbg/.gitignore, programs/winhelp/.gitignore,
	  tools/widl/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	.gitignore: Added wildcards to ignore lex and bison output files.

	* .gitignore, dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.gitignore,
	  dlls/cards/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/crypt32/.gitignore,
	  dlls/d3d8/.gitignore, dlls/d3d9/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dxof/.gitignore, dlls/ddraw/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.gitignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.gitignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.gitignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.gitignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dswave/.gitignore, dlls/dxdiagn/.gitignore, dlls/gdi/.gitignore,
	  dlls/gphoto2.ds/.gitignore, dlls/hhctrl.ocx/.gitignore,
	  dlls/iccvid/.gitignore, dlls/kernel/.gitignore,
	  dlls/kernel/messages/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mpr/.gitignore, dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/mshtml/.gitignore, dlls/msi/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/msvidc32/.gitignore,
	  dlls/mswsock/.gitignore, dlls/objsel/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleaut32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/opengl32/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/riched20/.gitignore, dlls/sane.ds/.gitignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/stdole2.tlb/.gitignore,
	  dlls/stdole32.tlb/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/version/tests/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/wininet/.gitignore,
	  dlls/winmm/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintrust/.gitignore, dlls/wldap32/.gitignore,
	  dlls/ws2_32/.gitignore, dlls/wsock32/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/oleview/.gitignore, programs/progman/.gitignore,
	  programs/regedit/.gitignore, programs/regsvr32/.gitignore,
	  programs/start/.gitignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.gitignore, programs/view/.gitignore,
	  programs/wcmd/.gitignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.gitignore, programs/winefile/.gitignore,
	  programs/winemine/.gitignore, programs/winetest/.gitignore,
	  programs/winhelp/.gitignore, programs/wordpad/.gitignore:
	.gitignore: Added wildcards to ignore generated resource files.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore .ok files in all tests directories.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore testlist.c in all tests directories.

	* programs/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/icinfo/.gitignore, programs/iexplore/.gitignore,
	  programs/make_progs, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore:
	make_progs: Generate the .gitignore file.
	Ignore generated programs from the top-level .gitignore.

	* dlls/.gitignore, dlls/activeds/.gitignore, dlls/advapi32/.gitignore,
	  dlls/advpack/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.gitignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comdlg32/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/cryptdll/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.gitignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.gitignore,
	  dlls/dinput/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dsound/.gitignore, dlls/gdi/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/icmp/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.gitignore, dlls/kernel/.gitignore,
	  dlls/lz32/.gitignore, dlls/make_dlls, dlls/mapi32/.gitignore,
	  dlls/mlang/.gitignore, dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/mshtml/.gitignore, dlls/msi/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/netapi32/.gitignore, dlls/newdev/.gitignore,
	  dlls/ntdll/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/odbc32/.gitignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/olecli32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/olepro32/.gitignore,
	  dlls/olesvr32/.gitignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.gitignore, dlls/psapi/.gitignore,
	  dlls/quartz/.gitignore, dlls/rasapi32/.gitignore,
	  dlls/riched20/.gitignore, dlls/rpcrt4/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/secur32/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/sfc/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/sti/.gitignore, dlls/tapi32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/.gitignore, dlls/usp10/.gitignore, dlls/uxtheme/.gitignore,
	  dlls/vdmdbg/.gitignore, dlls/version/.gitignore,
	  dlls/wined3d/.gitignore, dlls/winedos/.gitignore,
	  dlls/wininet/.gitignore, dlls/winmm/.gitignore,
	  dlls/winnls32/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/wsock32/.gitignore, dlls/wtsapi32/.gitignore:
	make_dlls: Ignore generated import libraries from the top-level .gitignore.

	* dlls/.gitignore, dlls/make_dlls:
	make_dlls: Generate the .gitignore file.

	* .gitignore, dlls/.gitignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.gitignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/capi2032/.gitignore, dlls/cards/.gitignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.gitignore,
	  dlls/cryptdll/.gitignore, dlls/cryptnet/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore,
	  dlls/d3d8/tests/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.gitignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.gitignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.gitignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.gitignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.gitignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/tests/.gitignore, dlls/dplay/.gitignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.gitignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.gitignore, dlls/dxguid/.gitignore, dlls/gdi/.gitignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/gphoto2.ds/.gitignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/hlink/.gitignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.gitignore, dlls/imaadp32.acm/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/inseng/.gitignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/itss/.gitignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.gitignore,
	  dlls/kernel/tests/.gitignore, dlls/lz32/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/mapi32/.gitignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.gitignore,
	  dlls/mciwave/.gitignore, dlls/midimap/.gitignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.gitignore,
	  dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32.drv/.gitignore, dlls/msacm32/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/msadp32.acm/.gitignore,
	  dlls/mscms/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/msg711.acm/.gitignore, dlls/mshtml/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.gitignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msisys.ocx/.gitignore, dlls/msnet32/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvfw32/.gitignore,
	  dlls/msvidc32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.gitignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/objsel/.gitignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.gitignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli32/.gitignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.gitignore, dlls/olesvr32/.gitignore,
	  dlls/opengl32/.gitignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/query/.gitignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.gitignore,
	  dlls/riched20/tests/.gitignore, dlls/riched32/.gitignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.gitignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.gitignore,
	  dlls/sane.ds/.gitignore, dlls/secur32/.gitignore,
	  dlls/secur32/tests/.gitignore, dlls/security/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.gitignore,
	  dlls/sfc/.gitignore, dlls/shdocvw/.gitignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/spoolss/.gitignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.gitignore,
	  dlls/sti/.gitignore, dlls/strmiids/.gitignore,
	  dlls/tapi32/.gitignore, dlls/twain_32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/userenv/.gitignore, dlls/usp10/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/vdhcp.vxd/.gitignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.gitignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.gitignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.gitignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.gitignore, dlls/w32skrnl/.gitignore,
	  dlls/winecrt0/.gitignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.gitignore, dlls/winemp3.acm/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/winex11.drv/.gitignore,
	  dlls/wininet/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.gitignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.gitignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/winecoreaudio/.gitignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.gitignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.gitignore, dlls/winnls32/.gitignore,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/ws2_32/tests/.gitignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.gitignore, documentation/.gitignore, fonts/.gitignore,
	  include/.gitignore, include/wine/.gitignore, libs/.gitignore,
	  libs/port/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore,
	  libs/wpp/.gitignore, loader/.gitignore, programs/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/control/.gitignore, programs/eject/.gitignore,
	  programs/expand/.gitignore, programs/explorer/.gitignore,
	  programs/hh/.gitignore, programs/icinfo/.gitignore,
	  programs/iexplore/.gitignore, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore,
	  server/.gitignore, tools/.gitignore, tools/widl/.gitignore,
	  tools/winapi/.gitignore, tools/winebuild/.gitignore,
	  tools/winedump/.gitignore, tools/winegcc/.gitignore,
	  tools/wmc/.gitignore, tools/wrc/.gitignore:
	Take advantage of the recursive nature of .gitignore for Makefile entries.
	Prefix other entries with '/' to make them non-recursive.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.17.

----------------------------------------------------------------
2006-07-07  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/query/.gitignore,
	  dlls/query/Makefile.in, dlls/query/query.spec,
	  dlls/query/query_main.c:
	query: Add a skeleton for query.dll.

2006-07-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Add tests for different configurations of INF filenames and
	working directories for install functions.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/basetsd.h, include/windef.h,
	  tools/winegcc/winegcc.c:
	configure: Define _WIN64 when building on a 64-bit platform.

	* include/msvcrt/direct.h, include/msvcrt/malloc.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/stdio.h, include/msvcrt/stdlib.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	include/msvcrt: Fix all definitions of size_t for Win64.

	* dlls/msvcrt/ctype.c, dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/time.c:
	msvcrt: Avoid including system headers in msvcrt.h.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/ntquery.h:
	query: Add ntquery.h.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Added some NULL testing.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	server: Only accept 0 as registry handle in functions that take a parent key.

2006-07-08  Robert Shearman <rob@codeweavers.com>

	* include/winerror.h:
	include: Add more error codes used by newer versions of COM.

	* dlls/oleaut32/typelib2.c:
	oleaut32: Make ctl2_hash_guid match the same function in widl, which has likely
	had much wider testing.

	* dlls/oleaut32/typelib.c:
	oleaut32: MSFT_DoFuncs: "reclength" of the function information record is stored
	in a 16 bit int and not in a 8 bit int as previously supposed, using a 0x1ff
	mask. Upper 16 bits contains the ordinal number of the function.
	Allocation of the "recbuf" must be modified, to support larger data
	(based on a patch by White Snake <whitesnake78@mail.com>).

2006-07-08  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Copying a NULL BSTR should result in an empty BSTR in VariantCopy.

2006-07-07  Thomas Kho <tkho@ucla.edu>

	* dlls/winex11.drv/mouse.c:
	winex11: Use correct multiplier for negative relative mouse movements.

2006-07-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Implement revocation check in CertVerifySubjectCertificateContext.

2006-07-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2006-07-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Nl.rc: Shift Graphics page up to fill the empty place.

2006-07-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/audio.c:
	winecfg: Write-strings warnings fix.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Register protocol handlers in DllMain.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use non heap based objects for class factories.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix typo breaking 3.0 pshaders color input.

2006-07-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Protect X11 calls by a critical section.

	* dlls/user/focus.c, dlls/user/tests/win.c, server/queue.c,
	  server/trace.c, server/window.c:
	user: Improve SetActiveWindow test, add SetForegroundWindow test, make them
	pass under Wine.

2006-07-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/winex11.drv/opengl.c:
	Add a common fps counter channel to ddraw, opengl and d3d.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Create nsWineURI even if we don't have valid nsIURI.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call GetContainer in SetClientSite.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/htiframe.idl:
	include: Added htiframe.idl.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Trace ABS/ABSNEG modifiers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Create fake input semantics for d3d8 shaders.
	Use them to remove the need for loading arrays in two different places.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Reverse semantics maps for shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make WINED3D_ATR macros more flexible.
	Make them operate on a type, as opposed to a semantic name.

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Simplify primitiveDeclartationConvertToStrided.
	Assign fixed indices to declaration inputs.
	Then use a common path to load the strided data.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add position_transformed flag to Strided data format.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Only link and use GLSL program if at least one GLSL shader is available.

2006-07-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Show a confirmation before deleting files with syscalls.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: If possible use SHFileOperationW to delete in unixfs.
	This gives confirmation dialogs, recursive directory removal etc.

2006-07-07  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: map_axis must be able to work with LONG's value range.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Remove redundant struct members.

2006-07-06  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Implement the GetProperty call for getting the range of an axis.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Call fake_current_js_state on the places where it is actually needed
	in SetProperty.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Only fake the current state on axes that are actually there.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the axes and button configs into the JoyDev struct.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize the offsets and the transform to support the user
	supplied data format.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Adds offset and transform and their basic handling to the joystick
	implementation.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: When handling axes, ignore the ABS_HAT.* as they are handled as POV.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Set the amount of POVs in the caps.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Detect more than one /dev/input/event joystick.

2006-07-07  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_TEXKILL for GLSL.

2006-07-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/En.rc:
	winecfg: Shift Graphics page up to fill the empty place.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix remaining refcount tests and tighten all tests.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Use correct way of determining the password for anonymous ftp.

2006-07-07  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/shell32/shell.c, dlls/shell32/shlfileop.c:
	shell: Move SHIsFileAvailableOffline from shell.c to shlfileop.c to
	ensure the 16/32 bits separation.

	* server/context_powerpc.c:
	server: Fix context_powerpc.c compilation.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* dlls/uuid/uuid.c:
	uuid: Add indexsvr's IIDs to libuuid.

	* include/.gitignore, include/Makefile.in, include/indexsvr.idl:
	include: Add indexsvr.idl (IWordBreaker).

2006-07-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/riched20/caret.c:
	riched20: Replace an if-statement with empty body with a FIXME comment.

	* dlls/comctl32/trackbar.c, dlls/mlang/tests/mlang.c,
	  dlls/msg711.acm/msg711.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/user/driver16.c, dlls/wined3d/drawprim.c,
	  dlls/winex11.drv/wintab.c, dlls/winmm/driver.c,
	  dlls/wintab32/context.c:
	janitorial: Put "inline static" at the beginning of a declaration.

	* dlls/shell32/systray.c, dlls/wined3d/wined3d_private.h,
	  programs/explorer/systray.c:
	janitorial: Move the storage specifier to the beginning of the declaration.

2006-07-06  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/main.c:
	notepad: Change window classname from NPClass to Notepad.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/x-png mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/bmp filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/gif filter.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added more test of FindMimeFromData.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Fix handling of proposed mime.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Added image/pjpeg mime filter.

2006-07-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Add support for the builtin constants "TRUE" and "FALSE".

	* dlls/ole32/compobj.c:
	ole32: Fix the return value of COM_RegReadPath and make it static.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: ITypeComp_fnBind should do case-insensitive compares on the name
	passed in.

	* dlls/oleaut32/olepicture.c, include/rpcndr.h:
	oleaut32: Add a typedef for "boolean".
	Fix up an conflict that this type has with jpeglib.h.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the error code returned by ITypeComp on an interface when the
	name matches, but the flags don't.

2006-07-05  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/security.c:
	advapi32: Get the token type in ImpersonateLoggedOnUser.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountSid.

2006-07-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Add window style and visibility status to the take focus event
	trace.

2006-07-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_M#X# instruction for both ARB and GLSL shaders.
	This instruction was being handled incorrectly in the case where the
	2nd src argument contained a relatively addressed constant.

2006-07-06  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for OpenFile.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Return NULL handle if no connection is established.

2006-07-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawPrimitive/drawPrimitiveDrawStrided.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
	  dlls/wined3d/device.c:
	wined3d: Implement FVF to DECL9 conversion (with tests).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move register count pass to SetFunction.
	Move semantics pointers out of the reg_maps, make them persistent data
	in the shader (again, for future software shaders).

	* dlls/wined3d/device.c:
	wined3d: Fix STREAM flag override.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Add missing PSIZE register for decl8->9 conversion.

	* dlls/wined3d/device.c:
	wined3d: Allow mix of SW vertex and GLSL pixel shader.
	Do not attach non-GLSL shaders to the GLSL program, that will cause a
	crash. Mix with ARB shaders is never going to happen, because the
	selection code will always choose GLSL for both or ARB for both.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rework shader mode selection.
	- currently half the shader selection code (GLSL vs ARB) is in
	fillGLcaps. The parts that check for software shaders are in
	GetDeviceCaps. That placement, will work, but is definitely not optimal.
	FillGLcaps should detect support - it should not make decision as to
	what's used, because that's not what the purpose of the function is.
	GetDeviceCaps should report support as it has already been selected.
	Instead, select shader mode in its own function, called in the
	appropriate places.
	- unifying pixel and vertex shaders into a single selection is a
	mistake. A software vertex shader can be coupled with a hardware arb or
	glsl pixel shader, or no shader at all. Split them back into two and add
	a SHADER_NONE variant.
	- drawprim is doing support checks for ARB_PROGRAM, and making shader
	decisions based on that - that's wrong, support has already been
	checked, and decided upon, and shaders can be implemented via software,
	ARB_PROGRAm or GLSL, so that support check isn't valid.
	- Store the shader selected mode into the shader itself. Different types
	of shaders can be combined, so this is an improvement. In fact, storing
	the mode into the settings globally is a mistake as well - it should be
	done per device, since different cards have different capabilities.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/.gitignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of IProvideClassInfo.

2006-07-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Features may be published but absent.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Add a test for MsiGetComponentPath and make it pass.

	* dlls/msi/msi.c:
	msi: Use msi_strcpy_to_awstring to return the string in MsiComponentGetPath.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* configure, configure.ac:
	configure: Allow relocation on x86_64.

2006-07-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/txtrange.c:
	mshtml: Added get_text implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c:
	mshtml: Added createRange implementation.

	* dlls/mshtml/selection.c:
	mshtml: Added get_type implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/selection.c:
	mshtml: Added get_selection implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Return S_OK in Exec(IDM_BASELINEFONT3).

2006-07-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Flip WINED3DFMT_R8G8B8 to GL_RGB.

2006-07-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Forward MsiUseFeature to MsiUseFeatureEx.

2006-07-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/Makefile.in:
	fonts: Fix a copy/paste bug preventing correct generation of the
	System font for codepages 1256 and 1257.

2006-07-03  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Error out if hInternet is a bad handle.

	* dlls/wininet/ftp.c:
	wininet: Use a blank password if none is provided in FTP_Connect.

2006-07-03  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/.gitignore, dlls/comdlg32/tests/Makefile.in,
	  dlls/comdlg32/tests/printdlg.c, programs/winetest/Makefile.in:
	comdlg32: Add initial test.

2006-07-02  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/cryptnet/.gitignore:
	cryptnet: Add .gitignore.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Write-strings warnings fix.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wininet.h:
	wininet.h: Add extra error code.

2006-07-04  Robert Reif <reif@earthlink.net>

	* dlls/dxdiagn/dxdiag_main.c:
	dxdiagn: Fix TRACE/FIXME formats.

2006-07-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute header size after an insertion of a column.

2006-07-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c:
	ntdll: Fix possible TRACE crash.

2006-07-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Implement processing of modules for SLTG typelibs.
	Set funckind when processing SLTG functions.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Improve SLTG var support.
	Pass both the start of the block and the offset to the first item into
	SLTG_DoVars as they may be different.
	Process 0xfffe offsets for variable names - this means to use the
	previous name.
	Add support for parsing the optional varflags field.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Fix function support for SLTG dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the processing of functions in SLTG typelibs into a
	separate function and use it when processing dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the initialisation of memidConstructor and
	memidDestructor of type infos to the common ITypeInfo creation
	function.
	Remove the WARN message as this functionality isn't implemented in
	native either.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references for SLTG dispatch types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Abstract out the processing of variables in SLTG typelib components
	to a common function.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references when parsing SLTG alias types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Rename SLTG_DoType to SLTG_DoElem and split out the common TYPEDESC
	generating code to SLTG_DoType.
	Process SLTG alias types with SLTG_DoType as the data is stored in the
	same format as in other components of the typelib.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: The SLTG_MemberHeader and SLTG_TypeInfoTail structures are
	common to all elements, so move the processing of these from the
	individual element processing.
	Improve SLTG alias processing.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Document some more members of SLTG_TypeInfoTail.

	* dlls/advapi32/service.c:
	advapi32: Fix the service function being called when extended is
	either set or not set (reported by Andrey Turkin).

2006-07-03  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't advance the buffer for FC_STRUCTPAD2.

2006-07-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Update Lithuanian keyboard layout to better match the X11 one.

2006-07-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/crypt32/protectdata.c, dlls/msi/table.c:
	Avoid non-portable WCHAR[] constructs.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to print out D3DDECLUSAGE9 values.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix faulty DCL trace.

2006-07-02  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Resync ARB mnxn function with GLSL mnxn function.

	* dlls/wined3d/baseshader.c:
	wined3d: Use shader_get_regtype() in register counting pass.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move SHADER_ARB code into arb_program_shader.c.

	* dlls/wined3d/device.c:
	wined3d: Cleanup: print constants in device code.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* include/d3d9types.h:
	d3d9: Fix FVF POSITION mask.

2006-07-02  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added next field to TypeLib viewer treeview control.

	* programs/oleview/typelib.c:
	oleview: Improved type handling in TypeLib viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/typelib.c:
	oleview: Added open TypeLib file functionality.

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added type displaying in TypeLib Viewer.

2006-06-30  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmdmain.c:
	wcmd: Modify option parser to allow compound options.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/winealsa/audio.c:
	winmm/winealsa: Write-strings warning fix.

2006-07-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-06-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warnings fix.

2006-06-30  Hervé Poussineau <hpoussin@reactos.org>

	* dlls/mapi32/prop.c:
	mapi32: Use kernel32 functions instead of the ntdll ones.

2006-06-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, tools/wine.inf:
	shdocvw: Get rid of Mozilla ActiveX control dependency.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Added beginning IDM_BROWSEMODE implementation.

	* tools/wine.inf:
	wine.inf: Set gecko url to activate Wine Gecko installer.

	* dlls/mshtml/install.c:
	mshtml: Add trailing '\' to gecko_path if needed.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* include/cvconst.h, programs/winedbg/be_x86_64.c:
	winedbg: Implement be_x86_64_init_registers.

	* include/msvcrt/string.h:
	include/msvcrt: Make sure size_t is properly defined for 64-bit.

	* programs/winedbg/be_alpha.c, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	winedbg: Adjust the parameters of the backend read/write routines to
	match those of ReadProcessMemory/WriteProcessMemory, since those are
	the ones actually used.

	* server/thread.c:
	server: The "select" call passes handles, not ints.

2006-06-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shlfileop.c, dlls/shell32/shres.rc,
	  dlls/shell32/shresdef.h:
	shell32: Add an icon for delete confirmation.

	* dlls/shell32/shlfileop.c:
	shell32: Allow for custom icons in confirmation messages.

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Pass the correct parent hwnd to confirmation dialogs.

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileW.

2006-07-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix parsing of hex numbers with 'e' in the string by moving
	the exponent parsing to after the hex digit parsing.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: Implement RegisterServiceCtrlHandleExW.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Add trailing '\n's to ok() calls.

2006-06-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/shdocvw/regsvr.c, dlls/shell32/regsvr.c,
	  dlls/urlmon/regsvr.c:
	Use the return value of register_key_guid.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/typelib.c:
	oleview: Added base TypeLib Viewer menu functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/typelib.c:
	oleview: Added status bar to TypeLib Viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/pane.c, programs/oleview/resource.h,
	  programs/oleview/tree.c, programs/oleview/typelib.c:
	oleview: Added TypeLib Viewer base.
	- Added TypeLib Viewer base.
	- Fixed multiple instance of pane window functionality.
	- Added field with TypeLib path to ITEM_INFO structure.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Perform sanity checks on the rectangle in LockRect.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Added missing '\n' in debug traces.

	* dlls/quartz/pin.c:
	quartz: Fixed crash in releasing uninitializes pAlloc and pReader.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: When CoLockObjectExternal with fLock=TRUE is used on an object
	that hasn't yet been marshaled then it should create a new stub
	manager.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a typo where the FIXME doesn't match the code.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcMgmtSetServerStackSize.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c:
	advapi32: Implement RegDisablePredefinedCache.

2006-06-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix return codes for NtCreateKey (with tests).

2006-06-29  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathFindExtensionA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCanonicalize.

2006-06-29  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shfldr_fs.c:
	shell32: Use SHFileOperationW to delete files.

2006-06-29  Ivan Leo <ivanleo@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Comment out a test that crashes on windows nt 4.0.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/material.c, dlls/ddraw/viewport.c:
	ddraw: Fix some material related bugs.

	* dlls/ddraw/device.c, dlls/ddraw/executebuffer.c:
	ddraw: Matrix values in the execute buffer are handles.

2006-06-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update window's full screen state on the resolution
	change as well as on the window resize event.

	* dlls/user/defwnd.c, dlls/user/dialog.c, dlls/user/message.c,
	  dlls/user/nonclient.c, dlls/user/win.c, dlls/user/winpos.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c, include/win.h,
	  include/winpos.h, include/winuser.h:
	include: Move appropriate parts of winpos.h to winuser.h and win.h,
	remove winpos.h afterwards.

2006-06-28  Maarten Lankhorst <M.B.Lankhorst@gmail.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/cryptnet/Makefile.in,
	  dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement a stub cryptnet dll.

2006-06-28  Juan Lang <juan_lang@yahoo.com>

	* programs/regedit/childwnd.c:
	regedit: Update status bar after editing key name.

2006-06-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix a few GLSL shader instruction translations.
	This fixes the translations for a few instructions in GLSL and allows
	Cubemap sampling in pixel shaders < 2.0.  It makes some of the
	lighting on textures in Half Life 2 look better, including some of the
	water effects.	It's not perfect yet, but much closer now.

2006-06-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: When marshaling a proxy make sure to maintain an external
	reference on the stub object so that the first proxy can be released.
	Implement external refcount sharing between a proxy and the marshaled proxy.
	Extend the marshaling of a proxy test to show that an external reference
	is always kept on the stub object.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for CoCreateInstance doing object hosting by
	automatically creating an appropriate apartment for the object and
	returning a proxy to it.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoGetObject.

	* dlls/oleaut32/typelib.c:
	oleaut32: RegisterTypeLib should register any interface that derives
	from IDispatch rather than just dual interfaces.
	This is hinted at, although not explicitly stated on MSDN, but was
	verified by tests with native oleaut32.

2006-06-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Correct a NULL pointer check.

2006-06-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/version.c:
	kernel: Version test was using imports missing on WinME.

2006-06-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/filtergraph.c:
	quartz: Fixed typo (Coverity).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/regsvr.c:
	quartz: Use the return value of register_key_guid.

2006-06-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Handle bstr length of -1 in typelibs.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for InvalidateDriveType.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_interface.h:
	wined3d: Use register combiners for texture stage operations.
	Make wined3d use register combiners for texture stage operations. In
	order to do that the texture unit index needs to be separated from the
	texture stage index. For cards that don't support the
	NV_register_combiners extension nothing should change.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add code for using register combiners for texture stage operations.
	On nVidia cards the value of GL_MAX_TEXTURE_UNITS is generally not
	larger than 4. In Direct3D that would correspond to
	MaxSimultaneousTextures in the caps, rather than MaxTextureBlendStages
	(which can be much larger) to which it currently corresponds in
	wined3d. Using register combiners we can get around that limitation
	and get up to GL_MAX_GENERAL_COMBINERS_NV (typically 8) texture
	stages. This patch adds code for doing the texture operations with
	register combiners instead of ARB_texture_env_combine or
	NV_texture_env_combine4, but doesn't make use of that code yet. That's
	what the next patch will do.

	* dlls/wined3d/drawprim.c:
	wined3d: Fix uploading of textures for shaders.
	The code for uploading / binding textures for use with pixel shaders
	is slightly different from the one for uploading / binding textures
	for use with the fixed function pipeline. It would be possible to keep
	the code in a single function with a couple of conditionals, but in
	combination with the changes needed for register combiners that would
	become quite messy.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Texture limits fixes.
	GL_LIMITS(textures) is currently used for both the number of texture
	stages and the maximum number of simultaneous textures. In the current
	code that's the same, but in a later patch that will be separated,
	since a texture stage doesn't have to reference an actual
	texture. Also, shaders can access a larger number of samplers than the
	number of texture units the fixed function pipeline can access.

	* include/wine/wined3d_gl.h:
	wined3d: Add register combiner function pointers.

	* dlls/wined3d/utils.c:
	wined3d: Add & use D3DTEXTUREOP dumping code.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAppendA.

2006-06-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: If needed show a confirmation dialog when deleting with SHFileOperation.
	Show a confirmation dialog in SHFileOperationW for the FO_DELETE
	operation when called without FOF_NOCONFIRMATION or with
	FOF_WANTNUKEWARNING. That way the user's files won't be deleted
	without a warning.

2006-06-26  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: Fix the returned metrics and add a translation vector to the end of
	each list.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved get/set_thread_context implementation to ptrace.c.

2006-06-27  Ivan Leo <ivanleo@gmail.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Don't leave files on the disk.

2006-06-27  William Knop <william.knop@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix for non-elf build (undefined symbol: _elf_is_in_thunk_area).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for IsThemePartDefined.

2006-06-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation for GetProfileType.

2006-06-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/device.c, dlls/ddraw/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Vertex buffer can be locked multiple times.

2006-06-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Always have a libxml doc associated with a domdoc object, even if the
	object has no nodes.
	This means we don't need to add checks for NULL libxml node ptrs in our node
	implementation.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Read the font color from the database, and use it for the text control.

2006-06-26  James Hawkins <truiken@gmail.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c:
	msiexec: Use CommandLineToArgvW instead of process_args to reduce code
	duplication.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/critsection.c:
	ntdll: Faster critical sections on MacOS using Mach semaphores.

	* libs/wine/loader.c:
	libwine: Attempt to increase some user limits that are set too low on some
	platforms.

	* configure, configure.ac, include/config.h.in,
	  programs/wineconsole/curses.c:
	wineconsole: Portability fixes in the curses mouse support.

	* tools/widl/widltypes.h:
	widl: Fixed syntax of DECL_LINK macro to look more like C code.

2006-06-21  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Test for UrlGetPart in case of file name.

2006-06-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix 2 failing test on native. Change Wine accordingly.

2006-06-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell.c, dlls/shell32/shell32.spec:
	shell32: Add a stub implementation for SHIsFileAvailableOffline.

2006-06-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c:
	winedbg: Module info.
	when requesting info on a module by address, always print the module
	ELF/PE pair (if this applies) (and not only the embedded PE), which
	can be confusing.

	* programs/winedbg/info.c:
	winedbg: Use 64 bit version of imagehlp_module.
	This allows reimplementing the module list command and do less black
	magic to guess the ELF debug format.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c:
	dbghelp: Implemented SymEnumerateModules64.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c:
	dbghelp: Module info.
	- now internally storing module info as a 64bit module structure
	(the interest in not in the 64 bit side of things, but because
	it allows storing lots of usefull information)
	- fixed SymGetModuleInfo64W which wasn't returning the
	LoadedPdbName field
	- now filling for MSC files with the extended information
	(instead of guessing it)
	- reused the extended module info to store wine ELF module
	information (link for map link, stabs vs dwarf symbol info)

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winetest/maketest:
	winetest: Portability fix in the maketest script. Added support for git.

2006-06-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Write-strings warning fix.

2006-06-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions and a little cleanup.
	- Implement D3DSIO_DP2ADD, D3DSIO_TEXKILL, D3DSIO_TEXM3X3PAD
	- Partially implement D3DSIO_TEXBEM, D3DSIO_TEXM3X3VSPEC (as much as
	they are implemented in ARB_fragment_program at least).
	- Stop copying the SHADER_PARSE_STATE struct in each ARB shader
	routine - use a pointer instead.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Remove some redundant code.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Fix compilation (VBO constants).

2006-06-26  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix SetupCloseInfFile when a NULL handle is given, with tests.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAddBackslash.

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCombineA.

	* dlls/shdocvw/version.rc:
	shdocvw: Upgrade the version to 5.50.4134.599.

2006-06-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Fix some compiler warnings.

	* dlls/ddraw/ddraw.c:
	ddraw: Assign the surface descriptions height to the height.

2006-06-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for GetCurrentThemeName.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added a bit more functional tests to OpenThemeData.

2006-06-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Added Unadvise implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Destroy connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added Advise implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Return text/html by default in GetContentType.

	* dlls/mshtml/nsio.c:
	mshtml: Return NS_OK in GetStatus if channel is NULL.

	* dlls/mshtml/navigate.c:
	mshtml: Call OnStopRequest in OnStopBinding.

	* dlls/mshtml/navigate.c:
	mshtml: Break reading if IStream::Read returns 0 bytes.

2006-06-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/loadopts.c, dlls/mshtml/tests/.gitignore,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/misc.c:
	mshtml: Added HTMLLoadOptions implementation (with tests).

2006-06-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	mci: Fix some mciSendString quirks.
	Really check in MCI open string commands if the name we have is a
	device (and no longer rely on bad heuristics for it).

2006-06-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Dwarf & thunks.
	- added the elf_is_in_thunk_area() function to locate an address
	within the known thunk area of Wine's builtin modules
	- now passing this thunk information to the dwarf parser so that it
	can drop functions from the thunk areas (as dwarf symbols), so that
	those functions can be later on marked as thunks in dbghelp
	internals

2006-06-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	Enhancement over previous fix (we don't need to insert NOTYPE symbols
	in our public symbol table, so drop them as early as possible).

2006-06-25  Andrey Turkin <pancha@Mail.nnov.ru>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Disable some path validity checks in MsiSetTargetPath.

2006-06-24  Ivan Leo <ivanleo@gmail.com>

	* dlls/amstream/amstream.c:
	amstream: Implement IAMMultiMediaStreamImpl_OpenFile and
	IAMMultiMediaStreamImpl_OpenMoniker.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a crash when ConvertSidToStringSidA isn't available.

2006-06-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/resources/user32_Pl.rc:
	user: user32_Pl.rc: Fix the capitalization of OK.

2006-06-23  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Add UZT timezone info.

2006-06-23  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/d3d.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/shell32/shlfolder.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/utils.c, programs/winefile/resource.h:
	Assorted spelling, case and grammar fixes.

2006-06-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/classes.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	shell32: Fix computation of default verb.
	Compute the default verb as documented on MSDN instead of blindly
	assuming it is 'open'. This fixes the WordViewer association in some
	cases.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Protect pthread.h inclusion.

	* dlls/ddraw/tests/refcount.c:
	ddraw: Fix compilation with gcc 2.95.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix compilation with gcc 2.95.

2006-06-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the video memory and visible flag on render targets.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/direct3d.c:
	ddraw: Enumerate the reference d3ddevice.

	* dlls/wined3d/surface.c:
	wined3d: Fix single buffering.
	Tell gl to draw to the back buffer when a back buffer is used, do not
	use the value from gl.

	* dlls/wined3d/device.c:
	wined3d: Fix a bad trace.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Create vertex buffer objects for D3D vertex buffers.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex fixups.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add support for VBOs to the drawing code.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: PathCombineW should return NULL on invalid parameters.

2006-06-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/oleview/Ko.rc, programs/oleview/rsrc.rc:
	oleview: Added Korean resources.

2006-06-24  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/details.c,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Fix compilation with gcc 2.95.
	- patch based on Francois Gouget Fix compilation with gcc 2.95 patch
	- moved some string to resources
	- fixed implementation of IPersistStream interface viewer

	* programs/oleview/interface.c:
	oleview: Added propper ClassName displaying to interface viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h:
	oleview: Added interface viewer.

2006-06-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, include/wine/wined3d_interface.h:
	ddraw/wined3d: IDirectDrawSurface7::SetSurfaceDesc corrections.

2006-06-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/tests/metafile.c:
	gdi/tests: Write-strings warnings fix.

2006-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/widltypes.h:
	widl: Write-strings warnings fix.

2006-06-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/brsfolder.c:
	shell32: Add missing multiply by sizeof(WCHAR)l

2006-06-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Calculate size of FC_STRUCT arguments correctly.

	* dlls/winex11.drv/init.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Introduce a function to retrieve the glx drawable and have
	both the GET_GLX_DRAWABLE Escape and SwapBuffers call it.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

2006-06-23  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.c,
	  server/thread.h:
	server: Moved some common bits of get/set_thread_context to thread.c.

	* dlls/ntdll/server.c, include/wine/pthread.h, loader/kthread.c,
	  loader/pthread.c:
	libwine: Added entry for sigprocmask in the pthread functions table.

	* loader/pthread.c:
	wine-pthread: Set thread scope to force using kernel threads on Solaris.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: If there's no glX context don't return a wgl context.

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/oleview.c,
	  programs/oleview/resource.h:
	oleview: Added system configuration dialog.

	* programs/oleview/En.rc, programs/oleview/oleview.c:
	oleview: Added copy HTML tag functionality.

	* programs/oleview/oleview.c:
	oleview: Added copy CLSID functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added CreateInstanceOn functionality.

2006-06-22  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Add tests for components that aren't associated with a feature.

2006-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of HTMLLoadOptions.

	* dlls/mshtml/main.c, dlls/uuid/uuid.c, include/.gitignore,
	  include/Makefile.in, include/optary.idl:
	mshtml: Added optary.idl file.

	* dlls/mshtml/nsio.c:
	mshtml: Inherit NSContainer in NewURI.

	* dlls/mshtml/conpoint.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix a typo.

	* dlls/mshtml/olecmd.c:
	mshtml: Added CGID_MSHTML to IOleCommandTarget::Exec.

2006-06-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c:
	advapi: Add a stub for SystemFunction035.

	* dlls/kernel/tests/locale.c:
	kernel: Change failing to test to show it doesn't have anything to do
	with embedded NULLs.

2006-06-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Write-strings warning fix.

2006-06-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse each 10ms instead of dropping events.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Destroy the windows after we've used them.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add a case sensitivity test.

2006-06-22  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/En.rc:
	oleview: Spelling fixes (English).

	* programs/oleview/Fr.rc, programs/oleview/rsrc.rc:
	oleview: French localization.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11: glXQueryExtension has its error and event base arguments swapped
	compared with other *QueryExtension functions!

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/tree.c:
	oleview: Removed use of strlenW, strcmpW and strcpyW functions.

2006-06-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Send pkg-config error messages to /dev/null.

2006-06-22  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Fix message range for get_msg_name.

2006-06-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c,
	  include/wincrypt.h:
	crypt32: Implement CertGetCRLFromStore.
	- implement CertGetCRLFromStore, with tests
	- update tests for CRL revocation functions to show name isn't checked

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Correctly handle NULLs embedded in BSTRs, with tests.

	* dlls/kernel/tests/locale.c, libs/unicode/sortkey.c:
	kernel: Use the WinXP method for comparing strings with embedded NULLs. Update
	tests.

2006-06-21  Ivan Leo <ivanleo@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Fix media type detection.

2006-06-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	- fixed regression when looking for winebuild's special symbols in ELF symtab
	- STT_NOTYPE is still accepted as a valid symbol type (on top of STT_FUNC
	and STT_OBJECT)

2006-06-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: Add target "ctags" to the overview.

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories where added / renamed.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Only test the needed functions once, bail out if one is missing.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add some tests for GetWindowTheme.

2006-06-21  James Hawkins <truiken@gmail.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Add a stub implementation of AtlModuleLoadTypeLib.

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: Add a stub implementation of MAPIOpenLocalFormContainer.

2006-06-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use the handle infrastructure for Matrix handles.

2006-06-21  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.16.

----------------------------------------------------------------
2006-06-21  Alexandre Julliard <julliard@winehq.org>

	* programs/oleview/.gitignore, programs/oleview/oleview:
	oleview: Delete the symlink from git.

	* AUTHORS, dlls/shell32/shell32_main.c:
	Updated the AUTHORS list and converted it to utf-8.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* tools/mkinstalldirs:
	tools: Fix mkinstalldirs.
	We cannot trust 'mkdir -p' to set the proper permissions on parent
	directories. So create them manually.
	Fix handling of paths containing spaces.
	Properly prefix the path with './' if it starts with a '-'.
	Stop trying to create a path after the first error.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Extra testing for GetLastError.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/tests/string.c:
	msvcrt: Add simple test for _strdup(0).

	* dlls/msvcrt/string.c:
	msvcrt: Fix a crash in _strdup.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fix handling of the no-op identifier in the Directory table.

2006-06-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/server.c:
	ntdll: Write-strings warnings fix.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for EnumForms and set an error value in our stub.

2006-06-13  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msvcrt/data.c, dlls/msvcrt/tests/.gitignore,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/data.c:
	msvcrt: Fix _initterm, with tests.

2006-06-11  Simon Kissane <skissane@gmail.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/locale.c:
	kernel32: Added SetThreadUILanguage() stub.

2006-06-21  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stubs for RpcRevertToSelf and RpcMgmtSetComTimeout.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub for RpcMgmtEnableIdleCleanup.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Pixel format cleanup.

2006-06-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/tests/metafile.c:
	gdi32: SetWinMetaFileBits: Use the whole device surface if the METAFILEPICT
	parameter is NULL.
	Also use the whole device surface if one of the extents is zero or
	negative and the mapping mode is MM_ANISOTROPIC or MM_ISOTROPIC.
	New tests.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: An empty string as server name is valid for AddPrinterDriver.

2006-06-14  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c:
	oleview: Added registry tab in details window.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added details window base.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added base menu funcionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added more TreeView entries.

	* programs/oleview/tree.c:
	oleview: Added TreeView entries read from registry.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Added TreeView window.

	* programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/pane.c:
	oleview: Added pane bar.

	* configure, configure.ac, programs/Makefile.in,
	  programs/oleview/.gitignore, programs/oleview/En.rc,
	  programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/rsrc.rc:
	oleview: Added initial version.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Add an "\n" to a fixme to fix an overflow.

2006-06-20  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Bind correct number of samplers for GLSL shaders.
	We are only checking against GL_MAX_TEXTURES when binding samplers,
	when we should be checking against the maximum number of samplers that
	the card supports.  Spotted by H. Verbeet.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c:
	crypt32: Implement some CRL verification functions.

	* dlls/crypt32/main.c, include/wincrypt.h:
	wincrypt.h: Add more definitions and prototypes.

2006-06-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/url.c:
	wininet/tests: Write-strings warnings fix.

2006-06-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add support for full screen window state using the NETWM protocol.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement DoInfInstall on top of the install framework.

2006-06-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel: Add tests for OpenFile.

	* dlls/kernel/tests/file.c:
	kernel: Check for an exe which is always present in a system dir.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Small test fixes.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix the nBufferMax param of LoadStringW calls from SHELL_ConfirmDialogW.

2006-06-20  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/output.c:
	winedump: Add DLL_WINE_PREATTACH to the generated DllMain.

	* tools/winedump/output.c:
	winedump: Use ntdll as template.

	* configure, configure.ac, dlls/Makefile.in, dlls/compstui/.gitignore,
	  dlls/compstui/Makefile.in, dlls/compstui/compstui.spec,
	  dlls/compstui/compstui_main.c:
	compstui: Add minimal compstui.dll (stubs only).

2006-06-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/virtual.c:
	ntdll: Compile VIRTUAL_Dump only when somebody really needs it.

2006-06-20  Vitaly Lipatov <lav@etersoft.ru>

	* programs/winecfg/Ru.rc:
	winecfg: Russian translation.

2006-06-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Call Binding_CloseCacheDownload after Binding_FinishedDownload.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::InitNew.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Move IOleCommandTarget implementation to separate file.

	* dlls/mshtml/persist.c:
	mshtml: Initialize url variable in IPersistMoniker::Load.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in GetSecurityInfo if channel is NULL.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IPropertyNotifySink connection point.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/crl.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Rearrange functions a bit.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Small cleanups.
	- forward MLGetUILanguage to kernel32
	- correct type of parameter to MLLoadLibrary

2006-06-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/theme.c:
	winecfg: Create Resources directory when adding themes.

2006-06-20  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't use a short to hold the packet length, since it can
	result in premature termination of the send.

2006-06-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tape.c:
	ntdll: Fixed tape.c compilation on Solaris.

	* libs/wine/mmap.c:
	libwine: Better memory reservation algorithm for platforms that use
	try_mmap_fixed.

	* configure, configure.ac:
	configure: Default to using wine-pthread on all platforms.

2006-06-20  Jeremy White <jwhite@codeweavers.com>

	* configure, configure.ac:
	configure: Probe more carefully for soname support, primarily for Solaris
	support.

2006-06-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Tidy up leb128 reading.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Indent the code as the rest of dbghelp module.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Support multiple debug formats.
	When several debug formats (eg stabs & dwarf2) exist in the same
	module, allow to load them all (this is needed when different
	compilation units are compiled with different debug options).

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Generate the current source file and store it in dbghelp's
	internals.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Added the ability to define a source file by dir+filename instead of
	only filename.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: dwarf: Started parsing the attributes for lines (in compilation unit).
	Walking the whole lot, not doing anything interesting apart from
	traversing the data.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Pass .debug_loc section information to dwarf.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & parse context.
	- split the data structures for walking through the data (abbrev,
	cu... -> traverse_ctx) and data manipulation/loading (-> parse_ctx)
	- created dwarf2_parse_compilation_unit() for clarity
	- added section structure to gather information about all ELF sections
	related to all dwarf2 sections (more to come)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & udt members.
	- correctly set size & offsets for regular udt members
	- first shot at bitfields for udt members

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & function blocks.
	- properly handling function blocks
	- handling of variables inside of blocks (either on stack, or in a
	register, or relative to the frame register if any)
	- added dwarf2_subprogram_t structure so that we can pass around
	relevant information for function parsing

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Properly handle function formal parameters.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Storage of func locals & parameters.
	- added the ability to tell to add_func_local whether we're adding
	a local variable or a parameter (and removed the black magic
	we were using)
	- we can now address variables defined as an offset to a register

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & global symbols.
	Offset the addresses for global symbols (func & variables) by the base
	image of the corresponding module.

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Added support for function labels.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Proper support for nested types definitions (even in C).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf - function scheme.
	- various fixes to follow better the functions definition (nesting,
	subroutines...)
	- don't directly parse types referenced by a subprogram, they'll be
	loaded anyway when needed

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & locations.
	- put back the block attribute parsing
	- added dwarf2_compute_location to properly decode a location (at
	least starting it)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf compiland.
	- rewrote all entities loading to make use of new dwarf2_debug_info_t scheme
	- commented out the location parsing which is an ugly hack

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & new scheme.
	- add some helpers for the rewrite
	- module is now part of the dwarf2_parse_context

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & type references.
	Removed unused type references scheme that we'll implement using a
	different scheme in next patches.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf merge parsing of UDT.
	Merge into a single function the struct/class/union parsing.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & debug info entries.
	- now loading the debug info entries into specific structures
	- this will help writing new functions
	- this will allow handling of forward references

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf abbrev table is now a sparse array.
	- added a pool for memory allocation when parsing a compilation unit
	- now using the brand new sparse array for the abbrev table

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Added another basic type for storage: the sparse array.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Transform a few TRACEs into WARNs (especially for unhandled stuff).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Remove the unneeded level attribute while parsing.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: Moved all Dwarf standard definitions into dwarf.h file.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & typedefs.
	- removed lookup for name for the const modifier
	- hard wire dwarf-reference to our pointer types

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & module's symtype.
	- we should set the module's symtype upon success
	- removed unneeded bRet variable

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf2 & AT_byte_size.
	- AT_byte_size can be larger than a single byte (especially for enums)
	- added missing enumeration type parsing

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Proper handling of typedefs.
	Added types_get_real_type() to get rid of typedef information, and
	access the real underlying type.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode CRL issuing dist points.

2006-06-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c:
	wined3d: Move D3DSIO_DEF instruction for ARB shaders into arb_program_shader.c.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix DEF instructions in GLSL for non-Nvidia platforms.
	- NVidia allows "const vec4 = {1.0, 2.0, 3.0, 4.0};", even though
	that's not part of the spec.
	- It should be	"const vec4 = vecr4(1.0, 2.0, 3.0, 4.0);"
	- This patch fixes this for D3DSIO_DEF and D3DSIO_DEFI.

2006-06-20  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add d3d8.dll to the fake dlls list.

2006-06-20  Ge van Geldorp <ge@gse.nl>

	* dlls/kernel/global16.c:
	kernel32: "base" is a pointer in 16-bit global heap.

	* programs/winedbg/Makefile.in, programs/winedbg/be_x86_64.c,
	  programs/winedbg/gdbproxy.c, programs/winedbg/winedbg.c:
	winedbg: Added x86_64 support.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_ConfirmDialog.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c:
	shell32: Use SHELL_ConfirmDialogW when deleting multiple files.

2006-06-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Remove dead code from the LZOpenFileW test.

2006-06-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c:
	crypt32: Simplify CRL creation.
	Decoding already handles signed and unsigned CRLs, so don't duplicate
	that in CertCreateCRLContext.

	* dlls/crypt32/cert.c:
	crypt32: Simplify certificate creation.
	Decoding already handles signed and unsigned certs, so don't duplicate
	that in CertCreateCertificateContext.

2006-06-19  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: test LZOpenFileW.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: LZOpenFileA sets last error sometimes.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Rename function aliases to real (ASCII) function names.

2006-06-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c:
	shell32: Convert ISF_Desktop_fnGetDisplayNameOf to Unicode.

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Convert ISF_MyComputer_fnGetDisplayNameOf to Unicode.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Move the packet manipulation from the exception filter to the exception
	handler.
	Remove the unused server_sem variable.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Fix decoding signed certs and CRLs.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added test for IsAppThemed and grouped it with IsThemeActive.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement reading of VT_CF storage properties.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c:
	libwine: Remove one more directory level when checking for build dir.
	This way it still works if the libdir we got was libs/wine instead of libs.

2006-06-19  Jeremy White <jwhite@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: Solaris asctime_r compilation fix.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix a Solaris compilation error.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: On Solaris, Xutil.h is required to define XRegion.

	* dlls/ntdll/directory.c:
	ntdll: On Solaris, limits.h is required for PATH_MAX.

2006-06-19  Ge van Geldorp <ge@gse.nl>

	* dlls/dbghelp/minidump.c:
	dbghelp: Fix compilation for x86_64.

2006-06-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/secur32/schannel.c, include/sspi.h:
	include: Fix definition of SECURITY_INTEGER.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/relay.c:
	winebuild: Get rid of the data16 prefix, it shouldn't be needed anymore and
	causes warnings.

2006-06-13  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/tests/.gitignore, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInfoListExW.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Change S_OK to the more appropriate ERROR_SUCCESS.

2006-06-19  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/dnsapi/name.c:
	dnsapi: Fix conflicts nameser.h with winerror.h.

2006-06-19  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/secur32/ntlm.c:
	secur32: Fix another GetProcessHeap vs GetProcessHeap().

2006-06-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Fix famous typo in HeapFree call.

2006-06-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/negotiate.c:
	secur32: Remove unneeded function from the Negotiate provider.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Fix a typo.

2006-06-19  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation for HlinkNavigateToStringReference.

	* dlls/imm32/imm.c:
	imm32: Fix some return codes.

	* dlls/wininet/urlcache.c:
	wininet: Make sure to null terminate a string before copying it.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dib.c, dlls/gdi/gdi32.spec:
	gdi32: Get rid of the no longer needed DIB_CreateDIBSection export.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/compstui.h:
	include: Declare remaining exported functions in compstui.h.

2006-06-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/material.c, dlls/ddraw/surface.c, dlls/ddraw/texture.c,
	  dlls/ddraw/viewport.c:
	ddraw: Implement proper handle management.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Correct implementation of D3DSIO_LOOP.
	I initially misread the specification.	src0.x is the iteration count,
	not the max amount for the loop register.  This fixes that.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix lookup for LOOP register.

2006-06-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Added correct cast support for gl_FogFragCoord and gl_PointSize
	output registers.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Load boolean and integer constants into the GLSL shader program.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement locally defined boolean and integer constants in GLSL.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add preliminary support for constant boolean and integer registers
	in GLSL.
	- Separate the declaration phase of the shader string generator into
	the arb and glsl specific files.
	- Add declarations and recognition for application-sent constant
	integers and booleans (locally defined ones will follow).
	- Standardize capitilization of pixel/vertex specific variable names.

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading into target-specific files.
	- Moves GLSL constant loading code into glsl_shader.c and out of the
	over-populated drawprim.c.
	- Creates a new file named arb_program_shader.c which will hold code
	specific to ARB_vertex_program & ARB_fragment_program.
	- Remove the constant loading calls from drawprim.c

	* dlls/wined3d/vertexshader.c:
	wined3d: Remove dead vertex shader code.

2006-06-18  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c:
	riched20: EM_CHARFROMPOS didn't work properly with scrolling
	(vertical scrollbar position was not taken into account).

2006-06-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Free all allocated records instead of just the last one.

	* dlls/dnsapi/query.c:
	dnsapi: Correct testing for zero option value DNS_QUERY_STANDARD.

2006-06-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/palette.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/.gitignore, dlls/ddraw/tests/Makefile.in,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fixes + tests.

2006-06-17  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/om.c:
	ntdll: If ObjectAttributes is NULL then an error is returned at the
	start of the NtOpenSymbolicLinkObject, therefore ObjectAttributes does
	not need to be checked for NULL later on in the function.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Use the thread pool in the RPC server for processing packets.

	* dlls/ole32/ftmarshal.c:
	ole32: Document CoCreateFreeThreadedMarshaler.

	* dlls/ole32/rpc.c:
	ole32: Reuse event handles used for COM calls.
	This reduces the number of server calls during a COM call by half.

2006-06-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix updating the proc offset.

2006-06-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resorce file.

2006-06-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Enable old test and expand it.

2006-06-17  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/kernel/cpu.c:
	kernel: Fix reported address space limit to be in keeping with ntdll.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: AddMonitor: Test the driver entry before return an error.

2006-06-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fixes.

2006-06-15  Kevin Koltzau <kevin@plop.org>

	* dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32: Fix 64bit warnings in tests.

	* dlls/mscms/handle.c:
	mscms: Fix 64bit warnings.

2006-06-16  András Kovács <andras@csevego.net>

	* programs/uninstaller/Hu.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Hungarian translation.

2006-06-16  Scott Bambrough <scottb@xandros.com>

	* configure, configure.ac:
	configure: Test for additional ICU libraries /usr/lib/libicuuc.a and
	/usr/lib/libicudata.a.

2006-06-16  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/inseng/.gitignore,
	  dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, tools/wine.inf:
	inseng: Initial implementation of inseng (required for IE6 to install under
	win2k).

2006-06-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/En.rc, dlls/mshtml/Makefile.in, dlls/mshtml/install.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Wine Gecko installer.

2006-06-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/device.c:
	wined3d: GetScissorRect should use zero-based scissorBox (Coverity).

2006-06-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the argument size of conformant arrays.

2006-06-16  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/msi/tests/package.c:
	msi: Added tests for MsiSetTargetPath.

2006-06-15  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c, dlls/riched20/tests/editor.c,
	  dlls/uxtheme/tests/system.c, dlls/wined3d/device.c,
	  programs/cmdlgtst/cmdlgtst.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n'.

	* dlls/comctl32/tests/header.c, dlls/d3d9/tests/device.c,
	  dlls/riched20/editor.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c, server/token.c:
	Assorted spelling fixes.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove dead code in SHELL_FindExecutable().

	* dlls/ntdll/virtual.c:
	ntdll: Use page_size instead of page_mask+1.

2006-06-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Implement QueryContextAttributes. Add tests.

2006-06-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/avifil32/api.c:
	avifil32: Corrected destination size in MultiByteToWideChar.

2006-06-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Remove ValidatePixel/VertexShader.

2006-06-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Correct CRL tests, and fix CRL encoding/decoding accordingly.

2006-06-15  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/hlink/hlink_main.c:
	hlink: Fix typo. We should set hl not ppvObj.

2006-06-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Add and use GL_EXT_fog_coord defines.

2006-06-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winex11.drv/.gitignore, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/brush.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_convert.c,
	  dlls/winex11.drv/dib_dst_swap.c, dlls/winex11.drv/dib_src_swap.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/mwm.h,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/pen.c, dlls/winex11.drv/scroll.c,
	  dlls/winex11.drv/settings.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/x11font.h, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xfont.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrandr.h,
	  dlls/winex11.drv/xrender.c, dlls/winex11.drv/xvidmode.c,
	  dlls/winex11.drv/xvidmode.h, dlls/x11drv/.gitignore,
	  dlls/x11drv/Makefile.in, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/winpos.c,
	  dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c, dlls/x11drv/x11ddraw.h,
	  dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c, dlls/x11drv/xfont.c,
	  dlls/x11drv/xim.c, dlls/x11drv/xrandr.c, dlls/x11drv/xrandr.h,
	  dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h:
	x11drv: Renamed the x11drv directory to winex11.drv.

2006-06-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/Pl.rc:
	notepad: Pl.rc: Fix the ellipsis in menu.

2006-06-15  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c, dlls/winspool.drv/info.c:
	printing: Don't limit the printer name length to CCHDEVICENAME characters.

2006-06-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/.gitignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/install.c:
	msi: Add tests for MsiInstallProduct.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/surface.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Make some functions static.

	* configure, configure.ac:
	configure: Ues the standard AC_MSG_WARN to print warnings.

	* dlls/Makefile.in, dlls/make_dlls, programs/winetest/Makefile.in:
	dlls: d3d8, d3d9 and ddraw no longer depend on OpenGL or X.

	* dlls/d3dx8/Makefile.in:
	d3dx8: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d9/Makefile.in, dlls/d3d9/d3d9_private.h:
	d3d9: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h:
	d3d8: Remove dependencies on OpenGL headers and libraries.

2006-06-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support more than one back buffer.

2006-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/d3d_private.h,
	  dlls/ddraw/d3d_utils.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw.spec,
	  dlls/ddraw/ddraw_hal.c, dlls/ddraw/ddraw_main.c,
	  dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/ddraw_user.c, dlls/ddraw/ddraw_utils.c,
	  dlls/ddraw/device.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/direct3d_main.c, dlls/ddraw/direct3d_opengl.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/gl_api.h,
	  dlls/ddraw/gl_private.h, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/opengl_private.h,
	  dlls/ddraw/opengl_utils.c, dlls/ddraw/palette.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/parent.c, dlls/ddraw/surface.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/texture.c, dlls/ddraw/utils.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Rewrite most of ddraw using WineD3D.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Fixed a compiler warning on MacOSX.

	* libs/wine/config.c:
	libwine: Fixed a compiler warning on MacOSX.

2006-06-12  Peter Åstrand <astrand@cendio.se>

	* dlls/winmm/mci.c:
	winmm: Add support for "open new" commands.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add test for _Streams table (based on patch by Andrey Turkin).

2006-06-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Correct vertex fog for transformed vertices and correctly
	handle non-vertex, non-table fog.

2006-06-13  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	- Implemented: D3DSIO_SGN, LOOP, ENDLOOP, LOGP, LIT, DST, SINCOS
	- Process instruction-based modifiers (function existed, it just
	wasn't being called)
	- Add loop checking to register maps.
	- Renamed "sng" to "sgn" for D3DSIO_SGN - it's not handled anywhere
	except for GLSL, so won't matter.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: Add a partial implementation of AtlModuleRegisterWndClassInfoW
	based on documentation by Mike McCormack.

	* dlls/kernel/tests/sync.c:
	kernel: Add a test for mutexes.

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/version.c:
	kernel: Add some tests for VerifyVersionInfo.

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Always rewind the stream in StdGlobalInterfaceTable_GetInterfaceFromGlobal
	as CoUnmarshalInterface may have advanced the stream, even if it failed.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Add a tests for OleSetMenuDescriptor and the global interface table.

2006-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

	* dlls/gphoto2.ds/gphoto2_No.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Norwegian Bokmål resources.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/stack.c:
	winedbg: Avoid a crash when there's no backtrace to print.

	* dlls/kernel/heap.c:
	kernel32: Use unsigned types in GlobalMemoryStatusEx to prevent overflows.

2006-06-15  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Fix a win64 warning.

	* server/user.c:
	server: Cast user handles to unsigned long for win64 compatibility.

	* server/handle.c:
	server: Cast handles to unsigned long for win64 compatibility.

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/listview.c:
	comctl32: Add a short test for the listview.

	* dlls/comctl32/listview.c:
	comctl32: Arrange the listview after deleting all items so we will place icons
	at the top again.

	* dlls/comctl32/listview.c:
	comctl32: Use the listview's background colour when drawing with imagelist.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	msi: Don't define COND_SPACE twice.

2006-06-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mciwave/mciwave.c:
	mciwave: Fixed a bogus free.

2006-06-14  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/combo.c:
	user32: Fix character conversion in combo box.
	Replace toupper/tolower with CharUpper/CharLower functions.

2006-06-14  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add fake dll for advpack.dll.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlwin.h:
	atl: Add a stub for AtlModuleRegisterWndClassInfoW.

	* dlls/ntdll/virtual.c:
	ntdll: Change the test for no relocation information to use the
	IMAGE_FILE_RELOCS_STRIPPED flag instead of a zero sized relocations
	section.
	This fixes loading of resource-only DLLs that have a load-address of
	0x400000.

	* dlls/msxml3/domdoc.c:
	msxml: Text nodes with just whitespace should be stripped.

	* dlls/msxml3/text.c:
	msxml: Implement IXMLDOMElement for text elements by using
	create_element instead of create_basic_node.

	* dlls/msxml3/element.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Allow the element implementation to be aggregatable.

2006-06-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/.gitignore, dlls/uxtheme/tests/Makefile.in,
	  dlls/uxtheme/tests/system.c, programs/winetest/Makefile.in:
	uxtheme: Add framework and initial tests.

2006-06-14  Choe Hwanjin <choe.hwanjin@gmail.com>

	* include/winuser.h:
	winuser.h: Add some missing virtual key symbols.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for reading long strings.

	* dlls/msi/tests/db.c:
	msi: Add a test for creating a record with a long string.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseExport.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* include/mapi.h:
	mapi: Fix declaration of LPMAPISENDMAIL (spotted by Cho Hwanjin).

	* dlls/advpack/reg.c:
	advpack: Remove some dead code. (Coverity)

	* include/dbghelp.h:
	dbghelp: Fix the prototype of some callbacks.

	* dlls/crypt32/oid.c:
	crypt32: Fix a cast for Win64.

	* tools/wrc/parser.y:
	wrc: Remove some tokens declared twice.

2006-06-13  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: getaddrinfo returns any non-zero value on failure, not just negative
	values.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Cast termios.c_cflag to avoid a printf format warning.

	* programs/winedbg/gdbproxy.c:
	winedbg: sscanf arguments should be ints, not size_t.

	* tools/winebuild/relay.c, tools/winebuild/res32.c:
	winebuild: Fix a few printf format warnings by casting size_t.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/msvcrt/cppexcept.h:
	msvcrt: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Use unsigned int instead of size_t to avoid printf format warnings.

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Use unsigned int instead of size_t to avoid printf format warnings.

	* programs/winevdm/winevdm.c:
	winevdm: Don't use sizeof in traces to avoid printf format warnings.

	* programs/rpcss/np_server.c:
	rpcss: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/wineps.drv/glyphlist.c, dlls/wineps.drv/ppd.c:
	wineps.drv: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/user/dde_misc.c, dlls/user/message.c:
	user32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/ole32/oleproxy.c, dlls/ole32/stg_prop.c:
	ole32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/netapi32/netbios.c:
	netapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/mciseq/mcimidi.c:
	mciseq: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/kernel/format_msg.c, dlls/kernel/toolhelp.c:
	kernel32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dmstyle/commandtrack.c, dlls/dmstyle/style.c:
	dmstyle: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dinput/device.c:
	dinput: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d9/stateblock.c:
	d3d9: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d8/device.c:
	d3d8: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comdlg32/printdlg16.c:
	comdlg32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/mru.c:
	comctl32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/advapi32/service.c:
	advapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/version/tests/info.c:
	version/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ntdll/tests/env.c, dlls/ntdll/tests/info.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mshtml/tests/htmldoc.c, dlls/mshtml/tests/protocol.c:
	mshtml/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/locale.c,
	  dlls/kernel/tests/pipe.c:
	kernel32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c:
	gdi/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/store.c:
	crypt32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/version/tests/install.c:
	version/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/ntdll/tests/path.c:
	ntdll/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/mscms/tests/profile.c:
	mscms/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/kernel/tests/module.c, dlls/kernel/tests/path.c:
	kernel32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/crypt32/tests/base64.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/advapi32/tests/crypt.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

2006-06-08  Nick Burns <adger44@hotmail.com>

	* include/windef.h:
	include: Use force_align_arg_pointer on MacOS to fix the stack on entry to Wine.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* include/custcntl.h, include/dispdib.h, include/mapi.h,
	  include/objbase.h, include/storage.h, include/twain.h,
	  include/winnls32.h:
	include: Remove non-ASCII characters in headers for winelib compatibility.

	* dlls/wineps.drv/init.c, dlls/x11drv/init.c, include/wingdi.h:
	wingdi: Fix typo in definition of BLTALIGNMENT (spotted by Choe Hwanjin).

	* dlls/msi/table.c:
	msi: Fix loading of long strings.

	* dlls/winmm/joystick/joystick.c:
	winmm: Undefine SW_MAX defined by linux/input.h to avoid a conflict with
	winuser.h.

2006-06-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/acmstream.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/wavfile.c,
	  dlls/comdlg32/filedlg31.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/executebuffer.c, dlls/gdi/gdiobj.c, dlls/mciseq/mcimidi.c,
	  dlls/mpr/wnet.c, dlls/msvfw32/msvideo_main.c, dlls/ntdll/path.c,
	  dlls/user/exticon.c, dlls/user/listbox.c:
	Yet another round of redundant NULL checks before HeapFree.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.c,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/process.c, dlls/msvcrt/scanf.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/thread.c, dlls/msvcrt/time.c, dlls/msvcrt/undname.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Explicitly specify CDECL calling convention on exported functions.

	* dlls/oledlg/oledlg_main.c:
	oledlg: Declare varargs functions as WINAPIV instead of cdecl.

	* dlls/avifil32/api.c:
	avifil32: Declare varargs functions as WINAPIV instead of cdecl.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/userenv/userenv_main.c, include/Makefile.in, include/profinfo.h:
	userenv: Add profinfo.h.

2006-06-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix params for DP2ADD/TEXLDD.
	DP2ADD is valid on pshaders 2.0 and above, has 4 parameters.
	TEXLDD is valid on pshaders 2.x and above, has 5 parameters.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Mark instructions without a destination token.
	There are a total of 17 instructions without a destination token. Of
	those 9 have num_params != 0, which means that we will not process any
	of them correctly, because we assume the first token (if present) is a
	destination token.
	Those are basically all the flow control instructions, which we plan to
	support very soon. They have source tokens, and no destination. Add a
	flag that marks them up to the ins table. Use this flag in the trace
	pass, and generation pass.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Keep pshader and vshader constants in GLSL separate.
	GLSL uniforms have as scope the entire program.
	To prevent conflicts, name pshader and vshader constants differently.
	Based on a patch by Jason Green.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Improve Sampler support on 2.0 and 3.0 shaders.
	- track sampler declarations and store the sampler usage in reg_maps structure
	- store a fake sampler usage for 1.X shaders (defined as 2D sampler)
	- re-sync glsl TEX implementation with the ARB one (no idea why they diverged..)
	- use sampler type in new TEX implementation to support 2D, 3D, and Cube sampling
	- change drawprim to bind pixel shader samplers
	Additional improvements:
	- rename texture limit to texcoord to prevent confusion
	- add sampler limit, and use that for samplers - *not* the same as texcoord above

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cast more things.
	Anything with a swizzle has to be casted to vec4, or it won't work properly.
	There's multiple ways to do this, for the moment pick the easiest one.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add support for shader model 3.0 I/O registers.
	SM 3.0 can pack multiple "semantics" into 12 generic input/output registers.
	To support that, define temporaries called IN and OUT, and use those as
	the output registers. At the end of the vshader, unpack the OUT temps
	into the proper GL variables. At the beginning of the pshader, pack the
	GL variables back into 12 IN registers.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c:
	wined3d: Trivial cleanups
	- compiler warnings and errors should be FIXME
	- remove obsolete comment, and change variable type.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Register map cleanups.
	Various cleanups:
	- do not use DWORD as a bitmask, that places artificial limit of 32 on
	registers
	- track attributes that are used and declare only those
	- move declarations function call in pshader/vshader to allow us to
	insert pixel or vertex specific code between the declarations and
	the rest of the code
	- remove redundant 0 intializers
	- remove useless continue statement

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share trace pass
	Now that the declaration function is out of the way, the tracing pass,
	which is very long and 100% the same can be shared between pixel and
	vertex shaders.
	The new function is called shader_trace_init(), and is responsible for:
	- tracing the shader
	- initializing the function length
	- setting the shader version [needed very early]

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Rework dcl processing.
	The new function is called in pass 2 (getister counting/maps), and
	it's now in baseshader. It operates on all INPUT and OUTPUT registers,
	which, in addition to the old vertex shader input declarations covers
	Shader Model 3.0 vshader output and pshader input declarations. The
	result is stored into the reg_map structure.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: The namedArrays code path is dead (always FALSE).
	Delete the entire namedArrays code path and all its dependencies (one
	of which is quite long - storeOrder in drawprim is always FALSE, for
	example). Delete declaredArrays, and make its code path the default.

2006-06-12  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Eliminate complex test macro to make source navigation easier.

2006-06-13  Michael Stefaniuc <mstefani@redhat.de>

	* include/winnt.h:
	include: The visibility attribute is supported only by gcc >= 3.3.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Return S_OK from fnIMultiLanguage2_SetMimeDBSource.
	The source is largely irrelevant since we are not likely to be wanting
	to ship updates to the MIME database as registry updates, instead of
	just changing the code.

	* dlls/mlang/mlang.c:
	mlang: Add us-ascii encoding to the list of supported encodings.

	* dlls/advapi32/security.c:
	advapi32: Fix the parsing of string SIDs with multiple sub-authorities.

	* dlls/advapi32/security.c:
	advapi32: Replace some mixed tabs with spaces.

	* dlls/advapi32/security.c:
	advapi32: Support well-knowns SIDs in string SIDs.

	* dlls/advapi32/security.c:
	advapi32: Nul-terminate the domain string in LookupAccountNameW.

	* dlls/ole32/compobj.c:
	ole32: Print an error if a DLL's DllGetClassObject fails as this is
	usually a good indicator of a bug elsewhere in Wine.

2006-06-09  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Move a checkGLcall to it's gl call inside an "if".

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix stencil related render states.

	* dlls/wined3d/directx.c, include/d3d9caps.h, include/d3dcaps.h:
	wined3d: Enable two sided stencil in the caps.

	* dlls/wined3d/utils.c:
	wined3d: Also print the format like a fourcc if unknown in debug_d3dformat.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrtd/debug.c:
	msvcrtd: Explicitly specify CDECL calling convention on exported functions.

	* dlls/msvcrt20/msvcrt20.c:
	msvcrt20: Explicitly specify CDECL calling convention on exported functions.

	* dlls/crtdll/crtdll_main.c:
	crtdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ntdll/misc.c:
	ntdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/storage.c:
	ole32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/misc.c,
	  dlls/wldap32/modify.c, dlls/wldap32/modrdn.c, dlls/wldap32/option.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/rename.c,
	  dlls/wldap32/search.c, dlls/wldap32/value.c, include/winldap.h:
	wldap32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/glut32/glut.c, include/winbase.h:
	include: Added prototype for DllMain.

	* dlls/mshtml/main.c, dlls/wininet/wininet_main.c, include/objbase.h,
	  include/shlwapi.h:
	include: Make the Dll* entry points hidden.

	* dlls/ntdll/ntdll.spec:
	ntdll: Added spec entry for NtQueryMultipleValueKey.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix an uninitialized variable bug.
	Mark todo a test that depended on the bug to succeed.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Cleanup GetSrcAndOpFromValue().
	- Cleanup GetSrcAndOpFromValue().
	- Use naming more consistent with the rest of the file.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more test cases for INSERT.

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

	* dlls/msi/tests/package.c:
	msi: Add tests for creating packages and formatting records.

	* dlls/msi/tests/package.c:
	msi: Delete any databases we create at the end of each test.

	* dlls/msi/tests/msi.c:
	msi: Fix compilation on msvc6.

	* dlls/msi/tests/db.c:
	msi: Remove an inconsistent test.

	* dlls/msi/tests/format.c:
	msi: Fix some test cases to pass against win2k.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* include/xmldom.idl:
	include: Add IXMLHttpRequest interface and XMLHttpRequest coclass to xmldoc.idl.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleGetClassObject.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix domelem_get_tagName to return a string with the namespace prefixed,
	if it is present.

	* dlls/msxml3/nodelist.c:
	msxml3: Initialise output interface pointers to NULL in
	xmlnodelist_QueryInterface and xmlnodelist_nextNode.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/type42.c:
	wineps.drv: Make some variables static.

	* dlls/crypt32/oid.c:
	crypt32: Make some variables static and/or const.

	* dlls/shell32/brsfolder.c, dlls/shell32/shellole.c,
	  dlls/shell32/shlview.c:
	shell32: Make some variables static and/or const.

	* dlls/kernel/registry16.c:
	kernel32: Make some variables static.

	* dlls/advapi32/crypt.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Make some variables static and/or const.

	* dlls/winemp3.acm/common.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/tabinit.c:
	winemp3.acm: Make some variables static and/or const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Make some variables static and/or const.

	* dlls/crtdll/crtdll.spec:
	crtdll: Fixed copy/paste error in definition of _baseminor_dll and
	_baseversion_dll.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c:
	x11drv: Get rid of the no longer used desktop_tid variable.

2006-06-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c:
	user32: Remove redundant SetLastError call from MENU_SetMenu.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* include/Makefile.in, include/ddk/compstui.h:
	include/ddk: Add minimal compstui.h.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winedbg/tgt_minidump.c:
	winedbg: Write-strings warnings fix.

2006-06-09  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c:
	setupapi: Documentation update.

2006-06-11  Mike McCormack <mike@codeweavers.com>

	* dlls/user/message.c:
	user32: Win64 lparam and wparam are longs.

	* dlls/user/lstr.c:
	user32: Fix a pointer size warning in Win64.

	* dlls/kernel/locale.c:
	kernel32: Fix a cast for Win64.

	* dlls/msi/tests/db.c:
	msi: Add some test cases for "SELECT ... WHERE condition".

	* dlls/msi/handle.c:
	msi: Freeing the zero handle always succeeds.

	* dlls/msi/msiquery.c:
	msi: Always initialize MsiViewFetch's returned record to zero.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Make some test functions static.

	* dlls/d3d8/tests/device.c:
	d3d8: Make some test functions static.

2006-06-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/except.c:
	msvcrt: Print exception code in hex.

2006-06-10  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Map D3DSIO_DEF to it's GLSL generating function for vertex shaders.

2006-06-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Add an exception handler for CStdStubBuffer_Invoke.
	This is needed because IRpcStubBuffer::Invoke should not allow RPC
	exceptions to be passed to the caller.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_mutiply in conformant array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in a maximum variance value to ReadVariance to allow us
	to validate the conformance values being read from the wire.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check that strings are null-terminated on unmarshaling of
	conformant-varying structs.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_multiply when multiplying anything by pStubMsg->ActualCount
	or pStubMsg->MaxCount.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception during unmarshaling if a conformant string isn't
	null-terminated.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Introduce a new function, safe_multiply, which will raise an
	exception if a multiply overflows a 4-byte integer.
	This will protect the unmarshaling code against attacks specifying a
	large variance.
	Use this new function in the conformant string functions to harden them
	against attack.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c, include/guiddef.h:
	uuid: Mark all GUID variables as hidden.

	* dlls/dnsapi/main.c:
	dnsapi: DnsExtractRecordsFromMessage_A is not exported.

	* dlls/advapi32/advapi32.spec:
	advapi32: Added spec entry for GetEffectiveRightsFromAclW.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Make all the local shader functions static.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Make the virtual table functions static where possible.

2006-06-09  Pavel Roskin <proski@gnu.org>

	* programs/winecfg/drivedetect.c:
	winecfg: Recognize all CD and floppy devices listed in Linux devices.txt.

	* programs/winecfg/drivedetect.c, programs/winecfg/winecfg.h:
	winecfg: Allow and prefer using A: and B: for floppies.
	Pass drive type to allocate_letter().  Start search from 'A' for
	floppies.
	Fix missing parentheses in the DRIVE_MASK_BIT definition.  It's a bug
	that is triggered by non-sequential drive allocation.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Change fog output variable name for GLSL shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix regression from register maps switch for ARB shaders.
	I missed a register mask in the move to share the shader_hw_def()
	function between pixel and vertex shaders for ARB shaders.  Fixed
	that, and made the GLSL version use the same mask for consistency.

2006-06-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable CND/CMP for SHADER_ARB.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Print out sampler state names.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Downgrade Get*Shader FIXME to TRACE.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for GetPrintProcessorDirectory.

2006-06-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Test RegSetValueEx[AW] for setting some sequential strings as one.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/order.c,
	  dlls/msi/select.c, dlls/msi/table.c, dlls/msi/where.c:
	msi: Make all the ops structures static and const.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/internal.c:
	imagehlp: Remove the unused internal.c file.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make the virtual table functions static where possible.

	* dlls/ole32/memlockbytes.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Make the virtual table functions static where possible.

	* dlls/itss/itss.c:
	itss: Make the virtual table functions static where possible.

	* dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_private.h,
	  dlls/dxdiagn/provider.c:
	dxdiagn: Make the virtual table functions static where possible.

	* dlls/dswave/dswave.c, dlls/dswave/dswave_private.h:
	dswave: Make the virtual table functions static where possible.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c:
	dsound: Make the virtual table functions static where possible.

	* dlls/dpnet/address.c, dlls/dpnet/client.c, dlls/dpnet/dpnet_private.h:
	dpnet: Make the virtual table functions static where possible.

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/collection.c,
	  dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Make the virtual table functions static where possible.

	* dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/synth.c,
	  dlls/dmsynth/synthsink.c:
	dmsynth: Make the virtual table functions static where possible.

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_private.h,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c:
	dmstyle: Make the virtual table functions static where possible.

	* dlls/dmscript/dmscript_private.h, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c:
	dmscript: Make the virtual table functions static where possible.

	* dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/dmloader_private.h, dlls/dmloader/loader.c,
	  dlls/dmloader/loaderstream.c:
	dmloader: Make the virtual table functions static where possible.

	* dlls/dmcompos/chordmap.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/composer.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Make the virtual table functions static where possible.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Make the virtual table functions static where possible.

	* dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Make the virtual table functions static where possible.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Make the virtual table functions static where possible.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Write-strings warnings fix.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add GetPrintProcessorDirectoryA.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: We always pass in an IRpcChannelBuffer to IRpcStubBuffer::Invoke now,
	so remove the case for it being NULL.

	* dlls/ole32/rpc.c:
	ole32: If IRpcStubBuffer_Invoke fails, we should raise an exception to
	tell the RPC runtime that the call failed.

	* dlls/ole32/regsvr.c:
	ole32: Register ISequentialStream for marshaling.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoQueryClientBlanket, CoImpersonateClient and
	CoRevertToSelf on top of CoGetCallContext, which is a stub.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement FTMarshalImpl_GetMarshalSizeMax.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_unixfs.c:
	shell32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/riched20/richole.c:
	riched32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/ole32/antimoniker.c, dlls/ole32/classmoniker.c,
	  dlls/ole32/compobj_private.h, dlls/ole32/compositemoniker.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/ftmarshal.c,
	  dlls/ole32/itemmoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c, dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/regsvr.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h, dlls/oleaut32/usrmarshal.c:
	oleaut32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c:
	wined3d: GLSL shader cleanup patch.
	- Based on comments from H. Verbeet
	- Changed the distinction from .rgba & .xyzw masks to only use .xyzw
	in GLSL shaders.  They are interchangeable, and only served to make
	the trace look more intuitive, but they don't always apply as-is, so
	we'll just leave everything to .xyzw.
	- Got rid of the "UseProgramObjectARB(0)" call in drawprim.  If there
	is no shader set on the next primitive, then that primitive will
	call UseProgramObjectARB(0) when it begins to draw.

2006-06-08  Pierre d'Herbemont <stegefin@free.fr>

	* dlls/dbghelp/minidump.c:
	dbghelp: Implement fetch_thread_info on powerpc.

	* dlls/ntdll/thread.c:
	ntdll: Fix NtQueryInformationThread on non x86.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear an object pointer during unmarshaling, otherwise we
	could end up using the previously allocated memory even if it isn't
	the right size, causing heap corruption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Don't raise an exception if there is no freer function - not all types
	have a freer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more base types for complex types.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Now that there's a process-wide pool of connections we don't
	need to copy the FromConn field when copying bindings.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the status received from RPCRT4_Send in I_RpcSend instead of
	always returning RPC_S_OK.

2006-06-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/texture.c:
	d3d9: Add a test for default texture stage state values.

2006-06-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptTextOut updated to reflect that it must have a hdc passed to it.

2006-06-09  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc:
	msvidc: Change short description to MS-CRAM.

2006-06-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/win.c, dlls/user/win.c:
	user: Neither WS_CAPTION nor WS_EX_APPWINDOW has anything to do how
	passed in to CreateWindow menu should be handled.

2006-06-09  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: Fix safearray data destruction.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	opengl32: Store function pointers in a separate array to avoid a bunch of
	relocations.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/wgl.c:
	opengl32: Only store the glX name if different from the wgl name.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h:
	opengl32: Make all the function pointers and thunks static.

2006-06-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Update the progress control while installing.

	* dlls/msi/action.c:
	msi: Remove some unnecessary NULL checks.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow drawPrim to create and use the GLSL program.

	* dlls/wined3d/device.c:
	wined3d: Add GLSL helper functions to Device.
	- Add functions to attach & detach shader objects, create and delete programs,
	and maintain the list of programs.
	- Add a list of GLSL shader programs to the device which is initialized on
	Init3D(), and deleted on Release().

	* dlls/wined3d/vertexshader.c:
	wined3d: Map vertex shader instructions to GLSL generating functions.

	* dlls/wined3d/pixelshader.c:
	wined3d: Map pixel shader instructions to GLSL generating functions.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Prototype the GLSL functions for use with pixel and vertex shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Added more declarations to GLSL.
	- Declare more variable names for GLSL programs.
	- Some of these won't need to be declared eventually, but it doesn't hurt to
	do it for now.
	- Correct output name for pixel shaders (gl_FragColor instead of glFragColor).

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Unified float constant register mapping between ARB pixel and vertex
	shaders.
	- Got rid of the separate constant maps.
	- Side effect of this is that the map is a bit larger for pixel shaders than
	it needs to be

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add the bulk of the GLSL string generation functions.
	- Add a new file glsl_shader.c which contains almost every GLSL specific
	function we'll need
	- Move print_glsl_info() into glsl_shader.c
	- Move the shader_reg_maps struct info into the private header, and make it
	part of SHADER_OPCODE_ARG.
	- Create a new shared ps/vs register map for float constants (future patch
	will make ARB programs use this, too)

2006-06-08  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading out of DrawPrimDrawStrided() and enable
	loading float constants for GLSL.
	- DrawPrim is just too big of a function.  This separates the passing
	of constants to the shader into new functions.
	- Fixes an off-by-one error when loading vertex declaration constants
	(should be <, not <=)
	- Adds a function for GLSL loading of constants (aka Uniforms)
	- Adds a GLSL program variable to the stateblock and sets it to 0 (a
	future patch will actually create this program)

2006-06-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler.
	Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler in order to
	allow DefDlgProc to post us WM_COMMAND/IDCANCEL and unblock modal
	message loop.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use standard debug functions.

2006-06-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg16.c:
	comdlg32: Rename finddlg.c to finddlg16.c.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/hlink/hlink.spec:
	hlink: Add spec file entry for HlinkQueryCreateFromData.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make the protseq_ops structure constant.

	* dlls/kernel/heap.c:
	kernel: Added support for GlobalMemoryStatus on MacOS.

	* dlls/mshtml/navigate.c:
	mshtml: Changed C syntax that winapi_check doesn't like.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.15.

----------------------------------------------------------------
2006-06-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptStringAnalyse and tests for ScriptString functions.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptGetCMap to conform to Windows.

	* dlls/usp10/tests/usp10.c:
	usp10: Update tests in test_ScriptItemIzeShapePlace to match Windows results.

2006-06-07  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stubs for ScriptCPtoX, ScriptXtoCP and ScriptBreak and some basic
	tests.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/epm_towers.h:
	rpcrt4: Avoid potential redefinition of uuid_t.

	* configure, configure.ac:
	configure: Make the font warning more explicit about what package is missing.

2006-06-08  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/lm.h, include/lmmsg.h:
	include: Add lmmsg.h.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Test to make sure we can create a non-nested directory.

	* dlls/shell32/shlfileop.c:
	shell32: SHCreateDirectoryEx can create a non-nested directory.

2006-06-07  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/tests/.gitignore, dlls/user/tests/Makefile.in,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc:
	user/tests: Update LoadImage test.
	Include a bitmap in the resources and don't depend on Windows'
	OBM_CHECK bitmap anymore.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Uncomment a line to implement conversion from VT_DISPATCH to VT_BSTR.

	* dlls/oleaut32/vartype.c:
	oleaut32: Handle BSTRs in VARIANT_CopyData.

2006-06-08  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Fix a possible memory leak.

	* server/queue.c, server/sock.c, server/user.h:
	server: Make wparam and lparam values unsigned long for win64 compatability.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* server/window.c:
	server: Don't attach the thread input when changing parents if the new
	parent is the desktop (i.e. it is becoming a top-level window).

	* server/named_pipe.c:
	server: Don't set the client's server field before the server has
	changed into a connected state, otherwise we could assert in
	pipe_client_destroy.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* server/event.c, server/process.c, server/request.c, server/thread.c,
	  server/trace.c:
	server: Don't report a fatal protocol error for things that we can recover from.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/wininet/ftp.c:
	wininet: ftp: Fix crash if input buffer is larger than MAX_PATH.

	* dlls/wininet/ftp.c:
	wininet: ftp: 125 is an acceptable response code for the STORE command.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/Makefile.in, libs/unicode/c_20127.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c:
	libunicode: Add a code page table for the US-ASCII encoding.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement a process-wide connection pool for client connections,
	rather than relying on the restriction of one connection per
	binding. This also avoids the problem of two threads using the same
	connection at the same time.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the retrieval of This for interpreted proxies.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Implement full-pointer support for interpreted stubs.
	Move the calls to the full pointer init functions before
	NdrClient/ServerInitializeNew, like in MIDL-generated code.

2006-06-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/volume.c:
	d3d9: Add a test for GetContainer (Volumes & Surfaces).

	* dlls/d3d9/vshaderdeclaration.c:
	d3d9: Remove unused vshaderdeclaration.c.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

2006-06-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/undname.c:
	msvcrt: Write-strings warning fix.

2006-06-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

2006-06-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/encode.c:
	crypt32: Write-strings warning fix.

	* dlls/dbghelp/source.c:
	dbghelp: Write-strings warning fix.

2006-06-07  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: TEXREG2GB is valid on pshaders 1.1.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c:
	wined3d: Fix NULL dereference in generator function.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix missing light recording.
	Write a light with the default parameters in disabled state if
	capturing a missing light.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Test missing light recording.
	When a light does not exist, and the app attempts to capture it in the
	stateblock, a disabled light with the default light parameters is
	written instead.

	* dlls/d3d9/tests/device.c:
	d3d9: Mipmaps level test.

2006-06-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/msi/msi.rc, dlls/msi/msi_Ru.rc:
	msi: Add Russian resource file.

2006-06-07  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/netapi32.c, dlls/netapi32/netapi32.spec,
	  include/lmserver.h:
	netapi32: Add stub for NetServerEnumEx.

2006-06-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: open_console's from field should be a handle.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Use unsigned long for request types that are 64bit in win64.

2006-06-07  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Print process/thread id instead of pointer in protocol errors.

2006-06-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advpack/install.c, dlls/setupapi/install.c, dlls/shlwapi/assoc.c,
	  dlls/x11drv/dib.c, programs/regedit/listview.c:
	Remove more redundant NULL checks before HeapFree (found by Smatch).

2006-06-05  EA Durbin <ead1234@hotmail.com>

	* dlls/msi/tests/db.c:
	msi/tests: Fixed a typo.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, tools/wine.inf:
	hlink: Implement DllRegisterServer.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Add a basic implementation (based on work by Aric Stewart).

	* configure, configure.ac, dlls/Makefile.in, dlls/hlink/.gitignore,
	  dlls/hlink/Makefile.in, dlls/hlink/hlink.spec,
	  dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation (based on Aric Stewart's code).

	* include/hlink.idl:
	hlink: Declare prototypes for some functions.

2006-06-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/main.c:
	winecfg: Avoid unnecessary casts.

	* dlls/comctl32/propsheet.c:
	comctl32: Remove WM_SYSCOMMAND handler from PROPSHEET_DialogProc.

2006-06-06  Andrew Ziem <ahziem1@mailbolt.com>

	* include/winuser.h:
	include: Add SETWALLPAPER_DEFAULT to winuser.h.

2006-06-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Return the result of QueryInterface in GetContainer.

	* dlls/wined3d/utils.c:
	wined3d: Remove a redundant break.

	* dlls/wined3d/device.c:
	wined3d: Don't hardcode type sizes for shader constants.

	* dlls/d3d9/tests/shader.c:
	d3d9: Add a test for setting / getting vertex shader constants.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register some more documented classes that native also registers.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* include/exdisp.idl:
	include: Add two more coclasses to exdisp.idl.

2006-06-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stub implementations for the remaining documented functions.

2006-06-06  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* dlls/x11drv/xvidmode.c:
	x11drv: Declared two functions as static to avoid compiler warnings.

2006-06-06  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/debug.l:
	Revert "winedbg: Remove useless NOCMD state."
	This reverts 92deacbe425bfd986a2cc3bf1e776aca02cf08c8 commit.

2006-06-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Added default values for .htm and .html file extension.

2006-06-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: safearray: Convert dimension index at the API boundary.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Remove constant type field in stateblock.
	It is wrong to maintain a mapping from a constant index to a type
	field, because different constant types do not share an index -
	boolean constant 0 is supposed to co-exist with floating point
	constant 0, not replace it. Drawprim and other code using the type
	array to decide whether to look up a constant in bools, floats, or
	ints is wrong - you can't make that decision based on the index.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename vertex shader constants.
	From const%lu to C%lu for consistency (to match pshaders).

	* dlls/wined3d/pixelshader.c:
	wined3d: Add limits for ps_2_x.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Trace improvements.

	* dlls/wined3d/pixelshader.c:
	wined3d: pshader defi has 5 parameters.

2006-06-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Don't treat a NULL rect as an empty rect in ExtTextOutW.

2006-06-05  James Hawkins <truiken@gmail.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Only BYREF DispCallFunc args whose input args are not BYREF should
	be changed.

	* dlls/oleaut32/typelib.c:
	oleaut32: Copy BYREF args directly if they have the same variant type.

2006-06-05  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/tests/bitmap.c:
	gdi: New tests for GetDIBits.
	New tests that check if GetDIBits works with a bitmap that is selected
	in a device context (works in Windows, should fail according to the
	API documentation)

2006-06-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/wcs.c:
	msvcrt: Write-strings warnings fix.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Make some pointer casts win64 compliant.

	* programs/wineconsole/dialog.c:
	wineconsole: Use correct prototypes for dialog procs.

	* programs/wcmd/wcmdmain.c:
	wcmd: Fix a Win64 warning.

	* programs/taskmgr/affinity.c, programs/taskmgr/taskmgr.c:
	taskmgr: Use correct types for Win64.

	* programs/hh/main.c:
	hh: Cast GetProcAddress's return to supress a Win64 warning.

	* programs/winetest/gui.c:
	winetest: Fix dialog prototypes.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/userenv/.gitignore,
	  dlls/userenv/Makefile.in, dlls/userenv/userenv.spec,
	  dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation of userenv.dll.

2006-06-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/codepage.c:
	kernel/tests: Some tests for WideCharToMultiByte.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/crypt.c:
	advapi32: Fix comment to match the function (thanks to Dan Kegel).

2006-06-05  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c:
	winedbg: Get rid of unused mode command.

2006-06-05  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/user/driver.c, dlls/user/user_private.h, dlls/user/win.c,
	  dlls/x11drv/clipboard.c, dlls/x11drv/event.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c:
	x11drv: Improve handling of the case where the clipboard is opened
	with a window from another thread or process.

	* include/ddrawi.h:
	include: Add DDHAL_UPDATEOVERLAYDATA structure.

2006-06-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add some integer condition tests.

2006-06-05  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for FindFirstFile.

2006-06-05  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* programs/wordpad/wordpad.c:
	wordpad: Declare three functions as static to avoid compiler warnings.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/hlguids.h:
	hlink: Add hlguids.h (based on a patch by Aric Stewart).

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Fix the case where we have libresolv headers but no libraries.

2006-06-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	wined3d: Render target locking fixes.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction031.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction030.

2006-06-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/cond.y:
	msi: Fix some copy/paste bugs in the implementation of condition operators.

2006-06-04  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Remove useless NOCMD state.

	* dlls/user/winpos.c:
	user: Use SetPropW rather than SetPropA for internal property.

2006-06-05  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/where.c:
	msi: An empty string is equivalent to nil, so handle this in the optimised
	WHERE_execute path.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement varying array NDR functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't call NdrBaseTypeMemorySize from within NdrBaseTypeUnmarshall.

2006-06-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	winedbg: Correct typedefs in type manipulations.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/program.c:
	progman: Win64 fixes.

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use correct types for Win64.

	* programs/winemine/dialog.c, programs/winemine/main.h:
	winemine: Fix dialog proc prototypes for Win64.

	* programs/winemine/dialog.c, programs/winemine/dialog.h,
	  programs/winemine/main.c:
	winemine: Remove dialog.h as it's redundant.

	* include/windef.h:
	include: Fix FARPROC, NEARPROC and PROC definitions for amd64.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Fix a crash on initial empty input.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_NAME_VALUE encoding/decoding.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set focus in ui_activate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Use mime type reported by moniker if possible.

	* dlls/mshtml/navigate.c:
	mshtml: Return S_OK in OnStartBinding and OnStopBinding.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Added beginning OnDataAvailable implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Added begining binding code in IPersistMoniker::Load.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Set binding channel, listener and context in AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Store BSCallback in NSContainer and use it instead of load_call.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Add create_nscallback function to allow using BSCallback out of
	navigate.c.

	* dlls/mshtml/nsio.c:
	mshtml: Move some code from before_async_open to AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Get rid of (currently disabled anyway) nsIWebBrowserStream.
	We have to handle it in another way.

2006-06-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Don't fail on SECURITY_NETWORK_DREP, ntlm_auth handles this just fine.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use task queue to handle OnDataAvailable call.

	* dlls/urlmon/binding.c:
	urlmon: Added OnResponse implementation.

2006-06-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/sane.ds/sane_main.c:
	sane.ds: Replace FIXME() by TRACE() on sane_exit.

2006-06-02  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Don't try to resolve the name when constructing a protocol tower.
	Instead just fill it in with all zeros.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Change ComputeConformance and ComputeVariance from macros to
	inline functions. Clear pStubMsg->Offset in ComputeVariance since it
	isn't set by ComputeConformanceOrVariance and so could be left filled
	with garbage.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The lifetime of the binding handle stored in the context
	handle is independent of the binding handle used in the call that
	unmarshaled it, so we should use RpcBindingCopy to make a copy of it
	and then call RpcBindingFree later to free it.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix an incorrect format string pointer being passed in to
	ComputeVariance in NdrConformantVaryingStructBufferSize.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Skip over the right-hand-side data for the protocol floor so
	that we can parse the towers received from native rpcrt4.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align the buffer correctly when marshaling and unmarshaling context
	handles.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Freeing a NULL context handle is allowed.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: NdrClientContextMarshall/Unmarshall should both increment the buffer
	pointer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the unmarshaling of pointers in conformant varying arrays,
	by passing the correct type format string to ReadConformance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: CContext can be NULL in NDRCContextMarshall, in which case we should
	marshall all-zeros.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the pointer count used when handling embedded pointers in varying
	arrays.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Print some more informative error messages when getaddrinfo fails.

2006-06-02  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Simple tests for InternetGetCookie's parameters.

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix up and test InternetSetCookie parameter checking.

	* dlls/wininet/internet.c:
	wininet: Remove some dead code (Coverity).

2006-06-02  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Enable some tests and extend them to succeed on XP and 2003 SP1.

	* dlls/rsaenh/rsaenh.c:
	rasenh: Fix a copy&paste bug at passing only one string to RegSetValueExW()
	at a time.

2006-06-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileA and SHELL_DeleteDirectoryA.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shlfileop.c:
	shell32: Avoid Unicode->ANSI conversion when deleting a file.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Add name value tests.
	Add tests for name values, and move tests for different string
	encodings to there.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Remove exception handling from internal decoding functions.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add a couple CRL encoding tests, one that shows a problem.

2006-06-02  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/user/listbox.c:
	user32: Fix selection handling for listboxes with LBS_EXTENDEDSEL style.

2006-05-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/defwnd.c, dlls/user/tests/msg.c, dlls/x11drv/winpos.c,
	  include/winpos.h:
	user32: Send WM_SIZE when window changes state between restored/min/maximized.

2006-06-01  Wino Rojo <winorojo@hotmail.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix for a BadMatch error.

2006-06-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Remove the check for unimplemented functions.

2006-05-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool.drv: Add GetPrintProcessorDirectoryW.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: All of the parameters to TowerExplode are optional.

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpcrt4.spec,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Implement TowerConstruct and TowerExplode.
	Add some tests for these undocumented functions.

	* dlls/rpcrt4/epm_towers.h, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add functions for generating and parsing the upper floors in
	endpoint-mapper towers for different transports.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcAllocate and I_RpcFree.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Don't send the unused part of the allocated buffer.

	* dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: NdrClientInitializeNew shouldn't clear all of the stub message, only
	selected fields.

2006-06-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/header.c:
	comctl32/header: Check Null before accessing struct member.

2006-06-01  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add EncryptMessage and DecryptMessage stubs.

2006-06-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user32: Popup menu position fixes.
	- Open large popup menus on the other side only if there's enough space
	- Open popup menus such that the y position of the first item in the
	popup menu is the same as the y position of the focused menu item.

2006-06-01  Emmanuel Maillard <mahanuu@opendarwin.org>

	* programs/winecfg/audio.c:
	winecfg: Add CoreAudio to audio drivers list.

2006-06-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Replace PeekMessage loops in the PeekMessage test by explicit calls.
	Replace all 'while (PeekMessage()) DispatchMessage();' loops in the
	PeekMessage test by explicit calls to PeekMessage(), check queue
	status and processed messages after each call to see what is going on
	behind the scene.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/base64.c:
	crypt32: Make base64 tests loadable on win9x.

2006-06-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shellpath.c:
	shell32: Add Fonts to user's shell folders list.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/widl.man.in:
	widl: Fix a typo in the man page.

	* tools/widl/typegen.c:
	widl: Properly size the return value procformat.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h, tools/widl/widltypes.h:
	widl: Only write one procformat string and one typeformat string per file.

2006-06-01  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: FreeType's idea of metrics has changed for bitmap fonts.

2006-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h:
	winecoreaudio: Fixed the FSF address.

2006-05-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Don't CFAllocate buffer for port message.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Use unique name for message port.
	Use a unique port name for the message port to the message thread.
	Port names are system-global, so using a non-unique constant name
	prevents the CoreAudio driver from being used in multiple processes
	simultaneously.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: 8-bit Linear PCM data is unsigned.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Keep processing wavehdrs to satisfy AudioUnit data request.
	When fulfilling the output AudioUnit's request for audio data, don't
	stop when the current wavehdr is exhausted; advance to the next.  This
	addresses the buzzy quality of the sound.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Improve state tracking.
	Improved tracking of device state (stopped, playing, or paused).
	Also, tied starting and stopping the AudioUnit more directly to the
	state.	No need to change the state when preparing or unpreparing
	wavehdrs.  Pausing overrides both playing and stopped states; if
	stopped, pausing prevents output from starting when the program
	writes.  When, restarting from the paused state, the device starts
	playing if there are queued wavehdrs.  Otherwise, it goes to stopped
	state.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Miscellaneous cleanup.
	Miscellaneous cleanup: release resources when done with them; protect
	against null pointers; reduce redundant code; avoid potential integer
	underflow; clarify a do-nothing loop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race to open.
	Fixes a race condition (noted in a comment for wodOpen) when multiple
	threads try to open the same wave-out device simultaneously.
	Addressed by creating the device mutexes when the driver is
	initialized, instead of as each device is opened.  Then use the mutex
	to protect the open operation against races.  At the same time, made
	the mutexes recursive to avoid self-deadlocks the driver was
	encountering when reentered from the callback.

2006-06-01  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NDRCContext(Un)marshall and NDRCContextBinding.

2006-06-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Adjust the video mem when dropping the pow2 size in GDISurface.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Remove no longer needed binding value in task_t.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue for cross thread calls in on_progress.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue in Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added task queue architecture and use it for OnProgress calls from
	Continue call.

	* dlls/urlmon/binding.c:
	urlmon: Make suse that every OnProgress call is in an apartment thread.

2006-05-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Write-strings warning fix.

2006-05-31  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Update the rects in HEADER_Refresh if needed.

2006-05-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/query.c:
	dnsapi: Fall back to a netbios query when a dns query fails.

2006-05-27  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wsock32/service.c, dlls/wsock32/wsock32.spec, include/nspapi.h:
	wsock32: Added GetService{A,W} stubs.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use FindMimeFromData to determine MIME type.

2006-05-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add ENUM32 support to ComplexStructMemorySize.

2006-05-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Make sure to read the memid and the name offset from the
	correct offsets, after the function data, so add cFuncs to the offsets
	in MSFT_DoVars.
	Resolve referenced types for variables.
	Fixes initialisation of the dbgrid32 OCX.

	* dlls/oleaut32/typelib.c:
	oleaut32: Resolve referenced types for return values as well as parameters in
	MSFT typelibs.

	* tools/widl/parser.y:
	widl: Allow some more "reserved words" to be used as identifiers.

	* include/rpcdcep.h:
	include: Add some defines used by MIDL-generated code.

2006-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Fixed a bunch of compiler warnings.

	* configure, configure.ac, dlls/dnsapi/ns_parse.c, include/config.h.in:
	dnsapi: Added check for _msg_ptr vs. _ptr member in ns_msg struct.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/ns_parse.c, dlls/dnsapi/query.c:
	dnsapi: Remove a bunch of unused functions that cause naming conflicts.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/query.c:
	dnsapi: Portability fixes.

2006-05-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/.gitignore,
	  dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  include/wincrypt.h:
	crypt32: Implement CryptBinaryToStringA and CryptStringToBinaryA.
	Implement CryptBinaryToStringA and CryptStringToBinaryA based on Kai
	Blin's base64 encoder/decoder.

2006-05-31  Mike McCormack <mike@codeweavers.com>

	* programs/wineconsole/dialog.c:
	wineconsole: Store the font as a DWORD_PTR.

	* programs/wineconsole/user.c:
	wineconsole: Use a Get/SetWindowLongPtr to store a pointer.

	* programs/wordpad/wordpad.c:
	wordpad: Use GetWindowLongPtr to get the HINSTANCE.

2006-05-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added text/html filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use filters mechanism in FindMimeFromData.

2006-05-31  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Use STGM_WRITE when opening child storage to delete its children.

2006-05-30  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h:
	winmm: Always check for open and close enents in wave test.
	Always check for open and close events.
	Send WM_APP message to thread to terminate it rather than TerminateThread.
	Fix CreateThread/waveOutOpen race by waiting for background thread to
	run before waveOutOpen is called.
	Add more non-hardware supported formats.  There is a bug in wave
	mapper GetPosition when multiple headers are used and this helps
	trigger it.

2006-05-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dnsapi/query.c:
	dnsapi: Fixed missing lock release on error path.

2006-05-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Backport of the d3d9 swapchain test to d3d8.

	* dlls/d3d8/device.c:
	d3d8: Back buffer count fix.

2006-05-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/cert.c:
	crypt32: Write-strings warning fix.

	* dlls/winmm/joystick/Makefile.in:
	winmm/joystick: joystick.c requires Unicode library.

2006-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/propsheet.c:
	comctl32: propsheet: Fixed buffer sizes for LoadStringW.

2006-05-28  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/winmm/winecoreaudio/.gitignore,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec, include/config.h.in:
	winecoreaudio: Initial Audio Driver for Mac OS X.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Implement DnsQuery_{A,UTF8,W}.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/ns_name.c,
	  dlls/dnsapi/ns_parse.c:
	dnsapi: Add DNS message parsing routines from BIND.

2006-05-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Ignore out-of-range iOrder in SetItemT.

	* dlls/kernel/format_msg.c:
	kernel32: Prevent truncating characters to 8 bits in FormatMessageW.

2006-05-28  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msi/tests/format.c:
	msi: Increase verbosity in some failing tests.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't crash when querying NULL values.

	* dlls/wininet/tests/http.c:
	wininet: Add a test for basic authentication.

	* dlls/user/class.c, dlls/user/user32.spec, dlls/user/win.c:
	user32: Stub implementations for Win64's Get/Set LongPtr functions.

2006-05-29  Troy Rollo <wine@troy.rollo.name>

	* include/wine/wined3d_gl.h:
	wined3d: Add missing GL_VERTEX_SHADER_ARB definition.

2006-05-30  Troy Rollo <wine@troy.rollo.name>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Prevent SEGV in FILEOPEN95_OnOpen when a malformed filter is passed.
	FILEOPEN95_OnOpen assumes that each item in the filter list returns a
	non-NULL pointer for CB_GETITEMDATA.

2006-05-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/device.c:
	wined3d: Properly destroy texture object if we failed to create its surfaces.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Add reference to the parent device for surfaces.
	Allow some objects to have no parent device.
	Tighten refcount tests and test refound decrement on Release.

2006-05-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make UserMarshalFlags static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We should never pass an fMustAlloc value of TRUE into the
	unmarshaler routines of embedded complexes in complex struct and array
	unmarshaling.
	Fixes a regression caused by commit
	19fad8e71032707cb036239f69f085e1b0249d01, reported by Ulrich
	Dobramysl.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make sure to set a unique pointer with an id of 0 to NULL when
	unmarshaling.

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: If the number of pointers is 0 for NdrFullPointerXlatInit then
	set the number of pointers to a large default, so that NumberOfBuckets
	doesn't end up less than zero.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle marshaling/unmarshaling full pointers.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: For full pointers the state consists of flags, so or new flags into
	the field instead of assigning.
	The return value of all full pointer functions that return an int
	depends on the passed in query type being a flag in the state.

2006-05-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32/tests: Write-strings warnings fix.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/msi.c:
	msi: Implement MsiLocateComponent{A,W}.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Improve 64bit compatibility.

2006-05-29  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/add.c, dlls/wldap32/modify.c:
	wldap32: Fix unused variable warnings.

	* dlls/gdi/freetype.c:
	gdi32: Fix an unused variable warning.

2006-05-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Do not disable GL_BLEND when alpha blending is active.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Release the memory in IWineGDISurface::PrivateSetup before calling
	GetDC.

2006-05-28  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Add multiple header wave tests.
	The current wave tests only use a single header for playback.  Tests
	have been added to use multiple headers and to reuse them.  This is
	how streaming applications and direct sound use the wave api.

2006-05-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/header.c, dlls/comctl32/tests/tab.c:
	comctl32/tests: Write-strings warning fix.

2006-05-27  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories are renamed / removed / added.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use 0xdeadbeef as magic value.

	* dlls/winspool.drv/info.c:
	winspool: Documentation for GetPrintProcessorDirectory.

2006-05-28  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Return an error for invalid requests instead of killing the client
	process.

	* dlls/user/winproc.c:
	user: Fixed WM_ACTIVATEAPP mapping with null task handle.

	* Make.rules.in:
	Make.rules: Define datarootdir to avoid a configure warning.

2006-05-28  Frank Richter <frank.richter@gmail.com>

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Install Mozilla control silently.

	* dlls/shdocvw/De.rc:
	shdocvw: Improve German translation.

2006-05-28  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Cleaning up the authentication tests.
	This should make it easier to add encryption tests later.

2006-05-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Improve debug traces.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Store STGMEDIUM in Binding object and set its pUnkForRelease.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return IClassFactory in get_protocol_handler and fix get_protocol.

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Clean output files when aborting on a signal.

	* tools/make_ctests.c:
	make_ctests: Clean output files when aborting on an error or signal.

	* tools/fnt2fon.c:
	fnt2fon: Clean output files when aborting on an error or signal.

	* tools/bin2res.c:
	bin2res: Clean output files when aborting on an error or signal.

	* tools/widl/widl.c:
	widl: Clean output files when aborting on a signal.

	* tools/wrc/wrc.c:
	wrc: Clean output files when aborting on an error or signal.

	* tools/wmc/wmc.c:
	wmc: Clean output files when aborting on an error or signal.

2006-05-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/loader.c:
	ntdll: Free TLS pointers when exiting thread.

	* dlls/kernel/selector.c, dlls/ntdll/thread.c, include/winternl.h:
	ntdll/kernel32: Moved GetThreadSelectorEntry to ntdll.
	- implemented NtQueryInformationThread's ThreadDescriptorTableEntry
	information class
	- used it to implement the kernel32's equivalent (GetThreadSelectorEntry)

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/winbase.h,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll/kernel32: Pipe information.
	- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control
	code
	- reimplemented kernel32.GetNamedPipeInfo on top of it
	- enhance current features to make this work both on client and server handles
	- now also returning the number of instances

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add ability to generate GLSL shader objects for vertex and pixel
	shaders.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Final move of the GLSL registry check (hopefully).

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/module.c, include/winbase.h:
	kernel32: Partial implementation of GetModuleHandleExA/W.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented RtlPcToFileHeader.

2006-05-26  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/base64_codec.c:
	secur32: Fix wrong bit shift in the base64 encoder.
	Thanks to Juan Lang for catching this one.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Store the QueryType in the state table in NdrFullPointerQueryRefId.
	Implement NdrFullPointerFree.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrFullPointerQueryRefId to make more tests pass.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement remaining part of NdrFullPointerQueryPointer and implement
	NdrFullPointerInsertRefId.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement some full pointer functions and add stubs for others.
	Add some tests.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::BltFast.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Avoid some code duplication.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrClientContext(Un)Marshall.

2006-05-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertVerifyCRLTimeValidity and partially implement
	CertVerifySubjectCertificateContext.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Combine redundant code.

2006-05-25  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: The font cache needs to discriminate whether the device can cope with
	bitmap fonts or not.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Even though FC_DEREFERENCE conformance is handled elsewhere in
	ComputeConformanceOrVariance it is still necessary to set the count
	variable to the value retrieved.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the actual status code sent back by the server, rather than
	RPC_S_CALL_FAILED.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix IWineGDISurface::SaveSnapshot.

	* dlls/wined3d/surface.c:
	wined3d: Disable the depth test in UnlockRect

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix regression introduced by recent multitexture patch.

2006-05-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/theme_dialog.c:
	comctl32: Dialog procedures should be called with CallWindowProc.

	* dlls/user/controls.h, dlls/user/user16.c, dlls/user/win.c,
	  dlls/user/winproc.h:
	user: Only include winproc.h where necessary.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the edit control messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for button and scrollbar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETTEXT, WM_SETTEXT and similar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* include/wine/unicode.h:
	wine_unicode: Add prototypes for inline functions (from a patch by Andrew
	Talbot).

	* dlls/crypt32/context.c, dlls/gphoto2.ds/gphoto2_Ko.rc:
	Fixed a couple of instances of the old FSF address that crept back in.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	wined3d: Create stub for D3DPERF_SetOptions function.

2006-05-25  Pierre d'Herbemont <stegefin@free.fr>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Obtain wine and wineserver from the bindir, instead of
	relaying on the PATH.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Put the new item in place of the hot divider instead of
	swapping.

2006-05-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Draw the drag image and hot dividers while dragging an item.

	* dlls/comctl32/header.c:
	comctl32: header: Fix an order-related bug in HEADER_InternalHitTest.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_SETHOTDIVIDER.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_CREATEDRAGIMAGE.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Apply the HDS_DRAGDROP header style if needed.
	Apply the HDS_DRAGDROP header style if the listview has the
	LVS_EX_HEADERDRAGDROP. Block the columns reordering as the listview
	doesn't support them.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Implement CertSerializeCRLStoreElement.

2006-05-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/util.c:
	mapi32: Break out of the loop as soon as MSI call succeeds.

	* dlls/gdi/freetype.c:
	gdi: Add more const qualifiers.

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Move the GLSL registry check again.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* tools/winapi/tests.dat:
	winapi: IMAGE_OPTIONAL_HEADER has different members on x86-64.

	* include/rpcndr.h:
	rpcrt4: Remove unused IN and OUT macros.

2006-05-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/util.c:
	mapi32: Implement FGetComponentPath.

	* dlls/msi/msi.c:
	msi: Translate the resulting string only if the previous call succeeded.

2006-05-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Fix implementation of ReleaseBindInfo.

	* dlls/urlmon/binding.c:
	urlmon: Better pending read handling.

	* dlls/urlmon/binding.c:
	urlmon: Added Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added handling BINDDSTATUS_FINDINGSOURCE and BINDSTATUS_CONNECTING
	in ReportProgress.

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Call OnProgress in apartment thread.

	* dlls/urlmon/binding.c:
	urlmon: Return MK_S_ASYNCHRONOUS if bindindg is asynchronous.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Added ReportResult implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added GetRootSecurityId and BeginningTransaction implementation.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Add support for CRLs.

	* dlls/crypt32/cert.c:
	crypt32: Use public functions when finding certificates.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Shader caps fix - code relocation.

2006-05-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Dynamicly load GL_ARB_multitexture functions.

2006-05-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Small rhw vertex fix.
	Fix the one pixel displacement and move the glOrtho code in a common
	function.

2006-05-25  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Regenerated with autoconf 2.59d.

	* include/wine/debug.h, include/wine/library.h, include/wine/test.h,
	  include/wine/unicode.h:
	include: Prevent internal Wine headers from being used in tests.

	* dlls/wined3d/surface.c:
	wined3d: Fixed a compiler warning.

2006-05-25  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ntdll/file.c:
	ntdll: Return FILE_DEVICE_CD_ROM_FILE_SYSTEM for supermount filesystems.

2006-05-24  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wininet/http.c, dlls/wininet/urlcache.c:
	wininet: Constify data.

	* dlls/gdi/dib.c, dlls/gdi/freetype.c, dlls/gdi/tests/palette.c:
	gdi: Constify data.

2006-05-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Get correct horizontal spacing value in the presence of ETO_PDY flag.

2006-05-24  Jason Green <jave27@gmail.com>

	* include/wine/wined3d_gl.h:
	wined3d: Add some more GLSL defines.

2006-05-25  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stub implementations for NDRS marshalling functions.

	* dlls/crypt32/oid.c:
	crypt32: Fix a integer to pointer cast.

	* dlls/msi/action.c, dlls/msi/database.c:
	msi: Fix some pointer to integer casts.

	* dlls/kernel/console.c:
	kernel32: Fix some pointer to integer casts.

	* dlls/mapi32/mapi32_main.c:
	mapi32: Fix prototype of MAPILogon and MAPILogoff.

	* include/richedit.h:
	richedit: Fix prototype of the callback function.

2006-05-24  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ftmarshal.c:
	ole32: Add a class factory for CLSID_InProcFreeMarshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement GetUnmarshalClass for the free-threaded marshaler and
	remove unnecessary unmarshaling code for the standard-marshal case -
	this is handled by CoUnmarshalInterface and CoReleaseMarshalData.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-strong marshaling and ReleaseMarshalData for the
	free-threaded marshaler.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-weak marshaling for the free-threaded marshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Release the standard marshal in the free-threaded marshaler's
	UnmarshalInterface function.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Add a rough implementation of the free-threaded marshaler MarshalInterface
	and UnmarshalInterface methods, with test cases.

	* dlls/ole32/ftmarshal.c:
	ole32: Fix the free-threaded marshaler when it has no outer unknown.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set the Memory field of the stub message structure to the
	start of the memory that an embedded pointer is embedded in so that
	FC_POINTER conformance works correctly.

	* dlls/rpcrt4/ndr_stubless.c, include/rpcndr.h:
	rpcrt4: Implement explicit generic binding handles.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the getting of the client binding handle to a separate function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the initialising of the stub message structure nearer to the top
	of NdrClientCall2.
	Set stubMsg.StackTop after calling the initialise function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the arguments exclusively in stubMsg.StackTop.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingCopy.

	* dlls/ole32/compobj.c, dlls/uuid/uuid.c:
	uuid: Add some COM CLSIDs.

	* include/urlmon.idl:
	include: Add several more interfaces to urlmon.idl.

2006-05-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c:
	urlmon: Added registering name space test.

	* dlls/urlmon/binding.c, dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Use registered protocols.

	* dlls/urlmon/session.c:
	urlmon: Added [Un]RegisterNamespace implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/service.c:
	mshtml: The secret interface is CMarkup. Improve FIXMEs.

2006-05-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Add one more test of CertAddEncodedCertificateToStore.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Move cert functions that don't depend on the implementation of stores
	to cert.c.

2006-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Fog fixes.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Turn around the image in LockRect.

	* dlls/wined3d/device.c:
	wined3d: Silence the offscreen surface creation fixme.

	* dlls/wined3d/device.c:
	wined3d: Color keying emulation.

2006-05-24  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/stateblock.c, dlls/d3d9/tests/device.c:
	d3d9: StateBlock is also created in EndStateBlock. With tests.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.14.

----------------------------------------------------------------
2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/usp10/tests/usp10.c:
	usp10: Fixed a compiler warning.

	* dlls/avifil32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mciseq/Makefile.in,
	  dlls/mciwave/Makefile.in, dlls/midimap/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/winmm/winearts/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in:
	Link against libwine_unicode everywhere we use Unicode functions.

	* dlls/ntdll/tests/atom.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/port.c, dlls/oleaut32/tests/vartype.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/rpcrt4/tests/rpc.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/tests/path.c:
	Tests should not use wine/unicode.h.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Get rid of unnecessary inclusion of unicode.h.

	* libs/wine/debug.c:
	libwine: Don't use libwine_unicode functions.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/gdi/font.c, dlls/msi/classes.c, dlls/quartz/filtergraph.c,
	  programs/winefile/winefile.c:
	Fixed more boolean comparisons against TRUE.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub implementations for NDRCContext(Un)Marshall.

	* dlls/wininet/dialogs.c:
	wininet: Fix a possible NULL pointer deference.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: find needs a slash when the source dir is a symlink.

2006-05-22  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Korean resources.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/locale.c, dlls/ntdll/rtlstr.c, include/wine/unicode.h,
	  libs/unicode/string.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map:
	libwine_unicode: Renamed is_dbcs_leadbyte to wine_is_dbcs_leadbyte.

	* include/wine/unicode.h, libs/unicode/string.c,
	  libs/unicode/wine_unicode.def, libs/unicode/wine_unicode.map:
	libwine_unicode: Define all functions in the library even if they can be inlined.

2006-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Add a test to check the queue status if there is a pending
	posted message and the quit flag is set.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Swapchain and back buffer corrections + tests.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Set a default radio button.

	* dlls/msi/action.c:
	msi: Fix a possible memory leak.

2006-05-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix ARB_imaging abuse.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/device.c:
	wined3d: Fixed a couple of boolean comparisons against TRUE.

2006-05-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replaced USING_GLSL define with a new wined3d_settings option based
	on the registry.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add function to print the infolog of a GLSL shader on errors.
	With assistance from H. Verbeet.

	* include/wine/wined3d_gl.h:
	wined3d: Added some GLSL defines and function prototypes.

2006-05-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Write-strings warning fix.

2006-05-23  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/comctl32/comctl_Fr.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/msacm32/msacm_Fr.rc, programs/cmdlgtst/Fr.rc,
	  programs/notepad/Fr.rc, programs/progman/Fr.rc,
	  programs/regedit/Fr.rc, programs/taskmgr/Fr.rc,
	  programs/winefile/Fr.rc, programs/winhelp/Fr.rc,
	  programs/wordpad/Fr.rc:
	Uniformization of French main menu accelerators.

2006-05-23  Hans Leidekker <hans@it.vu.nl>

	* programs/uninstaller/Nl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Dutch resources.

2006-05-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/x11drv/xrender.c:
	x11drv: GdiAlphaBlend fix for X errors if width or height is 0.

2006-05-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Test and fix a couple CertAddCertificateContextToStore corner cases.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Remove a double cap flag.

	* dlls/wined3d/surface.c:
	wined3d: Remove an unnecessary NULL check.

2006-05-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Added stub implementation of IPersistStreamInit.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OLEIVERB_UIACTIVATE implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't do verb that is already done.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move UI activating to the separated function.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move inplace activating code to the separated function.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser v1 implementation.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Added WebBrowser v1 registration.

2006-05-23  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix the loading of strings for the property sheet page by
	caching the ID of the string to load before overwriting it with an
	Alloc call.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Reuse the fast A->W function to implement the 16->32W case.
	Get rid of the no longer needed 16->32W mapping functions.

	* dlls/user/winproc.c:
	user: Reuse the fast W->A function to implement the 32W->16 case.
	Get rid of the no longer needed 32W->16 mapping functions.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks for the remaining 16-bit messaging functions.

2006-05-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't try to draw items outside the clipping rect.

	* dlls/comctl32/header.c:
	comctl32: header: Make the column resizing smooth in full drag mode.
	Make the column resizing smooth in full drag mode even for listview
	with lots of elements by redrawing only the resized column and calling
	UpdateWindow.

2006-05-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/context.c,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create an abstract interface for contexts, and use it for certificates
	- create a simple context list, and use it for memory stores

2006-05-23  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptStringOut.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Do not addref a NULL backbuffer in IWineD3DSwapChain::GetBackBuffer.

2006-05-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Uncomment test now that it works correctly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add another static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix some comments and move the NdrSimpleType* functions out from
	amongst the NdrSimpleStruct* ones.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/Bg.rc,
	  dlls/winspool.drv/De.rc, dlls/winspool.drv/En.rc,
	  dlls/winspool.drv/Eo.rc, dlls/winspool.drv/Fi.rc,
	  dlls/winspool.drv/It.rc, dlls/winspool.drv/Ko.rc,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/Nl.rc,
	  dlls/winspool.drv/Ru.rc, dlls/winspool.drv/Tr.rc,
	  dlls/winspool.drv/info.c, dlls/winspool.drv/tests/.gitignore,
	  dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c,
	  dlls/winspool.drv/winspool.drv.spec, dlls/winspool.drv/winspool.rc,
	  dlls/winspool.drv/wspool.c, dlls/winspool.drv/wspool.h,
	  dlls/winspool/.gitignore, dlls/winspool/Bg.rc, dlls/winspool/De.rc,
	  dlls/winspool/En.rc, dlls/winspool/Eo.rc, dlls/winspool/Fi.rc,
	  dlls/winspool/It.rc, dlls/winspool/Ko.rc, dlls/winspool/Makefile.in,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/.gitignore,
	  dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.drv.spec, dlls/winspool/winspool.rc,
	  dlls/winspool/wspool.c, dlls/winspool/wspool.h,
	  programs/winetest/Makefile.in:
	winspool: Renamed the directory to winspool.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/wineps.drv/.gitignore,
	  dlls/wineps.drv/Makefile.in, dlls/wineps.drv/afm.c,
	  dlls/wineps.drv/afm2c.c, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/clipping.c,
	  dlls/wineps.drv/color.c, dlls/wineps.drv/data/AvantGarde_Book.c,
	  dlls/wineps.drv/data/AvantGarde_BookOblique.c,
	  dlls/wineps.drv/data/AvantGarde_Demi.c,
	  dlls/wineps.drv/data/AvantGarde_DemiOblique.c,
	  dlls/wineps.drv/data/Bookman_Demi.c,
	  dlls/wineps.drv/data/Bookman_DemiItalic.c,
	  dlls/wineps.drv/data/Bookman_Light.c,
	  dlls/wineps.drv/data/Bookman_LightItalic.c,
	  dlls/wineps.drv/data/COPYRIGHTS, dlls/wineps.drv/data/Courier.c,
	  dlls/wineps.drv/data/Courier_Bold.c,
	  dlls/wineps.drv/data/Courier_BoldOblique.c,
	  dlls/wineps.drv/data/Courier_Oblique.c,
	  dlls/wineps.drv/data/Helvetica.c,
	  dlls/wineps.drv/data/Helvetica_Bold.c,
	  dlls/wineps.drv/data/Helvetica_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps.drv/data/Helvetica_Oblique.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps.drv/data/Palatino_Bold.c,
	  dlls/wineps.drv/data/Palatino_BoldItalic.c,
	  dlls/wineps.drv/data/Palatino_Italic.c,
	  dlls/wineps.drv/data/Palatino_Roman.c, dlls/wineps.drv/data/Symbol.c,
	  dlls/wineps.drv/data/Times_Bold.c,
	  dlls/wineps.drv/data/Times_BoldItalic.c,
	  dlls/wineps.drv/data/Times_Italic.c,
	  dlls/wineps.drv/data/Times_Roman.c,
	  dlls/wineps.drv/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps.drv/data/ZapfDingbats.c, dlls/wineps.drv/data/agl.c,
	  dlls/wineps.drv/data/agl.h, dlls/wineps.drv/download.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/encode.c,
	  dlls/wineps.drv/escape.c, dlls/wineps.drv/font.c,
	  dlls/wineps.drv/generic.ppd, dlls/wineps.drv/glyphlist.c,
	  dlls/wineps.drv/graphics.c, dlls/wineps.drv/init.c,
	  dlls/wineps.drv/mkagl.c, dlls/wineps.drv/objects.c,
	  dlls/wineps.drv/pen.c, dlls/wineps.drv/ppd.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/psdlg.h, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/text.c,
	  dlls/wineps.drv/truetype.c, dlls/wineps.drv/type1.c,
	  dlls/wineps.drv/type1afm.c, dlls/wineps.drv/type42.c,
	  dlls/wineps.drv/wineps.drv.spec, dlls/wineps.drv/wineps16.drv.spec,
	  dlls/wineps.drv/wps_Bg.rc, dlls/wineps.drv/wps_Cs.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wineps.drv/wps_En.rc,
	  dlls/wineps.drv/wps_Es.rc, dlls/wineps.drv/wps_Fr.rc,
	  dlls/wineps.drv/wps_Hu.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wineps.drv/wps_Ja.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wineps.drv/wps_No.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wineps.drv/wps_Ru.rc,
	  dlls/wineps.drv/wps_Si.rc, dlls/wineps.drv/wps_Sk.rc,
	  dlls/wineps.drv/wps_Tr.rc, dlls/wineps.drv/wps_xx.rc,
	  dlls/wineps/.gitignore, dlls/wineps/Makefile.in, dlls/wineps/afm.c,
	  dlls/wineps/afm2c.c, dlls/wineps/bitblt.c, dlls/wineps/bitmap.c,
	  dlls/wineps/brush.c, dlls/wineps/builtin.c, dlls/wineps/clipping.c,
	  dlls/wineps/color.c, dlls/wineps/data/AvantGarde_Book.c,
	  dlls/wineps/data/AvantGarde_BookOblique.c,
	  dlls/wineps/data/AvantGarde_Demi.c,
	  dlls/wineps/data/AvantGarde_DemiOblique.c,
	  dlls/wineps/data/Bookman_Demi.c,
	  dlls/wineps/data/Bookman_DemiItalic.c,
	  dlls/wineps/data/Bookman_Light.c,
	  dlls/wineps/data/Bookman_LightItalic.c, dlls/wineps/data/COPYRIGHTS,
	  dlls/wineps/data/Courier.c, dlls/wineps/data/Courier_Bold.c,
	  dlls/wineps/data/Courier_BoldOblique.c,
	  dlls/wineps/data/Courier_Oblique.c, dlls/wineps/data/Helvetica.c,
	  dlls/wineps/data/Helvetica_Bold.c,
	  dlls/wineps/data/Helvetica_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow.c,
	  dlls/wineps/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps/data/Helvetica_Oblique.c,
	  dlls/wineps/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps/data/Palatino_Bold.c,
	  dlls/wineps/data/Palatino_BoldItalic.c,
	  dlls/wineps/data/Palatino_Italic.c,
	  dlls/wineps/data/Palatino_Roman.c, dlls/wineps/data/Symbol.c,
	  dlls/wineps/data/Times_Bold.c, dlls/wineps/data/Times_BoldItalic.c,
	  dlls/wineps/data/Times_Italic.c, dlls/wineps/data/Times_Roman.c,
	  dlls/wineps/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps/data/ZapfDingbats.c, dlls/wineps/data/agl.c,
	  dlls/wineps/data/agl.h, dlls/wineps/download.c, dlls/wineps/driver.c,
	  dlls/wineps/encode.c, dlls/wineps/escape.c, dlls/wineps/font.c,
	  dlls/wineps/generic.ppd, dlls/wineps/glyphlist.c,
	  dlls/wineps/graphics.c, dlls/wineps/init.c, dlls/wineps/mkagl.c,
	  dlls/wineps/objects.c, dlls/wineps/pen.c, dlls/wineps/ppd.c,
	  dlls/wineps/ps.c, dlls/wineps/psdlg.h, dlls/wineps/psdrv.h,
	  dlls/wineps/rsrc.rc, dlls/wineps/text.c, dlls/wineps/truetype.c,
	  dlls/wineps/type1.c, dlls/wineps/type1afm.c, dlls/wineps/type42.c,
	  dlls/wineps/wineps.drv.spec, dlls/wineps/wineps16.drv.spec,
	  dlls/wineps/wps_Bg.rc, dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc,
	  dlls/wineps/wps_En.rc, dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc,
	  dlls/wineps/wps_Hu.rc, dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc,
	  dlls/wineps/wps_Ko.rc, dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc,
	  dlls/wineps/wps_Pt.rc, dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc,
	  dlls/wineps/wps_Sk.rc, dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc:
	wineps: Renamed the directory to wineps.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/msisys.ocx/.gitignore,
	  dlls/msisys.ocx/Makefile.in, dlls/msisys.ocx/msisys.c,
	  dlls/msisys.ocx/msisys.ocx.spec, dlls/msisys/.gitignore,
	  dlls/msisys/Makefile.in, dlls/msisys/msisys.c,
	  dlls/msisys/msisys.ocx.spec:
	msisys: Renamed the directory to msisys.ocx.

2006-05-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* COPYING.LIB, LICENSE, aclocal.m4, dlls/activeds/activeds_main.c,
	  dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_des.c,
	  dlls/advapi32/crypt_lmhash.c, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/crypt_md5.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c, dlls/advapi32/tests/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md5.c, dlls/advapi32/tests/crypt_sha.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c, dlls/advpack/advpack.c,
	  dlls/advpack/advpack_private.h, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c,
	  dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/advpack/tests/install.c, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/main.c,
	  dlls/amstream/mediastream.c, dlls/amstream/regsvr.c,
	  dlls/amstream/version.rc, dlls/atl/atl_main.c, dlls/atl/atlbase.h,
	  dlls/atl/atliface.idl, dlls/atl/registrar.c, dlls/atl/rsrc.rc,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/avifile_Cs.rc, dlls/avifil32/avifile_De.rc,
	  dlls/avifil32/avifile_En.rc, dlls/avifil32/avifile_Es.rc,
	  dlls/avifil32/avifile_Fr.rc, dlls/avifil32/avifile_Hu.rc,
	  dlls/avifil32/avifile_It.rc, dlls/avifil32/avifile_Ja.rc,
	  dlls/avifil32/avifile_Ko.rc, dlls/avifil32/avifile_Nl.rc,
	  dlls/avifil32/avifile_No.rc, dlls/avifil32/avifile_Pl.rc,
	  dlls/avifil32/avifile_Pt.rc, dlls/avifil32/avifile_Ru.rc,
	  dlls/avifil32/avifile_Si.rc, dlls/avifil32/avifile_Tr.rc,
	  dlls/avifil32/avifile_private.h, dlls/avifil32/editstream.c,
	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/rsrc.rc, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c, dlls/cabinet/cabinet.h,
	  dlls/cabinet/cabinet.rc, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/fci.c, dlls/cabinet/fdi.c, dlls/cabinet/tests/extract.c,
	  dlls/capi2032/cap20wxx.c, dlls/capi2032/cap20wxx.h,
	  dlls/cards/cards.c, dlls/cards/cards.h, dlls/cards/cards.rc,
	  dlls/cards/version.rc, dlls/cfgmgr32/main.c,
	  dlls/comcat/comcat_main.c, dlls/comcat/comcat_private.h,
	  dlls/comcat/factory.c, dlls/comcat/information.c,
	  dlls/comcat/manager.c, dlls/comcat/register.c, dlls/comcat/regsvr.c,
	  dlls/comcat/version.rc, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32.h,
	  dlls/comctl32/comctl32undoc.c, dlls/comctl32/comctl_Bg.rc,
	  dlls/comctl32/comctl_Cn.rc, dlls/comctl32/comctl_Cs.rc,
	  dlls/comctl32/comctl_De.rc, dlls/comctl32/comctl_En.rc,
	  dlls/comctl32/comctl_Eo.rc, dlls/comctl32/comctl_Es.rc,
	  dlls/comctl32/comctl_Fr.rc, dlls/comctl32/comctl_Hu.rc,
	  dlls/comctl32/comctl_It.rc, dlls/comctl32/comctl_Ja.rc,
	  dlls/comctl32/comctl_Ko.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comctl32/comctl_No.rc, dlls/comctl32/comctl_Pl.rc,
	  dlls/comctl32/comctl_Pt.rc, dlls/comctl32/comctl_Ru.rc,
	  dlls/comctl32/comctl_Si.rc, dlls/comctl32/comctl_Sv.rc,
	  dlls/comctl32/comctl_Th.rc, dlls/comctl32/comctl_Tr.rc,
	  dlls/comctl32/comctl_Uk.rc, dlls/comctl32/commctrl.c,
	  dlls/comctl32/datetime.c, dlls/comctl32/dpa.c,
	  dlls/comctl32/draglist.c, dlls/comctl32/dsa.c,
	  dlls/comctl32/flatsb.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/imagelist.h, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/nativefont.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/rsrc.rc,
	  dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/dpa.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/imagelist.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/mru.c,
	  dlls/comctl32/tests/progress.c, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc, dlls/comctl32/tests/subclass.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/toolbar.c,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tests/treeview.c,
	  dlls/comctl32/tests/updown.c, dlls/comctl32/theme_combo.c,
	  dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h,
	  dlls/comdlg32/cdlg32.c, dlls/comdlg32/cdlg_Bg.rc,
	  dlls/comdlg32/cdlg_Ca.rc, dlls/comdlg32/cdlg_Cn.rc,
	  dlls/comdlg32/cdlg_Cs.rc, dlls/comdlg32/cdlg_Da.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/comdlg32/cdlg_En.rc,
	  dlls/comdlg32/cdlg_Eo.rc, dlls/comdlg32/cdlg_Es.rc,
	  dlls/comdlg32/cdlg_Fi.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/comdlg32/cdlg_Hu.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Ja.rc, dlls/comdlg32/cdlg_Ko.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/comdlg32/cdlg_No.rc,
	  dlls/comdlg32/cdlg_Pl.rc, dlls/comdlg32/cdlg_Pt.rc,
	  dlls/comdlg32/cdlg_Ru.rc, dlls/comdlg32/cdlg_Si.rc,
	  dlls/comdlg32/cdlg_Sk.rc, dlls/comdlg32/cdlg_Sv.rc,
	  dlls/comdlg32/cdlg_Th.rc, dlls/comdlg32/cdlg_Tr.rc,
	  dlls/comdlg32/cdlg_Uk.rc, dlls/comdlg32/cdlg_Wa.rc,
	  dlls/comdlg32/cdlg_Zh.rc, dlls/comdlg32/cdlg_xx.rc,
	  dlls/comdlg32/colordlg.c, dlls/comdlg32/colordlg16.c,
	  dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/filedlgbrowser.h,
	  dlls/comdlg32/filetitle.c, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c,
	  dlls/comdlg32/rsrc.rc, dlls/crtdll/crtdll_main.c,
	  dlls/crypt32/cert.c, dlls/crypt32/crypt32.rc,
	  dlls/crypt32/crypt32_De.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_Ko.rc, dlls/crypt32/crypt32_No.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c, dlls/crypt32/proplist.c,
	  dlls/crypt32/protectdata.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/str.c, dlls/crypt32/tests/cert.c,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c,
	  dlls/crypt32/tests/store.c, dlls/crypt32/tests/str.c,
	  dlls/crypt32/version.rc, dlls/cryptdll/cryptdll.c,
	  dlls/ctl3d32/ctl3d.c, dlls/ctl3d32/ctl3d32.c,
	  dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/tests/device.c, dlls/d3d8/texture.c, dlls/d3d8/version.rc,
	  dlls/d3d8/vertexbuffer.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/texture.c, dlls/d3d9/version.rc, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/d3d9/vshaderdeclaration.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3dim/version.rc, dlls/d3drm/d3drm_main.c,
	  dlls/d3drm/version.rc, dlls/d3dx8/d3dx8_main.c,
	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c,
	  dlls/d3dxof/d3dxof.c, dlls/d3dxof/d3dxof_private.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c, dlls/d3dxof/version.rc,
	  dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/image.c,
	  dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/source.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/stack.c, dlls/dbghelp/storage.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, dlls/dbghelp/wdbgexts.h,
	  dlls/dciman32/dciman_main.c, dlls/ddraw/clipper.c,
	  dlls/ddraw/d3d_private.h, dlls/ddraw/d3d_utils.c,
	  dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw_hal.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/ddraw_user.c,
	  dlls/ddraw/ddraw_utils.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d_main.c,
	  dlls/ddraw/direct3d_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gl_api.h, dlls/ddraw/gl_private.h, dlls/ddraw/light.c,
	  dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/opengl_private.h, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/regsvr.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/texture.c, dlls/ddraw/version.rc,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/devenum/createdevenum.c, dlls/devenum/devenum.rc,
	  dlls/devenum/devenum_main.c, dlls/devenum/devenum_private.h,
	  dlls/devenum/factory.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c, dlls/dinput/data_formats.c,
	  dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h,
	  dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/regsvr.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c,
	  dlls/dinput/version.rc, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/version.rc, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmband_main.c, dlls/dmband/dmband_private.h,
	  dlls/dmband/dmutils.c, dlls/dmband/dmutils.h, dlls/dmband/regsvr.c,
	  dlls/dmband/version.rc, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/regsvr.c, dlls/dmcompos/signposttrack.c,
	  dlls/dmcompos/version.rc, dlls/dmime/audiopath.c,
	  dlls/dmime/dmime_main.c, dlls/dmime/dmime_private.h,
	  dlls/dmime/dmutils.c, dlls/dmime/dmutils.h, dlls/dmime/graph.c,
	  dlls/dmime/lyricstrack.c, dlls/dmime/markertrack.c,
	  dlls/dmime/paramcontroltrack.c, dlls/dmime/patterntrack.c,
	  dlls/dmime/performance.c, dlls/dmime/regsvr.c, dlls/dmime/segment.c,
	  dlls/dmime/segmentstate.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/version.rc, dlls/dmime/wavetrack.c,
	  dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/debug.c, dlls/dmloader/debug.h,
	  dlls/dmloader/dmloader_main.c, dlls/dmloader/dmloader_private.h,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c,
	  dlls/dmloader/regsvr.c, dlls/dmloader/version.rc,
	  dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h,
	  dlls/dmscript/regsvr.c, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c, dlls/dmscript/version.rc,
	  dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_main.c,
	  dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/dmutils.h, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/regsvr.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c,
	  dlls/dmstyle/version.rc, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/regsvr.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c,
	  dlls/dmsynth/version.rc, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/regsvr.c, dlls/dmusic/thru.c,
	  dlls/dmusic/version.rc, dlls/dmusic32/dmusic32_main.c,
	  dlls/dmusic32/version.rc, dlls/dnsapi/dnsapi.h, dlls/dnsapi/main.c,
	  dlls/dnsapi/name.c, dlls/dnsapi/query.c, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/name.c, dlls/dnsapi/tests/record.c,
	  dlls/dplay/version.rc, dlls/dplayx/dpclassfactory.c,
	  dlls/dplayx/dpinit.h, dlls/dplayx/dplay.c,
	  dlls/dplayx/dplay_global.h, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplaysp.h, dlls/dplayx/dplayx_global.c,
	  dlls/dplayx/dplayx_global.h, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplayx_messages.h,
	  dlls/dplayx/dplayx_queue.h, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c, dlls/dplayx/lobbysp.h,
	  dlls/dplayx/name_server.c, dlls/dplayx/name_server.h,
	  dlls/dplayx/regsvr.c, dlls/dplayx/version.rc, dlls/dpnet/address.c,
	  dlls/dpnet/client.c, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/dpnet_private.h, dlls/dpnet/peer.c, dlls/dpnet/regsvr.c,
	  dlls/dpnet/server.c, dlls/dpnet/version.rc, dlls/dpnhpast/main.c,
	  dlls/dpnhpast/version.rc, dlls/dsound/buffer.c,
	  dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/regsvr.c, dlls/dsound/sound3d.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c,
	  dlls/dsound/version.rc, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c, dlls/dswave/dswave_private.h,
	  dlls/dswave/regsvr.c, dlls/dswave/version.rc,
	  dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_main.c,
	  dlls/dxdiagn/dxdiag_private.h, dlls/dxdiagn/provider.c,
	  dlls/dxdiagn/regsvr.c, dlls/dxdiagn/version.rc, dlls/dxerr8/dxerr8.c,
	  dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c, dlls/dxguid/dx9guid.c,
	  dlls/dxguid/dxguid.c, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/driver.c, dlls/gdi/enhmetafile.c,
	  dlls/gdi/enhmfdrv/bitblt.c, dlls/gdi/enhmfdrv/dc.c,
	  dlls/gdi/enhmfdrv/enhmetafiledrv.h, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/enhmfdrv/mapping.c,
	  dlls/gdi/enhmfdrv/objects.c, dlls/gdi/env.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi16.c, dlls/gdi/gdi_main.c,
	  dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c, dlls/gdi/icm.c,
	  dlls/gdi/mapping.c, dlls/gdi/metafile.c, dlls/gdi/metafile16.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c, dlls/gdi/pen.c,
	  dlls/gdi/printdrv.c, dlls/gdi/region.c, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c, dlls/gdi/version.rc,
	  dlls/gdi/version16.rc, dlls/gdi/wing.c, dlls/glu32/glu.c,
	  dlls/glut32/glut.c, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/gphoto2.ds/resource.h,
	  dlls/gphoto2.ds/rsrc.rc, dlls/gphoto2.ds/ui.c, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/De.rc, dlls/hhctrl.ocx/En.rc, dlls/hhctrl.ocx/Fi.rc,
	  dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/Nl.rc,
	  dlls/hhctrl.ocx/No.rc, dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.rc,
	  dlls/hhctrl.ocx/main.c, dlls/hhctrl.ocx/regsvr.c,
	  dlls/hhctrl.ocx/resource.h, dlls/hhctrl.ocx/version.rc,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h,
	  dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_De.rc,
	  dlls/iccvid/iccvid_En.rc, dlls/iccvid/iccvid_Fr.rc,
	  dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/iccvid_Ko.rc,
	  dlls/iccvid/iccvid_No.rc, dlls/iccvid/iccvid_Tr.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc,
	  dlls/icmp/icmp_main.c, dlls/ifsmgr.vxd/ifsmgr.c,
	  dlls/imaadp32.acm/imaadp32.c, dlls/imagehlp/access.c,
	  dlls/imagehlp/imagehlp_main.c, dlls/imagehlp/integrity.c,
	  dlls/imagehlp/internal.c, dlls/imagehlp/modify.c, dlls/imm32/imm.c,
	  dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h, dlls/iphlpapi/tests/iphlpapi.c,
	  dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/regsvr.c, dlls/itss/storage.c, dlls/kernel/actctx.c,
	  dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/change.c,
	  dlls/kernel/comm.c, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel_main.c,
	  dlls/kernel/kernel_private.h, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/string.c, dlls/kernel/sync.c, dlls/kernel/syslevel.c,
	  dlls/kernel/system.c, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/alloc.c, dlls/kernel/tests/atom.c,
	  dlls/kernel/tests/change.c, dlls/kernel/tests/codepage.c,
	  dlls/kernel/tests/comm.c, dlls/kernel/tests/console.c,
	  dlls/kernel/tests/directory.c, dlls/kernel/tests/drive.c,
	  dlls/kernel/tests/environ.c, dlls/kernel/tests/file.c,
	  dlls/kernel/tests/format_msg.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/virtual.c, dlls/kernel/tests/volume.c,
	  dlls/kernel/thread.c, dlls/kernel/thunk.c, dlls/kernel/time.c,
	  dlls/kernel/toolhelp.c, dlls/kernel/toolhelp.h,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/windebug.c, dlls/kernel/wowthunk.c,
	  dlls/lz32/lzexpand16.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/make_dlls, dlls/mapi32/imalloc.c, dlls/mapi32/mapi32_main.c,
	  dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c, dlls/mapi32/util.c, dlls/mciavi32/info.c,
	  dlls/mciavi32/mciavi.c, dlls/mciavi32/mciavi_res.rc,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/private_mciavi.h,
	  dlls/mciavi32/wnd.c, dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/midimap/midimap.c, dlls/mlang/mlang.c,
	  dlls/mlang/regsvr.c, dlls/mlang/tests/mlang.c,
	  dlls/mmdevldr.vxd/mmdevldr.c, dlls/monodebg.vxd/monodebg.c,
	  dlls/mpr/auth.c, dlls/mpr/mpr.rc, dlls/mpr/mpr_Bg.rc,
	  dlls/mpr/mpr_Cs.rc, dlls/mpr/mpr_De.rc, dlls/mpr/mpr_En.rc,
	  dlls/mpr/mpr_Eo.rc, dlls/mpr/mpr_Es.rc, dlls/mpr/mpr_Fr.rc,
	  dlls/mpr/mpr_Hu.rc, dlls/mpr/mpr_It.rc, dlls/mpr/mpr_Ja.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mpr/mpr_Nl.rc, dlls/mpr/mpr_No.rc,
	  dlls/mpr/mpr_Pt.rc, dlls/mpr/mpr_Tr.rc, dlls/mpr/mpr_main.c,
	  dlls/mpr/mprres.h, dlls/mpr/multinet.c, dlls/mpr/netspi.h,
	  dlls/mpr/nps.c, dlls/mpr/pwcache.c, dlls/mpr/version.rc,
	  dlls/mpr/wnet.c, dlls/mpr/wnetpriv.h, dlls/mprapi/mprapi.c,
	  dlls/msacm32.drv/wavemap.c, dlls/msacm32/driver.c,
	  dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  dlls/msadp32.acm/msadp32.c, dlls/mscms/handle.c, dlls/mscms/icc.c,
	  dlls/mscms/mscms_main.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c, dlls/mscms/stub.c, dlls/mscms/tests/profile.c,
	  dlls/mscms/transform.c, dlls/mscms/version.rc, dlls/msdmo/dmoreg.c,
	  dlls/msdmo/dmort.c, dlls/msdmo/rsrc.rc, dlls/msg711.acm/msg711.c,
	  dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Tr.rc, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c,
	  dlls/mshtml/oleobj.c, dlls/mshtml/olewnd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/protocol.c, dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/service.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/protocol.c, dlls/mshtml/view.c, dlls/msi/action.c,
	  dlls/msi/action.h, dlls/msi/appsearch.c, dlls/msi/classes.c,
	  dlls/msi/cond.y, dlls/msi/create.c, dlls/msi/custom.c,
	  dlls/msi/database.c, dlls/msi/delete.c, dlls/msi/dialog.c,
	  dlls/msi/distinct.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/format.c, dlls/msi/handle.c, dlls/msi/helpers.c,
	  dlls/msi/insert.c, dlls/msi/install.c, dlls/msi/msi.c,
	  dlls/msi/msi.rc, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Tr.rc,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/order.c,
	  dlls/msi/package.c, dlls/msi/preview.c, dlls/msi/query.h,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/regsvr.c,
	  dlls/msi/select.c, dlls/msi/source.c, dlls/msi/sql.y,
	  dlls/msi/string.c, dlls/msi/suminfo.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/msi.c,
	  dlls/msi/tests/package.c, dlls/msi/tests/record.c,
	  dlls/msi/tests/suminfo.c, dlls/msi/update.c, dlls/msi/upgrade.c,
	  dlls/msi/version.rc, dlls/msi/where.c, dlls/msimg32/msimg32_main.c,
	  dlls/msisys/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Bg.rc,
	  dlls/msrle32/msrle_Cs.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msrle32/msrle_En.rc, dlls/msrle32/msrle_Es.rc,
	  dlls/msrle32/msrle_Fr.rc, dlls/msrle32/msrle_Hu.rc,
	  dlls/msrle32/msrle_It.rc, dlls/msrle32/msrle_Ja.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/msrle32/msrle_No.rc, dlls/msrle32/msrle_Pt.rc,
	  dlls/msrle32/msrle_Ru.rc, dlls/msrle32/msrle_Si.rc,
	  dlls/msrle32/msrle_Tr.rc, dlls/msrle32/msrle_private.h,
	  dlls/msrle32/rsrc.rc, dlls/msvcrt/console.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/msvcrt.h, dlls/msvcrt/mtdll.h, dlls/msvcrt/process.c,
	  dlls/msvcrt/rsrc.rc, dlls/msvcrt/scanf.c, dlls/msvcrt/scanf.h,
	  dlls/msvcrt/string.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/environ.c,
	  dlls/msvcrt/tests/file.c, dlls/msvcrt/tests/headers.c,
	  dlls/msvcrt/tests/heap.c, dlls/msvcrt/tests/printf.c,
	  dlls/msvcrt/tests/scanf.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrt/tests/time.c, dlls/msvcrt/thread.c, dlls/msvcrt/time.c,
	  dlls/msvcrt/undname.c, dlls/msvcrt/wcs.c, dlls/msvcrt20/msvcrt20.c,
	  dlls/msvcrtd/debug.c, dlls/msvcrtd/tests/debug.c,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvfw32/msvfw32_En.rc,
	  dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/msvfw32_Hu.rc,
	  dlls/msvfw32/msvfw32_Ko.rc, dlls/msvfw32/msvfw32_No.rc,
	  dlls/msvfw32/msvfw32_Tr.rc, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/msvidc32_private.h,
	  dlls/msvidc32/msvideo1.c, dlls/msvidc32/rsrc.rc,
	  dlls/mswsock/mswsock.c, dlls/mswsock/version.rc,
	  dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/element.c, dlls/msxml3/factory.c, dlls/msxml3/main.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c,
	  dlls/msxml3/text.c, dlls/netapi32/access.c, dlls/netapi32/apibuf.c,
	  dlls/netapi32/browsr.c, dlls/netapi32/ds.c,
	  dlls/netapi32/nbcmdqueue.c, dlls/netapi32/nbcmdqueue.h,
	  dlls/netapi32/nbnamecache.c, dlls/netapi32/nbnamecache.h,
	  dlls/netapi32/nbt.c, dlls/netapi32/netapi32.c,
	  dlls/netapi32/netapi32_misc.h, dlls/netapi32/netbios.c,
	  dlls/netapi32/netbios.h, dlls/netapi32/share.c,
	  dlls/netapi32/tests/access.c, dlls/netapi32/tests/apibuf.c,
	  dlls/netapi32/tests/ds.c, dlls/netapi32/tests/wksta.c,
	  dlls/netapi32/wksta.c, dlls/newdev/main.c, dlls/ntdll/atom.c,
	  dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/loadorder.c, dlls/ntdll/misc.c, dlls/ntdll/nt.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/rtlstr.c, dlls/ntdll/sec.c, dlls/ntdll/serial.c,
	  dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/string.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tape.c, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/change.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/error.c, dlls/ntdll/tests/exception.c,
	  dlls/ntdll/tests/info.c, dlls/ntdll/tests/large_int.c,
	  dlls/ntdll/tests/ntdll_test.h, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c, dlls/ntdll/tests/time.c,
	  dlls/ntdll/thread.c, dlls/ntdll/threadpool.c, dlls/ntdll/time.c,
	  dlls/ntdll/version.c, dlls/ntdll/virtual.c, dlls/ntdll/wcstring.c,
	  dlls/ntdsapi/ntdsapi.c, dlls/objsel/factory.c, dlls/objsel/objsel.c,
	  dlls/objsel/objsel.rc, dlls/objsel/objsel_private.h,
	  dlls/objsel/regsvr.c, dlls/odbc32/proxyodbc.c,
	  dlls/odbc32/proxyodbc.h, dlls/odbccp32/odbccp32.c,
	  dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/compositemoniker.c, dlls/ole32/datacache.c,
	  dlls/ole32/dcom.idl, dlls/ole32/defaulthandler.c,
	  dlls/ole32/dictionary.c, dlls/ole32/dictionary.h,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/ifs.h, dlls/ole32/itemmoniker.c,
	  dlls/ole32/marshal.c, dlls/ole32/memlockbytes.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/moniker.c,
	  dlls/ole32/ole16.c, dlls/ole32/ole2.c, dlls/ole32/ole2_16.c,
	  dlls/ole32/ole2impl.c, dlls/ole32/ole2nls.c, dlls/ole32/ole2stubs.c,
	  dlls/ole32/ole32_main.c, dlls/ole32/ole32res.rc, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/olestd.h, dlls/ole32/regsvr.c,
	  dlls/ole32/rpc.c, dlls/ole32/stg_bigblockfile.c,
	  dlls/ole32/stg_prop.c, dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/stubmanager.c, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/moniker.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c,
	  dlls/ole32/usrmarshal.c, dlls/ole32/version.rc, dlls/oleacc/main.c,
	  dlls/oleaut32/connpt.c, dlls/oleaut32/connpt.h,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/ole2disp.h,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Bg.rc, dlls/oleaut32/oleaut32_Cz.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oleaut32/oleaut32_Dk.rc,
	  dlls/oleaut32/oleaut32_En.rc, dlls/oleaut32/oleaut32_Eo.rc,
	  dlls/oleaut32/oleaut32_Es.rc, dlls/oleaut32/oleaut32_Fr.rc,
	  dlls/oleaut32/oleaut32_Hu.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/oleaut32/oleaut32_Nl.rc,
	  dlls/oleaut32/oleaut32_No.rc, dlls/oleaut32/oleaut32_Pl.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oleaut32/oleaut32_Ru.rc,
	  dlls/oleaut32/oleaut32_Sv.rc, dlls/oleaut32/oleaut32_Th.rc,
	  dlls/oleaut32/oleaut32_Tr.rc, dlls/oleaut32/olefont.c,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/recinfo.c,
	  dlls/oleaut32/regsvr.c, dlls/oleaut32/resource.h,
	  dlls/oleaut32/safearray.c, dlls/oleaut32/stubs.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/olepicture.c,
	  dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/typelib.c,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/typelib16.c, dlls/oleaut32/typelib2.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/varformat.c,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h,
	  dlls/oleaut32/vartype.c, dlls/oleaut32/version.rc,
	  dlls/olecli32/olecli16.c, dlls/olecli32/olecli_main.c,
	  dlls/oledlg/insobjdlg.c, dlls/oledlg/oledlg_Cs.rc,
	  dlls/oledlg/oledlg_De.rc, dlls/oledlg/oledlg_En.rc,
	  dlls/oledlg/oledlg_Es.rc, dlls/oledlg/oledlg_Fr.rc,
	  dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/oledlg_It.rc,
	  dlls/oledlg/oledlg_Ja.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/oledlg/oledlg_No.rc,
	  dlls/oledlg/oledlg_Pt.rc, dlls/oledlg/oledlg_Tr.rc,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/resource.h,
	  dlls/oledlg/rsrc.rc, dlls/olepro32/olepro32stubs.c,
	  dlls/olesvr32/olesvr_main.c, dlls/opengl32/make_opengl,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/version.rc,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/psapi/tests/psapi_main.c,
	  dlls/qcap/capture.h, dlls/qcap/capturegraph.c, dlls/qcap/dllsetup.c,
	  dlls/qcap/dllsetup.h, dlls/qcap/enummedia.c, dlls/qcap/enumpins.c,
	  dlls/qcap/pin.c, dlls/qcap/pin.h, dlls/qcap/qcap_main.c,
	  dlls/qcap/qcap_main.h, dlls/qcap/v4l.c, dlls/qcap/version.rc,
	  dlls/qcap/vfwcapture.c, dlls/qcap/yuv.c, dlls/quartz/acmwrapper.c,
	  dlls/quartz/avidec.c, dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/control_private.h, dlls/quartz/dsoundrender.c,
	  dlls/quartz/enumfilters.c, dlls/quartz/enummedia.c,
	  dlls/quartz/enummoniker.c, dlls/quartz/enumpins.c,
	  dlls/quartz/enumregfilters.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/fourcc.h, dlls/quartz/main.c, dlls/quartz/memallocator.c,
	  dlls/quartz/parser.c, dlls/quartz/parser.h, dlls/quartz/pin.c,
	  dlls/quartz/pin.h, dlls/quartz/quartz_private.h,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/tests/filtergraph.c, dlls/quartz/tests/memallocator.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h,
	  dlls/quartz/version.rc, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c, dlls/rasapi32/rasapi.c,
	  dlls/riched20/caret.c, dlls/riched20/clipboard.c,
	  dlls/riched20/context.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/reader.c, dlls/riched20/richole.c, dlls/riched20/row.c,
	  dlls/riched20/run.c, dlls/riched20/string.c, dlls/riched20/style.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/undo.c, dlls/riched20/version.rc, dlls/riched20/wrap.c,
	  dlls/riched20/writer.c, dlls/riched32/richedit.c,
	  dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h,
	  dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_misc.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_server.h, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/rpcrt4/rpcss_np_client.h, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/rpcrt4/tests/rpc.c, dlls/rsabase/tests/rsabase.c,
	  dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/md2.c,
	  dlls/rsaenh/mpi.c, dlls/rsaenh/rc2.c, dlls/rsaenh/rc4.c,
	  dlls/rsaenh/rsa.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c,
	  dlls/rsaenh/tomcrypt.h, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/secur32/base64_codec.c, dlls/secur32/dispatcher.c,
	  dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  dlls/sensapi/sensapi.c, dlls/serialui/Bg.rc, dlls/serialui/Cs.rc,
	  dlls/serialui/De.rc, dlls/serialui/En.rc, dlls/serialui/Eo.rc,
	  dlls/serialui/Es.rc, dlls/serialui/Fi.rc, dlls/serialui/Fr.rc,
	  dlls/serialui/Hu.rc, dlls/serialui/It.rc, dlls/serialui/Ja.rc,
	  dlls/serialui/Ko.rc, dlls/serialui/Nl.rc, dlls/serialui/No.rc,
	  dlls/serialui/Pt.rc, dlls/serialui/Ru.rc, dlls/serialui/Tr.rc,
	  dlls/serialui/confdlg.c, dlls/serialui/serialui.h,
	  dlls/serialui/serialui_rc.rc, dlls/setupapi/Bg.rc,
	  dlls/setupapi/Cs.rc, dlls/setupapi/De.rc, dlls/setupapi/En.rc,
	  dlls/setupapi/Eo.rc, dlls/setupapi/Es.rc, dlls/setupapi/Fi.rc,
	  dlls/setupapi/Fr.rc, dlls/setupapi/Hu.rc, dlls/setupapi/It.rc,
	  dlls/setupapi/Ja.rc, dlls/setupapi/Ko.rc, dlls/setupapi/Nl.rc,
	  dlls/setupapi/No.rc, dlls/setupapi/Pl.rc, dlls/setupapi/Pt.rc,
	  dlls/setupapi/Ru.rc, dlls/setupapi/Sv.rc, dlls/setupapi/Tr.rc,
	  dlls/setupapi/devinst.c, dlls/setupapi/devinst16.c,
	  dlls/setupapi/dirid.c, dlls/setupapi/diskspace.c,
	  dlls/setupapi/fakedll.c, dlls/setupapi/infparse.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.rc, dlls/setupapi/setupapi_private.h,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx16.h,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/stringtable.c,
	  dlls/setupapi/stubs.c, dlls/setupapi/tests/parser.c,
	  dlls/setupapi/tests/query.c, dlls/setupapi/tests/stringtable.c,
	  dlls/setupapi/virtcopy.c, dlls/sfc/sfc_main.c, dlls/shdocvw/Bg.rc,
	  dlls/shdocvw/De.rc, dlls/shdocvw/En.rc, dlls/shdocvw/Es.rc,
	  dlls/shdocvw/Fi.rc, dlls/shdocvw/Fr.rc, dlls/shdocvw/Hu.rc,
	  dlls/shdocvw/Ko.rc, dlls/shdocvw/Nl.rc, dlls/shdocvw/No.rc,
	  dlls/shdocvw/Pt.rc, dlls/shdocvw/Tr.rc, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/frame.c, dlls/shdocvw/ie.c,
	  dlls/shdocvw/iexplore.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/persist.c,
	  dlls/shdocvw/regsvr.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw.rc, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/version.rc, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanel.h,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/dde.c, dlls/shell32/debughlp.c, dlls/shell32/debughlp.h,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/enumidlist.h,
	  dlls/shell32/folders.c, dlls/shell32/iconcache.c,
	  dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/regsvr.c,
	  dlls/shell32/shell.c, dlls/shell32/shell32_Bg.rc,
	  dlls/shell32/shell32_Ca.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_Da.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Hu.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_Nl.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pl.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shell32_Ru.rc, dlls/shell32/shell32_Si.rc,
	  dlls/shell32/shell32_Sk.rc, dlls/shell32/shell32_Sv.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_Wa.rc, dlls/shell32/shell32_Zh.rc,
	  dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shell32_xx.rc, dlls/shell32/shellfolder.h,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellreg.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/shlfsbind.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c, dlls/shell32/tests/shell32_test.h,
	  dlls/shell32/tests/shelllink.c, dlls/shell32/tests/shellpath.c,
	  dlls/shell32/tests/shlexec.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shell32/tests/shlfolder.c, dlls/shell32/tests/string.c,
	  dlls/shell32/undocshell.h, dlls/shell32/version.h,
	  dlls/shell32/version.rc, dlls/shell32/version16.rc,
	  dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c, dlls/shlwapi/istream.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c,
	  dlls/shlwapi/reg.c, dlls/shlwapi/regstream.c,
	  dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/shlwapi/shlwapi_En.rc,
	  dlls/shlwapi/shlwapi_Eo.rc, dlls/shlwapi/shlwapi_Es.rc,
	  dlls/shlwapi/shlwapi_Fi.rc, dlls/shlwapi/shlwapi_Fr.rc,
	  dlls/shlwapi/shlwapi_Hu.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/shlwapi/shlwapi_Ja.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/shlwapi/shlwapi_No.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/shlwapi_main.c, dlls/shlwapi/stopwatch.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/clsid.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/path.c, dlls/shlwapi/tests/shreg.c,
	  dlls/shlwapi/tests/string.c, dlls/shlwapi/thread.c,
	  dlls/shlwapi/url.c, dlls/shlwapi/version.rc, dlls/shlwapi/wsprintf.c,
	  dlls/snmpapi/main.c, dlls/spoolss/spoolss_main.c,
	  dlls/stdole2.tlb/rsrc.rc, dlls/stdole2.tlb/std_ole_v2.idl,
	  dlls/stdole32.tlb/rsrc.rc, dlls/stdole32.tlb/std_ole_v1.idl,
	  dlls/sti/sti_main.c, dlls/strmiids/strmiids.c,
	  dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_i.h,
	  dlls/url/url_main.c, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/regsvr.c, dlls/urlmon/rsrc.rc,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/tests/misc.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/tests/url.c, dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h,
	  dlls/urlmon/version.rc, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c, dlls/user/ddeml16.c,
	  dlls/user/defdlg.c, dlls/user/defwnd.c, dlls/user/desktop.c,
	  dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/driver.c, dlls/user/driver16.c, dlls/user/edit.c,
	  dlls/user/exticon.c, dlls/user/focus.c, dlls/user/hook.c,
	  dlls/user/hook16.c, dlls/user/icontitle.c, dlls/user/input.c,
	  dlls/user/kbd16.c, dlls/user/listbox.c, dlls/user/lstr.c,
	  dlls/user/mdi.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc,
	  dlls/user/tests/sysparams.c, dlls/user/tests/text.c,
	  dlls/user/tests/win.c, dlls/user/tests/winstation.c,
	  dlls/user/tests/wsprintf.c, dlls/user/text.c, dlls/user/uitools.c,
	  dlls/user/user16.c, dlls/user/user_main.c, dlls/user/user_private.h,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/winstation.c,
	  dlls/user/wnd16.c, dlls/user/wsprintf.c, dlls/usp10/tests/usp10.c,
	  dlls/usp10/usp10.c, dlls/uuid/uuid.c, dlls/uxtheme/draw.c,
	  dlls/uxtheme/main.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/msstyles.h, dlls/uxtheme/property.c,
	  dlls/uxtheme/stylemap.c, dlls/uxtheme/system.c, dlls/uxtheme/uxini.c,
	  dlls/uxtheme/uxthemedll.h, dlls/uxtheme/version.rc,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vdmdbg/vdmdbg.c, dlls/version/info.c,
	  dlls/version/install.c, dlls/version/resource.c,
	  dlls/version/tests/info.c, dlls/version/tests/install.c,
	  dlls/version/tests/version.rc, dlls/version/ver16.c,
	  dlls/vmm.vxd/vmm.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32sys.c, dlls/w32skrnl/win32s16.c,
	  dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_main.c, dlls/winecrt0/exe_wentry.c,
	  dlls/winecrt0/exe_wmain.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h, dlls/winedos/devices.c,
	  dlls/winedos/dma.c, dlls/winedos/dosaspi.c, dlls/winedos/dosconf.c,
	  dlls/winedos/dosexe.h, dlls/winedos/dosmem.c, dlls/winedos/dosvm.c,
	  dlls/winedos/dosvm.h, dlls/winedos/fpu.c, dlls/winedos/himem.c,
	  dlls/winedos/int09.c, dlls/winedos/int10.c, dlls/winedos/int11.c,
	  dlls/winedos/int13.c, dlls/winedos/int15.c, dlls/winedos/int16.c,
	  dlls/winedos/int17.c, dlls/winedos/int19.c, dlls/winedos/int1a.c,
	  dlls/winedos/int20.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int29.c, dlls/winedos/int2f.c,
	  dlls/winedos/int31.c, dlls/winedos/int33.c, dlls/winedos/int41.c,
	  dlls/winedos/int5c.c, dlls/winedos/int67.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/ppdev.c, dlls/winedos/relay.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/timer.c,
	  dlls/winedos/vga.c, dlls/winedos/vga.h, dlls/winedos/vxd.c,
	  dlls/winedos/xms.c, dlls/winemp3.acm/common.c,
	  dlls/winemp3.acm/dct64_i386.c, dlls/winemp3.acm/decode_i386.c,
	  dlls/winemp3.acm/huffman.h, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer1.c,
	  dlls/winemp3.acm/layer2.c, dlls/winemp3.acm/layer3.c,
	  dlls/winemp3.acm/mpegl3.c, dlls/winemp3.acm/mpg123.h,
	  dlls/winemp3.acm/mpglib.h, dlls/winemp3.acm/tabinit.c,
	  dlls/wineps/afm.c, dlls/wineps/afm2c.c, dlls/wineps/bitblt.c,
	  dlls/wineps/bitmap.c, dlls/wineps/brush.c, dlls/wineps/builtin.c,
	  dlls/wineps/clipping.c, dlls/wineps/color.c, dlls/wineps/download.c,
	  dlls/wineps/driver.c, dlls/wineps/encode.c, dlls/wineps/escape.c,
	  dlls/wineps/font.c, dlls/wineps/glyphlist.c, dlls/wineps/graphics.c,
	  dlls/wineps/init.c, dlls/wineps/mkagl.c, dlls/wineps/objects.c,
	  dlls/wineps/pen.c, dlls/wineps/ppd.c, dlls/wineps/ps.c,
	  dlls/wineps/psdlg.h, dlls/wineps/psdrv.h, dlls/wineps/rsrc.rc,
	  dlls/wineps/text.c, dlls/wineps/truetype.c, dlls/wineps/type1.c,
	  dlls/wineps/type1afm.c, dlls/wineps/type42.c, dlls/wineps/wps_Bg.rc,
	  dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc, dlls/wineps/wps_En.rc,
	  dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc, dlls/wineps/wps_Hu.rc,
	  dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc, dlls/wineps/wps_Ko.rc,
	  dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc, dlls/wineps/wps_Pt.rc,
	  dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc, dlls/wineps/wps_Sk.rc,
	  dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc, dlls/wininet/cookie.c,
	  dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/gopher.c,
	  dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c,
	  dlls/wininet/resource.h, dlls/wininet/rsrc.rc,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/internet.c,
	  dlls/wininet/tests/url.c, dlls/wininet/tests/wininet_test.h,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c,
	  dlls/wininet/version.rc, dlls/wininet/wininet_Bg.rc,
	  dlls/wininet/wininet_Cs.rc, dlls/wininet/wininet_De.rc,
	  dlls/wininet/wininet_En.rc, dlls/wininet/wininet_Eo.rc,
	  dlls/wininet/wininet_Es.rc, dlls/wininet/wininet_Fi.rc,
	  dlls/wininet/wininet_Fr.rc, dlls/wininet/wininet_Hu.rc,
	  dlls/wininet/wininet_It.rc, dlls/wininet/wininet_Ja.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/wininet/wininet_No.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/wininet/wininet_Ru.rc, dlls/wininet/wininet_Si.rc,
	  dlls/wininet/wininet_Tr.rc, dlls/wininet/wininet_main.c,
	  dlls/winmm/driver.c, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/tests/capture.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/tests/mmio.c, dlls/winmm/tests/timer.c,
	  dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h,
	  dlls/winmm/time.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/winearts/arts.h, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineaudioio/audio.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/winejack/audio.c,
	  dlls/winmm/winejack/jack.c, dlls/winmm/winejack/jack.h,
	  dlls/winmm/winemm.h, dlls/winmm/winemm16.h,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/winmm.c, dlls/winmm/winmm_Cs.rc,
	  dlls/winmm/winmm_De.rc, dlls/winmm/winmm_En.rc,
	  dlls/winmm/winmm_Es.rc, dlls/winmm/winmm_Fr.rc,
	  dlls/winmm/winmm_It.rc, dlls/winmm/winmm_Ja.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_Nl.rc,
	  dlls/winmm/winmm_No.rc, dlls/winmm/winmm_Pt.rc,
	  dlls/winmm/winmm_Ru.rc, dlls/winmm/winmm_Si.rc,
	  dlls/winmm/winmm_Sk.rc, dlls/winmm/winmm_Tr.rc,
	  dlls/winmm/winmm_res.rc, dlls/winnls32/winnls.c, dlls/winspool/Bg.rc,
	  dlls/winspool/De.rc, dlls/winspool/En.rc, dlls/winspool/Eo.rc,
	  dlls/winspool/Fi.rc, dlls/winspool/It.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.rc, dlls/winspool/wspool.c,
	  dlls/winspool/wspool.h, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c, dlls/wintab32/wintab_internal.h,
	  dlls/wintrust/version.rc, dlls/wintrust/wintrust_main.c,
	  dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/main.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/page.c, dlls/wldap32/parse.c,
	  dlls/wldap32/rename.c, dlls/wldap32/search.c, dlls/wldap32/value.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_De.rc,
	  dlls/wldap32/wldap32_En.rc, dlls/wldap32/wldap32_Fr.rc,
	  dlls/wldap32/wldap32_Ko.rc, dlls/wldap32/wldap32_Nl.rc,
	  dlls/wldap32/wldap32_No.rc, dlls/wldap32/wldap32_Ru.rc,
	  dlls/wldap32/wldap32_Tr.rc, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/aspi.h, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wow32/wow_main.c, dlls/ws2_32/async.c, dlls/ws2_32/protocol.c,
	  dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/wsock32/protocol.c,
	  dlls/wsock32/service.c, dlls/wsock32/socket.c,
	  dlls/wsock32/version.rc, dlls/wsock32/wscontrol.h,
	  dlls/wtsapi32/wtsapi32.c, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winpos.c, dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c,
	  dlls/x11drv/x11ddraw.h, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c,
	  dlls/x11drv/xfont.c, dlls/x11drv/xim.c, dlls/x11drv/xrandr.c,
	  dlls/x11drv/xrandr.h, dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h, fonts/courier.sfd, fonts/marlett.sfd,
	  fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd, fonts/system.sfd,
	  include/accctrl.h, include/aclapi.h, include/activscp.idl,
	  include/adshlp.h, include/advpub.h, include/amstream.idl,
	  include/amvideo.idl, include/appmgmt.h, include/audevcod.h,
	  include/austream.idl, include/aviriff.h, include/axcore.idl,
	  include/axextend.idl, include/basetsd.h, include/basetyps.h,
	  include/cderr.h, include/cguid.h, include/comcat.idl,
	  include/commctrl.h, include/commdlg.h, include/compobj.h,
	  include/control.idl, include/cpl.h, include/custcntl.h,
	  include/cvconst.h, include/d3d.h, include/d3d8.h, include/d3d8caps.h,
	  include/d3d8types.h, include/d3d9.h, include/d3d9caps.h,
	  include/d3d9types.h, include/d3dcaps.h, include/d3dhal.h,
	  include/d3drm.h, include/d3dtypes.h, include/d3dvec.inl,
	  include/d3dx8core.h, include/dbghelp.h, include/dbt.h,
	  include/dciddi.h, include/dciman.h, include/dde.h, include/ddeml.h,
	  include/ddk/cfgmgr32.h, include/ddk/ntddcdvd.h,
	  include/ddk/ntddser.h, include/ddk/ntddtape.h, include/ddk/wdm.h,
	  include/ddk/winsplp.h, include/ddraw.h, include/ddrawi.h,
	  include/ddstream.idl, include/devenum.idl, include/devguid.h,
	  include/digitalv.h, include/dinput.h, include/dispdib.h,
	  include/dispex.idl, include/dlgs.h, include/dls1.h, include/dls2.h,
	  include/dmdls.h, include/dmerror.h, include/dmo.h, include/dmoreg.h,
	  include/dmort.h, include/dmplugin.h, include/dmusbuff.h,
	  include/dmusicc.h, include/dmusicf.h, include/dmusici.h,
	  include/dmusics.h, include/docobj.idl, include/downloadmgr.idl,
	  include/dpaddr.h, include/dplay.h, include/dplay8.h,
	  include/dplobby.h, include/dplobby8.h, include/dpnathlp.h,
	  include/dsconf.h, include/dsdriver.h, include/dshow.h,
	  include/dsound.h, include/dsrole.h, include/dxdiag.h,
	  include/dxerr8.h, include/dxerr9.h, include/dxfile.h,
	  include/dyngraph.idl, include/errors.h, include/evcode.h,
	  include/evntrace.h, include/excpt.h, include/exdisp.idl,
	  include/exdispid.h, include/fci.h, include/fdi.h, include/gdi.h,
	  include/guiddef.h, include/heap.h, include/hlink.idl,
	  include/htmlhelp.h, include/iads.idl, include/icm.h,
	  include/icmpapi.h, include/idispids.h, include/imagehlp.h,
	  include/imm.h, include/initguid.h, include/ipexport.h,
	  include/iphlpapi.h, include/ipifcons.h, include/iprtrmib.h,
	  include/iptypes.h, include/ks.h, include/ksguid.h, include/ksmedia.h,
	  include/lm.h, include/lmaccess.h, include/lmapibuf.h,
	  include/lmbrowsr.h, include/lmcons.h, include/lmerr.h,
	  include/lmjoin.h, include/lmserver.h, include/lmshare.h,
	  include/lmstats.h, include/lmwksta.h, include/lzexpand.h,
	  include/mapi.h, include/mapicode.h, include/mapidefs.h,
	  include/mapiguid.h, include/mapitags.h, include/mapiutil.h,
	  include/mapival.h, include/mapix.h, include/mciavi.h, include/mcx.h,
	  include/mediaerr.h, include/mediaobj.idl, include/mimeinfo.idl,
	  include/minmax.h, include/mlang.idl, include/mmddk.h,
	  include/mmreg.h, include/mmstream.idl, include/mmsystem.h,
	  include/mprapi.h, include/msacm.h, include/msacmdlg.h,
	  include/msacmdrv.h, include/mscat.h, include/mshtmcid.h,
	  include/mshtmdid.h, include/mshtmhst.idl, include/mshtml.idl,
	  include/msi.h, include/msidefs.h, include/msiquery.h,
	  include/mssip.h, include/msvcrt/crtdbg.h, include/msvcrt/eh.h,
	  include/msvcrt/errno.h, include/msvcrt/locale.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbctype.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/setjmp.h, include/msvcrt/signal.h,
	  include/msvcrt/stddef.h, include/msvcrt/sys/locking.h,
	  include/msvcrt/sys/timeb.h, include/msvcrt/sys/types.h,
	  include/msvcrt/sys/utime.h, include/msvcrt/time.h,
	  include/msvcrt/wctype.h, include/mswsock.h, include/msxml.idl,
	  include/msxml2.idl, include/msxml2did.h, include/msxmldid.h,
	  include/nb30.h, include/ndrtypes.h, include/npapi.h,
	  include/nspapi.h, include/ntddcdrm.h, include/ntddscsi.h,
	  include/ntddstor.h, include/ntdsapi.h, include/ntsecapi.h,
	  include/ntstatus.h, include/oaidl.idl, include/objbase.h,
	  include/objidl.idl, include/objsafe.idl, include/ocidl.idl,
	  include/odbcinst.h, include/ole2.h, include/ole2ver.h,
	  include/oleauto.h, include/olectl.h, include/oledlg.h,
	  include/oleidl.idl, include/pktdef.h, include/poppack.h,
	  include/powrprof.h, include/propidl.idl, include/prsht.h,
	  include/psapi.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h, include/pstore.idl,
	  include/ras.h, include/reason.h, include/regstr.h,
	  include/richedit.h, include/richole.idl, include/rpc.h,
	  include/rpcdce.h, include/rpcdcep.h, include/rpcndr.h,
	  include/rpcnterr.h, include/rpcproxy.h, include/schannel.h,
	  include/schemadef.h, include/schnlsp.h, include/sddl.h,
	  include/secext.h, include/security.h, include/sensapi.h,
	  include/sensevts.idl, include/servprov.idl, include/setupapi.h,
	  include/sfc.h, include/shellapi.h, include/shldisp.idl,
	  include/shlguid.h, include/shlobj.h, include/shlwapi.h,
	  include/shobjidl.idl, include/shtypes.idl, include/sipbase.h,
	  include/snmp.h, include/softpub.h, include/sql.h, include/sqlext.h,
	  include/sqltypes.h, include/sspi.h, include/storage.h,
	  include/strmif.idl, include/tapi.h, include/tchar.h,
	  include/textserv.h, include/thread.h, include/tlhelp32.h,
	  include/tmschema.h, include/unknwn.idl, include/urlmon.idl,
	  include/usp10.h, include/uuids.h, include/uxtheme.h, include/ver.h,
	  include/vfw.h, include/vfwmsgs.h, include/win.h, include/winbase.h,
	  include/wincon.h, include/wincrypt.h, include/windef.h,
	  include/windns.h, include/windows.h, include/windowsx.h,
	  include/wine/debug.h, include/wine/exception.h,
	  include/wine/itss.idl, include/wine/library.h, include/wine/list.h,
	  include/wine/mmsystem16.h, include/wine/port.h,
	  include/wine/pthread.h, include/wine/rpcss_shared.h,
	  include/wine/server.h, include/wine/test.h, include/wine/unicode.h,
	  include/wine/winaspi.h, include/wine/winbase16.h,
	  include/wine/windef16.h, include/wine/wine_common_ver.rc,
	  include/wine/wined3d_gl.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h, include/wine/wingdi16.h,
	  include/wine/winnet16.h, include/wine/winsock16.h,
	  include/wine/winuser16.h, include/wine/wpp.h, include/winerror.h,
	  include/wingdi.h, include/wininet.h, include/winioctl.h,
	  include/winldap.h, include/winnetwk.h, include/winnls.h,
	  include/winnls32.h, include/winnt.h, include/winpos.h,
	  include/winreg.h, include/winres.h, include/winresrc.h,
	  include/winsock.h, include/winsock2.h, include/winspool.h,
	  include/winsvc.h, include/wintab.h, include/wintabx.h,
	  include/winternl.h, include/wintrust.h, include/winuser.h,
	  include/winver.h, include/wmistr.h, include/wnaspi32.h,
	  include/wownt32.h, include/ws2spi.h, include/ws2tcpip.h,
	  include/wshisotp.h, include/wsipx.h, include/wsnwlink.h,
	  include/wtsapi32.h, include/wtypes.idl, include/xcmc.h,
	  include/xmldom.idl, include/xmldomdid.h, include/xmldso.idl,
	  include/xmldsodid.h, include/zmouse.h, libs/port/ffs.c,
	  libs/port/fstatvfs.c, libs/port/futimes.c, libs/port/getopt.c,
	  libs/port/getopt.h, libs/port/getopt1.c, libs/port/getpagesize.c,
	  libs/port/gettid.c, libs/port/interlocked.c, libs/port/lstat.c,
	  libs/port/memcpy_unaligned.c, libs/port/memmove.c,
	  libs/port/mkstemps.c, libs/port/pread.c, libs/port/pwrite.c,
	  libs/port/readlink.c, libs/port/sigsetjmp.c, libs/port/spawn.c,
	  libs/port/statvfs.c, libs/port/strcasecmp.c, libs/port/strerror.c,
	  libs/port/strncasecmp.c, libs/port/usleep.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c, libs/unicode/defaults, libs/unicode/fold.c,
	  libs/unicode/mbtowc.c, libs/unicode/sortkey.c, libs/unicode/string.c,
	  libs/unicode/utf8.c, libs/unicode/wctomb.c, libs/wine/config.c,
	  libs/wine/debug.c, libs/wine/ldt.c, libs/wine/loader.c,
	  libs/wine/mmap.c, libs/wine/port.c, libs/wpp/ppl.l, libs/wpp/ppy.y,
	  libs/wpp/preproc.c, libs/wpp/wpp.c, libs/wpp/wpp_private.h,
	  loader/glibc.c, loader/kthread.c, loader/main.c, loader/main.h,
	  loader/preloader.c, loader/pthread.c, programs/clock/Cs.rc,
	  programs/clock/Da.rc, programs/clock/De.rc, programs/clock/En.rc,
	  programs/clock/Eo.rc, programs/clock/Es.rc, programs/clock/Fi.rc,
	  programs/clock/Fr.rc, programs/clock/Hu.rc, programs/clock/It.rc,
	  programs/clock/Ko.rc, programs/clock/Nl.rc, programs/clock/No.rc,
	  programs/clock/Pl.rc, programs/clock/Pt.rc, programs/clock/Ru.rc,
	  programs/clock/Si.rc, programs/clock/Sk.rc, programs/clock/Sw.rc,
	  programs/clock/Th.rc, programs/clock/Tr.rc, programs/clock/Wa.rc,
	  programs/clock/Zh.rc, programs/clock/clock_res.h,
	  programs/clock/main.c, programs/clock/main.h, programs/clock/rsrc.rc,
	  programs/clock/winclock.c, programs/clock/winclock.h,
	  programs/cmdlgtst/Cs.rc, programs/cmdlgtst/De.rc,
	  programs/cmdlgtst/En.rc, programs/cmdlgtst/Es.rc,
	  programs/cmdlgtst/Fr.rc, programs/cmdlgtst/It.rc,
	  programs/cmdlgtst/Ko.rc, programs/cmdlgtst/Nl.rc,
	  programs/cmdlgtst/No.rc, programs/cmdlgtst/Pt.rc,
	  programs/cmdlgtst/Ru.rc, programs/cmdlgtst/Si.rc,
	  programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc,
	  programs/cmdlgtst/cmdlgtst.c, programs/cmdlgtst/cmdlgtst.h,
	  programs/control/control.c, programs/control/params.h,
	  programs/eject/eject.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/explorer/explorer.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c,
	  programs/explorer/systray.c, programs/hh/main.c,
	  programs/icinfo/icinfo.c, programs/iexplore/main.c,
	  programs/make_progs, programs/msiexec/msiexec.c,
	  programs/msiexec/rsrc.rc, programs/msiexec/version.rc,
	  programs/notepad/Bg.rc, programs/notepad/Cs.rc,
	  programs/notepad/Da.rc, programs/notepad/De.rc,
	  programs/notepad/En.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc, programs/notepad/dialog.c,
	  programs/notepad/dialog.h, programs/notepad/main.c,
	  programs/notepad/main.h, programs/notepad/notepad_res.h,
	  programs/notepad/rsrc.rc, programs/progman/Cs.rc,
	  programs/progman/Da.rc, programs/progman/De.rc,
	  programs/progman/En.rc, programs/progman/Es.rc,
	  programs/progman/Fi.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Sk.rc, programs/progman/Sw.rc,
	  programs/progman/Tr.rc, programs/progman/Va.rc,
	  programs/progman/Wa.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc, programs/progman/accel.rc,
	  programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/grpfile.c, programs/progman/main.c,
	  programs/progman/progman.h, programs/progman/program.c,
	  programs/progman/rsrc.rc, programs/progman/string.c,
	  programs/regedit/Bg.rc, programs/regedit/Cs.rc,
	  programs/regedit/De.rc, programs/regedit/En.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Ko.rc,
	  programs/regedit/Nl.rc, programs/regedit/No.rc,
	  programs/regedit/Pl.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc,
	  programs/regedit/Tr.rc, programs/regedit/about.c,
	  programs/regedit/childwnd.c, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/regedit/main.c,
	  programs/regedit/main.h, programs/regedit/regedit.c,
	  programs/regedit/regproc.c, programs/regedit/regproc.h,
	  programs/regedit/resource.h, programs/regedit/resource.rc,
	  programs/regedit/rsrc.rc, programs/regedit/treeview.c,
	  programs/regsvr32/regsvr32.c, programs/regsvr32/regsvr32.rc,
	  programs/rpcss/epmap_server.c, programs/rpcss/np_server.c,
	  programs/rpcss/rpcss.h, programs/rpcss/rpcss_main.c,
	  programs/rundll32/rundll32.c, programs/start/Cs.rc,
	  programs/start/De.rc, programs/start/En.rc, programs/start/Es.rc,
	  programs/start/Fr.rc, programs/start/It.rc, programs/start/Ko.rc,
	  programs/start/Nl.rc, programs/start/No.rc, programs/start/Pt.rc,
	  programs/start/Ru.rc, programs/start/Si.rc, programs/start/Tr.rc,
	  programs/start/resources.h, programs/start/rsrc.rc,
	  programs/start/start.c, programs/taskmgr/De.rc,
	  programs/taskmgr/En.rc, programs/taskmgr/Fr.rc,
	  programs/taskmgr/Ko.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/No.rc, programs/taskmgr/Tr.rc,
	  programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/applpage.c, programs/taskmgr/column.c,
	  programs/taskmgr/column.h, programs/taskmgr/dbgchnl.c,
	  programs/taskmgr/debug.c, programs/taskmgr/endproc.c,
	  programs/taskmgr/graph.c, programs/taskmgr/graphctl.c,
	  programs/taskmgr/graphctl.h, programs/taskmgr/optnmenu.c,
	  programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h,
	  programs/taskmgr/perfpage.c, programs/taskmgr/priority.c,
	  programs/taskmgr/proclist.c, programs/taskmgr/procpage.c,
	  programs/taskmgr/run.c, programs/taskmgr/taskmgr.c,
	  programs/taskmgr/taskmgr.h, programs/taskmgr/taskmgr.rc,
	  programs/taskmgr/trayicon.c, programs/uninstaller/Bg.rc,
	  programs/uninstaller/Cs.rc, programs/uninstaller/De.rc,
	  programs/uninstaller/En.rc, programs/uninstaller/Eo.rc,
	  programs/uninstaller/Es.rc, programs/uninstaller/Fi.rc,
	  programs/uninstaller/Fr.rc, programs/uninstaller/It.rc,
	  programs/uninstaller/Ko.rc, programs/uninstaller/No.rc,
	  programs/uninstaller/Pt.rc, programs/uninstaller/Tr.rc,
	  programs/uninstaller/main.c, programs/uninstaller/resource.h,
	  programs/uninstaller/rsrc.rc, programs/view/Cs.rc,
	  programs/view/De.rc, programs/view/En.rc, programs/view/Eo.rc,
	  programs/view/Es.rc, programs/view/Fr.rc, programs/view/It.rc,
	  programs/view/Ko.rc, programs/view/Nl.rc, programs/view/No.rc,
	  programs/view/Pt.rc, programs/view/Ru.rc, programs/view/Si.rc,
	  programs/view/Tr.rc, programs/view/globals.h, programs/view/init.c,
	  programs/view/resource.h, programs/view/view.c,
	  programs/view/viewrc.rc, programs/view/winmain.c,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Nl.rc, programs/wcmd/No.rc,
	  programs/wcmd/Pl.rc, programs/wcmd/Pt.rc, programs/wcmd/Ru.rc,
	  programs/wcmd/Si.rc, programs/wcmd/Tr.rc, programs/wcmd/batch.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c,
	  programs/wcmd/wcmdrc.rc, programs/wineapploader.in,
	  programs/wineboot/wineboot.c, programs/winebrowser/main.c,
	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Si.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/appdefaults.c,
	  programs/winecfg/audio.c, programs/winecfg/drive.c,
	  programs/winecfg/drivedetect.c, programs/winecfg/driveui.c,
	  programs/winecfg/libraries.c, programs/winecfg/main.c,
	  programs/winecfg/properties.h, programs/winecfg/resource.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h, programs/winecfg/winecfg.rc,
	  programs/winecfg/x11drvdlg.c, programs/wineconsole/curses.c,
	  programs/wineconsole/dialog.c, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/winecon_user.h,
	  programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_Cs.rc,
	  programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_Es.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Hu.rc,
	  programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_Nl.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_Pt.rc,
	  programs/wineconsole/wineconsole_Ru.rc,
	  programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_Zh.rc,
	  programs/wineconsole/wineconsole_res.h,
	  programs/wineconsole/wineconsole_res.rc, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/break.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/expr.c, programs/winedbg/expr.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/intvar.h, programs/winedbg/memory.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c, programs/winefile/Cs.rc,
	  programs/winefile/De.rc, programs/winefile/En.rc,
	  programs/winefile/Es.rc, programs/winefile/Fr.rc,
	  programs/winefile/Hu.rc, programs/winefile/It.rc,
	  programs/winefile/Ko.rc, programs/winefile/Nl.rc,
	  programs/winefile/No.rc, programs/winefile/Pl.rc,
	  programs/winefile/Pt.rc, programs/winefile/Ru.rc,
	  programs/winefile/Si.rc, programs/winefile/Sv.rc,
	  programs/winefile/Tr.rc, programs/winefile/Zh.rc,
	  programs/winefile/resource.h, programs/winefile/resource.rc,
	  programs/winefile/rsrc.rc, programs/winefile/splitpath.c,
	  programs/winefile/winefile.c, programs/winefile/winefile.h,
	  programs/winelauncher.in, programs/winemenubuilder/winemenubuilder.c,
	  programs/winemine/Cs.rc, programs/winemine/De.rc,
	  programs/winemine/En.rc, programs/winemine/Es.rc,
	  programs/winemine/Fi.rc, programs/winemine/Fr.rc,
	  programs/winemine/It.rc, programs/winemine/Ko.rc,
	  programs/winemine/Nl.rc, programs/winemine/No.rc,
	  programs/winemine/Pl.rc, programs/winemine/Pt.rc,
	  programs/winemine/Ru.rc, programs/winemine/Si.rc,
	  programs/winemine/Tr.rc, programs/winemine/dialog.c,
	  programs/winemine/dialog.h, programs/winemine/main.c,
	  programs/winemine/main.h, programs/winemine/resource.h,
	  programs/winemine/rsrc.rc, programs/winepath/winepath.c,
	  programs/winetest/dist.rc, programs/winetest/gui.c,
	  programs/winetest/main.c, programs/winetest/resource.h,
	  programs/winetest/send.c, programs/winetest/util.c,
	  programs/winetest/winetest.h, programs/winetest/winetest.rc,
	  programs/winevdm/winevdm.c, 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/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.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/winver/winver.c,
	  programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/Fr.rc, programs/wordpad/Hu.rc,
	  programs/wordpad/Ko.rc, programs/wordpad/Nl.rc,
	  programs/wordpad/No.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c, server/atom.c,
	  server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/console.h, server/context_alpha.c,
	  server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/directory.c, server/event.c, server/fd.c, server/file.c,
	  server/file.h, server/handle.c, server/handle.h, server/hook.c,
	  server/mailslot.c, server/main.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/process.h, server/protocol.def,
	  server/ptrace.c, server/queue.c, server/region.c, server/registry.c,
	  server/request.c, server/request.h, server/security.h,
	  server/semaphore.c, server/serial.c, server/signal.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/unicode.c, server/unicode.h, server/user.c, server/user.h,
	  server/window.c, server/winstation.c, tools/bin2res.c,
	  tools/bug_report.pl, tools/c2man.pl, tools/examine-relay,
	  tools/fnt2bdf.c, tools/fnt2bdf.h, tools/fnt2fon.c,
	  tools/font_convert.sh, tools/genpatch, tools/make_authors,
	  tools/make_ctests.c, tools/make_requests, tools/makedep.c,
	  tools/relpath.c, tools/runtest, tools/sfnt2fnt.c,
	  tools/widl/client.c, tools/widl/hash.c, tools/widl/hash.h,
	  tools/widl/header.c, tools/widl/header.h, tools/widl/parser.h,
	  tools/widl/parser.l, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/typelib_struct.h, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c, tools/winapi/c_function.pm,
	  tools/winapi/c_parser.pm, tools/winapi/c_type.pm,
	  tools/winapi/config.pm, tools/winapi/function.pm,
	  tools/winapi/make_filter, tools/winapi/make_filter_options.pm,
	  tools/winapi/make_parser.pm, tools/winapi/modules.pm,
	  tools/winapi/msvcmaker_options.pm, tools/winapi/nativeapi.pm,
	  tools/winapi/options.pm, tools/winapi/output.pm,
	  tools/winapi/preprocessor.pm, tools/winapi/setup.pm,
	  tools/winapi/tests.pm, tools/winapi/trampoline, tools/winapi/type.pm,
	  tools/winapi/util.pm, tools/winapi/winapi.pm,
	  tools/winapi/winapi_c_parser.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_check_options.pm, tools/winapi/winapi_cleanup,
	  tools/winapi/winapi_cleanup_options.pm,
	  tools/winapi/winapi_documentation.pm, tools/winapi/winapi_extract,
	  tools/winapi/winapi_extract_options.pm, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_fixup_documentation.pm,
	  tools/winapi/winapi_fixup_editor.pm,
	  tools/winapi/winapi_fixup_options.pm,
	  tools/winapi/winapi_fixup_statements.pm,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_global.pm,
	  tools/winapi/winapi_local.pm, tools/winapi/winapi_module_user.pm,
	  tools/winapi/winapi_parser.pm, tools/winapi/winapi_test,
	  tools/winapi/winapi_test_options.pm, tools/wine.inf,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/parser.c,
	  tools/winebuild/relay.c, tools/winebuild/res16.c,
	  tools/winebuild/res32.c, tools/winebuild/spec16.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winedump/cvinclude.h, tools/winedump/debug.c,
	  tools/winedump/dump.c, tools/winedump/emf.c,
	  tools/winedump/function_grep.pl, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/minidump.c, tools/winedump/misc.c,
	  tools/winedump/msmangle.c, tools/winedump/ne.c,
	  tools/winedump/output.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/search.c, tools/winedump/symbol.c,
	  tools/winedump/winedump.h, tools/winegcc/utils.c,
	  tools/winegcc/utils.h, tools/winegcc/winegcc.c, tools/wineinstall,
	  tools/winemaker, tools/wineprefixcreate.in, tools/wineshelllink,
	  tools/winewrapper, tools/wmc/lang.c, tools/wmc/lang.h,
	  tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c,
	  tools/wmc/utils.h, tools/wmc/wmc.c, tools/wmc/wmc.h,
	  tools/wmc/wmctypes.h, tools/wmc/write.c, tools/wmc/write.h,
	  tools/wrc/dumpres.c, tools/wrc/dumpres.h, tools/wrc/genres.c,
	  tools/wrc/genres.h, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.h, tools/wrc/parser.l, tools/wrc/parser.y,
	  tools/wrc/readres.c, tools/wrc/readres.h, tools/wrc/translation.c,
	  tools/wrc/utils.c, tools/wrc/utils.h, tools/wrc/wrc.c,
	  tools/wrc/wrc.h, tools/wrc/wrctypes.h, tools/wrc/writeres.c:
	Update the address of the Free Software Foundation.

2006-05-21  Labrousse Jean <jlabrous@altern.org>

	* dlls/msi/action.c:
	msi: Fix short name and long name mismatch in action.c.

2006-05-23  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Fix excessive file sizes for Storage files.
	The IStorage (DocFile) implementation was adding empty blocks at the
	end of the file every time a caller wrote data that was not a multiple
	of 512 bytes.  If the caller made a lot of very small writes the file
	size could be huge even though the data in the file was tiny. This was
	caused by BlockChainStream_SetSize trying to allocate file blocks for
	the new data using a condition that bore no relationship to the
	required condition, and it was not necessary to do so at that time
	since it is done (the right way) by StorageImpl_GetNextFreeBigBlock
	(called via BlockChainStream_Enlarge).

2006-05-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user/tests: Don't generate a mouse click message in mouse_ll_global_thread_proc.
	Windows doesn't like when a thread plays games with the focus, that
	leads to all kinds of misbehaviours and failures to activate a
	window. So, better don't generate a mouse click message in
	mouse_ll_global_thread_proc.

	* dlls/user/tests/msg.c:
	user/tests: Add lparam to all HCBT_MINMAX hook messages.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: OpengGL accelerated blits.
	Implement some basic opengl accelerated blts from and to render
	targets. It's not perfect yet, but enought to make some D3D apps
	happy. For now the only supported operations are:
	- Full screen back -> Front buffer: Just call present
	- Offscreen surface -> render target
	- Render target -> offscreen surface(slow)
	- render target colorfill

2006-05-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Surface pixel format conversion code.

2006-05-22  Robert Shearman <rob@codeweavers.com>

	* server/queue.c:
	server: Don't clear the QS_POSTMESSAGE flag if there is a pending quit message.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the outer unknown in the proxybuffer test.
	Release the outer unknown in the proxybuffer test to show that the
	last release of the outer unknown doesn't free the proxy buffer.

	* dlls/ole32/marshal.c, dlls/ole32/oleproxy.c:
	ole32: Release the proxy buffer object on the last release of the proxy's
	outer unknown.
	Release the proxy buffer object on the last release of the proxy's outer
	unknown, otherwise memory is leaked for the Ndr implementation of
	IRpcProxyBuffer.
	Fix up the hand-coded proxies to match the behaviour from the Ndr
	implementation.

	* dlls/wininet/tests/url.c:
	wininet: Fix a failing test.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix copying too much data from the buffer by not taking into account
	the fact that auth_pad_len has been included in the fragment length.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Authentication padding should only be generated if there is
	authentication data.

	* include/winbase.h:
	include: Add defines used in CopyFileEx.

	* include/guiddef.h:
	include: Make guiddef.h defines match PSDK.
	Protect LPGUID typedef by __LPGUID_DEFINED__ being defined.
	Protect LPCLSID and LPFMTID typedefs, IsEqualGUID, IsEqualIID,
	IsEqualCLSID, IID_NULL, CLSID_NULL and FMTID_NULL defines by
	__IID_DEFINED__ being defined.

2006-05-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Added A<->W mapping for WM_GETDLGCODE.

2006-05-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/quartz/main.c, dlls/quartz/quartz.spec, include/Makefile.in,
	  include/dshow.h, include/errors.h:
	quartz: Add stub implementation for AMGetErrorText{A,W}.

2006-05-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Simplify input/output modifier line handling.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up register use maps.

	* dlls/wined3d/drawprim.c:
	wined3d: Allow use of pixel shaders with drawStridedSlow.

	* dlls/wined3d/vertexshader.c:
	wined3d: Only run parse_decl_usage on vshader INPUT registers.

2006-05-22  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Skip token attribute testing if OpenProcessToken() is not implemented.

2006-05-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Make test loadable on win9x.

2006-05-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/test: Disable a test that crashes on win9x.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Remove cross calls W->A for the "Printers" registry path.

2006-05-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: An empty string as server name is valid (EnumPrinterDrivers).

2006-05-21  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction026+027.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction011.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Test and implement SystemFunction024/025.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction(012-023).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction010.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction009.

2006-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdsapi/ntdsapi.spec:
	ntdsapi: Add DsMakeSpnA to the spec file.

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Create fake dlls for ADPCM codecs.

2006-05-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/version.rc, dlls/d3d9/version.rc, dlls/ddraw/version.rc,
	  dlls/dmusic/version.rc, dlls/dplayx/version.rc,
	  dlls/dsound/version.rc:
	directx: Update file versions to dx9c (compared to win2k).

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/device.c:
	d3d9: Add refcount tests for all objects created by device.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/swapchain.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: All objects created by device should keep reference to it.

	* configure, configure.ac, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/.gitignore, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/device.c, programs/winetest/Makefile.in:
	d3d8: Add refcount test.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volumetexture.c:
	d3d8: All objects created by device should keep reference to it.

	* include/d3d8.h:
	include: SwapChain::GetBackBuffer takes 3 parameters, not 4.

2006-05-20  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make sure to always have the default pushbutton for wizards as an
	enabled button.

	* dlls/comctl32/propsheet.c:
	comctl32: A PSM_SETWIZBUTTONS message specifying PSWIZB_FINISH or
	PSWIZB_DISABLEDFINISH, followed by another one without those flags
	should show the next button again and hide the finish button.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_Map/UnmapMsg32ATo32W functions.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXTLENGTH and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CREATE and WM_NCCREATE.

2006-05-19  Peter Beutner <p.beutner@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c:
	d3d8: Fix GetDesc and GetLevelDesc for surfaces and textures.
	In DX8 the D3DSURFACE_DESC structure has a size field which needs to be set.

2006-05-18  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Simplify generate_base_shader() when checking for USING_GLSL usage.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Move PARAM C[] program.env[] into baseshader and out of vertex shaders.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle pointers to context handles in the stubless code.
	Implement check for NULL context handles if requested.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We don't need to free object pointers if we are told we must allocate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use macros to generate the code for unmarshaling base types.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't set the memory pointer to NULL before calling PointerUnmarshall.
	Call it with fMustAlloc set to TRUE instead to achieve the same result
	without side-effects.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make more internal functions static.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the definition of RpcAuthVerifier to rpc_defs.h from the DCE/RPC
	spec.
	Use it in RPCRT4_SendAuth instead of writing out the data byte-by-byte.

	* include/ndrtypes.h:
	rpcrt4: Add more format characters and add context handle flags to ndrtypes.h.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/ntdsapi/.gitignore,
	  dlls/ntdsapi/Makefile.in, dlls/ntdsapi/ntdsapi.c,
	  dlls/ntdsapi/ntdsapi.spec, include/Makefile.in, include/ntdsapi.h:
	Add a stub implementation of ntdsapi.dll.

2006-05-19  Paul Chitescu <paulc@voip.null.ro>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add stub FileEncryptionStatus and declarations.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the MSGPARAMS16 structure.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make a lot of winproc functions static.

	* dlls/user/msg16.c:
	user: Call the A version of message functions from 16-bit code.
	This avoids having to export too many different message translation
	functions.

	* dlls/user/hook16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap for 16-bit hooks.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap in SendMessage16.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use a winproc callback instead of a message map/unmap in
	SendMessageTimeoutA.

	* dlls/user/message.c:
	user: Store the destination thread id in the send_message_info structure.

2006-05-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Make sure no message is sent between
	PrepareCallbackItems/FreeCallbackItems.

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the background in HEADER_Refresh.

	* dlls/comctl32/header.c:
	comctl32: header: The border size is 4 not 3.

2006-05-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Sort of oversized surface support.

2006-05-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Add more device caps.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Allow SYSTEMMEM textures and surfaces.

2006-05-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::SetDisplayMode.

2006-05-19  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Use IsClient to determine whether we can use the Buffer memory or not.
	Add simple struct tests.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Warn if CreateNamedPipe fails.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the correct amount of auth padding to messages.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Wait for all of the requested bytes to be returned for tcp connections.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Update the todo lists and copyrights.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix for the open functions in the transports being transposed between
	ncacn_np and ncalrpc.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't release the auth info if it isn't present.

2006-05-19  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test handle use after close bug.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	x11drv: Fix the regression caused by the recent ShowWindow fixes.

2006-05-19  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Cleanup InitializeSecurityContext (reduce indent and duplication).

	* dlls/secur32/ntlm.c:
	secur32: Tidy up the initialization code a little.

2006-05-18  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c:
	widl: Don't add importlib if it is already on the list. Remove warning.

	* tools/widl/write_msft.c:
	widl: Added support for importing parent interfaces from importlib.

	* dlls/shdocvw/client.c:
	shdocvw: Return S_OK in OnInPlaceDeactivate.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Trace output corrections and cleanups.

2006-05-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/store.c:
	crypt32: Move CertFindCertificateInStore and related functions to cert.c.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Move context interface definition to common header.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Convert the 16-bit winproc functions to use a callback pointer.

	* dlls/user/winproc.c:
	user: Convert the other winproc 32-bit functions to use a callback pointer.

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make WINPROC_CallProc32WTo32A take a callback function pointer.
	This way it doesn't need to know about dialog procedures. Also renamed
	it to WINPROC_CallProcWtoA.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Check registry for UseGLSL enabled.

2006-05-18  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a possible memory leak, cleanup a bit.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Fix and test RpcNetworkIsProtseqValid.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub implementation for RpcMgmtIsServerListening.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/dialog.c:
	user: Fixed a broken trace in the dialog test.

	* dlls/user/winproc.c:
	user: Added helper functions for A<->W conversion of single characters.

	* dlls/user/winproc.c:
	user: Simplify 16-bit mappings of the WM_GETDLGCODE message.

	* dlls/user/winproc.c:
	user: Unify the mapping of listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_MapMsg32WTo32A function.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_IME_CHAR.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_ADDSTRING and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added helper functions for buffer management in WINPROC_CallProc32WTo32A..

	* dlls/user/winproc.c:
	user: Merged WINPROC_CallProc32WTo32A_fast into WINPROC_CallProc32WTo32A.

2006-05-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c:
	crypt32: Add stubs for CertDuplicateCRLContext and CertDuplicateCTLContext.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/user/message.c:
	user32: Allow interprocess WM_NCPAINT messages when wParam is 0 or 1.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingSetAuthInfoExW based on the implementation for
	RpcBindingSetAuthInfoExA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: A NULL AuthInfo is allowed.
	Pass the server principal name into AcquireCredentialsHandleA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Support all available security packages in RpcBindingSetAuthInfoExA,
	instead of just NTLM.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Only use the cached connection if the authentication information
	is compatible.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Store non-connection-specific authentication information in a ref-counted
	structure that is shared between connections and bindings.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Fix an off-by-one error when checking the size of the buffer in
	NdrInterfacePointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle interface pointers in EmbeddedComplexSize.

	* dlls/rpcrt4/Makefile.in:
	rpcrt4: Make secur32 into a delayed import, as most of the time it won't
	be needed.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Increment the call id field of the request header.
	This is necessary for compatibility with MS/RPC servers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the wire protocol of the user marshal functions to match MS/RPC.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: If the authorisation failed during a send then we should return
	ERROR_ACCESS_DENIED.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantArrayMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrUserMarshalMemorySize.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Take predication tokens into account.
	Each instruction can have a predication token. Account for it in the
	trace pass, register count pass, and store it in the SHADER_OPCODE_ARG
	structure for generation. MSDN claims the token is at the end of the
	instruction, but that's not true - testing a demo, which lets me
	manipulate the shader shows the predication token is the first source
	token immediately following the destination token.

	* dlls/wined3d/baseshader.c:
	wined3d: Parameter trace corrections.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: SETP takes 3 parameters.

2006-05-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/.gitignore,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't update StubMsg->MemorySize while unmarshaling.
	Add a bunch of marshaling tests (based on a program by Rob Shearman).

2006-05-16  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Fix path test to pass on 95 and 98.

2006-05-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Code cleanup.

	* dlls/shdocvw/ie.c:
	shdocvw: Added IConnectionPointContainer to InternetExplorer::QueryInterface.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IConnectionPointContainer implementation to separated object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to the new ConnectionPointContainer struct.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c, tools/widl/typelib_struct.h,
	  tools/widl/widltypes.h:
	widl: Added importlib reading implementation.

2006-05-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the left header egde.

	* dlls/comctl32/header.c:
	comctl32: header: Send the width in HDN_BEGINTRACK.

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute sizes after a column deletion.

2006-05-17  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Implement NdrInterfacePointerMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make some functions that aren't used outside of the file static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fill out more of the function tables with functions that already exist.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception if there is no default handler for a union.

2006-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: The result for dialog procedures is stored in DWLP_MSGRESULT.
	So we have to access it using Get/SetWindowLong when unmapping the
	message results (based on a patch by Troy Rollo).

	* dlls/user/defdlg.c:
	user: Remove unreachable code in DEFDLG_Proc.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h:
	user: Support storing multiple winprocs in a single winproc handle.
	Allows to remove special cases for window classes being Ascii and
	Unicode at the same time.

	* dlls/user/winproc.c:
	user: Allocate 16-bit thunks separately from the window proc structure.
	Also make sure the thunk memory block has execute permissions.

	* dlls/x11drv/clipboard.c:
	x11drv: Fixed typo in the clipboard XA_STRING handling.

2006-05-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/bitmap.c, dlls/gdi/gdi_private.h, dlls/gdi/tests/bitmap.c,
	  dlls/x11drv/bitmap.c, dlls/x11drv/winex11.drv.spec:
	gdi: Fix GetObject for bitmaps.
	- GetObject(): Set the bmBits member of the BITMAP structure to NULL
	for device-dependent bitmaps.
	- New test case.

2006-05-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Fix OpenDriverReg on top of validate_envW.

	* dlls/winspool/tests/info.c:
	winspool/tests: More tests for OpenPrinter.

2006-05-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Do not fail in OpenPrinter on pDefault / local print server.

	* dlls/winspool/info.c:
	winspool: Show SetPrinter parameters in the FIXME.

	* dlls/winspool/tests/info.c:
	winspool/tests: A truncated dmDeviceName is 0-terminated.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Use COLOROUT/DEPTHOUT for pixel shaders 2.0+.
	As previously mentioned, RASTOUT is invalid on pixel shaders.
	On shaders 1.x, r0 is treated as the color output register:
	http://www.gamedev.net/columns/hardcore/dxshader3/page2.asp
	That's what we currently do in all cases, change it not to do so
	for shaders >= 2.0. Support COLOROUT/DEPTHOUT instead.

	* dlls/wined3d/vertexshader.c:
	wined3d: LRP is not a valid ARBvp code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove detailed traces from map2gl/input_modifiers functions.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Write "unrecognized_register" in fallback case for get_register_name().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Modify shader_dump_param() to take into account address token.
	Currently we hardcode a0.x, which I think is correct for shaders 1.0.
	However, for shaders 2.0, we must look into the address token, and
	print the register there. Handle both cases to correct the trace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use shader_get_param() in trace pass, reg. count pass, generation pass.
	Change the trace pass, the register counting pass, and the hw
	generator pass to take into account the new get_params() function. For
	hw generation, store the address tokens into the SHADER_OPCODE_ARG
	structure, so they're available to generator functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add shader_get_param() fn, which processes address tokens.
	Add a new function to process parameters.
	On shaders 1.0, processing parameters amounts to *pToken++.
	On shaders 2.0+, we have a relative addressing token to account for.
	This function should be used, instead of relying on num_params everywhere.

	* dlls/wined3d/baseshader.c:
	wined3d: Do not rely on num_params to skip unhandled tokens in shaders 2.0.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Allow multiple output modifiers.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix SINCOS parameters.
	SINCOS has 4 parameters in shaders 2.0.
	It has 2 parameters in shaders 3.0.
	It's undefined in shaders 1.0.

	* dlls/wined3d/vertexshader.c:
	wined3d: DEFI takes 5 parameters.
	According the spec and the Painkiller log, DEFI has 5 parameters on
	vertex shaders.

2006-05-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	user32: Make all the recently added ShowWindow tests pass in Wine.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Don't fail if a process is not available.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/usp10/usp10.c:
	usp10: Fix ScriptGetProperties so that first pointer can be NULL.

	* programs/winedbg/types.c:
	winedbg: extract_as_integer
	- now supporting extract_as_integer on functions (so that,
	for example, 'disas foo' works as expected)
	- now properly handling errors when calling extract_as_integer

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Get rid of CRYPT_CreateCertificateContext, it's not needed anymore.

2006-05-17  Marcus Meissner <marcus@jet.franken.de>

	* dlls/riched20/tests/editor.c:
	riched20: Removed useless double casts, just print the DWORD hexmask.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Split the unwieldy encode.c into two files.

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Support CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID implicit property.

	* dlls/crypt32/store.c:
	crypt32: Use the caller-supplied encoding type when decoding certs.

	* dlls/crypt32/tests/store.c:
	crypt32: Add more tests for adding certs to a store.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertCompare functions, with tests.

2006-05-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Fix INSERTITEM on a zero mask and GETITEM on a mask with
	unknown fields.
	INSERTITEM should fail on a zero mask. If in GETITEM the mask has an
	unknown field it should store only the comctl32 4.0 fields (with test
	case).

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Copy some fields on INSERTITEM even if they are not in
	the mask.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Automatically set some format fields.

2006-05-16  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix handling of 'h' prefix in swprintf.
	- '%hs' in widechar string functions is wrongly recognized as
	a widechar string. Fix this by always checking the prefix first.
	- add testcase
	- remove code duplication in %c/%s handling by moving code into a function.

2006-05-16  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c:
	wininet: Add a standalone http test.

	* dlls/wininet/ftp.c:
	wininet: Make sure hIC is valid before trying to use it. (Coverity)

2006-05-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/d3d9types.h, include/wine/wined3d_types.h:
	d3d: Add D3DDEVTYPE_NULLREF definition.

2006-05-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/modify.c, dlls/wldap32/modrdn.c:
	wldap32: Document the modify and modrdn functions.

2006-05-15  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Properly delete a test file.

2006-05-16  Alexandre Julliard <julliard@winehq.org>

	* tools/config.guess, tools/config.sub, tools/install-sh:
	tools: Updated the autoconf scripts to more recent versions.

2006-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Add more ShowWindow tests.
	Move ShowWindow tests for children with an invisible parent into a
	separate test, add more ShowWindow tests. The tests show that an
	assumption in dlls/x11drv/winpos.c that SetWindowPos should not be
	called on a child with an invisible parent is not always true.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/vertexshader.c:
	wined3d: Correctly define the number of possible parameters.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement fixed array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove the BUFFER_PARANOIA overestimates for string memory sizes.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement computing of conformance from a correlation descriptor for
	conformant strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix conformant varying structs to comply to the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't duplicate the conformance calculating code, just use the
	common ComputeConformance function to store the result in
	pStubMsg->MaxCount (as this is what callback function store the
	conformance value into anyway).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement conformant varying struct functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more conformance operations and more types.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't release IOleInPlaceSite in DoVerb.

2006-05-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Unset the ddraw primary when it is released.

	* dlls/wined3d/utils.c:
	wined3d: Add missing render states to the dumping function.

	* dlls/wined3d/device.c:
	wined3d: Implement IWineD3DDevice::SetFrontBackBuffers.

2006-05-15  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Implement EM_SETUNDOLIMIT and its conformance tests.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Test importing public keys from a certificate.

	* dlls/crypt32/tests/store.c:
	crypt32: Avoid a use-after-free bug in tests.

2006-05-15  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetOpenUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetConnectW

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Implemented NTLM authentication for rpcrt4 connections.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use RPCRT4_Receive rather than accessing the transport directly.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction005.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the conformant struct functions to not call conformant array
	functions.
	The conformance has to be the first thing in the buffer, in accordance
	with the DCE/RPC spec and to be compatible with the pointer layout
	format strings that MIDL generates.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: In NdrConformantBufferSize, SizeConformance should be called, not
	SizeVariance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Save pStubMsg->ActualCount in a local variable in the complex
	array functions, before calling a function that could change it and
	cause the wrong number of loop iterations.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the memory for pointers in NdrNonEncapsulatedUnionUnmarshall.
	Pointers in a non-encapsulated union behave like embedded pointers, so
	don't rely on the NdrPointer* functions doing the right thing in this
	case and call the Pointer* functions directly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename ComplexStructSize to ComplexStructMemorySize to reflect the
	fact that it increments the buffer.
	Replace the code in EmbeddedComplexSize that sizes non-encapsulated
	unions without using a memory sizer routine, since this function
	shouldn't touch the buffer.
	Add a new function EmbeddedComplexMemorySize and use it in some memory
	sizer routines where EmbeddedComplexSize was previously used.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix embedded pointers in arrays by taking into account the iteration
	when calculating the appropriate memory and buffer pointers.

2006-05-14  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Shaders: share dump_param function, version functions.

	* dlls/wined3d/stateblock.c:
	wined3d: Fix incorrect sizeof.

2006-05-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Duplicate extent value for the second byte of a DBCS char.

2006-05-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/Makelib.rules.in, libs/wine/Makefile.in:
	configure: Make libraries properly relocatable on MacOS.
	Also set the compatibility version.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/cfgmgr32/main.c, dlls/gdi/freetype.c,
	  dlls/mprapi/mprapi.c, dlls/ntdll/sync.c, dlls/ole32/usrmarshal.c,
	  dlls/usp10/usp10.c:
	Fix some winapi_check documentation warnings.

	* dlls/d3d9/pixelshader.c, dlls/ddraw/tests/d3d.c,
	  dlls/gdi/tests/bitmap.c, dlls/kernel/tests/toolhelp.c,
	  dlls/msi/tests/msi.c, dlls/ole32/tests/moniker.c,
	  dlls/wined3d/baseshader.c, dlls/winspool/info.c:
	Various trace fixes.
	Add trailing '\n's to trace calls.
	Remove spaces before '\n'.

	* configure, configure.ac, dlls/advpack/tests/install.c,
	  dlls/msi/action.c, dlls/user/tests/wsprintf.c,
	  dlls/wined3d/surface.c, dlls/x11drv/dib.c:
	Assorted spelling fixes.

2006-05-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: header: Check for HDN_GETDISPINFO not being sent during INSERT/SETITEM.

2006-05-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Store the iSubItem in header's lParam in LVM_INSERTCOLUMN.

	* dlls/comctl32/header.c:
	comctl32: header: Correct HDN_GETDISPINFO. Use it during drawing.
	Improve HEADER_SendHeaderDispInfoNotify and rename it to
	HEADER_PrepareCallbackItems. The new HEADER_FreeCallbackItems frees
	the buffers allocated by it. GetItemT and DrawItem calls these
	functions.

	* dlls/comctl32/header.c:
	comctl32: header: Mark the callback items in a mask.
	Mark the callback items in the callbackMask HEADER_ITEM field. The
	pszText for callback texts is now NULL what simplifies some
	checks. Checks for lpItem->pszText==emptyString are also not needed as
	emptyString is not stored in lpItem but used as a parameter to
	Str_SetPtr (I haven't noticed it).

	* dlls/comctl32/header.c:
	comctl32 header: Free the old string also when the new one is LPSTR_TEXTCALLBACK.

	* dlls/comctl32/header.c:
	comctl32: header: Don't modify the user supplied HDITEM during Set/InsertItem.

	* dlls/comctl32/header.c:
	comctl32: header: Move common code from SetItemT/InsertItemT into a new function.

	* dlls/comctl32/header.c:
	comctl32: header: Don't send HDN_GETDISPINFO during HDM_SET/INSERTITEM.

	* dlls/comctl32/header.c:
	comctl32: header: Don't check lpItem for NULL in GetItemT.

2006-05-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Wrap Heap* finctions by inline functions.

2006-05-15  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Update the marshal state buffer size when resizing (Doh!).

2006-05-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/msvcrt/tests/time.c:
	msvcrt: Fix times tests to pass on windows.
	Add more tests for daylight-time savings.

2006-05-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Retrieve the groups for a token from the server.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The arm type mask should be comparing the highest byte against 0x80,
	as documented on MSDN.
	Fix base type arm handling on little-endian machines, as the current
	code would always pass in the address to the format char of 0x80
	instead of the base type format char.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make ComplexStructSize increment the buffer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in the buffer value before incrementing to PointerMarshall in
	NdrPointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexArrayMemorySize.

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Fix the fault packet structure to comply with the DCE/RPC specification.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The NDR memory sizing functions should increment the buffer pointer,
	so make sure to save it before calling one of these and restore it afterwards.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrBaseTypeMemorySize increment the buffer and memory size fields
	of MIDL_STUB_MESSAGE.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrConformantStringUnmarshall use the new Read{Variance,Conformance}
	functions and adapt them to be callable without having a correlation
	descriptor.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for getting the groups, user and privileges of a token.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction004.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction003.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_des.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction002 (DES decrypt).

2006-05-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a NULL dereference in RealizePalette.

2006-05-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Render state additions and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Nonpow2 repacking support for GetDC.

2006-05-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c:
	wined3d: Support for single buffering.

2006-05-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineGDISurface.

2006-05-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::ProcessVertices.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Add missing PKT_AUTH3 packet type.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add infrastructure for send authentication data.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Forward RpcBindingSetAuthInfo to RpcBindingSetAuthInfoEx.

2006-05-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/tests/name.c:
	dnsapi: Add tests for DnsValidateName_A.

2006-05-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Fix a typo in a #warning, and slight rewording.  Fix grammaro
	in comment.

2006-05-13  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Added RPC_FC_ENUM16 encoding.

	* tools/widl/typelib_struct.h, tools/widl/write_msft.c:
	widl: res50 is number of impinfos. Fix its usage.

	* dlls/oleaut32/typelib.h, dlls/oleaut32/typelib2.c:
	oleaut32: res50 is number of impinfos. Fix its usage.

2006-05-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Fix tests.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added support for navigation to application URLs.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fix protocol tests on XP. Make Wine match XP implementation.

2006-05-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/ntdll/tests/port.c:
	ntdll: Fix endless loop in port test for users without admin rights.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Spelling fix.

	* include/mprapi.h:
	mprapi: Add FIXME for the missing in6addr.h include.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix some conditional includes.
	Check for HAVE_UNISTD_H before including unistd.h.
	There is no HAVE_SYS_TYPES to check.
	Tweak the indentation of a few #include directives.

	* include/dmusici.h, include/rpcdce.h:
	include: Remove uneeded __RPC_FAR references.

	* tools/winapi/c_parser.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	winapi: Add support for APIENTRY.
	Factorize a couple of call convention matching regular expressions.

2006-05-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Fix compilation with gcc 2.95.

2006-05-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix converting file name to Unicode.
	Fix converting the typelib file name to Unicode by using the correct
	buffer size.

2006-05-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/oid.c,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Use the HRESULT synonyms for converted Win32 error codes.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Remove broken code for HTTP_QUERY_FLAG_COALESCE, which is unimplemented
	according to MSDN.

	* dlls/wininet/ftp.c:
	wininet: Check for null parameters in FtpSetCurrentDirectoryW.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Avoid a crash if a registry notify event has been set already.

2006-05-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed regression for command 'bt all'.
	Don't print 'process has terminated' message when detaching from a
	process (or backtracing it).

2006-05-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/serial.c:
	ntdll: Fix serial timeout regression.

2006-05-11  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.13.

----------------------------------------------------------------
2006-05-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/toolhelp.c:
	kernel:	Fix CreateToolhelp32Snapshot tests on win2k.

2006-05-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/mscvpdb.h, dlls/dbghelp/path.c:
	dbghelp: SymFindFileInPath and PDB
	- implemented correct lookup when SymFindFileInPath is called to find
	a PDB file
	- added pdb_fetch_file_info to gather relevant information
	- when looking for a PDB file (from a .EXE or a .DLL), now using
	SymFindFileInPath to locate the PDB file with the correct
	information

	* dlls/dbghelp/module.c:
	dbghelp: Removed call to registered callback when unloading a module.
	First, native dbghelp doesn't do it, and it crashed windbg, likely
	because we got the undocumented arguments wrong.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymSearchW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymEnumSymbolsW.

	* dlls/dbghelp/symbol.c:
	dbghelp: Improved SymSearch (now using tag, index and address).

	* dlls/dbghelp/symbol.c:
	dbghelp: Factorize and simplify a bit symbol enumeration code.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c, include/dbghelp.h:
	dbghelp: Stubbed SymGetSourceFileTokenW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c,
	  include/dbghelp.h:
	dbghelp: Implemented SymGetLineFromAddrW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymFromAddrW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymGetModuleInfoW and SymGetModuleInfoW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymLoadModuleExW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, include/dbghelp.h:
	dbghelp: Implemented SymRegisterCallbackW64 and 64 -> 64W mapping function.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, include/dbghelp.h:
	dbghelp: SymInitializeW.
	- implemented SymInitializeW (and made SymInitialize call it)
	- implemented Sym{SG}etSearchPathW (and made Sym{SG}etSearchPath
	call them)
	- per process search path is now stored as unicode string

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Updated spec file.

2006-05-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Set pIndexData to 0 in DrawIndexedPrimitiveUP.

	* dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Initialize volume format.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share shader_dump_ins_modifiers().
	Share shader_dump_ins_modifiers(), and make vertex shaders use it.
	The saturate modifer (_sat) is valid on vs_3_0+, and it isn't being
	shown in the trace.

2006-05-10  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test volume warning.
	Volume is only valid when sound card has volume support.

2006-05-11  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/dialogs.c:
	wininet: Fix a typo (spotted by Coverity).

	* dlls/advapi32/crypt_arc4.c:
	advapi32: Fix a typo (spotted by Peter Berg Larsen).

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/defdlg.c, dlls/user/icontitle.c, dlls/user/mdi.c,
	  dlls/user/nonclient.c, dlls/user/winpos.c:
	user: Prefer SendMessageW over SendMessageA where possible.

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Prefer SendMessageW over SendMessageA where possible.

2006-05-10  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	winapi_check: Fix 'long int' parsing.
	Fix parsing of 'long int'.
	Simplify handling of spaces in a couple of regular expressions.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/quartz/regsvr.c, dlls/shdocvw/regsvr.c,
	  dlls/shell32/regsvr.c, dlls/urlmon/regsvr.c:
	Check the return value from register_key_guid in all the DLL registering code.

2006-05-09  Bernd Buschinski <b.buschinski@web.de>

	* dlls/ntdll/file.c:
	ntdll: Stub implementation of FSCTL_LOCK_VOLUME/FSCTL_UNLOCK_VOLUME.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/port.c:
	ntdll: Add initial tests for the NT Ports API.

2006-05-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction032 (arc4 encryption).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction007.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction001.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction008.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Cache the connection so we don't rebind on every call.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use the buffer passed in as an argument and don't increment
	the buffer in the MIDL_STUB_MESSAGE in the inner pointer
	marshalling/unmarshalling routines as these can be used for embedded
	pointers, which handle the allocating or finding of the buffer
	themselves. Do the incrementing in the outer
	NdrPointerMarshall/Unmarshall/BufferSize routines instead.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align conformances and variances correctly, according the the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move the writing and sizing of variances and conformances to common functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer to read/write array data to.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer before reading/writing structure data.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename NonEncapsulatedUnionSize to NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove unintuitive requirement to pass the required alignment boundary minus one into the alignment macros.

	* dlls/ole32/rpc.c:
	ole32: Exception handling shouldn't be needed around the call to IRpcStubBuffer_Invoke.
	It should have its own exception handler to catch any exceptions that are raised.

2006-05-10  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Correctly handle the case when the number of bytes in a BSTR is odd.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Support VT_SAFEARRAY in the typelib marshaler.
	Based on a patch by Rob Shearman.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a function to grow the marshal state buffer to a specified size.

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c, dlls/user/wnd16.c:
	user: Moved Get/SetClassLong16 to wnd16.c.

	* dlls/user/class.c, dlls/user/msg16.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Have WINPROC_GetProc16 allocate a new winproc if necessary.

	* dlls/user/user.exe.spec, dlls/user/winproc.c:
	user: Store the pointer to the winproc in the thunk structure.
	This allows simplifying the handling of 16-bit thunks.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Make the WINDOWPROCTYPE enum private to winproc.c.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Replace WINPROC_GetProcType by WINPROC_IsUnicode.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Replace WINDOWPROCTYPE by a unicode flag in WINPROC_GetProc/AllocProc.

	* dlls/user/class.c, dlls/user/win.c, include/win.h:
	user: Add a WIN_ISUNICODE flag instead of relying on the winproc type.
	Also fix the initial value for the server is_unicode flag.

2006-05-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Further split GLSL & ARB_v/f_program generation and allow GLSL functions to be called.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Modified the opcode tables (and struct) to include a pointer to a GLSL generator function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Use GenerateShader in pixel shaders and remove old function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add GenerateShader function to pixel shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Use new GenerateShader function for vertex shaders.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Added new GenerateShader function for Vertex Shaders & declare generate_base_shader().

	* dlls/wined3d/baseshader.c:
	wined3d: Created generate_base_shader which will be shared by pixel & vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename the TEMP variables in vertexshader.c to R from T for consistency.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place # of textures, addresses, & temps used inside the baseShader struct to prepare for GenerateShader merge.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Further split up GenerateProgramArbHW for pixelshaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Move D3DSIO_M#x# vertex shader opcodes to a more standard function.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move DCL, DEF operations out of Generate loop and into separate functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move program_dump_decl_usage into baseshader.

2006-05-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advapi32/registry.c, dlls/advapi32/security.c, dlls/avifil32/api.c,
	  dlls/avifil32/avifile.c, dlls/avifil32/editstream.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/surface_main.c,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/msacm32/internal.c,
	  dlls/mshtml/hlink.c, dlls/msvfw32/msvideo_main.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/riched20/writer.c,
	  dlls/secur32/secur32.c, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/urlmon/umon.c, dlls/wined3d/query.c,
	  dlls/wininet/internet.c, dlls/wininet/urlcache.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/wineesd/audio.c,
	  dlls/x11drv/xrender.c, programs/regedit/treeview.c,
	  programs/wineboot/wineboot.c, programs/winecfg/audio.c:
	janitorial: Remove redundant NULL pointer checks before HeapFree'ing them.
	Some HeapFree's are hidden behind macros. Found by smatch.

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Clean up some dead code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Break out texture instruction processing.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break out arithmetic instruction processing.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Merge register counting pass.

	* dlls/wined3d/vertexshader.c:
	wined3d: Make register counting pass the same.

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Update the DIB section's palette on GetDC.

	* dlls/wined3d/palette.c:
	wined3d: Update the device palette if the primary palette is changed.

	* dlls/wined3d/surface.c:
	wined3d: Implement WineD3DSurface palette methods.

	* dlls/wined3d/surface.c:
	wined3d: Implement GetFlipStatus and GetBltStatus.

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::Flip.

2006-05-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Partially implement CertGetIssuerCertificateFromStore.

	* dlls/crypt32/cert.c:
	crypt32: Implement CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT in CryptVerifyCertificateSignatureEx.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/nt.c:
	ntdll: Return STATUS_NOT_IMPLEMENTED for the unimplemented port functions.

2006-05-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.h:
	shell32: Support BFFM_SETSELECTION[AW] and BFFM_SETEXPANDED for SHBrowseForFolder.

2006-05-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/comm.c:
	kernel: Comm_CheckEvents: Only warn for non-empty transmitter with EV_TXEMPTY flag set.
	Noticed by Dan Armbrust.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: We really need to flush the display when destroying a window.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: EscapeCommFunction & associated IOCTLs
	- implemented ntdll's serial IOCTL: CLR_DTR, CLR_RTS, SET_DTR,
	SET_RTS, SET_XOFF, SET_XON, RESET_DEVICE
	- implemented kernel32.EscapeCommFunction on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetupComm & SET_QUEUE_SIZE
	- stubbed out ntdll's serial IOCTL SET_QUEUE_SIZE
	- implemented kernel32.SetupComm on top of it

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: [SG]etCommTimeout, SERIAL_[GS]ET_TIMEOUT
	- implemented ntdll's COMM IOCTL GET_TIMEOUTS, SET_TIMEOUTS
	- implemented kernel32.GetCommTimeout and SetCommTimeout on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_CHARS
	- implemented SERIAL_GET_CHARS ioctl
	- made use of it in kernel32.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_SERIAL_GET_HANDFLOW
	- implemented SERIAL_GET_HANDFLOW ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & SERIAL_GET_LINE_CONTROL
	- implemented SERIAL_GET_LINE_CONTROL ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_BAUD_RATE
	- implemented SERIAL_GET_BAUD_RATE ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_CHARS
	- implemented ntdll's serial IOCTL SET_CHARS
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_HANDFLOW
	- implemented ntdll's serial IOCTL SET_HANDFLOW
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_LINE_CONTROL
	- implemented ntdll's serial IOCTL SET_LINE_CONTROL
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_BAUD_RATE
	- created dump_dcb to print out DCB information
	- implemented ntdll's serial IOCTL SET_BAUD_RATE
	- used this IOCTL in kernel32.SetCommState

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::SetColorKey.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::IsLost and Restore.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: rhw vertex fixup.
	Change the rhw=0 range to ]1e-8,1e-8[ and move the value to a constant
	in wined3d_types.h

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share get_opcode.

2006-05-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Print out more info on failed test.
	Print out more info on failed test.  Looks like there is a bug in ALSA
	OSS emulation where it is returning a mid-sample position.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/record.c, dlls/dnsapi/tests/record.c:
	dnsapi: The ttl value should be ignored when comparing dns records.

2006-05-09  David Lichterman <laviddichterman@gmail.com>

	* dlls/mciwave/Makefile.in:
	mciwave: Fix make install error.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/defdlg.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Added specific winproc functions for calling dialog procedures.

	* dlls/user/winproc.c:
	user: Use handles for 32-bit window procedures instead of pointers into the bss segment.

	* dlls/user/class.c:
	user: Always set the correct class winproc depending on the A/W type.

	* dlls/user/winproc.c:
	user: Remove some redundant NULL pointer checks.

	* dlls/user/msg16.c:
	user: Make sure to always pass a 16-bit pointer to CallWindowProc16.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_AllocProc.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_GetProc.

	* dlls/user/win.c:
	user: Fixed offset check for the DWLP_DLGPROC case in SetWindowLong.

	* dlls/user/win.c:
	user: Separate Get/SetWindowLong16 implementation from the 32-bit one.

	* dlls/kernel/except.c:
	kernel: Added work-around in UnhandledExceptionFilter for no exec protections.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/virtual.c:
	ntdll: Make the section with AddressOfEntryPoint in it executable.

2006-05-07  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi32: Add stub for GetCharWidthI and GetFontUnicodeRanges.

	* include/wingdi.h:
	gdi32: Add defines for GLYPHSET and WCRANGE.

2006-05-09  Mike McCormack <mike@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix a warning when opengl headers are missing.

2006-05-09  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c:
	opengl: Properly use glXQueryDrawable() to get the Visual ID.

2006-05-08  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add check for GL Shading Language 100 Extension.

2006-05-08  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Clean up per version shader limits code.

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Addline cleanup.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Partially implement DnsQueryConfig.

2006-05-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* tools/wine.inf:
	wine.inf: Install comctl32.dll as fake DLL.

2006-05-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c:
	crypt32: Simplify OID decoding
	Use a more direct function to decode OIDs, instead of the bizarre
	wrapper.

2006-05-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/winmm.c:
	winmm: Check waveOutGetVolume parameter.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Nl.rc:
	sane.ds: Added Dutch resources.

	* dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Dutch resources.

2006-05-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/gphoto2.ds/gphoto2_Fr.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added French resources.

2006-05-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/twain_32/dsm_ctrl.c:
	twain_32: Add missing HeapFree's on error patch (found by smatch).

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	Some documentation changes for twain split.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm32.drv/.gitignore,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/msacm32.drv.spec,
	  dlls/msacm32.drv/wavemap.c, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/wavemap/Makefile.in, dlls/winmm/wavemap/msacm.drv.spec,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winemm.h:
	msacm32.drv: Renamed msacm.drv to msacm32.drv, and moved the directory to the top-level.

	* configure, configure.ac, dlls/Makefile.in, dlls/mciwave/.gitignore,
	  dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c,
	  dlls/mciwave/mciwave.spec, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/mciwave/Makefile.in, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/mciwave/mciwave.drv.spec, tools/wine.inf:
	mciwave: Renamed mciwave.drv to mciwave.dll, and moved the directory to the top-level.

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/gphoto2.ds/.gitignore,
	  dlls/gphoto2.ds/Makefile.in, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2.ds.spec, dlls/gphoto2.ds/gphoto2_En.rc,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/gphoto2_main.c,
	  dlls/gphoto2.ds/resource.h, dlls/gphoto2.ds/rsrc.rc,
	  dlls/gphoto2.ds/ui.c, include/config.h.in:
	gphoto.ds: Implemented a libgphoto2 import driver, based on the sane.ds driver.
	Wrote a GUI import dialog.
	With help from Aric Stewart.

	* configure, configure.ac, dlls/Makefile.in, dlls/sane.ds/.gitignore,
	  dlls/sane.ds/Makefile.in, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane.ds.spec, dlls/sane.ds/sane_De.rc,
	  dlls/sane.ds/sane_En.rc, dlls/sane.ds/sane_Fi.rc,
	  dlls/sane.ds/sane_Fr.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain32_main.c,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Fi.rc, dlls/twain_32/twain_Fr.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_No.rc,
	  dlls/twain_32/twain_i.h, dlls/twain_32/ui.c:
	twain_32: Split out the sane specific parts from twain_32 code.
	Autoprobing via DG_CONTROL/DAT_IDENTITY/MSG_GET.

	* dlls/twain_32/twain.h, include/Makefile.in, include/twain.h:
	twain_32: Moved twain.h to the include directory.

2006-05-08  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Preserve the 'auto' features before copying over the masked unmarshaled ones.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/antimoniker.c:
	ole32: The type check in AntiMonikerImpl_CommonPrefixWith should be for anti-monikers, not item-monikers.

	* dlls/ole32/classmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Implement several class moniker functions using the description provided on MSDN.

	* dlls/ole32/compobj_private.h, dlls/ole32/regsvr.c:
	ole32: Remove duplicated CLSIDs.

	* dlls/ole32/Makefile.in, dlls/ole32/classmoniker.c, dlls/ole32/moniker.c,
	  dlls/ole32/moniker.h, dlls/ole32/oleproxy.c,
	  dlls/ole32/tests/moniker.c:
	ole32: Add an implementation of class monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for IsRunning, GetTimeOfLastChange, BindToObject, BindToStorage and Inverse.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix regression caused by an earlier patch that removed the
	check for the composite moniker having only one moniker in it. In this
	case, return the one moniker and free the memory associate with the
	composite moniker.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_GetTimeOfLastChange by handling pmkToLeft properly.
	Fix a typo where CompositeMonikerImpl_GetTimeOfLastChange was called
	instead of the virtual implementation of it on mostRightMk.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_BindToStorage.

2006-05-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetCompare.

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: DllGetClassObject support.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::GetDC and IWineD3DSurface::ReleaseDC.

2006-05-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/init.c:
	x11drv: Return correct PBuffer drawable.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Don't duplicate handle in _get_osfhandle.

2006-04-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Don't append '\r' to the last paragraph in EM_GETTEXTEX.

2006-05-07  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Improve unit tests for case sensitivity in string tables.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add StgCreateFile test and conformance fix.

2006-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/compositemoniker.c:
	ole32: Properly initialize hash value in CompositeMonikerImpl_Hash.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compositemoniker.c:
	ole32: Fix typos in CompositeMonikerImpl_BindToObject and CompositeMonikerImpl_BindToStorage.

	* dlls/ole32/compositemoniker.c:
	ole32: Create moniker enumerator with an initial reference count.

	* dlls/ole32/tests/moniker.c:
	ole32: Test moniker display names.

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/ole32/tests/moniker.c:
	ole32: Test unmarshaling the moniker instead of just releasing the marshaled data.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Make the size returned by CompositeMonikerImpl_GetMarshalSizeMax match that returned by native.

	* dlls/ole32/marshal.c:
	ole32: Add on the size of the whole OBJREF structure in the case of custom marshaling.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in CompositeMonikerImpl_Hash to match native.

	* dlls/ole32/itemmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in ItemMonikerImpl_Hash to match native.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for generic composite monikers.

	* dlls/ole32/compositemoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c:
	ole32: Add a class factory for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Allocate memory for the generic composite moniker in CompositeMonikerImpl_Construct.
	Don't leak memory in the case of newCompositeMoniker->tabLastIndex == 1,
	which can't happen anyway.
	Allow construction of a moniker with no sub-monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement IMarshal for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Release all existing monikers before loading the state.

	* dlls/ole32/compositemoniker.c:
	ole32: EnumMonikerImpl_Next should add a reference to the monikers it returns to the caller.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix CompositeMonikerImpl_GetSizeMax to match the data written by CompositeMonikerImpl_Save.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix the loop in CompositeMonikerImpl_Hash, as IEnumMoniker_Next
	will return S_FALSE when there are no more monikers left to enumerate.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement CompositeMonikerROTDataImpl_GetComparisonData.

	* dlls/ole32/compositemoniker.c:
	ole32: The unknown constant at the start of the persisted data is the number of monikers in the generic composite.
	Fix the pointer passed into IEnumMoniker_Release in CompositeMonikerImpl_Save.

	* dlls/ole32/antimoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Add a test for anti monikers. Fix AntiMonikerImpl_Hash and AntiMonikerROTDataImpl_GetComparisonData to pass the tests.

	* dlls/ole32/antimoniker.c, dlls/ole32/moniker.h, dlls/ole32/oleproxy.c:
	ole32: Support marshaling of anti monikers.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSID_CompositeMoniker.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSIDs for all OLE monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for item moniker.

	* dlls/ole32/tests/moniker.c:
	ole32: Make class moniker test more generic and test more properties.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Automatically resolve the endpoint.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix possible buffer overflow.
	Increase size of passed buffer to print into.

2006-04-30  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptTextOut functionality and restructure tests.

2006-04-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Eliminate duplicate function: vshader_program_dump_param().

2006-04-28  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share get_register_code().

2006-04-26  Thomas Kho <tkho@ucla.edu>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Fix behavior when selecting disabled menu items.

	* dlls/user/defwnd.c, dlls/user/tests/menu.c:
	user: Allow menu WndProc to recognize VK_[LR]MENU.

2006-04-28  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/menu.c:
	user: Extend menu conformance test.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetPitch.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add IWineD3DDevice::DrawPrimitiveStrided.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add some surface flags.

2006-05-07  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetVarDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Change CLEANLOCALSTORAGE flag constants to their character
	constant equivalents.  It's now obvious why these were chosen.  Should
	be a NOP.

2006-05-08  James Hawkins <truiken@gmail.com>

	* include/winnt.h:
	include: Add missing SECURITY_QUALITY_OF_SERVICE defines.

2006-05-08  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-05-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Fix audio crash when no drivers are available.

	* dlls/winmm/wineoss/audio.c:
	wineoss: Missing mixer fixes.
	Don't list volume in capabilities when mixer is missing.

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/wave.c:
	winmm: More wave callback tests.
	Add tests for CALLBACK_FUNCTION and CALLBACK_THREAD.  The only
	callback type not tested now is CALLBACK_WINDOW.

2006-05-08  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/comctl32/comctl32.h:
	comctl32: Increase FILEVERSION up to 5.81.4704.1100.

2006-05-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlview.c:
	shell32: Don't use uninitialized item.mask in shlview.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c:
	dbghelp: Stub for SymGetSourceFileToken.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Base and symbols.
	- report the correct image base for a symbol which is
	seen as being in a builtin PE module, whilst its debug
	information is gotten from an ELF module
	- module_get_debug now returns a pair of modules
	(the requested that has to be presented back to the client
	and the effective one, which contains the debug info)
	- reworked SymFromName in order to provide also the revelant
	module base address

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput/dinput_main.c:
	dinput: Fix Initialize return value.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user/tests/wsprintf.c:
	user32: Added tests for CharUpper and CharLower.

	* dlls/ole32/compobj.c:
	ole32: Fixed typo in debug statement.

2006-05-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: A-to-W conversion should be font-independent.

2006-05-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make some internal functions and variables static, remove
	some unneeded prototypes.

	* dlls/comctl32/propsheet.c:
	comctl32: Add support for PSP_USEHEADERTITLE, PSP_USEHEADERSUBTITLE
	and PSP_HIDEHEADER in CreatePropertySheetPageA/W, handle resource ids.

	* dlls/comctl32/propsheet.c:
	comctl32: psInfo->proppage[index].pszText is always initialized to a
	proper value regardless of PSP_USETITLE, use it unconditionally.

2006-05-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: DelDirs should only remove a directory if it's empty.

	* dlls/advpack/install.c:
	advpack: The only flag we don't handle is RSC_FLAG_UPDHLPDLLS.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ntdll/sec.c:
	ntdll: Fix heap corruption in RtlDeleteAce.

2006-04-26  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Separate pshader/vshader tables.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix failures in test_DEVMODE.

2006-05-05  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix VARIANT_UserFree.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Remove weird attempt to clear VT_VARIANT.
	Add some tests.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Rewrite VARIANT user marshaling.

2006-05-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/name.c:
	dnsapi: Implement DnsValidateName_{A,UTF8,W}.

2006-05-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecord{CopyEx,ListFree,SetCopyEx}.

	* dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Add tests for DnsRecordCompare.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecordCompare.

2006-05-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use getaddrinfo to get the sockaddr.
	Use getaddrinfo to get the sockaddr to use for connecting to a remote
	server as Connection->NetworkAddr may be a hostname as well. Use a
	loop to support both IP and IPv6.

	* dlls/ole32/compobj.c:
	ole32: Remove the fixme printed if CoGetClassObject fails in CoCreateInstance.
	Remove the fixme printed if CoGetClassObject fails in
	CoCreateInstance, because we already print an error in all cases and
	the error more accurately pin-points the source of the problem.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantVaryingArrayFree.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the pointer if necessary only after doing the
	pointer checks and writing the pointer ID to the wire.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcBindingSetOption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve the traces in the pointer functions.

2006-04-28  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/mlang/mlang.c:
	mlang: Partially implemented ConvertStringEx.

2006-04-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/tests/msg.c:
	user: Test cases demonstrating position changes for MDI children.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/treeview.c:
	comctl32: Update first visible when appropiate in the TVI_SORT case.

2006-04-24  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/drawprim.c:
	wined3d: Remove dead shader code.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* dlls/setupapi/parser.c:
	setupapi: Fix parsing of UCS-16 files.
	Fix parsing of UCS-16 files prefixed with the Unicode BOM. Based on a
	patch by Hervé Poussineau.

2006-05-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_stream.c:
	ole32: IPersistStream is also implemented by any object that implements IStream.

	* dlls/ole32/storage32.c:
	ole32: Fix typos in StgCreateStorageEx and StgOpenStorageEx.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY allows other IStorage objects to be opened in transacted mode with read/write access.

	* dlls/oleaut32/typelib.c:
	oleaut32: Check the return value from VariantCopy when copying values
	for VT_VARIANT typed parameters for ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Support values being passed into VT_VARIANT|VT_BYREF typed parameters in ITypeInfo::Invoke.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Check that the storage was opened with write access before creating a new stream or sub-storage.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Copy the mode flags into the STATSTG structure in IStorage::Stat.
	Copy the mode flags into the STATSTG structure in IStorage::Stat. Don't
	store the STGM_CREATE flag in openFlags, since it is only relevant when
	opening the stream and the tests show that it isn't returned in the
	STATSTG structure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for IStorage::Stat.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix access right check for opening and creating streams and storages.
	Check the access mode for opening and creating streams and storages
	doesn't exceed the access rights the current storage was opened with,
	not the parent storage.

	* dlls/ole32/stg_stream.c:
	ole32: Add more tracing for reading and writing storage streams.
	Add more tracing for read and write operations and warn in the case of
	failure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for sub-storages and creating streams.
	Replace a test that fails on NT and with DCOM95 DLLs with a test that
	ensures access permissions are checked correctly for sub-storages and
	creating streams.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a storage test for reading and writing of streams that have
	had their parent storage released.

	* dlls/ntdll/nt.c:
	ntdll: Fix size check for NtQueryInformationToken(TokenGroups).
	For NtQueryInformationToken(TokenGroups), don't do a size check before
	the server call, as we don't know how many SIDs there are to return
	and hence the needed buffer size.

2006-05-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Alignment fixes for safearrays.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fix tests under win2k.

2006-05-02  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Split out the SAFEARRAY and BSTR tests so that they can be used in the upcoming VARIANT tests.

2006-04-29  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix BSTR marshaling to be wire compatible with Windows.

2006-05-03  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Add case sensitivity string table tests.

2006-05-02  Troy Rollo <wine@troy.rollo.name>

	* dlls/gdi/font.c:
	gdi: Fix GetTextExentExPointW to return values consistent with GetTextExtentPointW.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix test for GetPrinterDriver.

2006-05-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/sync.c, dlls/ntdll/debugbuffer.c, dlls/ntdll/reg.c,
	  dlls/ntdll/thread.c:
	Don't check pointers for NULL before RtlFreeHeap. It is redundant.

	* dlls/secur32/secur32.c:
	secur32: Missing LeaveCriticalSection on error paths.

2006-04-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Don't fail if the dll to register doesn't exist.

2006-04-30  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_ProfferService.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_QueryServiceExec.

	* dlls/ole32/stg_stream.c:
	ole32: Return STG_E_REVERTED when a stream's parent storage has been closed.

2006-04-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added some comments.

2006-04-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_ToolBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_StatusBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_AddressBar implementation.

2006-04-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_MenuBar implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_HWND implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Visible implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix GetMiscStatus implementation.

2006-04-25  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: QueryInterface corrections.

2006-04-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Add partial support for ISC_REQ_ALLOCATE_MEMORY in the NTLM security provider.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c:
	secur32: Fix some wrong assumptions in the NTLM test case, make it pass in XP SP2 and Wine.

	* configure, configure.ac, dlls/Makefile.in, dlls/mprapi/.gitignore,
	  dlls/mprapi/Makefile.in, dlls/mprapi/mprapi.c,
	  dlls/mprapi/mprapi.spec, include/Makefile.in, include/mprapi.h:
	Add a stub implementation of mprapi.dll.

2006-04-27  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l, libs/wpp/wpp_private.h:
	wpp: Support long long constants if configure says long long is available

2006-04-27  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/tests/input.c:
	user: tests: Change INPUT to TEST_INPUT, fix union usage.

2006-04-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/vertexshader.c:
	wined3d: Vertex Shader regtype cleanups.

2006-04-22  Dan Kegel <dank@kegel.com>

	* dlls/msi/source.c:
	msi: Fix missing case in MsiSourceListAddSourceEx.

2006-04-28  James Hawkins <truiken@gmail.com>

	* dlls/ole32/storage32.c:
	ole32: StorageImpl_GetROBigBlock can return NULL so check for NULL before doing a memcpy.

	* dlls/advpack/install.c:
	advpack: Implement the DelDirs command.

	* dlls/advpack/install.c:
	advpack: Implement the CheckAdminRights option.

	* dlls/advpack/install.c:
	advpack: Implement the RunPreSetupCommands command.

	* dlls/advpack/install.c:
	advpack: INF install is implemented so fix the documentation.

	* dlls/advpack/install.c:
	advpack: Implement the PerUserInstall command.

	* dlls/advpack/install.c:
	advpack: Leave room for the NULL terminator in the working_dir string.

	* dlls/advpack/install.c:
	advpack: NULL-terminate the source path.

	* dlls/advpack/install.c:
	advpack: Return the hresult in ExecuteCabW.

	* dlls/advpack/reg.c:
	advpack: Clean up the formatting of RegInstall to match the rest of the file.

	* dlls/advpack/reg.c:
	advpack: Perform an Advanced INF-level install in RegInstall.

	* dlls/advpack/reg.c:
	advpack: Factor out writing predefined strings into write_predefined_strings.

	* dlls/advpack/advpack.c:
	advpack: Ignore the return value from the OCX registration.

2006-04-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/search.c:
	wldap32: Document the search functions.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel/kernel_main.c:
	kernel: Remove no longer needed includes.

2006-04-21  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/.gitignore, dlls/advapi32/tests/Makefile.in,
	  dlls/advapi32/tests/lsa.c:
	advapi32: Add some lsa tests.

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaClose return value.

2006-04-29  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c:
	netapi32: Implement NetUserModalsGet level 2.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add DirectSoundBuffer_Lock tests.

2006-04-28  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Check DirectSoundBuffer_Lock parameters.
	Check DirectSoundBuffer_Lock parameters and return an error (like
	Windows) rather than fixing up the parameters.

2006-04-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionInterface implementation.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionPointContainer implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of connection points.

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IConnectionPointContainer stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_body implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmltextcont.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLTextContainer stub implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added IHTMLTextContainer declaration.

2006-04-28  Fatih Asici <fasici@linux-sevenler.org>

	* fonts/ms_sans_serif.sfd:
	fonts: Add missing Latin glyph to ms_sans_serif.

	* fonts/system.sfd:
	fonts: Add some missing Latin glyphs to System.

	* fonts/courier.sfd:
	fonts: Add some missing Latin glyphs to Courier.

2006-04-28  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetDocumentation_Proxy/Stub.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetFuncDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetTypeAttr_Proxy and friends.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for non-encapsulated unions.

	* dlls/gdi/freetype.c:
	gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .
	FcPatternGetString( FC_FILE ) returns the whole path.  Go figure.

2006-04-22  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widl.man.in:
	widl: Implement 'oldnames' option.

	* tools/widl/typegen.c:
	widl: Fix a typo.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* server/thread.c:
	server: Threads should start off without having an impersonation token.

	* dlls/advapi32/security.c:
	advapi32: Implement the majority of ImpersonateLoggedOnUser.

	* dlls/wininet/internet.c:
	wininet: Initialise the LPWITHREADERROR structure after it has been allocated.

	* include/ndrtypes.h:
	include: Copy some format character types from wine/rpcfc.h to
	ndrtypes.h and change them into an enumeration.

2006-04-28  Mike McCormack <mike@codeweavers.com>

	* include/rpcdce.h:
	rpcrt4: Add some defines.

2006-04-26  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add stub implementations for RPC authentication functions.

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: Fix peeking of http data with a nul byte in it.

	* dlls/msi/package.c:
	msi: Use the source name of the msi package when it fails to copy.

	* programs/msiexec/msiexec.c:
	msiexec: Force using /i file.msi, some programs pass properties without an =.

2006-04-25  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Store drop targets in a standard list.

2006-04-22  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/tests/access.c:
	netapi32: Add minimal NetUserModalsGet test.

2006-04-22  András Kovács <andras@csevego.net>

	* programs/regedit/Hu.rc, programs/regedit/rsrc.rc:
	regedit: Translation to Hungarian.

	* programs/wordpad/Hu.rc, programs/wordpad/rsrc.rc:
	wordpad: Translation to Hungarian.

	* documentation/README.hu:
	Translated README file to Hungarian.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y:
	widl: Fix a typo.

	* include/exdisp.idl, include/mshtml.idl:
	include: Added missing importlib.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Ignore the SizeOfHeaders field and compute the correct size ourselves.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h:
	widl: Added importlib parsing code.

	* dlls/shdocvw/iexplore.c:
	shdocvw: Don't create IE default window in embedding mode.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use InternetExplorer object in create_ie_window.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Invalid sockets should have a value of -1.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppy.y:
	wpp: Fixed typo in long long constants handling.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l:
	wpp: Implement long long constant parsing.

2006-04-19  Hans Leidekker <hans@it.vu.nl>

	* include/windns.h:
	dnsapi: Add a couple of macros and prototypes.

2006-04-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Fix mipmap level count.

	* dlls/wined3d/pixelshader.c:
	wined3d: Improve/implement D3DSIO_TEX.
	- unify per-version cases into a single sequence
	- make use of get_register_name() for the destination register
	- ignore destination write mask - it's only allowed on 2.0+ shaders,
	and only the default mask is allowed there (xyzw)
	- enable swizzle on texld 1.4 (it works together with dw/dz modifiers)
	- implement for shaders 2.0-3.0

	* dlls/wined3d/utils.c:
	wined3d: Texture format corrections.
	- add missing GL type and make GL cfg entries for A16B16G16R16
	- correct L16 type to UNSIGNED_SHORT (..16 = short, not byte)
	- change internal format for X8R8G8B8 from GL_RGB to GL_RGB8 which
	seems more correct

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Correct vtrace usage.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add support for the ncacn_ip_tcp transport layer.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a stub transport layer for ncacn_ip_tcp.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Hide the details of the rpc transport mechanism.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Abstract RPCRT4_SpawnConnection.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move the connected check inside the named pipe code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Split the transport layer into a different file.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Allocate RpcServerProtseq in a single place.

2006-04-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix return codes of ScriptGetFontProperties + tests.

2006-04-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy return values.

2006-04-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DPalette.

2006-04-20  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to strings.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* include/poppack.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h:
	include: Expand pack nesting from 3 to 15 levels.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Added WineEngGetCharABCWidthsI stub for the non-freetype case.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel_main.c:
	kernel: Make GetTickCount call NtGetTickCount.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/time.c:
	ntdll: Added NtGetTickCount implementation.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c:
	user: Don't return CLASS_OTHER_PROCESS when modifying a class.
	Based on a patch by qingdoa daoo.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract the transport layer functionality.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionW.

	* dlls/advpack/install.c:
	advpack: Implement ExecuteCabW.

	* dlls/advpack/install.c:
	advpack: Implement the RunPostSetupCommands callback.

	* dlls/advpack/advpack_private.h, dlls/advpack/install.c:
	advpack: Implement the RegisterOCXs callback.

2006-04-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Set defaults for ScriptGetFontProperties.
	Set defaults similar to Win XP for Kashida and set the default char in
	ScriptGetFontProperties.

	* dlls/usp10/usp10.c:
	usp10: Remove the need to pass chars to ScriptPlace.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c:
	server: Remove some no longer needed ptrace code to set registers.
	Also make sure the debug registers are properly copied to the context
	when set.

	* dlls/ntdll/exception.c:
	ntdll: Use NtSetContextThread in NtRaiseException.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  server/context_i386.c:
	ntdll: Get registers on the client side for NtGetContextThread on the current thread.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Trace corrections/improvements.

2006-04-19  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix an unsigned comparison to zero.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/install.c:
	advpack: Set the ldids of the install section in install_init.

	* dlls/advpack/install.c:
	advpack: Add stub handling for the RegisterOCXs command.

	* dlls/advpack/install.c:
	advpack: Don't TRACE the internals of the setup pointer as it can be NULL.

	* dlls/advpack/install.c:
	advpack: LaunchINFSectionExA is no longer a stub.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use a separate function to open each protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract access to the connection's waitable object.

2006-04-20  Robert Shearman <rob@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Prevent NULL pointer de-refs on "void *" types.

	* dlls/wininet/internet.c:
	wininet: Don't allocate memory for the thread error structure until it is needed.
	Don't allocate memory for the thread error structure until it is
	needed, as it is quite large and wastes memory for threads that don't
	call any wininet function.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't apply the offset to the pointer passed to callback conformance functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Free all pointers by default, except for conformant strings.
	Free all pointers by default, except for conformant strings.
	Conformant arrays should always be freed.
	Add FC_CVARRAY to list of known types to avoid a FIXME.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix some memory leaks.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use the documented NDR_PROC_HEADER_EXTS structure.
	Use the documented NDR_PROC_HEADER_EXTS structure instead of the
	current NDR_PROC_EXTENSIONS structure currently in ndr_stubless.c.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use INTERPRETER_OPT_FLAGS in ndrtypes.h instead of flags on an unsigned char.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the return value on the stack for interpreted stubs.
	Store the return value on the stack for stubs, as MIDL reserves space
	for it and gives us a stack offset. This fixes calling methods with
	thunks that assume that the return value will be stored on the stack.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Correctly fill in StackTop for stubless clients/servers.
	Correctly fill in StackTop for stubless clients/servers so that
	conformance for top-level parameters works.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: There's no need to set stubMsg.StackTop twice.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the MSVC version of call_server_func.
	Fix the MSVC version of call_server_func to pop the registers in the
	same order they were pushed.

2006-04-19  Thomas Kho <tkho@ucla.edu>

	* dlls/x11drv/keyboard.c:
	x11drv: Virtual key input scrubbing in X11DRV_send_keyboard_input.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/progman/Cs.rc, programs/progman/De.rc, programs/progman/En.rc,
	  programs/progman/Es.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Tr.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc:
	progman: Add close button and sysmenu to dialogs.

	* dlls/comctl32/header.c:
	comctl32: header: Avoid freeing invalid pointers.

2006-04-19  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add SS_NOPREFIX to the text style in message boxes.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::Navigate2 implementation.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Move create_doc_view_hwnd call to navigate_url.

	* dlls/shdocvw/factory.c, dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Register InternetExplorer class factory in IEWinMain.
	Based on a patch by Mike McCormack.

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::put_Visible implementation.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move IEWinMain to iexplore.c.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Added beginning InternetExplorer implementation.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move DllGetClassObject implementation to factory.c.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move more initialization code to DocHost_Init.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added HTMLDocumentEvents and HTMLDocumentEvents2 dispifaces.

2006-04-19  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Added implementation of GetCharABCWidthsI.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/process.c, server/process.h, server/thread.c, server/thread.h:
	server: Use the standard suspend mechanism to simulate a breakpoint
	in an active process, instead of sending a SIGTRAP.

	* loader/glibc.c:
	loader: Attempt to detect broken vmsplit setups.

2006-04-18  Mike Frysinger <vapier@gentoo.org>

	* dlls/dinput/joystick_linux.c, dlls/winmm/joystick/joystick.c:
	joystick: Search for /dev/input/js as well as /dev/js.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Support for shift modifiers.

	* dlls/wined3d/pixelshader.c:
	wined3d: Support more than 4/6 tex/temp registers.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: Test the HDM_SETITEM notifications.

	* dlls/comctl32/header.c:
	comctl32: header: Send correct notify after HDM_SETITEM.
	The HDN_ITEMCHANGING notify should have the new data instead of the
	old one.  Both HDN_ITEMCHANGING and HDN_ITEMCHANGED now have the text
	field if it changed.

	* dlls/comctl32/comctl32.h, dlls/comctl32/comctl32undoc.c:
	comctl32: Add Str_SetPtrWtoA analogue to Str_SetPtrAtoW.

2006-04-19  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement CLEANLOCALSTORAGE marshalling and fix GetLibAttr to use it.
	Based on some documentation by Rob Shearman.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Use rpcrt4_conn_read in RPCRT4_OpenBinding.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Send more compatible with write(2).

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Receive more compatible with read(2).

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Simplify RPCRT4_OpenConnection() a little.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Split code to open a pipe from RPCRT4_OpenConnection.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Isolate code to open named pipes out of RPCRT4_OpenConnection.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Don't fail to initialize if we can't load the main module as ELF.

	* dlls/shell32/shell32.spec:
	shell32: Fixed ordinals of SHDefExtractIconA/W.

2006-04-18  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Find popup menus by ID.
	- Find menus by ID: Proper fallback to popup menus.
	- Use the menu ID, not the handle for the fallback.
	- Save the fallback menu's position.

2006-04-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement GetHWND and SetHWND.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumTextureFormats.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumZBufferFormats.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::EnumDisplayModes.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Implement Init3D and Uninit3D.

2006-04-18  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Set the destination directory to the working directory if key equals SourceDir.

	* dlls/advpack/advpack.c:
	advpack: Add the ability to set multiple keys on one line in set_ldid.

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Put function declarations in advpack_private.h.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Stub implementation for rpcrt4.RpcMgmtEpEltInqBegin().

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add a stub implementation for rpcrt4.RpcMgmtInqIfIds().

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sync.c, include/winternl.h:
	ntdll: Stub implementations of NtCreateIoCompletion, NtSetIoCompletion, and NtRemoveIoCompletion.
	Based on a patch by Rob Shearman.

2006-04-18  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fix return values in BitBlt/StretchBlt.

	* dlls/gdi/bitblt.c:
	gdi32: Fix {Bit,Stretch}Blt fallbacks to StretchDIBits.

2006-04-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Remove the unused bUnicode.

	* dlls/comctl32/header.c:
	comctl32: header: Correct WM_[GS]ETUNICODEFORMAT.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/msi.c:
	msi: Clean up memset usage.

	* dlls/msi/classes.c:
	msi: Fix a regression caused by some bad logic.

	* dlls/msi/helpers.c:
	msi: Don't fall back to the folder's parent if the folder doesn't exist.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/hal.c:
	explorer: Reuse drives that point to the same device to avoid memory leaks.
	Also print a warning if HAL support is not compiled in.

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/winebuild.man.in:
	winebuild: Disable linking to external symbols by default.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_scanf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_printf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Add wrappers for the ber_* functions.

	* dlls/ntdll/misc.c, dlls/ntdll/ntdll.spec:
	ntdll: Add wrappers for the remaining math functions.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/string.c, dlls/ntdll/wcstring.c:
	ntdll: Add wrappers for the string functions.

	* configure, configure.ac:
	configure: Added check to catch old versions of the dbus library.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	msi: Simplify create_component_advertise_string() a little.

2006-04-18  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix differences between the size returned in sizing the
	buffer for interfaces and the buffer actually used.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Initialise BSTR pointer to NULL in VARIANT_UserUnmarshal.
	Initialise BSTR pointer to NULL before calling BSTR_UserUnmarshal,
	otherwise BSTR_UserUnmarshal will try to use the memory in the
	pointer.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Ignore [object] attribute on interfaces written to a typelib.

2006-04-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/tests/info.c:
	winspool: Add a test for DocumentProperties.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Initial version of dynamic drive support using HAL.

	* configure, configure.ac, include/config.h.in:
	configure: Added checks for HAL libraries.

	* libs/wine/ldt.c:
	libwine: Added a couple of missing memory constraints in LDT syscalls.

2006-04-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in navigate_url.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in Shell DocObject View window.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to DocHost object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use Dochost, not WebBrowser, in deactivate_document.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Get rid of WebBrowser dependency in DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/frame.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleInPlaceFrame to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IServiceProvider to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDispatch to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleCommandTarget to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleDocumentSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDocHostUIHandler to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleInPlaceSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleClientSite to new DocHost object to allow sharing
	code between WebBrowser and InternetExplorer.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Fixed index in module table for delayed imports.

2006-04-15  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use ARB[f|v]p1.0 for ps2/ps3/vs3.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use correct register number mask.
	The regmask currently being used is wrong - 0x1FFF includes the high
	two bits of the register type.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Dcl opcode takes 2 parameters.

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix _dw modifier.
	The _dw modifier needs to specify a component swizzle, just like the
	_dz currently does.

2006-04-16  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix flow control instructions number of parameters.
	- else, endif, break take 0 parameters [not 2]
	- if, rep take 1 parameter [not 2]
	- breakp takes 1 parameter [not 2]
	- move all flow control instructions in one place
	- sync software shaders signatures with this

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Skip unhandled opcodes in vshaders.

	* dlls/wined3d/pixelshader.c:
	wined3d: Texkill is supported for ps2.0-3.0.

2006-04-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: Send Unicode notifications if required in header control.

	* dlls/comctl32/listview.c:
	comctl32: Scroll listview if changing scroll bounds changes the scroll pos.

	* dlls/shell32/shlview.c:
	shell32: Use LVCOLUMW instead of LVCOLUMNA in LVM_INSERTCOLUMNW listview message.

	* programs/progman/dialog.c, programs/progman/grpfile.c:
	progman: Fix two simple bugs.
	Use correctly the GetOpenFileName function.
	Use _lcreat instead of _lopen to create a new file.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: More tests and fixes for STGM_PRIORITY.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix a declaration.

	* dlls/ole32/tests/marshal.c:
	ole32: Uncomment some code to make sure it is compiled, but don't run it.

2006-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining DirectDraw methods to WineD3DSurface.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining IWineD3DDevice methods.

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DPalette.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add a parameter for surface type selection.

2006-04-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define 2 more avi resources.

2006-04-17  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Exit with a non-zero exit code if a core dependency is missing.

	* configure, configure.ac, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in:
	configure: Remove the --disable-debug and --disable-trace options.

	* dlls/msi/msi.c, dlls/msi/package.c, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Fix some possible NULL pointer dereferences (Coverity).

	* programs/regsvr32/regsvr32.c:
	regsvr32: Ignore the /c flag.

2006-04-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for DeleteMonitor.

	* dlls/winspool/info.c:
	winspool: Implement DeleteMonitor.

2006-04-17  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add install_init/release to perform install initialization.

	* dlls/advpack/advpack.c:
	advpack: Factor out OCX registering into do_ocx_reg.

	* dlls/advpack/advpack.c:
	advpack: Use get_parameter to read the three parameters of RegisterOCX.
	Use get_parameter to read the three parameters to RegisterOCX.
	Remove the ERRs and TRACEs now that we return the HRESULT.

	* dlls/advpack/advpack.c:
	advpack: The fallback directory is the fifth field index, not the sixth.

	* dlls/advpack/install.c:
	advpack: Use the default queue callback when calling SetupInstallFromInfSection.

	* dlls/advpack/advpack.c:
	advpack: Fix the documentation for RegisterOCX.

	* dlls/advpack/advpack.c:
	advpack: Fix the return type of RegisterOCX.

2006-04-16  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple RPC interfaces per binary.

2006-04-16  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_No.rc:
	twain_32: Added Norwegian resource.

2006-04-17  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winefile/No.rc:
	winefile: Fix typo in the Norwegian resources.

2006-04-16  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: On FreeBSD, make wine-pthread the new default.

2006-04-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fr.rc:
	twain_32: French localization.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fr.rc:
	shlwapi: French localization.

	* dlls/iccvid/iccvid_Fr.rc, dlls/iccvid/rsrc.rc:
	iccvid: French localization.

	* dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/rsrc.rc:
	msvfw: French localization.

	* dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/rsrc.rc:
	msvidc: French localization.

	* programs/winecfg/Fr.rc:
	winecfg: French localization.

2006-04-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/dbghelp/stack.c:
	dbghelp: Params of LPSTACKFRAME64 only has 4 elements.

2006-04-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add a method to change the front and back buffers.

2006-04-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Blt.

2006-04-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysString as the error-path was always taken.

2006-04-15  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to arrays.

2006-04-14  Andrew Riedi <andrewriedi@gmail.com>

	* programs/explorer/systray.c:
	explorer: Fixed a typo in system tray.

2006-04-13  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview notify fix.
	Turn off updating for that the unselect and select and then turns it
	on for the focus call, this results in 1 edit notify being sent at the
	end of the operation.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/heap.c:
	kernel: Add some tests for Lock/Unlock memory handles.

	* dlls/kernel/heap.c:
	kernel: Update WARN/ERR and documentation for GlobalLock/GlobalUnlock.

2006-04-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added Top, Left, Height and Width properties implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Store IOleInPlaceSite in WebBrowser object.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Update pos_rect and clip_rect in SetObjectRects.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c:
	shdocvw: Better window handling.
	Use unicode version of DefWindowProc in unicode window procs.
	Fix window styles.

	* dlls/shell32/shlexec.c:
	shell32: Don't crash in SHELL_ExecuteW if psei->lpDirectory is NULL.

2006-04-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c:
	wldap32: Document the miscellaneous functions.

2006-04-13  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix null pointer check in IWineD3DImpl_GetPixelShader.

2006-04-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Add a test for GetPrinterDriver, make it pass under Wine.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Constify NDR function tables.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/animate.c:
	comctl32: Change return code comparison in AVI control.

2006-04-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Document RegisterOCX.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Fix common files directory location in shell32_Fi.rc.

2006-04-12  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/input.c, dlls/x11drv/keyboard.c, server/queue.c:
	x11drv: Properly handle VK_LMENU input.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/toolhelp.c:
	kernel: Load tests again on NT 3.51 (toolhelp API not present).

2006-04-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add GetHWND and SetHWND methods to IWineD3DDevice.

2006-04-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add macros for (Un)Init3D and Flip.

2006-04-13  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_It.rc:
	shell32: Italian resources update.

2006-04-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/winefile.c:
	winefile: Use header full drag.

	* include/tchar.h:
	include: Fix a mistake in the declaration of _sntprintf.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* programs/winecfg/Fi.rc:
	winecfg: Update the Finnish resources.

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fi.rc:
	twain_32: Add Finnish resources.

2006-04-13  Mike McCormack <mike@codeweavers.com>

	* include/wtypes.idl:
	wtypes.idl: Add size attribute to a void pointer.

	* tools/widl/write_msft.c:
	widl: Add support for VT_I8 and VT_UI8 to msft typelibs.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Only try to mmap the exact address when reserving memory.
	This should avoid some extra work on platforms that need the
	try_mmap_fixed function.

	* libs/wine/mmap.c:
	libwine: Reorganize the mmap code a bit to avoid some #ifdefs.

	* server/ptrace.c:
	server: Remove the use_ptrace variable.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.12.

----------------------------------------------------------------
2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/advpack/reg.c:
	advpack: Fixed a couple of typos in Unicode conversion.

	* dlls/crypt32/encode.c:
	crypt32: Fixed day/month mismatch in time encoding routines.

	* dlls/crypt32/cert.c:
	crypt32: Avoid crash on NULL pointer in trace.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Fix dereferencing a potential NULL pointer.

2006-04-12  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add case 0 to switch statement and fix the fixme.
	Screwed up a copy/paste from one of my recent patches.  This
	eliminates the erroneous FIXME for calls to D3DFmtMakeGlCfg() with 0
	as the Stencil format.  Also, it changes the FIXME to print the
	correct variable.

2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/version/install.c:
	version: Translate some German comments.

2006-04-13  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Add some tests to ScriptGetFontProperties.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/undname.c:
	msvcrt: If caller passes a NULL deallocator to __unDNameEx, don't use it.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Flip.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Split device creation and opengl initialization.

2006-04-12  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/device.c:
	wined3d: Combined unhandled renderstate cases into one.

	* dlls/wined3d/device.c:
	wined3d: IWineD3DDeviceImpl_Reset cleanup.
	Joined the functions as it looks like a typo in the function name
	(IWineD3DDeviceImpl_Rest isn't used anywhere but contains comments).

2006-04-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Allocate wszApplicationName on the heap as it may be longer than MAX_PATH.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use GetClientRect, not GetWindowRect in create_doc_view_hwnd.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps/init.c:
	wineps: Load generic.ppd from the data dir if nothing else is specified.

2006-04-12  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, include/config.h.in, tools/sfnt2fnt.c:
	tools: Don't try to use FT_Load_Sfnt_Table unless FreeType has it.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Workaround for broken no-exec protections.
	Add an executable page at the top of the address space to defeat
	broken no-exec protections that play with the code selector limit.

2006-04-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: Fix listview column resize.
	Draw a track line after a HDN_TRACK, resize the columns only after a
	HDN_ITEMCHANGED.
	Create the header with HDS_FULLDRAG.

	* dlls/comctl32/header.c:
	comctl32: Fix listview column resize.
	Fix the HDS_FULLDRAG headers notifications, invalidate such a control
	after a mouse move.

2006-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c:
	avifil32: Avoid not necessary zeroing out of an allocated memory block.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a resource dumper.

2006-04-11  Jean-Philippe Theriault <Jean-Philippe_Theriault@cimmetry.com>

	* dlls/gdi/enhmetafile.c:
	gdi32: Fix for PlayEnhMetaFileRecord support of EMR_SELECTPALETTE record.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/toolhelp.c:
	kernel32: Added some tests for toolhelp functions.

	* dlls/kernel/toolhelp.c:
	kernel32: Rewrote toolhelp implementation only on top of ntdll functions.

2006-04-11  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added dnsapi tests.

2006-04-12  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable texld instruction (shaders 1.4).

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Reorganize shaders code a bit.

2006-04-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/page.c:
	wldap32: Improve error handling in create_page_control().

2006-04-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for AddMonitor.

2006-04-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement AddMonitor.

2006-04-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexdeclaration.c,
	  dlls/d3d9/vertexshader.c:
	d3d9: VertexDeclaration and VertexShader should keep reference to the parent device object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: VertexShader should keep reference to the parent device object.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Don't attach thread input to the desktop.
	Now that the desktop can be owned by a thread we need to explicitly
	check for it in the thread attach check.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/int2f.c:
	winedos: Implement INT2F/AX=1501 (get drive device list).

2006-04-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Fix possible crash bugs in error path.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/regsvr.c:
	shdocvw: Register iexplore.exe as a COM local server.

2006-04-11  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Spelling fixes and downgrade a FIXME to a TRACE.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Don't do a logical AND on the swap effect.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/resource.c:
	wined3d: Store the private data in IWineD3DResource::SetPrivateData.

2006-04-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/para.c:
	riched20: Allow inheriting table cell definitions from previous table row.
	Allow inheriting of table cell definitions from a previous table row
	when the current table row does not contain a \trowd, only an \intbl.

2006-04-11  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Ignore leading spaces in PathMatchSpec.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathMatchSpec.

	* dlls/gdi/font.c:
	gdi: Do not convert string paramter when rendering glyph indexes.

	* dlls/gdi/font.c:
	gdi: Write out glyph count correctly in GetCharacterPlacementA.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: There are currently no tests in the programs directory.

2006-04-09  Dan Kegel <dank@kegel.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Fix two clipboard bugs.
	Fix two clipboard problems that caused BadAtom crashes and caused some
	clipboard formats to not be exported properly.

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove bogus address register warning for pixel shaders.
	Pixel shaders don't have an address register, this warning is bogus.
	D3DSPR_ADDR is interpreted as D3DSPR_TEXTURE for pixel shaders.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/install.c:
	advpack: Implement UserInstStubWrapper.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
	avifil32: Fix a regression caused by patch removing GlobalAllocs by using HEAP_ZERO_INIT.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: IO init.
	Make sure, when copying handles from std ones (when no io info is
	inherited from parent) to create inheritable handles (spotted by
	qingdao daoo).

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/debug.c, tools/winedump/dump.c,
	  tools/winedump/minidump.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/winedump.h:
	winedump: Constify some pointers.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c, tools/winedump/pe.c:
	winedump: Added detection of Wine fake dlls.
	Also pass the real start of the file to the dump functions, instead of
	having the generic code care about the specifics of the individual
	file formats.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/int2f.c, dlls/winedos/module.c:
	winedos: Implement true CDROM DOS device driver.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move all device driver initialization code to a newly written
	function DOSDEV_SetupDevice().

	* dlls/winedos/int2f.c:
	winedos: Move most of MSCDEX stuff into a separate function.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move some declarations to the header file.

2006-04-10  Antonio Codazzi <f_sophia@libero.it>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Eo.rc:
	wininet: Added Esperanto language.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Eo.rc:
	shlwapi: Added Esperanto language.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Eo.rc:
	oleaut32: Added Esperanto language.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Eo.rc:
	mpr: Added Esperanto language.

	* programs/view/Eo.rc, programs/view/viewrc.rc:
	view: Added Esperanto language.

	* dlls/serialui/Eo.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Esperanto language.

	* dlls/mpr/mpr_It.rc:
	mpr: Italian language update.

	* dlls/wininet/wininet_It.rc:
	wininet: Italian language update.

2006-04-10  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move the private class factory declaration into factory.c.

2006-04-11  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resources.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Perform a setupapi-level install of the INF file in RunSetupCommand.

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionEx.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c,
	  dlls/advpack/reg.c:
	advpack: Standardize the format of advpack traces.
	Display all strings in advpack traces.
	Use debugstr_a/w for TRACE strings.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Standardize the format of advpack parameter lists.

2006-04-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/ntdll/thread.c:
	ntdll: Initialize a variable.
	Fix an uninitialized pointer in RtlCreateUserThread, caught by
	coverity.

	* dlls/crypt32/cert.c:
	crypt32: Fix a typo caught by coverity.

2006-04-11  Jacek Caban <jacek@codeweavers.com>

	* include/exdisp.idl:
	exdisp.idl: Added missing attributes and fix some arguments names.

	* include/exdisp.idl:
	exdisp.idl: Added missing declarations.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved the tkill function to ptrace.c.

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.h:
	server: Get rid of the no longer used get_thread_single_step function.

	* server/debugger.c, server/ptrace.c, server/thread.c, server/thread.h:
	server: Removed the thread attached flag, since we always detach now.

	* server/ptrace.c:
	server: Always detach from the thread when we are done with ptrace.

	* dlls/user/tests/menu.c:
	user: Use a smaller window for the menu test.

2006-04-10  Jacek Caban <jacek@codeweavers.com>

	* include/docobj.idl:
	docobj.idl: Fix some enums declarations.

	* include/exdisp.idl:
	exdisp.idl: Move declarations to better match to IE SDK.

	* include/exdisp.idl:
	exdisp.idl: Added SHDocVw type library declaration.

2006-04-10  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/win32.api:
	dnsapi: Teach winapi_check about dnsapi.dll.

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	dnsapi: Tell Wine developers and packagers about dnsapi.dll.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/twain/.gitignore,
	  dlls/twain/Makefile.in, dlls/twain/README, dlls/twain/TWAIN,
	  dlls/twain/capability.c, dlls/twain/ds_audio.c, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain.h, dlls/twain/twain.spec,
	  dlls/twain/twain16_main.c, dlls/twain/twain32_main.c,
	  dlls/twain/twain_32.spec, dlls/twain/twain_De.rc,
	  dlls/twain/twain_En.rc, dlls/twain/twain_Ko.rc, dlls/twain/twain_i.h,
	  dlls/twain/ui.c, dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/README, dlls/twain_32/TWAIN,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain.h,
	  dlls/twain_32/twain.spec, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_32.spec,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_i.h,
	  dlls/twain_32/ui.c:
	twain_32: Renamed the dlls/twain directory to dlls/twain_32.

	* configure, configure.ac, dlls/Makefile.in, dlls/riched32/.gitignore,
	  dlls/riched32/Makefile.in, dlls/riched32/riched32.spec,
	  dlls/riched32/richedit.c, dlls/richedit/.gitignore,
	  dlls/richedit/Makefile.in, dlls/richedit/riched32.spec,
	  dlls/richedit/richedit.c:
	riched32: Renamed the dlls/richedit directory to dlls/riched32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/cdlg_Bg.rc, dlls/comdlg32/cdlg_Ca.rc,
	  dlls/comdlg32/cdlg_Cn.rc, dlls/comdlg32/cdlg_Cs.rc,
	  dlls/comdlg32/cdlg_Da.rc, dlls/comdlg32/cdlg_De.rc,
	  dlls/comdlg32/cdlg_En.rc, dlls/comdlg32/cdlg_Eo.rc,
	  dlls/comdlg32/cdlg_Es.rc, dlls/comdlg32/cdlg_Fi.rc,
	  dlls/comdlg32/cdlg_Fr.rc, dlls/comdlg32/cdlg_Hu.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/comdlg32/cdlg_Ja.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/comdlg32/cdlg_Nl.rc,
	  dlls/comdlg32/cdlg_No.rc, dlls/comdlg32/cdlg_Pl.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/comdlg32/cdlg_Si.rc, dlls/comdlg32/cdlg_Sk.rc,
	  dlls/comdlg32/cdlg_Sv.rc, dlls/comdlg32/cdlg_Th.rc,
	  dlls/comdlg32/cdlg_Tr.rc, dlls/comdlg32/cdlg_Uk.rc,
	  dlls/comdlg32/cdlg_Wa.rc, dlls/comdlg32/cdlg_Zh.rc,
	  dlls/comdlg32/cdlg_xx.rc, dlls/comdlg32/colordlg.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/comdlg32.spec,
	  dlls/comdlg32/commdlg.spec, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlg31.h, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h, dlls/comdlg32/filetitle.c,
	  dlls/comdlg32/finddlg.c, dlls/comdlg32/finddlg32.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg.h,
	  dlls/comdlg32/printdlg16.c, dlls/comdlg32/rsrc.rc,
	  dlls/commdlg/.gitignore, dlls/commdlg/Makefile.in,
	  dlls/commdlg/cdlg.h, dlls/commdlg/cdlg16.h, dlls/commdlg/cdlg32.c,
	  dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Eo.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_Hu.rc,
	  dlls/commdlg/cdlg_It.rc, dlls/commdlg/cdlg_Ja.rc,
	  dlls/commdlg/cdlg_Ko.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Th.rc,
	  dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc,
	  dlls/commdlg/cdlg_xx.rc, dlls/commdlg/colordlg.c,
	  dlls/commdlg/colordlg16.c, dlls/commdlg/comdlg32.spec,
	  dlls/commdlg/commdlg.spec, dlls/commdlg/filedlg.c,
	  dlls/commdlg/filedlg16.c, dlls/commdlg/filedlg31.c,
	  dlls/commdlg/filedlg31.h, dlls/commdlg/filedlgbrowser.c,
	  dlls/commdlg/filedlgbrowser.h, dlls/commdlg/filetitle.c,
	  dlls/commdlg/finddlg.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/fontdlg16.c,
	  dlls/commdlg/printdlg.c, dlls/commdlg/printdlg.h,
	  dlls/commdlg/printdlg16.c, dlls/commdlg/rsrc.rc:
	comdlg32: Renamed the dlls/commdlg directory to dlls/comdlg32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msacm/.gitignore, dlls/msacm/Makefile.in, dlls/msacm/driver.c,
	  dlls/msacm/filter.c, dlls/msacm/format.c, dlls/msacm/internal.c,
	  dlls/msacm/msacm.rc, dlls/msacm/msacm.spec, dlls/msacm/msacm32.spec,
	  dlls/msacm/msacm32_main.c, dlls/msacm/msacm_Cs.rc,
	  dlls/msacm/msacm_De.rc, dlls/msacm/msacm_En.rc,
	  dlls/msacm/msacm_Es.rc, dlls/msacm/msacm_Fr.rc,
	  dlls/msacm/msacm_Hu.rc, dlls/msacm/msacm_It.rc,
	  dlls/msacm/msacm_Ja.rc, dlls/msacm/msacm_Ko.rc,
	  dlls/msacm/msacm_Nl.rc, dlls/msacm/msacm_No.rc,
	  dlls/msacm/msacm_Pl.rc, dlls/msacm/msacm_Pt.rc,
	  dlls/msacm/msacm_Tr.rc, dlls/msacm/msacm_main.c,
	  dlls/msacm/pcmconverter.c, dlls/msacm/stream.c,
	  dlls/msacm/tests/.gitignore, dlls/msacm/tests/Makefile.in,
	  dlls/msacm/tests/msacm.c, dlls/msacm/wineacm.h,
	  dlls/msacm32/.gitignore, dlls/msacm32/Makefile.in,
	  dlls/msacm32/driver.c, dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm.spec, dlls/msacm32/msacm32.spec,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/.gitignore, dlls/msacm32/tests/Makefile.in,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  programs/winetest/Makefile.in:
	msacm32: Renamed the dlls/msacm directory to dlls/msacm32.

2006-04-10  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Add support for ttc indices in the font link list.

2006-04-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Add some more debugging info.
	Adds more debugging FIXME's if a specific WINED3DFMT_??? isn't supported.

2006-04-09  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement support for ref pointers to simple structs.

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c, dlls/gdi/tests/font.c:
	gdi32: GetCharABCWidthsW should not crash on a NULL handle.

	* dlls/wldap32/control.c:
	wldap32: Fix broken parameter handling.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/dnsapi/Makefile.in, include/config.h.in:
	dnsapi: Add a configure check for the resolver library and header.

	* configure, configure.ac, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/name.c:
	dnsapi: Add a test for DnsNameCompare_A.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec,
	  dlls/dnsapi/name.c:
	dnsapi: Implement DnsNameCompare_{A,W}.

	* configure, configure.ac, dlls/Makefile.in, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add a stub implementation of dnsapi.dll.

	* include/Makefile.in, include/windns.h:
	dnsapi: Add windns.h.
	Based on a patch sent by Matthew Kehrer a while ago.

2006-04-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Add a test for IDirect3DVertexBuffer7::ProcessVertices.

2006-04-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add initial implementation of SetPerUserSecValues.

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/wine.inf:
	wine.inf: Added dbghelp & imagehlp as fake DLLs.

2006-04-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Print all errors in checkGLcall.

	* dlls/d3d9/pixelshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Downgrade some FIXMEs.

	* dlls/wined3d/utils.c:
	wined3d: Map D3DFMT_L16, D3DFMT_A16B16G16R16 to OpenGL formats.
	Map:
	D3DFMT_L16 -> GL_LUMINANCE16_EXT
	D3DFMT_A16B16G16R16 -> GL_RGBA16_EXT
	as Raphael suggested.
	Also increase the returned Bpp for unknown and unhandled formats from
	4 to 8 bytes - this part fixes segfault in the F.E.A.R demo. It now
	shows some flashy graphics before it dies again :)

2006-04-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: Constify IExplore OLE vtables.

	* dlls/x11drv/keyboard.c:
	x11drv: Update French keyboard layout to better match the X11 one.

2006-04-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian resources.

2006-04-09  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add accented greek glyphs to System.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: The closing brace of a guid string is at index 37.

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c:
	dsound: Fix 2 bugs in ds3d tests.
	Fix 2 bugs in the error paths of the ds3d.c test (coverity).

2006-04-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Terminate some strings in fixmes and traces.

2006-04-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Avoid reading from NULL (GetPrinterDriver).

2006-04-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set active document of both frame and doc window.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use IOleInPlaceObjectWindowless interface of document in deactivate_document.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Make sure to use initialized variables.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Fix ref counting.
	- Fix ref counting.
	- Use This->window instead of QI in NSContainer_Release.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Esperanto language support.

	* dlls/winspool/It.rc, dlls/winspool/winspool.rc:
	winspool: Italian language support.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/winhelp/Eo.rc:
	winhelp: Esperanto language update.

	* programs/regedit/It.rc:
	regedit: Italian language update.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/start/It.rc:
	start: Italian language update.

2006-04-04  Antonio Codazzi <f_sophia@libero.it>

	* programs/uninstaller/Eo.rc:
	uninstaller: Esperanto language adjustments.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Italian language support.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* dlls/winspool/Eo.rc, dlls/winspool/winspool.rc:
	winspool: Esperanto language support.

2006-04-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: A read can fail.

2006-04-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/ddraw.h:
	ddraw: Add MAKEFOURCC to ddraw.h.

	* dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Add typecasts for WINED3DLOCKED_BOX to avoid compiler warnings.

2006-04-08  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add greek glyphs (with thanks to Maria Hadjipanayi).

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	wldap32: Don't handle NULL attrs twice.

	* dlls/wldap32/init.c:
	wldap32: Don't return uninitialised values.

	* dlls/wldap32/error.c:
	wldap32: Fix overrun by one of static array.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Add an missing element to the hbmmenus array.

2006-04-08  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/output.c:
	winedump: Use fchmod() instead of doing system(chmod).

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove NULL This pointer checks.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove unnecessary NULL pointer check.

2006-04-08  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix DVD_ReadStructure's layout of layer information.
	Fix DVD_ReadStructure to reflect what Windows actually does, not what
	Microsoft (incorrectly) documents it to do and not what the DDK
	headers (incorrectly) suggest it does.

2006-04-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/virtual.c:
	ntdll: Added ARM architecture.

2006-04-05  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Add default dsound sample rate and bits per sample.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h:
	dsound: Set default primary buffer sample rate and bits per sample.
	Programs that are written specifically for 2000 and xp don't bother to
	set the primary buffer format because it's a noop.  However wine is
	patterned after win9x and DirectX 7 or earlier which has a real
	primary buffer and expects the program to change the primary buffer
	format if necessary.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/desktop.c, server/window.c:
	explorer: Don't use ExitWindows on shutdown.
	ExitWindows kills all current processes and that creates a race with
	newly started processes. Instead, simply exit and let the new process
	create a new explorer.

2006-04-06  Mike Hearn <mike@plan99.net>

	* dlls/kernel/path.c:
	kernel: Don't crash on NULL arg in GetShortPathNameW.

	* dlls/comctl32/imagelist.c:
	comctl32: Add OOM codepath in imagelist control.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/gdi/enhmetafile.c:
	gdi: Protect GetEnhMetaFilePaletteEntries against bad handles.

	* dlls/kernel/path.c:
	kernel: Correct SearchPathA argument validation.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c:
	dsound: Fix capture test.
	Remove bogus release of NULL pointer code found by Coverity.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysInt.
	TMT_FIRSTINT and TMT_LASTINT are the same value here, so the error
	path would always be taken. Fix to check only that the values are
	outside the possible range.

2006-04-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/browsr.c, dlls/netapi32/share.c:
	netapi32: Move NetShareEnum from browsr.c to share.c.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add a few more tests for SetPerUserSecValues.

2006-04-07  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Also initialize a variable in the failure case.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Use a debug channel to turn on transform debugging.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/ptrace.c, server/thread.c,
	  server/thread.h:
	server: Moved read/write_process_memory and get_selector_entry to ptrace.c.

	* server/process.c:
	server: Hide assumptions about alignment inside the read_process_memory function.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Get rid of alignment requirements in write_process_memory request.
	All the alignment handling is now done in the write_process_memory
	function inside the server.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Allow the inclusion of the wined3d headers when the ddraw headers are included.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBOX to wined3d_types.h.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Rename return values from D3D* to WINED3D*.

2006-04-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/filemoniker.c:
	ole32: Fix typo in FileMonikerImpl_BindToObject.
	Fix apparent typo in FileMonikerImpl_BindToObject, where ppf was
	incorrectly passed into IClassFactory_CreateInstance instead of &ppf
	(found by Coverity).

	* dlls/ole32/compositemoniker.c:
	ole32: Check for pcbSize parameter of CompositeMonikerImpl_GetSizeMax being NULL, rather than non-NULL.

	* dlls/ole32/antimoniker.c:
	ole32: Check for pcbSize in AntiMonikerImpl_GetSizeMax being for NULL, not for non-NULL.

	* dlls/ole32/defaulthandler.c:
	ole32: Fix DefaultHandler_EnumAdvises.
	As per MSDN, if the object has no connections then
	IOleObject::EnumAdvises should return a NULL enumerator and S_OK. This
	is the case when This->oleAdviseHolder is NULL, so do this and avert a
	potential NULL dereference of This->oleAdviseHolder (found by
	Coverity).

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix typo in LPSAFEARRAY_Unmarshal.
	Fix typo in LPSAFEARRAY_Unmarshal where the check for the failure of
	the SafeArrayCreateEx call was missing a dereference operator (found
	by Coverity).

	* dlls/oleaut32/safearray.c:
	oleaut32: Remove deadcode in SafeArrayPutElement.
	Remove deadcode in SafeArrayPutElement, as lpBstr cannot be NULL
	because of the check at the top of the function on pvData (found by
	Coverity).

	* server/console.c:
	server: Free ptr in console_input_append_hist.
	Free ptr in console_input_append_hist before returning, otherwise it
	will be leaked (found by Coverity).
	Remove the setting of last error on mem_alloc failure, as it is already
	done in mem_alloc.

	* server/token.c:
	server: Handle failure of mem_alloc in duplicate_token.

	* server/token.c:
	server: Handle possible mem_alloc failure in create_token.

	* server/queue.c:
	server: Should use release_object on an object instead of free.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Remove broken volume management code.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implement IEWinMain using a simple window frame.

	* dlls/x11drv/wintab.c:
	x11drv: Cursors index used with WTI_DEVICES is zero based.

2006-04-07  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd, tools/sfnt2fnt.c:
	fonts: Add the Won sign in place of the backslash for Korean fonts.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeRunDLL32A to its Unicode counterpart.

	* dlls/advpack/files.c:
	advpack: Rewrite get_parameter to be able to handle an empty parameter.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENT_INTERVAL_* definitions.

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENTRATE_DEFAULT.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_BOX to wined3d_types.h.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Return error if the signal index equals the size of the array.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Remove unnecessary check for NULL.

	* server/registry.c:
	server: Avoid comparison of -1 with an unsigned variable.

	* libs/wine/config.c:
	libwine: Fix a memory leak.

	* dlls/msi/classes.c:
	msi: Fix a logic error.

	* dlls/msi/record.c:
	msi: Avoid accessing a null pointer.

	* dlls/msi/string.c:
	msi: Check the correct pointer after allocating memory.

	* dlls/msi/table.c:
	msi: Fix possible free of uninitialized pointer.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fixed set_process_name for the winevdm case.

2006-04-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_RECT to wined3d_types.h.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/texture.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTEXTUREFILTERTYPE to wined3d_types.h.

2006-04-06  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/netapi32.spec,
	  dlls/netapi32/share.c, include/lmshare.h:
	netapi32: Add (stubbed) NetSessionEnum.

2006-04-06  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add initial tests for SetPerUserSecValues.

2006-04-06  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/.gitignore,
	  dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc:
	comctl32: Set the sheet caption before invoking the sheet callback and before creating the pages.

2006-04-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/courier.sfd, fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd,
	  fonts/system.sfd:
	fonts: Add a couple of cyrillic glyphs to all built-in bitmap fonts.
	Also add numero-sign to Courier.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Print traces for EXC_CallHandler even with the assembly version.

2006-04-05  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/process.c:
	msvcrt: Append extension(.exe) for _spawnve argument.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/process.c, include/config.h.in:
	kernel: Show the exe name instead of wine-[kp]thread in ps and top.

2006-04-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertCreateSelfSignCertificate, with some tests.

	* dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Add support for the CERT_KEY_PROV_INFO_PROP_ID certificate property.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsA on top of EnumMonitorsW.

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsW.

2006-04-06  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Forward IWebBrowser2::Navigate calls to ::Navigate2.

	* dlls/msi/files.c:
	msi: Avoid a crash if a parameter is NULL.

2006-04-05  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/audio.c:
	winearts: Don't call arts_free if arts_init wasn't successful.

2006-04-05  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Always consume the subst structure.

	* dlls/gdi/freetype.c:
	gdi32: Use the localised family name if present
	(based on a patch on Byeong-Sik Jeon).

	* dlls/gdi/freetype.c:
	gdi32: Move a few functions around.  Should be a nop.

2006-04-05  Mike McCormack <mike@codeweavers.com>

	* include/exdisp.idl:
	shdocvw: Add class definition for InternetExplorer.

2006-04-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/bitmap.c:
	gdi32: Add tests for GetBitmapBits and GetObject for a DIB section.
	Make them pass under Wine.

2006-04-05  Paul Vriens <paul.vriens@xs4all.nl>

	* include/lm.h:
	include: Add lmshare to lm.h.

2006-04-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add some type macros to wined3d_interface.h.

2006-04-05  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	winebuild: Remove a no longer necessary movzwl instruction.
	This could cause broken relays to be generated depending on the order
	of the entry points in the relay list.
	Also add a few missing tabs in the assembly output.

	* dlls/cards/cards.c:
	cards: Avoid GetPixel to draw round corners, use a clip region instead.

2006-04-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Factor out advpack error handling into ADV_HRESULT.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/iexplore/.gitignore, programs/iexplore/Makefile.in,
	  programs/iexplore/main.c:
	Add an implementation of iexplore.exe.

	* dlls/shdocvw/shdocvw.spec, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Stub implementation of IEWinMain.

2006-04-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c:
	msvcrt: Fix a TRACE message to avoid buffer overflow.

2006-04-04  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add a few missing glyphs.

2006-04-05  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for ref pointers to arrays of base types.

2006-04-04  Pavel Semerad <semerad@sisal.mff.cuni.cz>

	* dlls/dinput/joystick_linux.c:
	dinput: Fixed joystick with POV and JoystickAImpl_SetProperty-proprange.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Avoid redundant flushing of the thread display.

	* dlls/x11drv/window.c:
	x11drv: Remove one more XSync call.

2006-04-04  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: CreateDevice should use the root window.

	* dlls/wined3d/device.c:
	wined3d: Output unhandled renderstates with debug_d3drenderstate.

	* dlls/wined3d/utils.c, include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Add D3DFMT_L16.

2006-04-04  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make UseXVidMode default to yes.

2006-04-03  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/xvidmode.c:
	x11drv: Allow xvidmode to always initialize at least for the gamma functions.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation for RegistryDelnode.

2006-04-04  Huw Davies <huw@codeweavers>

	* dlls/gdi/freetype.c:
	gdi32: Use a function to add entries to the substitution list
	(based on a patch by Byeong-Sik Jeon).

2006-04-04  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use RtlUshortByteSwap to read big endian words.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCUBEMAP_FACES to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	wined3d: Define WINED3DGAMMARAMP based on D3DGAMMARAMP / DDGAMMARAMP.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/exticon.c:
	user: Fixed PrivateExtractIcons to pass the tests when using native dlls.

	* tools/Makefile.in, tools/winegcc/Makefile.in:
	tools: Add LDFLAGS to all the linker invocations.

	* tools/winegcc/winegcc.c:
	winegcc: Don't use the library full name for .so libs.

2006-04-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/small_fonts.sfd:
	fonts: Add cyrillic glyphs to the "Small Fonts" built-in bitmap font.

	* fonts/small_fonts.sfd:
	fonts: Use pixels instead of logical units for "Small Fonts" bitmap font metrics.

2006-03-09  Augusto Arcoverde da Rocha <agarobr.listas@gmail.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Fixed handling of XK_KP_Separator.

2006-04-03  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegInstallA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreOnINFA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegRestoreAllA to its Unicode counterpart.

2006-03-31  Mike Hearn <mh@codeweavers.com>

	* dlls/kernel/process.c:
	kernel: Don't enforce process handle access rights in Win98 mode.

2006-04-03  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a couple more debugging output formats.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Filter out garbage from arts-config --libs too.

	* dlls/gdi/freetype.c:
	gdi: Change ReadFontDir error into a warning.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCLIPSTATUS to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/swapchain.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DRASTERSTATUS to wined3d_types.h.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/.gitignore, programs/msiexec/Makefile.in,
	  programs/msiexec/rsrc.rc:
	msiexec: Add an icon for msiexec and .msi files.

2006-04-03  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	wine.inf: Add hhctrl.ocx to the list of fake dlls.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Warn if the fonts aren't going to be built.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Don't single step into signal handlers.

	* dlls/ntdll/signal_i386.c:
	ntdll: Save FPU context for all exceptions.

2006-04-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the clip format user marshal functions.

	* tools/widl/typegen.c:
	widl: Fix the type offset for generated conformant string calls.

	* dlls/kernel/kernel32.spec:
	kernel: Remove some stubs that aren't present in NT.

	* dlls/kernel/file.c:
	kernel: Document some file functions.

2006-04-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Make use of WINED3DDEVICE_CREATION_PARAMETERS.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/user/driver.c:
	user32: More informative message on failure to load x11drv.

2006-04-03  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/small_fonts.sfd:
	fonts: Add an 11 ppem strike of 'Small Fonts'.

2006-04-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/.gitignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c,
	  dlls/gdi/tests/gdiobj.c, dlls/gdi/tests/pen.c:
	gdi: Separate GDI tests by moving them into appropriate files.
	Separate GDI tests by moving them into appropriate files:
	bitmap tests to bitmap.c, font test to font.c, pen tests to pen.c.

	* dlls/gdi/gdiobj.c:
	gdi: Move WineEngInit call before stock fonts creation.
	Move WineEngInit call before stock fonts creation, otherwise we end up
	caching wrong fonts before loading built-in bitmap fonts.

2006-04-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexbuffer.c:
	d3dx: VertexBuffer should keep reference to the parent device object.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/fakedll.c:
	setupapi: Copy the complete resource tree into the fake dlls.

2006-04-03  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/twain/rsrc.rc, dlls/twain/twain_Ko.rc:
	twain: Add a Korean resource.

2006-04-03  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fix pausing when the hardware does not support it.

2006-04-01  Matthew Kehrer <kehrermatt@gmail.com>

	* dlls/url/Makefile.in, dlls/url/url.spec, dlls/url/url_main.c:
	url: Add a function and two stubs.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBACKBUFFER_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDISPLAYMODE to wined3d_types.h.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY implies STGM_SHARE_EXCLUSIVE.

	* dlls/kernel/profile.c:
	kernel32: [Read/Write]PrivateProfile functions accept a NULL filename.

	* dlls/msi/string.c:
	msi: Improve the string table hash.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	ntdll: Process --help and --version args earlier on during startup.

2006-04-01  Antonio Codazzi <f_sophia@libero.it>

	* dlls/msi/msi.rc, dlls/msi/msi_It.rc:
	msi: Italian language support.

	* dlls/setupapi/Eo.rc, dlls/setupapi/setupapi.rc:
	setupapi: Esperanto language support.

	* programs/uninstaller/Eo.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Esperanto language support.

	* programs/uninstaller/It.rc:
	uninstaller: Italian language support.

	* programs/notepad/Eo.rc, programs/notepad/rsrc.rc:
	notepad: Esperanto language support.

	* programs/notepad/It.rc:
	notepad: Italian language support.

	* dlls/msi/msi.rc, dlls/msi/msi_Eo.rc:
	msi: Esperanto language support.

	* dlls/commdlg/cdlg_Eo.rc:
	commdlg: Esperanto language update.

	* dlls/commdlg/cdlg_It.rc:
	commdlg: Italian language update.

	* dlls/wineps/wps_It.rc:
	wineps: Italian language update.

	* dlls/user/resources/user32_Eo.rc:
	user32: Esperanto language update.

	* dlls/comctl32/comctl_Eo.rc, dlls/comctl32/rsrc.rc:
	comctl32: Esperanto language support.

	* dlls/comctl32/comctl_It.rc:
	comctl32: Italian language updates.

	* programs/clock/Eo.rc, programs/clock/rsrc.rc:
	clock: Esperanto language support.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c:
	wined3d: Do not set the mipmap level count every time a texture is used.

2006-04-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c:
	gdi32: Add tests for 'Small Fonts'.

2006-04-03  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c, dlls/msvcrt/tests/environ.c:
	msvcrt: Allow environment strings longer than 512 characters.

2006-04-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/usp10/usp10.c:
	usp10: Fixed debug output of ScriptItemize.

2006-04-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c, dlls/dinput/tests/keyboard.c:
	dinput: Keyboard should be acquired before calling GetDeviceState.

2006-04-01  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/regedit/No.rc:
	regedit: Fix typo in Norwegian resources.

2006-04-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Get rid of XSync calls on window creation and destruction.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c, dlls/x11drv/xrender.c:
	x11drv: Ignore X errors caused by windows being created or deleted.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/tests/metafile.c:
	gdi: In metafile test only print debug output if enabled.

	* loader/preloader.c:
	loader: Hide the preloader from the ps output.

	* tools/winewrapper:
	winewrapper: Remove a couple of variables that are no longer needed.

	* dlls/ntdll/loadorder.c:
	ntdll: Get rid of the loadorder wildcard support, builtin is always the default now.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalSize().

2006-03-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole: Use ncalrpc instead of ncacn_np as the RPC transport.
	Use ncalrpc instead of ncacn_np as the transport as this is more similar
	to how ole32 from NT works and should also be compatible with rpcrt4
	from Win9x, allowing more combinations of dlls to work.

	* dlls/kernel/process.c:
	kernel: Add some documentation for simple process functions.

	* tools/widl/typegen.c:
	widl: There's no need to cast _StubMsg - it's already of the correct type.

	* tools/widl/server.c:
	widl: Only assign variables if not a string and only create a local variable if not a sized parameter.
	Only assign variables if not a string and only create a local variable
	if not a sized parameter. Fixes type mismatches in the generated code
	due to differences in the algorithms between creating local variables
	and using them.

	* tools/widl/server.c:
	widl: Initialise the temporary variable to 0 for parameters with more than one level of indirection.

	* tools/widl/server.c:
	widl: Create the correct variable type for parameters with more than one level of indirection.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.h:
	widl: Re-use print_phase_basetype for generating return value marshaling and unmarshaling code.

	* tools/widl/typegen.c:
	widl: Move handling of base type marshaling and unmarshaling to a separate function.
	Move handling of base type marshaling and unmarshaling to a separate
	function and improve it to support return values.

	* tools/widl/typegen.c:
	widl: Use print_phase_function for printing NdrPointerFree call.

	* tools/widl/typegen.c:
	widl: Add a function to generate the Ndr type calls.
	- Add a function to generate the Ndr type calls.
	- Fix a typo where the aligned buffer was added to itself, rather than
	assigned.

	* tools/widl/typegen.c:
	widl: Only write the buffer incrementing code for the marshaling and unmarshaling phases.
	Only write the buffer incrementing code for the marshaling and
	unmarshaling phases - buffer sizing is handled elsewhere and freeing
	isn't applicable.

	* tools/widl/typegen.c:
	widl: Output the necessary sizing information for other phases.
	Output the necessary sizing information for PHASE_BUFFERSIZE and
	PHASE_FREE as well as PHASE_MARSHAL. Standardise this rule in a new
	function.

	* tools/widl/client.c:
	widl: Output NULL ref pointer check for pointer levels > 1 too.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix a GCC warning in the generated client and server code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: The lval member of var_t is essentially a duplicate of eval->cval.
	- Generate eval's for enums that don't explicitly have one. This means
	that enums written in header files won't match exactly what has been put
	into the IDL file, but the numeric constat is the same and MIDL does a
	similar thing.
	- Replace constant lookups with eval->cval instead of lval.

	* tools/widl/typegen.c:
	widl: De-reference parameters' types before deciding what to do with them.
	De-reference parameters' types before deciding what to do with them.
	Also dereference string parameters since they are immediately
	dispatched to write_string_tfs when the string attribute is detected
	without any further processing done on them.

	* tools/widl/typegen.c:
	widl: Write pointer calls for all non-basetype pointer parameters to functions.

	* tools/widl/header.c:
	widl: Write definitions for MIDL_user_allocate and MIDL_user_free in the header.
	Write definitions for MIDL_user_allocate and MIDL_user_free in the
	header when writing out RPC interfaces to prevent compile failures in
	the generated client/server code.

	* tools/widl/header.c:
	widl: Write out the pre- and postamble for RPC interfaces with no methods.

	* tools/widl/header.c:
	widl: Output interface defined guard for rpc interfaces too.

	* tools/widl/typegen.c:
	widl: NdrFcShort should be written out instead of NdrShort.

	* tools/widl/typegen.c:
	widl: Output the numeric equivalent of FC_END, not the string FC_END itself.

	* tools/widl/typegen.c:
	widl: Support references in type_memsize.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Only output code for non-object interfaces in client and server.
	Only output code for non-object interfaces in client and server
	generation and convert the while loops into for loops.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.11.

----------------------------------------------------------------
2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Avoid crash on startup when the configuration dir doesn't exist.

	* dlls/user/tests/win.c:
	user/tests: Flush events before running the keyboard event test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Force a specific day value in the monthcal test.
	Avoids test failure when the current day happens to be the 31st...

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec:
	advpack: LaunchINFSectionExW is available, so mark it so in the spec file.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward ExecuteCabA to its Unicode counterpart.

2006-03-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/dcom.idl:
	ole32: Remove unnecessary commenting out of the RPC interfaces in the dcom idl file.

	* dlls/wininet/urlcache.c:
	wininet: Fix some string length calculations.
	Fix some string length calculations that didn't account for the
	different sized characters with Unicode.

	* dlls/wininet/urlcache.c:
	wininet: Only access the URL in the cache by the provided offset.

2006-03-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move fields common to vertex shaders and pixel shaders to IWineD3DBaseShader.

2006-03-30  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/proplist.c:
	crypt32: Tiny fixes.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Fix certificate adding
	- Implement add disposition in CertAddCertificateContextToStore,
	rather than in each store.
	- Add a few more tests.

2006-03-30  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/undname.c:
	msvcrt: Fix read beyond end of string in __unDNameEx().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add DllAllocSplMem and DllFreeSplMem.

2006-03-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/metafile.c:
	gdi32: Add a test for WMF->EMF conversions performed by SetWinMetaFileBits.
	These tests currently fail in Wine.

	* dlls/x11drv/keyboard.c:
	x11drv: Update Hungarian keyboard layout to better match the X11 one.

2006-03-29  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Implement support for ref pointers to strings.

2006-03-30  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Move the font substitution list to a standard Wine list
	(based on a patch by Byeong-Sik Jeon).

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Only wait for sent messages in wait_message_reply.

	* dlls/x11drv/event.c:
	x11drv: Filter a few more event types in filter_event.
	ConfigureNotify and related events should only be processed when
	posted messages are selected. There's no need to handle MappingNotify
	if keyboard events are not selected.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Removed a number of no longer needed dependencies.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/spoolss/.gitignore, dlls/spoolss/Makefile.in,
	  dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add minimal spoolss.dll.

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c:
	user: Don't send WM_PARENTNOTIFY to the desktop window.

2006-03-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Open the INF file if the RSC_FLAG_INF flag is specified.

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionExA to its Unicode counterpart.

	* dlls/advpack/install.c:
	advpack: Fix the documentation for the cmdline parameter of LaunchInfSection/Ex.

2006-03-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/except.c:
	kernel: Resource browsing.
	Try to be a bit more strict when checking for resource mapping in
	exception handler (and prevent some exceptions while in exception
	handler).

2006-03-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/directx.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DDEVTYPE to wined3d_types.h.

2006-03-30  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/twain/rsrc.rc, dlls/twain/twain_De.rc:
	twain: Add German resource.

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c:
	kernel32: Display the parameter that caused a page fault in GlobalFree().

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalFlags().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* tools/wineconf:
	tools: Remove wineconf.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS:  Some directories are renamed / removed / added.

2006-03-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c:
	oleaut32: Add IPersist to QueryInterface.

	* dlls/oleaut32/typelib.c:
	oleaut32: Zero out parameter in LoadRegTypeLib in case of failure.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Replace memcmp with IsEqualIID macro.
	Replace memcmp with IsEqualIID macro that doesn't require a size
	parameter and remove the unneeded brackets to give more compact and
	more readable code.

	* dlls/ole32/compobj.c:
	ole32: Don't process posted messages in CoWaitForMultipleHandles.
	Tests with native show that during COM calls posted messages aren't
	retrieved other than COM calls so change the PeekMessage parameters in
	CoWaitForMultipleHandles to duplicate this.

	* dlls/ole32/compobj.c:
	ole32: Try to retrieve messages that are COM calls first.
	Try to retrieve messages that are COM calls first in
	CoWaitForMultipleHandles before retrieving other types.

	* dlls/ole32/compobj.c:
	ole32: Put the PeekMessage call of CoWaitForMultipleHandles into a separate function.
	Put the PeekMessage call of CoWaitForMultipleHandles into a separate
	function so that the order and type of the messages retrieved can be
	customised in the future.

	* dlls/ole32/compobj.c:
	ole32: Whether the message loop is entered in CoWaitForMultipleHandles,
	should depend on whether the current apartment is a single threaded one.

	* dlls/ole32/compobj.c:
	ole32: Pass the no yield flag to PeekMessage.
	Pass the no yield flag to PeekMessage since we sleep in
	MsgWaitForMultipleObjectsEx and the extra context switch is wasteful.

	* server/token.c:
	server: Store the token source.

2006-03-29  Huw Davies <huw@codeweavers.com>

	* include/winuser.h:
	include: Add DFC_POPUPMENU.

2006-03-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Clean up HTTP_GetCustomHeaderIndex.

	* dlls/wininet/http.c:
	wininet: Use a lookup table sorted by index so we don't need a loop to do lookups.

	* dlls/wininet/http.c:
	WININET: Clean up HttpQueryInfo.
	Fixes another return FALSE without SetLastError.

	* dlls/wininet/http.c:
	wininet: Make sure to set LastError when returning FALSE in HttpQueryInfo.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix StgOpenStorage's handling of the STGM_PRIORITY flag.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c, dlls/x11drv/x11drv.h,
	  include/winpos.h:
	x11drv: Replace the SWP_WINE_NOHOSTMOVE flag by a lock count.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix CDROM raw reads.
	- Fix incorrect data sizes.
	- Fix CDDA addressing.
	- Implement XAForm2 mode on Linux.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Disable the desktop option when configuring a specific application.

2006-03-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  include/wine/wined3d_interface.h:
	wined3d: Create an IWineD3DBaseShader class.

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move the vshader_ins and pshader_ins arrays into their respective objects.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the SHADER_OPCODE definition to wined3d_private.h.

	* dlls/wined3d/pixelshader.c:
	wined3d: Pass the correct number of parameters for texld with ps version >= 2.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/user/sysparams.c:
	user32: Fix SPI_GETLISTBOXSMOOTHSCROLLING, and implement SPI_SETLISTBOXSMOOTHSCROLLING.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETUIEFFECTS.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETTOOLTIPANIMATION and SPI_[GS]ETTOOLTIPFADE.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETMENUANIMATION and SPI_[GS]ETSELECTIONFADE.

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[SG]ETCURSORSHADOW).

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[GS]ETCOMBOBOXANIMATION).

	* dlls/user/sysparams.c:
	user32: Implement SPI_[SG]ETCARETWIDTH.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/persist.c:
	mshtml: Don't free the URL we have just stored in the callback object.

	* dlls/x11drv/mouse.c:
	x11drv: Only warp the mouse pointer if it has actually moved.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Add a TRACE for IDirect3DDevice8Impl_CreateVertexBuffer.

2006-03-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Use WINED3DSWAPEFFECT in the wined3d headers and code.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DPOOL to wined3d_types.h.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/.gitignore, dlls/twain/Makefile.in, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain32_main.c,
	  dlls/twain/twain_En.rc, dlls/twain/twain_i.h, dlls/twain/ui.c:
	twain: Add a property sheet UI for scanning.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c, dlls/x11drv/x11drv.h:
	x11drv: Reinitialize the display settings when using a desktop window.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_image.c:
	twain: A few cleanups, using some consts from sane.

2006-03-24  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Implement support for pointers to base types.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fixed compiler warnings.

2006-03-26  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c,
	  include/winnt.h:
	advapi32: Fixed building TRUSTEEs with objects.
	Fill the TRUSTEE structure properly in BuildTrusteeWithObjectsAndName
	and BuildTrusteeWithObjectsAndSid, including regression tests.

	* dlls/comctl32/rebar.c:
	comctl32: Rebar size fix.
	Rebars without any bands should have a height/width of 0.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wineshelllink:
	wineshelllink: Remove quotes from Path=<workdir>.

2006-03-28  Jonathan Ernst <jonathan@ernstfamily.ch>

	* tools/wine.inf:
	wine.inf: Add some more fake dlls to the system directory.

2006-03-28  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/wnet.c:
	mpr: Improve the stub for WNetGetUniversalNameW.

	* server/change.c:
	server: Fix a race condition in the delivery of change notifications.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Avoid setting text or WM hints of the X root window.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/winemp3/.gitignore, dlls/msacm/winemp3/Makefile.in,
	  dlls/msacm/winemp3/common.c, dlls/msacm/winemp3/dct64_i386.c,
	  dlls/msacm/winemp3/decode_i386.c, dlls/msacm/winemp3/huffman.h,
	  dlls/msacm/winemp3/interface.c, dlls/msacm/winemp3/l2tables.h,
	  dlls/msacm/winemp3/layer1.c, dlls/msacm/winemp3/layer2.c,
	  dlls/msacm/winemp3/layer3.c, dlls/msacm/winemp3/mpegl3.c,
	  dlls/msacm/winemp3/mpg123.h, dlls/msacm/winemp3/mpglib.h,
	  dlls/msacm/winemp3/tabinit.c, dlls/msacm/winemp3/winemp3.acm.spec,
	  dlls/winemp3.acm/.gitignore, dlls/winemp3.acm/Makefile.in,
	  dlls/winemp3.acm/common.c, dlls/winemp3.acm/dct64_i386.c,
	  dlls/winemp3.acm/decode_i386.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/interface.c, dlls/winemp3.acm/l2tables.h,
	  dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/mpglib.h,
	  dlls/winemp3.acm/tabinit.c, dlls/winemp3.acm/winemp3.acm.spec:
	winemp3: Renamed the dlls/msacm/winemp3 directory to dlls/winemp3.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/msg711/Makefile.in, dlls/msacm/msg711/msg711.acm.spec,
	  dlls/msacm/msg711/msg711.c, dlls/msg711.acm/.gitignore,
	  dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.acm.spec,
	  dlls/msg711.acm/msg711.c:
	msg711: Renamed the dlls/msacm/msg711 directory to dlls/msg711.acm.

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/msadp32/.gitignore, dlls/msacm/msadp32/Makefile.in,
	  dlls/msacm/msadp32/msadp32.acm.spec, dlls/msacm/msadp32/msadp32.c,
	  dlls/msadp32.acm/.gitignore, dlls/msadp32.acm/Makefile.in,
	  dlls/msadp32.acm/msadp32.acm.spec, dlls/msadp32.acm/msadp32.c:
	msadp32: Renamed the dlls/msacm/msadp32 directory to dlls/msadp32.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/imaadp32.acm/.gitignore,
	  dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.acm.spec,
	  dlls/imaadp32.acm/imaadp32.c, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/imaadp32/Makefile.in,
	  dlls/msacm/imaadp32/imaadp32.acm.spec,
	  dlls/msacm/imaadp32/imaadp32.c:
	imaadp32: Renamed the dlls/msacm/imaadp32 directory to dlls/imaadp32.acm.

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	x11drv: Moved desktop mode handling to the explorer process.
	Per-application desktop mode settings are no longer supported.  Apps
	can be launched in a specific desktop window by using:
	explorer /desktop=name[,widthxheight] app.exe [args]
	If the named desktop already exists the app is launched inside it. The
	default desktop is cleverly named "default".

	* dlls/x11drv/window.c:
	x11drv: Allow setting WM hints for the desktop window.

	* dlls/x11drv/winpos.c:
	x11drv: Support SetWindowPos and ShowWindow on the desktop window.

2006-03-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c, dlls/mshtml/view.c:
	mshtml: Added tooltip implementation.

2006-03-27  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Properly set and retrieve colour value from combo box .

2006-03-27  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/systray.c, programs/explorer/systray.c:
	shell32: Adding a systray item with an invalid icon handle is allowed.

2006-03-27  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/txtsrv.c:
	riched20: Take a ref on text host.

2006-03-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/input.c:
	user32: Send a fake mouse movement event after releasing capture.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Limit header_size to the file size.

	* dlls/x11drv/window.c, dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/xrandr.c, dlls/x11drv/xvidmode.c:
	x11drv: Get rid of the using_wine_desktop flag.

	* dlls/user/user_main.c, server/process.c, server/user.h, server/window.c,
	  server/winstation.c:
	server: Connect to the window station and desktop specified by startup info.
	If window station and desktop aren't inherited from the parent, don't
	connect to them from the server, but from the USER init code where we
	can get the proper values from the startup info structure.

	* server/window.c:
	server: Store window properties in the global atom table instead of
	the per-winstation table.

2006-03-25  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add an uncompressed AVI displaying the word searching.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Implement the launching of executables in RunSetupCommand.

	* dlls/advpack/tests/install.c, include/advpub.h, include/urlmon.idl:
	advpack: Define S_ASYNCHRONOUS in advpub.h.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/request.c:
	server: Fixed process exit code on FreeBSD.

2006-03-24  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/break.c:
	winedbg: Fix stepping over an instruction.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
	winedos: Clear TF bit before passing control to a VM86 interrupt handler.

2006-03-26  f_sophia <f_sophia@libero.it>

	* programs/winhelp/Eo.rc, programs/winhelp/rsrc.rc:
	winhelp: Added Esperanto language support.

2006-03-26  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_Eo.rc:
	shell32: Updated Esperanto translation.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/kernel/process.c, dlls/kernel/tests/process.c:
	kernel: Error out of CreateProcess if the specified current directory
	doesn't exist.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wine.inf:
	wine.inf: Add some dll stub dll to the system directory.

2006-03-24  Paul Vriens <paul.vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add SystemRoot.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/signal_i386.c:
	ntdll: Fix debug exceptions from VM86.
	- Set ContextFlags accordingly in save_vm86_context().
	- Raise debug exceptions correctly for debug exceptions.
	- Do not clear TF bit for VM86-generated debug exceptions.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Set hexe to a non-NULL value to test that the handle is NULL on return.

2006-03-26  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	commdlg: Malformed filters are still added to the filter combo box.

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Having an MRU list without a compare function works in Windows.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix reading of signed numbers with unsigned read types in scanf.

2006-03-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/file.c:
	msvcrt: Fix fflush() of files opened for read.
	Some apps, for no particular reason, call fflush() on files opened for
	read.  This keeps them from tripping over their shoelaces.

2006-03-25  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	opengl: Put OpenGL setup functions into their own debug channel.

2006-03-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Fixes for identifiers.
	- fixed lexical rules for a path name
	- fixed identifier rules so that we get the right precedence
	between ! and ::
	- modules (in mod!name forms) are now handled as tIDENTIFIER
	(tPATH was buggy anyhow)

	* dlls/dbghelp/symbol.c:
	dbghelp: Module should be case insensitive.
	When looking up a symbol name in the form module!name, the module
	lookup should be insensitive.

2006-03-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DMULTISAMPLE_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTRIPATCH_INFO to wined3d_types.h.

2006-03-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move the D3DSIO_DCL dumping code into its own function.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/install.c:
	advpack: Add initial tests for RunSetupCommand.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward RunSetupCommandA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward the FileSaveRestore API to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward GetVersionFromFileA/ExA to their Unicode counterparts.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward SetPerUserSecValuesA to its Unicode counterpart.

2006-03-24  Ken Thomases <ken@codeweavers.com>

	* server/process.c:
	server: Fix memory leak in read_process_memory handler.

2006-03-24  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Recursive notify is implemented.

2006-03-24  Phil Krylov <phil@newstar.rinet.ru>

	* server/signal.c:
	server: Fix compilation under Darwin 7.

2006-03-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLElement2 implementation.

	* include/exdisp.idl:
	exdisp.idl: Added missing IE6 methods to DWebBrowserEvents2.

2006-03-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Rectpatch code fix.
	Update the wined3d code to use WINED3DRECTPATCH_INFO, which was added
	with an older patch.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/time.c:
	msvcrt: Implementation of wcsftime (based on a patch by Mike McCormack).

2006-03-22  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Add processor specific environment variables.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/tab.c:
	comctl32: A couple fixes for tab icon offsets.
	- Shift selected icons up and non-selected icons down.
	- Add the top or left draw rect to the vertical offset, because it may
	not be zero.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Implement FileSaveMarkNotExistW.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AdvInstallFileA to its Unicode counterpart.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward the ansi user stub APIs to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AddDelBackupEntryA to its unicode counterpart.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/environ.c:
	kernel: Remove a couple of incorrect asserts.

2006-03-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/comctl32/tooltips.c:
	comctl32: Do not free LPSTR_TEXTCALLBACK tooltip texts.

2006-03-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/thread.c:
	kernel: Load QueueUserWorkItem function dynamically.

2006-03-23  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix base type alignments.
	Generate aligned marshal and unmarshal code for base type arguments
	and return values.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Fix format string size calculation.
	- Move proc format string size calculation from client.c and server.c
	to typegen.c.
	- Implement type format string size calculation.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/winstation.c, server/atom.c, server/class.c:
	server: Class and global atoms should not be local to a window station.

2006-03-22  Marcus Meissner <meissner@suse.de>

	* configure, configure.ac, programs/Makefile.in,
	  programs/avitools/.gitignore, programs/avitools/Makefile.in,
	  programs/avitools/aviinfo.c, programs/avitools/aviplay.c,
	  programs/avitools/icinfo.c, programs/icinfo/.gitignore,
	  programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	programs: Move icinfo out of avitools.

2006-03-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Set vertex attribute pointers defined in vertex declarations properly.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix slightly misleading ParseVertexDeclarationUsage naming.

	* dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Initialise WINED3DVERTEXELEMENT's Reg field in
	IWineD3DVertexDeclarationImpl_ParseDeclaration9.

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: glTypeLookup cleanup.
	Use a struct instead of an UINT array as entries in the glTypeLookup
	table.

	* dlls/wined3d/pixelshader.c:
	wined3d: Store the pixelshader version in the pixelshader object.

2006-03-22  Huw Davies <huw@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Only adjust the margins if the edit control is above a certain size.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward RebootCheckOnInstallA to its Unicode counterpart.

2006-03-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Clean up get_all and tags (also fixes a typo).

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a shdocvw.dll stub dll to the system directory.

	* dlls/msi/action.c:
	msi: Add stub for the RegisterComPlus and UnregisterComPlus actions.

	* dlls/msi/package.c:
	msi: Don't crash when logging a record with only one field.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/handle.c, server/handle.h, server/mailslot.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/registry.c, server/request.c, server/signal.c:
	server: New scheme for cleaning up objects on server exit.
	Objects stored in static variables can now be marked when they are
	created and are automatically cleaned up on exit. This avoids having
	to export a bunch of close_* functions.

2006-03-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward TranslateInfStringExA to its unicode counterpart.

	* dlls/advpack/tests/files.c:
	advpack: Add second null for double null terminated lists.

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Show "hidden dialogs" but hide them initially.

	* dlls/msi/custom.c:
	msi: Implement custom action type 17.

	* dlls/riched20/.gitignore, dlls/riched20/Makefile.in,
	  dlls/riched20/version.rc:
	riched20: Add a version resource.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Use the definition of WINTRUST_ACTION_GENERIC_VERIFY_V2 in softpub.h.

	* include/Makefile.in, include/softpub.h:
	include: Add softpub.h.

2006-03-22  Kevin Koltzau <kevin@plop.org>

	* dlls/ole32/tests/.gitignore, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/clipboard.c:
	ole32: Initial tests for OLE clipboard functions.

2006-03-21  Bryan Mayland <bmayland@leoninedev.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/sync.c:
	kernel: WaitForMultipleObjectsEx should accept up to MAXIMUM_WAIT_OBJECTS.

2006-03-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implements FR_WHOLEWORD for EM_FINDTEXT.
	Add FR_WHOLEWORD to riched20's EM_FINDTEXT and fix a couple small bugs
	introduced in earlier patches for EM_FINDTEXT. Additional test cases
	have been added to check for corner cases.  Also improve input
	validation.

2006-03-21  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/ole32/datacache.c,
	  dlls/ole32/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/shell32/shlfolder.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/path.c, dlls/wininet/gopher.c:
	Assorted spelling fixes.

	* programs/taskmgr/taskmgr.c, programs/taskmgr/taskmgr.h:
	taskmgr: Avoid forward declarations and make functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Reorder functions to avoid forward declarations.

	* programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/column.c, programs/taskmgr/graph.c,
	  programs/taskmgr/perfpage.c, programs/taskmgr/proclist.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Avoid forward declarations and make functions static.

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

	* include/winerror.h:
	include: Add missing error and facility codes.

	* dlls/advapi32/advapi32.spec:
	advapi32: Fix the LsaEnumerateAccountRights() export.

	* include/ntsecapi.h:
	include: Standardize the LsaLookupNames() prototype.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut: ITypeInfo::GetIDsOfNames should search inherited interfaces
	regardless of what type they are.
	Add a test for this and dump type infos created with CreateDispTypeInfo.

2006-03-21  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c, tools/sfnt2fnt.c:
	fonts: Use the EBLC table to retrieve the ascent of the bitmap font.

2006-03-21  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.man.in:
	winedbg: Add display for floating point status.
	Added code to examine and display floating point unit status into
	be_i386.c as info all-regs command.

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Remove output file on failure.

	* dlls/activeds/activeds_main.c, dlls/cfgmgr32/main.c,
	  dlls/cryptdll/cryptdll.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3drm/d3drm_main.c, dlls/msnet32/msnet_main.c,
	  dlls/snmpapi/main.c, dlls/url/url_main.c, dlls/vdmdbg/vdmdbg.c,
	  dlls/winnls32/winnls.c, dlls/wintrust/wintrust_main.c:
	Added DLL_WINE_PREATTACH handling in a number of stub-only dlls.

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	msi: Improve handling of short paths.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/threadpool.c:
	ntdll: Start of pooling support for RtlQueueWorkItem.
	Start of pooling support for RtlQueueWorkItem. The algorithm
	implmented is very simple - if there are no free threads, create a new
	one.

	* dlls/kernel/tests/thread.c:
	kernel: Add a test for QueueUserWorkItem.

	* dlls/oleaut32/typelib.c:
	oleaut: Better support for invoking methods with VT_VARIANT argument types.

	* dlls/wininet/internet.c:
	wininet: Document InternetCrackUrlW.

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: InternetCreateUrlW should return the number of bytes needed.
	InternetCreateUrlW should return the number of bytes needed to store
	the URL, not the number of characters (reported by Sven Paschukat).

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/winnt.h:
	ntdll: Added a DLL_WINE_PREATTACH call to DllMain for builtins.
	By returning FALSE from this call, a builtin dll can specify that we
	should try to load the native one instead.

	* dlls/ddraw/main.c:
	ddraw: Call DDRAW_ChooseDefaultDriver only on PROCESS_ATTACH.

	* dlls/Makefile.in, dlls/Maketest.rules.in, dlls/make_dlls:
	dlls: Removed a number of dll symlinks that are no longer needed.

	* tools/winewrapper:
	winewrapper: Remove explicit call to wineprefixcreate.
	Now that wineprefixcreate detects the build tree automatically, the
	standard behavior of starting it from ntdll should work fine.

	* programs/wcmd/wcmdmain.c:
	wcmd: Try executing the process even if the exe file doesn't exist.
	It may be a builtin exe in which case the CreateProcess call will
	succeed.

	* tools/wine.inf, tools/wineprefixcreate.in:
	wine.inf: Use the new fake dlls mechanism to create placeholders for
	applications instead of using symlinks.

	* dlls/ntdll/loader.c:
	ntdll: Detect the fake dlls created by setupapi and refuse to load them.

	* dlls/setupapi/Makefile.in, dlls/setupapi/fakedll.c,
	  dlls/setupapi/install.c, dlls/setupapi/setupapi_private.h:
	setupapi: Added support for creating fake dlls at install time.
	This should satisfy applications that access a dll file directly. For
	apps that check the dll version in the file, the version resource is
	copied from the builtin dll.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Create single thread for mouse and keyboard hook.
	Put keyboard & mouse hook callbacks into separate thread.
	Move few global variables into object. Delete no longer used crit section.
	For hooks to work properly hook callback have to be in a thread
	with message loop. Some games create separate threads just to handle
	mouse and/or keyboard events that do not have message loop.

2006-03-20  Mike Hearn <mike@plan99.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Optimize thunks by storing GL context in the thread environment block.

2006-03-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Fix a couple of todos in the bitmap test.

2006-03-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/applpage.c:
	taskmgr: Make some functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Fix some gcc 4.1 warnings caused by commctrl.h macros.

	* programs/winefile/winefile.c:
	winefile: Fix some gcc 4.1 warnings caused by commctrl.h macros.

2006-03-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Don't use OpenGL 2.0.

2006-03-20  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Fix model/stepping in GetSystemInfo.
	wProcessorRevision is built from model and stepping.

2006-03-20  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/priority.c:
	taskmgr: Eliminate common code and fix a warning.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Get rid of some incorrect casts.

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Add autoheader to the compile command.

	* configure, configure.ac, dlls/Makedll.rules.in, loader/Makefile.in,
	  programs/Makeprog.rules.in:
	configure: Use --rpath when linking dlls too.

	* programs/Makefile.in, programs/make_progs:
	programs: Get rid of application symlinks, they are no longer needed.

	* dlls/gdi/tests/gdiobj.c, dlls/x11drv/bitmap.c:
	x11drv: Clear new bitmaps if they don't contain any data.

2006-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add a simple test for bitmap bits/metrics
	Add a simple test for bitmap bits/metrics, fix GetBitmapBits for an
	empty (not selected into a DC) bitmap.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Set the InstallerLocation value when registering msi.dll.

2006-03-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Avoid heap corruption on invalid parameter in GlobalFree().

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/change.c:
	kernel: Avoid infinite waits in directory change tests.

2006-03-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Change the default debug channel to d3d8 for device.c.

	* dlls/d3d8/device.c:
	d3d8: Downgrade a FIXME to a TRACE in IDirect3DDevice8Impl_SetVertexShader.

	* dlls/d3d8/device.c:
	d3d8: Fix comparison in IDirect3DDevice8Impl_DeleteVertexShader.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Optimize nsACString handling.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Better QueryInterface implementation.

2006-03-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/wordpad/No.rc:
	wordpad: Fix typo in Norwegian resource.

2006-03-19  Vitaly Lipatov <lav@etersoft.ru>

	* programs/regedit/Ru.rc:
	regedit: Fix Russian translation.

	* programs/control/params.h:
	control: Fix datetime name.

2006-03-19  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	include: LVSETINFOTIPA does not exist.

2006-03-19  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/tgt_active.c:
	winedbg: Copy floating point status to the dbgcontext.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/gdi/driver.c:
	gdi: Handle NT style \\.\DISPLAY1 name that we return.

2006-03-18  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/delete.c, dlls/msi/distinct.c, dlls/msi/insert.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Optimise WHERE operations.
	Optimise WHERE operations on matching against strings by adding a new
	function find_matching_rows to the views, which eliminates the need to
	examine every record when executing a query. Implement this function
	in the table using a hash table on the ID stored in the data.

	* dlls/msi/tests/format.c:
	msi: Add a test for MsiFormatRecord with integer fields.

	* dlls/wininet/cookie.c:
	wininet: Copy from the start of the cookie name, not the cookie data.
	Copy from the start of the cookie name, not the cookie data when
	parsing cookies with a NULL cookie name.

	* include/wininet.h:
	include: Add some more defines to wininet.h.

	* programs/wcmd/wcmdmain.c:
	wcmd: Use PACKAGE_VERSION as the wcmd version.

	* dlls/ole32/rpc.c:
	ole: Use the thread pool for executing RPC calls for better performance
	(after the thread pool has been improved).

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Autodetect the running from build tree case.

	* dlls/setupapi/install.c:
	setupapi: Added support for calling executables in a RegisterDlls section.

2006-03-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: In MODULE_FlushModrefs, also free dlls that haven't been initialized yet.

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* include/windowsx.h:
	Prevent the use of windowsx.h with Wine source.

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Eliminate use of windowsx.h.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC fixes.
	- wrong cut & paste across versions of a given record type
	- wrong definition for register_v2

	* dlls/dbghelp/msc.c:
	dbghelp: Support for LF_VTSHAPE in MSC.
	- added preliminary support for VT (virtual table) shape
	type record
	- as we don't do C++, it's just a hack to get rid of
	some errors

	* dlls/dbghelp/msc.c:
	dbghelp: MSC forward declaration.
	- create an infrastructure for handling forward usage
	of type records
	- used it in some cases (pointer to yet not defined udt,
	function signature, modifiers)

	* dlls/dbghelp/msc.c:
	dbghelp: Type parsing refactoring.
	- seperate types' table handling from a single type handling
	by adding codeview_parse_one_type function
	- factored all calls for caching symt
	- make type parsing helpers return the symt instead of a
	simple error status

	* dlls/dbghelp/msc.c:
	dbghelp: Fixes for NB11 types.
	- when checking debug info in NB09 or NB11 format (CodeView),
	try to load the global types section

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC handling of function signature's parameters.
	- now correctly parsing parameters types for a function
	signature and storing them in dbghelp internal structures

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Cleanup MSC bitfield handling.
	- no longer caching bitfield information but accessing it directly
	when needed
	- removed all kludges for bitfield handling
	- reused BOOL parameter to codeview_get_type for monitoring
	traces (will be used in later patches)

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Fieldlist.
	- now that we have offset tables to type, we can cleanly
	parse the field-lists and remove the associated kludges
	- also adding internal structure for easing parameter sharing
	across functions (codeview_type_parse)
	- in mscvpdb.h, also reparated the type records that are
	referenced from other type records (union codeview_type_ref)
	from type records referenced by symbols (union codeview_type)

	* dlls/dbghelp/msc.c:
	dbghelp: MSC types.
	- enforce the type records that can be accessed by symbols (these are
	anyway the high level ones)

	* dlls/dbghelp/msc.c:
	dbghelp: Types parsing.
	- our engine for parsing types section now requires in entry
	an offsets table for getting directly to each type in the
	section
	- (re)construct this table for PDB types

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: CV's ssearch.
	- added definitions for start_search symbol info
	- silenced warnings from this symbol

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Moved codeview structures and definitions from msc.c to mscvpdb.h.

	* dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Compiland and source files are not the same thing.
	- in MSC debug info parsing, clearly separate a source file
	information from a compiland (including in linetab structure)
	- in ELF debug info parsing, now storing compiland directly
	in symtab_elt while browsing the symtab section (we still
	create twice the compilands, once in stabs/dwarf parsing,
	a second time in symtab parsing)

2006-03-17  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/gdi/freetype.c:
	gdi32: Look for ttf fonts in the Wine font dir.

2006-03-17  Dmitry Timoshkov <dmitry@baikal.ru>

	* dlls/gdi/tests/gdiobj.c:
	gdi: Add a test for bitmap font metrics to ensure that they match the Windows ones.

2006-03-18  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Do not generate code that initializes a binding handle.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix proc offset calculation.
	A void return type is represented by a FC_END/FC_PAD sequence in the
	proc format string. Increment the proc offset by two when a function
	returns void.

	* tools/widl/parser.y:
	widl: 'unsigned char' and 'byte' are must be distinct types.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added more interfaces.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Code cleanup.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, programs/winedbg/tgt_active.c:
	dbghelp: Live target detection.
	- DBGHELP_NOLIVE env variable is tested earlier to avoid
	some strange effects in live target detection
	- in WineDbg, delete DBGHELP_NOLIVE before attaching to
	a process, because we know it must be a live target

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/edit.c, programs/progman/group.c,
	  programs/progman/main.c, programs/progman/program.c,
	  programs/winecfg/audio.c:
	Remove some unnecessary uses of windowsx.h

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc. Eliminate windowsx.h.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/winecfg/appdefaults.c:
	winecfg: Fix some gcc 4.1 warnings.

	* dlls/crypt32/tests/store.c:
	crypt32: Fix a warning.

2006-03-17  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Update Korean resources.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/procpage.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/proclist.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/debug.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/endproc.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/affinity.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/regedit/treeview.c:
	regedit: Fix some gcc 4.1 warnings.

2006-03-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement CertGetSubjectCertificateFromStore.

2006-03-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3DBASISTYPE to wined3d_types.h.

2006-03-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/device.c, dlls/wined3d/device.c, dlls/wined3d/vertexshader.c:
	d3d8/wined3d: Vertex shader fixes.

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Support for loading fonts from the build directory.

	* programs/winecfg/libraries.c:
	winecfg: Support for loading the list of dlls from the build directory.

	* libs/wine/loader.c:
	libwine: Added magic handling of dll path when running in build dir.
	This should ensure that we do the right thing in the build dir even if
	WINEDLLPATH isn't set.

2006-03-16  Detlef Riekenberg <wine.dev@web.de>

	* include/winbase.h:
	winbase.h: Add missing LMEM_INVALID_HANDLE define.

2006-03-16  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/config.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Export wine_get_build_dir.

	* dlls/ntdll/server.c, libs/wine/config.c:
	libwine: Added support for executing wine binaries out of the build dir.

	* libs/wine/config.c:
	libwine: Added detection for Wine being run out of the build directory.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove the no longer needed symlinks to the static libraries.

	* dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in:
	Remove some no longer needed library paths.

	* tools/winegcc/utils.c, tools/winegcc/winegcc.c:
	winegcc: Look for libraries in subdirs of the library path too.
	This means that -lfoo will match the library 'foo/libfoo.def' in
	addition to just 'libfoo.def'. This allows supporting the Wine source
	layout without adding a gazillion path entries.

2006-03-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Update ntlm_auth version detection to detect new samba4 version numbers.
	Samba4 changed the versioning from 3.9.X to 4.0.0tpX-preY.

2006-03-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Tighten CertDuplicateCertificateContext test.
	Test that the return from CertDuplicateCertificateContext is the same
	as its parameter.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.10.

----------------------------------------------------------------
2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* programs/avitools/Makefile.in:
	avitools: Fixed library path for msvfw32.

	* dlls/user/tests/msg.c, dlls/user/tests/win.c:
	user/tests: Try harder to flush X events before running tests.

2006-03-06  András Kovács <andras@csevego.net>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Hu.rc:
	wininet: Added Hungarian translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Hu.rc:
	wineps: Added Hungarian translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Hu.rc:
	shlwapi: Added Hungarian translation.

	* dlls/shell32/shell32_Hu.rc:
	shell32: Added Hungarian translation.

	* dlls/shdocvw/Hu.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Added Hungarian translation.

	* dlls/setupapi/Hu.rc, dlls/setupapi/setupapi.rc:
	setupapi: Added Hungarian translation.

	* dlls/serialui/Hu.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Hungarian translation.

	* dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/rsrc.rc:
	oledlg: Added Hungarian translation.

	* dlls/msvidc32/msvidc32_Hu.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Added Hungarian translation.

	* dlls/msvfw32/msvfw32_Hu.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Added Hungarian translation.

	* dlls/msrle32/msrle_Hu.rc, dlls/msrle32/rsrc.rc:
	msrle32: Added Hungarian translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Hu.rc:
	msi: Added Hungarian translation.

	* dlls/mshtml/Hu.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Hungarian translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Hu.rc:
	msacm: Added Hungarian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Hu.rc:
	mpr: Added Hungarian translation.

	* dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/rsrc.rc:
	iccvid: Added Hungarian translation.

	* dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Added Hungarian translation.

	* dlls/comctl32/comctl_Hu.rc, dlls/comctl32/rsrc.rc:
	comctl32: Added Hungarian translation.

	* dlls/avifil32/avifile_Hu.rc, dlls/avifil32/rsrc.rc:
	avifil32: Added Hungarian translation.

2006-03-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/indexbuffer.c, dlls/d3d9/indexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DINDEXBUFFER_DESC to wined3dtypes.h.

2006-03-15  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32: Fix some gcc 4.1 warnings.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c:
	dsound: Add info to failed tests.
	Print format for failed SetFormat calls.

2006-03-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward OpenINFEngineA and TranslateInfStringA to their
	unicode counterparts.

2006-03-04  Aric Cyr <aric.cyr@gmail.com>

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix semaphore deadlock.
	- Make sure to release the dplayx semaphore in for error cases as well.
	- Prevent race condition between creation of the semaphore and
	grabbing of the lock by creating the semaphore in the locked state
	instead of unlocked.

2006-03-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix one case of "glXChooseFBConfig returns NULL" problem.
	Using alpha bits > 8 makes this function fail, while it should not.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/dib_convert.c:
	x11drv: Avoid unaligned 32 bit reads, and reads beyond the input pixel
	buffer in the convert_888_to_0888_* functions.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msvfw32/.gitignore, dlls/msvfw32/Makefile.in,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32.spec, dlls/msvfw32/msvfw32_De.rc,
	  dlls/msvfw32/msvfw32_En.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvfw32/msvfw32_No.rc, dlls/msvfw32/msvfw32_Tr.rc,
	  dlls/msvfw32/msvideo.spec, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h, dlls/msvideo/.gitignore,
	  dlls/msvideo/Makefile.in, dlls/msvideo/drawdib.c,
	  dlls/msvideo/mciwnd.c, dlls/msvideo/msvfw32.spec,
	  dlls/msvideo/msvfw32_De.rc, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvfw32_Ko.rc, dlls/msvideo/msvfw32_No.rc,
	  dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/msvideo.spec,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc,
	  dlls/msvideo/vfw16.h:
	msvideo: Renamed the msvideo directory to msvfw32.

	* configure, configure.ac, dlls/Makefile.in, dlls/w32skrnl/.gitignore,
	  dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32skrnl.spec, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/w32sys.spec, dlls/w32skrnl/win32s16.c,
	  dlls/w32skrnl/win32s16.spec, dlls/win32s/.gitignore,
	  dlls/win32s/Makefile.in, dlls/win32s/w32skernel.c,
	  dlls/win32s/w32skrnl.spec, dlls/win32s/w32sys.c,
	  dlls/win32s/w32sys.spec, dlls/win32s/win32s16.c,
	  dlls/win32s/win32s16.spec:
	win32s: Renamed the win32s directory to w32skrnl.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winsock/.gitignore, dlls/winsock/Makefile.in,
	  dlls/winsock/async.c, dlls/winsock/protocol.c, dlls/winsock/socket.c,
	  dlls/winsock/socket16.c, dlls/winsock/tests/.gitignore,
	  dlls/winsock/tests/Makefile.in, dlls/winsock/tests/protocol.c,
	  dlls/winsock/tests/sock.c, dlls/winsock/version.rc,
	  dlls/winsock/winsock.spec, dlls/winsock/ws2_32.spec,
	  dlls/ws2_32/.gitignore, dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c,
	  dlls/ws2_32/protocol.c, dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/.gitignore, dlls/ws2_32/tests/Makefile.in,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/ws2_32/winsock.spec,
	  dlls/ws2_32/ws2_32.spec, programs/winetest/Makefile.in:
	winsock: Renamed the winsock directory to ws2_32.

	* tools/Makefile.in:
	wineprefixcreate: Fixed datadir path. Added dependency on relpath.

2006-03-11  Pierre d'Herbemont <stegefin@free.fr>

	* tools/Makefile.in, tools/wineprefixcreate.in:
	wineprefixcreate: Make path searching relative.

2006-03-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Add parameter formatting rule to the command line if there isn't any.

2006-03-14  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet: Move URL-related tests to a separate file.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Make InternetCrackUrlW set the components related to net_loc
	to NULL when net_loc isn't present in the input URL.

	* dlls/wininet/cookie.c, dlls/wininet/internet.c:
	wininet: Move cookie-related stubs to cookie.c

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Implement setting of send and receive timeouts.

	* dlls/kernel/thread.c, dlls/ntdll/ntdll.spec, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	ntdll: Move the call to MODULE_DllThreadAttach from the kernel32
	thread creation function to the NTDLL one.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Use pipe sync for events.
	Ues pipe sync code from OSS/ALSA rather than windows events.

2006-03-13  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/x11drv/opengl.c:
	x11drv: Prevent out of bound access in DescribePixelFormat.

	* tools/wine.inf:
	wine.inf: Increase the DirectX version to that of the latest 9.0c .

2006-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Don't crash in d3d test if OpenGL is missing.

2006-03-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create a base cert context, and make functions unaware whether
	they're dealing with the base or derived type
	- simplify stores as a result

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

2006-03-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Vertexdeclaration fix.
	In the old d3d8 code SetVertexShader stored the so called vertex
	declaration in the stateblock. In case of WineD3D this isn't done
	which breaks the drawPrimitive code. This patch stores the vertex
	declaration again in the stateblock which fixes Age Of Mythology.

2006-03-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/lsa.c, include/ntsecapi.h:
	advapi32: Add stub implementations for a bunch of documented Lsa APIs.

2006-03-10  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/joystick_linuxinput: Add POV detection and reporting.
	Mapping of ABS_HAT[0-3][XY] to the four POV used by dinput.

2006-03-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/Makefile.in, dlls/ntdll/ntdll.spec, dlls/ntdll/threadpool.c,
	  include/winternl.h:
	ntdll: Very crude implementation of RtlQueueWorkItem.

	* dlls/kernel/thread.c:
	kernel: Implement QueueUserWorkItem.

2006-03-11  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix the conversion of NULL component values from InternetCreateUrlA.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Host name isn't present when two slashes aren't present in InternetCrackUrl.
	The test for "about:" in InternetCrackUrlW should be more general so
	that only URLs without double slashes should also be assumed not to
	have a host name.
	Add another test for this case and remove an unreliable
	InternetCreateUrl test.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: InternetCrackUrl should set nPort to the default port if not specified.

2006-03-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/vertexbuffer.c, dlls/d3d9/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DVERTEXBUFFER_DESC to wined3d_types.h.

2006-03-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Don't override variable that still has something we need.
	Use local temp variable instead.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add D3DSIO_TEXM3x3PAD to opcode list. We already handle it where we should.

2006-03-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add RegisteredOwner and Org also to WindowsNT branch.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.

	* dlls/avifil32/editstream.c:
	avifil32: Use HeapAlloc instead of Global/LocalAlloc.

	* dlls/avifil32/extrachunk.c:
	avifil32: Use HeapAlloc instead of Local Alloc.

	* dlls/avifil32/acmstream.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc/LocalAlloc.

	* dlls/avifil32/tmpfile.c:
	avifil32: Use HeapAlloc/Free instead of LocalAlloc/Free.

	* dlls/avifil32/factory.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.  Make sure to free the memory.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* programs/winefile/winefile.c:
	winefile: Refresh the drives and files upon WM_DEVICECHANGE.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Consistently use WINED3DRESOURCETYPE.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c, dlls/avifil32/wavfile.c:
	avifil32: Use CoTaskMemAlloc when allocating memory to return through
	an OLE interface.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/wavfile.c:
	avifil32: Fix some gcc 4.1 warnings cause by windowsx.h macros.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Remove the property when destroy the dialog box.

2006-03-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/proplist.c, dlls/crypt32/store.c:
	crypt32: Move context properties to a separate file.

2006-03-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Update ESD driver to closer match OSS and ALSA drivers.

2006-03-10  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/be_i386.c:
	winedbg: Fix lcall instruction opcode.

2006-03-10  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't duplicate empty strings.

2006-03-10  Fatih Asici <fasici@linux-sevenler.org>

	* programs/wordpad/Tr.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Turkish resource file.

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-03-09  Fatih Aşıcı <fasici@linux-sevenler.org>

	* documentation/README.tr:
	documentation: Turkish translation of README file.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	aclocal.m4: Avoid invalid characters in the cache variable name in WINE_GET_SONAME.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Use a property for the color dialog's information.

2006-03-09  Alexandre Julliard <julliard@winehq.org>

	* include/dbt.h:
	dbt.h: Added DBTF_ flags.

	* dlls/user/message.c:
	user: Support packing/unpacking the WM_DEVICECHANGE message.

2006-03-09  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix InternetGetCookie with no matching cookies.
	Return FALSE and an error of ERROR_NO_MORE_ITEMS from
	InternetGetCookie when there are no cookies for the specified
	domain. This fixes a bug in sending a blank cookie to HTTP servers.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix an off-by-one error in InternetCreateUrlW.
	Fix an off-by-one error in the size of buffer used to store the port
	number in InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Further InternetCreateFileW fixes.
	- Add the slash after the port number.
	- Only add the port number if the host name is present.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: If necessary, add a slash between the hostname and path in
	InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: More InternetCreateUrlW fixes.
	- Don't add double slashes for opaque URLs.
	- The default port number for all other schemes is 0.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Parse the scheme the string in InternetCreateFileW.
	Parse the scheme the string in InternetCreateFileW and rewrite
	url_uses_default_port using schemes instead of strings.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Get the string for the scheme if specified only by the
	INTERNET_SCHEME enumeration in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: The host name is optional in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: Use an array of schemes for mapping from a string to an INTERNET_SCHEME.
	Use an array of schemes so that it can be re-used for mapping from
	INTERNET_SCHEME back to a string and simplify the code in
	GetInternetSchemeW.

	* dlls/wininet/internet.c:
	wininet: Fix Trace in InternetCreateUrl.
	The url passed in to InternetCreateUrl is an out parameter, so don't
	dump it.

	* dlls/wininet/http.c:
	wininet: Fix redirects with relative URIs instead of absolute URIs.

2006-03-09  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/linuxinput: Fix handling of DIPH_BYID.
	- handling of DIPH_BYID
	- use regular id and not shifted one also for axes
	- may only Acquire after SetDataFormat

2006-03-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Load system fonts from $(datadir)/wine/fonts if loading from
	%windir%\fonts has failed.

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/mfdrv/objects.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c:
	gdi: A better workaround for extended user style pens.

2006-03-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Use OpenGL fragment programs when available.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove an incorrect FIXME.

	* dlls/wined3d/vertexshader.c:
	wined3d: Enable color fixups for vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Minor vshader_program_add_param cleanup.
	- In vshader_program_add_param, pass a pointer to the shader object
	instead of individual parameters.
	- In vshader_program_add_param, rename input to is_input to make it
	clearer what the parameter does.
	- Fix a typo & cleanup a comment.

2006-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Reorder a few functions to avoid forward declaractions.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h:
	wined3d: Use WINED3DPRESENT_PARAMETERS in IWineD3DSwapChain::GetPresentParameters.

2006-03-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user: The height of a ListBox item can be no more than MAXBYTE.

	* dlls/msi/action.c:
	msi: Remove some unnecessary indent.

	* dlls/msi/tests/package.c:
	msi: Make sure to run tests for MsiEvaluateCondition.

2006-03-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added beginning of getAttribute implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLBodyElement implementation.

2006-03-07  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, include/config.h.in:
	opengl32: Implement wglUseFontOutlines.

2006-03-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertGetValidUsages.

2006-03-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/volume.c, include/wine/wined3d_types.h:
	wined3d: Add D3DLOCK_* types to wined3d_types.h.

2006-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextarea.c:
	mshtml: Added get_name and get_value implementation of IHTMLTextAreaElement interface.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added get_name and get_value implementation of IHTMLSelectElement interface.

	* dlls/mshtml/htmlinput.c:
	mshtml: Added get_type, get_value, get_name and get_checked
	implementation of IHTMLInputElement interface.

2006-03-07  Peter Åstrand <astrand@cendio.se>

	* dlls/comctl32/listview.c:
	comctl32: LISTVIEW_InsertItemT should accept iItem < 0, when using sorted lists.

2006-03-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add tests for EnumColorProfiles{A,W}.

	* dlls/mscms/profile.c, dlls/mscms/stub.c, include/icm.h:
	mscms: Implement EnumColorProfiles{A,W}.

2006-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/Makefile.in:
	fonts: Install fonts in $(datadir)/wine/fonts.

2006-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makeimplib.rules.in:
	dlls: Added a default install-lib rule for dlls that don't have one.

2006-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c:
	x11drv: Don't send an invalid WM_NCCREATE to the desktop window.

	* server/trace.c:
	server: Fixed length check in dump_inline_unicode_string.

	* dlls/shell32/systray.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h,
	  programs/explorer/systray.c, programs/explorer/systray.h:
	explorer: Merged systray support with the desktop window main loop.
	Systray is now always available as part of the desktop and doesn't
	need to be started from shell32.

	* dlls/user/win.c, dlls/x11drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user: Launch explorer to manage the desktop window.

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	explorer: Added desktop option.
	The /desktop option causes explorer to create and manage the desktop
	window.

2006-03-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel: Improve the activation context stubs.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix a few FIXME's.

	* dlls/wined3d/device.c:
	wined3d: Implement GetCreationParameters (from a patch by Al Tobey).

2006-03-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Define D3D usage flags in wined3d_types.h.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_types.h:
	wined3d: Add device caps to wined3d_types.h.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLTextAreaElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLSelectElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLInputElement implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElementCollection::tags implementation.

2006-03-06  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Simplify stores.
	Ref count cert context references, and eliminate the DupCert function
	from stores.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Better support for detached processes.
	Call setsid() in the new process to create a new Unix process group
	when CREATE_NEW_PROCESS_GROUP, CREATE_NEW_CONSOLE, or DETACHED_PROCESS
	are specified.

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c:
	x11drv: Make sure to never manipulate the root window, even if we own
	the desktop window.

	* server/process.c, server/user.h, server/window.c, server/winstation.c:
	server: Support for closing the desktop window.
	If a thread is owning the desktop window, when all other users of the
	desktop have exited, signal the owner to close the desktop (with a 1
	second delay).

	* server/object.c, server/object.h:
	server: Added unlink_named_object function.
	Allows to remove the name of an object while keeping around the object
	itself.

	* server/class.c, server/user.h, server/window.c:
	server: Infrastructure for having a thread own the desktop window.

	* dlls/mlang/mlang.c:
	mlang: Decrement the module refcount when an object is destroyed.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/volume.c, dlls/d3d9/volume.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Fix the relation between volumes and their container.

	* dlls/d3d8/surface.c, dlls/d3d9/surface.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  include/wine/wined3d_interface.h:
	wined3d: Fix the relation between surfaces and their container.

	* dlls/wined3d/surface.c:
	wined3d: Don't call glCompressedTexImage2DARB without allocatedMemory.
	Don't call glCompressedTexImage2DARB if we haven't got allocatedMemory (yet).
	Fix a small typo.

2006-03-06  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Rewrite InternetCreateUrlW.
	- Rewrite InternetCreateUrlW to respect the lengths passed in via the
	URL_COMPONENTS structure and fall back to a strlenW call when a
	length is zero.
	- Expand the number of protocols supported when determining whether
	the port number should be added.
	- Fix a test by passing in the correct length of scheme.

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Don't continue to connect to a secure server without SSL support since it won't work.
	Don't continue to connect to a secure server without SSL support since
	it won't work. Return an error back to the application instead.

	* dlls/wininet/tests/http.c:
	wininet: More tests for InternetCreateUrl.
	Fix an InternetCreateUrl test so that it correctly sets the scheme
	length and add tests which show the behaviour when the lengths are set
	to zero and when the https scheme is used.

2006-03-06  Victor Pelt <victor.pelt@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Add stub for missing InternetSetOption.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/Makefile.in, libs/wine/config.c,
	  libs/wine/wine.def, libs/wine/wine.map:
	libwine: Export a function to retrieve the data directory (based on a
	patch by Dmitry Timoshkov).

2006-03-06  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/main.c, dlls/urlmon/regsvr.c:
	Fix compatibility with native advpack dlls.
	Most native advpack dlls in circulation don't have RegInstallA. So
	mshtml and urlmon should do a GetProcAddress() on 'RegInstall'
	instead.

2006-03-06  Mike McCormack <mike@codeweavers.com>

	* tools/wrc/parser.l:
	wrc: Don't use identifiers starting yy*, they're reserved for flex.

	* dlls/avifil32/editstream.c:
	avifil32: Fix some more gcc 4.1 warnings caused by windowsx.h macros.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_LocationURL implementation.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLElementCollection implementation.
	- Added IHTMLElementCollection implementation.
	- Added get_all implementation.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Grow the file list dynamically in SHFileOperation.
	This avoids searching the same directories twice, once to count the
	files and then once for real.

	* dlls/shell32/shlfileop.c:
	shell32: Store only the file attributes in the file list for SHFileOperation.
	We don't need the rest of the WIN32_FIND_DATA structure.

	* dlls/shell32/shlfileop.c:
	shell32: Fixed handling of null-terminated file list in SHFileOperation.

2006-03-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Skip dot directories in SHFileOperation.
	In ShFileOperation when generating a file list with * wildcards, for
	example for deletion, do not include the dot directories (. and ..) in
	the list, because that cause the operation to spiral out of control.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* server/winstation.c:
	server: Avoid crash in set_thread_desktop if the thread doesn't have a queue.

	* dlls/user/win.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c, server/window.c:
	server: Return real parent and owner in the create_window request.
	Remove computing of parent and owner handles on the client side.

	* dlls/user/desktop.c:
	user: Allow creating windows of the desktop class.

	* dlls/user/message.c:
	user: Allow some Wine internal messages to act on the desktop window.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/mpr.spec, dlls/mpr/nps.c:
	mpr: Stub implementations of some mpr functions.

2006-03-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellfolder.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shv_bg_cmenu.c:
	shell32: Unicode'ify ISFHelper interface.

2006-03-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix retrieval of driver adapter versions.

2006-03-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: Added type for array index.
	- added type for array index
	- correctly parsing array index type in stabs, Dwarf2 and MSC formats
	- fixed SyGetTypeInfo accordingly

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Some more fixes to name demangling.

	* dlls/dbghelp/type.c:
	dbghelp: Implemented TI_GET_COUNT in SymGetTypeInfo for function.

2006-03-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add d3d7 and d3d8/9 cap flags to wined3d_types.h.

2006-03-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a few more WINED3DFMT formats to be recognized.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Beginning ShowContextMenu implementation.

	* dlls/mshtml/htmldoc3.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_documentElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElement implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added more interfaces to mshtml.idl.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLDOMNode implementation.

2006-03-05  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Added OpenGL 2.0 function definitions.

2006-03-05  Robert Shearman <rob@codeweavers.com>

	* programs/wcmd/wcmdmain.c:
	wcmd: Improve command line processing.
	Make the command line processing more robust by continuing to process
	command line options if an unknown one is detected and remove the
	skipping of argv[0], which is no longer necessary. This fixes the
	parsing when argv[0] isn't set to the program name.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/vartype.c:
	oleaut: Implement VarBstrFromDisp.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/varformat.c:
	oleaut: Fix VarFormat for VT_NULL variants.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c:
	ole: Implement IRpcChannelBuffer::GetDestCtx on the client side.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole: Store the destination context and the destination context data in
	the proxy manager when unmarshaling.

	* include/olectl.h:
	include: Add more definitions and types to olectl.h.

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add some more VarFormat tests and fix the VarMod decimal test.

	* dlls/oleaut32/olepicture.c:
	oleaut: Split OLEPictureImpl_Load.
	Split OLEPictureImpl_Load into separate functions for the different file
	types.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix a typo (LVM_ -> TVM_).

2006-03-01  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_DEPTHBIAS.

2006-03-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFUNC.

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFAIL,
	WINED3DRS_STENCILZFAIL and WINED3DRS_STENCILPASS.

	* dlls/wined3d/device.c:
	wined3d: Implemented fallback for separate stencil function in WINED3DRS_CCW_STENCILFUNC.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Implemented fallback for separate stencil operation in WINED3DRS_CCW_STENCIL*.

2006-03-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/wined3d/device.c:
	wined3d: Fix cut&paste typo.

2006-03-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 texture stage types.

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 render states.

2006-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winebrowser/main.c:
	winebrowser: Use CP_UNIXCP when translating URL passed on command line
	to unicode.

2006-03-04  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/sysparams.c:
	user32: Fix the default height for CJK fonts.

2006-03-04  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c:
	avifil32: Eliminate some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Move serialization functions to serialize.c.

2006-03-03  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/mlang/mlang.c:
	mlang: Implement DllCanUnloadNow.

2006-03-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/bitmap.c, dlls/x11drv/dib.c, dlls/x11drv/palette.c,
	  dlls/x11drv/x11drv.h:
	gdi: Better support for 1bpp dib sections.

2006-03-03  Mike McCormack <mike@codeweavers.com>

	* programs/regedit/childwnd.c, programs/regedit/framewnd.c,
	  programs/regedit/listview.c:
	regedit: Fix some gcc 4.1 warnings caused by casts in macros.

	* programs/winecfg/audio.c:
	winecfg: Eliminate some gcc 4.1 warnings caused by casts in macros.

	* dlls/shell32/brsfolder.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

	* dlls/msrle32/msrle32.c:
	msrle32: Fix some gcc 4.1 warnings caused by casts in windowsx.h macros.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix a gcc 4.1 warning caused by a cast in a macro.

	* dlls/comctl32/listview.c, dlls/comctl32/pager.c:
	comctl32: Fix some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Implement CertDuplicateStore.

2006-03-02  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/d3d8_main.c, dlls/d3d9/d3d9_main.c:
	d3d: Fix Validate(Pixel|Vertex)Shader() prototypes.
	Fix Validate(Pixel|Vertex)Shader() prototypes so they match the spec file.
	Fix the stub message so it is more standard and use consistent
	parameter names.

	* dlls/kernel/heap.c:
	kernel: Protect sys/resource.h include.

2006-03-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.9.

----------------------------------------------------------------
2006-03-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/dxdiagn/container.c, dlls/ole32/ole2.c, dlls/ole32/oleobj.c,
	  dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/shell32/tests/shlfolder.c, include/ddk/wdm.h, server/change.c:
	Fixed some compiler warnings on old gcc versions.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove 16-bit files on make clean.

2006-03-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Opengl 2.x compile fix.

2006-03-01  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/menu.c:
	user: Fix uninitialized rectangle in menu arrow painting.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default RelayExclude.

2006-03-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	winedbg: Bring usage() and .man up to date.

	* programs/winedbg/debugger.h, programs/winedbg/stack.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.c:
	winedbg: Add ability to reload a minidump.
	- now recognize winedbg foo.mdmp on command line
	- fleshed out tgt_minidump to reload information from minidump

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: process_io
	- added ability to specify process_io at process creation/attachment
	time
	- created a process_io structure for gdbproxy

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: main_loop.
	- split dbg_main_loop in two parts (one for finishing the debuggee
	attachment, the second one really for handling the main loop)
	- removed now longer needed dbg_main_loop

2006-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Remove unneeded call to GetBindInfo.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c:
	mshtml: Beginning support for links opened in a new frame.

	* dlls/mshtml/nsembed.c:
	mshtml: Use NSContainer as 'This' of its window.

2006-02-24  Gerold J. Wucherpfennig <gjwucherpfennig@gmx.net>

	* dlls/cabinet/cabinet.h, dlls/cabinet/fci.c:
	cabinet: Set proper error information on failures.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Fix handling of '\b' right flush character in menus.
	- do not add extra space; modify the tests to confirm this;
	- right flush to the menu tab stop, not to the menu border;
	- small fixes to the menu tab stop calculation.

2006-03-01  Brandon Woodmansee <wood@socal.rr.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_AUTOURLDETECT & EM_GETAUTOURLDETECT.

2006-03-01  Jeremy White <jwhite@codeweavers.com>

	* dlls/crypt32/tests/oid.c:
	crypt32: More gcc 2.95 adjustments.

2006-03-02  Aric Cyr <aric.cyr@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Reverse GL_BGR to GL_RGB for the D3D RGB formats.
	This fixes texture colours in many D3D games (verified with Age Of Mythology).

2006-03-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole: Change NORMALEXTREFS to 5, like it is in native.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole: Fix marshaling of proxies for interfaces that haven't already been unmarshaled.

	* dlls/oleaut32/connpt.c:
	oleaut: Use IsEqualIID in connpt.c instead of memcmp for comparing IIDs.

	* dlls/rpcrt4/ndr_stubless.c, include/Makefile.in, include/ndrtypes.h:
	rpcrt4: Change the stubless parameter attributes to using a bitfield
	(as defined by the PSDK) so the ServerAllocSize part is easier to
	calculate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshaling and unmarshaling for enum types.

2006-03-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use CertFindCertificateInStore to simplify adding certificates.

2006-03-01  Jon Parshall <jparshall@codeweavers.com>

	* dlls/shell32/shres.rc:
	shell32: New icons for Desktop and My Computer.

2006-03-01  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/menu.c:
	user32: Ensure VK_UP displays the popup menu for the selected item if
	the popup menu is not visible

2006-03-01  Marcus Meissner <marcus@jet.franken.de>

	* documentation/PACKAGING:
	PACKAGING: Mention more libraries / tools in the needed dependencies section.

2006-02-28  Gerald Pfeifer <gerald@pfeifer.com>

	* README:
	README: Fix spelling Red Hat.  Remove unneeded references to Debian
	and Red Hat.  Document the use of libxml2 as a weak prerequisite.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, include/config.h.in, server/signal.c:
	server: Print a message if wineserver crashes and we don't dump cores.

2006-02-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/settings.c:
	x11drv: Convert 24-bit into 32-bit color before looking for an
	available screen resolution. We do this during enumeration, so there
	would be no 24-bit modes available.

2006-02-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Eliminate an unnecessary function pointer from stores.

2006-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/notepad/main.c:
	notepad: Wrap long lines by default like Windows does.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c:
	kernel32: Implemented ClearCommError on top of GET_COMM_STATUS ioctl.

	* dlls/ntdll/serial.c:
	ntdll: Implemented serial IOCTL for status: GET_COMM_STATUS.

2006-02-28  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.y:
	wrc: Integer ids can be used for control labels instead of strings.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winnls/.gitignore, dlls/winnls/Makefile.in,
	  dlls/winnls/winnls.c, dlls/winnls/winnls.spec,
	  dlls/winnls/winnls32.spec, dlls/winnls32/.gitignore,
	  dlls/winnls32/Makefile.in, dlls/winnls32/winnls.c,
	  dlls/winnls32/winnls.spec, dlls/winnls32/winnls32.spec:
	winnls32: Renamed the winnls directory to winnls32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winaspi/.gitignore, dlls/winaspi/Makefile.in,
	  dlls/winaspi/aspi.c, dlls/winaspi/aspi.h, dlls/winaspi/winaspi.spec,
	  dlls/winaspi/winaspi16.c, dlls/winaspi/winaspi32.c,
	  dlls/winaspi/winescsi.h, dlls/winaspi/wnaspi32.spec,
	  dlls/wnaspi32/.gitignore, dlls/wnaspi32/Makefile.in,
	  dlls/wnaspi32/aspi.c, dlls/wnaspi32/aspi.h,
	  dlls/wnaspi32/winaspi.spec, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wnaspi32/wnaspi32.spec:
	wnaspi32: Renamed the winaspi directory to wnaspi32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/lz32/.gitignore, dlls/lz32/Makefile.in, dlls/lz32/lz32.spec,
	  dlls/lz32/lzexpand.spec, dlls/lz32/lzexpand16.c,
	  dlls/lz32/lzexpand_main.c, dlls/lz32/tests/.gitignore,
	  dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/Makefile.in,
	  dlls/lzexpand/lz32.spec, dlls/lzexpand/lzexpand.spec,
	  dlls/lzexpand/lzexpand16.c, dlls/lzexpand/lzexpand_main.c,
	  dlls/lzexpand/tests/.gitignore, dlls/lzexpand/tests/Makefile.in,
	  dlls/lzexpand/tests/lzexpand_main.c, programs/winetest/Makefile.in:
	lz32: Renamed lzexpand directory to lz32.

	* dlls/ntdll/loader.c:
	ntdll: Don't reset the load count when reusing a builtin modref.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	wine.inf: Add printing section for local port monitor.

2006-02-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/duplex.c:
	dsound: Fix duplex create bug.

2006-02-21  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/dinput/mouse.c:
	dinput: Return an error if both DISCL_EXCLUSIVE and DISCL_BACKGROUND are set.

2006-02-26  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_CCW_STENCIL* render states.

2006-02-25  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SCISSORTESTENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SLOPESCALEDEPTHBIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_ANTIALIASEDLINEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Added D3D9 render states.

	* dlls/wined3d/device.c:
	wined3d: Fixed some typos and prevented divide by 0.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Don't access a blob after freeing it.

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a close_process method to process_io.
	- added a close_process method to process_io
	- made use of it to get rid of dbg_detach

	* programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: Extend auto mode with minidump.
	- added -minidump and -minidump <file> options to command line
	Those options are to be used in remplacement of --auto to create a minidump
	In the form --minidump <file>, the minidump will be created in <file>,
	otherwise the filename will be automatically generated.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Rewrite auto mode.
	- rewrote auto mode as a specific set of commands to be run in
	regular parser, instead of hard coding those commands
	- added a new function to store a set of commands to be executed
	in a file
	- added 'echo' command to the parser functions
	- got rid of dbg_action_mode
	- added support of '--' on command line

	* programs/winedbg/gdbproxy.c:
	winedbg: Fixed regression in gdb handling.

2006-02-27  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out loading the program files directory.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add tests for the TranslateInfStringEx trio of functions and
	fix the errors.

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out the API loading of advpack tests.

2006-02-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Correct compile problem on gcc 2.95.

2006-02-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Ko.rc:
	crypt32: Add Korean translation.

2006-02-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add a stub for _wsetlocale.

2006-02-27  Kovács András <andras@csevego.net>

	* programs/winecfg/Hu.rc, programs/winecfg/winecfg.rc:
	winecfg: New Hungarian language resource.

2006-02-27  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Remove spaces before '\n'.

2006-02-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h:
	d3d8: Header cleanup.
	Remove unneeded structures and functions from d3d8_private.h, clean
	some datatypes up and remove d3dcore_gl.h.

2006-02-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIInterfaceRequestor implementation.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsservice.c:
	mshtml: Improve ConfirmEx hack.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c, dlls/mshtml/main.c,
	  dlls/urlmon/regsvr.c, include/advpub.h, tools/winapi/win32.api:
	advpack: Prepare the unicodification of advpack.dll.
	All functions that manipulate strings should have an Ansi and a
	Unicode variant.
	Forward the unqualified dll entry points to the Ansi variant for
	backward compatibility.
	We're not allowed to use unqualified entry points in Wine, so change
	RegInstall() calls to RegInstallA().
	Update win32.api.

2006-02-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Auto mode.
	- rewrite auto mode startup
	- move part of auto handling to tgt_active.c

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/winedbg.c:
	winedbg: Move gdb command line handling.
	- moves gdb command line handling to gdbproxy.c
	- using manifest constants to make code more readable

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active and command line.
	- move process attachment and process creation (related to command
	line handling) from winedbg.c to tgt_active.c
	- tidy up argument parsing

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/debugger.h:
	winedbg: Cleanup the process_io usage.
	- made be_process_io references 'const'
	- make use of it for dbg_read_memory and dbg_write_memory

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active targets
	Move all code related to an 'active' target (ie a running process)
	from winedbg.c to tgt_active.c.

	* dlls/kernel/comm.c, dlls/kernel/tests/comm.c,
	  include/wine/server_protocol.h, server/protocol.def, server/serial.c,
	  server/trace.c:
	kernel32: ClearCommError.
	ClearCommError should only deal with *communication* errors (are being
	seen on the serial interface) rather than API errors (which can be
	reported to the caller by the API itself).  I then removed all the
	stuff related to storing the error status in the server object.

2006-02-24  Andrew de los Reyes <adlr@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLL and its tests.

2006-02-24  Hamza Lakhani <hlakhani@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: EM_HIDESELECTION implementation.

2006-02-25  Peter Beutner <p.beutner@gmx.net>

	* dlls/ddraw/surface_dib.c:
	ddraw: Fix transparent Blits on 8bit surfaces.
	There are no red/green/blue bitmasks with color depth==8bpp. In that
	case always match against the whole byte.

2006-02-24  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Don't use GetDevice in IWineD3DSurfaceImpl_GetContainer, as
	it adds a reference to the device that shouldn't be there.

2006-02-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/drawprim.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/utils.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/vshaderdeclaration.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Moved the remaining code over to WineD3D (based on patches by
	Oliver Stieber).

2006-02-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/winsock/socket.c:
	winsock: Fix two Windows to Unix mapping issues.
	Handle wildcard address family hint in getaddrinfo.
	Convert flags too in getnameinfo.

2006-02-25  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_De.rc:
	crypt32: Add German resource file.

2006-02-25  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: One more LastError code fixed.

2006-02-24  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Added test for Desktop::ParseDisplayName(SHGetFolderPath(CSIDL_PERSONAL))
	Test if the Desktop Folder's ParseDisplayName recognizes MyDocument's
	path.  Removed some HRESULT tests on IUnknown_Release calls, which
	returns ULONG.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return error in NewChannelFromURL if retval is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIURI::Clone implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Don't add null byte to post data.

	* dlls/mshtml/nsembed.c:
	mshtml: Init nsIOService as soon as possible.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/iphlpapi/ifenum.c:
	iphplapi: Define IF_NAMESIZE if missing.

2006-02-24  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_No.rc,
	  programs/notepad/No.rc, programs/winecfg/No.rc,
	  programs/wordpad/No.rc, programs/wordpad/rsrc.rc:
	Updated/new Norwegian Bokmål resources.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/storage32.c:
	ole32: Add descriptions for StgCreateDocfile and StgIsStorageFile functions.

2006-02-24  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Added a comment to make life easier.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/menu.c, dlls/winmm/wavemap/wavemap.c,
	  dlls/winmm/winealsa/midi.c, programs/winecfg/theme.c,
	  server/change.c:
	Assorted spelling fixes.

	* include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Add CryptQueryObject() prototype.
	Update win32.api.

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	winsock: Tweak getnameinfo() prototype.
	Tweak the getnameinfo() prototype to better match the Windows PSDK and
	the GetNameInfoW() prototype.
	Update win32.api.

	* include/sfc.h, tools/winapi/win32.api:
	sfc: Updates.
	Add a missing sfc.dll prototype.
	Add an sfc.dll section to win32.api for winapi_check.

	* dlls/msftedit/msftedit.spec:
	msftedit: Fix CreateTextServices() forward.

	* dlls/d3d8/device.c:
	d3d8: Remove spaces before '\n', spelling fix.

	* dlls/msvcrt/tests/file.c, dlls/ole32/tests/compobj.c,
	  dlls/riched20/tests/editor.c:
	Add trailing '\n's to ok() calls.

2006-02-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/defwnd.c:
	user32: Handle WM_ENDSESSION in DefWinProc().
	DefWinProc() should call PostQuitMessage() on WM_ENDSESSION if the
	shutdown is proceeding.

	* dlls/user/message.c:
	user32: 0 vs. INFINITE timeout.
	It is 0 that denotes an infinite timeout for the wine server now, not
	-1 (INFINITE).
	Document put_message_in_queue()'s check for INFINITE (done for
	backwards compatibility with Windows 9x).

	* dlls/user/user_main.c:
	user: Fix ExitWindows().
	- Use 0 to get an infinite timeout with SendMessageTimeoutW().
	- Use SendMessageTimeoutW() to send the WM_ENDSESSION messages too so
	we don't get stuck if a process is hung.
	- Only send WM_ENDSESSION to windows that received a
	WM_QUERYENDSESSION message. Also better mimick the Windows behavior.

2006-02-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Tidy default values.
	Set values for pwLogClust, uJustification and fClusterStart similar to
	what Windows uses.

2006-02-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make the synchronous option a debug channel instead of a
	registry entry to make it easier to use.

	* configure, configure.ac:
	configure: Added special check for broken linux/capi.h.

	* dlls/ntdll/virtual.c:
	ntdll: Use PROT_NONE instead of 0.

	* dlls/kernel/dosmem.c:
	kernel: Don't request execute permission for DOS memory.

2006-02-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use public functions during serialization rather than relying
	on the internal format of a certificate.

	* dlls/crypt32/.gitignore, dlls/crypt32/Makefile.in,
	  dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/version.rc, include/wincrypt.h:
	crypt32: implement CryptEnumOIDInfo and CryptFindOIDInfo.
	- implement CryptEnumOIDInfo and CryptFindOIDInfo
	- implement CertOIDToAlgId and CertAlgIdToOID using CryptFindOIDInfo

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Skip tests, when a remote print server has no RPC
	service running.

2006-02-23  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/tests/storage32.c:
	ole32/tests: Do not compare returned by DeleteFile value with TRUE.

2006-02-23  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole: Fallthrough from local activation in CoGetClassObject.
	If local-server or local-service activation doesn't work in
	CoGetClassObject then fallthrough instead of returning from the
	function.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut: Fix standard font cloning.
	Create new empty connection points on clone of the standard Font
	(based on a patch by Alex Villacís Lasso).

2006-02-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Give meaningful names to the structures used to transfer
	information to the test threads.

2006-02-23  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: When evaluating conditions, if the condition is empty or none is
	provided then treat it as being satisfied.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix for empty node lists.

2006-02-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Use "MS Sans Serif" as default sans serif font, not Arial.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fallback to StretchDIBits if the driver doesn't support BitBlt.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/cfgmgr32.spec:
	cfgmgr32: Forward some functions to setupapi.dll.

2006-02-23  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Add directories to recursive watches as they're opened.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt: Add OIDs.

2006-02-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/dirid.c:
	setupapi: Downgrade an ERR to a WARN.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Call GetClipboardData callback on cut/copy.

	* dlls/riched20/richole.c:
	riched20: Enable retrieving data through the ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Ensure copied text is terminated with a null.

	* dlls/riched20/editor.c:
	riched20: EM_GETOLEINTERFACE is not a stub.

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/richole.c:
	riched20: Store reference to editor in ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Allocate proper amount of memory for formatetc array.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c:
	crypt32: Move OIDToAlgID and AlgIDToOID to oid.c.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement CertFindCertificateInStore, with tests.

2006-02-22  Stefan Leichter <Stefan.Leichter@camLine.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/msftedit/.gitignore,
	  dlls/msftedit/Makefile.in, dlls/msftedit/msftedit.spec:
	Added msftedit.dll.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h:
	riched20: Add IDataObject implementation and use it for cut/copy.

	* tools/widl/typegen.c:
	widl: Fix 64bit warning.

	* dlls/x11drv/clipboard.c:
	x11drv: Fix 64bit warning.

2006-02-22  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix heap overflow in ITERATE_CreateShortcuts.

	* dlls/msi/source.c:
	msi: Init size before passing to RegEnumValue.

	* dlls/msi/files.c:
	msi: Always set a value for intype in ready_volume.
	Remove a memory leak.

	* dlls/msi/table.c:
	msi: Fix heap overflow in save_string_table.
	Fix heap overflow caused by not accounting for the dummy first item,
	which contains the codepage.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: Make the CoCreateInstance test succeed.
	Move the uninitialized apartment check after zeroing out the return
	value.

2006-02-21  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETOPTIONS/EM_GETOPTIONS base implementation.
	ECO_READONLY implemented and tested.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c, dlls/crypt32/tests/store.c:
	crypt32: Tidy up tests.
	Fix up encoded data to use BYTE arrays rather than strings, and remove
	extraneous NULL bytes from the end of some of them

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c:
	crypt32: Add stubs for CryptFindOIDInfo and I_CryptInstallAsn1Module.
	Move CryptVerifyMessageSignature stub to main.c.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c:
	kernel32: Add a stub implementation for CmdBatNotification.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Initialize the dll path from the main exe name explicitly
	since ImagePathName is not always set at that point.

	* programs/explorer/systray.c:
	explorer: Moved systray configuration option to a more appropriate place
	and make it compatible with the way other options are stored.

2006-02-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/systray.c, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c, programs/explorer/systray.c,
	  programs/explorer/systray.h:
	shell32: Move systray handling to the explorer process.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/module.c, dlls/kernel/thread.c, include/module.h:
	kernel: Get rid of module.h.

	* dlls/ntdll/loader.c, dlls/ntdll/loadorder.c, dlls/ntdll/ntdll.spec,
	  dlls/ntdll/ntdll_misc.h:
	ntdll: Simplify loadorder code by using an enum instead of an array
	to represent load order values.
	Added a special value for default load order so that we can handle it
	differently later on.

	* dlls/kernel/process.c:
	kernel: Don't bother checking load order of the exe in the parent process.

2006-02-22  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi32: Update due to last minute api change in freetype 2.2.0.
	FT_Module_Get_Flags existed briefly in freetype 2.2.0.rc1 but has now
	been replaced by FT_Get_TrueType_Engine_Type.  There's no point in
	supporting an rc1 release, so this removes support for
	FT_Module_Get_Flags and adds support for FT_Get_TrueType_Engine_Type.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Make sure we don't get into an infinite loop freeing inodes.

2006-02-22  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptGetCMap functionality to translate wchars to glyphs.

2006-02-22  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Save esp before calling catch block and restore afterwards.
	It seems like the esp value (which is saved at [ebp-16]) is sometimes
	changed inside the catch handler so we end up with a bogus esp
	afterwards.  To avoid that save it before calling the catch block.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of multiple nested exceptions.
	Save in each nested frame a pointer to the original exception record.
	Only one refence in thread_data isn't enough when we have multiple
	nested frames.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of nested exceptions.
	Move handling of nested exceptions completely in the
	catch_function_nested_handler().  If a new exception was thrown inside
	a catch block destroy the old exception object, if it is a rethrow
	re-propagate the previous object.

2006-02-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shell32/pidl.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlexec.c, dlls/shell32/tests/shelllink.c,
	  dlls/shlwapi/path.c:
	shell32: Fixes for bugs found by valgrind on shell32 tests harness.
	- read strings from left to right (PathGetDriveNumberW)
	- don't access buffers before they are filled (SHGetPathFromIDListW)
	- fill buffers & variables on all paths (SHELL_FindExecutable)
	- handle error condition (unix_fs)
	- don't shoot in the blind for AW APIs (tests/shelllink.c)

2006-02-22  Marco Timpano <marcotimpano@hotmail.it>

	* dlls/winedos/ppdev.c:
	winedos: Fixed a couple of typos in ppdev.

2006-02-22  Francois Gouget <fgouget@free.fr>

	* dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapix.h:
	mapi: Add some missing MAPI prototypes.
	Add some missing MAPI prototypes to mapi.h (spotted by winapi_check)
	and include it where they are implemented.
	Make mapi.h and mapix.h compatible. gcc does not like macros and
	prototypes to be redefined so this involved protecting against
	multiple definitions.
	Fix the MAPISendMail() implementation prototype.

2006-02-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/tests/editor.c:
	riched20: Implement FR_MATCHCASE for EM_FINDTEXT.
	Removed todo flag from affected FR_MATCHCASE tests.

2006-02-21  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListAddSource.

	* dlls/advapi32/security.c:
	advapi32: Add partial implementation of LookupAccountNameW.

2006-02-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shell32.spec:
	shell32: Export PathResolve by name.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	kernel: Moved the get_startup_info call to ntdll.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer needed fields in the init_process_done request.

2006-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_ctrl.c, dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c,
	  dlls/twain/twain_i.h:
	twain: Implment DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET.
	Implement the DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET code path. Along with
	a number of corrections and improvements to allow the actual aquiring
	of images to succeed.

2006-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/parseerror.c:
	msxml3: Improve parse error handling a bit.

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c:
	msxml3: Use url monikers to load xml.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	kernel: Use LoadLibrary to load the main exe in all cases.

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin under a different name.
	Find the proper modref in that case based on the dlopen handle.

	* dlls/ntdll/loader.c:
	ntdll: Moved LDR_DONT_RESOLVE_REFS handling into fixup_imports.
	This ensures that we never fixup imports twice on the same dll.

	* dlls/shell32/tests/shlexec.c:
	shell32: Use more reasonable timeouts in shlexec test.

	* server/process.c:
	server: Avoid hang on process startup.
	Fixed the startup_info signaled state to avoid blocking the parent
	process when the child crashes on startup.

	* dlls/ntdll/loader.c:
	ntdll: Support loading builtin dlls with an explicit path name also
	when loadorder is set to builtin only.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/ntdll/loader.c:
	ntdll: Remove spaces at end of name in import_dll.

2006-02-20  Jason Green <jave27@gmail.com>

	* programs/winefile/En.rc, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Add the ability to save window position to the registry.

2006-02-21  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptTextOut.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptPlace funtionality.
	The key function is to calculate the total of the ABC widths of the
	characters converted to gylphs by ScriptShape.

2006-02-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/classinfo.c:
	shdocvw: Added correct implementation of IProvideClassInfo::GetGUID.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c,
	  dlls/d3d8/shader.c, dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Move the capability detection code over to WineD3D.
	Let the few existing parts which need the capabiliteis use the WineD3D
	capability structure (gl_info). This info structure contains next to
	'flags' inidicating certain features also all GL/GLX functions
	pointers. Because D3D8 moves over to the wined3d gl_info structure all
	the gl prototypes in d3dcore_gl.h were unneeded and removed.

2006-02-20  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix for EM_FINDTEXT input validation.
	Fixed the cpMin/cpMax validation code for EM_FINDTEXT.
	Removed todo flag from affected EM_FINDTEXT tests.

2006-02-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/tests/files.c:
	advpack: Implement AddDelBackupEntry.

	* dlls/advpack/tests/files.c:
	advpack: Add tests for AddDelBackupEntry.

	* dlls/advpack/files.c:
	advpack: Make AddDelBackupEntry always return S_OK.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c,
	  dlls/advpack/install.c:
	advpack: Branch off the advpack install functions into install.c.

	* dlls/advpack/advpack.c:
	advpack: Implement the Open/CloseINFEngine and TranslateINFStringEx
	trio of functions.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Load the LDIDs of an install section in TranslateInfString.

2006-02-21  Dr J A Gow <J.A.Gow@furrybubble.co.uk>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/tests/storage32.c:
	ole32: Fix stream ref counting.
	Stream methods called after parent object has been closed correctly
	return STG_E_REVERTED.
	Stream refcounting fixed. Now can safely call IStorage destructor
	before IStream destructor and guarantee file will be closed.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix up permissions when opening streams.
	Fix up permissions when opening streams in storage objects when
	storage object has been opened in transacted mode.

2006-02-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: Add a simple test for recursive notification.

	* dlls/kernel/tests/file.c:
	kernel32: Add a short test for GetOverlappedResult.

	* dlls/ntdll/directory.c, include/wine/server_protocol.h, server/change.c,
	  server/protocol.def, server/trace.c:
	server: Track created and removed directories in the tree of inodes for inotify.
	Add them to or remove them from existing recursive watches.

2006-02-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid compile error caused by a single quote.

2006-02-20  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	winsock: Implement getnameinfo.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	menu: Take the MF_DEFAULT flag in to account in MENU_CalcItemSize.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Add a define for SYS_sigaction to __NR_sigaction.
	Print an error if __NR_sigaction doesn't exist as this means the wrong
	syscall header is being used.

2006-02-20  Vitaly Lipatov <lav@etersoft.ru>

	* configure, configure.ac, dlls/winsock/socket.c, include/config.h.in:
	winsock: Add check for sin6_scope_id.

2006-02-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/Makefile.in, dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptShape functionality.

2006-02-18  Roger Hoang <rogerhoang@hotmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implemented EM_SETTEXTMODE options TM_RICHTEXT and TM_PLAINTEXT
	and their tests.

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Set default original uri in NewChannelFromURI.

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c, server/change.c:
	server: Distinguish between a directory and a file changing in
	ReadDirectoryChangesW.
	Add a test for it.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c:
	dbghelp: Virtual modules.
	Rewrote virtual modules handling so that it's an option to either PE
	or ELF modules rather than a specific type.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/dosmem.c:
	kernel: Don't require execute permission for DOS memory, this will be
	done in winedos if necessary.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/menu.c:
	user: Add conformance tests for menu item drawing.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- check mark is drawn left of a bitmap;
	- if a MNS_CHECKORBMP-style menu has a checkmark, do no draw any bitmap;
	- space for the popup arrow is also reserved for non popup items;
	- implement the MNS_NOCHECK style.

	* dlls/user/menu.c:
	user:  Menu string width calculation fixes.
	- Use DrawText in stead of GetTextExtendPoint32, to properly measure
	strings with ampersands like "&File";
	- Fix mess with strings with an embedded tab;
	- In case of a menu bar, two extra pixels are added if the item has
	both a bitmap and string.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	Replace some #defined constants by values calculated from windows
	metrics.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- Move sending WM_MEASUREITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_GetBitmapItemSize();
	- Save the received bitmap size in the menu item structure as it will
	need to be sent in the WM_DRAWITEM message;
	-  Move sending WM_DRAWITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_DrawBitmapItem();
	- This also means that HBMMENU_CALLBACK bitmaps are now supported in
	menu bars.

	* dlls/user/menu.c:
	user: Move drawing of pop menu arrows to a subroutine reduces nesting
	level of some large if statements in the drawing code. Some updates to
	the comments.

2006-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add some tests for SetDefaultPrinterA/W.

	* dlls/winspool/info.c, dlls/winspool/winspool.drv.spec:
	winspool: Add documentation and a stub for SetDefaultPrinterA/W.

2006-02-20  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c:
	shell32: Avoid recursing SHELL32_GetItemAttributes() calls.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in, server/Makefile.in:
	configure: Use --rpath if supported when building binaries to point to
	the relative location of the wine libraries.

2006-02-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Misc cleanups in undname.c.
	- remove unused argument from functions
	- print the pointer in the str_array_push TRACE to be able to distinguish
	the different arrays.
	- comment and white space cleanups

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Add some tests for __unDName().
	Add some tests for unDName() checking:
	- data type modifiers A,B,P,Q,R,S
	- literal strings
	- back references to names

	* dlls/msvcrt/undname.c:
	msvcrt: Use a separate stack for back references to names
	Use a separate array/stack for the back references to names as
	sym->stack is used to push temporary strings to it which breaks back
	referencing in some occasions (26 symbols in the mfc42 dll).  During
	this cleanup get_class() a little bit.

	* dlls/msvcrt/undname.c:
	msvcrt: Move code to parse a literal string out of get_class().
	unDName: Move the code to parse a literal string from get_class() to a
	separate function. Add some error handling to the new function.

	* dlls/msvcrt/undname.c:
	msvcrt: Wrap get_class() and get_class_string() for unDName.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Fix 20 tests from demangle_test() on old Win versions.
	In test_demangle use a custom strcmp that treats multiple spaces as
	single space. __unDName() from older msvcrt (including W2K it seems)
	emit in some places 2 spaces instead of one. Fixes 20 failing tests on
	those old Windows versions.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/compobj.c:
	ole: Test the behaviour of CoCreateInstance with an uninitialized apartment.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Change the Apartment Model field to a boolean.
	Change the apartment model field to a boolean that just specifies
	whether the apartment is multi-threaded or not and fix up all the
	places where this is used.
	Fixes a bug where we would return an error if the previous apartment
	model passed into CoInitializeEx matches the new apartment model, but
	additional optimisation flags are specified.

2006-02-20  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

	* programs/wordpad/Ko.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Korean translation.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/path.c:
	dbghelp: Fix SymFindFileInPath to return files matching the requested
	criteria (it was mainly doing the opposite).

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	shdocvw: Change FIXMEs to TRACE in IDispatch's methods as they return
	E_NOTIMPL in Windows as well.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Create nsIChannel for protocols not handled by Gecko.

2006-02-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix four todos for GetStandardColorSpaceProfile[AW].

	* dlls/mscms/tests/profile.c:
	mscms: Branching fixes for some test routines

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Add a stub implementation of CMP_WaitNoPendingInstallEvents.

2006-02-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add the DS_NOIDLEMSG style to message boxes.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/winhelp/winhelp.c:
	winhelp: Zero out WINHELP_WINDOW in WINHELP_CreateHelpWindow.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/resource.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Move texturing code over to wined3d (based on Oliver Stieber's work).

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: Fixed regression: stack info was no longer working.

2006-02-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptItemize functionality.

2006-02-18  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Handle file URLs.

2006-02-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Add some stubs.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement enhanced key usage.
	Implement CertGetEnhancedKeyUsage, CertSetEnhancedKeyUsage,
	CertAddEnhancedKeyUsageIdentifier, and
	CertRemoveEnhancedKeyUsageIdentifier.

2006-02-18  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added usp10 tests.

2006-02-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix previous change to still build all the binaries on
	x86_64 in 32-bit mode.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/user/menu.c:
	user: Implement scrolling in popup menus.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c, libs/wine/loader.c:
	libwine: Add the runtime library path to the front of the dll paths list.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Use wine_dll_enum_load_path to search the dll load path.

2006-02-17  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Correctly set EOF flag in fread().
	Setting the EOF flag only if _read() returns zero is not enough as we
	could also read something AND hit the end of file.
	_read() already sets another internal EOF flag, so just use this too.
	Removing todo_wine from the test case.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add test for fread/feof.
	When calling fread() with a large enough buffer to reach the end of
	the file a subsequent feof() should return true; (marked as todo_wine
	because it doesn't work atm).

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Remove bogus code.
	We can't just pop a exception record from the exception handler list
	which we haven't put there.

	* dlls/msvcrt/file.c:
	msvcrt: Fix use of uninitialized variable.

2006-02-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add tests for EnumMonitors.

2006-02-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/store.c:
	crypt32: Move certificate store functions to their own file.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in:
	configure: Default to building wine-pthread on non-x86 platforms.

2006-02-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/dbghelp.h:
	dbghelp: Packing for minidump structures is 4 bytes.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/elf_module.c, dlls/msacm/wineacm.h,
	  dlls/wldap32/winldap_private.h:
	Fixed a couple of function prototypes.

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Set the default bindir and dlldir from argv0 if dladdr is not available.
	Added dependency on $(RELPATH).

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Compute relative paths for bin and dll directories at compile time.

	* Make.rules.in, tools/.gitignore, tools/Makefile.in, tools/relpath.c:
	tools: Added 'relpath' tool to compute relative Unix paths.

	* dlls/ntdll/server.c:
	ntdll: Remove no longer used oldcwd in start_server.

2006-02-17  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Use a single inotify watch, as it scales better with a large
	number of directories.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* programs/wordpad/Ru.rc, programs/wordpad/rsrc.rc:
	wordpad: Russian translation.

2006-02-17  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/Nl.rc, programs/wordpad/rsrc.rc:
	wordpad: Dutch localization.

2006-02-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Fix post data parsing.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/server.c, include/wine/library.h,
	  libs/wine/config.c, loader/glibc.c:
	libwine: Try the current load path in priority before the
	WINELOADER/WINESERVER environment variables in wine_exec_wine_binary.

	* libs/wine/config.c:
	libwine: Don't rely on argv[0] in wine_exec_wine_binary if we can get
	the directory from the library itself.
	Only try the hardcoded BINDIR if everything else failed.

	* libs/wine/config.c:
	libwine: Only use the library directory if it's an absolute path.

2006-02-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c:
	winecfg: Localize the app specific title.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: More encoding/decoding.
	Add support for encoding/decoding basic constraints and enhanced key
	usage, with tests.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Simplify CertOpenSystemStore, fix CertDuplicateCertificateContext.
	- now that CertOpenStore is correct for system stores, simplify
	CertOpenSystemStore
	- correct CertDuplicateCertificateStore, with a test

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

	* programs/progman/Ko.rc, programs/progman/rsrc.rc:
	progman: Updated Korean translation.

2006-02-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/comment.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml3: Implement comment node.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix get_text on text nodes.

2006-02-16  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLLCARET and EM_GETSCROLLPOS.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut: Test some error conditions in ITypeInfo::GetIDsOfNames and ITypeInfo::Invoke.

2006-02-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Distinguish between registered and unregistered profile IDs.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* tools/winebuild/winebuild.man.in:
	winebuild: Correction for manpage.
	The behaviour for winebuild is to prefer main over WinMain, not the
	other way around.

2006-02-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Unaccess post data only if we've accessed it before.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/make_dlls, libs/wine/loader.c:
	libwine: New naming scheme for 16-bit builtin dlls.
	Stop using symlinks for 16-bit dlls to make sure they don't get loaded
	by mistake when looking for a 32-bit dll.

2006-02-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Remove/swap limits if min > max in MCM_SETRANGE.
	We should swap min & max only when both limits are being
	set. Otherwise limit that being set should invalidate other limit
	(remove it).

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Don't change month range in MCM_SETRANGE. Add tests for this.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/wininet/internet.c:
	wininet: Use CertNameToStr for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT
	and update comment.

	* dlls/crypt32/cert.c:
	crypt32: Fix system stores and a memory leak.
	- system stores open both HKLM and HKCU for "current user" locations
	- fix a memory leak in certificate properties

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wordpad/Fr.rc, programs/wordpad/rsrc.rc:
	wordpad: French localization.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* .gitignore:
	Merge the contents of info/exclude into the top-level .gitignore.

	* server/debugger.c, server/process.c, server/process.h,
	  server/snapshot.c:
	server: Store the process exe module in the standard dll list.

	* dlls/d3d8/cubetexture.c:
	d3d8: Fixed compile with older GL versions.

2006-02-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Set the texture size for d3d8.

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: French resource update.

2006-02-16  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/rsrc.rc:
	wordpad: Added German resource.

2006-02-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix parameter check for UrlUnescapeA.
	NULL pszUnescaped is okay if URL_UNESCAPE_INPLACE is set.
	Add a corresponding test for UrlUnescape{A,W}.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, include/wincrypt.h:
	crypt32: Partially implement CertGetNameString.

2006-02-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/winedbg.c:
	winedbg: A couple of fixes after running valgrind.

2006-02-16  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptGetProperties.

2006-02-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.8.

----------------------------------------------------------------
2006-02-15  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, libs/wine/Makefile.in, loader/main.c:
	loader: Reserve memory area on Darwin (based on Steve Zellers patch).

2006-02-15  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Extend EM_FINDTEXT conformance tests and fix 2 problems they expose.

2006-02-15  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.spec,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implemented a couple of forwards to shlwapi.

2006-02-15  Jacek Caban <jacek@codeweavers.com>

	* programs/winecfg/libraries.c:
	winecfg: glut32.dll may be configured as native.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IServiceProvider interface.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Navigate2 rewrite.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added beginning IHlinkFrame::Navigate implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added hack to allow pass post data to IPersistMoniker::Load.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added ref counting to NSContainer.
	- Added ref counting to NSContainer.
	- Better destroying of NSContainer.

2006-02-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Rename a variable for clarity.

	* dlls/crypt32/str.c:
	crypt32: Output string type in trace.

2006-02-15  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Added a test showing OLE storage's IStorage/IStream refcounting
	behaviour.

	* include/winnt.h:
	include: Add WT_ defines for use with RegisterWaitForSingleObject.

2006-02-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-14  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Support RTF text in WM_SETTEXT.

2006-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added stub for ScriptGetCMap.

2006-02-14  Jeff Latimer <lats@yless4u.com.au>

	* configure, configure.ac, dlls/usp10/Makefile.in,
	  dlls/usp10/tests/.gitignore, dlls/usp10/tests/Makefile.in,
	  dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added some tests.

2006-02-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/secur32/schannel.c:
	secur32: Add InitializeSecurityContext stub for schannel.

2006-02-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/resource.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c:
	d3d8: Move d3d8 surface over to wined3d (based on the work of Oliver Stieber).

2006-02-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Fix invalid date/time check in MCM_SETRANGE: ignore time and fail on bad date.

2006-02-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Move 4 test macros into a single one.

2006-02-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/winemp3/mpegl3.c:
	winemp3: Increase factor from 4 to 12 in MPEG3_StreamSize.
	- Increase size factor from 4 to 12 in MPEG_StreamSize, otherwise
	mpglib buffer queue grows.
	- Add TRACE of mpglib buffer queue for conversion.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/ctl3d/.gitignore, dlls/ctl3d/Makefile.in, dlls/ctl3d/ctl3d.c,
	  dlls/ctl3d/ctl3d.spec, dlls/ctl3d/ctl3d32.c, dlls/ctl3d/ctl3d32.spec,
	  dlls/ctl3d/ctl3dv2.spec, dlls/ctl3d32/.gitignore,
	  dlls/ctl3d32/Makefile.in, dlls/ctl3d32/ctl3d.c,
	  dlls/ctl3d32/ctl3d.spec, dlls/ctl3d32/ctl3d32.c,
	  dlls/ctl3d32/ctl3d32.spec, dlls/ctl3d32/ctl3dv2.spec:
	ctl3d32: Renamed ctl3d directory to ctl3d32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olesvr/.gitignore, dlls/olesvr/Makefile.in,
	  dlls/olesvr/olesvr.spec, dlls/olesvr/olesvr32.spec,
	  dlls/olesvr/olesvr_main.c, dlls/olesvr32/.gitignore,
	  dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr.spec,
	  dlls/olesvr32/olesvr32.spec, dlls/olesvr32/olesvr_main.c:
	olesvr32: Renamed olesvr directory to olesvr32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olecli/.gitignore, dlls/olecli/Makefile.in,
	  dlls/olecli/olecli.spec, dlls/olecli/olecli16.c,
	  dlls/olecli/olecli32.spec, dlls/olecli/olecli_main.c,
	  dlls/olecli32/.gitignore, dlls/olecli32/Makefile.in,
	  dlls/olecli32/olecli.spec, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli32.spec, dlls/olecli32/olecli_main.c:
	olecli32: Renamed olecli directory to olecli32.

2006-02-14  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc/.gitignore, dlls/sfc/Makefile.in, dlls/sfc/sfc.spec,
	  dlls/sfc/sfc_main.c:
	sfc: Add sfc.dll with a stub for SfcIsFileProtected.

	* include/Makefile.in, include/sfc.h:
	include: Add sfc.h.

2006-02-14  Krzysztof Foltman <wdev@foltman.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/wordpad/.gitignore, programs/wordpad/En.rc,
	  programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	programs: Add an implementation of Wordpad.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Always set the size to public symbols to 1 when we don't know the size
	so that they can only be search on their start address

	* programs/winedbg/debug.l:
	winedbg: Allow using MSVC mangled symbol names as identifiers.

2006-02-14  Mike Frysinger <vapier@gentoo.org>

	* Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/Makeimplib.rules.in, dlls/make_dlls, dlls/wineps/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/Makelib.rules.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in,
	  programs/make_progs, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	Add support for 'make install DESTDIR'.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/resource.h, programs/winecfg/theme.c,
	  programs/winecfg/winecfg.h:
	winecfg: Support for setting symlinks for 'Desktop' and 'My Stuff' shell folders.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c:
	A couple of new valgrind instrumentations for better support.

2006-02-14  Jeremy White <jwhite@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	twain: Reconcile sane's long names to TWAIN's 32 byte limit.

	* dlls/twain/twain.h:
	twain: Make structures respect 2 byte packing requirements.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: When possible, use tgkill instead of tkill syscall on Linux.

2006-02-14  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_REVERSE_DEFAULT_SEARCH search flag.

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_INF_NAME_IS_ABSOLUTE and
	INFINFO_DEFAULT_SEARCH search flags.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winmm/driver.c:
	winmm: Protect drivers list by a critical section.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/test.h:
	tests: Fixed test framework against environment modifications.

2006-02-14  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument type of IsDlgButtonChecked.

	* dlls/user/scroll.c, include/winuser.h:
	user: Fix argument type for EnableScrollBar.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument types for CheckRadioButton.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix return type and argument type for GetDlgItemText{A,W}.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Disable datarate, keyframe and quality controls to not
	confuse users by a not implemented functionality.
	Add support for About codec control.

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Initialize lpbiIn member of the COMPVARS structure.

2006-02-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add riched20 tests.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/shellpath.c:
	shell32: Return a GUID pidl for CSIDL_PERSONAL in SHGetFolderLocation.
	The tests (shellpath.c/testPersonal) already show that it can be either
	PT_FOLDER or PT_GUID. It's PT_GUID on WinXP.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* loader/pthread.c:
	loader: Added missing attr destroy.

2006-02-14  Robert Shearman <rob@codeweavers.com>

	* documentation/.gitignore:
	Ignore documentation/html.

	* tools/c2man.pl:
	tools/c2man.pl: Generate correct html.

	* dlls/wininet/gopher.c, dlls/wininet/http.c:
	wininet: Documentation fixes.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Free connection point on destruction of the picture object.
	Handle failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix returning Typelib file name.
	We can't use GetModuleFileName on a resource-only module, so the best
	we can do is to copy the original name we used to find the type
	library.  Fix a couple of places where we were incorrectly using the
	file name, rather than the path.

	* dlls/oleaut32/olefont.c:
	oleaut32: Free the connection points on destruction of the font object.
	Free the connection points on destruction of the font object and cope
	with failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Don't try to release NULL COM objects in the typelib
	marshaler.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix flag comparison in Picture Invoke.
	One or more invoke flags can be passed into IDispatch::Invoke, but we
	only care if INVOKEFLAG_PROPERTYGET is specified, and don't about any
	others.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* server/queue.c:
	server: Try to update the input key state even when the message is
	dropped in queue_hardware_message. This should fix some problems with
	the Alt key getting "stuck" after Alt-Tab.

2006-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/kernel/locale_rc.rc, dlls/oleaut32/hash.c, include/winnt.h,
	  tools/widl/hash.c, tools/wine.inf:
	include: Add missing LANG_xxx and SUBLANG_xxx constants.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/De.rc:
	winecfg: Cleaned up various control positions on the German version of
	the audio tab.

	* dlls/shell32/regsvr.c:
	shell32: Register 'LocalizedString' values for shellfolder classes.

	* dlls/shell32/classes.c:
	shell32: Query for localized string in HCR_GetClassName.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Implemented RegLoadMUIString[AW].

2006-02-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select wakeup on closesocket.
	- Change select timeout from 2 seconds to 500 microseconds.
	- Add test to make sure select wakes up after a closesocket.
	- Add test to make sure listen fails without bind.

2006-02-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getElementsByTagName.

2006-02-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/msxml3/main.c, dlls/msxml3/msxml3.spec:
	msxml3: Implement DllUnregisterServer.

2006-02-13  Petr Tesarik <hat@tesarici.cz>

	* programs/winhelp/Cs.rc:
	winhelp: Czech language resources encoding fix.

	* programs/winemine/Cs.rc:
	winemine: Czech language resources encoding fix.

	* programs/winefile/Cs.rc:
	winefile: Czech language resources encoding fix.

	* programs/wineconsole/wineconsole_Cs.rc:
	wineconsole: Czech language resources encoding fix.

	* programs/winecfg/Cs.rc:
	winecfg: Czech language resources encoding fix.

	* programs/wcmd/Cs.rc:
	wcmd: Czech language resources encoding fix.

	* programs/view/Cs.rc:
	view: Czech language resources encoding fix.

	* programs/uninstaller/Cs.rc:
	uninstaller: Czech language resources encoding fix.

	* programs/start/Cs.rc:
	start.exe: Czech language resources encoding fix.

	* programs/regedit/Cs.rc:
	regedit: Czech language resources encoding fix.

	* programs/progman/Cs.rc:
	progman: Czech language resources encoding fix.

	* programs/notepad/Cs.rc:
	notepad: Czech language resources encoding fix.

	* programs/cmdlgtst/Cs.rc:
	cmdlgtst: Czech language resources encoding fix.

	* programs/clock/Cs.rc:
	clock: Czech language resources encoding fix.

	* dlls/winmm/winmm_Cs.rc:
	winmm: Czech language resources encoding fix.

	* dlls/wininet/wininet_Cs.rc:
	wininet: Czech language resources encoding fix.

	* dlls/user/resources/user32_Cs.rc:
	user32: Czech language resources encoding fix.

	* dlls/wineps/wps_Cs.rc:
	wineps: Czech language resources encoding fix.

	* dlls/shell32/shell32_Cs.rc:
	shell32: Czech language resources encoding fix.

	* dlls/setupapi/Cs.rc:
	setupapi: Czech language resources encoding fix.

	* dlls/serialui/Cs.rc:
	serialui: Czech language resources encoding fix.

	* dlls/oledlg/oledlg_Cs.rc:
	oledlg: Czech language resources encoding fix.

	* dlls/mpr/mpr_Cs.rc:
	mpr: Czech language resources encoding fix.

	* dlls/msrle32/msrle_Cs.rc:
	msrle32: Czech language resources encoding fix.

	* dlls/msacm/msacm_Cs.rc:
	msacm: Czech language resources encoding fix.

	* dlls/hhctrl.ocx/Cs.rc:
	hhctrl.ocx: Czech language resources encoding fix.

	* dlls/commdlg/cdlg_Cs.rc:
	commdlg: Czech language resources encoding fix.

	* dlls/comctl32/comctl_Cs.rc:
	comctl32: Czech language resources encoding fix.

	* dlls/avifil32/avifile_Cs.rc:
	avifil32: Czech language resources encoding fix.

2006-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/hlink.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Handle IHlinkFrame service.

2006-02-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Update the glOrtho between 2 rhw draws if the viewport was changed.

2006-02-13  Cyril Margorin <comargo@gmail.com>

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_DIB_SetImageBits and X11DRV_DIB_GetImageBits to
	check for passed image, and do not use shared memory extension for
	temporary created image.

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_GetDIBits to pass shared memory image to
	X11DRV_DIB_GetImageBits.

2006-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/exit.c:
	msvcrt: Fix a typo.

2006-02-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/psapi/psapi.spec:
	psapi: Fix output parameter of function GetModuleBaseName in spec
	file.

2006-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Don't keep a reference to the container, as it creates a
	circular reference.

2006-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/device.c:
	wined3d: Protect float.h inclusion.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Add trailing '\n's to ok() calls.

	* include/d3dtypes.h:
	d3dtypes: Fix windows.h inclusion.

2006-02-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/file.c:
	kernel: Report a tape device as FILE_TYPE_CHAR.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add a stub for CryptQueryObject.

	* dlls/netapi32/access.c:
	netapi32: Improve stub for NetUserModalsGet.
	Tell the caller this host is not part of a domain.

2006-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Fix typos in the control state handling.
	Fix typos in the control state handling, add state checks for IDOK
	and IDCANCEL control notification handlers.

2006-02-11  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/Makefile.in, libs/wine/config.c, libs/wine/loader.c:
	libwine: Use dladdr if supported to get the run-time path of libwine.so
	and define the default dll and bin directories relative to it.

	* configure, configure.ac, include/config.h.in:
	configure: Added check for dladdr in libdl.

	* aclocal.m4, configure, configure.ac:
	configure: Added a WINE_CHECK_LIB_FUNCS macro to check for functions
	when linking with specific libraries.

2006-02-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/d3d_private.h, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c:
	ddraw: Small function corrections.
	The pPlaneEquation parameter of IDirect3DDevice7::SetClipPlane is not const
	IDirect3DDevice2::NextViewport takes an IDirect3DDevice2 interface, not an
	IDirect3DDevice3, the same for IDirect3DDevice::NextViewport.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: ProcessVertices correction.
	Use the texture index to get the texcoord size from the fvf, not the
	vertex index.

2006-02-11  Phil Krylov <phil@newstar.rinet.ru>

	* configure, configure.ac, dlls/ntdll/tape.c:
	ntdll: Fix tape.c compilation on Darwin.

2006-02-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shell32/shlview.c:
	shell32: IShellView list's control id should be 1, not 2000.

	* dlls/commdlg/filedlgbrowser.c:
	commdlg: IShellBrowser sets IShellView window's control id to 5002.

2006-02-11  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c, include/Makefile.in, include/ddk/ntddcdvd.h:
	ntdll: Implement DVD_ReadStructure.

2006-02-11  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c:
	riched20: Fixed bounds error when finding text forward.

	* configure, configure.ac, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/.gitignore, dlls/riched20/tests/Makefile.in,
	  dlls/riched20/tests/editor.c:
	riched20: Added tests for EM_FINDTEXT and EM_FINDTEXTEX messages.

2006-02-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c, dlls/shell32/tests/shlfolder.c:
	shell32: SHELL32_GetItemAttributes()
	- correct documentation which incorrectly claimed not to set any
	attribute bits
	- retrieve file attributes using SHGetPathFromIDListW() when they are
	not already present in the internal PIDL structures
	- add test case to show the previously wrong folder attributes when
	using absolute PIDLs
	- fix some memory leaks in the tests

2006-02-11  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Make the returned driver version similar to windows.

	* dlls/wined3d/utils.c:
	wined3d: Extend debug_d3drenderstate with missing states.

2006-02-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: localtime should accept any positive time value.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Handle ICM_CONFIGURE request in ICCVID and MSVIDC32 codecs.

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Call codec's Configure dialog if the codec supports it.
	Disable data rate and key frame fields if requested.

2006-02-11  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-02-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Prevent crash in setup_light.

2006-02-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/Makefile.in, include/dpnathlp.h:
	include: Add dpnathlp.h header.

2006-02-10  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/file.c:
	msvcrt: In _mktemp sixth generated charater always starts with 'a'.

2006-02-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: Add ISupportErrorInfo for named node maps.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c,
	  include/mshtmhst.idl:
	mshtml: Added more defines to mshtmlhst.idl.

2006-02-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added emulation of ATL thunks for platforms with NX support.

2006-02-10  Aric Stewart <aric@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: gcc 2.95 compile fixes.

2006-02-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/drive.c:
	kernel: Fix a GetDiskFreeSpaceExA test for cd/dvd drives.

2006-02-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Release the vertex declaration during stateblock cleanup.

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Release the container during surface / volume cleanup.

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Use an invisible window for tests.

2006-02-10  Robert Shearman <rob@codeweavers.com>

	* dlls/secur32/secur32.c:
	secur32: Improve tracing.
	Improve the tracing for functions that can be called by the app, but
	bypass the relay code.

	* tools/widl/write_msft.c:
	widl: Fix a typo when removing TYPEFLAG_FDUAL.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/shdocvw/events.c:
	Return the correct error code from IConnectionPointContainer::FindConnectionPoint.

	* dlls/oleaut32/olepicture.c:
	oleaut: Partially implement Invoke on the standard picture implementation.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix importing the IDispatch interface for TKIND_DISPATCH type infos.
	Fix importing the IDispatch interface for TKIND_DISPATCH type infos
	when the offset isn't specified. It should be fetched from the
	dispatch offset stored in the header, rather than using a hack that
	doesn't work.

	* dlls/oleaut32/tests/olefont.c:
	oleaut: Add tests for IFontEventsDisp.

	* dlls/oleaut32/olefont.c:
	oleaut: Implement IFontEventsDisp connection point for the standard
	font implementation.

	* include/olectl.h:
	include: Define DISPID_FONT_CHANGED.

2006-02-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Move break statement to the correct spot.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of IHlinkFrame service.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added nsIUploadStream implementation.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/regsvr32/Makefile.in, programs/regsvr32/regsvr32.c:
	regsvr32: Call OleInitialize before registering a DLL.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* programs/Makefile.in, programs/make_progs:
	programs: Don't install winetest.

2006-02-09  Jeremy White <jwhite@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/tests/change.c:
	kernel: Fixed build with gcc 2.95.

2006-02-09  Mike McCormack <mike@codeweavers.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix the compile for missing EV_SYN define.

2006-02-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/gdi/pen.c:
	gdi: Show hatch brush FIXME only once.

2006-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Get rid of HTMLDocument_OnLoad and move its job to AsyncOpen.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIChannel.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIURI interface.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Better ns*String handling.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIOService.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Better handling of errors when loading a builtin dll from an
	existing file.

2006-02-09  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c:
	setupapi: Error out if ReturnBuffer is NULL but ReturnBufferSize is not 0.

	* dlls/setupapi/query.c:
	setupapi: Convert InfSpec to unicode if SearchControl is not
	INFINFO_INF_SPEC_IS_HINF.

2006-02-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Make TLB_ReadTypeLib not rely on the signature of executables or dlls.
	Try loading the dll first and then fall back to the regular file case.
	Only call SearchPath for the regular file case since LoadLibraryEx
	will do this for us and it previously excluded builtin dlls and
	executables from having their type libraries opened.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the call to SearchPath inside of TLB_ReadTypeLib.

	* dlls/oleaut32/typelib.c:
	oleaut: Revert incorrect patch changing the order of parameters passed
	into DispCallFunc. A test with native indeed shows that the parameter
	index increases from the leftmost parameter to the rightmost.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Write out more TYPEFLAGs and add more type library-specific
	attributes to the parser.

	* tools/widl/write_msft.c:
	widl: Write out TYPEFLAG_FDUAL, TYPEFLAG_FDISPATCHABLE and
	TYPEFLAG_FOLEAUTOMATION typelib flags.

2006-02-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Fix up decoding.
	- don't use the no copy flag when decoding, the lifetime of the buffer
	to decode isn't guaranteed
	- remove some extraneous ternary comparisons
	- fix a comment

	* dlls/crypt32/encode.c:
	crypt32: Fix a fixme, and remove an old comment.

2006-02-09  Aric Stewart <aric@codeweavers.com>

	* dlls/advapi32/registry.c:
	advapi32: Fix for RegNotifyChangeKeyValue.
	Flip fAsync and fWatchSubTree into their proper places.

2006-02-09  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: Take into account that FreeBSD and others have MTSETBSIZ
	instead of MTSETBLK.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss French keyboard layout to better match the X11 one.

2006-02-09  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Fix duplex test.

2006-02-09  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Dynamic handling of buttons of a device.

	* dlls/wined3d/utils.c:
	wined3d: Support for WINED3DFMT_A8B8G8R8.

	* dlls/wined3d/device.c:
	wined3d: Better warn/fixme for query handling.

2006-02-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/sendmail.c:
	mapi32: Prevent freeing non-allocated memory.

2006-02-08  Francois Gouget <fgouget@free.fr>

	* include/winuser.h:
	winuser.h: Add missing *LayeredWindow*() prototypes.

2006-02-08  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server_protocol.h, server/process.c, server/protocol.def,
	  server/trace.c:
	server: Remove the no longer needed exe_file parameter in the
	init_process_done request.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Get rid of the main_file argument in LdrInitializeThunk.

	* dlls/kernel/process.c:
	kernel: Use a standard LoadLibrary call to load the main exe.

	* dlls/ntdll/loader.c:
	ntdll: Check for existing modref for the main exe before creating it
	in LdrInitializeThunk.

	* server/process.c:
	server: Allow the main exe to be registered as a normal dll before
	init_process_done is called.

	* server/change.c:
	server: Fixed handling of inotify record length.

2006-02-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: __unDNameEx is not a stub.

2006-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added IHlinkFrame stub implementation.

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Includes clean up.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/misc.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Remove IQuickActivate interface implementation that is not
	implemented in Windows as well.

	* include/urlmon.idl:
	urlmon.idl: Added BINDINFOF declaration.

2006-02-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Pens created without PS_GEOMETRIC style but with width > 1 unit are
	scalable.

	* dlls/gdi/path.c:
	gdi: Remove StrokePath workaround for a DC transformation change bug.

2006-02-08  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/escape.c:
	wineps: Don't display the MFCOMMENT escape.

2006-02-07  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/tape.c:
	ntdll: Fix typo in HAVE_STRUCT_MTGET_MT_GSTAT ifdef.

	* dlls/shell32/shellole.c:
	shell32: Update DllGetClassObject documentation.

	* include/textserv.h:
	textserv.h: Add missing CreateTextServices() prototype.

	* dlls/ntdll/virtual.c:
	ntdll: Protect sys/stat.h inclusion.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default handler for https to the registry.

	* dlls/kernel/locale.c:
	kernel32: Implement EnumUILanguages.

	* dlls/x11drv/dib_convert.c:
	x11drv: Copy the whole image at once if appropriate.

2006-02-07  Fatih Aşıcı <fasici@linux-sevenler.org>

	* dlls/x11drv/keyboard.c:
	x11drv: Fix Turkish keyboard layouts.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin dll by specifying an explicit path to
	the .so file.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/En.rc, programs/notepad/License_En.c,
	  programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/license.c, programs/notepad/license.h,
	  programs/notepad/notepad_res.h:
	notepad: Move license text to resources.

2006-02-07  Sergei Butakov <butsergej@yandex.ru>

	* dlls/ntdll/time.c:
	ntdll: Added Urals time.

2006-02-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Added CopyRects method (based on a patch by Oliver Stieber).

	* dlls/d3d8/device.c:
	d3d8: fbconfig fix.
	Right now the ActiveRender code in D3D8 requests a GLX_DEPTH_SIZE of
	32 in case the direct3d color format also has a depth of 32. As
	verified on various linux drivers (Ati fglrx, Ati (dri) and Nvidia)
	the color depth needs to be 24. This patch sets the depth to 24 and it
	fixes bugs in 3dmark2001 and other programs.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: More test cases for ReadDirectoryChangesW.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/trace.c:
	kernel32: ReadDirectoryChangesW fixes.
	ReadDirectoryChangesW remembers whether it's recording changes or not.
	Don't initialize overlapped->InternalHigh.
	The hEvent is cleared when ReadDirectoryChanges is called.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/ole32/rpc.c,
	  dlls/winecrt0/stub.c, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Include wine/port.h in files that use exceptions.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix circular reference count in Typelib marshaler.
	The current method of handling typelib-marshaled interfaces that derive
	from IDispatch is to query for an IDispatch pointer from the proxy, but
	this causes a circular reference count.
	Fix the reference counting by loading using the IRpcProxyBuffer of
	IDispatch without an outer unknown, so that the lifetime is controlled
	by the typelib-marshaled interface's proxy. The IDispatch proxy now
	shares the same channel as the typelib-marshaled interface, so fix up
	the stub side to handle this.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Handle VT_INT in serialize_param and deserialize_param.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Release interfaces when told to.
	Make the VT_DISPATCH and VT_UNKNOWN cases of serialize_param match the
	TKIND_INTERFACE case below by releasing their respective interfaces as
	necessary.

	* dlls/ole32/compobj.c:
	ole32: Print an error message if the apartment isn't initialised in
	CoCreateInstance.

	* tools/widl/write_msft.c:
	widl: Fix some warnings caused by making attributes const.

	* dlls/msi/sql.y:
	msi: Fix bison warnings by providing precedence rules for expressions
	and by removing a redundant expression case.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Don't call IUnknown_AddRef if there is no outer unknown in
	StdProxy_Construct as it will just crash anyway.

2006-02-07  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/tests/query.c:
	setupapi: Add an initial implementation of SetupGetInfInformation.

	* dlls/setupapi/Makefile.in, dlls/setupapi/query.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupQueryInfFileInformation.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/dirid.c, dlls/setupapi/parser.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi_private.h:
	setupapi: Store the full name to the INF file in the inf_file structure
	(based on a patch by James Hawkins).

	* tools/widl/parser.y:
	widl: Remove '\n' from yyerror calls.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widltypes.h:
	widl: Make 'attrs' field of type_t const.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Remove unused 'rname' field of type_t.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Merge marshall_arguments and unmarshall_arguments into one
	function to remove the large amount of duplicated code.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Yet more const attributes.

	* tools/widl/header.c, tools/widl/widltypes.h:
	widl: More const attributes.

2006-02-07  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Fix proc format string for explicit binding handles.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Write out the correct FC type if the structure has pointers.

	* tools/widl/typegen.c:
	widl: Split pointer writing into a separate function.

	* tools/widl/parser.y:
	widl: Fix pointer detection for structures with embedded arrays.
	Pointers have priority over every other type, so move the detection to
	the top of get_struct_type.
	Fall through from the embedded array detection to the embedded
	structure handling code so that conformance, variance and pointer
	presence is inherited from the array's base type.

	* tools/widl/typegen.c:
	widl: Increment the type format string when writing the pointer
	layouts.
	Write out pointer layouts for structures.

	* tools/widl/widltypes.h:
	widl: Make all pointer fields of expr_t structure constant.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Clearly indicate that ICCVID and MSVIDC32 do not support compression.

	* dlls/msvideo/msvideo_main.c:
	msvideo: Add a codec to the compressors list only if it supports
	specified input format.
	Return a compressor handle in COMPVARS structure.

2006-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Handle data types B,R,S in C++ symbol demangling.

2006-02-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for IDirect3DVertexDeclaration9_GetDeclaration.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Reorganise the vertexdeclaration tests.
	- Split the test for getting and setting vertexdeclaration into one
	for creating the declaration and one for the actual getting and
	setting.
	- Add traces for when creating the device or vertexdeclaration fails.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Always return the number of elements in the vertex
	declaration in IWineD3DVertexDeclarationImpl_GetDeclaration9.

	* dlls/wined3d/device.c:
	wined3d: Don't set the container to the device for standalone surfaces.

	* dlls/d3d9/volume.c, dlls/wined3d/volume.c:
	wined3d/d3d9: Cleanup GetContainer for volumes.

	* dlls/d3d9/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Cleanup GetContainer for surfaces.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/quartz/regsvr.c:
	quartz: Register some of the interfaces.

2006-02-06  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/ntdll/file.c, include/config.h.in,
	  libs/port/fstatvfs.c, libs/port/statvfs.c, tools/winapi/winapi_check:
	configure: For sys/mount.h, sys/statfs.h and sys/vfs.h, always include
	them if present.

2006-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makefile.in, dlls/win32s/.gitignore, dlls/win32s/Makefile.in:
	w32skrnl: No need for an import library.

	* dlls/Makefile.in, dlls/rsabase/.gitignore, dlls/rsabase/Makefile.in:
	rsabase: No need for an import library.

2006-02-06  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blkno on those systems providing that (and
	avoid using struct mtpos which may not be present on such systems).

2006-02-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wininet/tests/internet.c:
	wininet: Fix InternetQueryOption test to pass under Windows.

2006-02-06  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select() conformance test improvements.
	Add OK tests around more function calls.
	Add two more todo_wine tests that fail.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/monthcal.c:
	comctl32: Add month calendar tests.

2006-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/progress.c, dlls/crypt32/tests/str.c,
	  dlls/oleaut32/variant.h, dlls/user/tests/menu.c:
	Assorted spelling fixes.

	* dlls/secur32/tests/main.c, dlls/winspool/tests/info.c:
	Add trailing '\n's to ok() and trace() calls.

	* dlls/security/security.spec:
	security: Fix the UnsealMessage() forward.

2006-02-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Texture fixes.
	Set video memory capabilities, add some checks to SetTexture and
	update some comments.

2006-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fixes and tests for CreateDispTypeInfo.
	CreateDispTypeInfo returns the typeinfo of a coclass which implements
	the described interface.

2006-02-06  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/internet.c:
	wininet: Add tests for InternetQueryOption.

2006-02-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/Makefile.in, dlls/mapi32/mapi32.spec,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapicode.h:
	mapi32: Implementation for MAPISendMail.
	Implement MAPISendMail, stub MAPILogoff and make the stubs for
	MAPIInitialize, MAPILogon{,Ex} and MAPILogoff return success.

2006-02-06  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: CALL should search the current PATH.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advpack/tests/files.c, dlls/cabinet/tests/extract.c,
	  dlls/comctl32/tests/comboex.c, dlls/gdi/region.c,
	  dlls/mshtml/nsembed.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrtd/debug.c, dlls/ntdll/loader.c, dlls/ntdll/tests/time.c,
	  dlls/odbc32/proxyodbc.c, dlls/quartz/tests/memallocator.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/stopwatch.c, dlls/user/tests/menu.c,
	  dlls/user/tests/text.c, dlls/wininet/tests/http.c,
	  include/msvcrt/crtdbg.h, loader/kthread.c, loader/preloader.c,
	  programs/notepad/main.c:
	Fixes for missing prototypes warnings.

	* include/winbase.h, libs/unicode/cptable.c, tools/wmc/mcy.y:
	A few fixes for pointer qualifiers (const, volatile) warnings.

2006-02-06  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/winhelp/Tr.rc, programs/winhelp/rsrc.rc:
	winhelp: Turkish translation.

	* programs/winemine/Tr.rc, programs/winemine/rsrc.rc:
	winemine: Turkish translation.

	* programs/winefile/Tr.rc, programs/winefile/rsrc.rc:
	winefile: Turkish translation.

	* programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Turkish translation.

	* programs/winecfg/Tr.rc, programs/winecfg/winecfg.rc:
	winecfg: Turkish translation.

	* programs/wcmd/Tr.rc, programs/wcmd/wcmdrc.rc:
	wcmd: Turkish translation.

	* programs/view/Tr.rc, programs/view/viewrc.rc:
	view: Turkish translation.

	* programs/uninstaller/Tr.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Turkish translation.

	* programs/taskmgr/Tr.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Turkish translation.

	* programs/start/Tr.rc, programs/start/rsrc.rc:
	start: Turkish translation.

	* programs/regedit/Tr.rc, programs/regedit/rsrc.rc:
	regedit: Turkish translation.

	* programs/progman/Tr.rc, programs/progman/rsrc.rc:
	progman: Turkish translation.

	* programs/notepad/Tr.rc, programs/notepad/rsrc.rc:
	notepad: Turkish translation.

	* programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Turkish translation.

	* programs/clock/Tr.rc, programs/clock/rsrc.rc:
	clock: Turkish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Tr.rc:
	wldap32: Turkish translation.

	* dlls/winspool/Tr.rc, dlls/winspool/winspool.rc:
	winspool: Turkish translation.

	* dlls/winmm/winmm_Tr.rc, dlls/winmm/winmm_res.rc:
	winmm: Turkish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Tr.rc:
	wininet: Turkish translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Tr.rc:
	wineps: Turkish translation.

	* dlls/user/resources/user32.rc, dlls/user/resources/user32_Tr.rc:
	user: Turkish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Tr.rc:
	shlwapi: Turkish translation.

	* dlls/shell32/shell32_Tr.rc, dlls/shell32/shres.rc:
	shell32: Turkish translation.

	* dlls/shdocvw/Tr.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Turkish translation.

	* dlls/setupapi/Tr.rc, dlls/setupapi/setupapi.rc:
	setupapi: Turkish translation.

	* dlls/serialui/Tr.rc, dlls/serialui/serialui_rc.rc:
	serialui: Turkish translation.

	* dlls/oledlg/oledlg_Tr.rc, dlls/oledlg/rsrc.rc:
	oledlg: Turkish translation.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Tr.rc:
	oleaut32: Turkish translation.

	* dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/rsrc.rc:
	msvideo: Turkish translation.

	* dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Turkish translation.

	* dlls/msrle32/msrle_Tr.rc, dlls/msrle32/rsrc.rc:
	msrle32: Turkish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Tr.rc:
	msi: Turkish translation.

	* dlls/mshtml/Tr.rc, dlls/mshtml/rsrc.rc:
	mshtml: Turkish translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Tr.rc:
	msacm: Turkish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Tr.rc:
	mpr: Turkish translation.

	* dlls/iccvid/iccvid_Tr.rc, dlls/iccvid/rsrc.rc:
	iccvid: Turkish translation.

	* dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Turkish translation.

	* dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/rsrc.rc:
	commdlg: Turkish translation.

	* dlls/comctl32/comctl_Tr.rc, dlls/comctl32/rsrc.rc:
	comctl32: Turkish translation.

	* dlls/avifil32/avifile_Tr.rc, dlls/avifil32/rsrc.rc:
	avifil32: Turkish translation.

2006-02-06  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: Add some more tests for NtNotifyChangeDirectoryFile.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Fill in NtNotifyChangeDirectoryFile's buffer with change data.

2006-02-06  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/volume.c:
	kernel: Added a test for QueryDosDeviceA.

2006-02-06  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/clock/No.rc, programs/progman/No.rc, programs/winecfg/No.rc,
	  programs/winefile/No.rc:
	Norwegian Bokmål updates.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for char transmission: IMMEDIATE_CHAR.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented COMM IOCTL for modem status: GET_MODEMSTATUS.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for serial: SET_WAIT_MASK, GET_WAIT_MASK.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL purge for serial objects.

2006-02-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Update the QueryInterface functions of IWineD3DBase subclasses.

	* dlls/wined3d/stateblock.c:
	wined3d: Update refcounts when storing references in IWineD3DStateBlockImpl_Capture.
	Move TRACEs to the top of their code blocks.

	* dlls/wined3d/device.c:
	wined3d: Release the correct vertexdeclaration in
	IWineD3DDeviceImpl_SetVertexDeclaration.

	* dlls/wined3d/device.c:
	wined3d: Also update reference counts when we're recording a stateblock.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/volume.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Fix SetContainer.
	Add/Release references to the container.
	Change the type of the container from IUnknown to IWineD3DBase.

	* dlls/wined3d/drawprim.c:
	wined3d: Downgrade a FIXME to a TRACE.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Added support for function parameters passed in registers.
	Added correct stabs parsing for function parameters in registers.
	Added a couple of helper functions to make code smaller and more
	readable.

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c, dlls/ntdll/tests/atom.c:
	kernel: Fixed regression in atom handling.
	Added proper tests (local & global functions).

2006-02-06  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMIN for paste.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Add font sizes 6 and 7 to font select dialog.

2006-02-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-06  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2006-02-05  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blksiz on systems featuring this.
	Work around using struct mtget.mt_gstat on systems lacking this.

2006-02-05  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/kernel/heap.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/signal_i386.c, dlls/winsock/socket.c,
	  libs/wine/ldt.c, libs/wine/mmap.c, server/context_i386.c:
	Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
	that is used with FreeBSD.

2006-02-05  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editstr.h, dlls/riched20/writer.c:
	riched20: Separate stream state from editor state.
	Somewhat improves thread safety.

	* dlls/riched20/editor.h, dlls/riched20/writer.c:
	riched20: Add method to stream data based on a range.

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMOUT for copy/cut.

2006-02-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer used create_flags from get_startup_info request.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Use a magic ConsoleHandle value instead of create flag to pass
	the CREATE_NEW_CONSOLE flag to the child.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Set the console flag in the parent for CREATE_NEW_PROCESS_GROUP.

	* server/change.c:
	server: Fixed compile without inotify.

2006-02-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated the Korean translation.

2006-02-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/device.c:
	d3d8: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_parameters support.

2006-02-05  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Empty undo stack after EM_STREAMIN without SFF_SELECTION flag.

2006-02-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	commdlg: Update German resource.

2006-02-05  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/tests/str.c:
	crypt32: Fix Mingw compile.

2006-02-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Fixed point sprite scaling when size < 1.0f.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSPRITEENABLE.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Fixed point sprite scaling when size < 1.0f.

2006-02-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loadorder.c:
	ntdll: Added a few helper function to simplify the loadorder code.
	Keep the application key open, it's valid for the lifetime of the
	process.

	* programs/winecfg/En.rc, programs/winecfg/libraries.c,
	  programs/winecfg/resource.h:
	winecfg: Display a warning when the user tries to change the load
	order of a system dll.

	* programs/winecfg/libraries.c:
	winecfg: Populate the dll combo box with the dlls found in the load path.

	* include/wine/library.h, libs/wine/loader.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added wine_dll_enum_load_path function to allow querying the dll path.

2006-02-04  Kasper Sandberg <redeeman@metanurb.dk>

	* dlls/shell32/shell32_Da.rc, programs/clock/Da.rc,
	  programs/notepad/Da.rc, programs/progman/Da.rc,
	  programs/winhelp/Da.rc:
	Danish language update.

2006-02-04  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/list.c, dlls/riched20/paint.c,
	  dlls/riched20/para.c, dlls/riched20/reader.c, dlls/riched20/run.c,
	  dlls/riched20/writer.c:
	riched20: Initial support for simple tables.

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/wrap.c:
	riched20: Removed an unused parameter.

	* dlls/riched20/caret.c:
	riched20: Simplified ME_InsertGraphicsFromCursor() function.

	* dlls/riched20/run.c:
	riched20: Fixed undo stack corruption.

2006-02-04  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Remove FIXME messages from some implemented functions.

	* programs/clock/En.rc, programs/clock/License_En.c,
	  programs/clock/Makefile.in, programs/clock/clock_res.h,
	  programs/clock/license.c, programs/clock/license.h,
	  programs/clock/main.c:
	Clock: Load license text from resources.

2006-02-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Do not overwrite fccType in the codec enumeration proc.

2006-02-04  Neil Skrypuch <ns03ja@brocku.ca>

	* programs/winecfg/drive.c:
	winecfg: Use already existing letter_to_index().

2006-02-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Add a break which got lost in the POINTSCALEENABLE fix.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Add architecture for generating pointer layouts.

2006-02-03  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Make FourCC codes uppercase again until we can figure out
	why lowercase doesn't work right.

2006-02-03  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: The 'string' attribute can also be used with unsigned characters.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Restrict stubless FC types to the range of the type function table.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Raise exceptions in NdrSendReceive if I_RpcSendReceive failed.

	* include/wine/rpcfc.h:
	include: Move all of the contiguous FC types together so we can see
	possible missing constants better.

	* include/rpcndr.h:
	include: Add function declarations for the Range type.

2006-02-03  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	ntdll: Add FILE_ACTION and FILE_NOTIFY_CHANGE_ defines for streams.

2006-02-03  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Fixed WINED3DRS_POINTSPRITEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Corrected implementation of WINED3DRS_POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_EDGEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_MULTISAMPLEANTIALIAS.

2006-02-03  Robert Millan <rmh@aybabtu.com>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_x86_64.c:
	ntdll: Rename i386 CPU trap codes to avoid collision with system headers.

2006-02-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Initialize a few more funcdesc members in CreateDispTypeInfo.

2006-02-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c:
	Add a check for icinfo->fccType in DRV_OPEN message handler of builtin
	video codecs.

	* tools/wine.inf:
	wine.inf: Change fcc type of builtin video codecs in system.ini to be
	equal to ICTYPE_VIDEO.

	* dlls/commdlg/filedlg.c:
	Add support for CDM_HIDECONTROL message in the file open dialog.

2006-02-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/oid.c:
	crypt32: Add stub for CryptEnumOIDInfo.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.7.

----------------------------------------------------------------
2006-02-02  Phil Lodwick <Phil.Lodwick@efi.com>

	* dlls/winsock/tests/sock.c:
	winsock/tests: Add a todo_wine test for select.

2006-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Filter more results.

2006-02-02  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/directx.c:
	wined3d: Added support for ARB_POINT_PARAMETERS.

2006-02-02  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/freetype.c:
	gdi: Slant font automatically if no italic variant exists.

2006-02-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/resource.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Remove color depth. It's source of problems for number of users.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellpath.c:
	shell32: Create $HOME targeted symbolic links during SHELL_RegisterFolders.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc:
	shell32: Move 'My Pictures', 'My Videos' and 'My Music' folders
	directly to %USERPROFILE% (instead of %USERPROFILE%\\My Documents), to
	allow for reasonable symbolic linking to $HOME based directories.

	* dlls/shell32/shellpath.c:
	shell32: Get rid of the magic MyDocuments->$HOME mapping code.

2006-02-02  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c, dlls/x11drv/init.c,
	  dlls/x11drv/x11drv.h:
	opengl: Sync a dibsection to its pixmap before drawing to it via opengl.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Some cosmetic fixes in generated code.

	* tools/widl/widl.c:
	widl: Make sure the token variables are always initialized properly.

2006-02-02  Johan Dahlin <jdahlin@async.com.br>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: RtlIpv4AddressToStringExW/RtlIpv4StringToAddressExW stubs.

2006-02-02  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: Extended pens do not work correct with StrokePath.

2006-02-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: FindFirstChangeNotification needs a static IO_STATUS_BLOCK.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Use realpath instead of canonicalize_file_name for portability
	reasons.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Add HKLM,%CurrentVersionNT%,"CurrentType".

2006-02-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/commdlg/filedlg.c:
	commdlg: File open dialog: Use the specified instance handle for
	custom dialog templates.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Added stub for ShellMessageBoxWrapW.

2006-02-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Support external providers.
	- add support for external store providers
	- rewrite registry stores as a provider
	- fix a memory leak

2006-02-02  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrW and CertNameToStrW, with tests.

2006-02-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c:
	advapi32: Add stub for ObjectDeleteAuditAlarmW.

	* dlls/oleaut32/variant.c:
	oleaut32: Prevent freeing of random memory.
	Don't assign type to variant until we're sure we are assigning a
	value.

2006-02-02  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Handle context menu.

2006-02-01  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/start/start.c:
	start.exe: build_args now returns the correct string when no parameter
	is passed.

	* dlls/x11drv/keyboard.c:
	x11drv: Added Turkish F keyboard layout.

2006-02-01  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32.spec, dlls/crypt32/str.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrA and CertNameToStrA, with tests.

2006-02-01  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h:
	riched20: Implement EM_SETOLECALLBACK.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Remove %1 from [http|htmlfile]\shell\open\command.

2006-02-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Empty string as environment is valid, with tests.

	* include/winspool.h:
	winspool.h: Add missing declarations.

2006-02-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/txtsrv.c:
	riched20: Implement CreateTextServices.
	Implement a stub interface that CreateTextServices returns.

2006-02-01  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/style.c:
	riched20: Fixed font cache corruption.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Translate pen width from logical units only for geometric pens.

	* dlls/shell32/shlexec.c:
	shell32: execute_from_key should fallback to a DDE exec only if the
	command to execute from is not found in the registry.
	Pass already found executable name to dde_connect.

2006-02-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix a SEGV when using arrays declared using a pointer and
	attributes, instead of array indices (reported by Eric Kohl).

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/.gitignore:
	setupapi: Ignore ok file for new query test.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* programs/winefile/En.rc, programs/winefile/Makefile.in,
	  programs/winefile/license.c, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Move the license and warranty text into the resources.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Changes to output for better debugability.
	Write the offset and the absolute address for referenced types.
	Write the current offset out when writing a pointer type.

	* tools/widl/typegen.c:
	widl: Clean up conformant struct handling.
	Make the writing of conformant structures take advantage of the new
	type format string offset handling.

	* tools/widl/typegen.c:
	widl: Fix the writing of arrays with size specified in the array
	expression instead of the size_is expression.

	* tools/widl/typegen.c:
	widl: Improve the current type offset passing.
	Change the functions to take the current type offset and return the
	start of the type written.

	* tools/widl/typegen.c:
	widl: The stack/structure offset in correlation descriptors should be a short.

	* tools/widl/parser.y:
	widl: Do constant folding for the sizeof operator on simple types.

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Support client/server generation for explicit_handle interfaces
	(based on a patch by Eric Kohl).

	* tools/widl/typegen.c:
	widl: Implement constant conformance.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix the type offset used in marshaling/unmarshaling.
	Make a copy of type_offset so that it only gets incremented once per
	function, instead of twice.

	* tools/widl/write_msft.c:
	widl: Implement the writing of defaultvalue constants for enum values.

	* include/winsvc.h:
	include: Add SC_ENUM_TYPE to winsvc.h.

	* dlls/stdole2.tlb/std_ole_v2.idl:
	stdole2.tlb: Remove hack due to unimplemented widl functionality.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only append '/' to base path if not already present in
	UNIXFS_get_unix_path.

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c:
	kernel: Set the overlapped structure status in ReadDirectoryChanges.

2006-01-31  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: tape.c portability fixes.
	Accept MTCOMP as an alias for MTCOMPRESSION on those systems, having
	the former, but not the latter.
	Only enable operations supported by the host OS in
	TAPE_CreatePartition() and TAPE_Prepare().

2006-01-31  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/run.c,
	  dlls/riched20/style.c:
	riched20: Added support for hidden text.

	* dlls/riched20/caret.c:
	riched20: Paint the selection while it's being extended by dragging.

2006-01-31  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: viewportExt changed after call to StrokePath.

2006-01-31  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/mapping.c, dlls/gdi/tests/mapping.c:
	gdi: Fixes for the isotropic mapping mode.
	- Isotropic mapping mode: Adjust the viewport extension in
	SetWindowExtEx, handle negative extents.
	- Support the isotropic mapping mode in the enhanced metafile driver.
	- New tests.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Use a macro to write out FC types, along with the current offset
	which is useful for debugging.

	* tools/widl/typegen.c:
	widl: Pass the current type format string offset through all type
	writing functions.

	* tools/widl/typegen.c:
	widl: Eliminate redundant callback routines.
	Add a function for comparing expressions and use it to eliminate
	redundant callback functions.

	* include/wine/rpcfc.h:
	widl: Define a value for RPC_FC_WSTRING.

2006-01-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for PixelShaders is disabled.

2006-01-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGetInfInformation.

	* include/setupapi.h:
	setupapi: Add definitions for the SetupGetInfInformation search flags.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel: Add some test cases for ReadDirectoryChangesW.

2006-01-31  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Correct X509_NAME decoding, and more stringent tests.

	* include/wincrypt.h:
	wincrypt: Fix typo.

2006-01-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/comctl32/listview.c:
	comctl32: Restore listview font on CDRF_NEWFONT.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Dump the pointer for VT_ARRAY/VT_VECTOR typed variants.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle the RPC_FC_PROC_BYVAL flag correctly in stubless
	proxies and stubs.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Only attempt to marshal an object if it is non-NULL.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only resolve the 'dosdevices' based symbol links in
	UNIXFS_get_unix_path, but leave all others alone.

2006-01-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/gdiobj.c,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c, include/gdi.h:
	gdi: Add support for creating extended pens.

2006-01-30  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/d3d8/directx.c:
	d3d8: CreateDevice should use the root of the current window.

2006-01-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Allocate space enough to handle all the possible ipv4 addresses.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/editor.c, include/textserv.h:
	riched20: Make CreateTextServices use ITextHost.

2006-01-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/message.c:
	user: Remove internal messages from the message queue before handling them.

2006-01-30  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winecfg/Es.rc:
	winecfg: Spanish translation update.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Initial inotify support.

	* dlls/kernel/tests/change.c:
	kernel: Add some more tests for FindFirstChangeNotification.

2006-01-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/user/uitools.c:
	Fixed creation of PS_ALTERNATE pens.

2006-01-30  Tobias Loew <tobi@die-loews.de>

	* dlls/comctl32/tab.c:
	comctl32: Fix tab-control flickering.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/x11drv/xrender.c:
	x11drv: Fix AlphaBlend read boundaries.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add an implementation of MsiGetDatabaseState.

2006-01-30  Juan Lang <juan@codeweavers.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing defines.

2006-01-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Remove duplicate code.

	* dlls/user/tests/msg.c:
	user/tests: Add test for low level mouse hooks.

2006-01-30  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Fill in the IRpcStubBuffer vtables for interfaces that don't
	already have them filled in.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix the order of parameters passed into DispCallFunc.

2006-01-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tape.c:
	kernel: Remove bogus breaks in tape.c

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c:
	msxml: Issue a fixme if the interface is not implemented.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add test case for creating pens, make it pass under Wine for
	cosmetic pens.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel: Partially implement ReadDirectoryChangesW using NtNotifyChangeDirectoryFile.

2006-01-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Reimplement interface enumeration.
	Implement interface enumeration based on if_nameindex, based on a
	suggestion by Michael Ost

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Fix SPI_{G|S}ETFONTSMOOTHING with tests.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/lcformat.c, dlls/kernel/profile.c, dlls/ntdll/tests/path.c,
	  dlls/ntdll/tests/reg.c, libs/wine/debug.c:
	Fix a couple of bugs spotted by valgrind.

	* dlls/ntdll/signal_i386.c, server/console.c, server/fd.c,
	  server/request.c:
	Suppress some false-positives reported by valgrind.

	* programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c:
	winedbg: Hardware breakpoints
	- implemented hardware assisted breakpoints (new 'hbreak' command
	which behaves just as 'break' command)
	- small improvements to break handling (saving hit xpoint across
	exception handling)
	- fixed 'cont N' command for watchpoints

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c, dlls/kernel/path.c, dlls/kernel/tests/file.c,
	  dlls/ntdll/file.c, dlls/ntdll/tests/change.c, server/fd.c:
	server: Make the FILE_SHARE_DELETE sharing checks depend on DELETE
	access instead of on the FILE_DELETE_ON_CLOSE flag (based on a patch
	by Mike McCormack).

	* dlls/shell32/shlfileop.c:
	shell32: Fixed a couple of FindFirstFile handle leaks.

	* dlls/oleaut32/tests/.gitignore:
	oleaut32: Ignore new test ok file.

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/tests/edit.c:
	user: Don't automatically add a bunch of styles in create_editcontrol.

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	user: Fix DrawTextExA/W on empty strings.
	DrawTextExA/W should calculate a rectangle of zero height and width in
	some cases of null or empty supplied strings. With conformance tests.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: Implement FindFirstChangeNotification with NtNotifyChangeDirectoryFile.

2006-01-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	ole: Test and implement LPSAFEARRAY marshaling.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Improve the typelib marshaler traces.
	Improve the typelib marshaler traces for lazy developers like me who
	don't want to grep for constants.

	* include/rpcndr.h:
	include: Add types and definitions for RPC user callback routines.

	* include/propidl.idl:
	include: Add new union cases for PROPVARIANT structure.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement callback conformance.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/paint.c:
	riched20: Remove a couple of no longer used functions.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/ntdll/directory.c, dlls/ntdll/tests/change.c,
	  include/wine/server_protocol.h, server/change.c, server/file.c,
	  server/file.h, server/protocol.def, server/request.h, server/trace.c:
	server: Fix the file notification interface to use directory handles.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* server/hook.c:
	server: Fixed low-level hardware hooks.
	The hook thread field has been reused for win events, so it no longer
	works for low-level hardward hooks. Use the owner field instead.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/scroll.c:
	user: Postpone resetting SCROLL_TrackingWin untill all notifications are sent.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/wineoss/audio.c:
	wineoss: Proper support in OSS driver for audio when no mixer is present.
	Fixed a couple of potential fd leaks.

2006-01-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tape.c:
	kernel: Implementation of tape functions.
	Implement CreateTapePartition, EraseTape, GetTapeParameters,
	GetTapePosition, GetTapeStatus, PrepareTape, SetTapeParameters,
	SetTapePosition and WriteTapemark.

2006-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IDispatch stub implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser's IOleCommandTarget stub implementation.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IOleCommandTarget stub implementation.

2006-01-26  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: EM_STREAMIN should send a EN_UPDATE notification.

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Selection painting fixes.

2006-01-26  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Add implementation of tape IOCTLs.

	* include/Makefile.in, include/ddk/ntddtape.h, include/winbase.h,
	  include/winnt.h:
	include: Add some defines related to tape support.

2006-01-26  Mike McCormack <mike@codeweavers.com>

	* loader/preloader.c:
	preloader: Allow compiling the preloader with -fstack-protector.

2006-01-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Don't drop owned windows in WIN_EnumChildWindows.
	Add a few tests for this.

2006-01-25  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.c:
	server: Allow opening a directory with write access (based on a patch
	by Mike McCormack).

	* include/wtypes.idl:
	wtypes: Don't specify alignment for DOUBLE and DATE on MSVC.

	* tools/wine.inf:
	wine.inf: Don't overwrite registry keys that users may want to change.

	* dlls/kernel/dosmem.c, dlls/kernel/kernel_private.h:
	kernel: Handle a failure to load winedos a bit more gracefully.

	* dlls/x11drv/bitblt.c:
	x11drv: Always set GC function to GXcopy for the BitBlt DIB optimization.

2006-01-25  Mike Frysinger <vapier@gentoo.org>

	* tools/winegcc/winegcc.c:
	winegcc: Pass -m32/-m64 along to the linker.

2006-01-25  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Duplex test fix.

2006-01-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Added TranslateUrl implementation.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Store IDocHostUIHandler interface in the WebBrowser object.

2006-01-25  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: SS_CENTERIMAGE fixes.
	- Stretch bitmaps and icons to the whole control size if
	SS_CENTERIMAGE is absent
	- Draw the background of centered bitmaps and icons with the
	background brush (like Windows XP for applications with a manifest)

	* dlls/gdi/enhmfdrv/init.c:
	gdi: Fix the EMF bounding box calculation.

2006-01-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Remove one IP address per interface restriction.
	- remove restriction of one IP address per interface
	- remove dead code, and make static functions that can be
	- update comments and copyright notice

2006-01-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tests/change.c:
	kernel: Test moving a directory that has a change notification
	registered for itself.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Detect pthread_get_stackaddr_np returning the top of the stack
	instead of the base.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml: Implement save.

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* programs/progman/En.rc, programs/progman/License_En.c,
	  programs/progman/Makefile.in, programs/progman/license.c,
	  programs/progman/license.h, programs/progman/main.c,
	  programs/progman/progman.h:
	progman: Load license from resources.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c:
	msvcrt: Make error strings static.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/progress.c,
	  dlls/dbghelp/symbol.c, dlls/kernel/comm.c,
	  dlls/msacm/winemp3/common.c, dlls/msi/dialog.c, dlls/msi/helpers.c,
	  dlls/ntdll/atom.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/tests/typelib.c, dlls/riched20/caret.c,
	  dlls/riched20/editor.c, dlls/riched20/para.c,
	  dlls/secur32/negotiate.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/urlmon/umon.c,
	  dlls/user/tests/edit.c, dlls/winmm/mci.c,
	  programs/explorer/explorer.c, tools/wmc/mcl.c, tools/wrc/wrc.c:
	Make more arrays const.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Only create links for files that don't exist.
	Make a copy instead of a link if the original file is writable.

	* server/serial.c:
	server: Use the new set_fd_user function in create_serial().

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* server/fd.c, server/file.c, server/file.h:
	server: Modify open_fd to create an fd without a user.
	Create a set_fd_user function.
	Update create_file() to use the above functions.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Get rid of the default ignored symbols list.

	* dlls/msvcrt/msvcrt.spec, dlls/ntdll/ntdll.spec, dlls/ntdll/string.c:
	ntdll: memcpy should behave like memmove in ntdll too.

	* dlls/ntdll/ntdll.spec:
	ntdll: Mark all libc-style functions as private to make sure we link
	to the real libc functions instead.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h, dlls/user/combo.c,
	  dlls/winedos/int21.c, include/winternl.h, programs/winedbg/winedbg.c:
	Avoid importing _strlwr/_strupr from ntdll.

	* dlls/msvcrt/console.c, dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/wcs.c:
	msvcrt: Use the msvcrt version of printf everywhere.

2006-01-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Clean up memory allocation.
	- pass heap to allocate from directly to helper functions, instead of
	unnecessarily copying returned data
	- use public types rather than internal ones
	- make sure GetBestRoute doesn't return bogus matches

2006-01-24  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate type format strings for conformant varying arrays.

	* tools/widl/parser.y:
	widl: Fix detection of varying arrays.
	Correctly identify structures containing varying arrays as conformant
	varying structures.

	* tools/widl/parser.y:
	widl: Fix detection of conformant varying structs.
	Rename has_conformant_array to has_conformance, add a new variable
	has_variance and map has_conformant_string to has_conformance and
	has_variance.
	A conformant varying struct should be returned if just variance is
	present and even if no pointers are present.

	* tools/widl/typegen.c:
	widl: Support generation of conformant structure type strings.

	* tools/widl/typegen.c:
	widl: Conformant arrays have a size of 0.
	Conformant arrays should cause a size of 0 to be returned from
	type_memsize.

	* tools/widl/typegen.c:
	widl: Support correlation descriptors in structures.

	* tools/widl/parser.y:
	widl: Error if an array is in the middle of a structure.
	Fix detection of conformant arrays and output an error if the array
	isn't at the end of the structure.

	* tools/widl/header.h, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Fix the detection of conformant and pointer structs.

	* tools/widl/typegen.c:
	widl: Simple structs and complex pointers.
	Write out type format string for simple structs and for pointers to
	non-simple types.

	* tools/widl/typegen.c:
	widl: Add framework for generating struct and union type format strings.

	* tools/widl/typegen.c:
	widl: Support different types of simple pointers.
	Support pointer types in unmarshall_arguments.

	* tools/widl/typegen.c:
	widl: Generate NdrNonConformatString* calls for non-conformant string types.

	* tools/widl/typegen.c:
	widl: Add functions for detecting array and string types.
	Add functions for detecting array and string types and use these in
	both writing type format strings and when marshalling and
	unmarshalling parameters.

	* tools/widl/typegen.c:
	widl: Support some more complicated conformance / variance expressions.

	* include/wine/rpcfc.h:
	widl: Added some more constants for conformance descriptors.

	* tools/widl/typegen.c:
	widl: Start implementing writing of conformance/variance descriptors.

	* include/wine/rpcfc.h, tools/widl/typegen.c:
	widl: Strings.
	Write out type format strings for string types.

	* tools/widl/typegen.c:
	widl: Arrays.
	Write out type format strings for arrays, except for the missing
	generic functionality of conformance and variance descriptors.

	* tools/widl/typegen.c:
	widl: Simplify write_typeformatstring_type.
	Simplify handling of types in write_typeformatstring_type by only
	writing non-pointer types out when ptr_level is 0. Add stubs for
	functions that will write out the type format string for strings and
	arrays.

	* tools/widl/typegen.c:
	widl: Don't use recursion for write_typeformatstring_type.
	Since a var_t can now be passed in, rename to
	write_typeformatstring_var. Simplifies the code.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Don't use recursion to implement write_procformatstring_type.
	Renamed to write_procformatstring_var now since we can pass a var_t in
	again. This results in simpler code.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fail more gracefully when loading a builtin exe didn't work.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Make listview use standard wine_dbg_sprintf and wine_dbgstr_xxx.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Fixes to preempt freetype 2.2.0.

2006-01-24  Jacek Caban <jacek@codeweavers.com>

	* include/Makefile.in, include/mshtmcid.h, include/mshtml.idl:
	Added mshtmcid.h.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi: Use correct include file for FT_Get_Module.

2006-01-23  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/user32.spec, dlls/user/win.c:
	user32: Added stub for UpdateLayeredWindow.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Properly implemented strerror and perror (based on a patch by
	Uwe Bonnes).

	* dlls/msvcrt/data.c, dlls/msvcrt/errno.c:
	msvcrt: Added _sys_errlist (based on a patch by Uwe Bonnes).

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c,
	  include/msvcrt/errno.h:
	msvcrt: Added EILSEQ definition.

2006-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c:
	msvcrt: Stub implementation for wcsftime.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* BUGS:
	Remove useless BUGS file.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Move the firing of control events to MSI_ProcessMessage.
	Move the firing of control events from internal helper functions to
	MSI_ProcessMessage so that custom actions can all cause control events
	to be fired.
	Added the firing of progress events.

	* dlls/msi/action.c, dlls/msi/files.c:
	msi: Call ui_actiondata for more actions.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c:
	advpack/tests: Fixed failure when "ProgramFilesDir" is != "C:\Program Files".

2006-01-23  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winearts: Try to keep winecfg from crashing by recovering from an arts
	library crash.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c, server/timer.c:
	Fixed a couple of warnings on MacOS.

	* dlls/dbghelp/stabs.c, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Use Win32 types instead of long long.

	* server/trace.c, tools/make_requests:
	server: More generic mechanism for adding typecasts in server traces.
	Added casts for size_t values.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/ntdll.spec:
	ntdll: Forward ZwNotifyChangeDirectoryFile to NtNotifyChangeDirectoryFile.

2006-01-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Return better values in module information.
	- 32/64: number of symbols is now correct
	- 64: the 64 bit extra fields are now initialized with some non null
	yet sensible value

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  include/dbghelp.h:
	dbghelp: Brought dbghelp.h a bit closer to PSDK definitions.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: SymSetContext should return FALSE when setting twice the same
	frame context.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Live targets.
	In SymInitialize, now trying to check if the hProcess is a real live
	target or not. If we think it is, try to grasp ELF information from
	it.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Started implementation of the global callback mechanism.

	* dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Symbol info.
	- better coding for SYMBOL_INFO filling
	- some fixes on some fields (parameters)
	- now using the max size for symbol info

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/expr.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a more decent scheme for handling segmented addresses.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/ldt.c:
	libwine: Added LDT support for MacOS/x86.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Make GetMenuItemInfo tests pass under Wine.
	- Change menu item search algorithm to recurse into a submenu first.
	- Fallback to a found submenu if nothing else was found.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Support msidbControlAttributesSunken.

	* dlls/msi/dialog.c:
	msi: Only print fixme for progress attribute once.
	Since setting the Progress attribute is done quite frequently, don't
	flood the user with messages about it being unimplemented.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stub implementations of some crypto functions used by IE6 install.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Always import atof, the MS version is different.

2006-01-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: For render states D3DRS_POINTSPRITEENABLE and
	D3DRS_MULTISAMPLEANTIALIAS, use GL_SUPPORT correctly.

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Add GL_ARB_multisample definitions.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_sprite support.

2006-01-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/scroll.c:
	user: Add missing WIN_ReleasePtr.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/avifile_private.h, dlls/msvideo/msvideo_main.c,
	  include/vfw.h:
	ICCompressorChoose should initialize fccType and fccHandler fields
	for the full frames case as well.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/atom.c:
	kernel/tests: Integer atoms return different results on WinNT 3.51.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32.spec:
	shell32: Export DllGetClassObject by ordinal as grpconv.exe requires it.

2006-01-23  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Added DeleteSecurityContext.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss German keyboard layout to better match the X11 one.

2006-01-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlfileop.c, dlls/shell32/tests/shlfileop.c:
	shell32: Reimplement a factored SHFileOperation.

2006-01-21  Marcus Meissner <meissner@suse.de>

	* tools/winebuild/build.h, tools/winebuild/relay.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Output a .note.GNU-stack section to allow nonexecutable stack.

2006-01-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Metafile records must be at least 3 words long.

2006-01-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Preserve all registers in call_ebp_func.

2006-01-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Return FALSE if Mozilla ActiveX Control could not be found.

2006-01-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for RebootCheckOnInstall.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for AddDelBackupEntry.

	* dlls/advpack/advpack.c:
	advpack: Complete the documentation for CloseINFEngine.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for SetPerUserSecValues.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for FileSaveMarkNotExist.

	* dlls/advpack/files.c:
	advpack: Forward FileSaveMarkNotExist to AddDelBackupEntry.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for the user stub wrapper functions.

	* dlls/advpack/files.c:
	advpack: Implement DelNodeRunDLL32.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c:
	advpack: Implement IsNTAdmin.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shlfolder.c:
	shell: Fix incorrect usage of the return value of StrRetToStrNW.

2006-01-20  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/Makefile.in, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT work.
	Beginning of framework to implement handling of InternetQueryOption
	for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove the -mpreferred-stack-boundary option, this breaks MacOS.

	* tools/winebuild/build.h, tools/winebuild/relay.c:
	winebuild: Moved offset definitions to relay.c since they are only
	needed there.
	Hardcoded a couple of TEB offsets to support cross-compilation.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: ProgIDFromCLSID sets progid to NULL on failure.

2006-01-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Prevent NULL dereference in SelectionRequest handling.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stubbed NtSetSystemInformation.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, include/thread.h,
	  tools/winebuild/relay.c:
	ntdll: Move the %gs register to the ntdll_thread_regs structure.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c:
	ntdll: Move the TEB register to the ntdll_thread_regs structure.

2006-01-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Remove redundant comments and fix typos.

2006-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/resource.c:
	user/tests: Added \n to a few ok() calls.

2006-01-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole: Verify that the proxy is being used in the correct thread.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h:
	rpc: Replace the hack that detected stubless proxies with the correct check.
	Pass in the ProxyInfo and Index to StdProxy_Construct instead of just
	the three members of the structure that were previously needed.
	Fix the detection of stubless proxies.

	* dlls/rpcrt4/ndr_marshall.c:
	rpc: Skip over the right number of bytes in new correlation descriptors.
	Skip over 6 bytes of the format descriptor if new correlation
	descriptors are being used, instead of 4.

	* dlls/ole32/tests/marshal.c:
	ole: Add a test for WM_QUIT behaviour during COM calls.

	* dlls/ole32/compobj.c:
	ole: Fix WM_QUIT Handling in CoWaitForMultipleHandles.
	When a WM_QUIT message in encountered in CoWaitForMultipleHandles then
	it should repost the WM_QUIT message and then switch to waiting
	without checking messages.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix a few TRACEs in pixelshader.c.

	* dlls/wined3d/device.c:
	wined3d: Return the correct pixelshader in
	IWineD3DDeviceImpl_GetPixelShader.

	* dlls/wined3d/drawprim.c:
	wined3d: A shader isn't guaranteed to have a vertex declaration, so
	add a NULL check for that.

2006-01-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added GetWindow implementation.

2006-01-19  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.6.

----------------------------------------------------------------
2006-01-19  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms: Check an appropriate registry key.

2006-01-19  Ken Thomases <ken@codeweavers.com>

	* dlls/user/win.c, dlls/user/winproc.c:
	user: Fixed the lifetime of MDICREATESTRUCT variables.

2006-01-19  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shellpath.c:
	shell32: Update shellpaths My Pictures, My Video, My Music to be under
	$HOME, with a number of fallbacks.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Added GL_ARB_point_sprite definition.

	* dlls/wined3d/directx.c:
	wined3d: Better version string parsing for VENDOR_NVIDIA in
	IWineD3DImpl_FillGLCaps.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winemine/dialog.c, programs/winemine/main.c:
	winmine: Use WIN32_LEAN_AND_MEAN.

2006-01-19  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/node.c, dlls/msxml3/text.c:
	msxml: Text node implementation.

2006-01-19  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/tests/menu.c:
	user: Tests for when the menu is incorrect because of duplication of a
	menu id and an hMenu.

2006-01-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Add support for another Canadian French keyboard flavour.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: In IWineD3DImpl_FillGLCaps use glGetString instead of
	glXGetClientString to retrieve the OpenGL vendor.

2006-01-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/instr.c:
	kernel: Remove calls to Nt[Get|Set]ThreadContext.
	It's done in exception handler now.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Makefile.in, programs/winecfg/audio.c,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/properties.c, programs/winecfg/properties.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Tidy up included headers.
	Get rid of the barely used properties.c.

2006-01-18  Hans Leidekker <hans@it.vu.nl>

	* tools/winedump/output.c:
	winedump: Fix compilation of generated source.
	Include config.h in the .c file, not in the .h file.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Cleaned up the ioctl functions.
	Renamed function parameters to something usable.
	Fixed potential event leaks.

2006-01-18  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/license.c, programs/regsvr32/regsvr32.c,
	  programs/winebrowser/main.c, programs/winhelp/callback.c,
	  programs/winhelp/macro.c:
	programs: Use WIN32_LEAN_AND_MEAN.

2006-01-18  Sasha Slijepcevic <sascha93101@yahoo.com>

	* dlls/msvcrt/file.c:
	msvcrt: In _tempnam, if TMP is set, it has a precedence over the
	parameter dir.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Implement get_nodeTypedValue.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/loader.c:
	ntdll: Loader optimization.
	Optimize for the case where a DLL with no path is requested and it is
	already loaded.

2006-01-18  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Add critical section names for debugging.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/metafile.c:
	gdi: Ignore a few more metafile escapes.

2006-01-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Deactivate document in SetClientSite if ClientSite is NULL.
	Fix ref counting.

2006-01-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Printing environment support for GetPrinterDriverDirectory.

2006-01-18  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd() support for ACM_DRIVERADDF_FUNCTION, implemented
	local drivers.

	* dlls/msacm/driver.c, dlls/msacm/stream.c:
	msacm: reroute all SendDriverMessage() calls to MSACM_Message.

	* dlls/msacm/driver.c:
	msacm: acmDriverMessage() with proper support for DRV_CONFIGURE.
	Allocate and supply a DRVCONFIGINFO structure for DRV_CONFIGURE when
	application does not supply one.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd[AW] support for ACM_DRIVERADDF_NOTIFYHWND.
	Broadcast notifications are fleshed out and are now fully functional.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	MSACM: acmDriverAddW skeleton, implementation of ACM_DRIVERADDF_NAME.
	- Rework acmDriverAddA to call acmDriverAddW.
	- Implement stub for acmDriverAddW with switch for the 3 known cases
	of driver add.
	- Implementation for case ACM_DRIVERADDF_NAME, which loads driver name
	& alias from registry (similar to msacm32 load).

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: Implement acmDriverPriority with driver priority/enabled saving.
	Foundation for notification broadcasts with support for deferred
	notification.

	* dlls/msacm/internal.c:
	msacm: Implement honouring of driver priority and enabled status at
	load time.

2006-01-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add missing SysFreeString to the Var{Mul,Add,Cmp} tests.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut: Merge the VarCmp tests from vartype.c into vartest.c.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear the newly allocated memory used for complex arrays and structs.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix the sending of >5800 byte messages by only adding offset
	to the buffer after the first batch of data has been written to the
	pipe.

	* dlls/ole32/compobj.c:
	ole: Update the COM todo list.

	* dlls/ole32/ole2.c:
	ole: Re-post the quit message outside of the DoDragDrop message loop.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Reduce an ERR down to a WARN since a NULL interface pointer
	doesn't signify an error; it is just unusual.

	* programs/notepad/Zh.rc:
	notepad: Add a Font menu item for the Chinese locale.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/attribute.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Add attribute node implementation.

2006-01-17  Marcus Meissner <meissner@suse.de>

	* dlls/msvcrt/dir.c:
	msvcrt:	_makepath(): operate on target buffer directly.

2006-01-17  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Primary buffer size change tests.
	It looks like Windows doesn't change the primary buffer length when
	changing formats so make the tests fail now.
	This means the current ALSA implementation is broken when hardware
	acceleration is set to full and the primary buffer format is changed.

	* dlls/dsound/tests/.gitignore, dlls/dsound/tests/Makefile.in,
	  dlls/dsound/tests/duplex.c:
	dsound: Add full duplex tests.

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	dsound: Add full duplex support.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Convert IDirectSoundImpl from a COM class to a regular class
	and move most of the COM functions to the DirectSoundDevice class.

2006-01-17  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: Immediately repaint the control.

	* dlls/user/static.c:
	static control: Separate WM_NCCREATE and WM_SETTEXT.
	- Separate WM_NCCREATE and WM_SETTEXT.
	- WM_SETTEXT and WM_SETFONT are ignored for static controls that don't
	display text.
	- WM_SETTEXT must not be used to change the icon/bitmap/metafile.
	- Immediately repaint the control on all occasions.

	* dlls/user/static.c:
	static control: Don't load OEM bitmaps.

	* dlls/user/static.c:
	static control: STN_ENABLE and STN_DISABLE notifications.

	* dlls/user/static.c:
	static control: Better STM_GETIMAGE.
	STM_GETIMAGE returns NULL if the given image type doesn't match the
	control's style.

	* dlls/user/static.c:
	static control: Support SS_REALSIZEIMAGE.
	- Support SS_REALSIZEIMAGE (this flag means "it's not necessary to
	load icons in the default icon size").
	- SS_ICON: Ability to display cursors.

	* dlls/user/static.c:
	static control: Support SS_REALSIZECONTROL.
	- Support SS_REALSIZECONTROL (this flag means "don't resize the
	control to the size of the bitmap/icon").
	- Always call GlobalUnlock16 after GlobalLock16.

	* dlls/user/static.c:
	static control: Background of enhanced metafiles.
	- Always paint the background of static controls displaying enhanced
	metafiles.
	- Also paint the background if there's no metafile to display.

	* dlls/user/static.c:
	static control: Support text style flags.
	- Support DT_END_ELLIPSIS, DT_PATH_ELLIPSIS and DT_WORD_ELLIPSIS.
	- Paint simple text without prefixes (SS_SIMPLE | SS_NOPREFIX) with
	the ExtTextOut function like the native control does.
	- Gray text color: Only for non-simple static controls.

2006-01-17  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/tests/msacm.c:
	msacm: Add parameter tests for ACM_METRIC_DRIVER_PRIORITY and
	ACM_METRIC_DRIVER_SUPPORT.
	Fix copy&paste mislabeling on acmDriverID test failure.

	* dlls/msacm/msacm32_main.c:
	msacm: Fix acmMetrics(ACM_METRIC_DRIVER_PRIORITY) return on error.

	* dlls/msacm/msacm32_main.c:
	msacm: Add support for ACM_METRIC_DRIVER_SUPPORT.

2006-01-17  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c:
	shell32: Support for CLSID_ShellFSFolder in unixfs.

2006-01-17  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Render state additions.
	Implemented D3DRS_EDGEANTIALIAS.
	Implemented D3DRS_POINTSPRITEENABLE.
	Implemented D3DRS_MULTISAMPLEANTIALIAS.

2006-01-17  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Create a common WineD3D base class, IWineD3DBase.

2006-01-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/reg.c:
	shlwapi: Fixed use of wrong buffer in SHCopyKeyW.

2006-01-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Report a few more errors.
	Use Heap[Alloc|Free] instead of malloc|free.

2006-01-17  Robert Shearman <rob@codeweavers.com>

	* dlls/user/message.c, dlls/user/tests/msg.c,
	  include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/request.h, server/trace.c:
	user: Fix WM_QUIT message ordering from PostQuitMessage.
	Added a new server call as PostQuitMessage should set a flag in the
	message queue to return the WM_QUIT message when there are no other
	pending messages, rather than posting a message to the thread queue as
	it does at the moment.

2006-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/change.c:
	ntdll: Add a test for NtNotifyChangeDirectoryFile.

	* server/fd.c:
	server: Make sure to release the fd we grabbed in all cases.

	* dlls/kernel/kernel32.spec, dlls/kernel/sync.c, include/winbase.h:
	kernel32: Create a stub implementation for PostQueuedCompletionStatus.

	* dlls/ntdll/reg.c:
	ntdll: Use FILE_OPEN instead of OPEN_EXISTING when calling NtCreateFile.

2006-01-16  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Tests for the VarCmp reimplementation.

	* dlls/oleaut32/variant.c:
	oleaut32: Reimplement VarCmp().
	- Supports now all WinXP allowed combinations of input variants.
	- VT_RESERVED on input variants is handled now.
	- Removed complicated VT_DATE comparision; that's not how Windows does it.
	- Improved documentation.

	* dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Define missing but useful VTBIT_* macros.

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_fs.c:
	shell: GetDetailsOf fix.
	Initialise hr and psd->str.uType before the call to
	IShellFolder_GetDisplayNameOf so that whatever it returns is
	preserved.

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c:
	shell: Convert the filesystem shell folder to Unicode.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/shlfolder.c:
	shell: Convert SHELL32_GetDisplayNameOfChild to unicode.

2006-01-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c:
	msacm: Fix incorrect linked list traversing leading to memory/driver
	instance leak.

2006-01-16  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/regsvr32/regsvr32.c:
	regsvr32 understands '-' and '/' for arguments.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/file16.c:
	kernel32: Move FileCDR16 in with the other 16bit file functions.

	* include/winbase.h:
	kernel32: Declare BindIoCompletionCallback().

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Handle a non-byref variant being passed for a byref param in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Only allocate memory once for each array needed for the
	arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Simplify missing argument handling in ITypeInfo::Invoke.
	Simplify missing argument handling by pre-allocating an array of the
	maximum number of missing arguments there could be.

2006-01-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Fix for get_nodeValue on attributes.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement setAttribute.

2006-01-16  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Collect some data during profile enumeration.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/virtual.c:
	kernel: Documentation cleanups.

2006-01-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	user: Avoid buffer overflow in sysparams.c.
	Increase buffer size to 12 for getting and setting integer parameters
	from/to the registry.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* programs/control/control.c, programs/eject/eject.c,
	  programs/expand/expand.c, programs/hh/main.c,
	  programs/msiexec/msiexec.c, programs/progman/dialog.c,
	  programs/progman/group.c, programs/progman/grpfile.c,
	  programs/progman/program.c, programs/progman/string.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/winecfg/appdefaults.c, programs/winecfg/libraries.c,
	  programs/winecfg/properties.c, programs/winepath/winepath.c:
	programs: Use WIN32_LEAN_AND_MEAN in some more places.

	* programs/wineboot/wineboot.c:
	wineboot: Use WIN32_LEAN_AND_MEAN.
	Use HeapAlloc/HeapFree instead of malloc/free.

	* include/winbase.h:
	kernel32: Define SCS_64BIT_BINARY.

	* dlls/ntdll/exception.c:
	ntdll: Use the NTAPI definition of EXCEPTION_ACCESS_VIOLATION.

	* dlls/ntdll/directory.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stub implementation of NtNotifyChangeDirectoryFile.

2006-01-16  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Make dumpCooperativeLevel global.
	Remove extern from some function prototypes.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Make some capture functions global.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* tools/make_ctests.c:
	make_ctests: Declare WIN32_LEAN_AND_MEAN when compiling testlist.c.

	* include/winnt.h:
	kernel32: Add FILE_NOTIFY_INFORMATION.

	* dlls/msi/action.c:
	msi: Eliminate a fixed length buffer.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c:
	gdi: better implementation for GetCharABCWidthsFloat{A,W}.

2006-01-16  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h:
	ddraw: Better simulate what 'GetVerticalBlankStatus' does on real hardware.

2006-01-16  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	unixfs: Fix SetNameOf.
	Ensure that pidls passed to SHNotify are absolute SetNameOf should
	fail on absolute path names.
	Some tests to show this.

2006-01-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Add const attribute to iterators in get functions.

	* dlls/oleaut32/typelib.c:
	oleaut: Initialise more fields in CreateDispTypeInfo.
	Don't leave some of the fields of the TLBFuncDesc structure
	uninitialised in CreateDispTypeInfo.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Support VT_CY in the typelib marshaller.

	* dlls/ole32/rpc.c:
	ole: Optimisation for COM Calls.
	Add an optimisation to yield and try to allow the RPC to run before
	waiting for messages and RPCs to arrive.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Forward functions to ntdll instead of libc where possible.

	* dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c:
	msvcrt: Added wrappers for a few functions instead of linking them
	directly to libc.

	* dlls/msvcrt/math.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Set errno in the standard math functions too, not only in the
	_CI* variants.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Make snprintf and snwprintf use the msvcrt version of printf.
	Remove todos from tests that succeed now.

	* dlls/msvcrt/misc.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c:
	msvcrt: Reimplement rand() and srand() to use per-thread data for the
	random seed.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Make strtok and wcstok thread-safe by using the per-thread data.

	* configure, configure.ac, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c, include/config.h.in:
	msvcrt: Implemented asctime, ctime and strftime instead of using the libc ones.
	Make the code thread-safe by using asctime_r if available.

2006-01-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Fix ParseDisplayName.
	Build an absolute pidl to query attributes in
	UnixFolder::ParseDisplayName.

2006-01-14  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c:
	advpack: Remove stub status from implemented functions.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for CloseINFEngine, OpenINFEngine, and
	TranslateInfStringEx.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c, include/advpub.h:
	advpack: Add a stub for AddDelBackupEntry.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* include/wine/port.h, loader/kthread.c:
	Get rid of the no longer needed DECL_GLOBAL_CONSTRUCTOR macro.

	* dlls/kernel/tests/file.c:
	kernel: Make sure the file contains data for the ReadFile test.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fixed asm syntax for rep; movsl.

2006-01-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h:
	dsound: Rename some functions, make some functions global, and move
	some code around.

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c:
	dsound: Add DSOUND_PrimarySetFormat and use it to set primary format.

2006-01-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_main.c:
	shell32: Fix cut & paste error.

2006-01-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add cabinet tests.

2006-01-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getAttribute.

2006-01-14  Aric Stewart <aric@codeweavers.com>

	* programs/explorer/explorer.c:
	explorer: Handle /select arguments correctly with the new winefile
	modifications.

2006-01-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c:
	mshtml: Better handling of IDocHostUIHandler in SetClientSite.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/krnl386.exe.spec,
	  dlls/kernel/ne_module.c:
	kernel: Reimplemented the MapHInst functions in assembly.

	* dlls/kernel/kernel32.spec, dlls/kernel/selector.c:
	kernel: Reimplemented the SMap/SUnmap functions in assembly.

2006-01-13  David Moore <davidm@sjsoft.com>

	* dlls/gdi/freetype.c:
	gdi: Fix display of fonts using Symbol codepages and assorted other
	codepages.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Move file related functions to files.c.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.spec,
	  dlls/advpack/files.c, include/advpub.h:
	advpack: Add stubs for the file save/restore functions.

	* dlls/advpack/advpack.c:
	advpack: Only output a FIXME if flags are set.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix some wine_todo for GetStandardColorSpaceProfile().

	* dlls/mscms/tests/profile.c:
	mscms: Make two checks more strict in the case of success.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Add debug registers to the context of all exceptions.
	Maintain a local cache of the debug registers to avoid server calls
	where possible.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/files.c:
	advpack: Add initial tests for AdvInstallFile.

	* dlls/advpack/advpack.c:
	advpack: Implement AdvInstallFile.

2006-01-13  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Select word on double click.

	* dlls/riched20/editor.c:
	riched20: TODO list update.

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Fixed some selection painting bugs.

2006-01-13  Jeremy White <jwhite@codeweavers.com>

	* dlls/msi/package.c:
	msi: gcc 2.95 compatibility fix.

	* dlls/crypt32/tests/encode.c:
	crypt32: Preserve gcc 2.95 compatibility.

2006-01-13  Alex Villacís Lasso <a_villacis@palosanto.com>

	* include/msacm.h:
	msacm: Add definition for ACM_DRIVERADDF_NAME.

2006-01-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle NULL lpBuffersIn in HttpSendRequestExW.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Make enumerating more verbose.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Round PE header size to a page boundary for size checks.

2006-01-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, include/Makefile.in,
	  include/ddk/ntddser.h:
	ntdll: Created infrastructure to support IOCTL for serial devices.
	- created infrastructure in ntdll to support IOCTL for serial devices
	- implemented IOCTLs in ntdll for serial break support
	- implemented the kernel32 equivalent on top of those IOCTLs

2006-01-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/nt.c, include/winternl.h:
	ntdll: NtQueryInformationToken change parameters according to PSDK.
	Check for NULL pointer.

2006-01-12  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	shell32: Fix directory execution.
	Only use the Folder class handler if we're actually executing a
	folder.

2006-01-12  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExecuteCab.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c, include/advpub.h:
	advpack: Add stubs for the remaining registry functions.

	* dlls/cabinet/Makefile.in, dlls/cabinet/cabextract.c,
	  dlls/cabinet/cabinet.h, dlls/cabinet/fdi.c:
	cabinet: Move the remaining cabextract.c functions to fdi.c.

2006-01-12  Stefan Brüns <stefan.bruens@rwth-aachen.de>

	* dlls/commdlg/filedlg.c, dlls/commdlg/filedlgbrowser.c:
	commdlg: Makes return value of FILEDLG95_SendFileOK dependent of
	return value, not of DWL_MSGRESULT.

2006-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Skip tests if NtCurrentTeb doesn't exist.

2006-01-12  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/debughlp.c:
	shell32: MSVC compatibility fix in dump_pidl_hex().

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel32: Fix GlobalReAlloc for size = 0.
	GlobalReAlloc should return NULL if the requested size is 0, the block
	is moveable and it is locked, but otherwise it should return the
	original memory block.

2006-01-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/string.c:
	riched20: Initial support for word break callback procedures.

	* dlls/riched20/paint.c:
	riched20: Removed a useless check in painting code.

2006-01-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If the last param of GetKerningPairs is NULL then return the
	number of pairs.

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell: Fix view window Z order.
	After creating the Shell View window we should call SetWindowPos to
	move the window on top of other child windows in the parent window.
	Also delay the showing of the window so that we can do more
	initialisation after window creation without it causing visual
	artifacts.

	* dlls/oleaut32/typelib.c:
	oleaut: Support conversion of VT_SAFEARRAY into VT_ARRAY|type.
	Typelib variant types that cannot be converted should return
	DISP_E_BADVARTYPE.
	Don't call DispCallFunc if conversion of one of the arguments failed.

	* dlls/ole32/rpc.c:
	ole: Fix crash in RpcChannelBuffer_SendReceive.
	Initialise apt to NULL since ipid_to_apt_stubbuffer no longer does
	this for us.

	* dlls/ole32/tests/marshal.c:
	ole: Use strict prototypes for some test functions.

2006-01-12  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Null ID can make GetStandardColorSpaceProfile*() succeed.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlCanonicalize: fix URL_DONT_SIMPLIFY.
	- URL_DONT_SIMPLIFY should change '/' <-> '\'
	- Better '/' / '\' handling

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement createNode, appendChild and insertAfter.

2006-01-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	winecfg: Simplify code a bit.
	Enable apply button when needed and don't enable when nothing
	changed.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/.gitignore, dlls/msi/Makefile.in, dlls/msi/dialog.c,
	  dlls/msi/msi.rc:
	msi: Make the MSI SelectionTree control do something useful.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Don't round up the header size for image mappings.

	* dlls/ntdll/virtual.c:
	ntdll: Round up the mapping size in map_file_into_view when setting
	the protection bytes.

2006-01-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32: Fix a test that fails on Windows.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/urlmon_main.c:
	urlmon: Reimplement CoInternetCombineUrl to use pluggable protocol.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetCombineUrl in URLMonikerImpl_Construct.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/dir.c:
	msvcrt: Modify dir test to create its own directory to ensure the
	directory exists for the test. Using the temp dir as the root.

2006-01-11  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/list.c:
	riched20: Added \n to trace output.

2006-01-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke stack overwrite fix.
	Have enough stack space up to even VT_VARIANTs, fixes a stack
	corruption.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Fix for selectNodes when the node has no children.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/cabextract.c:
	cabinet: Remove no longer used code from cabextract.c.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/context_i386.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Handle NtSetContextThread on the client side (as far as
	possible) when setting the context of the current thread.

2006-01-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/classes.c, dlls/shell32/folders.c,
	  dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	shell32: Fix folder icon index when read from registry.
	Change "DWORD dwNr" into "int icon_idx" at several places.

2006-01-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Ensure that copy_format() will not write past end of
	referenced WAVEFORMATPCMEX structure.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* programs/winefile/winefile.c:
	winefile: Highlight the file specified on the command line instead of
	filtering based on it. To be integrated with explorer to allow for
	that functionality.

2006-01-11  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/thread.c, dlls/ntdll/thread.c:
	ntdll: Implemented ntdll.NtSetInformationThread(ThreadAffinityMask).
	Reimplemented kernel32.SetThreadAffinityMask on top of it.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/files.c:
	advpack: Implement ExtractFiles.

	* dlls/cabinet/fdi.c:
	cabinet: Add documentation for FDITruncateCabinet.

2006-01-11  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add primary buffer change tests.
	Add tests to figure out whether Windows can change the primary buffer
	capabilities after setting the buffer format. Based on a patch by Alex
	Villacís Lasso.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Remove the font when setting a control's text.

2006-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/tests/progress.c:
	comctl32: Test the painting behaviour of the progress bar control.
	Test the painting behaviour of the progress bar control when the
	PBM_SETPOS message is sent to it, with respect to whether the
	background is erased and what part of the control is redrawn.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/progress.c:
	comctl32: Invalidate the entire progress bar any time it changes.

2006-01-11  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Set the last error code to an unusual value.

2006-01-11  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	commdlg: If provided use and update hDevMode in the PAGESETUPDLG struct.
	Update the dmDefaultSourcea return value inside hDevMode.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl: Use indirect contexts if the surface is a pixmap.

2006-01-11  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Report the EnumResourceNamesW() and failure to find an icon
	separately so traces are less misleading.

2006-01-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole: Implement IEnumSTATDATA for the Ole Advise Holder.
	Implement IEnumSTATDATA for the Ole Advise Holder and use it to
	implement the Send* functions.

	* dlls/ole32/marshal.c:
	ole: Initialise hrref so as not to display garbage in the trace.

	* dlls/ole32/defaulthandler.c:
	ole: Remove some duplicated code.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Report commands in HtmlHelp that are not handled at all.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	riched20: Reduced screen flicker by using proper update region invalidation.

2006-01-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c:
	kernel: Remove no longer used debug channel.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c:
	ole: Defer apartment window creation until the first object is marshalled.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Add an accessor function for an apartment's window.

	* dlls/ole32/rpc.c:
	ole: Report and clean up after PostMessage failures.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole: Pass a channel into IRpcStubBuffer::Invoke.
	Create a server channel and store this in the ifstub.
	Rename ipid_to_apt_and_stubbuffer to ipid_get_dispatch_params and make
	the function return an HRESULT.
	Return the channel for the ifstub in ipid_get_dispatch_params.

	* dlls/ole32/rpc.c:
	ole: Reduce the access rights required by start_local_service.

	* dlls/ole32/rpc.c:
	ole: Return the last error if we couldn't open the requested service.
	Fix the ok/failed message.

2006-01-10  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/files.c:
	advpack: Add initial tests for ExtractFiles.
	- Use FCI to create a test cabinet file.
	- Add initial tests for ExtractFiles.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_misc.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Remove the unused RPCRT4_GetPSFactory function.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Don't release the interface pointer on failure.
	Don't release the interface pointer on failure since we are not the
	ones that allocated it. It is the caller's responsability to call
	NdrInterfacePointerFree, where the freeing is supposed to happen.

	* dlls/kernel/heap.c:
	kernel32: Return an error when unlocking a global with a zero lock count.
	Rename GLOBAL_LOCK_MAX to the public GMEM_LOCKCOUNT.

2006-01-10  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Enumerate registered standard colorspace profiles.

2006-01-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: It's valid to release an empty document.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/header.c:
	comctl32: Fix emitting of NM_CUSTOMDRAW header notifications.
	Emit NM_CUSTOMDRAW header notifications for all headers, not only
	ownerdrawn. Allow to change item text and background colors in an
	application's NM_CUSTOMDRAW handler.

	* dlls/riched20/string.c:
	riched20: Allow NUL characters.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/environ.c,
	  dlls/kernel/file16.c, dlls/kernel/module.c, dlls/kernel/oldconfig.c,
	  dlls/kernel/profile.c, dlls/kernel/task.c, dlls/kernel/toolhelp16.c:
	kernel: Remove wine/server.h include from files where it is no longer needed.

2006-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: NtRaiseException doesn't need to be a register function.
	Moved common code between NtRaiseException and RtlRaiseException to a
	separate raise_exception function.

	* dlls/kernel/except.c:
	kernel: Don't send a debugger event in UnhandledExceptionFilter,
	leave that to the standard ntdll exception handling.

	* dlls/kernel/kernel32.spec, dlls/kernel/thunk.c:
	kernel: Implement FT_Exit directly in assembly to avoid the overhead
	of register functions.

2006-01-10  James Hawkins <truiken@gmail.com>

	* configure, configure.ac, dlls/cabinet/Makefile.in,
	  dlls/cabinet/tests/.gitignore, dlls/cabinet/tests/Makefile.in,
	  dlls/cabinet/tests/extract.c:
	cabinet: Add initial tests for Extract.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Implement Extract on top of FDI.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winedos/int21.c:
	winedos: Open files with write access on read only media.
	If the CreateFile in INT21_CreateFile fails with ERROR_WRITE_PROTECT,
	retry without write access.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/para.c,
	  dlls/riched20/run.c:
	riched20: Speed up text insertion.
	Optimized reading large texts into RichEdit to be an O(n) order
	algorythm instead of O(n^2) by removing extraneous conversions of
	character offsets to run offsets.

2006-01-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: If we can't connect to a service's pipe, name the service in
	the error message.

	* dlls/msi/select.c:
	msi: Count the number of columns requested and allocate that many,
	as columns may be select more than once in from a table.

	* dlls/msi/action.c:
	msi: Don't crash if there's no script present when we try execute one.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fixed the prototype of MsiDatabaseIsTablePersistent.
	Implemented MsiDatabaseIsTablePersistentA via the W function.

2006-01-10  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/menu.c, dlls/user/user16.c, include/wine/winuser16.h,
	  include/winuser.h:
	user: Fix return type of EnableMenuItem.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Fix bug in renaming files in the file dialogs when UNIX paths
	are being used.

	* include/psapi.h:
	Fix GetModuleFileNameEx definition.

2006-01-10  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	user: Improve the ownerdraw support of the static control.

	* dlls/user/cursoricon.c, dlls/user/tests/resource.c:
	user: The LoadImage resource string may be a numeric string.

2006-01-10  Kaj Kaloinen <kkaloine@gmail.com>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fi.rc:
	shlwapi: Add Finnish translation.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/status.c:
	comctl32: Call UpdateWindow() after changing statusbar text.

2006-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExtractFiles.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Clean up the documentation for Extract.

	* dlls/cabinet/cabinet.h:
	cabinet: Add the two flags used by Extract to cabinet.h.

	* dlls/cabinet/cabinet.h:
	cabinet: Define the flags member of the EXTRACTdest structure.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Fix the second parameter name of Extract.

	* dlls/cabinet/fdi.c:
	cabinet: Store the cab file handle before extracting files so we can
	close the cab file even if no files are extracted.

2006-01-09  Saulius Krasuckas <saulius.krasuckas@gmail.org>

	* include/icm.h:
	include: Add missing color space constants.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/rebar.c:
	comctl32: Fix rebar autosize behaviour.
	Allow autoresizing rebar by PostMessage(hwndRebar, WM_SIZE, 0, 0) like
	native does, taking as few rows as possible and using the parent
	window client area size for the other dimension (width for horizontal
	rebars or height for vertical ones).

	* dlls/user/combo.c:
	user: Fix dropdown combo creation when there is no space for an edit control.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Join the MTA if necessary when executing an RPC call.
	Join the MTA if necessary when executing an RPC call to ensure that it
	is executing with a valid apartment and won't fail for certain COM
	calls.

	* dlls/ole32/rpc.c:
	ole: Prefer services over servers.
	Attempt to start as a local service before attempting to start as a
	local server for the CLSCTX_LOCAL_SERVER case.

	* dlls/ole32/tests/compobj.c:
	ole: Add some tests for CLSIDFromString.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c:
	ole: Remove __CLSIDFromStringA.
	Move the ANSI implementation of CLSIDFromString to ole16.c and change
	CLSIDFromString to only deal with Unicode strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve ReadVariance.
	Extend ReadVariance to read the offset as well as the actual count,
	since these always come in pairs.
	Handle the variance not being present in ReadVariance and always call
	it from the unmarshalling functions to simplify the code there and
	also to fix a bug where the format pointer wasn't advanced properly
	for complex arrays (introduced in the previous patch when implementing
	variance).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Validate complex array format string.
	Verify that the format string being passed into the complex array
	functions is a complex array one.

2006-01-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix ref counting.

	* dlls/urlmon/binding.c:
	urlmon: Pass FORMATETC to OnDataAvailable.

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of protocol stream.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/crypt32/main.c, dlls/rsaenh/rsaenh.c:
	Call DisableThreadLibraryCalls for DLLs that don't need thread
	creation/destruction notifications.

2006-01-09  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Update the Korean translation.

2006-01-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

2006-01-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Improve stubs.
	Improve stubs for ScriptGetProperties and ScriptItemize.
	Add stub for ScriptFreeCache.

2006-01-09  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Trying to lock an empty global memory block gives an ERROR_DISCARDED.

	* dlls/user/combo.c:
	user32: Update the list of things to fix in the Combo control.

2006-01-09  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Prevent a crash in GetMenuStringA caused by calling strlenW on
	a NULL pointer, with a test.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Fixed calculation of left indent and first indent paragraph
	properties.

	* dlls/riched20/string.c:
	riched20: Simplified logic in ME_StrRelPos().

2006-01-06  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/.gitignore, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt/tests/dir.c:
	msvcrt: Add a regression test for _fullpath.

	* dlls/msvcrt/dir.c:
	msvcrt: Reworked _fullpath.
	Investigation with native msvcrt revealed that it is a wrapper for
	GetFullPathName and the current implementation was crashing with older
	mozilla installs if the path passed in was uninitialized.

2006-01-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/stg_bigblockfile.c:
	ole: Remove a no longer needed smbfs hack.

2006-01-06  Raimonds Praude <raimonds.praude@sets.lv>

	* dlls/user/combo.c:
	user32: Limit text in the edit field of a combo box.

2006-01-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Filter GETSCALINGFACTOR and SETABORTDOC proc in metafile
	Escapes.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Remove the no longer used _copy_arg function.

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke rewrite.
	Re-implement ITypeInfo::Invoke on top of DispCallFunc and
	VariantChangeType instead of _invoke and _copy_arg.

	* dlls/ole32/antimoniker.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole: Remove "stub" from TRACEs of functions that aren't stubs.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Silence a potentially noisy fixme.

	* dlls/kernel/time.c:
	kernel: Documentation cleanups.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Compute variance for complex arrays

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Call NdrStubCall2 when dealing with a pure interpreted stub
	that has no dispatch table.

2006-01-06  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	Static control: Support enhanced metafiles.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

	* documentation/PACKAGING:
	documentation: Suggest installing OpenLDAP development libraries to packagers.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate static sizing information for fixed size structs.
	Don't generate FC_*_BASETYPE proc and type format strings for
	non-basetype fields/params.

2006-01-06  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	comctl32: Reduce memory usage of the syslink control.

	* dlls/comctl32/syslink.c:
	comctl32: Some painting fixes for the syslink control.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix a LARGE_INTEGER truncation.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Refactor playback.
	Replace references of IDirectSoundImpl with DirectSoundDevice to
	remove one level of indirection and remove the problem of a three
	object circular reference.

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Unload riched20 after its window is destroyed.

	* dlls/msi/dialog.c:
	msi: Make radio buttons grey out correctly when disabled.

	* dlls/msi/helpers.c:
	msi: Clean trailing and leading spaces from path segments.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* tools/winapi/msvcmaker:
	winapi: msvcmaker adaption to new directory structure.
	Fix some issues with MSVC project file generation after recent
	directory restructuring.

	* tools/winapi/config.pm:
	winapi: Add the loader directory to the paths to exclude.
	There is nothing in there anymore that would need to be done for
	winapi tools.

	* tools/winapi/winapi_extract, tools/winapi/winapi_fixup:
	winapi: Cleanup some unused use clauses.

2006-01-06  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Output a FIXME message only once.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/dsound_test.h:
	dsound: Fix double free bug in tests.
	Fix double free in tests.  Only happens in interactive mode when
	testing duplicated 3D buffers.

2006-01-06  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Spelling fixes for the Finnish resource.

2006-01-06  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole: Fix SmallBlocksToBigBlocks loop.
	Stop copying data when read returns 0 bytes

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/security/.gitignore,
	  dlls/security/Makefile.in, dlls/security/security.spec:
	Added implementation of security.dll.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/utility.c:
	wininet: lpvStatusInfo in INTERNET_STATUS_NAME_RESOLVED,
	INTERNET_STATUS_CONNECTING_TO_SERVER and
	INTERNET_STATUS_CONNECTED_TO_SERVER should be strings, not
	sockaddr_in.

2006-01-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added assembly routines to save/restore registers for setjmp/longjmp
	to avoid the overhead of a full-blown register function.
	Some tracing improvements.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added some assembly glue for the asm bits of __CxxFrameHandler
	to avoid having to save/restore the whole context on every call.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of QueryService and stub implementation
	of IHttpNegotiate2 interface.

	* dlls/urlmon/binding.c:
	urlmon: Query service provider for IInternetProtocol.

2006-01-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winspool/winspool.drv.spec:
	winspool: Added ordinal exported functions of winspool.drv.

2006-01-05  Dan Kegel <dank@kegel.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 23 parameters.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: StackWalk (32 and 64 bit version).
	- enhance implementation of StackWalk (32 and 64 bit version) by
	making use of module information and calling for FPO
	- FPO part is still non functional
	- implemented SymGetModuleBase64
	- stubbed SymFunctionTableAccess64

2006-01-05  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture refactoring.
	Move initialization code from DirectSoundCapture to
	DirectSoundCaptureDevice.
	Make DirectSoundCaptureBuffer directly reference
	DirectSoundCaptureDevice rather than DirectSoundCapture to eliminate
	one level of indirection.
	Rename DSOUND_CreateDirectSoundCaptureBuffer to
	IDirectSoundCaptureBufferImpl_Create to be consistent.

2006-01-05  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppl.l, programs/winedbg/debug.l, programs/winhelp/macro.lex.l,
	  tools/widl/parser.l, tools/wrc/parser.l:
	Remove YY_NO defines that cause warnings.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c:
	dbghelp: Removed no longer needed 'stub' in TRACEs.

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Implement NdrClientCall2 and NdrServerCall2.

	* dlls/oleaut32/typelib.c:
	ole: Store the result from _invoke in a VARIANTARG structure.

	* programs/regedit/childwnd.c:
	regedit: Initialise nFocusPanel.

	* dlls/kernel/oldconfig.c:
	kernel32: Check for the correct error return value from open.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

	* dlls/urlmon/binding.c:
	urlmon: Added GetBindInfoString implementation.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.5.

----------------------------------------------------------------
2006-01-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/stream.c:
	msacm: Initialize some ACMSTREAMHEADER fields for the sake of native codecs.
	Initialize cb[Src|Dst]LengthUsed to 0 before calling into codec,
	required by (some?) native codecs.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Add a few keys to HKLM\Hardware.

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Map wildcards for socket type and protocol in getaddrinfo().

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Set refcount to -1 on implicitly loaded dlls to avoid unloading them
	(suggested by Michael Ost).

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Print PathCombine* strings arguments in relay debugging.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* include/wine/pthread.h:
	Avoid DECLSPEC_NORETURN on function pointers for MSVC compatibility.

2006-01-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore the TRANSFORMS variable.
	Ignore the TRANSFORMS variable when building a list of transforms for
	advertising.  The variable is used to apply transforms when installing.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Apply any MSI transforms specified by the TRANSFORMS property.

	* dlls/msi/msi.spec, dlls/msi/msiquery.c:
	msi: Add a stub for MsiGetLastErrorRecord.

	* dlls/msi/dialog.c:
	msi: Fixes for the MaskedEdit control.
	Allow MaskedEdit masks that aren't enclosed with <>.
	Allow the MaskedEdit's edit controls to scroll a bit in case things
	don't line up.

2006-01-04  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture cleanup.
	Move code and function prototypes around to eliminate forward
	declarations.  No code is changed.

2006-01-04  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/winapi_global.pm:
	winapi: Remove some exceptions now that DLL separation is complete.

	* DEVELOPERS-HINTS:
	Subdirectory tools/winapi_check no longer exists.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shellpath.c:
	shell32: Create Local AppData for user profile.
	Move history and internet tmp files to Local Settings.

	* dlls/shell32/shell32_Ru.rc:
	shell32: Update Russian resources.

2006-01-04  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user32: Menu tracing improvements.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Check file size when mapping image sections to avoid SIGBUS errors.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/custom.c:
	msi: Report the commandline that failed to start in ERR()s.

2006-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c:
	kernel32: Implemented atoms query function on top of ntdll ones.

	* dlls/ntdll/atom.c, dlls/ntdll/tests/atom.c,
	  include/wine/server_protocol.h, server/atom.c, server/protocol.def,
	  server/trace.c:
	ntdll: Correct implementation for atom query functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Make DoInfInstall return an HRESULT.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Remove WINAPI from internal functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Fix LaunchInfSection[Ex] documentation.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/wpp.c, tools/widl/widl.c, tools/wrc/wrc.c:
	Support building flex files without debug support.

2006-01-03  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* include/wine/pthread.h, include/winternl.h:
	include: Fix DECLSPEC_NORETURN for compilation with MS C compiler.

2006-01-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	shell32/unixfs: Added unicode support in folder and file pidls.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Helper function for unicode support in folder and file pidls.

2006-01-03  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Separate menu bitmaps and strings.
	Store bitmaps and bitmaps always in separate fields in the internal
	menu structure.  Get rid of a lot of assumptions in the code that the
	menu can have strings only when it is not some other type and that
	bitmaps come in two flavors.
	Add a lot of conformance tests, including some submitted by Jason
	Edmeades.

2006-01-03  Steven Edwards <winehacker@gmail.com>

	* dlls/gdi/Makefile.in, dlls/gdi/gdi_private.h, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/init.c:
	gdi: Win16/32 split of most of the metafile support.

	* dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Move EMRSETTEXTJUSTIFICATION structure to the private gdi header.

2006-01-03  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/msacm32_main.c:
	msacm32: Implement ACM_METRIC_DRIVER_PRIORITY in acmMetrics.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/kernel/module.c:
	kernel: DelayLoadFailureHook crash fix.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/Makefile.in, libs/wpp/ppl.l, programs/winedbg/debug.l,
	  programs/winhelp/macro.lex.l, tools/widl/Makefile.in,
	  tools/widl/parser.l, tools/wrc/Makefile.in, tools/wrc/parser.l:
	Added some flex options to avoid compiler warnings.
	Moved options from the Makefile into the source.

2006-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Subclass the Richedit control.
	Send a "DoAction" control event when the user scrolls the text.

	* dlls/msi/install.c:
	MSI: Improve the MsiGetMode stub a little.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Implement the Reset control event.

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 17 parameters.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c:
	dsound Add uninitialized check.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview - allow selection toggle with ctrl+space.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: AF_UNSPEC mapping.
	Also map AF_UNSPEC sockaddrs in the sockaddr handlers.
	Zero initialize the sockaddr in ws_sockaddr_alloc().

2006-01-03  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c, dlls/user/edit.c:
	Assorted spelling fixes

	* dlls/shell32/tests/shlfileop.c, dlls/wined3d/stateblock.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n' in traces.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

	* dlls/msi/msi.c, dlls/wldap32/page.c:
	Small documentation tweaks to avoid winapi_check warnings.

2006-01-03  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Add some traces to make it easier to debug icon generation problems.

2006-01-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Add a test which shows that GDI does not support compressed DIB sections.

2006-01-03  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi32: Disallow creation of compressed DIB sections.

2006-01-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/hglobalstream.c:
	ole: Check the return value of IStream_SetSize in IStream_Read.
	Check the return value of IStream_SetSize in IStream_Read, since
	otherwise execution could continue on and cause heap corruption.

	* dlls/ole32/stg_stream.c:
	ole: Fix mis-handling of return value in StgStreamImpl_Read.
	BlockChainStream_ReadAt returns a BOOL, not an HRESULT so change
	StgStreamImpl_Read to handle this, by returning STG_E_READFAULT on
	failure.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement callback conformance.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix race condition in RpcServerListen.
	The DontWait parameter is used for forcing the function not to wait
	for the server to finish.

2006-01-03  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/comctl32undoc.c:
	comctrl32: ReAlloc should be able to move memory blocks if necessary.

2006-01-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Rewrote NTLM tests in a more flexible way.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/snapshot.c:
	server: Fix va_list compile error.

	* dlls/gdi/driver.c, dlls/user/tests/monitor.c:
	gdi: Device name returned from EnumDisplayDevices is valid for CreateDC.

	* dlls/advapi32/service.c:
	advapi32: Don't allocate memory for empty argument string and pass
	NULL instead.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/control.c, dlls/wldap32/misc.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h:
	wldap32: Implement some page handling functions.
	Implement ldap_create_page_control{A,W} and
	ldap_parse_page_control{A,W}.
	Move the page handling functions into their own file.

	* dlls/wldap32/extended.c:
	wldap32: Document the functions that handle extended operations.

	* dlls/wldap32/init.c:
	wldap32: Document the init functions.
	Fix two bugs.

2005-12-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for DXGrab is NO.

2005-12-31  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Fix a mess with the Bulgarian resource file and translate the
	untranslated strings.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added http protocol tests (currently failing in Wine).

2005-12-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Try to fail more gracefully on win9x.
	Link to NtCurrentTeb dynamically.

2005-12-31  Dan Kegel <dank@kegel.com>

	* dlls/commdlg/colordlg.c:
	commdlg: Let the color picker respond properly to keystrokes.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/urlcache.c:
	wininet: Handle the cache being full better in CommitUrlCacheEntryInternal.
	Move the freeing of allocation blocks for an entry into
	URLCache_DeleteEntry.
	Call URLCache_DeleteEntry to rollback from failure in
	CommitUrlCacheEntryInternal.

	* dlls/wininet/urlcache.c:
	wininet: Create new hash tables for URL cache on demand.

	* dlls/wininet/urlcache.c:
	wininet: Move URL cache hash table creation to a separate function.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Removed not used code.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Output sizing information for arrays in the generated marshaling code.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c:
	widl: Export the bracket adding functionality of do_write_expr outside
	of header.c.

2005-12-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Change some FIXME messages to comments.

	* dlls/msi/package.c:
	msi: Define the property "Intel" if we're running on an Intel processor.

	* dlls/msi/action.c:
	msi: Add stub actions for CCPSearch and RMCCPSearch.

	* dlls/riched20/reader.c:
	riched20: Add newlines to ERR macro output.

2005-12-31  Robert Reif <reif@earthlink.net>

	* dlls/comctl32/ipaddress.c:
	comctl32: Create ipaddress in enabled state.

2005-12-31  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Added support for WINED3DFMT_X4R4G4B4.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	wldap32: Document the value handling functions.

	* dlls/wldap32/wldap32.h:
	wldap32: Copy embedded berval structures too.

2005-12-31  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-31  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix error handling in PSM_ADDPAGE in case of memory
	allocation failure.

2005-12-26  Yuval Fledel <yuvalfl@gmail.com>

	* programs/winetest/Makefile.in:
	winetest: Only include d3d9 if it is being built.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Added GetSecurityId implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Use pluggable protocol for file protocol.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix merge conflict.

	* tools/widl/typegen.c:
	widl: Follow type references in procformat and typeformat string generation.

	* tools/widl/typegen.c:
	widl: Handle marshaling and unmarshaling structures.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Out parameters.
	Marshall and unmarshall out parameters for servers and clients
	respectively.
	Write out array components for declared local variables in generated
	server code.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Remove some duplication.
	Remove some duplicated code by calling an improved
	get_required_buffer_size.
	Add some more newlines in the generated code to separate separate
	stages.
	Calculate the buffer size of [out] arguments in generated server code.
	Fix the direction passed into unmarshall_arguments.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Pass a state into marshall_arguments and unmarshall_arguments to
	decide which parameters should be considered based on their direction.

	* tools/widl/typegen.c:
	widl: Generate marshaling and unmarshaling statements for arrays.

	* tools/widl/typegen.c:
	widl: Treat variables with array indices the same as pointers.

	* tools/widl/typegen.c:
	widl: Advance the type format string whilst marshaling and
	unmarshaling arguments.

	* tools/widl/typegen.c:
	widl: Convert the main while loops in marshall_arguments and
	unmarshall_arguments into for loops.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add support for marshalling and unmarshalling conformant strings.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/write_msft.c:
	widl: Add some const attributes.

	* tools/widl/typegen.c:
	widl: Prepare marshall and unmarshall code generation functions for
	accepting pointers.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix SEGVs with client and server code generation when an
	interface has no methods.

	* tools/widl/typegen.c:
	widl: Generate correct proc format strings for [out] and [in, out] parameters.

	* tools/widl/parser.y:
	widl: Use the same precendence rule for the conditional operator as in wpp.
	Fixes several shift/reduce warnings.

	* tools/widl/typegen.c:
	widl: Better array support.
	Treat variables with array indices the same as pointers when writing
	out the proc & type format strings.
	Fix a typo when writing out the proc format string where a non-return
	type was written out for a return type and vice-versa.

	* tools/widl/typegen.c:
	widl: Support non-basic variables in proc format strings.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add helper functions that return the size of procformat and
	typeformat strings for variables.

	* dlls/oleaut32/typelib.c:
	oleaut: Small re-organisation of ITypeInfo::Invoke.
	Only output the one function in the trace for ITypeInfo::Invoke.
	Process the return value on output in ITypeInfo::Invoke, but only copy
	it to pVarResult if pVarResult is not NULL.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert some tabs to spaces and some other formatting changes.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize member IDs to MEMBERID_NIL inITypeInfo::GetIDsOfNames.
	Better tracing.

	* dlls/oleaut32/typelib.c:
	ole: Improve typelib traces.
	Move the debug channel check from dump_TLBFuncDesc[One] to its callers
	for more flexibility in which channel controls the output.

2005-12-26  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: More printf tests for I64 integer size support.

	* dlls/msvcrt/wcs.c:
	msvcrt: pf_integer_conv for I64.
	- Add pf_integer_conv and pf_is_integer_format.
	- Update pf_fill to handle printing the sign for signed integers.
	- Handle I64 integer sizes using pf_integer_conv and pf_output_format_A.

	* dlls/msvcrt/wcs.c:
	msvcrt: Do not treat %ll as an IntegerDouble in printf.

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Parse I, I32, and I64 integer size flags in printf.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec:
	urlmon: Implement BindAsyncMoniker function.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: URL with two slashes is valid.

2005-12-26  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCanonicalize.
	- Added support for URL_FILE_USE_PATHURL.
	- Fix handling of '/' and '\'.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Spelling fix.

2005-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Internal search routines can now be case sensitive/insensitive.
	- Now handling option SYMOPT_CASE_INSENSITIVE for symbol search.
	- Quick implementation of SymSearch on top of SymEnumSymbols (should
	be the other way around).

2005-12-26  Maxime Bellengé <maxime.bellenge@wanadoo.fr>

	* dlls/msvcrt/main.c:
	msvcrt: Prevent a crash if TlsGetValue returns NULL in DLL_THREAD_DETACH.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/propvariant.c:
	Fix detection of V1a prop variant library in test suite.

2005-12-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Canadian keyboard layout to better match the X11 one

2005-12-26  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Clean up the SHFileOperation tests.
	- Make sure to create all the files used by the new tests.
	- Add a couple more SHFileOperation tests.
	- Fix some of the old tests.

2005-12-26  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Use hourglass cursor when opening audio drivers.
	Misbehaving drivers can take a while to open so change to the hour
	glass cursor when opening them.

2005-12-26  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlComPtrAssign.
	According to MSDN AtlModuleInit should initialize the modules critical
	sections.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.4.

----------------------------------------------------------------
2005-12-22  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Added some test to document native ITEMIDLIST format.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c:
	user/tests: Remove todo_wine from a few tests that (usually) succeed.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/private_mciavi.h:
	mciavi32: Rewrite asynchronous MCI_PLAY command handling.
	Rewrite asynchronous MCI_PLAY command handling in MCIAVI driver, make
	it more responsive to commands in the MCI_MODE_PLAY state by checking
	hStopEvent even if the time frame between frames has expired.

2005-12-22  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  include/winerror.h:
	ole32: Return error instead of asserting if storage file is corrupt.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Add a PeekMessage test.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/console.c:
	kernel/tests: Check that we successfully open the console.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Fixed console access rights handling.

2005-12-22  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl: Fix last wgl regression.
	Fix wgl regression: test glx server version and extensions to use (and
	not use glXQueryDrawable on older glx implementations).

2005-12-22  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_MOVE command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_COPY command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_RENAME command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_DELETE command.

2005-12-22  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Add unmanaged windows configuration.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	dbghelp: Correct handling for all module names.

2005-12-21  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Prevent array underflow in MsiFormat when measuring with zero-length buffer.

2005-12-21  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Remove the '.\\' prefix from filenames, because it hides a
	bug in SHFileOperation.

2005-12-21  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ddraw/surface_main.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix DirectDrawSurface::QueryInterface crash.

2005-12-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/winspool.rc, include/wine/wine_common_ver.rc:
	winspool: Add version resource.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/time.c:
	msvcrt: Return a per-thread buffer in localtime and gmtime.

2005-12-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/shader.c:
	d3d9: Add traces for when shader support is missing in the shader test.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/process.c:
	kernel: Some documentation improvements.

2005-12-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/time.c:
	msvcrt: Implemented wctime(), wasctime().
	Free thread data in DLL_THREAD_DETACH.

2005-12-21  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Select an audio driver on fresh install.

2005-12-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Test only one invalid GetStandardColorSpaceProfile() param in a
	single check.

2005-12-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/mciwnd.c:
	msvideo: Handle ESC key press in the MCIWND class as an alias to stop command.

2005-12-21  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix printf sign flags.
	Fix the printf sign flags so that '+' doesn't always override ' '
	space alone.  If they both appear, continue parsing and let '+' take
	precedence.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	server: Set the context flags in get_thread_context to indicate which
	parts of the returned context are valid.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/misc.c, dlls/wldap32/parse.c,
	  include/config.h.in:
	wldap32: Added configure checks for some potentially missing functions.

2005-12-20  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/dialog.c:
	msi: Use a default dialog font if nothing is specified.

2005-12-20  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fixed a test failing on WinXP.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/wdbgexts.h:
	dbghelp: Added a few extensions to make windbg happy.

2005-12-20  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Ignore PadZero when LeftAlign is true in printf conversions.

2005-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/tests/msacm.c:
	msacm: Preserve value of cbStruct in acmDriverDetails.
	Ensure that the cbStruct member of the ACMDRIVERDETAILS[AW] struct is
	filled with a valid value before returning.
	Fill the cbStruct member of the ACMDRIVERDETAILS[AW] before sending a
	ACMDM_DRIVER_DETAILS message to an installed codec that might be a
	native library: native ACM codecs expect cbStruct to be valid before
	filling the rest of the struct with any data.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/exception.c:
	ntdll: Made DBG_EXCEPTION_HANDLED a synonym of DBG_CONTINUE for exception handlers.

2005-12-20  Paul Vriens <paul.vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Dutch resources update.

2005-12-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Cleanup shader constants code a little bit.
	Improved bounds checking.

2005-12-19  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Require exact uppercase and lowercase format in printf routines.

2005-12-19  Bill Medland <billmedland@mercuryspeed.com>

	* programs/winemenubuilder/winemenubuilder.c, tools/wineshelllink:
	winemenubuilder: Provide depth to the menus created.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel32: Check for tabs too when extracting the program name
	(reported by Vitaliy Margolen).

2005-12-19  Hans Leidekker <hans@it.vu.nl>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Avoid lvalue casts in generated code.

2005-12-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Adding AcceptSecurityContext to the NTLM security provider.

2005-12-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Filter additional failures.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winhelp/winhelp.c:
	winhelp: Handle '> ' on command lines.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: First stab at supporting calling convention in function signature.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c:
	dbghelp: Return proper size for local & parameters in SYMBOL_INFO.

2005-12-19  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: Updated French resources.

2005-12-19  Aric Stewart <aric@codeweavers.com>

	* dlls/user/Makefile.in, dlls/user/edit.c:
	user: Make the edit control IME aware and implement inline editing.
	Makes for a significantly better user experience for CJK users.

2005-12-19  Magnus Olsen <magnus@itkonsult-olsen.com>

	* dlls/msi/format.c:
	msi: Fixed deformat_environment to not cut off string.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix viewing of debug channels.
	Various internal cleanups.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymMatchString.

2005-12-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winproc.c:
	user: Fix LB_GETTEXT unmapping for A<->W.

2005-12-19  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/setupapi/misc.c:
	setupapi: Fix comparing the group SIDs in IsUserAdmin.

2005-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c, dlls/x11drv/init.c, dlls/x11drv/opengl.c:
	opengl: Add support for rendering on bitmaps.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/rpc.c:
	ole32: Revert exception handler change.
	The handler does the opposite of normal page fault handlers.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c:
	user: Fix hrgn leaks in win.c test.

2005-12-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tooltips.c:
	comctl32: Add a test for the initial tooltip window style settings,
	make it pass under Wine.

2005-12-19  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c:
	wcmd: Increase maximum length of commands.
	Increase maximum length of commands to 8192 bytes as on Windows XP.
	Add needed braces to a multi line "if" statement.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: New stubs (needed for windbg startup).

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fixed loading .so modules from a living target.

	* dlls/dbghelp/stack.c:
	dbghelp: Fixed missing parameters info in StackWalk64.

2005-12-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Don't crash on NULL device_ptr.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, tools/winebuild/relay.c:
	ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
	Changed exception raise functions to call it explicitly.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added handling of BINDF_FROMURLMON in file protocol.

	* dlls/mshtml/tests/protocol.c, include/urlmon.idl:
	Fix typo in urlmon.idl.

2005-12-19  Lauri Tulmin <tulmin@gmail.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Don't truncate text when creating edit control.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: Do not use the scroll rectangle for clipping in ScrollDC.
	With a conformance test.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added some tests and fixes of file protocol.

2005-12-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/relay.c,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c:
	ntdll: New implementation of relay thunks.
	New implementation of relay thunks that doesn't require modifying code
	on the fly, so that the thunks can be put in the text section.
	Some performance improvements.

2005-12-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Don't use a real guard page at the bottom of the stack.
	A no-access page is enough, we can't properly raise an overflow
	exception anyway.

2005-12-17  Robert Reif <reif@earthlink.net>

	* programs/winecfg/.gitignore, programs/winecfg/Bg.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/audio.c,
	  programs/winecfg/main.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c, programs/winecfg/winecfg.h,
	  programs/winecfg/winecfg.rc:
	winecfg: Use sound tree view for driver selection.
	- Move driver selection and configuration into tree view.
	- Only show loadable drivers.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Shorten MIDI names.
	Shorten MIDI names to fit into 32 byte array without overflow.

2005-12-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement more implicit properties, with tests.

2005-12-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Forward StackWalk64 to dbghelp.StackWalk64.

2005-12-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: ScrollDC should not clip output if a clipping rect is not specified.
	Add a ScrollDC test with NULL clipping rect.
	Add another set of ScrollDC tests written by Rein Klazes.

2005-12-16  Huw Davies <huw@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Get the visual for the GLXPixmap from the current pixel format.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/main.c, dlls/kernel/atom.c, dlls/kernel/computername.c,
	  dlls/kernel/file.c, dlls/kernel/heap.c, dlls/kernel/ne_module.c,
	  dlls/kernel/resource.c, dlls/kernel/string.c, dlls/kernel/virtual.c,
	  dlls/msvcrt/cpp.c, dlls/ntdll/debugtools.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/sec.c,
	  dlls/ole32/rpc.c, dlls/user/cursoricon.c, dlls/user/lstr.c,
	  dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Take advantage of the __EXCEPT_PAGE_FAULT macro.

	* dlls/ntdll/exception.c, include/wine/exception.h:
	Exception handling: Added a magic __EXCEPT_PAGE_FAULT macro to make it
	easier to handle the common case of trapping page faults.

	* dlls/kernel/heap.c, dlls/kernel/ne_module.c, dlls/kernel/resource.c,
	  dlls/ntdll/resource.c, dlls/ole32/rpc.c, dlls/user/lstr.c:
	We no longer need to handle EXCEPTION_PRIV_INSTRUCTION on page faults.

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/.gitignore,
	  dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/exception.c:
	ntdll: More compatible exception information for protection faults.
	Added a bunch of test cases.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Vertex declaration cleanup.
	Clean up constants and the wine declaration when the vertex
	declaration is destroyed.

	* dlls/wined3d/device.c:
	wined3d: Allow NULL multi sample quality.
	Allow MultiSampleQuality to be passed as NULL, this is a
	requirement for DirectX 8 and lower.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/msvcrt/msvcrt.spec,
	  dlls/ntdll/ntdll.spec:
	Add -register hint in ntdll, kernel and msvcrt spec files.

	* tools/winebuild/parser.c, tools/winebuild/winebuild.man.in:
	winebuild: Allow -register flag for Win32 too.
	This way it can be used as hint for the relay code.

2005-12-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement CRLDistPoints encoding/decoding.
	- rewrite sequence decoding to support context-specific tags, and
	eliminate duplicated code
	- implement encoding and decoding of CRLDistPoints

2005-12-16  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shellpath.c, include/shlobj.h:
	shell32: Fix return value of PathProcessCommand.

2005-12-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Fix BindToStorage test.

	* include/mshtmdid.h, include/mshtml.idl:
	Added some declarations to mshtml.idl.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Added bindable and displaybind attributes handling.

2005-12-16  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian resource.

2005-12-16  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/uninstaller/Es.rc:
	uninstaller: Spanish translations update.

	* programs/winecfg/Es.rc, programs/winecfg/winecfg.rc:
	winecfg: Spanish translations update.

2005-12-16  Ragnvald "Despair" Maartmann-Moe IV <despair@adelphia.net>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix matrix copy/paste bug.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Vertex declaration recording state.
	Stop SetVertexDeclaration from reference counting if a stateblock is
	being recorded.

2005-12-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user32: Implement saving and fix reading of nonclient metrics.
	With conformance tests.

2005-12-16  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/opengl.c:
	x11drv: Allow users to preload an OpenGL library.

2005-12-16  Ivan Leo Puoti <ivanleo@gmail.com>

	* include/ddk/wdm.h:
	Add some structs/prototypes to wdm.h.

2005-12-15  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Added stubs for SetupGetInfInformation and
	SetupQueryInfFileInformation.

2005-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Reimplemented _chkstk and _alloca_probe directly in assembly.

2005-12-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Fix handling Gecko strings.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Set Gecko's profile.
	Make sure that Gecko components are registered.

2005-12-15  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Internal reference counting.
	Change most references to resources parent into references to the
	resource, so that external reference counts match DirectX but object
	aren't released if they are still referenced by the stateblock.

2005-12-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c:
	iccvid: Add support for ICM_DECOMPRESS_END message.

2005-12-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Read/save minimized metrics from/to registry.

2005-12-14  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reserve some space for the shared user data.

	* dlls/ntdll/virtual.c:
	ntdll: Fixes in virtual memory protection flags.
	Tweak reporting of virtual protection flags and address space limit to
	yield results closer to what Windows does.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for Get/SetVertexDeclaration refcounts.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Return the correct parent in IWineD3DVertexDeclarationImpl_GetParent.

	* dlls/d3d9/vertexshader.c:
	d3d9: Check for a NULL shader in IDirect3DDevice9Impl_GetVertexShader
	before getting the parent.

2005-12-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, include/winioctl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Modify WaitNamedPipeW to use NtFsControlFile.
	Replace struct overlapped with event.

2005-12-14  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean translation.

2005-12-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Return the correct vertex declaration.
	In IWineD3DDeviceImpl_GetVertexDeclaration, return the vertex
	declaration in This->stateblock instead of the one in
	This->updateStateBlock.

2005-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/riched20/editor.c:
	riched20: Reset selection when text is reset.

2005-12-14  Aric Stewart <aric@codeweavers.com>

	* dlls/user/clipboard.c:
	user: GetClipboardFormatNameA fix.
	In the W->A translation make sure we have characters to translate
	before doing the WideCharToMultiByte with -1.

2005-12-13  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Move repetitive code to helper macros.

2005-12-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	x11drv: ScrollDC fix.
	There is no need to offset the source rectangle in the reverse
	direction before scrolling.

2005-12-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/tests/http.c:
	wininet: HTTP headers reworking.
	Redo how headers are handled, eliminating the concept of Standard
	Headers and allow all headers to be added multiple times.
	Allow querying of headers with an index to get the multiple headers.
	Respect response vs request headers in HttpQueryInfo.
	Add a number of tests to extensively test header adding and replacing.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	gdi: Added support for doing GetBitmapBits on a DIB section.
	Simply copy the DIB bits in that case.

	* dlls/x11drv/dib.c:
	x11drv: Clipping fix with DIB section copy.
	Use the GC of the destination device in X11DRV_DIB_CopyDIBSection so
	that the clipping region is taken into account.

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/shader.c:
	d3d9: Add a test for Get/SetVertexShader and Get/SetPixelShader refcounts.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* server/mailslot.c, server/named_pipe.c:
	server: Added get_file_info implementation for named pipe and mailslot devices.

	* server/mailslot.c, server/named_pipe.c:
	server: Fixed refcounting in get_fd requests for named pipe and mailslot devices.

2005-12-13  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Start generating type format strings.
	Based on a patch by Eric Kohl.

2005-12-13  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Server stubs in generated code are void functions.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/audio.c:
	winecfg: Simplified module handling code.

2005-12-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/http.c:
	wininet: Reinitialise NETCON on redirect.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fix a couple of file descriptor leaks.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/le.c, tools/winedump/ne.c:
	winedump: Const correctness fixes.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Decode cleanups.
	- implement a helper to decode sequences of like types
	- use helper functions wherever applicable when decoding
	- correct "expected" vs. "got" usage in tests
	- fix a few other small bugs

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't change the shader's refcount in SetVertexShader and
	SetPixelShader.

2005-12-13  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/cubetexture.c:
	wined3d: Cube texture named constants.
	Update cubetexture so that names constants instead of numeric
	constants are used for the facetype and also add some additional
	checks where facetype is passed as a parameter to the function.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests/shlfolder.c: ILFindLastID has to be called by ordinal.

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

2005-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  dlls/ntdll/virtual.c:
	TEB.StackLimit should not include the guard page.

	* dlls/kernel/kernel_private.h, dlls/kernel/process.c,
	  dlls/kernel/thread.c:
	kernel: Moved main stack initialization to process.c.

	* server/fd.c:
	server: Don't enable polling on regular files in add_queue.

	* dlls/kernel/comm.c, dlls/kernel/sync.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/server.c, dlls/ntdll/virtual.c,
	  dlls/winedos/int13.c, dlls/winsock/socket.c:
	Pass specific access rights to wine_server_handle_to_fd.

	* dlls/kernel/tests/sync.c, dlls/ntdll/server.c, server/directory.c,
	  server/fd.c, server/file.c, server/file.h, server/mailslot.c,
	  server/mapping.c, server/named_pipe.c, server/object.c,
	  server/process.c, server/registry.c, server/serial.c, server/sock.c:
	server: Added access rights mapping to file objects.

	* server/process.c, server/thread.c:
	server: Added access rights mapping to process and thread objects.

	* server/registry.c:
	server: Added access rights mapping to registry key objects.

	* server/symlink.c:
	server: Added access rights mapping to symlink objects.

	* server/token.c:
	server: Added access rights mapping to token objects.

	* server/event.c, server/mutex.c, server/semaphore.c, server/timer.c:
	server: Added access rights mapping to synchronization objects.

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Added infrastructure for access rights mapping.

	* server/mailslot.c:
	server: Allow the mailslot device to be opened as a file object.

	* server/named_pipe.c:
	server: Allow the named pipe device to be opened as a file object.

	* dlls/kernel/file.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/fd.c, server/file.h,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Support for opening devices.
	Added support for opening devices directly with the server when they
	don't correspond to a Unix file.

	* server/mapping.c, server/trace.c:
	server: Use a better error code for a zero-size mapped file.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/dosmem.c, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_private.h, dlls/winedos/int31.c:
	kernel32: Get rid of DOSMEM_AllocSelector.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c:
	winspool: Added tests for OpenPrinter.

2005-12-12  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	shell32: Fix drag-scrolling in the shellview object.

	* dlls/ole32/ole2.c:
	ole32: Periodically call IDropTarger::DragOver during Drag&Drop.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/msvcrt.h, dlls/ntdll/relay.c, dlls/ole32/ole16.c:
	Functions with no paramters must be (void).

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate FC_ERROR_STATUS_T proc format.
	- Include the header file for the functions implemented in typegen.c.
	- Generate proc format for FC_ERROR_STATUS_T type.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Support explicit binding handles.

	* tools/widl/server.c:
	widl: Zero initialize parameters in the generated server code.
	Zero initialize parameters in the generated code. Based on a patch by
	Eric Kohl.

	* tools/widl/client.c:
	widl: Calculate the size of buffer required.
	- Calculate the size of buffer required.
	- Fix a typo.
	- Set the buffer start and buffer end markers.

	* tools/widl/server.c:
	widl: Don't cast buffer pointers to long in generated server code.

2005-12-12  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple interfaces per file.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Don't treat FC_SMALL as FC_SHORT.
	FC_SMALL is its own type and is the same size as FC_CHAR, not
	FC_SHORT.

	* tools/widl/header.c:
	widl: Use WCHAR instead of wchar_t.
	Output IDL wchar_t types as WCHAR to avoid conflicts with the
	generally incompatible Unix wchar_t.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Added documentation for OpenPrinter.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/commdlg/finddlg32.c, dlls/ole32/ole16.c, dlls/user/cursoricon.c:
	Const correctness fixes.

2005-12-12  Marcus Meissner <marcus@jet.franken.de>

	* include/ws2tcpip.h:
	winsock: getaddrinfo return codes
	Adjust return code EAI_NODATA to WSAHOST_NOT_FOUND, like windows does
	it.

	* dlls/winsock/socket.c:
	winsock: getaddrinfo - return code mapping.
	convert_eai_u2w should map from unix to windows, not the other way
	round (spotted by Dominic Wise).

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/urlmon.idl:
	urlmon.idl: Add some BINDSTATUS values.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/comctl32/treeview.c:
	comctl32: Fixed (harmless) typo.

	* dlls/commdlg/fontdlg.c, dlls/winaspi/aspi.c:
	Removed some dead-code.

	* dlls/ddraw/tests/ddrawmodes.c, dlls/setupapi/queue.c:
	Made some functions static.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	vidc: Return error codes when a message isn't supported.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	OLE: Fix SafeArrayCopy for NULL pvData.
	It is allowed to copy a SAFEARRAY with a NULL pvData, as long as
	cbElements is non-zero. Add a test for this and fix the safe array
	code.

	* dlls/ole32/errorinfo.c:
	CreateErrorInfo trace fix.
	CreateErrorInfo isn't a stub so don't print this in the trace
	message.

	* dlls/oleaut32/typelib.c:
	OLE: Add const to several typelib functions.
	Add const attributes to parameters for several functions and fix up
	some formatting.

	* dlls/oleaut32/oleaut.c:
	OleTranslateColor trace fix.
	OleTranslateColor isn't a stub so don't print ":stub" in the trace
	message.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument3 stub implementation.

2005-12-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add d3d9 tests.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Don't output __RPC_FAR in generated code.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources for the Audio tab.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	Added declaration of IHTMLDocument3 and more DISPIDs.

2005-12-12  Filip Navara <xnavara@volny.cz>

	* dlls/kernel/module.c:
	kernel: Fix the Mach-O binary magic.

2005-12-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/winedos/dosmem.c:
	winedos: Implement MCB.

2005-12-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Correctly fix IStream::Read.
	Don't dereference a possible NULL pointer.

2005-12-09  H. Verbeet <hverbeet@gmail.com>

	* configure, configure.ac, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/stateblock.c:
	d3d9: Add a test for BeginStateBlock and EndStateBlock.

2005-12-09  Markus Amsler <markus.amsler@oribi.org>

	* include/mmsystem.h:
	Remove unneeded ; from DECL_WINELIB_TYPE_AW in mmsystem.h.

2005-12-09  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Fix conversion of password in NTLM AcquireCredentialsHandleA.

2005-12-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c, dlls/ntdll/reg.c, include/wine/server_protocol.h,
	  server/change.c, server/protocol.def, server/registry.c,
	  server/trace.c:
	server: Added object attributes to a few more requests.

	* server/atom.c, server/console.c, server/debugger.c, server/directory.c,
	  server/event.c, server/file.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/process.c, server/semaphore.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	server: Make alloc_handle use attributes instead of inherit flag.

	* dlls/kernel/console.c, dlls/ntdll/server.c, dlls/ntdll/thread.c,
	  dlls/x11drv/x11drv_main.c, include/wine/server.h,
	  programs/wineconsole/curses.c:
	Make wine_server_fd_to_handle use attributes instead of inherit flag.

	* programs/wineconsole/wineconsole.c:
	wineconsole: Remove some unnecessary typecasts.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in dup_handle request.

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/token.c, server/trace.c:
	server: Use attributes instead of inherit flag in token requests.
	Also use the specified access rights in the open_token request.

	* dlls/kernel/process.c, dlls/ntdll/process.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	server: Use attributes instead of inherit flag in process and thread requests.

	* dlls/kernel/toolhelp.c, dlls/ntdll/nt.c, include/wine/server_protocol.h,
	  server/protocol.def, server/snapshot.c, server/trace.c:
	server: Use attributes instead of inherit flag in snapshot requests.

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in console requests.

	* dlls/ntdll/file.c, dlls/ntdll/server.c, include/wine/server_protocol.h,
	  server/file.c, server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in file requests.

	* dlls/winsock/socket.c, include/wine/server_protocol.h,
	  server/protocol.def, server/sock.c, server/trace.c:
	server: Use attributes instead of inherit flag in socket requests.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mpr/mpr_main.c, dlls/shlwapi/regstream.c, dlls/user/mouse16.c:
	Add some missing includes which contain used prototypes.

2005-12-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c:
	mshtml: Added PromptService implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIURIContentListener to QueryInterface.
	Always release nsIWebBrowserSetup.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIEmbeddingSiteWindow implementation.

2005-12-09  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/vertexshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Vertex shader 8 support.
	Start to add support for DirectX 8 vertex shaders, constants and
	registers are now correctly assigned and loaded allowing support for
	most basic d3d8 shaders.

2005-12-09  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix call to ReadFile.
	The BytesRead parameter passed to ReadFile may never be NULL.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

	* tools/sfnt2fnt.c:
	sfnt2fnt: Don't print two newlines after error messages.

	* tools/widl/header.c:
	widl: Issue correct C++ headers.

2005-12-09  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/quartz/filesource.c, dlls/quartz/filtermapper.c:
	quartz: Fix incorrect usages of the HRESULT_FROM_WIN32 macro.

2005-12-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.3.

----------------------------------------------------------------
2005-12-08  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi: Fix 24bpp -> 32bpp copy.

2005-12-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: RegCreateKeyEx fix.
	On Win9x,ME RegCreateKeyEx ignores the backslash character if the
	subkey begins with one. With a regression test.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Formatting cleanups.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Marshal and unmarshal basic types.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/Makefile.in, tools/widl/client.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Add a type generator framework.
	Add a framework for writing the strings for marshaling and
	unmarshaling parameters and make the client and server use it.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Write out argument lists in the server.
	- Add framework for updating proc offsets.
	- Write out argument lists in the server.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Rename some variables.

2005-12-08  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c:
	opengl: render_texture
	- better render_texture emulation (using pbuffers)
	- support GLX_ATI_render_texture for render_texture

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle HTTP_QUERY_CUSTOM.
	In HttpQueryInfo if dwInfoLevel includes HTTP_QUERY_CUSTOM then
	lpBuffer is In/Out because the header we are querying is there.
	Additionally standard headers can be queried in this manner as well
	(such as Set-Cookie).

2005-12-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineoss/audio.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/mixer.c, dlls/winmm/wineoss/mmaux.c,
	  dlls/winmm/wineoss/oss.c, dlls/winmm/wineoss/oss.h:
	wineoss: Fix device probing.
	- Fix device probing at driver load time.
	- Fix memory leaks at driver exit time.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* include/Makefile.in, include/dpaddr.h, include/dplay8.h,
	  include/dplobby8.h:
	dplay: dx8/dx9 support (missing includes).
	- add directx9 support for dplay8.h and dpaddr.h
	- new file dplobby8.h

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	comdlg32: Don't worry if an HGLOBAL passed to printdlg is already locked.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fixed returned string in capabilities.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winenas/audio.c:
	winenas: fix crash.
	- return correct MM error code when no connection to server has been
	opened
	- don't close the AU driver if it hasn't been opened

2005-12-08  H. Verbeet <hverbeet@gmail.com>

	* include/d3d8.h, include/d3d9.h:
	d3d8/d3d9: Define D3D_SDK_VERSION.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Remember options selected in the print setup dialog.

2005-12-08  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix compilation on gcc 2.95 (no nameless unions).

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: A->W bugfix.
	When converting SendRequestExA -> W we need to set the lpcszHeader
	parameter to NULL if the original one is NULL.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Check for failure to get the user path in RtlOpenCurrentUser.
	Fixed the return value type.

2005-12-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Added config key to specify Gecko path.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Added support for auto detecting all drivers by attempting to
	open them.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dpnhpast/main.c, dlls/mapi32/imalloc.c, dlls/msisys/msisys.c,
	  dlls/netapi32/browsr.c, dlls/rsaenh/rsaenh.c,
	  dlls/wintrust/wintrust_main.c:
	Add a few missing #includes.

2005-12-07  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Implement InitializeSecurityContext(A|W) for the NTLM
	security provider.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Show all sound card drivers and their devices.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/fnt2fon.c, tools/sfnt2fnt.c:
	Add an error() function to fnt2fon and sfnt2fnt.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement undocumented behaviour in DispCallFunc.
	Fix DispCallFunc to work with MSDN-undocumented behaviour used by
	Office 2003 and document the function.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement ITypeInfo_AddressOfMember.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h:
	OLE: Fix brokenness in typelib marshaller caused by dispinterface retval fix.
	Fix more fallout from dispinterface retval patch: make typelib
	marshaler use the internal function description so that it calls
	dispinterface functions with the correct number of parameters again.
	Also fixes some memory leaks caused by the fact that a corresponding
	ReleaseXDesc function has to be called for each GetXDesc.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	OLE: Add tests for the typelib version of ITypeComp_Bind.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, include/oleauto.h:
	OLE: Update the type of the oVft parameter for DispCallFunc.

2005-12-06  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c:
	secur32: Implementing AcquireCredentialsHandle(A|W) for the NTLM
	security provider.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* tools/c2man.pl:
	c2man: Remove HTML warnings.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c:
	winejack: Fix driver load and initialization.
	Move wave in/out initialization from wave out to driver.
	Add index number to device names.
	Fix memset bug where only first wave in caps was zeroed.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mciwave/mciwave.c:
	mciwave: save/record.
	- fix for playback after a sound has been recorded
	- shall fix also opening the mci device without name
	- bug reported (and fix tested) by Peter Astrand

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c:
	dbghelp: Final touch on StackWalk64 so that it works.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Document the monitor functions.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Sort entries in win16.api and win32.api

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	x11drv: Add more useful traces on SetPixelFormat (and no more FIXME).

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, dlls/x11drv/x11drv.h:
	x11drv: cleanup not longer used data on X11DRV_PDEVICE.

2005-12-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi: Added stub for AddFontMemResourceEx.

2005-12-06  Alexandre Julliard <julliard@winehq.org>

	* include/mlang.idl:
	mlang: Properly declare the interface uuids.

2005-12-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c, include/mlang.idl:
	mlang: Implement IEnumRfc1766 interface.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/jack.c:
	winmm: Allow sound card driver to be opened more than once.
	TRACE cleanups.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/alsa.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/wineaudioio/audioio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/winenas/nas.c, dlls/winmm/wineoss/oss.c:
	winmm: Allow sound card drivers to be opened more than once.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to current git.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	OLE: Fix a typo where brackets were missing.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: ITypeInfo_Invoke parameter naming change.
	Rename the dwFlags parameter of ITypeInfo_Invoke since it is not a
	DWORD, but an unsigned short.

2005-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_Document implementation.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/expr.c:
	winedbg: Fixed broken code about type management for binary operator.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Add documentation for the port functions.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	kernel: Added a basic test for exception handling in threads.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/cursoricon.c:
	user: Fixed copy/paste bug in CURSORICON_GetResIconEntry.

2005-12-05  Rein Klazes <wijn@wanadoo.nl>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Catch access violations when calling DirectDrawEnumerateProc.

2005-12-05  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/devenum/createdevenum.c:
	devenum: Don't leak key handle creating a category registry key.

2005-12-05  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/msi/msi.c:
	msi: Implemented DllCanUnloadNow.

2005-12-05  Wojciech Migda <migda@chemia.uj.edu.pl>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: fixed typo in SymSetOptions entry.

2005-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Fix MsiProvideQualifiedComponentW spec file entry.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/main.c, server/object.h:
	server: Remove sync_namespace.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/mailslot.c, server/named_pipe.c,
	  server/object.h:
	server: Let the directory code handle device names.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/directory.c,
	  server/mailslot.c, server/object.h, server/protocol.def,
	  server/trace.c:
	Move mailslot devices into directory name space.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/directory.c, server/named_pipe.c, server/object.h,
	  server/protocol.def, server/trace.c:
	Move named pipe objects into directory name space.
	Change tests accordingly.
	Add small test for WaitNamedPipe.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/event.c, server/mapping.c, server/mutex.c,
	  server/object.h, server/semaphore.c, server/symlink.c,
	  server/timer.c:
	server: Move handle allocation out of open_object_dir.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c, include/dbghelp.h:
	dbghelp: Implemented StackWalk64.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* dlls/msvidc32/msvideo1.c:
	msvidc32: Add a comment for DllMain() to stop winapi_check from
	complaining about it.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-05  Pavel Roskin <proski@gnu.org>

	* programs/notepad/Ru.rc:
	notepad: Russian translation for "Font..." menu item.

2005-12-05  Cihan Altinay <cihan@uq.edu.au>

	* dlls/riched20/editor.c:
	riched20: register ListBox & ComboBox classes
	Partially implement REExtendedRegisterClass() to register missing
	window classes so that applications relying on them don't get
	confused.

2005-12-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Fix an incorrect translation.

2005-12-05  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/commdlg/cdlg_No.rc, dlls/iccvid/iccvid_No.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_No.rc, dlls/msvidc32/rsrc.rc,
	  dlls/msvideo/msvfw32_No.rc, dlls/msvideo/rsrc.rc,
	  programs/notepad/No.rc, programs/regedit/No.rc,
	  programs/winecfg/No.rc:
	Update Norwegian Bokmaal resources.

2005-12-05  Patrick Ammann <pammann@aro.ch>

	* dlls/wininet/netconnection.c:
	wininet: compilation fix
	- make netconnection.c compile when HAVE_OPENSSL_SSL_H or
	HAVE_OPENSSL_ERR_H are not defined.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/driver.c, dlls/winmm/winemm.h:
	winmm: driver unloading.
	- properly handle drivers unloading when no session instance of the
	driver has been created

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, programs/winedbg/expr.c,
	  programs/winedbg/symbol.c:
	dbghelp,winedbg: SYMBOL_INFO fix.
	- native dbghelp returns in SYMBOL_INFO.TypeIndex the index of the
	type of the symbol (we were returning the symbol index instead)
	- fixed winedbg accordingly

2005-12-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	Fix VarBstrCmp for NULL input BSTRs (MSDN is wrong).

2005-12-05  Milko Krachounov <milko@3mhz.net>

	* dlls/commdlg/cdlg_Bg.rc, programs/regedit/Bg.rc:
	Update the Bulgarian resources for commdlg and regedit.

2005-12-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Rewrote mappers to use sizeof() based loops.
	Added IPPROTO_IP and AF_UNSPEC to the mappers.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Support HREFTYPEs For ITypeInfos
	Add support for reading the hreftype of a typeinfo, return it to the
	application in ITypeComp_Bind for the DESKIND_APPOBJECT case and
	support referencing it in ITypeInfo_GetRefTypeInfo.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix function name loading
	Correctly get the name of the second function of a propget/propput
	pair in MSFT typelibs when the name offset is set to -1.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix invoking dispinterface functions
	Fix invoking dispinterface functions by using the internal
	representation of the function, not the one returned to applications.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Set pixel shader version correctly in IWineD3DPixelShaderImpl_SetFunction.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Return the correct parent in IWineD3DPixelShaderImpl_GetParent.
	Remove an unnecessary cast.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Move the dispinterface return value handling to functions that
	return the FUNCDESC to the user.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c:
	wininet: Correctly set the last error when a called Unix network
	function fails.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: simplify some code.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: return D3DERR_INVALIDCALL when calling BeginStateBlock and
	already recording.

2005-12-03  Pavel Roskin <proski at gnu.org>

	* programs/wineconsole/wineconsole.c:
	Fixed regression in wineconsole creation (curses backend).

2005-12-03  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_check:
	winapi_check: fully descend in included files to check for prototype.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix handling of INVOKE_PROPERTYGET flag in ITypeComp_fnBind.
	The INVOKE_PROPERTYGET flag shouldn't affect binding to variables; it
	should just affect which of a pair of [propget] and [propput]
	functions should be returned.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: global function/data cleanup
	Make some functions and a structure static since they are only used in
	one file.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: fixed regression (and simplified code!) for arguments
	printing in backtrace.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: fixed regression in 'info local' command.

2005-12-03  Aric Stewart <aric@codeweavers.com>

	* programs/wcmd/builtins.c:
	wcmd: mkdir recursive create
	In at least both win2k and winxp mkdir from the command prompt can
	recursively create full directory paths. This implements that
	functionality.

2005-12-03  Aric Cyr <aric.cyr@gmail.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl.h, dlls/opengl32/wgl_ext.c,
	  include/wingdi.h:
	Move standard WGL function declarations to wingdi.h.
	dlls/opengl32/wgl.h is now empty and no longer needed.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/usrmarshal.c, dlls/wined3d/surface.c, dlls/winspool/info.c,
	  tools/winapi/msvcmaker, tools/winapi/winapi_check_options.pm,
	  tools/winapi/winapi_extract, tools/winebuild/utils.c:
	Assorted spelling fixes.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	Move mapping (section) objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/timer.c, server/trace.c:
	Move timer objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/semaphore.c, server/trace.c:
	Move semaphore objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/kernel_private.h, dlls/kernel/sync.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/console.c, server/event.c, server/mutex.c,
	  server/named_pipe.c, server/object.h, server/process.c,
	  server/protocol.def, server/trace.c:
	Move event and mutex objects into directory name space.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Sync the WebBrowser's window size with document's window.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/objbase.h, tools/widl/header.c:
	Use the typedef'd declaration of IRpcStubBuffer and IRpcChannelBuffer
	in RPC _Stubs.
	Add IRpcStubBuffer and IRpcChannelBuffer declarations to objbase.h.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Reorder the virtual table definition so it's defined before it is used
	in widl header output.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Use interface instead of struct where appropriate in widl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/atl/atliface.idl:
	Fix the AtlAxWinInit() prototype.
	Also make it return FALSE to indicate failure instead of E_FAIL.
	Define AtlAxWinInit() and AtlAxCreateControl() in atliface.idl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/netapi32/ds.c, tools/winapi/win32.api:
	Better stick to the PSDK types and to the dsrole.h prototype.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	Fix __RPC_USER handling.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/parse.c, include/winldap.h, tools/winapi/win32.api:
	Better stick to the PSDK types.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/module.c, include/dbghelp.h:
	Add IMAGEHLP_MODULEW64.
	Add SymGetModuleInfoW64() and SymLoadModule64().

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Implemented scrolling during drag&drop for the shellview class.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Use sink in navigate_complete instead of ClientSite's IDispatch.

2005-12-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/oid.c:
	Implement more OID support functions.
	Use the exported OID support functions internally.
	Move OID support functions and stubs to a separate file.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/c_parser.pm, tools/winapi/winapi_parser.pm:
	Make winapi_check understand the interface keyword.

2005-12-02  Pavel Roskin <proski@gnu.org>

	* dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Es.rc,
	  dlls/commdlg/cdlg_Fi.rc, dlls/commdlg/cdlg_Fr.rc,
	  dlls/commdlg/cdlg_Hu.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Ja.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc:
	Improve script selection combobox in the font selection dialog - set
	height to 90 (the old value of 10 could only fit a single line) and
	remove CBS_OWNERDRAWFIXED flag to trim excessive height from the list
	items.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Added implementation of IConnectionPoint::Advise and Unadvise.

2005-12-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c,
	  dlls/wldap32/control.c, dlls/wldap32/delete.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c:
	Document DN and error handling functions.
	Try to stick to Wine's documentation format.

2005-12-02  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/wcmdmain.c:
	Avoid formatted output in a few more places where formatting is not
	really needed and output could be large enough to be truncated.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Sync window sizes.

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added a test for native PIDL format.

2005-12-02  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	Document many of the advpack functions.

2005-12-02  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	Handle DONTCARE flags on ChoosePixelFormat.
	DOUBLEBUFFER and STEREO are non-mandatory options (ie if not available
	find a compatible pixel format without). So try without if we cannot
	find a valid fbconfig with these options.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/parse.c,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_parse_extended_result{A,W}, ldap_parse_reference{A,W},
	ldap_parse_result{A,W}, ldap_parse_sort_control{A,W} and
	ldap_parse_vlv_control{A,W}.  Stub implementations for
	ldap_parse_page_control{A,W}.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.spec:
	Stub implementations for functions handling paged search results.
	Add some missing declarations.

2005-12-01  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/tests/domdoc.c:
	Make the node object aggregatable so that the element object (and in
	future all of the other node types) can use it.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Check for need to add area to the reserved list also on unmap.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Ignore the large address space flag when version is win9x.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/delete.c:
	Document the ldap_delete* functions.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/builtins.c, programs/wcmd/wcmdmain.c:
	Don't use formatted output in WCMD_setshow_sortenv.
	Don't use unsafe vsprintf in WCMD_output.

2005-12-01  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for the monochrome DIB with inverted colors.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/headers.c:
	Improved the CHECK_DEF macro to avoid code duplication.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	Make dump functions const.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added implementation of OLEIVERB_SHOW in DoVerb.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Remove broken return value handling code and that would reference
	memory beyond the end of the arguments array. Replace it with code
	that properly handles referencing the return type and setting the
	return type to VT_VOID when a dispinterface function doesn't have any
	return value.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c:
	Prefix signal definitions with MSVCRT_ to avoid conflicts with system
	headers.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c, dlls/ntdll/file.c, include/winsock2.h,
	  programs/regedit/treeview.c, server/registry.c:
	Fixed some compiler warnings on Darwin.

2005-12-01  Pavel Roskin <proski@gnu.org>

	* programs/notepad/dialog.c, programs/notepad/main.c:
	Improve font support in Notepad.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Introduce a variable "elemdesc" to eliminate some long common
	expressions.
	Move the contents of the second arguments loop inside the first.
	Move the MSFT_ReadLEDWords so that it is the last statement in the
	loop since it is one of the iterators.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't truncate large integer constants.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleInPlaceActiveObject stub implementation.

2005-12-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	Add a stub for AdvInstallFile.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/wininet/netconnection.c,
	  include/config.h.in:
	Cleanup SSL connections properly, do a few security checks in
	NETCON_secure_connect and display errors from SSL on failure. Don't
	use SSL_set_bio as SSL_set_fd is cleaner for us.

2005-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	Add a test for LB_SELITEMRANGE, make it pass under Wine.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl:
	Fix the entry attributes of the two module functions and uncomment
	LoadPicture, but comment out the defaultvalue attribute that causes
	widl to issue a warning.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	The pparamdescex of an ELEMDESC should only be copied if wParamFlags &
	PARAMFLAG_DHASDEFAULT.
	Make ITypeInfo_ReleaseVarDesc use TLB_FreeElemDesc.

2005-12-01  Steven Edwards <steven@codeweavers.com>

	* dlls/wldap32/search.c, dlls/wldap32/wldap32.spec:
	Add stubs for ldap_search_init_page[A/W].

2005-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/x11drv/winpos.c:
	Remove unused include X11/IntrinsicP.h.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added SetObjectRects implementation.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	Return S_OK in [On|Can]InPlaceActivate.
	Handle IOleDocumentSite in QueryInterface.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/freetype.c:
	Make WineEngGetFontData always return the used byte count.

2005-11-30  Peter Lemenkov <petro@mail.ru>

	* include/winuser.h:
	Added WS_EX_COMPOSITED.

2005-11-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add a test for RedrawWindow with an empty region/rectangle, make it
	pass under Wine.

2005-11-30  Willie Sippel <willie@zeitgeistmedia.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Added more Nvidia card IDs.

2005-11-30  Alexandre Julliard <julliard@winehq.org>

	* tools/winewrapper:
	Added support for Darwin DYLD_LIBRARY_PATH.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/object.h,
	  server/protocol.def, server/request.h, server/symlink.c,
	  server/trace.c:
	Implement symbolic link object in wineserver.
	Implement Nt[Create|Open|Query]SymbolicLinkObject.
	Change tests accordingly.

2005-11-30  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/shell32/shellpath.c:
	Added CSIDL_MYVIDEO|MYPICTURES|MYMUSIC to _SHRegisterUserShellFolders.

2005-11-30  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for RGB mask that corresponds to the visual's mask.

2005-11-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c:
	Document the ldap_control* functions.

2005-11-30  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlexec.c:
	Fix context menu handling for more than one entry in order to repair
	.lnk-file execution: Don't break at the first non-matching entry.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Added some checks on wglCreatContext to avoid problems (and
	SetLastErrors).

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	Added stub for CryptVerifyMessageSignature.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	ShowWindows(SW_SHOWMAXIMIZED) should ignore WS_MAXIMIZE window
	state. Change tests accordingly.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/user/win.c:
	New maximized visible window should be shown with
	ShowWindow(SW_SHOW).

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/window.c:
	CreateWindow should not activate invisible minimized or maximized
	windows.
	Add several tests to show the correct behavior.

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on windows 9x/ME.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the behaviour of HttpSendRequestEx when putting data into the
	lpvBuffer.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	Remove duplicated code by modifying HTTP_HttpSendRequest so that it
	can be used by both HttpSendRequest and HttpSendRequestEx.
	Also allow HttpSendRequestEx to be used asynchronously.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/netapi32/netapi32.c, include/lm.h, include/lmaccess.h,
	  include/lmserver.h, include/lmwksta.h:
	Add some prototypes to include/ for already existing functions in
	netapi32.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	Update win32.api to current cvs.
	Add __RPC_USER as a calling convention in winapi.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Add support for Intel drivers version string.
	Update default driver version (nvidia).

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/x11drv/xrender.c:
	Disable XRender if bit masks aren't valid.
	XRender code in the X11 driver will go into an infinite loop when the
	colour bit masks are 0, so disable XRender in this case.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/registry.c:
	The buffer sizes in the documentation for MsiDecomposeDescriptorW don't
	include the NULL terminator, so fix this.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Remove call to StrCatW by passing in NULL for lpszExtraInformation in
	the call to InternetCrackUrl, which concatenates the params onto the
	path.
	Some other minor cleanups.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Factor out code for doing ELEMDESC sizes and copies.
	Copy FUNCDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.
	Call VariantInit on newly allocated memory before calling VariantCopy.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac:
	Link to the reentrant version of libldap.

2005-11-29  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/iccvid/iccvid_Ko.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/rsrc.rc:
	Add Korean translations.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/main.c,
	  server/object.c, server/object.h, server/protocol.def,
	  server/request.c, server/request.h, server/trace.c:
	Implement directory object in wineserver.
	Implement Nt[Create|Open]DirectoryObject.
	Change tests accordingly.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Check for a valid module before attempting to read the export
	directory in LdrGetProcedureAddress.

2005-11-29  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	Clear the reference counter in WSACleanup, with regression test.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/compare.c:
	Document the ldap_compare* functions.

2005-11-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	Added support for vertex and pixel shader constants that have no type
	i.e. they haven't been set yet or are clear.

2005-11-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/ds.c,
	  dlls/netapi32/netapi32.spec, dlls/netapi32/tests/.gitignore,
	  dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/ds.c,
	  include/Makefile.in, include/dsrole.h:
	Added some stubbed Ds-calls
	Start of conformance tests for these Ds-calls.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Stub StackWalk64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/path.c, include/dbghelp.h:
	Added support for 'loading' virtual modules.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymGet{Next|Prev}Line64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	Now correctly checking calling down to 32 bit version.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	HttpSendRequestExA/W doesn't touch lpBuffersIn->Next, so simplify the
	code a bit.
	Modify test case to demonstrate this.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymGetModuleInfo64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/Makefile.in, dlls/ole32/ole32.spec,
	  dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/usrmarshal.c:
	Implement some user marshal functions and add tests.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	More lpszServerName -> lpszHostName fixes.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymUnloadModule64.

2005-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Returned versions are always initialized to zero, even on failure.
	Function always returns S_OK, even on failure.
	Copy the file to the temp directory if the file exists but isn't found
	by GetFileVersionInfoSize.
	If bVersion is FALSE, return the language and code page identifiers of
	the file, not the system.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix redirects from secure to non-secure and vice versa.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Implement ITypeInfo_Bind for typelibs.
	Fix some places where a returned object was AddRef'd.
	Make the search through implemented types work on all types, not just
	interfaces.

2005-11-29  Peter Lemenkov <petro@mail.ru>

	* include/shellapi.h:
	Added some definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	Fixed some bugs in MCI string parsing.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  include/dbghelp.h:
	Implemented SymLoadModuleEx.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	Replaced stack_get_frame with a pure symbol (and no longer stackframe)
	oriented API (stack_get_current_symbol).
	Reused the func name (stack_get_frame) for internal stack.c handling.

2005-11-29  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Made the Drag&Drop cursors' rubber band visible on a white background.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/bitblt.c, dlls/x11drv/graphics.c:
	Avoid including X11/Intrinsic.h.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	Added support for doing SetBitmapBits on a DIB section.

2005-11-29  James Hawkins <truiken@gmail.com>

	* include/advpub.h:
	Add ADN_DEL_UNC_PATHS define to advpub.h.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Change all SendAsyncCallback calls into the synchronous
	INTERNET_SendCallback where INTERNET_FLAG_ASYNC is already handled
	properly.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	Make IAdviseSink methods non-async and remove the IAsyncManager
	parameter hack that native COM used to use (but not any more). Async
	calls are an optimisation that we're not going to support in the near
	future.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Fixed crash in wglShareList.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h, dlls/dmusic/port.c:
	Fix implementation of IDirectMusic8Impl_CreatePort.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/cvconst.h:
	Added calling convention definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec, include/dbghelp.h:
	Added stub for dbghelp.SymRegisterCallback64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Add functions for doing a deep copy of a TYPEDESC into a flat buffer.
	Copy VARDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	Add a function to retrieve the MIDL_SERVER_INFO struct from an object.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c:
	The CLSID can be substituted by an IID present in one of the proxy
	file infos in NdrDllGetClassObject.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Return the correct error code from NdrProxyErrorHandler.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	Raise exceptions on failures.
	Replace references of pStubMsg->BufferEnd with RpcMsg->Buffer +
	pStubMsg->BufferLength.
	Fix buffer calculation when no interface data is marshaled to the
	stream.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix the overflow check to not depend on pStubMsg->BufferStart and
	pStubMsg->BufferEnd being valid, because they aren't filled in when
	using MIDL-generated server stubs.
	Don't set the pointer to NULL on unmarshaling because we may want to
	unmarshal the value to an existing pointer instead of allocating a new
	one.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	EnumChildWindows should return result from the callback.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Activate document object.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* include/shlobj.h:
	Remove unnecessary external variable declarations.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/iccvid/iccvid.spec, dlls/mciavi32/mciavi.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/midimap/midimap.c,
	  dlls/msacm/imaadp32/imaadp32.c, dlls/msacm/msadp32/msadp32.c,
	  dlls/msacm/msg711/msg711.c, dlls/msacm/pcmconverter.c,
	  dlls/msacm/winemp3/mpegl3.c, dlls/msrle32/msrle32.c,
	  dlls/msvidc32/msvidc32.spec, dlls/msvidc32/msvideo1.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winearts/arts.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/esound.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winemm.h, dlls/winmm/winenas/nas.c,
	  dlls/winmm/wineoss/oss.c:
	Fix all drivers DriverProc to conform to the DRIVERPROC definition.

2005-11-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	Fix parameter count on some stubs (thanks to Marcus Meissner for
	spotting that.)  Add a few more stubs.

2005-11-28  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/iccvid/iccvid_De.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/rsrc.rc:
	Add German resources.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c:
	Document the ldap_bind* functions.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Enhanced UnixFolder's IDropTarget implementation.
	Use STATIC_CAST macro more consistently.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	Preserve 16-byte stack alignment in 16-bit relays.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/relay.c:
	Enforce 16-byte stack alignment when returning from 16-bit code and
	when calling a register function.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/path.c, dlls/dbghelp/stack.c,
	  dlls/dplayx/dplayx_messages.c, dlls/imagehlp/integrity.c,
	  dlls/kernel/actctx.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/computername.c, dlls/kernel/debugger.c,
	  dlls/kernel/environ.c, dlls/kernel/except.c, dlls/kernel/file.c,
	  dlls/kernel/format_msg.c, dlls/kernel/global16.c,
	  dlls/kernel/instr.c, dlls/kernel/locale.c, dlls/kernel/module.c,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/process.c,
	  dlls/kernel/resource.c, dlls/kernel/sync.c, dlls/kernel/thread.c,
	  dlls/kernel/time.c, dlls/kernel/version.c, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/mcicda/mcicda.c, dlls/netapi32/wksta.c,
	  dlls/ntdll/atom.c, dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/path.c, dlls/ntdll/process.c, dlls/ntdll/reg.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlstr.c,
	  dlls/ntdll/sec.c, dlls/ntdll/server.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/thread.c, dlls/ntdll/time.c, dlls/ntdll/version.c,
	  dlls/ntdll/virtual.c, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/quartz/filesource.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/user/cursoricon.c, dlls/user/message.c, dlls/user/painting.c,
	  dlls/user/winpos.c, dlls/vmm.vxd/vmm.c, dlls/winedos/int2f.c,
	  dlls/winedos/vxd.c, dlls/wininet/internet.c, dlls/winmm/mmsystem.c,
	  dlls/winsock/socket.c, dlls/x11drv/dce.c, dlls/x11drv/winpos.c,
	  include/ntstatus.h, include/winnt.h, programs/rpcss/np_server.c,
	  programs/wcmd/wcmdmain.c, programs/winedbg/dbg.y,
	  programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  server/atom.c, server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/debugger.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/process.c, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/semaphore.c,
	  server/serial.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/window.c, server/winstation.c:
	Match PSDK STATUS_* definitions.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c,
	  dlls/msrle32/msrle_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c, include/vfw.h:
	Set both dwVersionICM and dwVersion to ICVERSION in Wine builtin
	codecs.

2005-11-28  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	Allow HttpEndRequest to process 302 and 301 redirects.  Append Host
	port if non standard on the redirect host header and make sure to
	append the extra information (parameters) and such to the location if
	present.  Additionally check to see if we are redirecting to https and
	if so set the appropriate port.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Added GetOverrideKeyPath and GetOptionKeyPath implementation.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Use GetUIObjectOf instead of BindToObject to get a IDropTarget object.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	Other code in shlexec.c (e.g. the extension handling code in
	ShellExecute_GetClassKey) expects sei->lpFile to not be enclosed in
	quotes.

2005-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	Documentation added for GetPrinterDriverDirectoryW + A.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/ddk/wdm.h:
	Add directory and symlink access rights.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add support for using secure (SSL/TLS) connections through a proxy
	server.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	Move the initiation of the SSL connection into a separate function.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	set_menu_item_text handles converting an empty menu item to a
	separator on its own, give it a chance to do its work in the
	MIIM_FTYPE case.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a host port field that preserves the requested port of the
	destination URL.

2005-11-28  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/usp10/usp10.c, include/usp10.h:
	Added some missing definitions in usp10.h.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/graphics.c:
	Handle an X error in X11DRV_ExtFloodFill().

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix "http://" prefix detection on the proxy URL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Make sure to fill out the MIDL_STUB_MESSAGE structure in
	NdrSendReceive like we do in NdrProxySendReceive.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant varying array functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant struct functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement FC_STRUCTPAD2 for complex types.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/gdi32.spec, dlls/gdi/palette.c:
	Add stub implementation for SetMagicColors().

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	Added AtlAxCreateControl stub implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Replace some useless checks in HTTP_AddProxyInfo with asserts.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleDocumentSite implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify and fix Set-Cookie handling.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement IOleObject_DoVerb function by running the object and then
	delegating to the remote IOleObject_DoVerb function.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Add functions for marshaling base types (ints, floats, etc.).

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Better windows handling.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h:
	Modified KeyStateToDropEffect macro to match native shellview's
	behaviour.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify HTTP_InsertProxyAuthorization.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/defaulthandler.c,
	  dlls/ole32/oleobj.c:
	Delegate advises to the remote object to enable the client to receive
	data change notifications.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	Extend conformance computation function to also compute variances.
	MSDN suggests that conformance and variance are pretty much the same,
	but there may be some subtleties to it.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added implementation of GetWindowContext.
	Added stub implementation of IOleInPlaceFrame interface.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/iccvid/.gitignore, dlls/msvidc32/.gitignore:
	Ignore generated rsrc.res.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Register the shell view itself as the drop target, not it's parent folder.
	Forward drag&drop method calls to the folder currently under the cursor.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Change some SendAsyncCallback calls to INTERNET_SendCallback as the
	tests show that the callbacks happen either synchronously or within an
	alternative asynchronous call.
	Remove a check for a NULL lpfnStatusCB that is already performed by
	INTERNET_SendCallback and add a comment about a difference to native.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add parsing of the Content-ID and Proxy-Connection headers.
	Sort the table of header to option number mappings correctly.
	Change a FIXME to a WARN because there are "X-..." headers that we
	aren't supposed to parse.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/imagehlp.h:
	Add some 64 bit definitions.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Stop reporting not having swapchain 0 as an error and add an internal
	variable instead of modifying a parameter.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	Correct some errors in the way vertex declarations for directx 8 are
	parsed and add offset support.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/iconcache.c:
	Load shortcut icon by resource id instead of by icon index.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call DefaultHandler_Stop if we fail to start the server running
	correctly and a few formatting fixes.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix NdrConformantArrayBufferSize to include the size of the
	conformance value.
	Make NdrConformantArrayMemorySize do something more useful, like
	actually return the required memory.
	Conformance offset can be negative and should only be two bytes.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvidc32/rsrc.rc:
	Add support for ICM_GETINFO in msvidc32 codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_En.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc:
	Add support for ICM_GETINFO in iccvid codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msrle32/msrle32.c, dlls/msvideo/msvideo_main.c:
	Fix several bugs in msrle32 preventing it to load.
	Remove a hack in ICOpen compensating a bug in msrle32.
	Use MSVFW32_hModule directly in ICCompressorChoose, and avoid a
	convoluted GWLP_HINSTANCE hack.

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/winmm/winmm_Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Correct the hot spot position of the drag&drop 'move' and 'link' cursors.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	Don't crash when parameters of Navigate2 are NULL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a new field "lpszHostName" to the session to track the host name
	of the HTTP server, as opposed to the server that we will connect to
	that could be a proxy server. Fixes the "Host:" header that we send to
	servers.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winmm.c:
	LoadLibrary16 is no longer exported by name, so do the lookup by its
	ordinal (when loading NE sibling).

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/cdrom.c:
	Handle IOCTL_DISK_CHECK_VERIFY which is synonym for
	IOCTL_STORAGE_CHECK_VERIFY.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Added stubs for DbgHelp functions: SymRegisterFunctionEntryCallback.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Correct the matrix sizes in software shaders and remove an erroneous
	parameter from lrp.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c:
	Ignore frequency requests in Desktop mode.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call the equivalent delegate function for all of the simple
	functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	We should always allocate in NdrConformantStringUnmarshal if the
	memory pointer is NULL.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/dinput/device.c:
	Handle DInput8 interfaces in device QueryInterface.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	Document the ldap_add* functions.

2005-11-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	If the driver doesn't support StretchBlt try to use StretchDIBits
	instead.

2005-11-28  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Correctly call HCR_GetFolderAttributes() in SHELL32_GetItemAttributes().
	Directly return the correct "My Computer" attributes in
	ISF_Desktop_fnGetAttributesOf().
	Remove "todo_wine" from the "My Computer" attributes test case.
	Add test case for retrieving the file system path from the
	CSIDL_PROGRAM_FILES PIDL using SHGetPathFromIDListW().

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* documentation/README.ko:
	Add a translation of the README.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	If a source directory doesn't exist, use the install root instead.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle the ^ character in MaskEdit controls.

2005-11-28  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmime/dmime_private.h, dlls/dmime/performance.c:
	Partial implementation of IDirectMusicPerformance8Impl_AddPort.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Initial stubbed implementation of UnixFolder's IDropTarget interface.

2005-11-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel/process.c:
	Initialize file_exists to 0 at exe load test, prevents mistaking of
	UTF-8 encoded exenames as builtins.

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/.gitignore, dlls/winspool/.gitignore, libs/.gitignore,
	  programs/avitools/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, tools/winegcc/.gitignore:
	Ignore symlink files too (needed for git).

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .cvsignore, .gitignore, dlls/.cvsignore, dlls/.gitignore,
	  dlls/activeds/.cvsignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.cvsignore, dlls/advapi32/.gitignore,
	  dlls/advapi32/tests/.cvsignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.cvsignore, dlls/advpack/.gitignore,
	  dlls/advpack/tests/.cvsignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.cvsignore, dlls/amstream/.gitignore,
	  dlls/atl/.cvsignore, dlls/atl/.gitignore, dlls/avicap32/.cvsignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.cvsignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.cvsignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.cvsignore,
	  dlls/capi2032/.gitignore, dlls/cards/.cvsignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.cvsignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.cvsignore,
	  dlls/comcat/.gitignore, dlls/comctl32/.cvsignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.cvsignore,
	  dlls/comctl32/tests/.gitignore, dlls/commdlg/.cvsignore,
	  dlls/commdlg/.gitignore, dlls/crtdll/.cvsignore,
	  dlls/crtdll/.gitignore, dlls/crypt32/.cvsignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.cvsignore,
	  dlls/crypt32/tests/.gitignore, dlls/cryptdll/.cvsignore,
	  dlls/cryptdll/.gitignore, dlls/ctl3d/.cvsignore,
	  dlls/ctl3d/.gitignore, dlls/d3d8/.cvsignore, dlls/d3d8/.gitignore,
	  dlls/d3d9/.cvsignore, dlls/d3d9/.gitignore, dlls/d3dim/.cvsignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.cvsignore, dlls/d3drm/.gitignore,
	  dlls/d3dx8/.cvsignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.cvsignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.cvsignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.cvsignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.cvsignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.cvsignore,
	  dlls/ddraw/tests/.gitignore, dlls/devenum/.cvsignore,
	  dlls/devenum/.gitignore, dlls/dinput/.cvsignore,
	  dlls/dinput/.gitignore, dlls/dinput/tests/.cvsignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.cvsignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.cvsignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.cvsignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.cvsignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.cvsignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.cvsignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.cvsignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.cvsignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.cvsignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.cvsignore,
	  dlls/dmusic32/.gitignore, dlls/dplay/.cvsignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.cvsignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.cvsignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.cvsignore, dlls/dpnhpast/.gitignore,
	  dlls/dsound/.cvsignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.cvsignore, dlls/dsound/tests/.gitignore,
	  dlls/dswave/.cvsignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.cvsignore, dlls/dxdiagn/.gitignore,
	  dlls/dxerr8/.cvsignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.cvsignore, dlls/dxerr9/.gitignore,
	  dlls/dxguid/.cvsignore, dlls/dxguid/.gitignore, dlls/gdi/.cvsignore,
	  dlls/gdi/.gitignore, dlls/gdi/tests/.cvsignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.cvsignore,
	  dlls/glu32/.gitignore, dlls/glut32/.cvsignore,
	  dlls/glut32/.gitignore, dlls/hhctrl.ocx/.cvsignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/iccvid/.cvsignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.cvsignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.cvsignore, dlls/ifsmgr.vxd/.gitignore,
	  dlls/imagehlp/.cvsignore, dlls/imagehlp/.gitignore,
	  dlls/imm32/.cvsignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.cvsignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.cvsignore, dlls/iphlpapi/tests/.gitignore,
	  dlls/itss/.cvsignore, dlls/itss/.gitignore, dlls/kernel/.cvsignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.cvsignore,
	  dlls/kernel/messages/.gitignore, dlls/kernel/tests/.cvsignore,
	  dlls/kernel/tests/.gitignore, dlls/lzexpand/.cvsignore,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/tests/.cvsignore,
	  dlls/lzexpand/tests/.gitignore, dlls/mapi32/.cvsignore,
	  dlls/mapi32/.gitignore, dlls/mapi32/tests/.cvsignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.cvsignore,
	  dlls/mciavi32/.gitignore, dlls/mcicda/.cvsignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.cvsignore,
	  dlls/mciseq/.gitignore, dlls/midimap/.cvsignore,
	  dlls/midimap/.gitignore, dlls/mlang/.cvsignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.cvsignore,
	  dlls/mlang/tests/.gitignore, dlls/mmdevldr.vxd/.cvsignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.cvsignore,
	  dlls/monodebg.vxd/.gitignore, dlls/mpr/.cvsignore,
	  dlls/mpr/.gitignore, dlls/msacm/.cvsignore, dlls/msacm/.gitignore,
	  dlls/msacm/imaadp32/.cvsignore, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/msadp32/.cvsignore, dlls/msacm/msadp32/.gitignore,
	  dlls/msacm/msg711/.cvsignore, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/tests/.cvsignore, dlls/msacm/tests/.gitignore,
	  dlls/msacm/winemp3/.cvsignore, dlls/msacm/winemp3/.gitignore,
	  dlls/mscms/.cvsignore, dlls/mscms/.gitignore,
	  dlls/mscms/tests/.cvsignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.cvsignore, dlls/msdmo/.gitignore, dlls/mshtml/.cvsignore,
	  dlls/mshtml/.gitignore, dlls/mshtml/tests/.cvsignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.cvsignore,
	  dlls/msi/.gitignore, dlls/msi/tests/.cvsignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.cvsignore,
	  dlls/msimg32/.gitignore, dlls/msisys/.cvsignore,
	  dlls/msisys/.gitignore, dlls/msnet32/.cvsignore,
	  dlls/msnet32/.gitignore, dlls/msrle32/.cvsignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.cvsignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt/tests/.cvsignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.cvsignore,
	  dlls/msvcrt20/.gitignore, dlls/msvcrt40/.cvsignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.cvsignore,
	  dlls/msvcrtd/.gitignore, dlls/msvcrtd/tests/.cvsignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvidc32/.cvsignore,
	  dlls/msvidc32/.gitignore, dlls/msvideo/.cvsignore,
	  dlls/msvideo/.gitignore, dlls/mswsock/.cvsignore,
	  dlls/mswsock/.gitignore, dlls/msxml3/.cvsignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.cvsignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/.cvsignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.cvsignore,
	  dlls/netapi32/tests/.gitignore, dlls/newdev/.cvsignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.cvsignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.cvsignore, dlls/ntdll/tests/.gitignore,
	  dlls/objsel/.cvsignore, dlls/objsel/.gitignore,
	  dlls/odbc32/.cvsignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.cvsignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.cvsignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.cvsignore, dlls/ole32/tests/.gitignore,
	  dlls/oleacc/.cvsignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.cvsignore, dlls/oleaut32/.gitignore,
	  dlls/oleaut32/tests/.cvsignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli/.cvsignore, dlls/olecli/.gitignore,
	  dlls/oledlg/.cvsignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.cvsignore, dlls/olepro32/.gitignore,
	  dlls/olesvr/.cvsignore, dlls/olesvr/.gitignore,
	  dlls/opengl32/.cvsignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.cvsignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.cvsignore, dlls/psapi/.gitignore,
	  dlls/psapi/tests/.cvsignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.cvsignore, dlls/qcap/.gitignore, dlls/quartz/.cvsignore,
	  dlls/quartz/.gitignore, dlls/quartz/tests/.cvsignore,
	  dlls/quartz/tests/.gitignore, dlls/rasapi32/.cvsignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.cvsignore,
	  dlls/riched20/.gitignore, dlls/richedit/.cvsignore,
	  dlls/richedit/.gitignore, dlls/rpcrt4/.cvsignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.cvsignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/.cvsignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.cvsignore,
	  dlls/rsabase/tests/.gitignore, dlls/rsaenh/.cvsignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.cvsignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/.cvsignore,
	  dlls/secur32/.gitignore, dlls/secur32/tests/.cvsignore,
	  dlls/secur32/tests/.gitignore, dlls/sensapi/.cvsignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.cvsignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.cvsignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/.cvsignore,
	  dlls/shdocvw/.gitignore, dlls/shdocvw/tests/.cvsignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.cvsignore,
	  dlls/shell32/.gitignore, dlls/shell32/tests/.cvsignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.cvsignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.cvsignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.cvsignore,
	  dlls/shlwapi/tests/.gitignore, dlls/snmpapi/.cvsignore,
	  dlls/snmpapi/.gitignore, dlls/stdole2.tlb/.cvsignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.cvsignore,
	  dlls/stdole32.tlb/.gitignore, dlls/sti/.cvsignore,
	  dlls/sti/.gitignore, dlls/strmiids/.cvsignore,
	  dlls/strmiids/.gitignore, dlls/tapi32/.cvsignore,
	  dlls/tapi32/.gitignore, dlls/twain/.cvsignore, dlls/twain/.gitignore,
	  dlls/unicows/.cvsignore, dlls/unicows/.gitignore,
	  dlls/url/.cvsignore, dlls/url/.gitignore, dlls/urlmon/.cvsignore,
	  dlls/urlmon/.gitignore, dlls/urlmon/tests/.cvsignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.cvsignore,
	  dlls/user/.gitignore, dlls/user/resources/.cvsignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.cvsignore,
	  dlls/user/tests/.gitignore, dlls/usp10/.cvsignore,
	  dlls/usp10/.gitignore, dlls/uuid/.cvsignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.cvsignore, dlls/uxtheme/.gitignore,
	  dlls/vdhcp.vxd/.cvsignore, dlls/vdhcp.vxd/.gitignore,
	  dlls/vdmdbg/.cvsignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.cvsignore, dlls/version/.gitignore,
	  dlls/version/tests/.cvsignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.cvsignore, dlls/vmm.vxd/.gitignore,
	  dlls/vnbt.vxd/.cvsignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.cvsignore, dlls/vnetbios.vxd/.gitignore,
	  dlls/vtdapi.vxd/.cvsignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.cvsignore, dlls/vwin32.vxd/.gitignore,
	  dlls/win32s/.cvsignore, dlls/win32s/.gitignore,
	  dlls/winaspi/.cvsignore, dlls/winaspi/.gitignore,
	  dlls/winecrt0/.cvsignore, dlls/winecrt0/.gitignore,
	  dlls/wined3d/.cvsignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.cvsignore, dlls/winedos/.gitignore,
	  dlls/wineps/.cvsignore, dlls/wineps/.gitignore,
	  dlls/wininet/.cvsignore, dlls/wininet/.gitignore,
	  dlls/wininet/tests/.cvsignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.cvsignore, dlls/winmm/.gitignore,
	  dlls/winmm/joystick/.cvsignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/mciwave/.cvsignore, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/tests/.cvsignore, dlls/winmm/tests/.gitignore,
	  dlls/winmm/wavemap/.cvsignore, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/winealsa/.cvsignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.cvsignore, dlls/winmm/winearts/.gitignore,
	  dlls/winmm/wineaudioio/.cvsignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/wineesd/.cvsignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.cvsignore, dlls/winmm/winejack/.gitignore,
	  dlls/winmm/winenas/.cvsignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.cvsignore, dlls/winmm/wineoss/.gitignore,
	  dlls/winnls/.cvsignore, dlls/winnls/.gitignore,
	  dlls/winsock/.cvsignore, dlls/winsock/.gitignore,
	  dlls/winsock/tests/.cvsignore, dlls/winsock/tests/.gitignore,
	  dlls/winspool/.cvsignore, dlls/winspool/.gitignore,
	  dlls/winspool/tests/.cvsignore, dlls/winspool/tests/.gitignore,
	  dlls/wintab32/.cvsignore, dlls/wintab32/.gitignore,
	  dlls/wintrust/.cvsignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.cvsignore, dlls/wldap32/.gitignore,
	  dlls/wow32/.cvsignore, dlls/wow32/.gitignore,
	  dlls/wsock32/.cvsignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.cvsignore, dlls/wtsapi32/.gitignore,
	  dlls/x11drv/.cvsignore, dlls/x11drv/.gitignore,
	  documentation/.cvsignore, documentation/.gitignore, fonts/.cvsignore,
	  fonts/.gitignore, include/.cvsignore, include/.gitignore,
	  include/wine/.cvsignore, include/wine/.gitignore, libs/.cvsignore,
	  libs/.gitignore, libs/port/.cvsignore, libs/port/.gitignore,
	  libs/unicode/.cvsignore, libs/unicode/.gitignore,
	  libs/wine/.cvsignore, libs/wine/.gitignore, libs/wpp/.cvsignore,
	  libs/wpp/.gitignore, loader/.cvsignore, loader/.gitignore,
	  programs/.cvsignore, programs/.gitignore,
	  programs/avitools/.cvsignore, programs/avitools/.gitignore,
	  programs/clock/.cvsignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.cvsignore, programs/cmdlgtst/.gitignore,
	  programs/control/.cvsignore, programs/control/.gitignore,
	  programs/eject/.cvsignore, programs/eject/.gitignore,
	  programs/expand/.cvsignore, programs/expand/.gitignore,
	  programs/explorer/.cvsignore, programs/explorer/.gitignore,
	  programs/hh/.cvsignore, programs/hh/.gitignore,
	  programs/msiexec/.cvsignore, programs/msiexec/.gitignore,
	  programs/notepad/.cvsignore, programs/notepad/.gitignore,
	  programs/progman/.cvsignore, programs/progman/.gitignore,
	  programs/regedit/.cvsignore, programs/regedit/.gitignore,
	  programs/regsvr32/.cvsignore, programs/regsvr32/.gitignore,
	  programs/rpcss/.cvsignore, programs/rpcss/.gitignore,
	  programs/rundll32/.cvsignore, programs/rundll32/.gitignore,
	  programs/start/.cvsignore, programs/start/.gitignore,
	  programs/taskmgr/.cvsignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.cvsignore, programs/uninstaller/.gitignore,
	  programs/view/.cvsignore, programs/view/.gitignore,
	  programs/wcmd/.cvsignore, programs/wcmd/.gitignore,
	  programs/wineboot/.cvsignore, programs/wineboot/.gitignore,
	  programs/winebrowser/.cvsignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.cvsignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.cvsignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.cvsignore, programs/winedbg/.gitignore,
	  programs/winefile/.cvsignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.cvsignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.cvsignore,
	  programs/winemine/.gitignore, programs/winepath/.cvsignore,
	  programs/winepath/.gitignore, programs/winetest/.cvsignore,
	  programs/winetest/.gitignore, programs/winevdm/.cvsignore,
	  programs/winevdm/.gitignore, programs/winhelp/.cvsignore,
	  programs/winhelp/.gitignore, programs/winver/.cvsignore,
	  programs/winver/.gitignore, server/.cvsignore, server/.gitignore,
	  tools/.cvsignore, tools/.gitignore, tools/widl/.cvsignore,
	  tools/widl/.gitignore, tools/winapi/.cvsignore,
	  tools/winapi/.gitignore, tools/winebuild/.cvsignore,
	  tools/winebuild/.gitignore, tools/winedump/.cvsignore,
	  tools/winedump/.gitignore, tools/winegcc/.cvsignore,
	  tools/winegcc/.gitignore, tools/wmc/.cvsignore, tools/wmc/.gitignore,
	  tools/wrc/.cvsignore, tools/wrc/.gitignore:
	Renamed all .cvsignore files to .gitignore.

2005-11-24  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/main.c, tools/wine.inf:
	Also handle mailto: urls.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/tests/printf.c:
	Add some tests for _fcvt.

2005-11-24  Marcus Meissner <meissner@suse.de>

	* include/usp10.h:
	extern "C" wrappers for usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	Make all source directories at the root of the install.

2005-11-24  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/lsa.c:
	Return a real error in LsaLookupSids.

2005-11-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/Makefile.in:
	Install usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/ber.c:
	Fix a compile error.

2005-11-24  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl_ext.c:
	Fix incorrect implementation of WGL_COLOR_BITS_ARB.

2005-11-24  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	Add more declarations.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/rebar.c, dlls/comctl32/tooltips.c, dlls/d3d8/shader.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/quartz/filesource.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h,
	  dlls/shell32/shellpath.c, dlls/user/edit.c,
	  dlls/user/tests/sysparams.c, dlls/uxtheme/draw.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/winedos/dosaspi.c, dlls/wineps/download.c, dlls/wininet/ftp.c,
	  dlls/wininet/tests/http.c, dlls/winspool/tests/info.c,
	  dlls/wintab32/context.c, programs/progman/En.rc,
	  programs/winedbg/gdbproxy.c, tools/widl/write_msft.c,
	  tools/wrc/translation.c:
	Assorted spelling fixes.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/resource.c, dlls/usp10/usp10.c, dlls/wininet/internet.c:
	Documentation tweaks to make winapi_check happy.
	Also specify the documented spec file entry.

2005-11-23  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/msvideo/msvfw32_De.rc, dlls/msvideo/rsrc.rc:
	Add German resource file for msvideo.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/control.c, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, include/winldap.h,
	  tools/winapi/win32.api:
	winldap.h should include windeh.f and schnlsp.h.
	Enclose the API definitions in an extern "C" section and define
	LDAPAPI.
	Better stick to the types defined by the PSDK.
	Fix the ldap_create_vlv_control*() prototypes.
	Update win32.api.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/relay16.c, dlls/msvcrt/misc.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c,
	  dlls/user/winproc.c, libs/wine/port.c, loader/preloader.c,
	  tools/winebuild/import.c:
	Preserve 16-byte stack alignment in the various assembly
	functions. Needed for MacOSX.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvideo/msvfw32_En.rc, dlls/msvideo/msvfw32_Ko.rc,
	  dlls/msvideo/rsrc.rc:
	Add Korean translation.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/tests/advpack.c:
	Add trailing '\n' to trace() call.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	Add LPADDRINFO, missing IP_* defines and missing APIs.
	Enclose the API definitions in an extern "C" section.
	Define function pointer types if INCL_WINSOCK_API_TYPEDEFS is defined.
	Better stick to the types defined by the PSDK.
	Update win32.api.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/commdlg/cdlg_Ko.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_res.rc,
	  programs/taskmgr/Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Use the ANSI codepage in IShellFolder::GetDisplayNameOf.

2005-11-23  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Be more strict and verbose while testing
	GetStandardColorSpaceProfile().

2005-11-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/sysparams.c:
	Make test_SPI_SETBORDER less likely to permanently change visual
	settings:
	- use smaller border widths values for testing;
	- provide a work around for a Windows XP feature that made the tests
	change the caption width.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_desktop.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in Desktop
	folder.
	Fixed a handle leak in case of failing AddToEnumList call.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_mycomp.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in
	MyComputer.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize OLE instead of just COM, in order to enable Drag & Drop.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/filedlg.c:
	Initialize OLE instead of COM only in order to enable Drag and Drop.

2005-11-23  Andrew Webb <andrew7webb@comcast.net>

	* include/commctrl.h:
	Define DateTime_SetMonthCalColor.

2005-11-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/tests/cert.c:
	Fix some memory leaks.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c:
	Fixed some broken code that was causing compiler warnings.

2005-11-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/tests/domdoc.c:
	Release a stray node.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.2.

----------------------------------------------------------------
2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	Fixes for FormatCharDlgProc16:
	- properly store the ChooseFont pointer, use a window property as the
	A and W functions do;
	- handle other messages then WM_INITDIALOG and WM_MEASUREITEM as well.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	HttpEndRequest does not actually send an extra NULL byte at the end of
	the request. Help from Rob Shearman on this one.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/volume.c:
	Don't try to set the label in the superblock of FAT filesystems, that
	doesn't do the right thing anyway.

2005-11-22  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Corrects an error in the _m3xm3 shader function in pixel and vertex
	shaders.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/.cvsignore, dlls/msvideo/Makefile.in,
	  dlls/msvideo/drawdib.c, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc:
	Add a semi-functional ICCompressorChoose implementation.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	GetSystemMetrics fixes with corresponding tests.

2005-11-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/event.c, server/fd.c, server/file.c,
	  server/handle.c, server/hook.c, server/mailslot.c, server/mapping.c,
	  server/mutex.c, server/named_pipe.c, server/object.c,
	  server/object.h, server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/semaphore.c, server/serial.c,
	  server/signal.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	Add name_lookup function in object_ops.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	In CFn_CHOOSEFONT16to32W fix the conversion of the lpTemplateName and
	the lpszStyle fields.

2005-11-22  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in:
	No need to link against shell32 or user32.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Fix some logic to allow HTTP_ADDREQ_FLAG_ADD to replace existing
	headers. Also adding a test for some header adding flags.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	Use struct unicode_str instead of null-terminated strings where
	possible, and remove constraints on total key path length.

2005-11-22  Robert Lunnon <bobl@optushome.com.au>

	* server/event.c, server/mutex.c, server/object.c, server/semaphore.c,
	  server/timer.c:
	Add stdarg.h where missing.

2005-11-22  Marcus Meissner <meissner@suse.de>

	* dlls/winsock/socket.c:
	EAI_NONAME -> WS_EAI_NODATA, check for EAI_NONAME and EAI_NODATA.

2005-11-22  Steven Edwards <winehacker@gmail.com>

	* dlls/ntdll/version.c:
	Correct URL for version infomation database website.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/dc.c:
	Add a test showing that SaveDC after GetDC should return 1.

2005-11-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	Create window in SetClientSite and return it in
	IOleInPlaceSite::GetWindow.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the sizes of some of the parameters passed into the callback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	Rename SendAsyncCallback to INTERNET_SendCallback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix an incorrect entry in the HTTP header field table causing broken
	Location field parsing.

2005-11-22  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Exit test after first TranslateInfString() failure, which seems to be
	NT3.51 specific.

2005-11-21  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	Implement a pixel shader parser and cross compiler. All version of
	shaders up to 3 should be parsed correctly, but only shaders 1-1.4
	will be cross compiled.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/event.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/semaphore.c, server/timer.c, server/trace.c,
	  server/winstation.c:
	Return correct error on name collision when creating new named
	objects.
	Check for correct error in affected places.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/virtual.c:
	Kernel32 should create named objects with OBJ_OPENIF flag set.
	Handle STATUS_OBJECT_NAME_EXISTS explicitly as it's not mapped with
	RtlNtStatusToDosError.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc, programs/wcmd/Ko.rc:
	Update Korean translations.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/drive.c:
	Only set label and serial number when they are actually changed.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/wine/server_protocol.h,
	  server/mailslot.c, server/protocol.def, server/trace.c:
	Fixed handling of mailslot read timeout to avoid compiler warnings.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/win.c:
	Choose what window styles to dump (WS_GROUP/WS_TABSTOP vs.
	WS_MINIMIZEBOX/WS_MAXIMIZEBOX) based on the WS_CHILD style set.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c:
	More Object Manager tests.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Implement HttpSendRequestEx and HttpEndRequest. Restructure, breaking
	some things out of HTTP_SendRequestW to avoid duplicate code.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/crypt32/encode.c:
	Don't redefine ASN_OCTETSTRING, it's already defined in snmp.h.

2005-11-21  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	SHGetFileInfoW(): handle SHGFI_LINKOVERLAY and SHGFI_OVERLAYINDEX.
	SHMapPIDLToSystemImageListIndex(): determine overlay flag for
	PidlToSicIndex() and return -1 in error cases.
	Read shell overlay icon settings from registry to allow icon
	overrides.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/locale.c:
	Fix bogus unreal code page messages in _setmbcp().

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	Do not forward _mbccpy to strcpy.
	Remove the error message in _mbccpy, it is not an error.

2005-11-21  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	Improved word wrapping and tab key handling.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advpack/advpack.c, include/advpub.h:
	Add/correct prototypes for some already defined functions in advpack.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c, dlls/wldap32/winldap_private.h,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_create_vlv_control{A,W},
	ldap_encode_sort_control{A,W}.
	Add a stub for ldap_create_page_control{A,W}.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c, include/aclapi.h,
	  include/winsvc.h, tools/winapi/win32.api:
	Add/correct prototypes for some already defined functions in
	advapi32. Correct spec file entry for GetSecurityInfoExW.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winstation.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/winstation.c:
	Replace inherit flag with object attributes in winstation and desktop
	create & open. Use OBJ_OPENIF flag to create winstation & desktop.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	Fix _mbsspn() with conformance tests.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/hhctrl.ocx/Nl.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/rsrc.rc, dlls/winspool/Nl.rc, dlls/winspool/winspool.rc,
	  programs/taskmgr/De.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/taskmgr.rc:
	Added Dutch translations.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/start/Ko.rc,
	  programs/winecfg/Ko.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	Print scroll and clip rectangles on the ScrollDC entry.

2005-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	Don't try waiting for the service process to start if the
	CreateProcess call failed.

2005-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Loop around calling RegQueryValue until we have a big enough string
	for both the name and the value.

2005-11-21  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/dochost.c:
	Added GetHostInfo implementation.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.c, include/lmaccess.h:
	Fix some prototypes to match the PSDK.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/oldconfig.c:
	- ANSI SCSI revision is a hex number.
	- Be more verbose with parser ERRs.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mswsock/mswsock.spec, dlls/rpcrt4/rpcrt4.spec:
	Mark some functions as implemented in the spec files.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Create new drives with autodetect type.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/tests/file.c:
	Minor MSVCRT test changes:
	- add two invalid parameter checks for fopen(),
	- rearrange test sequence into two parts (low-level and stream I/O),
	- break long line.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	Fix the build without openldap.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wincrypt.h:
	Add prototypes for some already defined functions in crypt32.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/internet.c:
	Implement the use of NETCON_send for HTTP connections when in
	InternetWriteFile.

2005-11-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on NT, 2K and XP, make some errors more verbose.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winmm/wineoss/audio.c:
	Break from the SNDCTL_DSP_CHANNELS loops on first error instead of
	continuing with even higher channels numbers.

2005-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	Fixed typo in ws_sockaddr_u2ws().

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.spec:
	Avoid using deprecated openldap functions.
	Implement ldap_sslinit{A,W}, improve cldap_open{A,W}.
	Add stub implementation for ldap_startup and ldap_stop_tls_s.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	Native dbghelp doesn't provide names for basic type, so added relevant
	basic type names in winedbg.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	There is no need to resize our own fake dialog to match the parent, it
	doesn't have controls anyway.

2005-11-18  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Don't call unicode functions of file API as they fail on Win9x.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* server/console.c, server/event.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/request.h, server/semaphore.c,
	  server/timer.c, server/user.h, server/winstation.c:
	Added a struct unicode_str to encapsulate object names.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/search.c, dlls/wldap32/value.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	Centralized calls for SymSetContext, we only do it when we change the
	current stack frame, and no longer every time we look up local symbols
	on current stack

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	Avoid setting the context before the thread has started running, it's
	broken on most Windows versions.

2005-11-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Ref count the xmlDocPtr.
	If two nodes refer to the same xmlNodePtr don't return same object.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	Move print_func_and_args to stack.c, where it belongs.

2005-11-18  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/user/static.c:
	Fix vertical text alignment in static controls.

2005-11-18  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/tests/.cvsignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/header.c:
	Added header control tests.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	- now storing frames information in thread structure
	- frames are cached after each thread stops execution
	- reimplemented backtrace on top of this

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/locale.c:
	Added a few more Unicode digits from Unicode version 4.1.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/c_037.c, libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20866.c,
	  libs/unicode/c_20932.c, libs/unicode/c_21866.c,
	  libs/unicode/c_28591.c, libs/unicode/c_28592.c,
	  libs/unicode/c_28593.c, libs/unicode/c_28594.c,
	  libs/unicode/c_28595.c, libs/unicode/c_28596.c,
	  libs/unicode/c_28597.c, libs/unicode/c_28598.c,
	  libs/unicode/c_28599.c, libs/unicode/c_28600.c,
	  libs/unicode/c_28603.c, libs/unicode/c_28604.c,
	  libs/unicode/c_28605.c, libs/unicode/c_28606.c, libs/unicode/c_424.c,
	  libs/unicode/c_437.c, libs/unicode/c_500.c, libs/unicode/c_737.c,
	  libs/unicode/c_775.c, libs/unicode/c_850.c, libs/unicode/c_852.c,
	  libs/unicode/c_855.c, libs/unicode/c_856.c, libs/unicode/c_857.c,
	  libs/unicode/c_860.c, libs/unicode/c_861.c, libs/unicode/c_862.c,
	  libs/unicode/c_863.c, libs/unicode/c_864.c, libs/unicode/c_865.c,
	  libs/unicode/c_866.c, libs/unicode/c_869.c, libs/unicode/c_874.c,
	  libs/unicode/c_875.c, libs/unicode/c_878.c, libs/unicode/c_932.c,
	  libs/unicode/c_936.c, libs/unicode/c_949.c, libs/unicode/c_950.c,
	  libs/unicode/casemap.c, libs/unicode/wctype.c:
	Updated codepage tables to Unicode version 4.1.

2005-11-18  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/serialui/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/wineps/wps_Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/cmdlgtst/cmdlgr.rc:
	Update Korean translations.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	Add another test for Z order of child windows.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel/vxd.c:
	Use case insensitive comparison to check file extensions.

2005-11-18  Peter Beutner <p.beutner@gmx.net>

	* dlls/x11drv/opengl.c:
	Fix wrong use of the PFD_GENERIC_ACCELERATED flag. It indicates that
	the selected pixel format lacks full hardware acceleration and only a
	few parts are accelerated. So don't always set it but only if the X
	server actually reports that the selected pixel format is not fully
	accelerated.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Free ConnectionPoint objects (fix memory leak).

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Ensures, when we cannot demangle the string, to return the mangled
	name instead of a NULL pointer.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/symbol.c, programs/winedbg/winedbg.c:
	Now returning correct symbol flags (as native does) for function pmts
	& locals in dbghelp.
	Modified winedbg accordingly.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	If SANE returns empty device list treat it as an error.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/registrar.c:
	Fix parsing '{' char.

2005-11-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h:
	Handle failure on Windows 95 properly.
	Make two functions available to all files.
	Make format_string() const correct.

2005-11-17  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	Implemented getaddrinfo(), including full mapping of struct addrinfo
	between UNIX and Windows. Based on a patch by Mike Hearn.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/type.c, programs/winedbg/dbg.y,
	  programs/winedbg/types.c:
	Dbghelp describes the types of function arguments with a specific
	symbol-type (symt) which links both to arguments' type and to function
	prototype
	- added this new type to dbghelp
	- implemented its use in winedbg

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  programs/winedbg/break.c, programs/winedbg/expr.c,
	  programs/winedbg/memory.c, programs/winedbg/symbol.c,
	  programs/winedbg/types.c:
	SymGetType(...,TI_GET_LENGTH,...) requires a 64 bit parameter, not a
	32 bit one.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/cpmap.pl:
	Only update modified files.

2005-11-17  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Improve IConnectionPoint handling.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Disable support for creation FMT_Unknown textures. This gets most of
	the d3d8 demos from www.codesampler.com working.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/cpmap.pl, libs/unicode/wctype.c:
	Remove some incompatibilities in the wctype table by updating the
	space, blank and cntrl exceptions and fixing the type given to
	characters in the "Zl" and "Zp" classes.

2005-11-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Return false if index is out of bounds in GetItemT.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/explorer.c:
	Fixed invalid C syntax.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/profile.c:
	The BOM doesn't need a DWORD sized variable, only a WCHAR one.
	Don't increment the szFile pointer since we removed the BOM earlier
	and it will cause the first real character of the INI file to be
	skipped.

2005-11-17  Martin Fuchs <martin-fuchs@gmx.net>

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	Use command line for initial directory selection.
	Remove useless hwndParent variable.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Clear the z and stencil buffers at the end of the scene, this fixes a
	problem with the solid node bsp demo from www.codesampler.com as well
	as a lot of blank screens in some other demos.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/tests/cpp.c:
	Provide a sample of the joy of MSC symbol mangling.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	When a symbol name already contains a module name, we shouldn't search
	in other modules.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h:
	Simplification of lex's input reading.

2005-11-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/monitor.c:
	Made test loadable on win95 again (EnumDisplayDevicesA not present).

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/dochost.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added stub implementation of IDocHostUIHandler.

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmhst.idl:
	Added IHTMLWindow forward declaration.

2005-11-17  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to cvs.

2005-11-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	Fix _fcloseall() return value.
	Improve some trace messages.
	Add tests for fopen(), fclose(), _fcloseall().
	Stricten some checks of _unlink().

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added OLEIVERB_INPLACEACTIVATE implementation in IOleObject::DoVerb.

2005-11-16  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/explorer/.cvsignore, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c:
	Beginnings of an explorer.exe replacement that wraps the existing
	winefile program.

2005-11-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	Added ability to execute commands from a file passed on command line
	(through --file option).
	Use that feature to get rid of arg_command hack (--command option now
	creates a temporary file).

2005-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/msg.c:
	Add a test for some edit control behaviours, make it pass under Wine.

2005-11-16  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wavemap/wavemap.c:
	Only convert bits per sample between different encoding formats.

2005-11-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c, include/ws2tcpip.h:
	Added mapping between unix and windows sockaddr_in6(_old) and
	sockaddr_in. Added address family, socket type mappers.

2005-11-16  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	- Improve callback to give context sensitive information about the
	different statuses and print the thread ID that it was called from.
	- Replace the busy waiting on the "goon" flag with an event.
	- Replace hard coded numbers with more informative constants
	throughout the InternetReadFile test.
	- Add tests for InternetReadFileExA.
	- Fix the error value from calling InternetReadFile with a NULL handle
	as indicated by the test.

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	Added IOleInPlaceSite stub implementation.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add timezone information to the registry.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	We shouldn't pass the struct hostent returned from gethostbyname as
	it's not thread-safe and isn't needed anyway.

2005-11-15  Ken Thomases <ken@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	Updated context definitions for the latest Darwin/x86.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Correct the size of a callback parameter.
	Fix the declaration of INTERNET_WorkerThreadFunc.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Convert MsiEnumComponentQualifiers to use msi_strcpy_to_awstring.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/urlcache.c:
	Fixed Unicode buffer size bug in CreateUrlCacheEntryW.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/registry.c, include/msi.h:
	Fix function prototype and spec file entry for
	MsiEnumComponentQualifiers.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/comctl32/header.c:
	Implement implement header callback support (HDN_GETDISPINFO notification):
	- better factorisation
	- unicode fixes

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/tests/url.c:
	Don't crash if BindToStorage fails.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Only return ERROR_MORE_DATA if there's a buffer to copy a result
	into.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/focus.c:
	Do not change focus if the being activated window is no longer
	active.

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/drive.c:
	Made test loadable on NT 3.51 again (GetDiskFreeSpaceExA not present).

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	Some extra tests for GetPrinterDriverDirectory.
	Display a TRACE when the Service "spooler" is not running (NT).

2005-11-15  Cihan Altinay <cihan@uq.edu.au>

	* dlls/kernel/comm.c:
	Disable PARMRK input flag of serial ports.

2005-11-15  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/mshtml/Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/taskmgr/Ko.rc,
	  programs/uninstaller/Ko.rc, programs/view/Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c:
	Use proper asm name for external functions.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/sec.c, dlls/ntdll/tests/rtl.c:
	Add a test for RtlAllocateAndInitializeSid, make it pass under Wine.

2005-11-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Beginning implementation of Navigate2.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	-> on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec, include/usp10.h:
	Add stubs around ScriptStringAnalyse to avoid PAF crash.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	INTERNET_STATUS_HANDLE_CREATED notifications just send the handle, not
	an INTERNET_ASYNC_RESULT structure.
	The source handle in HTTP_Connect should be the parent's handle.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	SSL doesn't need to use a different socket to unsecure communications.

2005-11-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Corrected last error information.
	Make sure we can run the tests on win9x.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	Set the Installed property if the product is already installed.

2005-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/input.c, server/queue.c:
	Added support for the QS_ALLPOSTMESSAGE flag.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	Beginning of true BindToStorage implementation.

2005-11-14  Huw Davies <huw@codeweavers.com>

	* tools/widl/header.c:
	Prefix [putref] property names with putref_.

2005-11-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Fix SysparametersInfoA( SPI_SETICONMETRICS), the A<->W conversion was
	rather broken.
	Make the SPI_{G|S}ETICONMETRICS functions more consistent with those
	for SPI_ICON{HORIZONTAL|VERTICAL}SPACING, SPI_{G|S}ICONTITLEWRAP and
	SPI_{G|S}ICONTITLELOGFONT.
	Accordingly extend the corresponding tests.

2005-11-14  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	Undname: Allow more then one coded character in demangle_datatype.

2005-11-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Add default version information.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/pipe.c, dlls/ntdll/file.c:
	NtReadFile: now returning correct status in NtReadFile for EOF
	conditions (on files) and broken pipe (on named pipes).

2005-11-14  Peter Beutner <p.beutner@gmx.net>

	* dlls/gdi/dib.c, dlls/gdi/tests/bitmap.c:
	When creating DIBs with a color depth <= 8, always set biClrUsed field
	to the number of entries in the color table.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Empty strings are not equal to any number, so all comparisons against
	them fail except for tests for non-equalness.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Fix an intermittent lockup with ATI's driver, I expect the problem is
	trying to clear the display before it's visible. Also correct the
	clear alpha value.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	Added get_protocol_iface internal function and use it in
	get_protocol_info.

2005-11-14  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/surface_main.c:
	Use the front buffer palette for DC operations on off-screen buffers.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Get the version and language ID of ADVPACK.DLL too.

2005-11-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/surface_dib.c:
	Fix the default value for keylow in DIB_DirectDrawSurface_Blt.
	Unset DDBLT_DDFX when lpbltfx is NULL / contains no dwDDFX.

2005-11-14  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/avifil32/rsrc.rc, dlls/mpr/mpr.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mshtml/Ko.rc, dlls/mshtml/rsrc.rc,
	  dlls/msi/msi.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/rsrc.rc, dlls/serialui/Ko.rc,
	  dlls/serialui/serialui_rc.rc, dlls/shdocvw/Ko.rc,
	  dlls/shdocvw/shdocvw.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/winspool.rc, dlls/wldap32/wldap32.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/notepad/Ko.rc,
	  programs/notepad/rsrc.rc, programs/regedit/Ko.rc,
	  programs/start/Ko.rc, programs/start/rsrc.rc, programs/taskmgr/Ko.rc,
	  programs/taskmgr/taskmgr.rc, programs/uninstaller/Ko.rc,
	  programs/uninstaller/rsrc.rc, programs/view/Ko.rc,
	  programs/view/viewrc.rc, programs/wcmd/Ko.rc,
	  programs/wcmd/wcmdrc.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/winecfg.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_res.rc, programs/winefile/Ko.rc,
	  programs/winefile/rsrc.rc, programs/winemine/Ko.rc,
	  programs/winemine/rsrc.rc:
	Add Korean translations.

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/iphlpapi/iphlpapi_main.c:
	Add, reformat API documentation.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Fix comparison of empty properties to numbers and add test cases.

2005-11-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	Fix message tests to run cleanly on Windows XP SP1.

2005-11-14  Edgar Hucek <gimli@gentoo.org>

	* dlls/winmm/joystick/joystick.c:
	Unicode compile fix.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/thread.c:
	Fix set_test_val function declaration to ensure stack is left
	untouched.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Fix a test for InternetCreateUrlA as no Windows platform sets last
	error here. Make InternetCreateUrlA pass the test.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Don't call missing API function.

2005-11-14  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/ddraw_utils.c, dlls/ddraw/surface_dib.c:
	Add DDBLT_DONOTWAIT flag.
	Separate DDBLT_WAIT and DDBLT_ASYNC fixme in Blt method.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c:
	Move BindToStorage hack to the separated function.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/cubetexture.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/stateblock.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volumetexture.c:
	Remove the setting of the result pointer to NULL in creates, tests
	show that windows doesn't set the result to NULL on error.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c:
	Init wShowWindow in RTL_USER_PARAMETERS for Wine processes started
	from the command-line.

2005-11-14  Peter Lemenkov <petro@mail.ru>

	* include/rpcdce.h:
	Added extern "C".

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/comctl32/imagelist.c:
	Reformat "see" section, to match c2man requirements.

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/commdlg/cdlg32.c, dlls/commdlg/colordlg.c,
	  dlls/commdlg/filetitle.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/printdlg.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- complete missing A/W pairs
	- document remaining comdlg32 functions

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	Add shdocvw tests to winetest.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	Implement CLSCTX_INPROC_HANDLER in CoGetClassObject similar to
	CLSCTX_INPROC_SERVER by looking at the InprocHandler32 registry key
	instead of InprocServer32.

2005-11-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Add some extra error information.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	Implement InternetReadFileExA (based on a patch by Brian Gerst).

2005-11-12  Daniel Remenak <dtremenak@gmail.com>

	* dlls/dinput/joystick_linuxinput.c:
	Add additional sanity checks to the linux input system dinput joystick
	implementation.

2005-11-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	Removed a couple of shift/reduce warnings in grammar.

2005-11-12  Rein Klazes <wijn@wanadoo.nl>

	* programs/regedit/Nl.rc:
	Update Dutch resources.

2005-11-12  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c:
	Added IViewObject2 stub implementation.

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/.cvsignore, dlls/version/tests/Makefile.in,
	  dlls/version/tests/install.c:
	Added some tests for VerFindFileA.

2005-11-12  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/kernel/path.c, dlls/kernel/tests/path.c:
	prefix can be NULL for GetTempFileNameW.

2005-11-11  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/msacm/msacm.rc,
	  dlls/msacm/msacm_Ko.rc, dlls/msrle32/msrle_Ko.rc,
	  dlls/msrle32/rsrc.rc, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/setupapi/Ko.rc,
	  dlls/setupapi/setupapi.rc, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/wininet/rsrc.rc,
	  dlls/wininet/wininet_Ko.rc:
	Add Korean translations.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/urlmon/urlmon.spec:
	Correct argument count for URLDownloadToCacheFile{A,W}.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shell.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	Unconditionally fall back to ANSI DDE APIs in ShellExecute if current
	emulated Windows version is Win9x, Excel refuses to communicate with a
	unicode client in win9x mode.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c:
	Convert some ERRs to WARNs in the DDE client code when appropriate.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/kernel/heap.c:
	Protect sys/stat.h with a conditional.

2005-11-11  Steven Edwards <winehacker@gmail.com>

	* dlls/msi/msi.c:
	Partly implement MsiMessageBox[A/W] on top of MessageBoxEx[A/W]

2005-11-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	Moved and adopted joystick_linux.c code into the
	joystick_linuxinput.c.

2005-11-11  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	Add GLXFBConfig on Wine_GLContext (we should remove XVisualInfo
	references on code).
	Hook glGetIntegerv on GL_ALPHA_BITS to query on GLXFBConfig instead of
	glGetInteger (as it returns bad value).

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/comctl32/comboex.c,
	  dlls/comctl32/listview.c, dlls/comctl32/treeview.c,
	  dlls/commdlg/filetitle.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/texture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/light.c, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/surface_main.c, dlls/ddraw/vertexbuffer.c,
	  dlls/dinput/device.c, dlls/dinput/mouse.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmscript/script.c,
	  dlls/dmstyle/styletrack.c, dlls/dplayx/dplay.c, dlls/dpnet/address.c,
	  dlls/dsound/dsound_main.c, dlls/dxdiagn/provider.c,
	  dlls/gdi/bitmap.c, dlls/gdi/mfdrv/bitblt.c, dlls/kernel/comm.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/msi/action.c,
	  dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/format.c,
	  dlls/msi/package.c, dlls/msi/table.c, dlls/msvcrt/tests/cpp.c,
	  dlls/ntdll/misc.c, dlls/odbc32/proxyodbc.c, dlls/ole32/antimoniker.c,
	  dlls/ole32/bindctx.c, dlls/ole32/ole2.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/varformat.c, dlls/olepro32/olepro32stubs.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/enumidlist.c,
	  dlls/shell32/pidl.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/tapi32/line.c, dlls/user/comm16.c,
	  dlls/user/dde_misc.c, dlls/user/tests/menu.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_main.c, dlls/winedos/int10.c,
	  dlls/winedos/int15.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/winmm/mci.c,
	  dlls/winmm/mciwave/mciwave.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/playsound.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winsock/socket16.c,
	  dlls/winsock/tests/sock.c, dlls/wintab32/context.c,
	  dlls/wsock32/socket.c, dlls/x11drv/event.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/palette.c, dlls/x11drv/xfont.c, dlls/x11drv/xrandr.c,
	  programs/winevdm/winevdm.c:
	Remove spaces before '\n' in traces.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/dxerr8/errors.awk,
	  dlls/dxerr9/errors.awk, dlls/msi/package.c, dlls/msi/tests/package.c,
	  dlls/msxml3/tests/domdoc.c, dlls/oleaut32/olepicture.c,
	  dlls/secur32/dispatcher.c, dlls/user/exticon.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c, dlls/winmm/wineoss/mmaux.c,
	  tools/sfnt2fnt.c:
	Assorted spelling and case fixes.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	WinME fixes:
	- don't fail on WriteFile(),
	- add valid error codes,
	- empty buffer to avoid printing garbage,
	- remove bogus inf-file which TranslateInfString() creates here.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* tools/c2man.pl:
	Make parameter higlighting regex less "hungry".

2005-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Parse the command line returned by CommandLineFromMsiDescriptor() to
	extract the application path. Otherwise winemenubuilder ignores the
	.lnk file entirely.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/toolbar.c, dlls/d3d9/device.c,
	  dlls/kernel/tests/thread.c, dlls/msxml3/tests/domdoc.c,
	  dlls/setupapi/tests/parser.c, dlls/user/tests/msg.c:
	Add trailing '\n's to ok() and TRACE() calls.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/path.c:
	Add error code valid for Win9x and XP.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shellole.c, dlls/shell32/shellord.c,
	  dlls/shell32/shellpath.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/systray.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h, dlls/dxerr9/errors.dat,
	  dlls/dxerr9/errors.h:
	Assorted spelling fixes in the DXErr8/9 error files.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.awk, dlls/dxerr9/errors.awk:
	Remove extra backslash that was causing an awk warning.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/clock/Ko.rc, programs/clock/rsrc.rc, programs/regedit/Ko.rc,
	  programs/regedit/rsrc.rc:
	Added Korean resources.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/start/start.c:
	Remove the limit on the length of the command line.

2005-11-10  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/msi.c:
	Use MsiDecomposeDescriptorW in MsiProvideQualifiedComponentExW.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/uxtheme/system.c:
	Improve c2man Documented-Total count. Changes:
	- add missing returns section

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, include/wingdi.h:
	Added support for SHADEBLENDCAPS.

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Define GL_EXT_framebuffer_object and GL_EXT_pixelbuffer_object openGL
	specs.
	Support Mesa GL_VERSION on parse.

2005-11-10  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	Added URLDownloadToCacheFile[AW] stub.

2005-11-10  Mike Hearn <mike@plan99.net>

	* dlls/wininet/version.rc:
	Update wininet version info.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.1.

----------------------------------------------------------------
2005-11-09  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/ps.c:
	Escape non-printable characters in the document title and also
	truncate it to 0x80 characters.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/Makefile.in, dlls/commdlg/filedlg.c:
	Initialize COM prior to displaying the file dialog.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c, dlls/msi/tests/db.c:
	Fix passing of NULL pointers to MsiDecomposeDescriptor and add a
	test.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Make sure we only CoUninitialize after successfully initializing.
	Fix the address of the returned IShellLinkDataList interface.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c:
	Added IInternetPriority implementation to FileProtocol.

2005-11-09  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	If a color bitmap is provided, store bitmap information from it
	instead of the mask bitmap one.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	Don't call SetWindowPos in ShowWindow if a parent window is not
	visible, only toggle the WS_VISIBLE flag.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/user/class.c, dlls/user/cursoricon.c, dlls/user/dde_misc.c,
	  dlls/user/defwnd.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/resource.c, dlls/user/scroll.c,
	  dlls/user/win.c, dlls/user/winproc.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Cleanup formating of DispCallFunc.
	- Fix DispCallFunc for functions with return values.
	- Don't rely on _copy_arg as it is going away soon.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/ntdll/error.c, dlls/ntdll/reg.c, dlls/ntdll/sec.c,
	  dlls/ntdll/string.c, dlls/ole32/clipboard.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/storage.c, dlls/ole32/storage32.c:
	Improve c2man Documented-Total count.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize COM prior to displaying the SHBrowseForFolder dialog.

2005-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/shell32/tests/shlfolder.c:
	Disable code that segfaults on Win98 SE.

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c,
	  dlls/ole32/ole2.c, dlls/ole32/rpc.c:
	- Extend COM_OpenKeyForCLSID to open a subkey and return an HRESULT.
	- Fix up the callers and reorganize CoGetClassObject to split out the
	inproc code into another function.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	Added implementation of IInternetPriority in HttpProtocol.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/xmldom.idl:
	Fixed typo: get_doctype returns an IXMLDOMDocumentType.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/main.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c:
	Include msxml2.h rather than msxml.h and xmldom.h.

2005-11-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Re-enable SPI_{GET,SET}BORDER tests and fix the bugs that caused them
	to be disabled.
	Add tests that show that the border value manipulated by
	SPI_{GET,SET}BORDER is completely the same as with
	SPI_{GET,SET}NONCLIENTMETRICS.
	Fix a few signed/unsigned warnings in unrelated tests from the same
	source file.
	Made the tests pass on wine.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/crypt.c:
	Win98 fails another way when user isn't logged in.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Unicodify systray.c.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/windef.h:
	Add an argument to all uses of the __ONLY_IN_WINELIB macro (spotted by
	Berend Reitsma).

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/tests/shortcut.c:
	Support for shell instance objects.
	Removed a wine_todo for a no longer failing test.
	Added a test for IPersistFolder3::GetCurFolder.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/mapi32/tests/prop.c:
	Get rid of FAR keywords.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Implement selectSingleNode.

2005-11-08  Robert Lunnon <bobl@optushome.com.au>

	* dlls/kernel/heap.c:
	Implement GlobalMemoryStatusEx for Solaris.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/heap.c:
	Take into account some alignment done by HeapAlloc() on Win9x.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/wininet/internet.c:
	Unicodify InternetCheckConnection.
	Use HeapAlloc'ed buffers where applicable.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Move functions a bit to get rid of a static declaration.

2005-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/comctl32/treeview.c:
	Do not issue a GetUpdateRect() to query an update region for
	WM_PAINT(wParam=HDC) case. Instead, use GetClientRect() for a bounding
	rect.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/parseerror.c,
	  dlls/msxml3/tests/domdoc.c:
	Implement get_parseError.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/gdi/font.c, dlls/hhctrl.ocx/hhctrl.c:
	Correct some allocated buffer lengths while converting to Unicode.

2005-11-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/comctl32/animate.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/header.c, dlls/comctl32/hotkey.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/user/button.c, dlls/user/edit.c,
	  dlls/user/listbox.c, dlls/user/static.c:
	Handle WM_PRINTCLIENT.
	Don't use SelectClipRgn in WM_PRINTCLIENT.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c:
	Fix parsing of version number.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Fix cut-n-paste error in licence text.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/query.c:
	Allow NULL ppQuery to be passed to CreateQuery.

2005-11-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Implement TranslateInfString with tests.

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/compobj.c:
	Added tracing to CoCreateInstance.

2005-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/kernel/comm.c, dlls/kernel/computername.c, dlls/kernel/console.c,
	  dlls/kernel/environ.c, dlls/kernel/file.c, dlls/kernel/file16.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/locale.c,
	  dlls/kernel/module.c, dlls/kernel/path.c, dlls/kernel/string.c,
	  dlls/kernel/sync.c, dlls/kernel/thread.c, dlls/kernel/thunk.c,
	  dlls/kernel/time.c, dlls/kernel/virtual.c, dlls/kernel/volume.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/time.c:
	Add some missing timezones.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/provider.c:
	- fill DirectShowFilters Container
	- fix some MLKs (clear variants)

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Make Crypt32 tests loadable on Win98.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Added last error code for XP SP1.

2005-11-08  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/dmloader/loader.c:
	Add some checks and fix some stream leaks.

2005-11-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	We shouldn't pass the application name into CreateProcess because the
	value stored in the registry could include arguments.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Fixed an error in Swapchain_GetFrontBufferData.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Extract the executable name for msi advertised shortcuts.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Fix a problem spotted by Dmitry and another one stopping correctly
	formatted lnk files from being generated.

2005-11-07  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/shlwapi/reg.c, dlls/shlwapi/shlwapi.spec:
	Semi-stub implementation for SHRegGetValue(A|W).

2005-11-07  James Hawkins <truiken@gmail.com>

	* include/winerror.h:
	Define the setupapi hresult errors.

2005-11-07  Peter Lemenkov <petro@mail.ru>

	* include/wininet.h:
	Added some missing definitions in wininet.h.

2005-11-07  Huw Davies <huw@codeweavers.com>

	* include/xmldom.idl, include/xmldomdid.h:
	Add IXMLDOMParseError.

2005-11-07  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	More robust code for querying ShellFolder attributes (some
	ShellFolders ignore the flag mask in GetAttributesOf).

2005-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/parser.c:
	Added a bunch of tests for the INF parser.

2005-11-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/font.c, dlls/gdi/gdi_private.h,
	  dlls/gdi/path.c, dlls/gdi/tests/metafile.c:
	First draft of ExtTextOut on an open path.

2005-11-07  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/provider.c:
	- bug fixes on AddProp, AddContainer (stupid buffer overflows)
	- more complete container hierarchy
	- DXDiag_AddFileDescContainer service to fill dll info
	- almost complete DXDiag_InitDXDiagDirectXFilesContainer (for now)

2005-11-07  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	Make SystemParametersInfoA( SPI_SETNONCLIENTMETRICS, ...) work by
	adding the needed non client metrics A->W conversions.

2005-11-07  Stefan Huehner <stefan@huehner.org>

	* dlls/secur32/secur32.c:
	Fix segfault when querying non-existent SecurityProvider.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/mediastream.c:
	Add stub implementation of IMediaStream interface.

2005-11-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	AtlAxWinInit dummy implementation.

2005-11-07  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtlstr.c, include/winternl.h:
	Implement RtlInitAnsiStringEx.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/drawprim.c:
	Verify that the texture coordinate used in DrawStridedSlow is in range
	before trying to referencing the associated data.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Prevent SetFVF from clearing down the vertex declaration of the FVF is
	zero. This is required for Prince of Persia, The sands of time.

2005-11-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	LdrAccessResource should pop 16 bytes off the stack since it is a
	WINAPI function.

2005-11-07  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	Added support of loading of IPicture data from non-statable
	IStreams. Added testcases for this.

2005-11-07  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Free an alloc'ed string.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	When creating black & white cursor icon, handle special case where
	hbmColor is null and hbmMask specify a bitmap having twice the height
	and formatted so the upper half is the icon AND bitmask and the lower
	one is the OR bitmask.

2005-11-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/d3d8/d3dcore_gl.h:
	Remove already included headers.

2005-11-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/gdi/driver.c, dlls/gdi/enhmetafile.c, dlls/gdi/font.c,
	  dlls/gdi/metafile.c, dlls/gdi/mfdrv/init.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c:
	Improve c2man Documented-Total count.

2005-11-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	- Move target folder initialization to a dedicated function.
	- Use this function in BindToObject (should be faster).
	- Special handling for FolderShortcut objects in Initialize method.
	- Removed a todo_wine from a no longer failing unit test.

2005-11-05  Davin McCall <davmac@davmac.org>

	* dlls/winmm/winealsa/audio.c:
	Avoid getting ahead of dsound mixer when using non-hw device. Also
	avoid using internal ALSA call to retrieve hardware play position.

2005-11-05  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/thread.c:
	x86_64 references a named union, ensure unions are not nameless.

2005-11-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	Update German resource file.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	- Stricten cases for NT in a two tests.
	- WSAAddressToString[AW] don't fail on Win9x for those.
	- Modify it to pass new tests.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msi/tests/db.c:
	Win9x returns MSIDBERROR_NOERROR.

2005-11-05  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	Filter out CTEXT nodes when building element child lists.
	get_item and get_length should honour the filter.
	Add some '\n's to the tests so that libxml2 lists CTEXT nodes.

2005-11-05  Dimi Paun <dimi@lattica.com>

	* dlls/comctl32/listview.c:
	Validate the column index passed in by the caller.

2005-11-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/varformat.c:
	Fixed FMT_DATE_GENERAL and FMT_DATE_TIME_SYS cases in
	VARIANT_FormatDate.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Tidy up UpdateTexture and add support for updating cube textures.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

2005-11-04  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	Improve c2man Documented-Total count.

2005-11-04  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/except.c:
	More verbose output when unhandled exception occurs.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	Partially implement and test the shelllink object's
	IShellLinkDataList::CopyDataBlock and GetFlags methods.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_parser.pm:
	volatile is legal (and used now!) in a typedef struct {}.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dbghelp/source.c, include/dbghelp.h, include/imagehlp.h,
	  tools/winapi/win32.api:
	Fix typo: PSYM_ENUMSOURCEFILES_CALLBACK instead of
	PSYM_ENUMSOURCFILES_CALLBACK.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/registry.c:
	- RegConnectRegistryA fails on Win9x when Remote Registry Service is
	not installed (WinReg.DLL is missing).
	- Test "\\" prefixed computer names too.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Use advapi32.CommandLineFromMsiDescriptor to get msi component paths.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec:
	Implement advapi32.CommandLineFromMsiDescriptor. It's a wrapper for
	msi.MsiProvideComponentFromDescriptor.

2005-11-04  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Pass HtmlHelp commands to doWinMain.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/comctl32/string.c:
	Move functions in comctl32/string.c to remove function declaration.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	__RPC_STUB is a calling convention as well (#defined as __stdcall).

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wine/port.h:
	Fix warning about memmove re#definition.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Make 4 WSAStringToAddress* tests don't fail on Win9x.

2005-11-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tmarshal.c:
	Added support for VT_I8/VT_UI8 marshalling.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Add support for updating to D3DFMT_UNKNOWN surfaces and tidy up update
	surface a little.

2005-11-04  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/olefont.c:
	Add a test for Invoking an OleFont function.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/install.c:
	Added support for optional section.ntx86 and section.nt in
	InstallHinfSection when current version is set to NT.

2005-11-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement OLE object notifications, making sure to cope with the case
	of the advise holder not being created because no notifications are
	needed.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	Get rid of a double backslash.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/string.c:
	Use Win32 APIs for string comparison.

2005-11-03  Vijay Kiran Kamuju <infyquest@gmail.com>

	* programs/winecfg/audio.c:
	Show detected audio drivers in autodetect.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	Stricter check whether a window needs to be mapped on the screen.

2005-11-03  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/ntdll/time.c:
	Added another CST (Australian Central Daylight Time) to TZ_INFO.

2005-11-03  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/variant.c:
	Extend VarCmp() and add test cases.

2005-11-03  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c,
	  include/msvcrt/process.h, include/msvcrt/stddef.h:
	Fix warnings and errors in 64bit.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Replaced tabs with spaces.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/commdlg/cdlg.h, dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Cn.rc,
	  dlls/commdlg/cdlg_De.rc, dlls/commdlg/cdlg_En.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Nl.rc, dlls/commdlg/cdlg_No.rc,
	  dlls/commdlg/cdlg_Pl.rc, dlls/commdlg/cdlg_Pt.rc,
	  dlls/commdlg/cdlg_Ru.rc, dlls/commdlg/cdlg_Si.rc,
	  dlls/commdlg/cdlg_Sk.rc, dlls/commdlg/cdlg_Sv.rc,
	  dlls/commdlg/cdlg_Th.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/printdlg.c:
	Authors: Vijay Kiran Kamuju <infyquest@gmail.com>, Jonathan Ernst <Jonathan@ErnstFamily.ch>
	Display an error if no printer is installed.

2005-11-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/.cvsignore, dlls/msvcrt/Makefile.in, dlls/msvcrt/rsrc.rc:
	Specify a DLL version for msvcrt.dll.

2005-11-03  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Add indexed access to attributes (nodemap) and childNodes
	(nodelist), with some testcases.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added some more unit tests for FolderShortcut objects.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/comm.c:
	Fixed fd leaks (spotted by Cihan Altinay).

2005-11-03  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/msi.c,
	  dlls/version/info.c, dlls/version/install.c, dlls/version/ver16.c,
	  include/winver.h:
	Fix some wrong prototypes.

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/container.c, dlls/dxdiagn/provider.c:
	Fill provider with some empty containers.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	Invoke shortcuts through IContextMenu, rather than trying to access
	them directly.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add the ContextMenuHandlers key for shortcuts so the new context menu
	code can work.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	Cache background color brush instead of recreating it at each screen
	update.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/break.c:
	Fixed 'break NN' command (using dbghelp.SymEnumLines).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/wineconsole.c:
	Fixed wineconsole startup when restoring registry settings.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove some redundant null pointer checks.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Authors: Vitaliy Margolen <wine-patch@kievinfo.com>, Michael Jung <mjung@iss.tu-darmstadt.de>
	Set all capability flags supported by the shellfolder, disregarding
	the flag mask given to GetAttributesOf.
	Unit tests to demonstrate this behaviour.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Add missing semicolons that caused compile trouble on FreeBSD.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Pass the correct verb.
	Add a space between extra parameters.
	Wait for ShellExecute to complete.

2005-11-03  Steven Edwards <winehacker@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	Add a real stub for Advpack.extract.

2005-11-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/thread.c:
	Get rid of CPU id when copying context

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/drawprim.c,
	  dlls/d3d8/vshaderdeclaration.c:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	->  on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c:
	Added stub for RegisterServiceCtrlHandlerEx{A,W}.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/paint.c, dlls/riched20/wrap.c:
	Added support for EM_REQUESTRESIZE message, EN_REQUESTRESIZE
	notification, and ENM_REQUESTRESIZE event mask.

2005-11-03  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Scroll bar: Keep the caret blinking during scroll operations (only
	handle WM_SYSTIMER messages that belong to the scroll bar).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymEnumLines.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	Now filling external leading in font cells.

2005-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't call Release on a null ptr.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c, dlls/ntdll/exception.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/thread.h, server/trace.c:
	Fixed Get/SetThreadContext to work properly on suspended threads.
	Added a test case.

2005-11-02  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/opengl32/wgl.c, dlls/shell32/shelllink.c:
	Correct WINAPI position for MSVC portability.

2005-11-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c:
	Fixed crash in font browsing for raster fonts.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	Fix a crash during +variant logging caused by a typo causing an array
	to be one element less than expected.

2005-11-02  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h:
	Implement D3DFMT_UNKNOWN surfaces, this seems to be used a lot in d3d8
	but I haven't found any d3d9 application that uses D3DFMT_UNKNOWN
	surfaces yet.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Make sure to clean up properly on error.
	- Restrict the critical section to getting the channel buffer and
	adding a reference to it.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Make wParamFlags in the paramdesc dumping function human readable.
	- Enums should be VT_I4 instead of VT_INT.
	- Trace the return value from the ITypeInfo_fnInvoke.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	NULL and empty strings are the same in conditions.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	Change a FIXME message to a comment.

2005-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tab.c:
	Avoid printing out a possibly uninitialized variable.

2005-11-02  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Extend get_nodeName add testcases for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiAdvertiseScriptA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/order.c, dlls/msi/record.c,
	  dlls/msi/select.c, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	Create the +msidb debug channel for msi database code.

2005-11-02  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/action.c:
	Force files to install if the REINSTALL property is set.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	Make LdrAccessResource call an internal function to satisfy Shrinker.

2005-11-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when opening nonexistent pipes.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c, server/context_powerpc.c, server/context_sparc.c,
	  server/context_x86_64.c, server/thread.c, server/thread.h:
	Moved the platform-independent part of the get/set_thread_context
	requests to a common file.

2005-11-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Added some comments to document unixfs.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	Fix parameter handling in MsiSetTargetPath, and add a test for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Implement the RemoveFiles action.

2005-11-02  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/rtlstr.c:
	Minor fixes to rtl string functions.

2005-11-02  David Kredba <kredba@math.cas.cz>

	* dlls/commdlg/cdlg_Cs.rc, dlls/devenum/devenum.rc, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/hhctrl.rc, dlls/mpr/mpr_Cs.rc:
	Czech resources update.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiGetFileHashA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Use an enumeration for file states.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Define NONAMELESSUNION and NONAMELESSSTRUCT for older compilers.

2005-11-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/comctl32/listview.c:
	Clear bLButtonDown flags if mouse is not down.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	Convert all RTFPanic and RTFMsg calls to ERR calls.

2005-11-02  Rob Shearman <rob@codeweavers.com>

	* include/rpcndr.h:
	Add declarations for NdrAsyncClientCall, NdrAsyncStubCall and
	RpcMgmtEnableIdleCleanup.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* tools/winedump/lnk.c:
	Handle msi component identifiers without a feature guid.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msxml3/node.c:
	Implement IXMLDOMNode::get_nodeName.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut.c:
	The PSDispatch PS class factory can manage both typelib marshalled and
	IDispatch, which is NDR marshalled, so we need a wrapper to call the
	appropriate CreateProxy or CreateStub function.

2005-11-02  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c, include/winuser.h:
	Add 'ENUM_...._SETTINGS' flag and make use of it in the X11DRV code.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/except.c, dlls/ntdll/exception.c,
	  include/wine/server_protocol.h, server/debugger.c,
	  server/protocol.def, server/thread.c:
	Don't send an extra signal when waiting for a debug event, just do a
	normal wait.  Return the debug event status directly as return value
	of the server call.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	Don't send the incoming context to the server for get_thread_context,
	instead copy only the relevant fields of the return value on the
	client side.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when exceeding allowed instances.

2005-11-01  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/comctl32/string.c:
	Include config.h and port.h for strncasecmp() in MSVC port.

2005-11-01  Bernd Schmidt <bernds_cb1@t-online.de>

	* dlls/kernel/file.c:
	Implemented FindExSearchLimitToDirectories.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	Fixed _wstrdate/_wstrtime parameters.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/http.c:
	Authors: Marcus Meissner <marcus@jet.franken.de>, Walter Weiss <wjweiss@hotmail.com>
	Added handling of more HTTP standard headers and binary search lists.

2005-11-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tests/vartype.c:
	SysReAllocString of same pointer returns TRUE.

2005-11-01  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Fixed crash in unixfs shellfolder handling with winamp.

2005-11-01  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/amstream.c, dlls/amstream/main.c:
	Use a more standard indentation style.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Remove version information.

2005-11-01  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/x11drv/clipboard.c:
	Improve handling of mapping between X and Windows formats.
	Add support for UTF8.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/main.c, server/object.c, server/object.h,
	  server/winstation.c:
	- Use OBJ_CASE_INSENSITIVE in object lookup.
	- Remove case_sensitive flag from namespace.
	- Remove todo_wine from now succeeding tests.

2005-11-01  Davin McCall <davmac@davmac.org>

	* dlls/dsound/mixer.c:
	PhaseCancel subtracts secondary buffer from primary buffer, not the
	other way around.

2005-11-01  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/painting.c:
	ScrollWindowEx: Don't move the caret of child windows and hide it only
	if it's in the source or in the destination rectangle.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlfolder.c:
	Convert SHELL32_BindToChild to Unicode and fix up the callers.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Make the call exception handler function more compatible with NT and
	with what Shrinker expects.

2005-10-31  Stefan Huehner <stefan@huehner.org>

	* programs/winetest/Makefile.in:
	Add msxml3,setupapi tests to winetest.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, programs/Makefile.in,
	  programs/eject/.cvsignore, programs/eject/Makefile.in,
	  programs/eject/eject.c:
	Added an 'eject' Winelib app that allows unmounting and ejecting a CD
	even if a Windows app has files open on it.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Marshal enums.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Actually print the IIDs.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/enhmetafile.c, include/wingdi.h:
	Implement playback of EMR_ALPHABLEND.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	Only select a bitmap font as a last resort if we can't find a font
	with the correct facename.

2005-10-31  Marcus Meissner <marcus@jet.franken.de>

	* server/mapping.c:
	Do not overflow the stackbased "nt" struct when reading non-conforming
	PE files.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/ttydrv/.cvsignore, dlls/ttydrv/Makefile.in,
	  dlls/ttydrv/bitmap.c, dlls/ttydrv/dc.c, dlls/ttydrv/graphics.c,
	  dlls/ttydrv/objects.c, dlls/ttydrv/palette.c, dlls/ttydrv/ttydrv.h,
	  dlls/ttydrv/ttydrv_main.c, dlls/ttydrv/winetty.drv.spec,
	  dlls/ttydrv/wnd.c:
	Get rid of the no longer used tty driver.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/driver.c:
	Default to the null driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add the tests for behaviour of [In]validateRect and [In]validateRgn
	with hwnd set to 0, make them pass under Wine.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/shdocvw_main.c:
	Only return SHDOCVW_ClassFactory if asked for CLSID_WebBrowser.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	Deal with pExcepInfo == NULL.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make sure to unregister all the classes that were registered when msi
	is unloaded, so we can register again cleanly.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	Add void to empty declaration list.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dc.c, dlls/gdi/driver.c:
	Default to an empty driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* configure, configure.ac, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/.cvsignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/shortcut.c:
	Added initial tests for shdocvw's FolderShortcut related
	functionality.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Added assembly implementation of EXC_CallHandler.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/tests/package.c:
	Fix and test MsiGetProperty and MsiSetProperty.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/tests/.cvsignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/msi.c:
	Improve MsiUseFeatureEx and MsiGetFeatureState a little, add some
	simple test cases.

2005-10-31  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Implement InternetCreateUrlW and test cases.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/metafile.c:
	Fix handling of relative state indices in RestoreDC.
	Fix return value of SaveDC when writing to an emf.
	Before writing the EMR_EOF record we should ensure that we clear the
	state stack.

2005-10-31  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/direct3d_opengl.c, dlls/ddraw/light.c,
	  dlls/ddraw/opengl_private.h:
	Finish moving d3d[1..3] light code to use d3d7.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/kernel/time.c:
	Define obsoleted CLK_TCK to CLOCKS_PER_SEC if not there.

2005-10-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Improve the implementation of SQLConfigDataSource, SQLConfigDriver,
	SQLInstallDriver{,Ex}, SQLInstallerError and
	SQLInstallTranslator{,Ex}.

2005-10-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	Implement CertSignSignature and CertVerifySignature(Ex).

2005-10-31  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	Add waveOutPause/waveOutRestart test.
	Tighten up play duration test when ending too soon.
	Set VirtualFree size to 0.

2005-10-31  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/tests/path.c:
	Stop PathIsValidCharW tests after 100 failing tests.

2005-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d9/query.c:
	In case of D3D9 the CreateQuery call can be used to retrieve status  
	information. According to MSDN the 'ppQuery' parameter can be set to
	NULL to detect if a certain query Type is supported.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Add a stub for the AllocateRegistrySpace action.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/package.c, include/msiquery.h:
	Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Add a read-only implementation of the SelectionTree control.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Simplify register_progid() and remove a fixed length buffer.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle MaskEdit masks containing dashes and other constant
	characters.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Use msi_get_property_int() in a few more places.

2005-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_wentry.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, include/winnt.h:
	Make all winecrt0 functions and variables hidden.

2005-10-30  Julien Cegarra <JulienC@psychologie-fr.org>

	* dlls/Makefile.in, dlls/winmm/Makefile.in, dlls/winmm/sound.drv.spec,
	  dlls/winmm/sound.spec:
	Correct name of sound.dll to sound.drv (WIN16).

2005-10-30  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/dispatcher.c,
	  dlls/secur32/secur32_priv.h:
	A dispatcher for running ntlm_auth.

2005-10-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Handle the left and right arrow keys.

2005-10-30  Christian Costa <titan.costa@wanadoo.fr>

	* include/wine/library.h:
	Remove no longer used wine_dbg_parse_options and wine_dbg_add_options
	prototypes.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	Add a stub implementation of msi.MsiSetMode.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Remove unused package parameter of register_progid_base().

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/package.c:
	Use "static const" rather than "const static" as gcc -W complains
	about the former.

2005-10-30  Robert Reif <reif@earthlink.net>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/time.c, dlls/msvcrt/time.c:
	Implement _wstrdate and _wstrtime with tests.

2005-10-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	Fix exception handling for non CXX_EXCEPTIONs.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/console.c, server/event.c, server/handle.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c,
	  server/semaphore.c, server/timer.c, server/winstation.c:
	Pass object attributes to create_named_object & find_object.

2005-10-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c:
	Implemented local/global atom creation, deletion & lookup on top of
	ntdll.

2005-10-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/wldap32/wldap32.spec:
	Export functions by ordinal, cryptnet.dll at least depends on it.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Don't change the UI level during ExecuteAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Implement MsiGetFeatureUsageA and MsiUseFeature(Ex)A using their W
	versions.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove the unused 1st parameter of ACTION_VerifyComponentForAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Explicitly check for MSICONDITION_TRUE being returned from
	MsiEvaluateCondition.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Some installers don't call the CreateFolders action before the
	InstallFiles action as MSDN specifies, but it still seems to work, so
	make sure that we create component directories in the InstallFiles
	action anyway.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_GetItem[A/W] into one function.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Add a bunch of tests for MsiEvaluateCondition and make them pass.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make enter and escape trigger the default and cancel buttons in
	dialogs.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	Deleted two buggy functions that incorrectly and inefficiently check
	whether a row already exists in a table, and replaced them with a call
	to an existing working function that does the same thing correctly.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Remove an incorrect comment and check for 0 being an invalid file
	handle.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Extract file directly to their target location, bypassing the need to
	use temporary files and move files.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	- Read DLL name from modules in MSFT typelibs.
	- A name offset of -1 for a parameter means that it has the same name
	as the function.
	- Print an error if a ReadName is attempted with an offset of -1,
	since this will read garbage.
	- Implement ITypeInfo_GetDllEntry.

2005-10-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	Move the softwareVertexProcessing flag from the stateblock to the
	device because its state shouldn't be recorded in a stateblock.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/gdi/dc.c:
	Print an error if a DC is created with a bad device.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Set list view's text directly - don't use fill_drives_list for that.
	Enable "Apply" button when text changes.

2005-10-29  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/console.c:
	Enable line editing for _cgets.

2005-10-29  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	Delete some temp files created by the ole32 tests.

2005-10-29  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/msi/action.c:
	Passing NULL as the last two parameters to ReadFile is illegal and
	actually causes a crash on windows. The attached patch fixes this.

2005-10-29  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	Report BINDSTATUS_SENDINGREQUEST in FileProtocol::Start.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Add an implementation for MsiGetShortcutTargetA/W.

2005-10-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	Added an implementation of the FSCTL_DISMOUNT_VOLUME ioctl that
	attempts to unmount the Unix device.

2005-10-28  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/om.c, include/winternl.h:
	Fix NtQueryDirectoryObject prototype, documentation, and the
	definition of the structure it uses.

2005-10-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/mapping.c:
	xform can be NULL when setting the identity.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Fix a memory leak.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Handle MSI advertised shortcuts in the shelllink object.

2005-10-28  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/regedit/De.rc:
	Update the German resource file.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Put the UI update code for cabinet file into a separate function.

2005-10-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/version/install.c:
	Correct the way that VerFindFileA checks for a file that is
	exclusively locked.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Test CreateThread() for reception of NULL pointer to TID.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/user/tests/msg.c:
	Don't pass CreateThread() with a NULL pointer to TID as Win9x does not
	create a thread then.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Return an error in MsiGetComponentPathW if passed a null component.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Fix error handling in MsiEvaluateCondition.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Translate INVALID_HANDLE_VALUE to zero for cabinet handles.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/console.c:
	Don't send a CTRL_C_EVENT signal to console if we are on Win9x and
	console signal handler is set to NULL.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_InsertItem[A/W] into one function.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Fix a memory leak in the cabinet extracting code.

2005-10-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/protectdata.c:
	Use CryptMem functions for internal memory allocation.

2005-10-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/regedit/De.rc:
	Added German resources for regedit's find dialog.

2005-10-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	Correct parameter names for InternetSetFilePointer.

2005-10-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_DECIMAL in VarCmp().

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Use the correct buffer - reported by Jesse Allen.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Add a test for GetThreadExitCode.
	Use GetModuleHandleA as kernel32 should be present on every system.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Implement IContextMenu::QueryContextMenu and
	IContextMenu::InvokeCommand.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec:
	Fix MsiGetPropertyA/W spec declarations.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/files.c:
	Create component folders in the CreateFolders action.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/appdefaults.c:
	Define OS environment variable on WinNT versions.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/event.c, server/handle.c,
	  server/handle.h, server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/protocol.def, server/semaphore.c,
	  server/timer.c, server/trace.c, server/winstation.c:
	- Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
	inherit flag.
	- Pass DesiredAccess to the server when creating mailslot.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/prop.c:
	Allow mapi32 tests to load and exit gracefully if mapi32.dll isn't
	installed.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/advapi32/tests/registry.c:
	Delete a temp file.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/internet.c:
	Add default implementation for max_conn_pre_*_server flag.
	Add stubs for the above flags in InternetSetOption.

2005-10-27  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/font.c:
	Fixed SetTextAlign(), SetBkMode(), SetROP2(), SetPolyFillMode(), and
	SetStretchBltMode() to assume that the corresponding DC driver
	functions return only a BOOL success flag, and therefore a proper
	return value should be generated by the main function. Fixed
	EMFDRV_StretchDIBits() to return a proper value (like
	MFDRV_StretchDIBits already does). Added comments about other cases of
	improper return values.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/listbox.c, dlls/user/message.c,
	  dlls/user/spy.c, include/winuser.h:
	Add some missing USER definitions, add a couple of FIXMEs for not
	implemented features.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/custom.c:
	If an action fails, print out its name as well as the error code.  Use
	%d for error codes so it's easy to match them up to something in
	winerror.h.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/custom.c, dlls/msi/format.c,
	  dlls/msi/helpers.c:
	Rename load_dynamic_stringW to msi_dup_record_field to better describe
	what it does, and replace a few instances with MSI_RecordGetString to
	avoid allocating memory.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Add test for undocumented 0x4D message sent on F1.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	Added a test case for %0f and %.0f.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	Implement transforms.  This still includes some debugging code which
	can be enabled by setting debug_transform to 1 in the relevant
	places.

2005-10-27  Robert Lunnon <bobl@optushome.com.au>

	* dlls/wineps/init.c:
	Reorder header files to avoid name space collision with symbol
	PAGESIZE.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/Makefile.in, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/tests/shlfolder.c:
	Implemented UnixFolder's IPersistPropertyBag::Load method.

2005-10-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartype.c:
	Add tests for functionality implemented or corrected: multiplication,
	division, cast to double, cast to string.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* include/rpcproxy.h:
	Add the macros used in dlldata.c files.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	There is no need to call IUnknown_QueryInterface since getting the
	correct object is handled by the proxy manager.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/iconcache.c:
	Remove iconcache pre-initialization hack, it's not necessary any
	more.

2005-10-27  Hans Leidekker <hans@it.vu.nl>

	* tools/wineinstall:
	Wine is beta software now.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Tidy up the RegisterProduct action a little.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/device.c:
	Release the OpenGL context when the device is released.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	Get rid of the show dir symlink option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	Make show_dir_symlinks the default and get rid of the option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	Make the unmount_device request take a handle to the device file
	itself instead of a handle to a file opened on the device.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dxerr8/dxerr8.c, dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h,
	  dlls/dxerr9/dxerr9.c, dlls/dxerr9/errors.dat, dlls/dxerr9/errors.h:
	Added more error codes to dxerr8 and dxerr9 which were extracted from
	MinGW win32api-3.3 file dxerr.c written by Filip Navara <xnavara@volny.cz>.

2005-10-27  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/tests/process.c:
	Test for argv handling.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	Add stub implementation for NtAccessCheckAndAuditAlarm.

2005-10-27  Stefan Leichter <Stefan.Leichter@camLine.com>

	* include/advpub.h:
	Declare ExecuteCab and TranslateInfString.

2005-10-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c, include/wincrypt.h:
	Implement CryptMem and undocumented I_Crypt*Tls functions, with tests.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexshader.c:
	Correct the number of parameters expected for the LRP function.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/vertexbuffer.c:
	Changed index and vertex buffer so that internal references are
	counted separately to external ones.

2005-10-27  Jonathan Ernst <Jonathan@ErnstFamily.ch>

	* programs/regedit/Fr.rc:
	Updated French resources.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shellord.c:
	Correctly handle flags parameter in SHAddToRecentDocs.

2005-10-27  Marcus Meissner <marcus@jet.franken.de>

	* aclocal.m4, configure:
	Print first line of LDD output only.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Missing and zero precision specifiers are different.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/regsvr.c, include/ocidl.idl:
	Add IFontEventsDisp and IProvideMultipleClassInfo.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_SetItem[A/W] into one function.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Add the IObjectWithSite interface.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/menu.c:
	Add a currently failing test case for menus.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	Remove unused variable from IDirectSoundFullDuplexImpl.
	Move DirectSoundFullDuplexCreate to get rid of forward declarations.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c:
	In FindNextFileExW don't report directory symlinks that point to one
	of the parent directories, to avoid infinite recursions.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/table.c:
	Create a stub function to apply a single table transform and call it
	where we need to apply transforms.

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/rpcrt4.spec,
	  include/rpcproxy.h:
	Stubs for NdrStubForwardingFunction and NdrCStdStubBuffer2_Release
	along with a few related defines.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecDiv() for any valid DECIMAL.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Attach to implicitly loaded builtin dlls on process startup.

2005-10-26  Krzysztof Foltman <wdev@foltman.com>

	* programs/regedit/En.rc, programs/regedit/Pl.rc, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/main.h,
	  programs/regedit/resource.h, programs/regedit/treeview.c:
	- Added Find functions
	- Some refactoring that made Find functions possible
	- GetItemPath returns a heap-allocated string
	- subtree update put into a separate function UpdateExpandingTree
	- error() utility function made public
	- Find functions are grayed/ungrayed based on context (which fixes
	invalid 'grayed' flag in some localizations).
	- InvalidateRect to fix display glitches coming from using
	WM_SETREDRAW.
	- English and Polish resource updates (Find dialog box and Find menu
	options, string not found message).

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	Treat paramflags == 0 like PARAMFLAG_FIN.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecMul() for any valid DECIMAL.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Enumerate the substorage transforms for any patches that are passed on
	the command line with PATCH=.  Need to implement
	table_apply_transform() before this will do anything interesting.

2005-10-26  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/user/exticon.c, dlls/user/tests/resource.c:
	- Try LoadLibrary/LoadImage to extract icons from wine's built-in dlls
	if SearchPath fails to find the requested file in
	PrivateExtractIcons.
	- Some unit tests for PrivateExtractIcons.

2005-10-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_CY in VarDiv().

2005-10-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/version/info.c:
	Updated trace to support VERSIONED_PRINTER.

2005-10-26  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/cdrom.c:
	Proper implementation of IOCTL_{STORAGE,CDROM}_CHECK_VERIFY.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement a Stop function and use this to properly implement
	IOleObject_Close, IAdviseSink_OnClose and the destructor.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Forward IDispatch functions to the MIDL-generated proxy.
	- Remove special cases caused by previous marshaling of IDispatch &
	IUnknown that is no longer done.
	- Add error messages if an IUnknown or IDispatch method is called when
	it no longer should be.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarBstrFromDec() for any valid DECIMAL, with
	internationalization support borrowed from VARIANT_BstrFromReal(). The
	decimal fix for VARIANT_BstrFromReal was encapsulated in a separate
	function and reused.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Silently ignore WM_PAINT in msg tests.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/winternl.h:
	Add OBJECT_BASIC_INFORMATION to winternl.h.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c:
	Cosmetic changes to NtCreateNamedPipeFile change "oa" to  "attr".

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	Create an internal handle-free api for reading MSI database summary
	information.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Switch back to using IPicture to load images.  LoadImage did the
	resizing for us, but doesn't handle jpeg files and requires us writing
	a temp file, whereas IPicture handles jpeg files and can load directly
	from a stream.

2005-10-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/gdiobj.c, dlls/gdi/tests/gdiobj.c, include/wingdi.h:
	Add a test for GetCurrentObject, make it pass under Wine.

2005-10-26  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c:
	Make secur32.dll tests load on nt 4.0.

2005-10-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Implement SQLInstallDriverManager.

2005-10-26  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	Fix IXMLDOMDocument error handling.

2005-10-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Previous fix incorrectly removed all test for strings starting with
	'?', this is only valid when undname is called with the 'NO_ARGUMENTS'
	flags.

2005-10-26  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/winspool/tests/info.c:
	Fix for GetPrinterDriverDirectoryA test.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/tests/path.c:
	Test for return value from CreateDirectory("c:").

2005-10-26  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Make functions static.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/main.c:
	Windows XP does not always include the executable file name on the
	command line.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/dialog.c:
	Need an explicit truncate command to shorten the length of a file.

2005-10-26  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/capi2032/cap20wxx.c:
	Fix gcc 4 warnings.

2005-10-26  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/gdi/tests/metafile.c:
	Link to {G|S}etRelAbs() during runtime as Win9x OSes miss them.

2005-10-26  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	Fixed a lot of bugs in TEXT_TabbedTextOut. With the test cases used to
	find them.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* ChangeLog, documentation/ChangeLog.ALPHA:
	Start a new ChangeLog file. Older changes moved to
	documentation/ChangeLog.ALPHA.

2005-10-25  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.

----------------------------------------------------------------
