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.

----------------------------------------------------------------
