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.

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