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.

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